CN104539486A - 一种基于tcp确认包对的端到端可用带宽估计方法 - Google Patents
一种基于tcp确认包对的端到端可用带宽估计方法 Download PDFInfo
- Publication number
- CN104539486A CN104539486A CN201510020431.9A CN201510020431A CN104539486A CN 104539486 A CN104539486 A CN 104539486A CN 201510020431 A CN201510020431 A CN 201510020431A CN 104539486 A CN104539486 A CN 104539486A
- Authority
- CN
- China
- Prior art keywords
- bag
- ack
- available bandwidth
- standard
- estimation
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种基于TCP确认包对的端到端可用带宽估计方法,接收端每收到发送端发送的数据包后,向发送端返回ACK包对;发送端接收ACK包对,并记录ACK包对内部到达时间间隔,计算端到端带宽其中,BW为端到端带宽,L为ACK包对的大小,ΔT为ACK包对内部到达时间间隔;利用ACK包探测间隔模型计算背景流速率BWback;则端到端可用带宽AW=BW-BWback。本发明改进了样本选择策略,引入了时延和(TDS)的概念,选择TDS最小的样本进行可用带宽估计有利于降低背景流对估计结果的影响,从而保证了带宽估计的准确性。将数据包对技术巧妙用于基于TCP的确认包(ACK)之中,用ACK包对代替包对技术中的探测包对,从而大大降低了带宽估计的开销,且有利于带宽估计的准确性。
Description
技术领域
本发明涉及网络带宽测量领域,更具体地说,涉及一种基于TCP确认包对的端到端可用带宽估计方法。
背景技术
带宽估计一直以来是计算机网络领域研究的热点和重点之一,一些网络应用的广泛使用也得益于网络的带宽特性,例如,传输控制协议(Transmission Control Protocol,TCP)基于可用带宽的准确估计从而实时动态地调整阈值ssthresh,以提高网络吞吐量的性能;网络管理员可根据带宽利用率的测量情况决定是否需要进行网络带宽的升级优化,等等。
目前,端到端可用带宽估计技术主要为两大类。一类是数据包对技术(Packet Pair),该技术由Jacobson,Keshav和Bolot提出,其主要原理是:发送端发送一系列以探测网络状态为目的的探测数据包对到接收端,每个包对包含两个相等大小的连续被发送的探测数据包,包对的两个数据包到达发送端的时间相异,从而会产生到达时间间隔,根据该时间间隔来进行端到端的带宽估计。然而,在真实的网络环境中,在端到端的路径中,通常会有其它网络节点产生的数据流量,称之为背景流,而背景流量可能会对测量的端到端带宽值产生干扰,使得测量结果出现偏高或偏低的现象。当两个数据包之间插入背景流量时,测量值会偏低;而当在路径上带宽最小的那条链路上出现背景流量,且背景流量对第一个包造成的传输时延比对第二个包造成的传输时延更大时,会出现测量值偏高的现象。
另一类是自装载周期性流技术(Self-Loading Periodic Streams,SLoPS),其基本流程是:发送端以一定的速率R向接收端周期性地发送固定数目的等长数据包。在接收端,首先监测探测数据包的单向时延,然后利用该时延来计算发送端到接收端之间的端到端路径可用带宽。该测量算法基于如下理论:当探测数据流的速率大于路径可用带宽时,网络会发送拥塞,探测数据流产生排队现象,这样就会产生额外的排队时延;而当探测流速率比端到端路径可用带宽小的时候,探测数据流在路径中不会排队,从而没有额外的排队时延。因此,当网络刚发生拥塞时,端到端路径可用带宽可通过此时的探测流速率进行估算。虽然可获得较准确的可用带宽估计值,但向该技术需要向网络中注入太多的探测包,这本身就可能造成网络拥塞,特别是在网络带宽有限的环境中,因此,不太适合实际应用。
发明内容
本发明的目的在于克服现有技术的不足,提供一种不会对网络负荷造成任何影响,同时也保证了带宽估计的准确性的基于TCP确认包对的端到端可用带宽估计方法
本发明的技术方案如下:
一种基于TCP确认包对的端到端可用带宽估计方法,接收端每收到发送端发送的数据包后,向发送端返回ACK包对;发送端接收ACK包对,并记录ACK包对内部到达时间间隔,计算端到端带宽其中,BW为端到端带宽,L为ACK包对的大小,ΔT为ACK包对内部到达时间间隔;
利用ACK包探测间隔模型计算背景流速率BWback;则端到端可用带宽AW=BW-BWback。
作为优选,发送端接收ACK包对,并计算ACK包对中所有ACK包的单向时延之和TDS,选择TDS最小的样本作为端到端可用带宽估计的标准样本。
作为优选,在包探测间隔模型中,背景流速率则端到端可用带宽其中,Δin为包探测间隔模型中的探测数据包对发送的时间间隔设,Δout为当前探测数据包对到达接收端的时间间隔。
作为优选,ACK包对包括标准ACK包、辅助ACK包,其中,辅助ACK包的头部保留字段全置1,且不携带任何数据,头部其它字段与标准ACK包相同。
作为优选,当标准ACK包和辅助ACK包都被发送端接收,记录标准ACK包和辅助ACK包的到达时间,并计算TDS和内部到达时间间隔,用于端到端可用带宽估计;
当发送端仅收到标准ACK包,未收到辅助ACK包,则不进行端到端可用带宽估计的采样,直接进入标准TCP协议的控制运作;
当发送端仅收到辅助ACK包,未收到标准ACK包,则不进行端到端可用带宽估计的采样,将辅助ACK包的信息用于标准TCP协议的控制运作;
当标准ACK包和辅助ACK包都未被发送端收到,则进入标准TCP协议的控制运作。
本发明的有益效果如下:
(1)将数据包对技术巧妙用于基于TCP的确认包(ACK)之中,用ACK包对代替包对技术中的探测包对,从而大大降低了带宽估计的开销,且有利于带宽估计的准确性。
(2)改进了样本选择策略,引入了时延和(TDS)的概念,选择TDS最小的样本进行可用带宽估计有利于降低背景流对估计结果的影响,从而保证了带宽估计的准确性。
(3)基于TCP,可以部署在绝大多数的应用中,完成实时带宽估计。更适合在执行应用的同时需要监测和实时调整发送速率的场景。
附图说明
图1是用于实施本发明所述的方法的系统结构示意图;
图2是本发明的方法中的TCP确认机制示意图;
图3是辅助ACK包的头部结构示意图;
图4是包探测间隔模型的示意图。
具体实施方式
以下结合附图及实施例对本发明进行进一步的详细说明。
本发明提供一种基于TCP确认包对的端到端可用带宽估计方法,接收端每收到发送端发送的数据包后,向发送端返回ACK包对;发送端接收ACK包对,并记录ACK包对内部到达时间间隔,计算端到端带宽其中,BW为端到端带宽,L为ACK包对的大小,ΔT为ACK包对内部到达时间间隔;利用ACK包探测间隔模型(Probe Gap Model,PGM模型)计算背景流速率BWback;则端到端可用带宽AW=BW-BWback。
对于K个ACK包对,第k个包对的TDS记为Sk,如果第i个包对Si=min{S1,S2,…,Sk,…,SK}(1≤i≤K),包对Si内部到达时间间隔记为ΔTi,可用公式计算端到端的带宽。
本实施例中,用于实施本发明所述的方法的系统结构如图1所示,一条从发送端到接收端的网络路径由L1,L2,…,Ln条链路和R1,R2,…,Rn个路由器组成,路由器有其它网络路径所产生的数据流量即背景流。发送端发送数据后,接收端对于每个成功接收的数据包回复一个ACK包对,经过n条链路之后,被发送端接收,第k个ACK包对内部到达时间间隔为ΔTk。
本发明所述的方法中的TCP确认机制如图2所示,接收端成功接收数据包后回复一个ACK包对给发送端,一个ACK包对包括两个ACK包,分别为标准ACK包和辅助ACK包。标准ACK包和辅助ACK包一起用于可用带宽估计。记两个ACK包到达发送端的单向时延之和为TDS(Time-delayed Sum),TDS=t1+t2,其中t1、t2分别为标准ACK包和辅助ACK包的单向时延。在发送端处理包对的过程中,将会记录每一个ACK包对的TDS。
为了区分标准ACK包与辅助ACK包,本发明将辅助ACK包的头部保留字段置全1,并且不携带任何数据,头部其它字段与标准ACK相同,辅助ACK包的头部结构如图3所示。
为了使本发明的结果更准确,则需要对样本进行筛选,在准确的样本上实现本发明。本发明的样本选择原理和方法为:在网络背景流的影响下,t1或t2会增大,导致TDS增大;TDS越小,说明该ACK包对受背景流影响就越小;在所有ACK包对记录中,选择TDS最小的样本记录进行端对端可用带宽估计。本发明的发送端接收ACK包对,并计算ACK包对中所有ACK包的单向时延之和TDS,选择TDS最小的样本作为端到端可用带宽估计的标准样本。
在包探测间隔模型中,如图4所示,已知一个探测数据包对发送的时间间隔设为Δin,当前探测数据包对到达接收端的时间间隔是Δout。在瓶颈处探测包对中的第一个探测数据包离开和第二个探测数据包到达之前的排队不为空,则Δout就是瓶颈处传输在Δin的时间内到达的背景流和第二个探测包所消耗的时间。由公式测得的瓶颈链路带宽为BW,假设背景流速率BWback,则
由上式可得背景流速率从而瓶颈链路的端到端可用带宽其中,Δin为包探测间隔模型中的探测数据包对发送的时间间隔设,Δout为当前探测数据包对到达接收端的时间间隔。
由于实际网络中丢包现象经常发生,本发明所述的方法也考虑到了包对的丢包现象,对ACK包对中的标准ACK包和辅助ACK包在发送端的四种接收情况分别作了相应的响应事件,具体如下:
(1)当标准ACK包和辅助ACK包都被发送端接收,记录标准ACK包和辅助ACK包的到达时间,并计算TDS和内部到达时间间隔,用于端到端可用带宽估计;
(2)当发送端仅收到标准ACK包,未收到辅助ACK包,则不进行端到端可用带宽估计的采样,直接进入标准TCP协议的控制运作;
(3)当发送端仅收到辅助ACK包,未收到标准ACK包,则不进行端到端可用带宽估计的采样,将辅助ACK包的信息用于标准TCP协议的控制运作;
(4)当标准ACK包和辅助ACK包都未被发送端收到,则进入标准TCP协议的控制运作。
上述实施例仅是用来说明本发明,而并非用作对本发明的限定。只要是依据本发明的技术实质,对上述实施例进行变化、变型等都将落在本发明的权利要求的范围内。
Claims (5)
1.一种基于TCP确认包对的端到端可用带宽估计方法,其特征在于,接收端每收到发送端发送的数据包后,向发送端返回ACK包对;发送端接收ACK包对,并记录ACK包对内部到达时间间隔,计算端到端带宽其中,BW为端到端带宽,L为ACK包对的大小,ΔT为ACK包对内部到达时间间隔;
利用ACK包探测间隔模型计算背景流速率BWback;则端到端可用带宽AW=BW-BWback。
2.根据权利要求1所述的基于TCP确认包对的端到端可用带宽估计方法,其特征在于,发送端接收ACK包对,并计算ACK包对中所有ACK包的单向时延之和TDS,选择TDS最小的样本作为端到端可用带宽估计的标准样本。
3.根据权利要求1所述的基于TCP确认包对的端到端可用带宽估计方法,其特征在于,在包探测间隔模型中,背景流速率则端到端可用带宽其中,Δin为包探测间隔模型中的探测数据包对发送的时间间隔设,Δout为当前探测数据包对到达接收端的时间间隔。
4.根据权利要求2所述的基于TCP确认包对的端到端可用带宽估计方法,其特征在于,ACK包对包括标准ACK包、辅助ACK包,其中,辅助ACK包的头部保留字段全置1,且不携带任何数据,头部其它字段与标准ACK包相同。
5.根据权利要求4所述的基于TCP确认包对的端到端可用带宽估计方法,其特征在于,
当标准ACK包和辅助ACK包都被发送端接收,记录标准ACK包和辅助ACK包的到达时间,并计算TDS和内部到达时间间隔,用于端到端可用带宽估计;
当发送端仅收到标准ACK包,未收到辅助ACK包,则不进行端到端可用带宽估计的采样,直接进入标准TCP协议的控制运作;
当发送端仅收到辅助ACK包,未收到标准ACK包,则不进行端到端可用带宽估计的采样,将辅助ACK包的信息用于标准TCP协议的控制运作;
当标准ACK包和辅助ACK包都未被发送端收到,则进入标准TCP协议的控制运作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510020431.9A CN104539486A (zh) | 2015-01-15 | 2015-01-15 | 一种基于tcp确认包对的端到端可用带宽估计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510020431.9A CN104539486A (zh) | 2015-01-15 | 2015-01-15 | 一种基于tcp确认包对的端到端可用带宽估计方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104539486A true CN104539486A (zh) | 2015-04-22 |
Family
ID=52854955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510020431.9A Pending CN104539486A (zh) | 2015-01-15 | 2015-01-15 | 一种基于tcp确认包对的端到端可用带宽估计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104539486A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106850294A (zh) * | 2017-01-24 | 2017-06-13 | 钟炎培 | 带宽估计的方法、装置和系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1545277A (zh) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | 一种端到端的网络瓶颈带宽测量方法 |
CN101110714A (zh) * | 2007-08-20 | 2008-01-23 | 电子科技大学 | 基于稳定采样序列的网络路径带宽测量方法 |
CN103825775A (zh) * | 2013-12-31 | 2014-05-28 | 广东工业大学 | 自适应探测包长的多跳无线网络可用带宽实时检测方法 |
-
2015
- 2015-01-15 CN CN201510020431.9A patent/CN104539486A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1545277A (zh) * | 2003-11-19 | 2004-11-10 | 北京邮电大学 | 一种端到端的网络瓶颈带宽测量方法 |
CN101110714A (zh) * | 2007-08-20 | 2008-01-23 | 电子科技大学 | 基于稳定采样序列的网络路径带宽测量方法 |
CN103825775A (zh) * | 2013-12-31 | 2014-05-28 | 广东工业大学 | 自适应探测包长的多跳无线网络可用带宽实时检测方法 |
Non-Patent Citations (1)
Title |
---|
袁鹏飞: "基于ACK包对的带宽估计算法研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106850294A (zh) * | 2017-01-24 | 2017-06-13 | 钟炎培 | 带宽估计的方法、装置和系统 |
CN106850294B (zh) * | 2017-01-24 | 2019-07-09 | 西安万像电子科技有限公司 | 带宽估计的方法、装置和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100442730C (zh) | 基于逐跳时间戳标签的网络链路带宽的测量方法 | |
CN101272290B (zh) | Ip网络中路径拥塞状态的测量方法和测量装置 | |
EP1382219B1 (en) | Method and device for robust real-time estimation of bottleneck bandwidth | |
CN101026509B (zh) | 一种端到端低可用带宽测量方法 | |
CN101414957B (zh) | 一种用于无线局域网的缓冲队列管理方法 | |
CN112054965B (zh) | 一种拥塞控制方法、设备及计算机可读介质 | |
CN102045219B (zh) | 一种高效的单端可用带宽测量方法 | |
CN103259696B (zh) | 网络带宽检测方法、装置及网络设备 | |
EP2760182B1 (en) | Data communication apparatus, data transmission method, and computer system | |
CN103916329B (zh) | 一种命名数据网络传输控制方法及系统 | |
CN105049369A (zh) | 异构无线网络中基于mptcp的视频传输拥塞控制方法 | |
CN103152285B (zh) | 本端网元、对端网元以及发送窗口调整方法 | |
US10181994B2 (en) | Probing a network | |
CN103974295B (zh) | 链路状态检测装置及其工作方法 | |
US20220224604A1 (en) | Mptcp incast performance evaluation model based on a queuing network | |
CN109787861B (zh) | 网络数据延迟控制方法 | |
CN104539486A (zh) | 一种基于tcp确认包对的端到端可用带宽估计方法 | |
EP2719104B1 (en) | Methods and apparatus for using a layered gear to analyze and manage real-time network quality of service transmission for mobile devices on public networks | |
CN102055628B (zh) | 基于单包列同时进行可用带宽测量与紧链路定位的方法 | |
CN114205867A (zh) | 一种数据包传输方法、装置、终端设备和存储介质 | |
CN112019443A (zh) | 多路径数据传输方法及装置 | |
CN116723133B (zh) | 数据发送、接收设备、网络状态信息提取方法及装置 | |
Pötsch | Future Mobile Transport Protocols | |
WO2016103674A1 (ja) | ストリーム受信装置、通信システム、ストリーム送信のタイミングを推定する方法および記録媒体 | |
CN106506434A (zh) | 业务数据传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150422 |
|
RJ01 | Rejection of invention patent application after publication |