4协议内容4.1通信方式协议采用的通信方式应符合JT/T 794中的相关规定,通信协议采用TCP或UDP,平台 作为服务器端,终端作为客户端。当数据通信链路异常时,终端可以采用SMS消息方式进 行通信。 4. 2数据类型协议消息中使用的数据类型见表1: 表1数据类型
4. 3传输规则 协议采用大端模式(big-endian)的网络字节序来传递字和双字。 约定如下: ——字节 (BYTE)的传输约定:按照字节流的方式传输; ——字(WORD)的传输约定:先传递高八位,再传递低八位; ——双字(DWORD)的传输约定:先传递高24位,然后传递高16位,再传递高八位, 最后传递低八位。 4消息的组成4. 1消息结构 每条消息由标识位、消息头、消息体和校验码组成,消息结构图如图1所示:
图1 消息结构体 JT/T 808-2011 4. 4. 2标识位 采用Ox7e表示,若校验码、消息头以及消息体中出现0x7e,则要进行转义处理,转义 规则定义如下: 0x7e<——>0x7d后紧跟一个0x02; 0x7d<——>0x7d后紧跟一个0x01。 转义处理过程如下: 发送消息时:消息封装——>计算并填充校验码——>转义; 接收消息时:转义还原——>验证校验码——>解析消息。 示例: 发送一包内容为0x30 0x7e 0x08 0x7d 0x55的数据包,则经过封装如下:0x7e 0x30 7d 0x02 0x08 0x7d 0x01 0x55 0x7e。 4. 4. 3消息头消息头内容详见表2: 表2消息头内容
消息体属性格式结构图如图2所示:
图2消息体属性格式结构图 数据加密方式: —— bit10-bit12为数据加密标识位; ——当此三位都为0,表示消息体不加密; ——当第10位为1,表示消息体经过RSA算法加密; ——其他保留。 分包: 当消息体属性中第13位为1时表示消息体为长消息,进行分包发送处理,具体分包信 息由消息包封装项决定;若第13位为0,则消息头中无消息包封装项字段。 消息包封装项内容见表3 表3消息包封装项内容 JT/T 808-2011
4. 4. 4校验码 校验码指从消息头开始,同后一字节异或,直到校验码前一个字节,占用一个字节。 |
|
来自: 王工的认证分享 > 《交通部检测18529513106》