CN117395716A - 基于多链路的数据传输方法、装置、设备以及存储介质 - Google Patents
基于多链路的数据传输方法、装置、设备以及存储介质 Download PDFInfo
- Publication number
- CN117395716A CN117395716A CN202311600930.6A CN202311600930A CN117395716A CN 117395716 A CN117395716 A CN 117395716A CN 202311600930 A CN202311600930 A CN 202311600930A CN 117395716 A CN117395716 A CN 117395716A
- Authority
- CN
- China
- Prior art keywords
- link
- data
- data transmission
- packet
- network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 222
- 238000000034 method Methods 0.000 title claims abstract description 58
- 238000011084 recovery Methods 0.000 claims description 39
- 238000012546 transfer Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims 3
- 238000012937 correction Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000001413 cellular effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000000903 blocking effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/0231—Traffic management, e.g. flow control or congestion control based on communication conditions
- H04W28/0236—Traffic management, e.g. flow control or congestion control based on communication conditions radio quality, e.g. interference, losses or delay
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W28/00—Network traffic management; Network resource management
- H04W28/02—Traffic management, e.g. flow control or congestion control
- H04W28/10—Flow control between communication endpoints
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/15—Setup of multiple wireless link connections
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种基于多链路的数据传输方法、装置、设备以及存储介质,该方法包括:获取记录的基于主链路进行数据接收时确定的网络指标;然后,基于网络指标确定副链路的数据传输类型;通知第二链路端通过副链路进行对应数据传输类型的数据的发送。实现了通过结合表征主链路网络状态的网络指标来针对不同网络状况确定副链路的传输数据类型,高效进行主链路和副链路的管理以及流量分配,以灵活适应网络变化,在保证数据连续且稳定传输的情况下,减少用户流量和设备功耗的消耗。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及一种基于多链路的数据传输方法、装置、设备以及存储介质。
背景技术
随着网络通信技术的发展,无线宽带链路越来越多应用于实时通讯场景,进行流媒体数据传输也能达到较好的水平,但是由于部分地区可能由于无线宽带设备落后,无线网络状况较差,仅依赖无线宽带链路进行数据传输容易出现高延时和高丢包的情况,甚至出现无线网络断连导致无法进行音视频通话的糟糕用户体验。由此,相关技术中采用多链路传输的方式来充分利用用户设备上的多个网络资源同时进行数据传输,当某个网络出现问题时,其它可用网络可以继续不间断的进行数据传输,例如无线wifi网络与蜂窝网络同时进行数据传输,当wifi网络不可用时,可通过蜂窝网络实现连续的不间断的数据传输,由此来避免因单一网络问题导致通话中断或者卡顿,提升用户通话的可用性和流畅性。
然而,上述的多链路数据传输方案中,在进行数据传输的时候,采用多个链路同时发送以及接收相同的数据,导致传输流量损耗过大,造成设备不必要的功耗。
发明内容
本申请实施例提供了一种基于多链路的数据传输方法、装置、设备以及存储介质,解决了相关技术中多链路传输采用多个链路同时发送以及接收相同的数据,导致用户流量损耗过大,造成设备不必要的功耗的问题,实现了通过结合表征主链路网络状态的网络指标来针对不同网络状况确定副链路的传输数据类型,在保证数据不间断传输的情况下,能够高效进行主链路和副链路的链路切换以及流量分配,以灵活适应网络状况变化,减少用户流量和设备功耗的消耗。
第一方面,本申请实施例提供了一种基于多链路的数据传输方法,应用于第一链路端,所述第一链路端设置有与第二链路端进行数据传输的主链路和副链路,该方法包括:
获取记录的基于所述主链路进行数据接收时确定的网络指标;
基于所述网络指标确定所述副链路的数据传输类型;
通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,其中,对应所述数据传输类型的数据包括重传数据包和/或冗余数据包。
第二方面,本申请实施例还提供了一种基于多链路的数据传输装置,应用于第一链路端,所述第一链路端设置有与第二链路端进行数据传输的主链路和副链路,该数据传输装置包括:
网络指标确定模块,配置为获取记录的基于所述主链路进行数据接收时确定的网络指标;
传输数据确定模块,配置为基于所述网络指标确定所述副链路的数据传输类型;
数据发送通知模块,配置为通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,其中,对应所述数据传输类型的数据包括重传数据包和/或冗余数据包。
第三方面,本申请实施例还提供了一种基于多链路的数据传输设备,该设备包括:
一个或多个处理器;
存储装置,配置为存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本申请实施例所述的基于多链路的数据传输方法。
第四方面,本申请实施例还提供了一种存储计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时配置为执行本申请实施例所述的基于多链路的数据传输方法。
本申请实施例中,通过获取记录的基于主链路进行数据接收时确定的网络指标,并基于该网络指标确定副链路的数据传输类型后,通知第二链路端通过副链路进行对应数据传输类型的数据的发送,其中,对应数据传输类型的数据包括重传数据包和/或冗余数据包,实现了通过结合表征主链路网络状态的网络指标来针对不同网络状况确定副链路的传输数据类型,在保证数据不间断传输的情况下,进行主链路和副链路的合理的流量分配,以灵活适应网络状况变化,能够通过仅发送重传数据包和/或冗余数据包的方式,减少用户流量和设备功耗的消耗。
附图说明
图1为本申请实施例提供的一种基于多链路的数据传输方法的流程图;
图2为本申请实施例提供的一种基于网络指标确定副链路的数据传输类型的方法的流程图;
图3为本申请实施例提供的一种通知第二链路端对应于数据传输类型进行数据发送的方法的流程图;
图4为本申请实施例提供的另一种基于多链路的数据传输方法的流程图;
图5为本申请实施例提供的另一种基于多链路的数据传输方法的流程图;
图6为本申请实施例提供的一种基于多链路的数据传输装置的结构框图;
图7为本申请实施例提供的一种基于多链路的数据传输设备的结构示意图。
具体实施方式
下面结合附图和实施例对本申请实施例作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请实施例,而非对本申请实施例的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请实施例相关的部分而非全部结构。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
本申请实施例提供的基于多链路的数据传输方法,可以应用于多端多链路的数据通信场景,尤其是对于实时性要求高的流媒体通信场景,多端可以是客户端、服务器端等,多链路可以是wifi网络链路、蜂窝网络链路等,具体的应用场景可以是音视频通话、在线直播以及在线会议等,以音视频通话为示例,在用户设备支持wifi无线网卡和4G/5G网卡的情况下,用户设备可以通过以wifi网络链路以及蜂窝网络链路为主链路和副链路的方式进行数据传输。前述罗列的几种应用场景仅是示例性和解释性的,在实际应用中,还可以在其他场景下的数据传输中用到该基于多链路的数据传输方法,本申请实施例对此不作限定。本申请旨在提供一种基于多链路的数据传输方法,解决相关技术中多链路传输采用多个链路同时发送以及接收相同的数据,导致用户流量损耗过大,造成设备不必要的功耗的问题。
本申请实施例提供的基于多链路的数据传输方法,各步骤的执行主体可以是计算机设备,该计算机设备是指任何具备数据计算、处理和存储能力的电子设备,如手机、PC(Personal Computer,个人计算机)、平板电脑等终端设备,也可以是服务器等设备,本申请实施例对此不作限定。
图1为本申请实施例提供的一种基于多链路的数据传输方法的流程图,该数据传输方法应用于第一链路端,该第一链路端设置有与第二链路端进行数据传输的主链路和副链路,如图1所示,包括如下步骤:
步骤S101、获取记录的基于主链路进行数据接收时确定的网络指标。
其中,第一链路端和第二链路端分别指代不同的可进行数据传输的设备端,第一链路端可以是数据接收端,第二链路端可以是数据发送端,以用户通过终端设备进行音视频通话为示例,客户端会向服务器端发送数据,并由服务器端进行数据的转发,对于服务器发送数据,客户端接收数据的数据传输方向而言,第一链路端可以是客户端,第二链路端可以是服务器端,对于客户端发送数据,服务器接收数据的数据传输方向而言,第一链路端可以是服务器端,第二链路端可以是客户端。在一个实施例中,双链路可以是wifi链路与蜂窝链路,客户端与服务器端之间进行数据传输的主链路可以是wifi网络链路,副链路可以是蜂窝网络链路;当然在某种情况下二者可以互换,也可替换为其它网路连接形式的链路。通常,在主链路的网络状况良好的情况下,第一链路端通过主链路与第二链路端进行通信数据传输,第一链路端可以在通过主链路进行数据接收时计算对应的网络指标,其中网络指标可以是反映主链路进行数据传输时的网络状况的相关指标,例如丢包率、恢复丢包率以及传输往返时间等。其中,丢包率可以是反映第一链路端通过主链路接收第二链路端发送的原始数据包的丢包情况,可以通过将第二链路端的原始发送量作为分母,将第一链路端的实际接收量作为分子,来计算出比率作为丢包率;恢复丢包率可以是反映第一链路端通过主链路接收第二链路端采用前向纠错机制或自动重传机制后发送的数据的丢包情况,可以通过将第二链路端的包含了重传数据包以及冗余数据包的数据发送量作为分母,将第一链路端的实际接收量作为分子,来计算出比率作为恢复丢包率。可以理解的是,由于前向纠错技术或自动重传技术等的数据恢复作用,恢复丢包率应该小于或等于丢包率;传输往返时间可以是第一链路端向第二链路端发送请求后收到回复所花费的时长,可以用于诊断网络连接的速度和可靠性。此外,第一链路端可以记录基于周期时间间隔或设定时间节点来确定的主链路的网络指标,具体获取的网络指标可以包括丢包率、恢复丢包率以及传输往返时间中的至少一种或多种。由此,第一链路端可以通过确定主链路的网络指标的方式,多维度进行网络质量的评估,准确判断弱网场景,有利于后续通过副链路进行适应于不同场景的数据包发送。
在一个实施例中,第一链路端本身会对网络指标进行实时或周期性的记录,例如在数据传输过程中,对丢包率、恢复丢包率以及传输往返时间等用于衡量网络指标的参数进行记录。即针对有记录网络指标的情况,可对其直接进行获取。
步骤S102、基于网络指标确定副链路的数据传输类型。
其中,根据步骤S101中获取的网络指标可以对于主链路的网络状况进行判断,并根据主链路不同的网络状态来进行副链路的切换和/或确定副链路的数据传输类型。其中,用于确定副链路的数据传输类型的网络指标可以采用丢包率、恢复丢包率以及传输往返时间等中的至少一种或多种,确定副链路的数据传输类型可以是确定主链路处于不同网络状况时副链路需要同步发送的数据包类型,其中确定出的使用的数据包类型包括原始数据包、重传数据包以及冗余数据包等的一种或多种,进而达到控制副链路采用不同数据传输类型的数据包的发送,实现对整体数据发送流量的控制。
在一个实施例中,第一链路端可以采用丢包率来确定副链路的数据传输类型,具体的,可以对应于丢包率设置预设参考阈值,根据具体应用场景的实际网络状况,参考阈值的范围可以是2%-5%之间,在丢包率小于或等于参考阈值的情况下,可以基本确定主链路的网络状况良好,可以确定副链路暂停数据传输,或只发送重传数据包和/或冗余数据包;在丢包率大于参考阈值的情况下,可以基本确定主链路的网络状况良好,可以确定副链路暂停数据传输,或者只发送重传数据包和/或冗余数据包。由此,通过丢包率判断主链路的网络状况,及时适应主链路的网络状况变化,合理进行副链路的发送流量分配。
在另一个实施例中,第一链路端可以采用丢包率和恢复丢包率来确定副链路的数据传输类型,图2为本申请实施例提供的一种基于网络指标确定副链路的数据传输类型的方法的流程图,其中,可以对应于丢包率设置第一阈值,第一阈值的参考范围可以是2%-5%之间,可以对应于恢复丢包率设置第二阈值,其中,该第一阈值大于第二阈值,如图2所示,确定副链路的数据传输类型的过程包括以下步骤:
步骤S101、获取记录的基于主链路进行数据接收时确定的网络指标。
步骤S1021、在丢包率小于或等于第一阈值的情况下,确定副链路暂停数据传输。
其中,丢包率小于或等于第一阈值,说明主链路的网络状况良好,无需副链路参与数据传输,为了节省用户流量,因而可以确定副链路暂停数据传输。
步骤S1022、在丢包率大于第一阈值,且恢复丢包率小于或等于第二阈值的情况下,确定副链路传输的数据为重传数据包和/或冗余数据包,第一阈值大于第二阈值。
其中,丢包率大于第一阈值,说明主链路的网络状况一般,但是恢复丢包率小于或等于第二阈值,说明在采用前向纠错机制或自动重传机制后可以保障功能正常使用,例如实时通话顺畅、实时视频顺畅等。由此,可以确定副链路只传输的数据为重传数据包和/或冗余数据包,来加强主链路的传输数据的恢复作用,而无需进行原始数据包的传输来减少数据包过多的冗余,避免过多的流量损耗。
步骤S1023、在丢包率大于第一阈值,且恢复丢包率大于第二阈值的情况下,确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
其中,丢包率大于第一阈值,说明主链路的网络状况一般,而恢复丢包率也大于第二阈值,说明在采用前向纠错机制或自动重传机制后无法保障功能正常使用,容易出现高时延以及高卡顿的不良使用体验,由此可以确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包,与主链路发送相同的数据,以维持功能正常使用。由此,通过综合参考丢包率以及恢复丢包率,准确判断主链路的网络状况,及时适应主链路的网络状况变化,合理安排副链路的发送流量分配。
在一个实施例中,第一链路端还可以采用丢包率、恢复丢包率和传输往返时间来确定副链路的数据传输类型,通过丢包率以及传输往返时延可以更准确确定主链路的网络状况,具体的,对应于丢包率可以设置第一参考阈值,第一参考阈值的取值范围可以是2%-5%之间,对应于恢复丢包率可以设置第二参考阈值,第二参考阈值小于第一参考阈值,对应于传输往返时间可以设置第三参考阈值,第三参考阈值的取值范围可以是800ms-1000ms之间。在丢包率小于或等于第一参考阈值,以及传输往返时延小于或等于第二参考阈值的情况下,说明主链路的网络状况良好,无需副链路参与数据传输,可以确定副链路暂停数据传输;在丢包率大于第一参考阈值,以及传输往返时延大于第二参考阈值的情况下,说明主链路的网络状况一般,而恢复丢包率小于或等于第三阈值的情况下,说明在采用前向纠错机制或自动重传机制后可以保障功能正常使用,可以确定副链路只传输的数据为重传数据包和/或冗余数据包,来加强主链路的传输数据的恢复作用,而无需进行原始数据包的传输来减少数据包过多的冗余,避免过多的流量损耗;在丢包率大于第一参考阈值,以及传输往返时延大于第二参考阈值的情况下,说明主链路的网络状况一般,而恢复丢包率大于第三阈值的情况下,说明在采用前向纠错机制或自动重传机制后无法保障功能正常使用,容易出现高时延以及高卡顿的不良使用体验,可以确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包,与主链路发送相同的数据,以维持功能正常使用。此外,还可以参考其他网络指标来确定副链路的数据传输类型,本申请实施例在此不作限制。因而,通过丢包率、恢复丢包率以及传输往返时间可以可靠地判断主链路的网络状况,减少偶然性网络抖动的影响,适应于主链路的网络状况变化进行副链路的发送流量分配。
由此,在用户处于弱网环境的时候可以充分利用主链路和副链路高效地进行数据传输,使得用户体验不受弱网影响,同时,及时适应主链路的网络状况变化,合理进行副链路的发送流量分配,保障用户使用体验。
步骤S103、通知第二链路端通过副链路进行对应数据传输类型的数据的发送,其中,对应数据传输类型的数据包括重传数据包和/或冗余数据包。
其中,在步骤S102确定副链路的数据传输类型后,可以通知第二链路端通过副链路进行对应数据传输类型的数据的发送。可以理解的是,对应数据传输类型的数据的发送可以有效适应于主链路的网络状况来分配副链路的发送流量,节省流量的消耗,其中,重传数据包可以是第二链路端基于自动重传机制进行发送的,可以包括协议包以及数据包,而冗余数据包可以是第二链路端基于前向纠错机制进行发送的。通过提前发送包含恢复信息的冗余数据包,有利于第一数据端因丢包抖动后进行数据恢复。
在一个实施例中,如图3所示,图3为本申请实施例提供的一种通知第二链路端对应于数据传输类型进行数据发送的方法的流程图,在第一链路端确定副链路传输的数据为重传数据包和/或冗余数据包的情况下,相应的,通知第二链路端通过副链路进行数据发送的具体过程包括以下步骤:
步骤S1031、在检测到副链路存在原始数据包的传输的情况下,通知第二链路端暂停通过副链路发送原始数据包,通过副链路发送重传数据包和/或冗余数据包。
其中,由于主链路可能因网络波动出现网络状况较差的情况,第二链路端开始通过副链路发送原始数据包,那么在主链路的网络状况重新恢复之后,第二链路端无需继续发送原始数据包,可以及时调整副链路的数据传输类型来节省用户流量,因而在确定副链路传输的数据为重传数据包和/或冗余数据包的情况下,可以通知第二链路端暂停通过副链路发送原始数据包,只需发送重传数据包和/或冗余数据包,合理分配副链路的数据流量。具体的,第一链路端可以向第二链路端发送通过副链路发送重传数据包和/或冗余数据包的指令,而第二链路端可以在接收到该指令后,在该指令的基础上添加确认字符结合成回复信息,并发送给第一链路端,由此完成副链路的传输数据类型的调整。
步骤S1032、在检测到副链路不存在原始数据包的传输的情况下,通知第二链路端通过副链路发送重传数据包和/或冗余数据包。
由此,可以灵活适应于主链路的网络状况,同时结合副链路的数据传输状况,在确定副链路传输的数据为重传数据包和/或冗余数据包的情况下,无需副链路对于原始数据包的传输,及时节省用户流量。
在一个实施例中,如图3所示,在第一链路端确定副链路暂停数据传输的情况下,相应的,通知第二链路端通过副链路进行数据发送的具体过程包括以下步骤:
步骤S1033、在检测到第二链路端的副链路处于开启状态的情况下,通知第二链路端暂停副链路的数据传输。
其中,第一链路端确定副链路暂停数据传输,说明主链路的网络状况良好,可以通知第二链路端暂停副链路的数据传输,具体的,第一链路端可以向第二链路端发送通过副链路暂停数据传输的指令,而第二链路端可以在接收到该指令后可以回复确认信息,由此完成副链路的传输数据类型的调整,无需开启副链路来保障用户使用体验。
在一个实施例中,如图3所示,在第一链路端确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包的情况下,通知第二链路端通过副链路进行对应数据传输类型的数据的发送的具体过程包括以下步骤:
步骤S1034、通知第二链路端通过副链路发送原始数据包以及重传数据包和/或冗余数据包。
其中,第一链路端确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包,说明主链路的网络状况较差,需要副链路进行完整数据的传输才能保障用户使用体验。具体的,第一链路端可以向第二链路端发送通过副链路发送原始数据包以及重传数据包和/或冗余数据包的指令,而第二链路端可以在接收到该指令后,在该指令的基础上添加确认字符结合成回复信息,并发送给第一链路端,由此完成副链路的传输数据类型的调整。
上述,通过获取记录的基于主链路进行数据接收时确定的网络指标;然后,基于网络指标确定副链路的数据传输类型;最后,通知第二链路端通过副链路进行对应数据传输类型的数据的发送,实现了通过结合表征主链路网络状态的网络指标来针对不同网络状况确定副链路的传输数据类型,高效进行主链路和副链路的链路切换管理以及流量分配管理,以灵活适应网络状况变化,减少用户流量和设备功耗的消耗。
图4为本申请实施例提供的另一种基于多链路的数据传输方法的流程图,采用周期性检测的方式来确定主链路的网络指标,以及通过参考连续预设周期的数据来进行副链路的数据传输类型的确定,如图4所示,数据传输过程包括以下步骤:
步骤S201、在达到预设周期的情况下,获取记录的连续第一预设数量个预设周期内基于主链路进行数据接收时确定的网络指标。
其中,预设周期可以是第一链路端确定主链路的网络指标的周期时间间隔,其取值范围可以是3s-5s,每当达到预设周期的时候,第一链路端会将当前预设周期内基于主链路接收到的数据确定的网络指标进行记录,并以当前预设周期为末尾周期,获取已记录的连续第一预设数量个预设周期内确定的网络指标,第一预设数量可以是有效确定主链路的网络指标的最小参考数量,具体取值可以参考实际应用场景的精度需求。
步骤S202、在记录的连续第一预设数量个预设周期中每个预设周期的丢包率小于或等于第一阈值的情况下,确定副链路暂停数据传输。
其中,只有在连续第一预设数量个预设周期中每个预设周期的丢包率小于或等于第一阈值的情况下,可以确定主链路的网络状况良好,减少状态误判的可能性,提高参考数据的可靠性。
步骤S203、在记录的连续第一预设数量个预设周期中每个预设周期的丢包率大于第一阈值,且其中存在第二预设数量个预设周期的恢复丢包率小于或等于第二阈值的情况下,确定副链路传输的数据为重传数据包和/或冗余数据包,第一阈值大于第二阈值。
其中,在通过丢包率确定主链路的网络状况较差的情况下,只有存在第二预设数量个预设周期的恢复丢包率小于或等于第二阈值的情况下,可以确定自动重传机制或者前向纠错机制对于主链路的数据传输起到良好的恢复作用,副链路只需传输重传数据包和/或冗余数据包。
步骤S204、在记录的连续第一预设数量个预设周期中每个预设周期的丢包率大于第一阈值,且其中存在第二预设数量个预设周期的恢复丢包率大于第二阈值的情况下,确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
其中,在通过丢包率确定主链路的网络状况较差的情况下,只有存在第二预设数量个预设周期的恢复丢包率大于第二阈值的情况下,可以确定自动重传机制或者前向纠错机制对于主链路的数据传输无法起到恢复作用,副链路还需加入原始数据包的传输。
步骤S205、通知第二链路端通过副链路进行对应数据传输类型的数据的发送,其中,对应数据传输类型的数据包括重传数据包和/或冗余数据包。
由此,通过参考基于预设周期确定的历史数据,提高判断主链路的网络状况的准确性,减少网络波动的影响,更有利于基于多维度的网络评估,有针对性确定副链路的传输数据类型,灵活适应网络状况变化,减少用户流量和设备功耗的消耗。
图5为本申请实施例提供的另一种基于多链路的数据传输方法的流程图,在第一链路端与第二链路端之间加入上行主链路和上行副链路,以及下行主链路和下行副链路的区分,第一链路端作为数据接收端时,第二链路端可以作为数据发送端,第一链路端作为数据发送端时,第二链路端可以作为数据接收端,该基于多链路的数据传输方法可以适用于作为数据接收端的第一链路端或第二链路端,其中,第一链路端设置有与第二链路端进行数据传输的上行主链路和上行副链路,以及下行主链路和下行副链路,如图5所示,具体数据传输过程包括以下步骤:
步骤S301、获取记录的基于下行主链路进行数据接收时确定的网络指标。
步骤S302、基于网络指标确定下行副链路的数据传输类型。
步骤S303、通知第二链路端通过下行副链路进行对应数据传输类型的数据的发送。
步骤S304、在接收到第二链路端发送的通知的情况下,通过上行副链路向第二链路端发送与通知对应的数据传输类型的数据。
其中,由于第一链路端与第二链路端之间可能存在互相进行数据传输的情况,以第一链路端作为本端,那么上行主链路和上行副链路指的是第一链路端发送数据,第二链路端接收数据的链路,下行主链路和下行副链路指的是第二链路端发送数据,第一链路端接收数据的链路。例如,实时通信场景中,客户端与服务器端也会存在互相进行数据传输的情况,那么客户端发送数据,服务器端接收数据的链路可以视为上行链路,而服务器端发送数据,客户端接收数据的链路可以视为下行链路。可以理解的是,上下行链路在实际传输过程中会存在区别,可能会出现下行链路顺畅,但是上行链路不顺畅的情况,以客户端之间进行音视频通话的实时场景,会出现因为上行链路不顺畅导致另一客户端使用体验较差的情况,因而本申请实施例可以进一步区分上下行链路,第二链路端同样可以适用于本申请实施例提供的基于多链路的数据传输方法,从而第二链路端通过监测上行主链路的网络指标,可以适应性地调整第一链路端通过上行副链路的数据传输,合理调整数据包冗余去重的处理量,减少用户流量和设备功耗的消耗,可以有效维护通话场景下多客户端的使用体验。
图6为本申请实施例提供的一种基于多链路的数据传输装置的结构框图,该装置配置为执行上述实施例提供的基于多链路的数据传输方法,具备执行方法相应的功能模块和有益效果。如图6所示,该装置具体包括:
网络指标确定模块101,配置为获取记录的基于主链路进行数据接收时确定的网络指标;
传输数据确定模块102,配置为基于网络指标确定副链路的数据传输类型;
数据发送通知模块103,配置为通知第二链路端通过副链路进行对应数据传输类型的数据的发送,其中,对应数据传输类型的数据包括重传数据包和/或冗余数据包。
由上述方案可知,通过获取记录的基于主链路进行数据接收时确定的网络指标;然后,基于网络指标确定副链路的数据传输类型;最后,通知第二链路端通过副链路进行对应数据传输类型的数据的发送,实现了通过结合表征主链路网络状态的网络指标来针对不同网络状况确定副链路的传输数据类型,高效进行主链路和副链路的链路切换管理以及流量分配管理,以灵活适应网络状况变化,减少用户流量和设备功耗的消耗。
在一个可能的实施例中,网络指标包括丢包率和恢复丢包率,传输数据确定模块102,配置为:
在丢包率小于或等于第一阈值的情况下,确定副链路暂停数据传输;
在丢包率大于第一阈值,且恢复丢包率小于或等于第二阈值的情况下,确定副链路传输的数据为重传数据包和/或冗余数据包,第一阈值大于第二阈值;
在丢包率大于第一阈值,且恢复丢包率大于第二阈值的情况下,确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
在一个可能的实施例中,在确定副链路传输的数据为重传数据包和/或冗余数据包的情况下,数据发送通知模块103,配置为:
在检测到副链路存在原始数据包的传输的情况下,通知第二链路端暂停通过副链路发送原始数据包,通过副链路发送重传数据包和/或冗余数据包;
在检测到副链路不存在原始数据包的传输的情况下,通知第二链路端通过副链路发送重传数据包和/或冗余数据包。
在一个可能的实施例中,在确定副链路暂停数据传输的情况下,数据发送通知模块103,配置为:
在检测到第二链路端的副链路处于开启状态的情况下,通知第二链路端暂停副链路的数据传输。
在一个可能的实施例中,在确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包的情况下,数据发送通知模块103,配置为:
通知第二链路端通过副链路发送原始数据包以及重传数据包和/或冗余数据包。
在一个可能的实施例中,网络指标确定模块101,配置为:
在达到预设周期的情况下,获取记录的连续第一预设数量个预设周期内基于主链路进行数据接收时确定的网络指标;
传输数据确定模块102,配置为:
在记录的连续第一预设数量个预设周期中每个预设周期的丢包率小于或等于第一阈值的情况下,确定副链路暂停数据传输;
在记录的连续第一预设数量个预设周期中每个预设周期的丢包率大于第一阈值,且其中存在第二预设数量个预设周期的恢复丢包率小于或等于第二阈值的情况下,确定副链路传输的数据为重传数据包和/或冗余数据包,第一阈值大于第二阈值;
在记录的连续第一预设数量个预设周期中每个预设周期的丢包率大于第一阈值,且其中存在第二预设数量个预设周期的恢复丢包率大于第二阈值的情况下,确定副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
在一个可能的实施例中,第一链路端设置有与第二链路端进行数据传输的上行主链路和上行副链路,以及下行主链路和下行副链路;
网络指标确定模块101,配置为:
获取记录的基于下行主链路进行数据接收时确定的网络指标;
传输数据确定模块102,配置为:
基于网络指标确定下行副链路的数据传输类型;
数据发送通知模块103,配置为:
通知第二链路端通过下行副链路进行对应数据传输类型的数据的发送;
还包括接收数据通知模块,配置为:
在接收到第二链路端发送的通知的情况下,通过上行副链路向第二链路端发送与通知对应的数据传输类型的数据。
在一个可能的实施例中,网络指标包括丢包率、恢复丢包率以及传输往返时间中的至少一种或多种。
图7为本申请实施例提供的一种基于多链路的数据传输设备的结构示意图,如图7所示,该设备包括处理器201、存储器202、输入装置203和输出装置204;设备中处理器201的数量可以是一个或多个,图7中以一个处理器201为例;设备中的处理器201、存储器202、输入装置203和输出装置204可以通过总线或其他方式连接,图7中以通过总线连接为例。存储器202作为一种计算机可读存储介质,可配置为存储软件程序、计算机可执行程序以及模块,如本申请实施例中的基于多链路的数据传输方法对应的程序指令/模块。处理器201通过运行存储在存储器202中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的基于多链路的数据传输方法。输入装置203可配置为接收输入的数字或字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入。输出装置204可包括显示屏等显示设备。
本申请实施例还提供一种包含计算机可执行指令的非易失性存储介质,计算机可执行指令在由计算机处理器执行时配置为执行一种上述实施例描述的基于多链路的数据传输方法,其中,包括:获取记录的基于主链路进行数据接收时确定的网络指标;基于网络指标确定副链路的数据传输类型;通知第二链路端通过副链路进行对应数据传输类型的数据的发送,其中,对应数据传输类型的数据包括重传数据包和/或冗余数据包。
值得注意的是,上述基于多链路的数据传输装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不配置为限制本申请实施例的保护范围。
在一些可能的实施方式中,本申请提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在计算机设备上运行时,程序代码配置为使计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的方法中的步骤,例如,计算机设备可以执行本申请实施例所记载的基于多链路的数据传输方法。程序产品可以采用一个或多个可读介质的任意组合实现。
Claims (12)
1.基于多链路的数据传输方法,应用于第一链路端,其特征在于,所述第一链路端设置有与第二链路端进行数据传输的主链路和副链路,所述方法包括:
获取记录的基于所述主链路进行数据接收时确定的网络指标;
基于所述网络指标确定所述副链路的数据传输类型;
通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,其中,对应所述数据传输类型的数据包括重传数据包和/或冗余数据包。
2.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述网络指标包括丢包率和恢复丢包率,所述基于所述网络指标确定所述副链路的数据传输类型,包括:
在所述丢包率小于或等于第一阈值的情况下,确定所述副链路暂停数据传输;
在所述丢包率大于所述第一阈值,且所述恢复丢包率小于或等于第二阈值的情况下,确定所述副链路传输的数据为重传数据包和/或冗余数据包,所述第一阈值大于所述第二阈值;
在所述丢包率大于所述第一阈值,且所述恢复丢包率大于所述第二阈值的情况下,确定所述副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
3.根据权利要求2所述的基于多链路的数据传输方法,其特征在于,在确定所述副链路传输的数据为重传数据包和/或冗余数据包的情况下,所述通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,包括:
在检测到所述副链路存在原始数据包的传输的情况下,通知所述第二链路端暂停通过所述副链路发送原始数据包,通过所述副链路发送重传数据包和/或冗余数据包;
在检测到所述副链路不存在原始数据包的传输的情况下,通知所述第二链路端通过所述副链路发送重传数据包和/或冗余数据包。
4.根据权利要求2所述的基于多链路的数据传输方法,其特征在于,在确定所述副链路暂停数据传输的情况下,所述通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,包括:
在检测到所述第二链路端的副链路处于开启状态的情况下,通知所述第二链路端暂停所述副链路的数据传输。
5.根据权利要求2所述的基于多链路的数据传输方法,其特征在于,在确定所述副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包的情况下,所述通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,包括:
通知所述第二链路端通过所述副链路发送原始数据包以及重传数据包和/或冗余数据包。
6.根据权利要求2所述的基于多链路的数据传输方法,其特征在于,所述获取记录的基于所述主链路进行数据接收时确定的网络指标,包括:
在达到预设周期的情况下,获取记录的连续第一预设数量个所述预设周期内基于所述主链路进行数据接收时确定的网络指标;
相应的,所述基于所述网络指标确定所述副链路的数据传输类型,包括:
在所述记录的连续第一预设数量个所述预设周期中每个预设周期的丢包率小于或等于第一阈值的情况下,确定所述副链路暂停数据传输;
在所述记录的连续第一预设数量个所述预设周期中每个预设周期的丢包率大于所述第一阈值,且其中存在第二预设数量个预设周期的恢复丢包率小于或等于第二阈值的情况下,确定所述副链路传输的数据为重传数据包和/或冗余数据包,所述第一阈值大于所述第二阈值;
在所述记录的连续第一预设数量个所述预设周期中每个预设周期的丢包率大于所述第一阈值,且其中存在所述第二预设数量个预设周期的恢复丢包率大于所述第二阈值的情况下,确定所述副链路传输的数据为原始数据包以及重传数据包和/或冗余数据包。
7.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述第一链路端设置有与第二链路端进行数据传输的上行主链路和上行副链路,以及下行主链路和下行副链路;
所述获取记录的基于所述主链路进行数据接收时确定的网络指标,包括:
获取记录的基于所述下行主链路进行数据接收时确定的网络指标;
所述基于所述网络指标确定所述副链路的数据传输类型,包括:
基于所述网络指标确定所述下行副链路的数据传输类型;
所述通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,包括:
通知所述第二链路端通过所述下行副链路进行对应所述数据传输类型的数据的发送;
所述数据传输方法,还包括:
在接收到所述第二链路端发送的通知的情况下,通过所述上行副链路向所述第二链路端发送与所述通知对应的数据传输类型的数据。
8.根据权利要求1所述的基于多链路的数据传输方法,其特征在于,所述网络指标包括丢包率、恢复丢包率以及传输往返时间中的至少一种或多种。
9.基于多链路的数据传输装置,应用于第一链路端,其特征在于,所述第一链路端设置有与第二链路端进行数据传输的主链路和副链路,包括:
网络指标确定模块,配置为获取记录的基于所述主链路进行数据接收时确定的网络指标;
传输数据确定模块,配置为基于所述网络指标确定所述副链路的数据传输类型;
数据发送通知模块,配置为通知所述第二链路端通过所述副链路进行对应所述数据传输类型的数据的发送,其中,对应所述数据传输类型的数据包括重传数据包和/或冗余数据包。
10.一种基于多链路的数据传输设备,所述设备包括:一个或多个处理器;存储装置,配置为存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现权利要求1-8中任一项所述的基于多链路的数据传输方法。
11.一种存储计算机可执行指令的非易失性存储介质,所述计算机可执行指令在由计算机处理器执行时配置为执行权利要求1-8中任一项所述的基于多链路的数据传输方法。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-8中任一项所述的基于多链路的数据传输方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311600930.6A CN117395716A (zh) | 2023-11-27 | 2023-11-27 | 基于多链路的数据传输方法、装置、设备以及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311600930.6A CN117395716A (zh) | 2023-11-27 | 2023-11-27 | 基于多链路的数据传输方法、装置、设备以及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117395716A true CN117395716A (zh) | 2024-01-12 |
Family
ID=89470308
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311600930.6A Pending CN117395716A (zh) | 2023-11-27 | 2023-11-27 | 基于多链路的数据传输方法、装置、设备以及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117395716A (zh) |
-
2023
- 2023-11-27 CN CN202311600930.6A patent/CN117395716A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111628847B (zh) | 数据传输方法及装置 | |
CA2842098C (en) | A system and method for transmission of data signals over a wireless network | |
IL269497B2 (en) | Data transmission method, terminal device and network device | |
JP7234402B2 (ja) | 車両通信のためのセカンダリリンクモニタリング方法、車両通信端末、電子機器及びコンピュータプログラム | |
CN112214441B (zh) | 基于串行总线轮询协议的通信切换方法、设备和系统 | |
CN110933740B (zh) | 上行数据的传输方法、装置、终端设备及存储介质 | |
CN114039703B (zh) | 数据传输方法、装置、设备和介质 | |
CN109962827B (zh) | 设备链路检测方法、装置、设备及可读存储介质 | |
US8811180B2 (en) | Communication apparatus and communication method | |
CN114337724B (zh) | 一种基于双通道技术的无线通信方法、装置及设备 | |
CN112436924A (zh) | 一种数据传输方法及电子设备 | |
CN104601521A (zh) | 用于动态选择通信传输协议的方法、装置和系统 | |
CN103546917A (zh) | 数据传输方法和装置 | |
CN113783775A (zh) | 数据传输的方法和装置 | |
CN117395715A (zh) | 多链路数据传输方法、装置、设备、存储介质以及产品 | |
CN115037416A (zh) | 数据前向纠错处理方法、装置、电子设备和存储介质 | |
CN106817267B (zh) | 一种故障检测方法和设备 | |
KR20190078677A (ko) | 원격 검침 시스템, 그 시스템에 적용되는 원격검침단말장치 및 원격검침단말장치의 동작 방법 | |
CN117395716A (zh) | 基于多链路的数据传输方法、装置、设备以及存储介质 | |
CN102065372A (zh) | 以广播方式传输数据的方法及相关装置 | |
KR20130088180A (ko) | 무선 디지털 통신 방법 및 시스템 | |
CN114339869B (zh) | 网络管理方法、装置、电子设备和存储介质 | |
CN114390320B (zh) | 数据编码码率自适应调节方法、装置、设备和存储介质 | |
CN111615170B (zh) | 一种数据传输方法及系统 | |
TWI609591B (zh) | 資料傳輸品質管控系統與方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |