System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及网络通信,特别是涉及基于多链路的数据传输方法、装置、数据发送终端、数据接收终端及存储介质。
技术介绍
1、在车载等移动场景下,因为信号变化及基站的切换,经常导致网络不可用,现有技术通过在蜂窝移动通信系统中设计多个蜂窝链路来保障通信系统中数据传输的可靠性。
2、目前,在有多个蜂窝链路的情况下,一般的通信模式有两种,即备份模式和负载均衡模式。
3、备份模式:同时只使用其中的一条蜂窝链路作为主链路,另外的蜂窝链路为备份链路。当主链路不可用时,切换到备份链路。
4、负载均衡模式:同时使用多条蜂窝链路进行传输。负载均衡有两种方式,一种是基于流的方式,一种是基于包的方式。考虑tcp乱序带来的不利影响,一般都是采用基于流的方式。
5、然而,对于有些对可靠性和实时性都要求很高的特定应用,这两种模式都有其不足之处。
6、备份模式:同一时刻只使用一条链路,当这条链路出故障的时候,感知故障需要时间,切换到备份链路也需要时间,在这段时间内,会出现业务中断。
7、负载均衡模式:基于流的方式,对应用而言也只使用了一条链路;基于包的负载方式,当一条链路有问题的时候,会存在一段时间的大量丢包重传,直到系统感知此链路出了问题而不再在有问题的线路上进行传输。
8、因此,如何提高针对特定应用的数据传输的可靠性和实时性,是目前亟待解决的问题。
技术实现思路
1、为解决上述技术问题,本申请提供一种基于多链路的数据传输方法,能够有效
2、本申请的第一个目的为提供一种基于多链路的数据传输方法,所述方法应用于数据发送终端。
3、本申请的上述申请目的一是通过以下技术方案得以实现的:
4、一种基于多链路的数据传输方法,应用于数据发送终端,所述方法包括:
5、通过多条蜂窝链路与数据接收终端建立对应数量的数据传输通道udp socket;
6、将待传输数据封装成多个数据报文,并按照递增顺序为所述多个数据报文设置连续的报文序号;
7、基于所述多个数据报文的报文序号,按照序号递增顺序依次将每个数据报文同时通过所述多条蜂窝链路发送至数据接收终端,以使所述数据接收终端能够从所述多条蜂窝链路对应的数据传输通道udp socket中的至少一个数据传输通道udp socket接收到每个数据报文;
8、将已发送的数据报文存储至缓冲队列,以使在收到数据接收终端发送的报文重传请求时,能够从所述缓冲队列中读取所述报文重传请求对应的数据报文并再次将该数据报文同时通过所述多条蜂窝链路发送至所述数据接收终端。
9、优选地,所述方法还包括:
10、当接收到报文重传请求时,解析所述报文重传请求以得到重传报文序号;
11、基于所述重传报文序号从所述缓冲队列中读取对应的数据报文;
12、将读取的数据报文同时通过所述多条蜂窝链路发送至所述数据接收终端。
13、优选地,所述方法还包括:
14、判断有无新的数据传输任务;
15、若无,则判断所述待传输数据的所有数据报文中最大报文序号对应的数据报文的发送时间与当前时间之间的时长是否超过预设空闲感知时长阈值;
16、若是,则向所述数据接收终端发送一个通知报文,其中,所述通知报文的报文序号为所述最大报文序号加1,所述通知报文用于通知所述数据接收终端当前数据传输任务完毕。
17、本申请的第二个目的为提供一种基于多链路的数据方法,所述方法应用于数据接收终端。
18、本申请的上述申请目的二是通过以下技术方案得以实现的:
19、一种基于多链路的数据传输方法,应用于数据接收终端,所述方法包括:
20、通过多条蜂窝链路与数据发送终端建立对应数量的数据传输通道udp socket;
21、通过所述多条蜂窝链路对应的数据传输通道udp socket同时接收所述数据发送终端发送的待传输数据的每个数据报文,其中,所述待传输数据被封装成多个数据报文,所述多个数据报文的报文序号按照递增顺序设置;
22、当通过所述多条蜂窝链路对应的数据传输通道udp socket中任一个数据传输通道udp socket接收到目标报文序号的数据报文时,将目标报文序号加1,并丢弃后续从其他数据传输通道udp socket接收到的报文序号小于当前的目标报文序号的数据报文。
23、优选地,所述方法还包括:
24、当通过所述多条蜂窝链路对应的数据传输通道udp socket中任一个数据传输通道udp socket接收到的数据报文的报文序号大于当前的目标报文序号时,通过所述多条蜂窝链路对应的数据传输通道udp socket同时向所述数据发送终端发送报文重传请求,其中,所述报文重传请求中携带有当前的目标报序号。
25、本申请的第三个目的为提供一种基于多链路的数据传输装置,所述装置应用于数据发送终端。
26、本申请的上述申请目的三是通过以下技术方案得以实现的:
27、一种基于多链路的数据传输装置,应用于数据发送终端,所述装置包括:
28、udp通信建立模块,用于通过多条蜂窝链路与数据接收终端建立对应数量的数据传输通道udp socket;
29、数据处理模块,用于将待传输数据封装成多个数据报文,并按照递增顺序为所述多个数据报文设置连续的报文序号;
30、报文发送模块,用于基于所述多个数据报文的报文序号,按照序号递增顺序依次将每个数据报文同时通过所述多条蜂窝链路发送至数据接收终端,以使所述数据接收终端能够从所述多条蜂窝链路对应的数据传输通道udp socket中的至少一个数据传输通道udpsocket接收到每个数据报文;
31、报文缓存模块,用于将已发送的数据报文存储至缓冲队列,以使在收到数据接收终端发送的报文重传请求时,能够从所述缓冲队列中读取所述报文重传请求对应的数据报文并再次将该数据报文同时通过所述多条蜂窝链路发送至所述数据接收终端。
32、优选地,所述装置还包括:
33、重传报文解析模块,用于当接收到报文重传请求时,解析所述报文重传请求以得到重传报文序号;
34、数据报文读取模块,用于基于所述重传报文序号从所述缓冲队列中读取对应的数据报文;
35、重传报文发送模块,用于将读取的数据报文同时通过所述多条蜂窝链路发送至所述数据接收终端。
36、优选地,所述装置还包括:
37、任务判断模块,用于判断有无新的数据传输任务;
38、空闲时间判断模块,用于在无新的数据传输任务时,判断所述待传输数据的所有数据报文中最大报文序号对应的数据报文的发送时间与当前时本文档来自技高网...
【技术保护点】
1.一种基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法包括:
2.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法还包括:
3.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法还包括:
4.一种基于多链路的数据传输方法,其特征在于,所述方法应用于数据接收终端,所述方法包括:
5.根据权利要求4所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据接收终端,所述方法还包括:
6.一种基于多链路的数据传输装置,其特征在于,所述装置应用于数据发送终端,所述装置包括:
7.一种基于多链路的数据传输装置,其特征在于,所述装置应用于数据接收终端,所述装置包括:
8.一种数据发送终端,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执如权利要求1-3任一项所述的基于多链路的数据传输方法。
9.一种数据接收
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-5任一项所述的基于多链路的数据传输方法。
...【技术特征摘要】
1.一种基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法包括:
2.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法还包括:
3.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据发送终端,所述方法还包括:
4.一种基于多链路的数据传输方法,其特征在于,所述方法应用于数据接收终端,所述方法包括:
5.根据权利要求4所述的基于多链路的数据传输方法,其特征在于,所述方法应用于数据接收终端,所述方法还包括:
6.一种基于多链路的数据传输装置,其特征在于,所述装置应用于数据发送终端,所述装置包括:
7.一种基...
【专利技术属性】
技术研发人员:朱伟光,廖杨,段红宇,龙港,
申请(专利权)人:成都微思格科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。