DFP 數(shù)據(jù)轉(zhuǎn)發(fā)協(xié)議 規(guī)則說明
DFP 是什么?
穩(wěn)控科技編寫的一套數(shù)據(jù)轉(zhuǎn)發(fā)規(guī)則, 取自“自由轉(zhuǎn)發(fā)協(xié)議 FFP(Free Forward Protocol)” ,或者 DFP(DoubleF Protocol), DF 也可以理解為 Datas Forward(數(shù)據(jù)轉(zhuǎn)發(fā))的縮寫。DF 協(xié)議是與硬件接口無關(guān)的數(shù)據(jù)鏈路層協(xié)議,規(guī)定了數(shù)據(jù)流如何在不同設(shè)備之間、不同接口之間的傳輸方向。
DF 協(xié)議一般用于延長數(shù)字接口的傳輸距離(數(shù)據(jù)中繼),它與硬件接口類型無關(guān),可以基于 UART、 LoRA、TCP 等異步數(shù)據(jù)傳輸介質(zhì)。
網(wǎng)關(guān)中繼器DFP 數(shù)據(jù)轉(zhuǎn)發(fā)協(xié)議
數(shù)據(jù)轉(zhuǎn)發(fā)規(guī)則
(1) 處于同一區(qū)域內(nèi)的每臺設(shè)備均有唯一的地址(同一區(qū)域不得有相同地址的的設(shè)備)。合法的設(shè)備地址為0x01~0xFE。 0xFF 等效于任意地址值, 0x00 等效于不存在的地址值。
(2)每臺設(shè)備均有多個(gè)數(shù)字接口(如: UART、 LoRA 等),各端口均有獨(dú)立的通訊參數(shù)(不同參數(shù)可形成不同的數(shù)據(jù)區(qū)域)。每臺設(shè)備均有與數(shù)字接口對應(yīng)數(shù)量的群組 ID 碼(GroupA_ID/GroupB_ID 等)。
(3)被傳輸?shù)臄?shù)據(jù)包均帶有協(xié)議前綴 FP(ForwardPrefix), FP 包含有數(shù)據(jù)包的發(fā)送起始設(shè)備地址、數(shù)據(jù)包目的設(shè)備地址、數(shù)據(jù)包群組 ID、數(shù)據(jù)包轉(zhuǎn)發(fā)路徑記錄等信息。
(4) 當(dāng) DFP 設(shè)備通過某個(gè)數(shù)字接口接收到無 FP 的數(shù)據(jù)包(干數(shù)據(jù)) 時(shí)會自動(dòng)為其添加。添加規(guī)則為:群組號=接收到數(shù)據(jù)的端口對應(yīng)的群組 ID 號(接收數(shù)據(jù)的端口為 xxxxA 時(shí)為 GAID,接收數(shù)據(jù)的端口為 xxxxB 時(shí)為 GBID)。
起始設(shè)備地址=0xFF。 目標(biāo)設(shè)備地址=0xFF。
注:其它設(shè)備使用 LoRA 發(fā)來的數(shù)據(jù)包僅可被 NLM5 的 LORA-A 接收到。
(5) 無論哪個(gè)數(shù)字接口,當(dāng)接收到數(shù)據(jù)包后會判斷 FP 中的群組 ID 是否與自身的兩個(gè)群組 ID 之一相同(匹配),若不同則丟棄處理,若相同則會首先判斷數(shù)據(jù)包是否是用于自身的指令,若是則執(zhí)行指令然后丟棄數(shù)據(jù)包,若不是則按照轉(zhuǎn)發(fā)規(guī)則對數(shù)據(jù)包進(jìn)行轉(zhuǎn)發(fā)。
數(shù)據(jù)包轉(zhuǎn)發(fā)規(guī)則為:每個(gè)數(shù)字接口均可指定在收到數(shù)據(jù)后將數(shù)據(jù)轉(zhuǎn)發(fā)到哪個(gè)(或者哪幾個(gè))數(shù)字端口以及是否輸出數(shù)據(jù)時(shí)帶有 FP。轉(zhuǎn)發(fā)數(shù)據(jù)前會根據(jù)數(shù)據(jù)輸出的端口自動(dòng)更新 FP 中的群組 ID 值。
(6)當(dāng)接收到的數(shù)據(jù)包 FP 中的目的地址與本設(shè)備地址相同時(shí),在轉(zhuǎn)發(fā)前會修改 FP 中的目標(biāo)設(shè)備地址為0x00。其它設(shè)備在接收到數(shù)據(jù)包后會判斷 FP 中的目的地址是否為 0x00,是則立即丟棄數(shù)據(jù)包(即:數(shù)據(jù)包轉(zhuǎn)發(fā)終止)。
(7)數(shù)據(jù)映射
DFP 設(shè)備用一個(gè)參數(shù)來啟用或者禁止數(shù)據(jù)映射,參數(shù)作用說明如下:當(dāng)某臺 DFP 設(shè)備的多個(gè)數(shù)字接口處于同一數(shù)據(jù)區(qū)域時(shí),會同時(shí)接收到數(shù)據(jù)包,按照上述規(guī)則,若數(shù)據(jù)映射參數(shù)為未啟用狀態(tài)時(shí),每個(gè)端口均為按照預(yù)設(shè)轉(zhuǎn)發(fā)規(guī)則和轉(zhuǎn)發(fā)方向進(jìn)行數(shù)據(jù)處理和轉(zhuǎn)發(fā)。若數(shù)據(jù)映射參數(shù)為啟動(dòng)狀態(tài)時(shí), DFP 設(shè)備會進(jìn)行如下處理:檢查數(shù)據(jù)包是否帶有正確的 FP 前導(dǎo)符號(默認(rèn)為“@#@#” )
有:繼續(xù)檢查 FP 中的群組碼是否適用于本設(shè)備
是:則將數(shù)據(jù)包映射到與群組號對應(yīng)的 LoRA-x。
否:維持現(xiàn)狀(不進(jìn)行映射處理)。
無: 將接收到的 LoRA 數(shù)據(jù)包映射到 LoRA-A。
DFP 數(shù)據(jù)轉(zhuǎn)發(fā)協(xié)議應(yīng)用實(shí)例
LoRA 接收到的數(shù)據(jù)映射的意思是:無論 LoRA 數(shù)據(jù)包是由 LoRA-A 或者 LoRA-B 接收到的, 強(qiáng)制的將接收到的數(shù)據(jù)包按照上述規(guī)則更新到 LoRA-A 或者 LoRA-B 的接收緩存,然后進(jìn)一步按照數(shù)據(jù)轉(zhuǎn)發(fā)規(guī)則處理。
DFP 協(xié)議的數(shù)據(jù)映射功能以上述數(shù)據(jù)轉(zhuǎn)發(fā)規(guī)則,可以實(shí)現(xiàn)單線型、樹杈型、十字交叉型數(shù)據(jù)傳輸網(wǎng)絡(luò)。
-
網(wǎng)關(guān)
+關(guān)注
關(guān)注
9文章
5654瀏覽量
52958 -
數(shù)據(jù)轉(zhuǎn)發(fā)
+關(guān)注
關(guān)注
0文章
10瀏覽量
7273 -
DFP
+關(guān)注
關(guān)注
0文章
26瀏覽量
4078
發(fā)布評論請先 登錄
IP2723TH 集成 多種協(xié)議、用于 USBC 端口的快充協(xié)議 IC
NGW50T65H3DFP高速溝槽場停止IGBT與全速率硅二極管規(guī)格書

NGW40T65M3DFP 40A溝槽場停止IGBT與全額定硅二極管規(guī)格書

MPU數(shù)據(jù)傳輸協(xié)議詳解
網(wǎng)絡(luò)協(xié)議與網(wǎng)關(guān)的關(guān)聯(lián)
三菱PLC數(shù)據(jù) 轉(zhuǎn) profinet IO項(xiàng)目案例

SNMP設(shè)備數(shù)據(jù) 轉(zhuǎn) IEC61850項(xiàng)目案例

DTL698電表數(shù)據(jù) 轉(zhuǎn) IEC61850協(xié)議項(xiàng)目案例

網(wǎng)口環(huán)保212設(shè)備數(shù)據(jù) 轉(zhuǎn) IEC61850項(xiàng)目案例

SNMP設(shè)備數(shù)據(jù) 轉(zhuǎn) CCLink IE Field Basic項(xiàng)目案例

iec61850設(shè)備數(shù)據(jù) 轉(zhuǎn) CCLink IE Field Basic項(xiàng)目案例

BACnet協(xié)議轉(zhuǎn)Modbus網(wǎng)關(guān)通過協(xié)議轉(zhuǎn)換將設(shè)備數(shù)據(jù)轉(zhuǎn)發(fā)至InTouch

三菱PLC數(shù)據(jù) 轉(zhuǎn)IEC61850項(xiàng)目案例

Profinet IO從站數(shù)據(jù) 轉(zhuǎn)EthernetIP項(xiàng)目案例

評論