CN100442730C - 基于逐跳时间戳标签的网络链路带宽的测量方法 - Google Patents

基于逐跳时间戳标签的网络链路带宽的测量方法 Download PDF

Info

Publication number
CN100442730C
CN100442730C CNB2007100991150A CN200710099115A CN100442730C CN 100442730 C CN100442730 C CN 100442730C CN B2007100991150 A CNB2007100991150 A CN B2007100991150A CN 200710099115 A CN200710099115 A CN 200710099115A CN 100442730 C CN100442730 C CN 100442730C
Authority
CN
China
Prior art keywords
test packet
message
test
bandwidth
load
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.)
Expired - Fee Related
Application number
CNB2007100991150A
Other languages
English (en)
Other versions
CN101051959A (zh
Inventor
崔毅东
金跃辉
焦利
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CNB2007100991150A priority Critical patent/CN100442730C/zh
Publication of CN101051959A publication Critical patent/CN101051959A/zh
Application granted granted Critical
Publication of CN100442730C publication Critical patent/CN100442730C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于逐跳时间戳标签的网络链路带宽的测量方法,它是先采用测试报文和负载报文组成测试报文队列,再由探测源端以背靠背方式向网络发送该测试报文队列,传输链路中的每个路由器将该报文队列经过各个路由器的当前时间戳分别记录在该队列的各个测试报文中,从而在探测目的端得到多个测量数据样本集合,最后通过带宽统计算法对测量数据样本集合进行滤波处理,得到网络链路的物理带宽。该方法能够克服现有测量技术的各种缺陷,只需发送一个测试报文队列,就可获得多个数据样本,使得测试过程中的测试报文数目显著减少,为后期的数据滤波处理提供了便利;并能提高带宽测量的精度,消除测量通路的不对称性对带宽测量的影响,并增强带宽测量的实时性。

Description

基于逐跳时间戳标签的网络链路带宽的测量方法
技术领域
本发明涉及一种网络链路的带宽测量方法,确切地说,涉及一种基于逐跳时间戳标签的网络链路带宽的测量方法,属于通信网络的时延测量技术领域。
背景技术
自从通信网络诞生以来,网络性能的测量分析一直是重要的研究方向,它对于人们了解网络行为、提高网络性能、改善服务质量都有着重要意义。同时,对各种底层协议和高层应用来说,了解网络通路上的端到端性能参数有助于实现诸如负载均衡、拥塞控制、QoS路由等服务质量保证目标。然而,随着网络复杂度的增加,精确的网络性能参数测量往往很难实现。网络带宽是表征网络信息传输能力的测度,也是反应网络服务质量的重要参数,在流量工程中起重要作用。如FTP、P2P、VoIP等大量数据交换应用都需要充足、稳定的网络带宽以保证QoS,而带宽测量技术可为QoS检测提供支持。
鉴于带宽测量在评价网络QoS方面具有重要意义,相关技术获得广泛、深入地研究。依据不同划分标准,可对带宽测量进行如下分类:(1)根据是否向网络内部注入探测包,可分为被动测量和主动测量。大多数带宽测量技术采用主动测量方式。(2)按照测量过程是否需要节点路由器的协作,带宽测量技术可分为逐跳的链路带宽测量和端到端的路径带宽测量。(3)按不同的测度,带宽测量可分为链路带宽(Link Capacity)、路径带宽(Path Capacity)和可用带宽(Available Bandwidth)三种测量技术。(4)从测量方法而言,有基于变包序列VPS(Variable Packet Size)的测量方法,基于包分散PTD(Packet TrainDispersion)的测量方法,基于自负载周期流SLoPS(Self-Loading Periodic Stream)的方法,基于网络流量模型的测量方法。
下面分别介绍与本发明相关的三种现有技术的特点和缺陷:
第一种现有技术是通过模拟TCP连接获得通路吞吐量BTC(Bulk TransferCapacity)。这种方法是从传输层的角度进行研究,基本思想是为测量建立一个TCP会话连接,通过该模拟的会话连接获得一些参数,再利用这些参数求出通路的可利用带宽。其隐含的思想是为测量而建立的这个连接必须和原有的背景流量100%占有链路全部带宽,同时在测量时还要求采用类似于TCP连接的拥塞控制算法;并且,为了能够达到TCP拥塞控制过程中的均衡速率(均衡速率是拥塞避免过程中的速率),端到端的会话时间必须达到10秒以上(因为建立稳定过程需要一定的时间),这样测量获得的参数才能真实地反映出可利用带宽的大小。但是实际上,因为基于这种方法进行的测量是与TCP层的协议密切相关,并且采用了拥塞控制算法,因而其获得的测量结果反映出的只能是TCP吞吐量,而非可利用带宽。基于这种思想的测量工具有两种:Treno和Cap。实际土,Treno是TCP用于测量的一个简单实现版本,它的单独提出是为了解决不同的TCP版本在测量中的兼容性问题。它可以同时给出两种测量结果:平均速率-整个数据传输过程中的平均速率,均衡速率-Treno在拥塞避免过程中的速率,或者说是一种理想速率,因为它不包括重传定时器溢出RTO(retransmissiontimer overflow)超时和慢启动过程。Cap与Treno类似,只不过在实现上存在一些差异。它的特点之一是要求在收发两端相互配合,这无疑又增加了实际使用起来的难度。
这种现有技术的缺点是:通过模拟TCP连接获得BTC的测量方法必然要消耗掉大量的带宽,如果使用不当,还可能造成网络过载,从而影响到用户业务的正常进行;因此该方法被称为“带宽杀手”。虽然一些实际测量验证了这些工具的准确度比较高,但是,这种测量方法对于带宽的巨大损耗致使其难以得到真正的应用,这也正是它的最大缺点所在。
第二种现有技术是基于变长包序列模型的带宽测量方法。这种模型最初用以测量逐跳的一些参数,其测量结果应为链路物理带宽。但基于这种模型的工具也可用于测量通路瓶颈带宽。其假设条件有:传输延迟和包大小成线性关系,背景流量只会增加包延迟,对于特定大小的多个包的观察值中,可以近似认为往返延迟RTT(Round Trip Time)值最小的包在链路中没有经历排队延迟,包转发时间可以忽略不计。测量方法是:源端先向目的端发送一列相同大小的n个测量包,这一过程重复k次,每次都取不同大小的测量包。目的端接收到后,返回相应的ack确认包,这些确认包返回源端后,计算收到的同样大小的n个包的RTT值,选择其中最小值,每种大小的包都是如此,再通过计算k个包大小的差值与对应的RTT差值,即可得到带宽。由于计算所取的数值都是差值,并且有假设条件,因而可以消除背景流量的影响。实际应用中可通过作图法得到结果,分别以包延迟和包大小为纵、横坐标描点,再用线性回归法作出一条直线,该直线斜率的倒数即为链路物理带宽。使用该方法的主要工具有pathchar,Clink,pchar,netimer等。
由于这种方法在计算时采用的是包大小的差值及最小RTT的差值,因而测量得到的结果不会受到背景流量的影响,因而也就决定了基于该原理的测量工具只能用于测量链路物理带宽而非可利用带宽。该方法具有如下局限性:
1.测量时间长,消耗的带宽较大。如对于一个平均往返时延为10ms、10跳的以太网,工具pathchar测量一次需要144秒,并需发送10Mb的测量数据。
2.基于VPS的测量工具大多使用ICMP Request包或UDP包进行测量,要求从各个节点得到及时的反馈信息。但网络中很多路由器和主机可能会赋予这两种类型的包较低的处理级别,甚至不予处理,这必然会导致测量结果的不准确。
3.网络中二层及以下的设备如交换机、网桥、中继器等存储转发节点,由于其一般没有IP地址,它们对于采用递减IP生存时间TTL(Time To Live)值进行测量的工具是不可见的“隐藏”节点,但实际上,包经过它们时会占用一定的处理时间,这也会导致测量结果的偏差。
4.该模型中采用的是双向延迟RTT,而非单向延迟OWD(One-Way Delay),由于双向链路一般不对称,但是在该模型中,通常是将双向链路视为对称链路进行处理的,这也会导致测量结果的偏差。
5.该方法存在测量上限,通路最大传输单元MTU(Maximum TransportUnit)和端系统能够提供的时间粒度决定了其能够测得的带宽上限,受目前软硬件技术所限,基于这种测量原理的工具不能够用于高速网络的测量。
第三种现有技术是基于包对模型的方法。1988年,V.Jacobson首先提出包对的概念。这一模型包括包对和包列两种子模型。由于两种子模型的假设条件和要求不同,它们可以测量的参数也不相同,包对用于测量通路瓶颈带宽,包列用于测量通路可利用带宽。其中包对模型的测量原理是:包对模型需要基于以下结论,即如果两个包在瓶颈链路处是前后紧跟着的,那么该两个包在以后的所有链路甚至反向链路上的时间间隔都是恒定的,这个时间间隔是由包大小和瓶颈链路处的带宽所决定的。通过这个时间间隔和包的大小,可以求出通路的带宽。主要工具:b/cprobe,pathrate,TOPP等。包列模型的测量原理是:需要已知通路瓶颈带宽,在此基础上,源端经由待测通路向目的端发送一列测量包,要求测量包的速率高至足以使其与背景流量在一定时间内100%地使用通路瓶颈带宽。源端记录下测量包列中第一个与最后一个返回的确认包的到达时间,采用一定的处理方法后,可以得出瓶颈链路处的背景流量,再间接求出可利用带宽的值。基于该原理提出的测量通路可利用带宽工具有Cprob。
包对法主要有以下缺点:1排队失败:测量包或许没有在瓶颈链路处排队。2.背景流量:会影响到包对中两包之间的间隔。3.包丢失:部分包可能会直接丢失,另一些包会在路由器溢出之后产生丢失,从而得到错误的结果。4.下游链路的拥塞:若两包在瓶颈链路之后的链路上再次排队,会引起两包间的时间间隔变化,从而使结果偏离真实值。5.多通道(Multi-channel)的测量精确度问题,比如一条通路由多个信道组成,由于一次测量中的包对只能经由一条信道传输,因而其测量结果只是单信道的瓶颈带宽,而非通路瓶颈带宽。
发明内容
有鉴于此,本发明的目的是提供一种基于逐跳时间标签的网络链路带宽的测量方法,该方法能够克服现有技术的各种缺陷,提高带宽测量的精度,消除测量通路的不对称性对带宽测量的影响,同时减少测量过程中产生的大量数据报文,并增强带宽测量的实时性。
为了达到上述目的,本发明提供了一种基于逐跳时间戳标签的网络链路带宽的测量方法,其特征在于:先采用测试报文和负载报文组成一种测试报文队列,再由探测源端以背靠背方式、即将所述测试报文队列中的所有测试报文采用连续不断、无时间间隔的方式通过网络接口卡向网络发送,传输链路中的每个路由器将该测试报文队列经过各个路由器的当前时间戳分别记录在该测试报文队列的各个测试报文中,从而在探测目的端得到多个测量数据样本集合,最后通过带宽统计算法对测量数据样本集合进行滤波处理,得到网络链路的物理带宽。
所述方法包括下列步骤:
(1)在测试源端,用带有时间戳选项的测试报文和负载报文组成测试报文队列;
(2)从测试源端以背靠背方式向目的端发送该测试报文队列;
(3)测试报文队列经过的每一跳路由器都将当前时间戳记录到该测试报文队列的各个测试报文中;
(4)目的端接收到测试报文队列,提取每个测试报文中的时间戳数据,获得测量数据样本集合;
(5)采用带宽统计算法对测量数据样本集合进行滤波处理,保留符合要求的数据,并丢弃不符合要求的数据,最后得到该网络链路的物理带宽。
所述时间戳选项是IP报文中的一个或多个标志位,当带有该标志位的IP报文经过网络上的路由器时,路由器会将当前时间写入该IP报文中;在互联网工程任务组IETF组织发布的请求注释RFC标准的第781号文档RFC781即为该时间戳选项的一个示例。
所述方法将测试报文队列设置为高优先级,以便尽量减少测试报文队列与背景流量之间的影响和减少测试报文的额外负载对网络的影响,同时提高测量效率。
所述测试报文队列包括两部分:分别位于报文队列头部与尾部、用于获得报文队列经过链路路由器时间的测试报文和位于报文队列中间、用于反映网络流量特性的负载报文,其组成结构为:Ptest={MH1,MH2,...MHN,LOAD,MT1,MT2,...,MTN},式中,自然数N是测试报文的序列号,MH1,MH2,---,MHN为N个测试报文组成的头部测试报文序列,MT1,MT2,---,MTN为N个测试报文组成的尾部测试报文序列,每个测试报文都设有时间戳选项,以供路由器将该报文经过该路由器的当前时间记录其中;LOAD为负载报文,负载报文队列的总字节长度至少是测试报文队列的总字节长度的10倍,且负载报文队列的总报文数目应该在100个以上;负载报文队列中,各种长度的报文所占负载报文总数的比例应符合当前互联网络流量的特征;比如负载报文列中40字节、552字节(或576字节)和1500字节的数据包分别占总数的50%、35%和15%。
所述测试报文为带有时间戳选项的传输控制协议TCP/用户数据包协议UDP报文或带有时间戳选项的互联网控制消息协议请求回显ICMP EchoRequest报文。
所述带宽统计算法的计算方法如下:
(51)分别获取测试报文队列中第k个头部测试报文Headk的时间戳序列 T Hk = { t 1 Hk , t 2 Hk , . . . , t M Hk } 和第k个尾部测试报文Tailk的时间戳序列 T Tk = { t 1 Tk , t 2 Tk , . . . t M Tk } , 其中,自然数k和M分别是测试报文的序列号和被测通路的链路数;
(52)计算字节总长度为Ltotol=Lenload+N×Lenmear的测试报文队列经过测试路径中每跳所花费的时间GM k G M k = T Tk - T Hk , 式中,Ltotol为所有测试报文和负载报文的总字节长度,Lenload为负载报文的总字节长度,Lenmear为单个测试报文的字节长度,该测试过程中因测试报文所引起的误差忽略不计,因为测试报文中记录时间戳所占用的字节长度远小于负载报文队列长度;
(53)计算第k个头部测试报文与尾部测试报文所探测到的通路中每跳链路的物理带宽bM k b M k = L totol G M k = len load + N × Len mear G M k ;
(54)按照上述方法,分别对N个测试报文逐一进行计算处理,获得每跳链路的物理带宽值的测量数据样本集合,再对该测量数据样本集合进行滤波处理,最终获得每跳链路的物理带宽。
所述对该测量数据样本集合进行处理的滤波技术是采用如下四种滤波技术中的任何一种:
A、直接求平均值:因互联网流量有随机性,该方法的估测误差大;
B、指数滤波器:Bk=Bk-i×α+(1-α)×bk,式中,Bk和Bk-1分别为滤波后的带宽,bk为带宽采样值,α是该计算公式中前后两项对滤波后所得结果的影响权值因子,α取值范围为0.3~0.8;该方法实现简单,但是当bk变化频率高时误差大;
C、基于核函数估计算法的滤波器:测量带宽为满足公式max{α·[d(x)/d(x)max]+β·p(x)+γ·r(x)}的x;式中,α,β和γ均为过滤函数系数,满足归一化条件α+β+γ=1;密度函数为 d ( x ) = 1 n Σ i = 1 n K ( x - x i c · x ) , K ( t ) = 1 + t , t ≤ 0 1 - t , t > 0 为核函数;该方法充分考虑造成误差的各种原因,能较好地滤除干扰带宽,但计算量大,收敛速度慢,不便于实时测量;
D、离散化低通滤波器: B k = α k B k - 1 + ( 1 + α k ) b k + b k - 1 2 , 式中,Bk和Bk-1分别为滤波后的带宽,bk和bk-1分别为带宽采样值,αk=(2τ-Δk)/(2τ+Δk),τ为滤波器的取样周期,Δk为时间差;该方法简单快速,能有效滤除突发的干扰流量和有效利用相邻测量结果的相关性,收敛速度快,计算量小。
本发明是一种使用包队列测量网络带宽的方法,即PTTSM(Packet TrainTime Stamp Method)方法。该方法先设计一种新的包队列,该包队列经过路由器的分离时间则通过该报文队列中的头尾部测试报文的时间戳获得,而不是通过传统的ACK报文得到。这样,该PTTS方法发送一个测试报文队列,就可获得多个数据样本,使得测试过程中的测试报文数目显著减少,为后期的数据处理滤波提供了便利。总之,本发明的有益效果包括下述内容:该方法的每个测试报文队列中带有多个测试报文,这样就可一次测量就获得多个测量数据样本,减少了测试报文队列的发送次数,有效地减少了测试报文数据流对背景业务的影响。本发明带宽测量是采用时间戳纪录测试报文经过链路的处理时间,要比现有技术的其他方法精度高。另外,这种采用逐跳纪录测试报文时间戳的方法,使得一个测试报文队列就可统计获得每跳带宽的一个测量数据样本,对于测量数据的批量处理有很好的帮助。最后,本发明测试时间的获取不是采用传统的ACK报文的返回时间,这样就能够有效减少反向路径对测试结果的影响。
附图说明
图1是本发明基于逐跳时间戳标签的网络链路带宽的测量方法流程方框图。
图2是本发明的测试报文队列的结构组成示意图。
图3是本发明一实施例-采用TCP/UDP数据包的网络测试系统的示意图。
图4是本发明另一实施例-采用ICMPcho报文的网络测试系统的示意图。。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细描述。
本发明是一种基于逐跳时间戳标签的网络链路带宽的测量方法,它是先采用测试报文和负载报文组成一种测试报文队列,再由探测源端以背靠背方式向网络发送该测试报文队列,该报文队列中的部分报文设有“时间戳选项”,每个路由器将该报文队列经过各个路由器的当前时间戳分别记录在该队列的各个测试报文中(参见RFC 781的规定),从而在探测目的端得到多个测量数据样本集合,最后通过带宽统计算法对测量数据样本集合进行滤波处理,得到网络链路的物理带宽。为了进一步减少测试报文队列与背景流量之间的影响,本发明的测试报文队列被设置为高优先级,这样可减少测试报文的额外负载对网络的影响,同时提高了测量效率。
参见图1,介绍该方法的操作步骤:
(1)在测试源端,用带有时间戳选项的测试报文和负载报文组成测试报文队列;
(2)从测试源端以背靠背方式向目的端发送该测试报文队列;
(3)测试报文队列经过的每一跳路由器都将当前时间戳记录到该测试报文队列的各个测试报文中;
(4)目的端接收到测试报文队列,提取每个测试报文中的时间戳数据,获得测量数据样本集合;
(5)采用带宽统计算法对测量数据样本集合进行滤波处理,保留符合要求的数据,并丢弃不符合要求的数据,最后得到该网络链路的物理带宽。
为了更好反映网络的真实情况,本发明方法中不是简单地发送相同长度的测试报文,而是发送测试报文队列。其结构组成如图2所示。该测试报文队列由测试报文和负载报文两部分组成,其中测试报文分别位于报文队列头部与尾部、用于获得该测试报文队列经过链路路由器的时间。负载报文位于测试报文队列中间、用于反映网络流量特性。其中负载报文列的总字节长度必须远远大于测试报文列的总字节长度(比如负载报文列的总字节长度是测试报文列的总字节长度的10倍或更多倍)。负载报文列的总报文数目应该足够多(比如100个以上)。根据相关研究机构的研究统计,在目前的IP网络流量中,各种长度的报文构成比例大致是:40字节的数据包约占50%,552字节(或576字节)的数据包约占35%,1500字节的数据包占15%。报文队列的顺序安排为:Ptest={MH1,MH2,...MHN,LOAD,MT1,MT2,...,MTN},式中,头部测试报文数目及尾部测试报文数目均为N,MH1,MH2,---,MHN为N个测试报文组成的头部测试报文序列,MT1,MT2,---,MTN为N个测试报文组成的尾部测试报文序列,每个测试报文都设有一个或多个标志位用作时间戳选项,以供路由器将该报文经过该路由器的当前时间记录其中(参见RFC 781“IP协议时间戳选项的规定”《ASPECIFICATION OF THE INTERNET PROTOCOL(IP)TIMESTAMPOPTION》)。
上述操作步骤(5)中的带宽统计算法的具体方法如下:
(51)分别获取测试报文队列中第k个头部测试报文Headk的时间戳序列 T Hk = { t 1 Hk , t 2 Hk , . . . , t M Hk } 和第k个尾部测试报文Tailk的时间戳序列 T Tk = { t 1 Tk , t 2 Tk , . . . , t M Tk } , 其中,自然数k和M分别是测试报文的序列号和被测通路的链路数;
(52)计算字节总长度为Ltotol=Lenload+N×Lenmear的测试报文队列经过测试路径中每跳所花费的时间GM k G M k = T Tk - T Hk , 式中,Ltotol为所有测试报文和负载报文的总字节长度,Lenload为负载报文的总字节长度,Lenmear为单个测试报文的字节长度,因为测试报文中记录时间戳所占用的字节长度远小于负载报文队列长度,故在该测试过程中因测试报文所引起的误差忽略不计。
(53)计算第k个头部测试报文与尾部测试报文所探测到的通路中每跳链路的可用带宽bM k b M k = L totol G M k = len load + N × Len mear G M k ;
(54)按照上述方法,分别对N个测试报文逐一进行如上的计算处理,获得每跳链路的物理带宽值的测量数据样本集合,再对该数据样本集合进行滤波处理,最终获得链路的物理带宽。
此时可采用的滤波技术如下:
A、直接求平均值:因为互联网流量有随机性,该方法的估测误差大;
B、指数滤波器:Bk=Bk-1×α+(1-α)×bk,式中,Bk和Bk-1分别为滤波后的带宽,bk为带宽采样值,α是该计算公式中前后两项对滤波后所得结果的影响权重,α取值范围为0.3~0.8;该指数滤波器方法实现简单,但是不能很好地筛选出频率高的带宽值;
C、基于核函数估计算法的滤波器:测量带宽为满足公式max{α·[d(x)/d(x)max]+β·p(x)+γ·r(x)}的x;式中,α,β和γ均为过滤函数系数,满足归一化条件α+β+γ=1;密度函数为 d ( x ) = 1 n Σ i = 1 n K ( x - x i c · x ) , K ( t ) = 1 + t , t ≤ 0 1 - t , t > 0 为核函数;该方法充分考虑造成误差的各种原因,能较好地滤除干扰带宽,但计算量大,收敛速度慢,不便于实时测量;
D、离散化低通滤波器: B k = α k B k - 1 + ( 1 + α k ) b k + b k - 1 2 , 式中,Bk和Bk-1分别为滤波后的带宽,bk和bk-1分别为带宽采样值,αk=(2τ-Δk)/(2τ+Δk),τ为滤波器的取样周期,Δk为时间差;该方法简单快速,能有效滤出突发的干扰流量和有效利用相邻测量结果的相关性,收敛速度快,计算量小。
综合比较上述各种滤波器算法,基于核密度估计算法的滤波器和离散化低通滤波器具有良好的过滤效果。因为本发明方法主要用于实时测量网络带宽,对于算法的运算量和收敛速度有特殊要求,所以建议采用离散化低通滤波器来消除测量的误差以及干扰流量的影响。
本发明已经进行了实施试验,试验的结果是成功的,实现了发明目的。下面简要说明实施例实验的情况。
第一个实施例的测试系统如图3所示,探测源端向探测目的端发送了本发明的测试报文队列,其中测试报文为带有时间戳扩展头的TCP/UDP报文,中途经过的每个路由器都将当前时间记录到测试报文的时间戳选项中的数据字段,再在探测目的端接收这些测试报文,并提取时间戳数据进行带宽统计算法的处理,得到各个链路Router1~Router2、链路Router2~Router3、...、链路RouterN-1~RouterN的链路物理带宽。
参见图4,介绍本发明的第二个实施例测试系统及其试验情况。这次实施例的探测目的端可以是支持IP协议的各种网络节点,包括路由器、计算机主机等。探测源端向探测目的端发送本发明的测试报文队列,其中测试报文为带有时间戳选项的ICMP Echo Request报文,中途经过的每个路由器都将时间戳记录到每个测试报文的时间戳中数据字段。测试报文到达探测目的端后,探测目的节点创建ICMP Echo报文,将原测试报文选项部分内容拷贝到ICMP Echo报文中,然后将该测试报文发送回探测源端,在探测目的端到探测源端的路径上,每个路由器都同样地将时间戳依序记录到各个测试报文中。探测源端收到测试报文后,提取时间戳扩展头中的数据,进行带宽统计算法的处理,得到各个链路Router1~Router2、链路Router2~Router3、...、链路RouterN-1~RouterN、链路RouterN~RouterN-1、...、链路Router2~Router1的链路物理带宽。该实施例的测量方式的好处是可以实现单端测量,即只需要在探测源端发送探测报文,并接收探测报文。

Claims (8)

1、一种基于逐跳时间戳标签的网络链路带宽的测量方法,其特征在于:先采用测试报文和负载报文组成一种测试报文队列,再由探测源端以背靠背方式、即将所述测试报文队列中的所有测试报文采用连续不断、无时间间隔的方式通过网络接口卡向网络发送,传输链路中的每个路由器将该测试报文队列经过各个路由器的当前时间戳分别记录在该测试报文队列的各个测试报文中,从而在探测目的端得到多个测量数据样本集合,最后通过带宽统计算法对测量数据样本集合进行滤波处理,得到网络链路的物理带宽。
2、根据权利要求1所述的测量方法,其特征在于,所述方法包括下列步骤:
(1)在测试源端,用带有时间戳选项的测试报文和负载报文组成测试报文队列;
(2)从测试源端以背靠背方式向目的端发送该测试报文队列;
(3)测试报文队列经过的每一跳路由器都将当前时间戳记录到该测试报文队列的各个测试报文中;
(4)目的端接收到测试报文队列,提取每个测试报文中的时间戳数据,获得测量数据样本集合;
(5)采用带宽统计算法对测量数据样本集合进行滤波处理,保留符合要求的数据,并丢弃不符合要求的数据,最后得到该网络链路的物理带宽。
3、根据权利要求1所述的测量方法,其特征在于:所述时间戳选项是IP报文中的一个或多个标志位,当带有该标志位的IP报文经过网络上的路由器时,路由器会将当前时间写入该IP报文中。
4、根据权利要求1所述的测量方法,其特征在于:所述方法将测试报文队列设置为高优先级,以便尽量减少测试报文队列与背景流量之间的影响和减少测试报文的额外负载对网络的影响,同时提高测量效率。
5、根据权利要求1所述的测量方法,其特征在于:所述测试报文队列包括两部分:分别位于报文队列头部与尾部、用于获得报文队列经过链路路由器时间的测试报文和位于报文队列中间、用于反映网络流量特性的负载报文,其组成结构为:Ptest{MH1,MH2,...MHN,LOAD,MT1,MT2,...,MTN},式中,自然数N是测试报文的序列号,MH1,MH2,...,MHN为N个测试报文组成的头部测试报文序列,MT1,MT2,---,MTN为N个测试报文组成的尾部测试报文序列,每个测试报文都设有时间戳选项,以供路由器将该报文经过该路由器的当前时间记录其中;LOAD为负载报文,负载报文队列的总字节长度至少是测试报文队列的总字节长度的10倍,且负载报文队列的总报文数目应该在100个以上;负载报文队列中,各种长度的报文所占负载报文总数的比例应符合当前互联网络流量的特征。
6、根据权利要求1或2或5所述的测量方法,其特征在于:所述测试报文为带有时间戳选项的传输控制协议TCP/用户数据包协议UDP报文或带有时间戳选项的互联网控制消息协议请求回显ICMP Echo Request报文。
7、根据权利要求2所述的测量方法,其特征在于:所述带宽统计算法的计算方法如下:
(51)分别获取测试报文队列中第k个头部测试报文Headk的时间戳序列 T Hk = { t 1 Hk , t 2 Hk , . . . , t M Hk } 和第k个尾部测试报文Tailk的时间戳序列 T Tk = { t 1 Tk , t 2 Tk , . . . , t M Tk } , 其中,自然数k和M分别是测试报文的序列号和被测通路的链路数;
(52)计算字节总长度为Ltotol=Lenload+N×Lenmear的测试报文队列经过测试路径中每跳所花费的时间GM k G M k = T Tk - T Hk , 式中,Ltotol为所有测试报文和负载报文的总字节长度,Lenload为负载报文的总字节长度,Lenmear为单个测试报文的字节长度,该测试过程中因测试报文所引起的误差忽略不计,因为测试报文中记录时间戳所占用的字节长度远小于负载报文队列长度;
(53)计算第k个头部测试报文与尾部测试报文所探测到的通路中每跳链路的物理带宽bM k b M k = L totol G M k = len load + N × Len mear G M k ;
(54)按照上述方法,分别对N个测试报文逐一进行计算处理,获得每跳链路的物理带宽值的测量数据样本集合,再对该测量数据样本集合进行滤波处理,最终获得每跳链路的物理带宽。
8、根据权利要求1所述的测量方法,其特征在于:所述对该测量数据样本集合进行处理的滤波技术是采用如下四种滤波技术中的任何一种:
A、直接求平均值;
B、指数滤波器:Bk=Bk-1×α(1-α)×bk,式中,Bk和Bk-1分别为滤波后的带宽,bk为带宽采样值,α是该计算公式中前后两项对滤波后所得结果的影响权值因子,α取值范围为0.3~0.8;
C、基于核函数估计算法的滤波器:测量带宽为满足公式max{α·[d(x)/d(x)max]+β·p(x)+γ·r(x)}的x;式中,α,β和γ均为过滤函数系数,满足归一化条件α+β+γ=1;密度函数为 d ( x ) = 1 n Σ i = 1 n K ( x - x i c · x ) , K ( t ) = 1 + t , t ≤ 0 1 - t , t > 0 为核函数;
D、离散化低通滤波器: B k = α k B k - 1 + ( 1 + α k ) b k + b k - 1 2 , 式中,Bk和Bk-1分别为滤波后的带宽,bk和bk-1分别为带宽采样值,αk=(2τ-Δk)/(2τ+Δk),τ为滤波器的取样周期,Δk为时间差。
CNB2007100991150A 2007-05-11 2007-05-11 基于逐跳时间戳标签的网络链路带宽的测量方法 Expired - Fee Related CN100442730C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2007100991150A CN100442730C (zh) 2007-05-11 2007-05-11 基于逐跳时间戳标签的网络链路带宽的测量方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2007100991150A CN100442730C (zh) 2007-05-11 2007-05-11 基于逐跳时间戳标签的网络链路带宽的测量方法

Publications (2)

Publication Number Publication Date
CN101051959A CN101051959A (zh) 2007-10-10
CN100442730C true CN100442730C (zh) 2008-12-10

Family

ID=38783165

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2007100991150A Expired - Fee Related CN100442730C (zh) 2007-05-11 2007-05-11 基于逐跳时间戳标签的网络链路带宽的测量方法

Country Status (1)

Country Link
CN (1) CN100442730C (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101217497B (zh) * 2008-01-18 2011-04-13 北京邮电大学 一种无线网状网络的路径选择方法
CN101729306B (zh) * 2008-10-28 2012-05-23 中兴通讯股份有限公司 一种测试宽带网络用户接入线路下行带宽的方法及其系统
CN102053217A (zh) * 2009-11-05 2011-05-11 上海华虹Nec电子有限公司 晶圆中断测试后再工事时快速处理的方法
CN102347933B (zh) * 2010-07-27 2014-05-14 财团法人交大思源基金会 录制、还原与重播网络流量的方法
CN101917339A (zh) * 2010-08-17 2010-12-15 建汉科技股份有限公司 网络设备的网络频宽上限统计及调整方法
CN103339909A (zh) * 2011-12-21 2013-10-02 华为技术有限公司 文件初始传输速率的确定方法、装置和系统
CN102710464B (zh) * 2012-06-06 2015-04-15 清华大学 基于参考延迟插入结构的细粒度单流级别延迟检测方法
CN102946335B (zh) * 2012-12-11 2015-12-23 广州中国科学院软件应用技术研究所 一种网络状况检测方法及系统
CN103391253B (zh) * 2013-08-05 2017-03-15 四川启程科技发展有限公司 网络拥塞的控制方法、装置及系统
CN105024875B (zh) * 2014-04-30 2018-06-19 中国电信股份有限公司 宽带分类用户的网络流速测量方法和系统
CN105591835B (zh) * 2015-08-12 2019-04-09 新华三技术有限公司 一种链路质量的检测方法和装置
CN106685565A (zh) * 2016-12-30 2017-05-17 国网浙江省电力公司绍兴供电公司 一种实现通信网络透明时钟传递的方法及系统
CN106850294B (zh) * 2017-01-24 2019-07-09 西安万像电子科技有限公司 带宽估计的方法、装置和系统
CN108512726B (zh) * 2018-03-29 2020-06-02 上海连尚网络科技有限公司 一种数据监控的方法及设备
WO2020042018A1 (zh) * 2018-08-29 2020-03-05 华为技术有限公司 一种检测带宽的方法及检测设备
CN109639684B (zh) * 2018-12-17 2021-11-09 北京微吼时代科技有限公司 动态应用带宽的方法及系统
CN110138590A (zh) * 2019-04-09 2019-08-16 上海交通大学 一种通用的tcp性能诊断方法及装置
CN111130923B (zh) * 2019-11-29 2021-07-09 北京达佳互联信息技术有限公司 网络带宽确定方法、装置、电子设备及存储介质
CN111162964B (zh) * 2019-12-17 2021-10-12 山东鲁软数字科技有限公司智慧能源分公司 一种智能站报文完整性分析方法及系统
CN112565100B (zh) * 2020-11-30 2022-05-20 中国人民解放军国防科技大学 一种主动和被动方式相结合的网络拥塞控制方法
CN112615764A (zh) * 2021-01-04 2021-04-06 重庆邮电大学 一种基于主被动相结合的空地宽带链路网络带宽测量方法
CN113032413A (zh) * 2021-03-10 2021-06-25 北京嘀嘀无限科技发展有限公司 数据采样方法、装置、电子设备、存储介质和程序产品
CN113852496B (zh) * 2021-09-13 2023-07-25 电子科技大学 一种可诊断紧链路位置的高精度网络带宽测量系统
CN114172830B (zh) * 2021-10-28 2023-12-12 阿里巴巴(中国)有限公司 网络时延检测方法、装置以及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518285A (zh) * 2003-01-16 2004-08-04 华为技术有限公司 一种实现流媒体服务的网络带宽检测方法
CN1630270A (zh) * 2003-12-15 2005-06-22 上海贝尔阿尔卡特股份有限公司 基于网络服务质量动态调整数据分组长度的方法
CN1759566A (zh) * 2003-03-19 2006-04-12 阿克特纳·伊波姆斯公司 评估数字链路带宽的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1518285A (zh) * 2003-01-16 2004-08-04 华为技术有限公司 一种实现流媒体服务的网络带宽检测方法
CN1759566A (zh) * 2003-03-19 2006-04-12 阿克特纳·伊波姆斯公司 评估数字链路带宽的方法
US20060209702A1 (en) * 2003-03-19 2006-09-21 Jean Schmitt Method for evaluating the bandwith of a digital link
CN1630270A (zh) * 2003-12-15 2005-06-22 上海贝尔阿尔卡特股份有限公司 基于网络服务质量动态调整数据分组长度的方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
新的基于逐跳时间标签的链路利用率测量方法. 崔毅东,林宇,徐雅静,徐惠民.北京邮电大学学报,第29卷第2期. 2006
新的基于逐跳时间标签的链路利用率测量方法. 崔毅东,林宇,徐雅静,徐惠民.北京邮电大学学报,第29卷第2期. 2006 *

Also Published As

Publication number Publication date
CN101051959A (zh) 2007-10-10

Similar Documents

Publication Publication Date Title
CN100442730C (zh) 基于逐跳时间戳标签的网络链路带宽的测量方法
CN101272290B (zh) Ip网络中路径拥塞状态的测量方法和测量装置
US7876687B2 (en) Method for measuring the available bandwidths of a link and a network
Jain et al. End-to-end available bandwidth: measurement methodology, dynamics, and relation with TCP throughput
Navratil et al. ABwE: A practical approach to available bandwidth estimation
US9246822B2 (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
US7558202B2 (en) Estimating available bandwidth with multiple overloading streams
US6996064B2 (en) System and method for determining network throughput speed and streaming utilization
Lao et al. The probe gap model can underestimate the available bandwidth of multihop paths
KR20200109326A (ko) 광대역 통신 링크 성능 모니터링을 위한 시스템 및 방법
US20050232227A1 (en) Method and apparatus for characterizing an end-to-end path of a packet-based network
US20070217343A1 (en) Estimation of time-varying latency based on network trace information
RU2695093C2 (ru) Способ для выполнения проверки пропускной способности связи от первой сетевой станции до второй сетевой станции в сети связи, соответствующие устройства для выполнения этапов способа и соответствующие компьютерные программы
CN101964727B (zh) 一种利用混合报文测量可用带宽的方法和装置
CN103152285B (zh) 本端网元、对端网元以及发送窗口调整方法
US10181994B2 (en) Probing a network
US20080137540A1 (en) Method And Apparatus For Analysing Traffic In A Network
EP3513529B1 (en) Performance measurement in a packet-switched communication network
Ishibashi et al. Active/passive combination-type performance measurement method using change-of-measure framework
KR100943728B1 (ko) Ip 패킷 헤더의 총길이 필드를 이용한 링크별 가용대역폭 측정 방법 및 링크의 가용 대역폭 정보 관리 방법
CN108494629B (zh) 一种用于owamp和twamp的发包装置及方法
WO2010063104A1 (en) Method and apparatus for measuring ip network performance characteristics
Jakimoski et al. Measurements of available bandwidth in computer networks
WO2012170968A1 (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
CN104539486A (zh) 一种基于tcp确认包对的端到端可用带宽估计方法

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081210

Termination date: 20120511