一种适用于低带宽、易损耗自组网络下的传输保障方法技术

技术编号:35860118 阅读:23 留言:0更新日期:2022-12-07 10:49
本发明专利技术提出了一种适用于低带宽、易损耗自组网络下的传输保障方法及系统,包括数据发送方服务和数据接收方服务两个部分,数据发送方服务包括数据业务调度线程、业务数据通信处理线程、链路质量监测线程;数据接收方服务包括数据监听线程、数据预处理线程、数据分发线程、业务数据通信处理线程、链路质量监测线程,通过应用层重传、数据报文排序、重复报文过滤和链路自适应控制等手段,保证数据报文传输至接收端不重复、不丢失、不乱序,从而实现弱网环境下的可靠通信传输。本发明专利技术在性能、扩展性及开发简易性方面优于同类技术方案。发简易性方面优于同类技术方案。发简易性方面优于同类技术方案。

【技术实现步骤摘要】
一种适用于低带宽、易损耗自组网络下的传输保障方法


[0001]本专利技术涉及消息、文件传输技术,具体涉及一种适用于低带宽、易损耗自组网下的传输保障方法。

技术介绍

[0002]伴随着特定领域信息系统的持续发展和演进,越来越多的网络模式成为该系统的兼容对象。由于设备本身物理限制以及实际复杂环境影响,这些网络具有低带宽、延时高、不稳定、易损耗等特点,因此如何保证复杂条件下的数据可靠传输成为了迫切需要解决的问题。
[0003]寻求适配弱网的可靠通信传输方法需要重点结合弱网特点,尽可能提高信道利用率,同时又能保证网络通畅。目前弱网条件下可靠传输策略主要分为:
[0004]第一种,采用确认应答和超时重传机制的策略保障可靠传输,数据发送端发送数据包,数据接收端收到数据包便向数据发送端发送确认包,数据发送端收到确认包后,发送下一个数据包,若数据发送端超过特定时间未收到确认包,则重传上述数据包。结合弱网高延迟和低带宽的特点,此策略下数据包的确认应答将耗费大量时间,且一一对应的确认机制占用了一定比例的带宽。
[0005]第二种,采用发送冗余包的策略保障可靠传输,同一个数据包发送多次,不需要等待应答、减免了应答包占用带宽,使得这种方式信道利用率较高、传输速率快,但是信道上有大量冗余数据包,对带宽存在一定挑战,而且缺少确认机制,若多包数据均丢失,依然会出现传输失败的可能,因此该策略并不能客观地保证可靠通信传输。
[0006]第三种,缺乏必要的流量控制或流控策略不适用于弱网环境,处于弱网环境的数据传输,若缺乏流量控制,可能出现网络拥塞的情况,甚至导致网络环境崩溃。传统流量控制基于窗口大小调整信息交换两端的传输速度,该策略有效解决大数据交换时IO缓存区溢出问题,但是并不适用于弱网环境下的数据交换,因为,弱网条件下数据传输速度通常明显低于数据在两端的处理速度,且一般只用于传输文本、语音、小文件等。
[0007]综上所述,目前常见的可靠传输方案均伴随大量的握手确认或冗余数据,在波动大、信号弱的网络环境中存在较大的弊端,因此研究一种兼容弱网的可靠传输策略是必要的。

技术实现思路

[0008]本专利技术的目的在于提出一种适用于低带宽、易损耗自组网下的传输保障方法。
[0009]实现本专利技术目的的技术解决方案为:一种适用于低带宽、易损耗自组网下的传输保障方法,包括数据发送方服务和数据接收方服务两个部分,数据发送方服务包括数据业务调度、业务数据通信处理、链路质量监测和IO事件处理器;数据接收方服务包括数据监听、数据预处理、数据分发、业务数据通信处理、链路质量监测和IO事件处理器。数据传输通信的过程为:
[0010]过程1:数据发送方数据业务调度线程检测到出现待执行业务,依次创建业务数据通信处理线程和链路质量监测线程;
[0011]过程2:数据发送方业务数据通信处理线程完成初始化,对待执行业务数据进行切割、压缩和加密预处理,对处理后的数据包进行排序并将包序封装入业务数据报文,并交付给IO事件处理器排队等待传输。数据报文若需要应答确认则启动定时器,若超时前未收到确认报文则进行重传操作;
[0012]过程3:数据发送方链路质量监测线程负责封装链路质量监测类型数据报文,交付给IO事件处理器,实时探测链路状态,链路质量监测线程除了采集链路实时延迟(RTT)关键数据,还会探测最大有效荷载(MTU)、计算丢包率等重要链路质量数据,并将数据同步给重传机制和链路自适应控制;
[0013]过程4:数据接收方后台常驻的数据监听线程,监听IO事件处理器接收到的数据;
[0014]过程5:数据接收方首先经过数据预处理线程对数据进行排序和过滤,将序号重复的报文过滤丢弃,同时按照序号将数据依序共享给数据分发线程;
[0015]过程6:数据分发线程收到数据报文,读取数据报文类型,然后分发给对应的处理线程,数据报文类型有业务数据类型和链路质量监测类型两种;
[0016]过程7:若为业务数据类型则分发给业务数据处理线程,由业务数据处理线程解封装数据报文,取出数据域并进行解压缩、解密操作从而获取原始数据,最终存储或上报原始数据;若为链路质量监测类型报文则分发给链路质量监测线程完成解封装、解压缩、解密操作,取出原始数据;
[0017]过程8:数据接收方业务数据处理线程处理完数据报文后,如需进行确认操作,则将封装应答报文交付给IO事件处理器排队等待传输。
[0018]进一步的,所述重传机制约定数据发送方和数据接收方之间交换的数据报文分为两类,需要应答类报文和不需要应答类报文,具体过程为:
[0019]数据发送方获取到待执行业务的完整数据,首先将数据切割并按顺序封装成数据报文,此类包含了待执行业务数据内容的报文,均为不需要应答报文,此外,数据发送方会每间隔N个数据报文插入一个请求确认报文,该报文中包含了下一个数据报文的序号S
n
(S≥0,n∈N
+
),此类报文均为需要应答类报文,两类报文组成一次通信业务的全部报文。数据发送方发送N个数据报文和一个请求确认报文称为一个数据交换阶段,每次通信业务包含至少一个阶段,每一个阶段数据发送方都会首先将两类报文按序存入发送缓存区。
[0020]数据发送方遍历发送缓存区,按序发送报文,数据接收方接收报文并记录报文序号。当发送出去的报文为不需要应答类报文,则可以直接继续发送下一个报文,直到连续发送N个数据报文后,数据发送方发送了请求确认报文,数据发送方启动定时器,设定超时时间T。若超时前未收到数据接收方确认的报文,则重新发送请求确认报文,依此类推最多重新发送R次。若超时前收到数据接收方确认的报文,则情况为:
[0021]发送方请求确认报文中包含了下一个阶段报文的起始序号S
n
,数据接收方将本阶段接收到数据报文的序号记录为集合G
n
(且S
n
‑1≤g<S
n
),则集合{S
n
‑1,S
n
‑1+1,S
n
‑1+2,
……
,S
n

2,S
n

1}减去集合G
n
得到的差集即为本阶段丢失的报文序号,将序号封装入确认报文,回复给数据发送方(确认报文为不需要应答报文)。数据发送方收到确认报文后,首先解析报文中的丢失序号,接着遍历发送缓存区,将未出现在丢失集合中的报文从缓存区中
清空,然后重新执行本阶段的发送过程,直到最后发送缓存区被清空,数据发送方执行下一阶段的发送过程。
[0022]重复上述过程直至一次通信业务数据交换的所有阶段全部完成,标志着一次通信业务完成。
[0023]进一步的,所述对数据进行排序和过滤,具体过程为:
[0024]针对IP网络环境中出现的包失序和包重复问题,为每一次完整通信业务提供唯一标识ID,用以标识该业务的唯一性,同时为每一次业务所有数据报本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种适用于低带宽、易损耗自组网络下的传输保障方法,其特征在于,包括数据发送方服务和数据接收方服务两个部分,数据发送方服务包括数据业务调度线程、业务数据通信处理线程、链路质量监测线程;数据接收方服务包括数据监听线程、数据预处理线程、数据分发线程、业务数据通信处理线程、链路质量监测线程,数据传输过程具体为:过程1:数据发送方数据业务调度线程检测到出现待执行业务,依次创建业务数据通信处理线程和链路质量监测线程;过程2:数据发送方业务数据通信处理线程初始化环境,对待执行业务数据进行分片、压缩和加密预处理,对处理后的数据进行排序并将序号一同封装入业务数据类型报文,交付给IO事件处理器等待传输,数据报文若需要应答确认则启动定时器,若超时前未收到确认报文则进行重传操作;过程3:数据发送方链路质量监测线程负责封装链路质量监测类型数据报文,交付给IO事件处理器实时探测链路状态,采集链路实时延迟关键数据、探测最大有效荷载、计算丢包率,并同步给重传机制和链路自适应控制;过程4:数据业务接收方后台常驻的数据监听线程,监听到IO事件处理器接收到的数据;过程5:数据接收方首先经过数据预处理线程对数据进行排序和过滤,将序号重复的报文过滤丢弃,同时按照序号将数据依序共享给给数据分发线程;过程6:数据分发线程收到数据报文,读取数据报文类型,分发给对应的处理线程,数据报文类型有业务数据类型和链路质量监测类型两种;过程7:若为业务数据类型则分发给业务数据处理线程,由业务数据处理线程解封装数据报文,取出数据域并进行解压缩、解密操作从而获取原始数据,存储或上报原始数据;若为链路质量监测类型报文则分发给链路质量监测线程完成解封装、解压缩、解密操作,取出原始数据;过程8:数据接收方业务数据处理线程处理完数据报文后,如需进行确认操作,则将封装应答报文交付给IO事件处理器等待传输。2.根据权利要求1所述的适用于低带宽、易损耗自组网络下的传输保障方法,其特征在于,所述重传机制约定数据发送方和数据接收方之间交换的数据报文分为需要应答类报文和不需要应答类报文两类,具体过程为:数据发送方获取到待执行业务的完整数据,首先将数据切割并按顺序封装成数据报文,此类包含了待执行业务数据内容的报文,均为不需要应答报文,此外,数据发送方会每间隔N个数据报文插入一个请求确认报文,该报文中包含了下一个数据报文的序号S
n
,此类报文均为需要应答类报文,两类报文组成一次通信业务的全部报文;数据发送方发送N个数据报文和一个请求确认报文称为一个数据交换阶段,每次通信业务包含至少一个阶段,每一个阶段数据发送方都会首先将两类报文按序存入发送缓存区;数据发送方遍历发送缓存区,按序发送报文,数据接收方接收报文并记录报文序号,当发送出去的报文为不需要应答类报文,则直接继续发送下一个报文,直到连续发送N个数据报文后,数据发送方发送了请求确认报文,数据发送方启动定时器,设定超时时间T,若超时前未收到数据接收方确认的报文,则重新发送请求确认报文,依此类推最多重新发送R次,若超时前收到数据接收方确认的报文,则情况为:
发送方请求确认报文中包含了下一个阶段报文的起始序号S
n
,数据接收方将本阶段接收到数据报文的序号记录为集合G
n
,则集合{S
n
‑1,S
n
‑1+1,S
n
...

【专利技术属性】
技术研发人员:张文龙王敦文沈得金刘佳兴柳玉玲李乐天崔凯伦
申请(专利权)人:苏州空天信息研究院
类型:发明
国别省市:

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

1