一种数据传输处理方法、发送设备和接收设备技术

技术编号:23709713 阅读:81 留言:0更新日期:2020-04-08 12:04
本发明专利技术提供了一种数据传输处理方法、发送设备和接收设备,其方法包括:发送端对将要发送的通信数据包进行合格判断,将不合格的通信数据包进行处理得到符合预设数据帧格式的单段数据帧,以便进行分段传输发送至接收端。此外,接收端对接收到的通信数据包进行合格判断,将不合格的通信数据包即出现粘包现象或者拆包现象的通信数据包进行处理得到符合预设数据帧格式的单段数据帧,以便进行分段传输传递至数据层。本发明专利技术可靠地避免数据在发送过程中出现数据异常的情况,使得信息准确传达以满足复杂场景下的应用。

A data transmission processing method, transmitting device and receiving device

【技术实现步骤摘要】
一种数据传输处理方法、发送设备和接收设备
本专利技术涉及数据通信领域,尤指一种数据传输处理方法、发送设备和接收设备。
技术介绍
在移动互联网时代的今天,数据通信成了越来越普及、重要的环节。而随着数据量的增加,在进行数据通信时容易出现粘包和拆包的问题。在进行数据通信时,通信双方一般事先约定好数据包的格式来实现信息的有效传达,但由于通信环境中存在各种不可控因素,导致在实际通信过程中出现各类数据异常(如粘包、拆包、数据帧长度超出通信方式数据载荷等等),最终使得信息传达不准确甚至传达失败。因此,如何可靠地避免数据在发送过程中出现数据异常的情况,使得信息准确传达以满足复杂场景下的应用成为亟待解决的技术问题。
技术实现思路
本专利技术的目的是提供一种数据传输处理方法、发送设备和接收设备,实现可靠地避免数据在发送过程中出现数据异常的情况,使得信息准确传达以满足复杂场景下的应用。本专利技术提供的技术方案如下:本专利技术提供一种数据传输处理方法,应用于发送端,包括步骤:S1100在获取到业务逻辑层的数据本文档来自技高网...

【技术保护点】
1.一种数据传输处理方法,其特征在于,应用于发送端,包括步骤:/nS1100在获取到业务逻辑层的数据发送请求以及对应待发送的通信数据包时,判断所述通信数据包是否合格;若是进入步骤S1300,否则进入步骤S1200;/nS1200将所述通信数据包进行处理得到若干个符合所述预设数据帧格式的单段数据帧,根据各单段数据帧创建对应的发送任务;/nS1300根据所述通信数据包创建对应的发送任务;/nS1400将所述发送队列中的发送任务按照其推送过来的时间先后顺序依次顺序发送至对应的接收端。/n

【技术特征摘要】
1.一种数据传输处理方法,其特征在于,应用于发送端,包括步骤:
S1100在获取到业务逻辑层的数据发送请求以及对应待发送的通信数据包时,判断所述通信数据包是否合格;若是进入步骤S1300,否则进入步骤S1200;
S1200将所述通信数据包进行处理得到若干个符合所述预设数据帧格式的单段数据帧,根据各单段数据帧创建对应的发送任务;
S1300根据所述通信数据包创建对应的发送任务;
S1400将所述发送队列中的发送任务按照其推送过来的时间先后顺序依次顺序发送至对应的接收端。


2.根据权利要求1所述的数据传输处理方法,其特征在于,所述S1100在获取到业务逻辑层的数据发送请求以及对应待发送的通信数据包时,判断所述通信数据包是否合格包括步骤:
S1110判断从所述业务逻辑层获取的所述通信数据包的帧长度是否大于其使用通信方式的最大数据载荷;若是所述通信数据包不合格并进入步骤S1200,否则所述通信数据包合格并进入步骤S1300;
S1200将所述通信数据包进行处理得到若干个符合所述预设数据帧格式的单段数据帧,根据各单段数据帧创建对应的发送任务包括步骤:
S1210按照预设分段方式将所述通信数据包的有效数据分割成首位有效子数据段、若干个中间有效子数据段和末尾有效子数据段;所述首位有效子数据段、若干个中间有效子数据段和末尾子数据为根据所述有效数据的内容先后顺序分割所得;
S1220计算得到所述首位有效子数据段、若干个中间有效子数据段和末尾有效子数据段分别对应的字节数量,并获取分割阶段每个有效子数据段的段序号;
S1230根据各有效子数据段的字节数量得到各有效子数据段分别对应的帧长度标志,并根据各有效子数据段的段序号得到各有效子数据段分别对应的段序列标志;
S1240根据所述帧长度标志、段序列标志、以及通信数据包对应的帧头标志、帧命令码,将所述首位有效子数据段、若干个中间有效子数据段和末尾有效子数据段分别处理成符合所述预设数据帧格式的首位单段数据帧、若干个中间单段数据帧和末尾单段数据帧;
S1250将各单段数据帧按照其段序列标志的先后顺序依次顺序创建对应的发送任务并推送至所述发送队列;
其中,所述预设数据帧格式包括数据头和有效数据,所述数据头位于所述有效数据之前,且所述数据头符合预设数据头的格式,所述预设数据头包括帧头标志、段序列标志、帧长度标志和帧命令码;所述发送任务包括待发送的单段数据帧及其对应的通信方式,所述单段数据帧为合格的通信数据包。


3.根据权利要求1或2所述的数据传输处理方法,其特征在于,还包括步骤:
S0100设置命令码表,所述命令码表包括每个帧命令码对应的重发规则;
所述S1300根据所述通信数据包创建对应的发送任务;
S1310获取所述发送任务对应的目标通信方式,根据所述发送任务的帧命令码查询所述命令码表得到其对应的目标重发规则;
S1320根据所述目标重发规则创建需重发的目标发送任务并推送至所述发送队列;
所述S1400所述将所述发送队列中的发送任务按照其推送过来的时间先后顺序依次顺序发送至对应的接收端包括步骤:
S1410控制匹配于所述目标通信方式的目标通信模块按照所述时间先后顺序依次顺序发送所述发送任务至对应的接收端,并将发送状态事件反馈至所述业务逻辑层;
其中,所述发送状态事件包括所述发送任务对应的数据信息、发送次数及其通信方式。


4.根据权利要求3所述的数据传输处理方法,其特征在于,所述S1320根据所述目标重发规则创建需重发的目标发送任务并推送至所述发送队列包括步骤:
S1321根据所述目标重发规则创建所述目标发送任务,判断所述发送队列中是否存在正在发送中,且与所述目标发送任务类型相同的发送任务;若是,进入步骤S1322;否则,进入步骤S1323;
S1322取消与所述目标发送任务类型相同的发送任务的重发线程,并将所述目标发送任务推送至发送队列;
S1323将所述目标发送任务推送至发送队列;
所述S1410控制匹配于所述目标通信方式的目标通信模块按照所述时间先后顺序依次顺序发送所述发送任务至对应的接收端,并将发送状态事件反馈至所述业务逻辑层包括步骤:
S1411根据所述目标通信方式查询得到所述目标通信模块,控制所述目标通信模块执行所述发送队列中的发送任务,统计并判断所述发送任务的发送次数是否超过其对应的发送次数阈值;若是,进入步骤S1412;否则,反复执行步骤S1411,直至发送次数达到所述发送次数阈值或接收接收端响应为止;
S1412将所述发送任务推送从所述发送队列中删除,取消所述发送任务的发送。


5.一种数据传输处理方法,其特征在于,应用于接收端,包括步骤:
S2100从发送端接收通信数据包;
S2200判断所述通信数据包是否合格;若是进入步骤S2500,否则进入步骤S2300;
S2300将所述...

【专利技术属性】
技术研发人员:刘伯锋李建国
申请(专利权)人:上海邦邦机器人有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1