DFP 数据转发协议规则说明

2022-09-14 20:45:26 浏览数 (2)

DFP 数据转发协议规则说明

DFP 是什么?

河北稳控科技编写的一套数据转发规则,取自“自由转发协议 FFP(Free Forward Protocol)”,或者 DFP(Double F Protocol),DF 也可以理解为 Datas Forward(数据转发)的缩写。

DF 协议是与硬件接口无关的数据链路层协议,规定了数据流如何在不同设备之间、不同接口之间的传输方向。

DF 协议一般用于延长数字接口的传输距离(数据中继),它与硬件接口类型无关,可以基于 UART、LoRA、TCP 等异步数据传输介质。

DFP 设备基本特性

支持 DFP 协议的设备称为 DFP 设备,DFP 设备都有至少两个异步数字接口,数字接口操作的最小数据单位为“数据包”。

DFP 设备具有设置数据包的转发方向的参数,例如:A 端口接收到的数据包转发到哪个端口。

DFP 设备具有设置数据包转发时是否带有协议头,例如:向 B 端口转发时是否为数据附加协议头。

DFP 设备可以识别接收到的数据包是否带有 DFP 协议头,并为没有 DFP 协议头的数据包自动添加协议头。

DFP 协议规则

数据包结构

不同的 DFP 设备之间使用特定结构的数据包来完成数据的定向转发传输,一个完整的 DFP 数据包由数

据转发前缀和要转发的数据两部分构成。数据内容称为“干数据”,带有转发前缀的数据称为“湿数据”。

DFP 数据转发协议规则说明 DFP 数据转发协议规则说明

数据前缀属性说明

FP 识别码:4 字节 FP 识别信息,默认为@#@#。只要以识别信息为开始的数据包均被认为是 FP。

群组 ID:数据包所属于群组编码,只有与 DFP 设备所属群组相同的数据包才会被转发。

起始地址:数据包由哪台设备发出。

目标地址:数据包最终的目的设备地址。

转发次数:数据包已经经过了几次转发(已经 n 次)。

转发路径:长度 n 字节,每个字节依次保存了本条数据每次被转发时的设备地址值。

校验和:前面所有数据的和校验值。

数据包长度:协议前缀之后的数据包字节数(即:干数据的长度)。

例:16 进制数据包(湿数据)40 23 40 23 02 81 85 02 81 82 D3 03 31 32 33

40 23 40 23:协议前缀识别码@#@#

02:本包数据最后一次被发送时使用的群组 ID 为 02。 81:本包数据的发起设备地址为 0x81。 85:本包数据是发送的终点是设备 0x85。 02:本包数据已经被转发了 02 次。

81 82:本包数据第一次由设备 0x81 转发,第二次(最近一次)是被设备 0x82 转发出来的。

D3:之前所有字节的和校验。

03:本包数据实际内容为 03 个字节。

31 32 33:本包数据实际内容为 0x31 0x32 0x33。

数据有效域

是指数据包在发送时可以接收到数据的所有 DFP 设备端口。

DFP 数据转发协议规则说明 DFP 数据转发协议规则说明

例如:某种设备具有 3 个 LoRA 端口,每个 LoRA 端口可以配置为不同的频率(如:433MHz、435MHz 等),当通过某个 LoRA 端口发出数据时,所有与它同频的其它设备的 LoRA 端口均可接收到数据,而不同频的 LoRA端口不会接收到数据。能够接收到数据的所有区域称之为“同数据域”,也称为“同一区域”。(注意,这里所说的“区域”与地理中的“区域”的含意不同)。

0 人点赞