CN101982951B - 数据传输控制方法和中间节点 - Google Patents
数据传输控制方法和中间节点 Download PDFInfo
- Publication number
- CN101982951B CN101982951B CN2010105511768A CN201010551176A CN101982951B CN 101982951 B CN101982951 B CN 101982951B CN 2010105511768 A CN2010105511768 A CN 2010105511768A CN 201010551176 A CN201010551176 A CN 201010551176A CN 101982951 B CN101982951 B CN 101982951B
- Authority
- CN
- China
- Prior art keywords
- intermediate node
- transmission direction
- advertised window
- loopback delay
- tcp ack
- 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.)
- Active
Links
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Abstract
本发明实施例公开了一种数据传输控制方法和中间节点,其中,该方法主要包括:位于UE和服务器之间的中间节点根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;确定所述中间节点接收到的所述第一传输方向上的TCP ACK包中的携带的通告窗口和确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;通过所述TCP ACK包将设置后的通告窗口发送给第一传输方向上的接收端,以使得所述第一传输方向上的接收端根据所述设置后的通告窗口进行数据传输。通过本发明实施例的方法和中间节点,从而可以减少与第一传输方向反向的数据包堵住TCP ACK包的概率,提升第一传输方向的数据传输性能。
Description
技术领域
本发明涉及通信技术,特别涉及一种数据传输控制技术。
背景技术
对于用户设备而言,经常会同时进行多个业务,例如,一边打开网页一边进行下载,或者在上传的同时进行下载,可以将这种同时进行多个业务的情况称为多业务并发。这些业务应用层一般使用传输控制协议(TransmissionControl Protocol,TCP),所以当多个业务同时进行时,就可能导致某一方向上的TCP数据包把其反方向的TCP确认(Acknowledge,ACK)包堵住,从而影响其反方向传输链路的性能。
现有技术中解决该问题的一种方法为:将ACK包识别出来后,进行优先发送。但是,对于宽带码分多址(Wideband Code Division Multiple Access,简称WCDMA)系统中的接入网设备而言,该方法的主要问题在于:对于上行链路(Uplink,简称UL)方向,由于数据包需要先经过用户设备(UserEquipment,简称UE)侧的处理,再经过Uu口(基站与UE之间的接口)发送,接入网就无法采用该技术来提升数传性能,而只能依赖于UE的实现了。
发明内容
本发明实施例提供了一种数据传输控制方法,从而可以提升任意传输方向上的数据传输性能。
一方面,本发明实施例提供了一种数据传输控制方法,主要包括:
位于用户设备和服务器之间的中间节点根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;
确定所述中间节点接收到的所述第一传输方向上的TCP ACK包中的携带的通告窗口和确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;
通过所述TCP ACK包将设置后的通告窗口发送给第一传输方向上的接收端,以使得所述第一传输方向上的接收端根据所述设置后的通告窗口进行数据传输。
另一方面,本发明实施例提供了一种位于用户设备和服务器之间的中间节点,主要包括:
确定单元,用于根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;
设置单元,用于确定所述中间节点接收到的所述第一传输方向上的TCPACK包中的携带的通告窗口和所述确定单元确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;
发送单元,用于通过所述TCP ACK包将所述设置单元设置后的通告窗口发送给第一传输方向上的接收端,以使得所述第一传输方向上的接收端根据所述设置后的通告窗口进行数据传输。
本发明实施例提供的方法和中间节点,根据接收到的第一传输方向上的TCP ACK包中的携带的通告窗口和确定出的通告窗口估计值中的较小值来设置通告窗口,接收端后续可以根据设置后的通告窗口进行数据传输,从而可以减少与第一传输方向反向的数据包堵住TCP ACK包的概率,提升第一传输方向的数据传输性能。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。
图1是本发明一实施例提供的数据传输控制方法的流程图;
图2是本发明一实施例提供的环回时延示意图;
图3是本发明一实施例的中间节点的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例作进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
本实施例的技术方案,可以应用于各种通信系统,例如:GSM,码分多址(Code Division Multiple Access,简称CDMA)系统,WCDMA,时分同步码分多址(Time Division Synchronous Code Division Multiple Access,简称TD-SCDMA),长期演进(Long Term Evolution,简称LTE)等。在GSM系统中,基站为基站收发信台(Base Transceiver Station,简称BTS),基站控制设备为基站控制器(Base Station Controller,简称BSC);在WCDMA和TD-SCDMA系统中,基站为NodeB,基站控制设备为无线网络控制器(RadioNetwork Controller,简称RNC);在LTE系统中,基站为演进基站(eNodeB),基站控制设备为服务网关(Servicing Gateway,简称SGW)及移动管理实体(Mobile Management Entity,简称MME)。
本发明一实施例提供了数据传输控制方法,如图1所示,该方法可以包括如下内容。
S101,中间节点根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值。
此处,第一传输方向可以为下行方向也可以为上行方向。
对于WCDMA系统而言,本发明实施例中的中间节点可以为基站控制设备RNC,也可以为其他任意处于服务器到UE之间的节点,例如TCP功能增强实体等。对于LTE系统而言,中间节点可能为基站设备,也可能为基站控制设备,或者为其他任意处于服务器到UE之间的节点。
其中,吞吐率的获取方法可以有多种,例如,获取的一段时间T内第一传输方向上总的流量后,将该总的流量除以T,就可以得到吞吐率,需要说明的是,该时间T可以根据实际需要进行设置,本发明不做限定。另外,吞吐率的获取方法也不限于本实施例中所例举的方法,本领域技术人员可以根据不同的需要采用不同的方式。本实施例中,可以周期性地对吞吐率进行统计,也可以根据事件触发对吞吐率的统计,该事件例如可以为预测到或者已经监测到数据传输链路上发生瓶颈。本发明实施例中,可以是由中间节点来获取吞吐率,也可以是其他网元获取吞吐率后通知该中间节点。
而环回时延(Round-Trip Time,简称RTT),表示从UE到服务器(端到端)的环回时延,对于任意一个中间节点X,RTT可以分为两部分,一是UE与中间节点X之间的环回时延,二是中间节点X与服务器之间的环回时延。例如,如图2所示,以中间节点为RNC为例,RTT可以包括RTT1和RTT2,也就是说RTT=RTT1+RTT2,假设上行数据包到达RNC的时间为T1,确认(Acknowledge,简称ACK)包到达RNC的时间为T2,RTT1=T2-T1,而RTT2表示数据包在RNC等待的时延与无线链路控制(Radio Link Control,简称RLC)层协议数据单元(Protocol Data Unit,简称PDU)环回时延之和。可以理解的是,可以周期性地对RTT进行统计,例如在获取RTT1以及RTT2在一个周期内的平均值,然后进行求和便可以得到RTT。需要说明的是,统计RTT的周期可以与统计吞吐率的周期相同或者不同。此外,由于RTT在不同的时间段内,变化可能不是很大,因此也可以直接采用经验值。
可以理解的是,对于中间节点为其他实体的情况,吞吐率和RTT的获取方式与此类似,对于本领域技术人员而言,是很容易根据本发明实施例的方法以及现有技术得到吞吐率和RTT的,本实施例对此不做赘述。
根据吞吐率和环回时延就可以确定出通告窗口估计值,假设环回时延和第一传输方向上的吞吐率的乘积为比特,那么将该乘积换算成字节数,就可以得到通告窗口估计值,例如通告窗口估计值=(吞吐率×RTT)/8。
而由上述描述可以看出,通告窗口估计值可以是周期性地确定得到,也可以是通过事件触发的。
S102,确定中间节点接收到的第一传输方向上的TCP ACK包中的携带的通告窗口和确定出的通告窗口估计值中的较小值,将TCP ACK包中的通告窗口设置为该较小值。
例如,第一传输方向为下行方向时,下行方向的TCP ACK包是服务器对UE发送的TCP数据包的反馈,是服务器发给UE的,第一传输方向为上行方向时,上行方向的TCP ACK包是UE对服务器发送的TCP数据包的反馈,是UE发给服务器的。在TCP ACK包中会携带有通告窗口,那么结合S101中确定的通告窗口估计值,就可以对TCP ACK包中的通告窗口进行设置,设中间节点接收到的第一传输方向上的TCP ACK包中的携带的通告窗口为W1,设置后的通告窗口为W2,则W2=min(W1,通告窗口估计值)。
可以理解的是,不光是多业务并发时会出现第一传输方向反向的数据包堵住TCP ACK包的情况,在单业务时,也有可能出现第一传输方向反向的数据包堵住TCP ACK包的情况,而无论是哪种场景都可以采用本发明实施例的方法。
S103,通过TCP ACK包将设置后的通告窗口发送给第一传输方向上的接收端,以使得第一传输方向上的接收端根据设置后的通告窗口进行数据传输。
在S102中,对TCP ACK包中的通告窗口进行设置后,通过TCP ACK包将设置后的通告窗口发送给第一传输方向上的接收端,这样接收端后续可以根据设置后的通告窗口进行数据传输,从而可以减少与第一传输方向反向的数据包堵住TCP ACK包的概率,提升第一传输方向的数据传输性能。
本发明一实施例还提供了一种位于用户设备和服务器之间的中间节点,如图3所示,该中间节点可以包括:
确定单元301,用于根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;
设置单元302,用于确定所述中间节点接收到的第一传输方向上的TCPACK包中的携带的通告窗口和确定单元301确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;
发送单元303,用于通过TCP ACK包将设置单元302设置后的通告窗口发送给第一传输方向上的接收端,以使得第一传输方向上的接收端根据设置后的通告窗口进行数据传输。
具体地,确定单元301具体可以包括:
第一获取单元3011,用于获取第一传输方向上的吞吐率与环回时延的积;
第二获取单元3012,用于将第一获取单元3011获取的积换算成字节数,将换算得到的结果作为通告窗口估计值。
其中,环回时延和第一传输方向上的吞吐率的获取方式可以参考方法实施例中的相关描述。
对于本发明中间节点实施例而言,各个单元和单元的实现以及交互方式等可以参见方法实施例相关部分的说明。
此外,本发明实施例中的中间节点可以为基站控制设备,例如RNC,也可以为在UE和服务器中间的任意一个节点,例如TCP功能增强实体,本发明实施例对此不做限定。
本发明实施例的中间节点,根据接收到的第一传输方向上的TCP ACK包中的携带的通告窗口和确定出的通告窗口估计值中的较小值来设置通告窗口,接收端后续可以根据设置后的通告窗口进行数据传输,从而可以减少与第一传输方向反向的数据包堵住TCP ACK包的概率,提升第一传输方向的数据传输性能。
以上所描述的装置或系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何设置、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种数据传输控制方法,其特征在于,所述方法包括:
位于用户设备和服务器之间的中间节点根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;
确定所述中间节点接收到的所述第一传输方向上的传输控制协议确认(TCP ACK)包中的携带的通告窗口和确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;
通过所述TCP ACK包将设置后的通告窗口发送给第一传输方向上的接收端,以使得所述第一传输方向上的接收端根据所述设置后的通告窗口进行数据传输。
2.根据权利要求1所述的方法,其特征在于,所述中间节点根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值包括:
将所述第一传输方向上的吞吐率与所述环回时延的积换算成字节数,将换算得到的结果作为通告窗口估计值。
3.根据权利要求1或2所述的方法,其特征在于,所述环回时延包括用户设备与中间节点之间的环回时延和中间节点与服务器之间的环回时延。
4.根据权利要求1或2所述的方法,其特征在于,所述中间节点为基站控制设备或者TCP功能增强实体。
5.一种位于用户设备和服务器之间的中间节点,其特征在于,所述中间节点包括:
确定单元,用于根据环回时延和第一传输方向上的吞吐率确定通告窗口估计值;
设置单元,用于确定所述中间节点接收到的所述第一传输方向上的传输控制协议确认(TCP ACK)包中的携带的通告窗口和所述确定单元确定出的通告窗口估计值中的较小值,将所述TCP ACK包中的通告窗口设置为所述较小值;
发送单元,用于通过所述TCP ACK包将所述设置单元设置后的通告窗口发送给第一传输方向上的接收端,以使得所述第一传输方向上的接收端根据所述设置后的通告窗口进行数据传输。
6.根据权利要求5所述的中间节点,其特征在于,所述确定单元包括:
第一获取单元,用于获取所述第一传输方向上的吞吐率与所述环回时延的积;
第二获取单元,用于将所述第一获取单元获取的积换算成字节数,将换算得到的结果作为通告窗口估计值。
7.根据权利要求5所述的中间节点,所述环回时延包括用户设备与所述中间节点之间的环回时延和所述中间节点与所述服务器之间的环回时延。
8.根据权利要求5-7任一项所述的中间节点,其特征在于,在宽带码分多址系统中,所述中间节点为基站控制设备或者TCP功能增强实体。
9.根据权利要求5-7任一项所述的中间节点,其特征在于,在长期演进系统中,所述中间节点为基站设备或者基站控制设备或者TCP功能增强实体。
10.根据权利要求8所述的中间节点,其特征在于,所述基站控制设备为无线网络控制器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105511768A CN101982951B (zh) | 2010-11-19 | 2010-11-19 | 数据传输控制方法和中间节点 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105511768A CN101982951B (zh) | 2010-11-19 | 2010-11-19 | 数据传输控制方法和中间节点 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101982951A CN101982951A (zh) | 2011-03-02 |
CN101982951B true CN101982951B (zh) | 2012-07-11 |
Family
ID=43619844
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105511768A Active CN101982951B (zh) | 2010-11-19 | 2010-11-19 | 数据传输控制方法和中间节点 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101982951B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102201997A (zh) * | 2011-06-03 | 2011-09-28 | 华为技术有限公司 | 数据传输控制方法和设备 |
CN103428240B (zh) * | 2012-05-18 | 2016-06-22 | 深圳市腾讯计算机系统有限公司 | 数据传输方法和数据传输终端 |
CN103780336B (zh) * | 2012-10-25 | 2017-07-07 | 中兴通讯股份有限公司 | Tcp双向并发传输调控方法和装置 |
CN103001961B (zh) * | 2012-12-03 | 2016-03-30 | 华为技术有限公司 | 一种获取流媒体缓存参数的方法及装置 |
CN106576100B (zh) * | 2015-03-26 | 2019-08-16 | 华为技术有限公司 | Tcp网络代理配置方法和装置 |
CN106537867B (zh) * | 2015-03-27 | 2019-07-19 | 华为技术有限公司 | 一种数据传输方法、装置和系统 |
CN108023686B (zh) * | 2016-11-02 | 2022-03-25 | 中兴通讯股份有限公司 | 一种tcp延时处理方法、装置及系统 |
WO2019210509A1 (zh) * | 2018-05-04 | 2019-11-07 | 华为技术有限公司 | 确认报文发送方法及装置 |
CN109660467B (zh) * | 2019-02-26 | 2022-12-23 | 北京百度网讯科技有限公司 | 用于控制流量的方法和装置 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101867512A (zh) * | 2010-04-15 | 2010-10-20 | 华为技术有限公司 | 数据传输控制方法和装置 |
-
2010
- 2010-11-19 CN CN2010105511768A patent/CN101982951B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101867512A (zh) * | 2010-04-15 | 2010-10-20 | 华为技术有限公司 | 数据传输控制方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN101982951A (zh) | 2011-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101982951B (zh) | 数据传输控制方法和中间节点 | |
EP3151608B1 (en) | Data transmission method and device | |
EP3104632A1 (en) | Communication methods executed by auxiliary base station and main base station and corresponding base stations | |
US10263895B2 (en) | Data transmission method, central processing node, gateway, and base station | |
US10645609B2 (en) | Method and apparatus for transmitting TCP ACK in communication system | |
CN101924625A (zh) | 数据包重传控制的方法和网络侧设备 | |
CN108809540B (zh) | 数据处理方法及设备 | |
CN104243090A (zh) | 一种基于无线信道反馈的发送速率调整方法和设备 | |
US20110194490A1 (en) | Method for tcp ack containment in unidirectional flows with cross layer optimization in wireless networks | |
CN104519529A (zh) | 一种用于对用户设备进行传输控制的方法、设备与系统 | |
WO2018082595A1 (zh) | 数据传输方法、装置及基站 | |
WO2015114077A1 (en) | Multipoint transmission method and multipoint transmission control system using network coding | |
CN102739375A (zh) | 一种用于重传的方法和装置 | |
CN109314608A (zh) | 一种数据传输方法、网络设备及终端设备 | |
CN108307426A (zh) | 一种基于无线tcp的资源调度方法和装置 | |
CN111131179B (zh) | 业务处理方法、装置、网络设备及存储介质 | |
CN107534890A (zh) | 适应性tti调整的方法 | |
CN102801692B (zh) | 一种基于分裂连接的传输控制协议优化方法及系统 | |
JP5124591B2 (ja) | Ranにおける連続するデータユニットの表示の方法 | |
JP7123194B2 (ja) | データ送信方法、送信デバイス、データ受信方法、および受信デバイス | |
US11665587B2 (en) | Data processing method and device to resolve packet loss in multi-hop link system | |
CN112020078B (zh) | 数据传输方法以及装置 | |
CN107484204A (zh) | 基站上行突发缓解方法及装置 | |
CN101873193A (zh) | 无线链路层状态包的发送方法 | |
KR102656608B1 (ko) | 무선 통신 시스템에서 무선 노드 통신 방법 및 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |