System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及通信,尤其涉及一种数据传输方法、装置、设备和存储介质。
技术介绍
1、业界采用多链路数据传输的方式有以下两种:一是采用通信质量较好的链路作为主要链路,进行业务数据传输。其他链路作为备用链路,不进行业务数据的传输,仅发送探测数据包监测备用链路通信质量,一旦主链路传输质量下降,丢包现象严重时,对主备链路进行切换,备用链路开始进行数据传输;二是采用两条链路同时传输相同的业务数据,接收端接收先到达的链路数据包进行解析,丢弃后到达的链路数据包。
2、在上述的技术方案中,方案一存在数据重传时延高的问题;方案二虽然减少了数据重传的时间,但是对带宽造成较大的浪费。
技术实现思路
1、有鉴于此,本申请实施例期望提供一种数据传输方法、装置、设备和存储介质。
2、本申请实施例的技术方案是这样实现的:
3、本申请实施例提供了一种数据传输方法,该方法应用于接收端,包括:
4、接收发送端通过第一链路发送的数据包;
5、在接收的数据包出错的情况下,基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包。
6、其中,所述基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包,包括:
7、向发送端发送第一信息,所述第一信息用于指示发送端通过第二链路发送在第一链路接收的出错的所述数据包;所述第一信息至少包括:所述数据包在原始数据中的偏移量;
8、接收发送端通过第二链
9、其中,所述方法还包括:
10、基于预设的校验规则判断接收的数据包是否出错。
11、其中,所述基于预设的校验规则判断接收的数据包是否出错,包括:
12、基于与发送端约定的预设校验规则生成第一校验码;
13、将所述第一校验码与收到的数据包中携带的第二校验码进行匹配,如果两者匹配相同,则确定接收的数据包未出错;否则,确定接收的数据包出错。
14、其中,所述校验规则至少与如下参数相关:
15、数据包中包括校验码在内的数据的长度;
16、数据包中包括校验码在内的数据所占字节的位置索引i;
17、位置索引i上数据的字节值;
18、位置索引i上数据的加权值;
19、模数;所述模数与所述数据的长度、数据所占字节的位置索引i、以及位置索引i上数据的字节值和加权值相关联。
20、其中,所述方法还包括:
21、确定接收端的缓存区有数据包丢失;
22、基于所述丢失的数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述丢失的数据包。
23、其中,所述确定接收端的缓存区有数据包丢失,包括:
24、判断预设时间内所述缓存区存储的数据包数量是否达到预设最大值,如果未达到,则确定缓存区有数据包丢失;否则,确定缓存区数据完整。
25、其中,所述基于所述丢失的数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述丢失的数据包,包括:
26、向发送端发送第二信息,所述第二信息用于指示发送端通过第二链路发送丢失的所述数据包;所述第二信息至少包括:所述丢失的数据包在原始数据中的偏移量;
27、接收发送端通过第二链路重新发送的所述数据包。
28、其中,所述接收发送端通过第一链路发送的数据包之前,所述方法还包括:
29、分别接收通过第一链路和第二链路发送的探测数据包;
30、在所述第一链路的网络性能优于第二链路的网络性能的情况下,确定接收发送端通过第一链路发送的数据包,并确定接收发送端通过第二链路重新发送的数据包。
31、其中,所述方法还包括:
32、若出错的数据包的数量大于第一预设值、和/或缓存区丢失数据包的数量大于第二预设值,则确定接收发送端通过第二链路发送的数据包,并确定接收发送端通过第一链路重新发送的数据包。
33、本申请实施例还提供了一种数据传输方法,该方法应用于发送端,包括:
34、通过第一链路向接收端发送数据包;
35、在接收端接收的数据包出错的情况下,基于所述数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述数据包。
36、其中,所述基于所述数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述数据包,包括:
37、接收所述接收端发送的第一信息,所述第一信息用于指示发送端通过第二链路发送在第一链路接收的出错的所述数据包;所述第一信息至少包括:所述数据包在原始数据中的偏移量;
38、基于所述数据包在原始数据中的偏移量查找对应的数据并进行打包封装,得到待重新发送的数据包;
39、通过第二链路向所述接收端发送所述待重新发送的数据包。
40、其中,所述方法还包括:
41、在接收端的缓存区有数据包丢失的情况下,基于所述丢失的数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述丢失的数据包。
42、其中,所述基于所述丢失的数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述丢失的数据包,包括:
43、接收所述接收端发送的第二信息,所述第二信息用于指示发送端通过第二链路发送丢失的所述数据包;所述第二信息至少包括:所述丢失的数据包在原始数据中的偏移量;
44、基于所述丢失的数据包在原始数据中的偏移量查找对应的数据并进行打包封装,得到待重新发送的数据包;
45、通过第二链路向所述接收端发送所述待重新发送的数据包。
46、本申请实施例还提供了一种数据传输装置,所述装置应用于接收端,包括:
47、第一通信单元,用于接收发送端通过第一链路发送的数据包;
48、在接收的数据包出错的情况下,基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包。
49、本申请实施例还提供了一种数据传输装置,所述装置应用于发送端,包括:
50、第二通信单元,用于通过第一链路向接收端发送数据包;
51、在接收端接收的数据包出错的情况下,基于所述数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述数据包。
52、本申请实施例还提供了一种接收端设备,包括:第一通信接口和第一处理器;其中,
53、所述第一通信接口,用于接收发送端通过第一链路发送的数据包;
54、在接收的数据包出错的情况下,基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包。
55、本申请实施例还提供了一种发送端设备,包括:第二通信接口和第二处理器;其中,
56、所述第二通信接口,用于通过第一链路向接收端发送数据包;
57、本文档来自技高网...
【技术保护点】
1.一种数据传输方法,其特征在于,该方法应用于接收端,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述基于预设的校验规则判断接收的数据包是否出错,包括:
5.根据权利要求3或4所述的方法,其特征在于,所述校验规则至少与如下参数相关:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述确定接收端的缓存区有数据包丢失,包括:
8.根据权利要求6所述的方法,其特征在于,所述基于所述丢失的数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述丢失的数据包,包括:
9.根据权利要求1所述的方法,其特征在于,所述接收发送端通过第一链路发送的数据包之前,所述方法还包括:
10.根据权利要求1所述的方法,其特征在于,所述方法还包
11.一种数据传输方法,其特征在于,该方法应用于发送端,包括:
12.根据权利要求11所述的方法,其特征在于,所述基于所述数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述数据包,包括:
13.根据权利要求11所述的方法,其特征在于,所述方法还包括:
14.根据权利要求13所述的方法,其特征在于,所述基于所述丢失的数据包在原始数据中的偏移量通过第二链路向所述接收端重新发送所述丢失的数据包,包括:
15.一种数据传输装置,其特征在于,所述装置应用于接收端,包括:
16.一种数据传输装置,其特征在于,所述装置应用于发送端,包括:
17.一种接收端设备,其特征在于,包括:第一通信接口和第一处理器;其中,
18.一种发送端设备,其特征在于,包括:第二通信接口和第二处理器;其中,
19.一种接收端设备,其特征在于,包括:第一处理器和用于存储能够在处理器上运行的计算机程序的第一存储器,
20.一种发送端设备,其特征在于,包括:第二处理器和用于存储能够在处理器上运行的计算机程序的第二存储器,
21.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10任一项所述方法的步骤,或者实现权利要求11至14任一项所述方法的步骤。
...【技术特征摘要】
1.一种数据传输方法,其特征在于,该方法应用于接收端,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述数据包,包括:
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
4.根据权利要求3所述的方法,其特征在于,所述基于预设的校验规则判断接收的数据包是否出错,包括:
5.根据权利要求3或4所述的方法,其特征在于,所述校验规则至少与如下参数相关:
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
7.根据权利要求6所述的方法,其特征在于,所述确定接收端的缓存区有数据包丢失,包括:
8.根据权利要求6所述的方法,其特征在于,所述基于所述丢失的数据包在原始数据中的偏移量,接收发送端通过第二链路重新发送的所述丢失的数据包,包括:
9.根据权利要求1所述的方法,其特征在于,所述接收发送端通过第一链路发送的数据包之前,所述方法还包括:
10.根据权利要求1所述的方法,其特征在于,所述方法还包括:
11.一种数据传输方法,其特征在于,该方法应用于发送端,包括:
12.根据权利要...
【专利技术属性】
技术研发人员:孟一璐,骆正虎,石祚夫,
申请(专利权)人:中国移动通信有限公司研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。