CN112188546A - 传输数据的方法和装置 - Google Patents
传输数据的方法和装置 Download PDFInfo
- Publication number
- CN112188546A CN112188546A CN201910594754.7A CN201910594754A CN112188546A CN 112188546 A CN112188546 A CN 112188546A CN 201910594754 A CN201910594754 A CN 201910594754A CN 112188546 A CN112188546 A CN 112188546A
- Authority
- CN
- China
- Prior art keywords
- time interval
- data
- data packet
- data packets
- adjacent
- 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.)
- Granted
Links
Images
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/0289—Congestion control
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种传输数据的方法和装置,该方法包括:连续发送M个数据包,M为大于1的整数;经过第一时间间隔,连续发送N个数据包,N为大于1的整数;接收与所述M个数据包一一对应的M个确认信息;接收与所述N个数据包一一对应的N个确认信息;根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。本申请的方法能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
Description
技术领域
本申请涉及通信领域,并且更具体地,涉及一种传输数据的方法和装置。
背景技术
随着网络技术的高速发展,人们对数据业务的需求量越来越大,同时,也对未来数据业务提出了“高速、高效、连续、低时延”的传输要求,例如,虚拟现实(virtual reality,VR)业务等。
从性能特点角度,数据业务的传输控制算法大致可以分为两类:一类是倾向于缓存堆积的传输控制算法,如基于丢包退避控制的Reno算法、Cubic算法等,在不丢包的情况下,此类传输控制算法可以获得比较好的带宽利用率,但由于瓶颈环节(bottleneck)缓存堆积,端到端的传输时延通常比较长;另一类是倾向于避免缓存堆积的传输控制算法,如平均带宽和环路时延控制算法(bottleneck bnadwith and round trip time,BBR)及其他基于传输时延的控制算法等,此类算法主动控制往传输通道发送的数据量,避免瓶颈环节缓存堆积或过多堆积的传输控制算法,可以获得比较好的传输时延性能力。
但是,当上述两类算法在瓶颈环节共存时,后者(倾向于避免缓存堆积的传输控制算法)存在极大的生存挑战。后者的端到端时延不仅被拉长,还存在所谓“绅士”算法被“饿死”的现象。因此,如何提高数据业务的传输效率,成为一个亟待解决的问题。
发明内容
本申请提供一种传输数据的方法和装置,该方法能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
第一方面,提供了一种传输数据的方法,该方法包括:连续发送M个数据包,M为大于1的整数;经过第一时间间隔,连续发送N个数据包,N为大于1的整数;接收与所述M个数据包一一对应的M个确认信息;接收与所述N个数据包一一对应的N个确认信息;根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
根据本申请实施例中的方法,根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
在一些可能的实现方式中,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。
在一些可能的实现方式中,所述根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略,包括:根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
在一些可能的实现方式中,所述根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略,包括:根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包;根据所述缓存竞争数据包,调整数据包的传输控制策略。
在一些可能的实现方式中,所述根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包,包括:所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,瓶颈环节存在所述缓存竞争数据包。
在一些可能的实现方式中,所述调整数据包的传输控制策略,包括:调整数据包的发送速率;或调整数据包在瓶颈环节的带宽占比。
在一些可能的实现方式中,所述第一阈值为2。
第二方面,提供了一种传输数据的装置,包括:发送模块,用于连续发送M个数据包,M为大于1的整数;所述发送模块,用于经过第一时间间隔,连续发送N个数据包,N为大于1的整数;接收模块,用于接收与所述M个数据包一一对应的M个确认信息;所述接收模块,用于接收与所述N个数据包一一对应的N个确认信息;处理模块,用于根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
根据本申请实施例中的装置,根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
在一些可能的实现方式中,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。
在一些可能的实现方式中,所述处理模块具体用于:根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
在一些可能的实现方式中,所述处理模块具体用于:根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包;根据所述缓存竞争数据包,调整数据包的传输控制策略。
在一些可能的实现方式中,所述处理模块具体用于:所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,瓶颈环节存在所述缓存竞争数据包。
在一些可能的实现方式中,所述处理模块具体用于:调整数据包的发送速率;或调整数据包在瓶颈环节的带宽占比。
在一些可能的实现方式中,所述第一阈值为2。
第三方面,提供了一种传输数据的装置,该装置包括:收发器和处理器,其中,处理器用于从存储器中调用并运行所述存储器中存储的指令,执行上述第一方面或第一方面的任一种可能的实现方式中的方法。
可选地,所述传输数据的装置,还包括存储器,所述存储器用于存储指令。
可选地,所述处理器为一个或多个,所述存储器为一个或多个。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以与处理器分离设置,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。
在具体实现过程中,存储器可以为非瞬时性(non-transitory)存储器,例如只读存储器(read only memory,ROM),其可以与处理器集成在同一块芯片上,也可以与处理器分离设置,本申请实施例对存储器的类型以及存储器与处理器的设置方式不做限定。
第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被计算机运行时,使得所述计算机执行第一方面或其中任意一种可能的实现方式中的方法。
第五方面,提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或其中任意一种可能的实现方式中的方法的指令。
根据本申请实施例中的方法,根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
附图说明
图1是适用于本申请实施例的一个通信系统的示例性架构图。
图2是适用于本申请实施例的另一个通信系统的示例性架构图。
图3是本申请实施例提供的传输数据的方法的示意性流程图。
图4是本申请一个实施例的传输数据的方法的示意性框图。
图5是本申请另一个实施例的传输数据的方法的示意性框图。
图6是本申请一个实施例的传输数据的装置的示意性框图。
图7是本申请另一个实施例的传输数据的装置的示意性框图。
具体实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例的技术方案可以应用于各种通信系统,例如:无线局域网(wirelesslocal area network,WLAN)系统,可选地,本申请实施例还可以应用于需要进行波束赋形训练的系统中,例如,长期演进(long term evolution,LTE)系统、LTE频分双工(frequencydivision duplex,FDD)系统、LTE时分双工(time division duplex,TDD)、通用移动通信系统(universal mobile telecommunication system,UMTS)、全球互联微波接入(worldwideinteroperability for microwave access,WiMAX)通信系统、第五代(5th generation,5G)系统或新无线(new radio,NR)等。
本申请实施例中的终端设备可以指用户设备(user equipment,UE)、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。终端设备还可以是蜂窝电话、无绳电话、会话启动协议(sessioninitiation protocol,SIP)电话、无线本地环路(wireless local loop,WLL)站、个人数字助理(personal digital assistant,PDA)、具有无线通信功能的手持设备、计算设备或连接到无线调制解调器的其它处理设备、车载设备、可穿戴设备,未来5G网络中的终端设备或者未来演进的公用陆地移动通信网络(public land mobile network,PLMN)中的终端设备等,本申请实施例对此并不限定。
作为示例而非限定,在本申请实施例中,该终端设备还可以是可穿戴设备。可穿戴设备也可以称为穿戴式智能设备,是应用穿戴式技术对日常穿戴进行智能化设计、开发出可以穿戴的设备的总称,如眼镜、手套、手表、服饰及鞋等。可穿戴设备即直接穿在身上,或是整合到用户的衣服或配件的一种便携式设备。可穿戴设备不仅仅是一种硬件设备,更是通过软件支持以及数据交互、云端交互来实现强大的功能。广义穿戴式智能设备包括功能全、尺寸大、可不依赖智能手机实现完整或者部分的功能,例如:智能手表或智能眼镜等,以及只专注于某一类应用功能,需要和其它设备如智能手机配合使用,如各类进行体征监测的智能手环、智能首饰等。
此外,在本申请实施例中,终端设备还可以是物联网(internet of things,IoT)系统中的终端设备,IoT是未来信息技术发展的重要组成部分,其主要技术特点是将物品通过通信技术与网络连接,从而实现人机互连,物物互连的智能化网络。在本申请实施例中,IOT技术可以通过例如窄带(narrow band)NB技术,做到海量连接,深度覆盖,终端省电。
此外,在本申请实施例中,终端设备还可以包括智能打印机、火车探测器、加油站等传感器,主要功能包括收集数据(部分终端设备)、接收网络设备的控制信息与下行数据,并发送电磁波,向网络设备传输上行数据。
本申请实施例中,网络设备可以是接入网设备等用于与终端设备通信的设备。
作为示例而非限定,在本申请中,该网络设备可以是WLAN中的接入点(accesspoint,AP),可以是全球移动通信(global system for mobile communications,GSM)系统或码分多址(code division multiple access,CDMA)中的基站(base transceiverstation,BTS),也可以是宽带码分多址(wideband code division multiple access,WCDMA)系统中的基站(NodeB,NB),还可以是LTE系统中的演进型基站(evolved NodeB,eNB或eNodeB),还可以是云无线接入网络(cloud radio access network,CRAN)场景下的无线控制器,或者该网络设备可以为中继站、接入点、车载设备、可穿戴设备以及未来5G网络中的网络设备或者未来演进的PLMN网络中的网络设备等,本申请实施例并不限定。
另外,在本申请实施例中,接入网设备为小区提供服务,终端设备通过该小区使用的传输资源(例如,频域资源,或者说,频谱资源)与接入网设备进行通信,该小区可以是接入网设备(例如基站)对应的小区,小区可以属于宏基站,也可以属于小小区(small cell)对应的基站,这里的小区可以包括:城市小区(metro cell)、微小区(micro cell)、微微小区(pico cell)、毫微微小区(femto cell)等,这些小小区具有覆盖范围小、发射功率低的特点,适用于提供高速率的数据传输服务。
在本申请中,网络设备可以包括基站(gNB),例如宏站、微基站、室内热点、以及中继节点等,功能是向终端设备发送无线电波,一方面实现下行数据传输,另一方面发送调度信息控制上行传输,并接收终端设备发送的无线电波,接收上行数据传输。
其中,以上列举的终端设备和网络设备的功能和具体实现方式仅为示例性说明,本申请并未限定于此。
在本申请实施例中,终端设备或网络设备包括硬件层、运行在硬件层之上的操作系统层,以及运行在操作系统层上的应用层。该硬件层包括中央处理器(centralprocessing unit,CPU)、内存管理单元(memory management unit,MMU)和内存(也称为主存)等硬件。该操作系统可以是任意一种或多种通过进程(process)实现业务处理的计算机操作系统,例如,Linux操作系统、Unix操作系统、Android操作系统、iOS操作系统或windows操作系统等。该应用层包含浏览器、通讯录、文字处理软件、即时通信软件等应用。并且,本申请实施例并未对本申请实施例提供的方法的执行主体的具体结构特别限定,只要能够通过运行记录有本申请实施例的提供的方法的代码的程序,以根据本申请实施例提供的方法进行通信即可,例如,本申请实施例提供的方法的执行主体可以是接入点或站点,或者,是接入点或者站点中能够调用程序并执行程序的功能模块。
另外,本申请的各个方面或特征可以实现成方法、装置或使用标准编程和/或工程技术的制品。本申请中使用的术语“制品”涵盖可从任何计算机可读器件、载体或介质访问的计算机程序。例如,计算机可读介质可以包括,但不限于:磁存储器件(例如,硬盘、软盘或磁带等),光盘(例如,压缩盘(compact disc,CD)、数字通用盘(digital versatile disc,DVD)等),智能卡和闪存器件(例如,可擦写可编程只读存储器(erasable programmableread-only memory,EPROM)、卡、棒或钥匙驱动器等)。另外,本文描述的各种存储介质可代表用于存储信息的一个或多个设备和/或其它机器可读介质。术语“机器可读介质”可包括但不限于,无线信道和能够存储、包含和/或承载指令和/或数据的各种其它介质。
图1为适用于本申请实施例的通信系统100的示例性架构图。本申请实施例中的方法可以应用于图1所示的通信系统100中。应理解,可以应用本申请实施例的方法的通信系统100中可以包括更多或更少的网络设备或终端设备。
图1中的网络设备或终端设备可以是硬件,也可以是从功能上划分的软件或者以上二者的结合。图1中的网络设备或终端设备之间可以通过其他设备或网元通信。
图1所示的通信系统100中,网络设备110和终端设备101~终端设备106组成一个通信系统100。在该通信系统100中,网络设备110可以向终端设备101~终端设备106发送下行数据,当然,终端设备101~终端设备106也可以发送上行数据给网络设备110。应理解终端设备101~终端设备106可以是,例如,蜂窝电话、智能电话、便携式电脑、手持通信设备、手持计算设备、卫星无线电装置、全球定位系统、PDA和/或用于在无线通信系统100上通信的任意其它适合设备。
通信系统100可以是PLMN网络、设备到设备(device-to-device,D2D)网络、机器到机器(machine to machine,M2M)网络、IoT网络或者其他网络。
此外,终端设备104~终端设备106也可以组成一个通信系统。在该通信系统中,终端设备105可以发送下行数据给终端设备104或终端设备106,相应地,终端设备104或终端设备106也可以发送上行数据给终端设备105。
图2为适用于本申请实施例的通信系统200的示例性架构图。本申请实施例中的方法可以应用于图2所示的通信系统200中。应理解,可以应用本申请实施例的方法的通信系统200中可以包括更多或更少的网络设备或终端设备。
如图2所示的通信系统可以是WLAN系统,图2中的网络设备可以是接入点(accesspoint,AP),终端设备可以是若干个站点(station,STA)。其中,AP或STA可以是硬件,也可以是从功能上划分的软件或者以上二者的结合。图2中的AP或STA之间可以通过其他设备或网元通信。
图2的WLAN系统可以是由多个基本服务集(basic service set,BSS)构成的WLAN场景,该WLAN系统可以包括一个或多个AP,以及一个或多个STA,图2以两个AP(AP 1和AP 2)和四个STA(STA 1和STA 2)为例,其中,AP与AP、AP与STA、STA与STA之间可以通过各种标准进行无线通信。
应理解,本文所涉及的通信可以是直接通信,也可以是间接通信,本申请实施例对此不作限定。例如,假设STA 3不属于AP 1的基本服务集合,AP 1可以先将信息发送给AP 2,再由AP 2将该信息发送给STA 3,从而实现AP 1和STA 3之间的间接通信。同理,STA 1与STA4也可以通过AP 1或AP 2进行间接通信,此处不再赘述。
上述提到的基本服务集合是802.11局域网的基本组成部分,一个BSS包括一个AP和STA,所有的STA在本BSS内都可以直接通信,但在和本BSS之外的STA进行通信时,都需要通过本BSS的AP。
在现有技术中,数据业务的传输控制算法大致可以分为两类:倾向于缓存堆积的传输控制算法和倾向于避免缓存堆积的传输控制算法。
其中,倾向于缓存堆积的传输控制算法也可以称为倾向于将缓存堆满的算法、缓存竞争算法或其他算法,倾向于避免缓存堆积的传输控制算法也可以称为缓存不堆积算法或其他,本申请实施例中对这两种算法的名称并不限定。
对于倾向于缓存堆积的传输控制算法可以获得比较好的带宽利用率,但是由于瓶颈环节(bottleneck)缓存堆积,端到端的传输时延通常比较长,例如,基于丢包退避控制的Reno算法、Cubic算法等。
对于倾向于避免缓存堆积的传输控制算法能够主动控制往传输通道发送的数据量,避免瓶颈环节缓存堆积或过多堆积的传输控制算法,可以获得比较好的传输时延性能力,例如,平均带宽和环路时延控制算法(bottleneck bnadwith and round trip time,BBR)及其他基于传输时延的控制算法等。
但是,当上述两类算法在瓶颈环节共存时,前者(倾向于缓存堆积的传输控制算法)会将瓶颈环节的缓存堆满,从而导致后者(倾向于避免缓存堆积的传输控制算法)的传输带宽被极大的压缩,从而使后者的端到端时延被拉长,使后者存在极大的生存挑战。
为达到带宽利用率最大化、端到端时延最小化的目的,发送端需要准确检测瓶颈环节缓存竞争数据流(通过倾向于缓存堆积的传输控制算法发送的数据流)的存在,以便于在不同状况下采取不同的传输控制策略。但是,由于管道带宽和时延本身的变化和抖动,仅对数据流的速率和时延性能进行简单的性能检测,传输端无法准确检测瓶颈环节是否存在缓存竞争数据流。
基于上述问题,本申请实施例提出了一种传输数据的方法,能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
需要说明的是,本申请中的瓶颈环节(也可以称为传输通道的瓶颈环节)通常可以指通信系统(如移动通信系统)的空口,也可以是通信系统中的其他端口(或带宽),本申请实施例对此并不限定。
本申请中的数据流是指发送端通过瓶颈环节向接收端发送的数据序列(信号序列),在数据传输的过程中,发送端可以数据流一次发送完;也可以将数据流分为多个数据包,然后多次发送。
为便于理解,下面将传输的数据序列统一称为数据包,应理解,下述数据包也可以称为数据流,本申请实施例对此并不限定。同时,将倾向于缓存堆积的传输控制算法统一称为缓存竞争算法,将基于缓存竞争算法发送的数据包统一称为缓存竞争数据包,将倾向于避免缓存堆积的传输控制算法统一称为缓存不堆积算法。
图3是本申请实施例的传输数据的方法300的一个示意性流程图。应理解,图3示出了通信方法的步骤或操作,但这些步骤或操作仅是示例,本申请实施例还可以执行其他操作或者图3中的各个操作的变形,或者,并不是所有步骤都需要执行,或者,这些步骤可以按照其他顺序执行。
应理解,方法300中的发送端可以为图1或图2中的网络设备,接收端可以为图1或
图2中的终端设备;或者,方法300中的发送端可以为图1或图2中的终端设备,接收端可以为图1或图2中的网络设备。
如图3所示的方法300可以包括:
S310,连续发送M个数据包。
其中,M为大于1的整数。
可选地,所述连续发送M个数据包为基于缓存不堆积算法发送的数据包。
此处所述的连续发送可以理解为近似连续,即发送端以近似相等的时间间隔、均匀地发送多个数据包。例如,这M个数据包之间的发送时间间隔小于或等于预设的阈值。
或者,发送端可以基于步调(pacing)发送方式发送多个数据包,比如,以周期性步调间隔(pacing interval)发送多个数据包。可选地,这M个数据包之间的发送时间间隔小于pacing发送方式中的pacing interval。
S320,经过第一时间间隔,连续发送N个数据包。
其中,N为大于1的整数。
可选地,所述连续发送N个数据包为基于缓存不堆积算法发送的数据包。
与S310中的连续发送类似,此处所述的连续发送可以理解为近似连续,即发送端以近似相等的时间间隔、均匀地发送多个数据包;或者,发送端可以以周期性pacinginterval的控制方式发送多个数据包。这里不再赘述。
可选地,所述连续发送N个数据包为基于缓存不堆积算法发送的数据包。
可选地,所述第一时间间隔可以是预设的时间间隔。
进一步地,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。例如,该第一时间间隔可以大于pacing interval。
需要说明的是,上述M个数据包的发送时长、该N个数据包的发送时长以及第一时间间隔的总时长,可以与基于pacing发送方式发送的M+N个数据包的发送总时长相等,此时,数据包没有超发。
可选地,所述总时长可以为一个环路时延(round trip time,RTT)。也就是说,当RTT中不包括第一时间间隔时,发送的数据包的个数,与当RTT中包括第一时间间隔时发送的数据包的个数相同,即当RTT中不包括第一时间间隔时,各数据包之间的发送间隔变小,但一个RTT中的数据包总数不变。
可选地,这M个数据包和这N个数据包可以称为探测数据包或监测数据包。
可选地,所述总时长也可以为两个RTT,其中,前一个RTT用于发送多个探测数据包,后一个RTT用于接收该多个探测数据包对应的确认信息。
S330,接收与所述M个数据包一一对应的M个确认信息。
可选地,所述M个确认信息分别为所述M个数据包对应的确认(Ack或Nack)信息。
例如,接收所述M个数据包中第1个数据包对应的确认信息,接收所述M个数据包中第2个数据包对应的确认信息,直至接收到所述M个数据包中第M个数据包对应的确认信息。
S340,接收与所述N个数据包一一对应的N个确认信息。
可选地,所述N个确认信息分别为所述N个数据包对应的确认(Ack或Nack)信息。
例如,接收所述N个数据包中第1个数据包对应的确认信息,接收所述N个数据包中第2个数据包对应的确认信息,直至接收到所述N个数据包中第N个数据包对应的确认信息。
S350,根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
在本申请中,发送端可以根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,监测瓶颈环节是否存在缓存竞争数据流,例如,监测该发送端发送的数据在进入空口瓶颈缓存时,有其他竞争数据流。并且,发送端还可通过多轮次的监测,观察缓存竞争数据流的缓存侵占趋势,判断缓存竞争数据流是基于同类算法的竞争数据流,还是更具“侵略性”的倾向于缓存堆积的其他算法的数据流。
根据本申请实施例中的方法,根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,能够检测瓶颈环节缓存竞争数据流的存在,并相应地调整数据包的传输控制策略,从而能够提高数据业务的传输效率。
可选地,当所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,发送端可以确定瓶颈环节存在缓存竞争数据流。
可选地,发送端可以根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
也就是说,发送端在监测到瓶颈环节的缓存竞争数据流后,发送端的发送控制状态可以进入“瓶颈环节缓存竞争状态”,以改变数据发送速率控制准则。比如,从监测到缓存竞争数据流前的兼顾可用带宽利用率和端到端时延性能的原则,转变为监测到缓存竞争数据流后的提高数据流的共存能力,并获得一定的瓶颈环节的带宽占比的原则。例如,可以采取直接以测算的缓存竞争数据流的速率进行数据发送,或以瓶颈环节的最大可用带宽的固定占比(带宽占比),调整数据发送的措施。
可选地,当所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,发送端可以调整所述数据包的传输控制策略。其中,所述第一阈值可以是预先设置的,例如,第一阈值为2。
进一步地,发送端可以调整数据包的发送速率;或者,发送端可以调整数据包在瓶颈环节的带宽占比。
在本申请中,根据M个数据包和N个数据包的发送间隔不同,可以分为以下几种情况。
第一种情况:先连续发送M个数据包,然后间隔一定时间间隔(第一时间间隔)后,再发送N个数据包,此时,在一个RTT内发送的数据包为M+N个。这种情况可以称为“连续-间断-连续”发送方式。其中,第一种情况可以包括以下几个步骤:
(1)发送端可以基于步调(pacing)发送方式发送多个探测数据包,该多个数据包为基于缓存不堆积算法发送的数据包,该多个数据包之间的发送间隔是均匀的,即该多个数据包是连续发送的。
可选地,发送端可以基于既定的控制策略,使该多个数据包与其对应的确认信息之间时间差,高于基础时延一定水平,允许传输瓶颈环节有少量的缓存堆积。这样既可以充分利用传输带宽,也可控制由于缓存堆积导致传输时延过长的问题。
例如,一个数据发送轮次的总时长约为2RTT,其中,该数据发送轮次包括两个窗口,前一个窗口的时长约为一个RTT,主要用于发送多个探测数据包(探测性能或状态),除了保持数据发送外,还期望通过这些数据包的发送,完成传输管道性能/状态探测;后一窗口的时长约为一个RTT,主要用于等待该多个探测数据包的对应的确认信息返回发送端(视实际的瓶颈环节的缓存堆积情况,实际时长会不同于前一数据发送轮次测量的RTT),期间,发送端继续以既定的pacing interval进行数据发送,并完成传输链路性能和状态的测量。
(2)将上述多个探测数据包中的最后P(P为正整数,P=M+N)个数据包,作为瓶颈环节缓存竞争数据流的竞争探测数据包,这些数据包由原来的pacing发送方式,变更为“连续-间断-连续”的发送方式,也即在原来该P个数据包pacing发送的时间时长内,先连续发送P/2(即M)个数据包(或近似连续,这受限于发送最大带宽),间断时长为(P-1)*pancinginterval的时间间隔后,再连续发送P/2(即N)个数据包。这P个数据包可以称为竞争探测数据包。
如图4所示,将多个探测数据中的最后6个数据包的发送方式变更为“连续-间断-连续”的发送方式,即在原来该6个数据包pacing发送的时间时长内,先连续发送3个数据包,间断5*pancing interval,再连续发送3个数据包。
(3)该P个竞争探测数据包对应的确认信息到达发送端后,计算前P/2个数据包对应的确认信息和后P/2个数据包对应的确认信息之间的平均间隔,记为Ack_interval_A,而时间间隔两侧发送的数据包对应的确认信息之间的间隔,记为Ack_interval_B。
如图4所示,若瓶颈环节不存在缓存竞争数据包,则该P个竞争探测数据包对应的确认信息之间的时间间隔基本保持平滑均匀,且与之前(该P个竞争探测数据包之前)发送数据包的对应的确认信息之间的时间间隔也基本一致,有明显的流量整形现象。
如图4所示,若传输通道瓶颈环节存在缓存竞争数据流,则由于“插队”现象的存在,该P个竞争探测数据包对应的确认信息之间的时间间隔会存在明显差异,特别是“时间间隔两侧的数据包的对应的确认信息之间的时间间隔较长,没有明显的流量整形现象。此时,Ack_interval_A和Ack_interval_B满足Ack_interval_B/Ack_interval_A≥C,其中,C为预先设置的阈值,C为正整数。
(4)若连续多个的数据发送轮次,都满足Ack_interval_B/Ack_interval_A≥C,则可以判断存在瓶颈环节缓存竞争数据流(说明数据包在进入瓶颈缓存时,如空口缓存,有其他竞争数据流插队;目前仿真C取值2);并且,还可通过多轮次的监测,观察缓存竞争数据流的缓存侵占趋势,判断是基于同类算法的竞争数据流,还是更具“侵略性”的倾向于缓存堆积的其他算法的数据流。
(5)在监测到传输瓶颈环节的缓存竞争数据流后,发送端的发送控制进入“瓶颈环节缓存竞争状态”,改变数据发送速率控制准则,比如,从监测到缓存竞争数据流前的兼顾可用带宽利用率和端到端时延性能的原则,转变为监测到缓存竞争数据流后的提高数据流的共存能力,获得一定的瓶颈环节的带宽占比的原则。可以采取直接以测算的缓存竞争数据流的速率进行数据发送,或以瓶颈环节的最大可用带宽的固定占比,进行数据发送的措施。
需要说明的是,上述第一种情况可以包括更多或更少的步骤,本申请对各步骤的执行顺序和方式不作限定。
第二种情况:先连续发送2个数据包,间隔一定时间间隔(第一时间间隔)后,再发送2个数据包,然后再间隔一定时间间隔后,发送2个数据,直至一个RTT结束,此时,在一个RTT内发送的数据包也为M+N个。这种情况可以称为“连续-间断”发送方式。其中,如图5所示,第二种情况可以包括以下几个步骤:
(1)发送端可以基于步调(pacing)发送方式发送多个探测数据包,该多个数据包为基于缓存不堆积算法发送的数据包,该多个数据包之间的发送间隔是均匀的,即该多个数据包是连续发送的。
可选地,发送端可以基于既定的控制策略,使该多个数据包与其对应的确认信息之间时间差,高于基础时延一定水平,允许传输瓶颈环节有少量的缓存堆积。这样既可以充分利用传输带宽,也可控制由于缓存堆积导致传输时延过长的问题。
例如,一个数据发送轮次的总时长约为2RTT,其中,该数据发送轮次包括两个窗口,前一个窗口的时长约为一个RTT,主要用于发送多个探测数据包(探测性能或状态),除了保持数据发送外,还期望通过这些数据包的发送,完成传输管道性能/状态探测;后一窗口的时长约为一个RTT,主要用于等待该多个探测数据包的对应的确认信息返回发送端(视实际的瓶颈环节的缓存堆积情况,实际时长会不同于前一数据发送轮次测量的RTT),期间,发送端继续以既定的pacing interval进行数据发送,并完成传输链路性能和状态的探测。
(2)通过“连续-间断”的方式发送该多个探测数据包。
例如,如图5所示,先连续发送1个数据包,间隔一定时间间隔后,发送2个数据包,然后再间隔一定时间间隔后,再发送2个数据包,直至一个RTT结束。
如图5所示,若在端到端瓶颈环节存在缓存竞争数据流,则缓存竞争数据流的数据包会在“间断”的时间窗口内进行“插队”,往缓存瓶颈环节的缓存发送数据;这样,如果存在缓存竞争数据流,在传输瓶颈环节的缓存队列中,就会存在本发明方案的目标控制数据的数据包分布不均匀的现象;
(3)该多个探测数据包对应的确认信息到达发送端后,计算连续传输数据包对应的确认信息之间的平均间隔,记为Ack_interval_A,“时间间隔两侧发送的数据包对应的确认信息之间的间隔,记为Ack_interval_B。
如图5所示,若瓶颈环节不存在缓存竞争数据包,则该多个探测数据包对应的确认信息之间的时间间隔基本保持平滑均匀,有明显的流量整形现象。
若传输通道瓶颈环节存在缓存竞争数据流,则由于“插队”现象的存在,该多个探测数据包对应的确认信息之间的时间间隔会存在明显差异,特别是“时间间隔两侧的数据包对应的确认信息之间的时间间隔较长,没有明显的流量整形现象。此时,Ack_interval_A和Ack_interval_B满足Ack_interval_B/Ack_interval_A≥D,其中,D为预先设置的阈值,D为正整数。
(4)若连续多个的数据发送轮次,都满足Ack_interval_B/Ack_interval_A≥C,则可以判断存在瓶颈环节缓存竞争数据流(说明数据包在进入瓶颈缓存时,如空口缓存,有其他竞争数据流插队);并且,还可通过多轮次的监测,观察缓存竞争数据流的缓存侵占趋势,判断是基于同类算法的竞争数据流,还是更具“侵略性”的倾向于缓存堆积的其他算法的数据流。
(5)根据时间间隔两侧发送的数据包对应的确认信息之间的时间间隔Ack_interval_B,连续传输数据包对应的确认信息之间的平均间隔Ack_interval_A,测算瓶颈环节的可用带宽,缓存竞争数据流的发送速率,缓存竞争数据流的占用速率。
需要说明的是,上述第二种情况可以包括更多或更少的步骤,本申请对各步骤的执行顺序和方式不作限定。
第三种情况:间隔一定时间间隔(第一时间间隔)后,连续发送2个数据包,然后间隔一定时间间隔后,再发送2个数据,然后再间隔一定时间间隔后,直至一个RTT结束,此时,在一个RTT内发送的数据包也为M+N个。这种情况可以称为“间断-连续”发送方式。
第三种情况与上述第二种情况类似,具体可以参照上述第二种情况的描述,这里不再赘述。
应理解,本申请对方法300中各步骤的执行顺序和方式不作限定。
图6是本申请实施例的传输数据的装置600的示意性框图。应理解,装置600仅是一种示例。本申请实施例的装置还可包括其他模块或单元,或者包括与图6中的各个模块的功能相似的模块,或者并非要包括图6中的所有模块。
发送模块610,用于连续发送M个数据包,M为大于1的整数;
所述发送模块610,用于经过第一时间间隔,连续发送N个数据包,N为大于1的整数;
接收模块620,用于接收与所述M个数据包一一对应的M个确认信息;
所述接收模块620,用于接收与所述N个数据包一一对应的N个确认信息;
处理模块630,用于根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
可选地,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。
可选地,所述处理模块630具体用于:根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
可选地,所述处理模块630具体用于:根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包;根据所述缓存竞争数据包,调整数据包的传输控制策略。
可选地,所述处理模块630具体用于:所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,瓶颈环节存在所述缓存竞争数据包。
可选地,所述处理模块630具体用于:调整数据包的发送速率;或调整数据包在瓶颈环节的带宽占比。
可选地,所述第一阈值为2。
应理解,图6所示的传输数据的装置600能够执行图3中传输数据的方法300中的各个步骤。
图7是本申请一个实施例的传输数据的装置700的示意性结构图。应理解,图7示出的装置700仅是示例,本申请实施例的装置700还可包括其他模块或单元,或者包括与图7中的各个模块的功能相似的模块。
装置700可以包括一个或多个处理器710、一个或多个存储器720、接收器730和发送器740。接收器730和发送器740可以集成在一起,称为收发器。存储器720用于存储处理器710执行的程序代码。其中,处理器710中可以集成有存储器720,或者处理器1210耦合到一个或多个存储器720,用于调取存储器720中的指令。
在一个实施例中,发送器740可以用于实现图6中的发送模块610能够实现的操作或步骤,接收器730可以用于实现图6中的接收模块620能够实现的操作或步骤,处理器710可以用于实现图6中的处理模块630能够实现的操作或步骤。
应理解,本申请实施例中的处理器可以为中央处理单元(central processingunit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signalprocessor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
还应理解,本申请实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random accessmemory,RAM)可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DR RAM)。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
应理解,上文中描述了通信系统中下行传输时通信的方法,但本申请并不限于此,可选地,在上行传输时也可以采用上文类似的方案,为避免重复,此处不再赘述。
上述各个装置实施例中网络设备与终端设备和方法实施例中的网络设备或终端设备完全对应,由相应的模块或单元执行相应的步骤,例如发送模块(发射器)方法执行方法实施例中发送的步骤,接收模块(接收器)执行方法实施例中接收的步骤,除发送接收外的其它步骤可以由处理模块(处理器)执行。具体模块的功能可以参考相应的方法实施例。发送模块和接收模块可以组成收发模块,发射器和接收器可以组成收发器,共同实现收发功能;处理器可以为一个或多个。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
在本说明书中使用的术语“部件”、“模块”、“系统”等用于表示计算机相关的实体、硬件、固件、硬件和软件的组合、软件、或执行中的软件。例如,部件可以是但不限于,在处理器上运行的进程、处理器、对象、可执行文件、执行线程、程序和/或计算机。通过图示,在计算设备上运行的应用和计算设备都可以是部件。一个或多个部件可驻留在进程和/或执行线程中,部件可位于一个计算机上和/或分布在2个或更多个计算机之间。此外,这些部件可从在上面存储有各种数据结构的各种计算机可读介质执行。部件可例如根据具有一个或多个数据分组(例如来自与本地系统、分布式系统和/或网络间的另一部件交互的二个部件的数据,例如通过信号与其它系统交互的互联网)的信号通过本地和/或远程进程来通信。
还应理解,本文中涉及的第一、第二、第三、第四以及各种数字编号仅为描述方便进行的区分,并不用来限制本申请实施例的范围。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各种说明性逻辑块(illustrative logical block)和步骤(step),能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令(程序)。在计算机上加载和执行所述计算机程序指令(程序)时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (16)
1.一种传输数据的方法,其特征在于,包括:
连续发送M个数据包,M为大于1的整数;
经过第一时间间隔,连续发送N个数据包,N为大于1的整数;
接收与所述M个数据包一一对应的M个确认信息;
接收与所述N个数据包一一对应的N个确认信息;
根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
2.根据权利要求1所述的方法,其特征在于,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略,包括:
根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;
根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
4.根据权利要求3所述的方法,其特征在于,所述根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略,包括:
根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包;
根据所述缓存竞争数据包,调整数据包的传输控制策略。
5.根据权利要求4所述的方法,其特征在于,所述根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包,包括:
所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,瓶颈环节存在所述缓存竞争数据包。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述调整数据包的传输控制策略,包括:
调整数据包的发送速率;或
调整数据包在瓶颈环节的带宽占比。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述第一阈值为2。
8.一种传输数据的装置,其特征在于,包括:
发送模块,用于连续发送M个数据包,M为大于1的整数;
所述发送模块,用于经过第一时间间隔,连续发送N个数据包,N为大于1的整数;
接收模块,用于接收与所述M个数据包一一对应的M个确认信息;
所述接收模块,用于接收与所述N个数据包一一对应的N个确认信息;
处理模块,用于根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,以及所述第一时间间隔,调整数据包的传输控制策略。
9.根据权利要求8所述的装置,其特征在于,所述第一时间间隔大于所述M个数据包中相邻两个数据包之间的发送间隔,所述第一时间间隔大于所述N个数据包中相邻两个数据包之间的发送间隔。
10.根据权利要求8或9所述的装置,其特征在于,所述处理模块具体用于:
根据所述M个确认信息中相邻确认信息之间的接收时间间隔和/或所述N个确认信息中相邻确认信息之间的接收时间间隔,计算所述M个确认信息和/或所述N个确认信息的平均接收时间间隔;
根据所述平均接收时间间隔和所述第一时间间隔,调整数据包的传输控制策略。
11.根据权利要求10所述的装置,其特征在于,所述处理模块具体用于:
根据所述平均接收时间间隔和所述第一时间间隔,确定瓶颈环节存在缓存竞争数据包;
根据所述缓存竞争数据包,调整数据包的传输控制策略。
12.根据权利要求11所述的装置,其特征在于,所述处理模块具体用于:
所述第一时间间隔与所述平均接收时间间隔的比值大于或等于第一阈值时,瓶颈环节存在所述缓存竞争数据包。
13.根据权利要求8至12中任一项所述的装置,其特征在于,所述处理模块具体用于:
调整数据包的发送速率;或
调整数据包在瓶颈环节的带宽占比。
14.根据权利要求8至13中任一项所述的装置,其特征在于,所述第一阈值为2。
15.一种传输数据的装置,其特征在于,包括:处理器,所述处理器与存储器耦合;
存储器,用于存储计算机程序或指令;
处理器,用于执行所述存储器中存储的计算机程序或指令,以使得所述装置执行如权利要求1至7中任一项所述的方法。
16.一种可读存储介质,包括程序或指令,当所述程序或指令在计算机上运行时,如权利要求1至7中任意一项所述的方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910594754.7A CN112188546B (zh) | 2019-07-03 | 2019-07-03 | 传输数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910594754.7A CN112188546B (zh) | 2019-07-03 | 2019-07-03 | 传输数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112188546A true CN112188546A (zh) | 2021-01-05 |
CN112188546B CN112188546B (zh) | 2023-06-27 |
Family
ID=73914987
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910594754.7A Active CN112188546B (zh) | 2019-07-03 | 2019-07-03 | 传输数据的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112188546B (zh) |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060251129A1 (en) * | 2005-03-30 | 2006-11-09 | Canon Kabushiki Kaisha | Transmission system and control method |
US20070115805A1 (en) * | 2004-11-04 | 2007-05-24 | Huawei Technologies Co., Ltd. | Protection Switching Method and Apparatus for Nodes in a Resilient Packet Ring Network |
CN101188796A (zh) * | 2007-02-05 | 2008-05-28 | 中兴通讯股份有限公司 | 一种无线网络控制器和基站之间进行流量控制的方法 |
CN101404622A (zh) * | 2008-11-07 | 2009-04-08 | 重庆邮电大学 | 基于多径负载均衡的无线互联网拥塞控制方法及控制器 |
CN101572911A (zh) * | 2002-09-24 | 2009-11-04 | 富士通株式会社 | 数据包传输/发送方法及移动通信系统 |
CN101610463A (zh) * | 2008-06-19 | 2009-12-23 | 中兴通讯股份有限公司 | 一种无线数据的发送方法 |
US20110110238A1 (en) * | 2006-08-21 | 2011-05-12 | Interdigital Technology Corporation | Method and apparatus for preventing transmission blocking in an hsupa wireless communication system |
CN102752102A (zh) * | 2012-07-02 | 2012-10-24 | 珠海全志科技股份有限公司 | 数据包分段加密传输处理方法和装置 |
CN106301987A (zh) * | 2015-06-03 | 2017-01-04 | 华为技术有限公司 | 一种报文丢失检测方法、装置及系统 |
CN107113118A (zh) * | 2015-04-27 | 2017-08-29 | 华为技术有限公司 | 应答消息传输方法和网络设备 |
CN107241162A (zh) * | 2016-11-24 | 2017-10-10 | 天地融科技股份有限公司 | 一种数据传输方法及装置 |
CN109937603A (zh) * | 2017-05-03 | 2019-06-25 | 华为技术有限公司 | 基于竞争的传输方法和设备 |
-
2019
- 2019-07-03 CN CN201910594754.7A patent/CN112188546B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101572911A (zh) * | 2002-09-24 | 2009-11-04 | 富士通株式会社 | 数据包传输/发送方法及移动通信系统 |
US20070115805A1 (en) * | 2004-11-04 | 2007-05-24 | Huawei Technologies Co., Ltd. | Protection Switching Method and Apparatus for Nodes in a Resilient Packet Ring Network |
US20060251129A1 (en) * | 2005-03-30 | 2006-11-09 | Canon Kabushiki Kaisha | Transmission system and control method |
US20110110238A1 (en) * | 2006-08-21 | 2011-05-12 | Interdigital Technology Corporation | Method and apparatus for preventing transmission blocking in an hsupa wireless communication system |
CN101188796A (zh) * | 2007-02-05 | 2008-05-28 | 中兴通讯股份有限公司 | 一种无线网络控制器和基站之间进行流量控制的方法 |
CN101610463A (zh) * | 2008-06-19 | 2009-12-23 | 中兴通讯股份有限公司 | 一种无线数据的发送方法 |
CN101404622A (zh) * | 2008-11-07 | 2009-04-08 | 重庆邮电大学 | 基于多径负载均衡的无线互联网拥塞控制方法及控制器 |
CN102752102A (zh) * | 2012-07-02 | 2012-10-24 | 珠海全志科技股份有限公司 | 数据包分段加密传输处理方法和装置 |
CN107113118A (zh) * | 2015-04-27 | 2017-08-29 | 华为技术有限公司 | 应答消息传输方法和网络设备 |
CN106301987A (zh) * | 2015-06-03 | 2017-01-04 | 华为技术有限公司 | 一种报文丢失检测方法、装置及系统 |
CN107241162A (zh) * | 2016-11-24 | 2017-10-10 | 天地融科技股份有限公司 | 一种数据传输方法及装置 |
CN109937603A (zh) * | 2017-05-03 | 2019-06-25 | 华为技术有限公司 | 基于竞争的传输方法和设备 |
Non-Patent Citations (1)
Title |
---|
王文静: ""命名数据网络中的拥塞控制算法研究"", 《重庆邮电大学硕士学位论文》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112188546B (zh) | 2023-06-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10349362B2 (en) | User equipment and method for enhanced uplink power control | |
EP3047615B1 (en) | Systems and methods for full duplex communication over a wireless network | |
CN113207178B (zh) | 功率分配方法和终端设备以及存储介质 | |
CN110474736B (zh) | 通信方法和通信装置 | |
CN101904214A (zh) | 无线网络中用于解决盲节点问题的方法和装置 | |
WO2020211096A1 (zh) | 无线通信方法、终端设备和网络设备 | |
EP3573410A1 (en) | Random access response method and device, and random access method and device | |
CN111277974A (zh) | 载波选取的方法和通信设备 | |
EP2926585B1 (en) | Selecting among spectrums within cells of a wireless communication network | |
EP3758309A1 (en) | Method and apparatus for service transmission | |
CN110677916B (zh) | 一种随机接入信息的配置、传输和检测方法、终端及基站 | |
CN113940123A (zh) | 一种无线通信资源分配的方法和装置以及通信设备 | |
CN110741708B (zh) | D2d通信中载波选取的方法和终端设备 | |
US20240015702A1 (en) | Method for reselecting sidelink resource and apparatus for the same | |
CN111479292B (zh) | 数据传输的方法和装置 | |
WO2014188065A1 (en) | Method and apparatus for facilitating improved access for efficient cell change | |
CN112188546B (zh) | 传输数据的方法和装置 | |
WO2019157734A1 (zh) | 确定最大发送功率的方法、装置、系统及存储介质 | |
CN112889326A (zh) | 参数重配的方法和装置 | |
WO2022155795A1 (en) | Medium access control protocol data unit forwarding | |
WO2021062869A1 (zh) | 无线通信方法和终端设备 | |
WO2021087881A1 (zh) | 边链路资源的选择方法以及装置 | |
EP3720176A1 (en) | Method for transmitting information, terminal device, and network device | |
CN116249146B (zh) | 一种通信方法和通信装置 | |
WO2022027690A1 (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |