808协议解析工具_DotNetty 使用ByteToMessageDecoder 国家部标808协议封装

本文介绍了国家部标808协议的格式,包括标识位和转义规则,并展示了如何使用DotNetty的ByteToMessageDecoder进行数据封装和转义处理。同时,通过创建一个控制台程序,演示了使用DelimiterBasedFrameDecoder进行分包的配置与应用。
摘要由CSDN通过智能技术生成

1.国家部标808协议格式

dd9280ab7b59d082b837b95e0ad560a8.png

标识位

采用 0x7e 表示,若校验码、消息头以及消息体中出现 0x7e,则要进行转义处理,转义

规则定义如下:

0x7e 0x7d 后紧跟一个 0x02;

0x7d 0x7d 后紧跟一个 0x01。

转义处理过程如下:

发送消息时:消息封装——>计算并填充校验码——>转义;

接收消息时:转义还原——>验证校验码——>解析消息。

示例:

发送一包内容为 0x30 0x7e 0x08 0x7d 0x55 的数据包,则经过封装如下:0x7e 0x30 7d 0x02 0x08 0x7d0x01 0x55 0x7

2.建立一个控制台程序

添加NuGet包

 System.Text.Encoding.CodePages Microsoft.Extensions.Configuration.CommandLine Microsoft.Extensions.Configuration.EnvironmentVariables Microsoft.Extensions.Configuration.Json Microsoft.Extensions.Hosting Microsoft.Extensions.Logging.Console

3.dotnetty 通道配置,使用默认的D

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值