首页> 中国专利> 基于主动测量和包间隔模型的网络瓶颈带宽测量方法

基于主动测量和包间隔模型的网络瓶颈带宽测量方法

摘要

一种基于主动测量和包间隔模型的网络瓶颈带宽测量评估方法,是基于包对(Packet Pair)测量技术原理,利用TCP协议规定的三次握手交互协商方法对AllBest算法进行改进与优化。该方法采用数据包对模型向网络中的对端交替发送两种组合形式的数据包对,发送端根据从发送直至接收到对端返回的TCP响应报文的双向传输时间和包长,对该传输链路的瓶颈带宽进行测试和估算。本发明方法摆脱了ICMP响应报文过长、不能省略对端响应的反馈报文返回发送端的传输时延的缺陷,能够实现单端部署、快速测量传输链路的瓶颈带宽,从而有效提高网络测量的实用性和准确性。

著录项

  • 公开/公告号CN104717108A

    专利类型发明专利

  • 公开/公告日2015-06-17

    原文格式PDF

  • 申请/专利权人 北京邮电大学;

    申请/专利号CN201510144282.7

  • 申请日2015-03-30

  • 分类号H04L12/26(20060101);

  • 代理机构11018 北京德琦知识产权代理有限公司;

  • 代理人夏宪富

  • 地址 100876 北京市海淀区西土城路10号

  • 入库时间 2023-12-18 09:33:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-04-06

    授权

    授权

  • 2015-07-15

    实质审查的生效 IPC(主分类):H04L12/26 申请日:20150330

    实质审查的生效

  • 2015-06-17

    公开

    公开

说明书

技术领域

本发明涉及一种用于网络测量的瓶颈带宽的检测评估方法,确切地说,涉 及一种基于主动测量和包间隔模型的网络瓶颈带宽测量方法,属于通信网络的 带宽测量技术领域。

背景技术

近年来,随着网络技术的迅速发展和广泛应用,互联网已经深入到人类日 常生活、生产、办公、乃至娱乐和消费的许许多多的领域。从刚开始兴起时的 互联网传输技术只有几K的带宽,到现在普遍达到10Mbps、甚至超过100Mbps 的带宽,互联网的传输带宽容量大小也随着网络技术的快速进步而成倍地增长。 由于传输带宽与用户体验有着不可分割的紧密联系,更大的带宽可以提供更快 的下载或上传速度,保证文本、音频、视频等不同格式的数据传输速度。因此, 如何测量评估带宽的各项相关指标的是人们非常重视和关注的。而且,因为网 络工作环境分为两种:有线传输和无线传输,它们两者的带宽指标的测评方法 因其物理传输机制上的区别又有者显著的不同。

例如,在流媒体应用中,服务器端可以根据瓶颈带宽的情况,实时动态调 整数据流的发送速率,以提高应用的服务质量。此时的带宽测量通常是以主动 测量方式为主:通过向网络中发送探针(数据包)来探测网络传输路径上的带 宽特性,且具体测量方式又可分为两类:包间隔模型PGM(Probe Gap Model) 和包速率模型PRM(Probe Rate Model)。其中,PGM模型是通过分析两个相邻 数据包先后到达接收端时的两者时间间隔来测量带宽。基于PGM的带宽测量 算法通常都是往被测网络中注入一些以探测网络性能为目的的探测包,再对这 些相邻探测包进入网络时的时间间隔与其离开网络时的时间间隔之间的关系进 行分析来了解带宽情况,常常用来测量瓶颈带宽参数。由于瓶颈带宽是当一条 传输路径中没有其它背景流量时,网络能够提供的最大吞吐量。因此,瓶颈带 宽的测量方法尤显重要。典型的PGM类带宽测量算法有初始间隔递增IGI (Initial Gap Increasing)算法和Delphi算法。

然而,现在使用的上述带宽算法都是用于有线网络。随着无线接入技术的 快速发展,出现了大量针对无线网络的可用带宽算法的研究,例如Wbest、 EXACT、ProbeGap、IdleGap、DietTOPP等等。但是,上述这些算法都没有很 好地解决无线信道的动态传输速率适配问题。其中的Wbest算法是目前公认为 性能较好、适用于最后一跳是无线接入网络的可用带宽测量算法,该Wbest算 法也是首先利用包对(Packet Pair)、即向对端发送背靠背的两个探测包来测量 传输路径带宽的技术,然后通过发送相应速率的包列(Packet Train)、即向对端 发送一连串背靠背的探测包来估算传输路径的吞吐量,并以此推算路径的可用 带宽。实验已经验证:在无线网络中,Wbest算法要比包括IGI、pathload和 pathChirp等多种测评方法的性能更好。但是,如同上述其他测量方法一样, Wbest算法也需要探针的发送端和接收端相互配合,才能得到相应的带宽参数。

Allbest算法首次尝试使用双向测量、但其只部署在传输路径的一端进行测 评的方式,能够同时测得部署点的上行路径的瓶颈带宽与可用带宽。该Allbest 算法的核心思路是:发送端向网络对端不可达的端口发送字长为MTU (Maximum Transmission Unit)的用户数据报协议UDP(User Datagram  Protocol)报文后,网络对端接收到该UDP报文后,会给发送端返回该端口不 可达的因特网控制报文协议ICMP(Internet Control Message Protocol)差错报文。 由于该响应的差错报文只有56个字节,其在返回发送端的反向路径上的传输时 延可以忽略不计。

Allbest算法特点是:单端部署方式非常灵活、便利,且因只在单端部署, 可大大减少服务提供商检测网络环境时的硬件投资与部署成本,同时还具有非 入侵式、测量时间短、不需提前了解链路层的网络环境、测量结果的数据足够 精确等许多优点。

但是,IETF在2007年的RFC4884标准中,对ICMP端口不可达的差错报 文格式进行了扩展,即报文大小可变。而且,目前绝大多数的操作系统的协议 栈都实现了这种新标准机制,针对一个发送给网络对端目标主机的字长为MTU 的端口不可达的UDP包,该目标主机作为响应的ICMP端口不可达的数据差错 报文字长可达到几百个字节,这样,原来的Allbest算法实现原理和应用背景: 其在返回发送端的反向路径上的传输时延可以忽略不计的特点就不再成立,也 就无法按照原来的操作步骤继续使用Allbest算法了。

发明内容

有鉴于此,本发明的目的是提供一种可在单端部署的、基于主动测量和包 间隔模型的网络瓶颈带宽测量评估方法,本发明方法是基于包间隔模型,利用 TCP的握手机制对AllBest算法进行改进与优化,从而摆脱了现在的ICMP响应 报文过长的缺陷,能够实现单端部署、快速测量测定瓶颈带宽,从而有效提高 网络测量的实用性和准确性。

为了达到上述目的,本发明提供了一种基于主动测量和包间隔模型的网络 瓶颈带宽测量评估方法,其特征在于:基于包对(Packet Pair)测量技术原理, 利用传输控制协议TCP(Transmission Control Protocol)规定的三次握手交互协 商方法,以及采用数据包对模型向网络中的对端交替发送两种组合形式的数据 包对,发送端根据从发送到接收对端返回的TCP响应报文的双向传输时间和包 长,对该传输链路的瓶颈带宽进行估算;所述方法包括下述各个操作步骤:

步骤1,设置四个参数Ci、N、和并相应配置其初始化数值:

首先设置用于存储每次测试后得到的瓶颈带宽估算值Ci的集合C: C={Ci|i=1,2,...,N},式中,自然数下标i为测量次数的序号,其最大值、即循环 测试瓶颈带宽的总次数为2N;同时配置该集合C中的各个元素Ci的初始化数值 都为0,以供在每次测试后,将测试得到的瓶颈带宽估算值Ci存储于相应位置;

再设置发送端首先发送每组包对中的第一个数据包、即大小为1MTU、且 字段同步SYN=1、复位RST=0、响应ACK=0的TCP包,从发送端发送直至接收 到对端反馈信息的双向传输时间其中,上标i为发送次数、即测量次数的 序号,其最大值为N;下标1表示其为每组包对中的第一个包、称之为“小包”;

最后设置在发送每组包对中的第一个小包后、再背对背地连续发送两个大 小均为1MTU的TCP包时,从发送端发送直到接收到对端反馈信息的双向传输时 间其中,此时第一个发送的TCP包的字段SYN=0、RST=1、ACK=0,第 二个发送的TCP包的字段SYN=1、RST=0、ACK=0;上标i为发送次数、即测量 次数的序号,其最大值为N;下标2表示其为每组包对中的第二个包、称之为由 背对背的两个包所组成的“大包”;

步骤2,向待测端发送每组包对中的第一个“小包”,并等待对端返回反馈 报文,再记录每次从发送到接收到反馈报文的双向传输时间

步骤3,接着向待测端发送每组包对中的第二个“大包”,并等待对端返回 反馈报文,再记录每次从发送到接收到反馈报文的双向传输时间

步骤4,按照设定的测试次数N,多次返回和交替执行步骤2与步骤3,并 根据测试结果,计算每次测量的传输链路瓶颈带宽估算值式中, 是步骤2发送的第i组包对中的第一个小包的双向传输时间,是步骤 3发送的第i组包对中的大包内的第二个包的双向传输时间,L是发送的数据包 的包长,即1MTU的字长;

步骤5,从多次测量结果、即瓶颈带宽估算值Ci的集合C中,选取其中位 值(median)作为最终测量结果的瓶颈带宽值

本发明基于主动测量和包间隔模型的网络瓶颈带宽测量方法是一种利用 TCP(Transmission Control Protocol)协议的三次握手交互机制,并在单端采用 数据包对模型向网络中的对端发送测试数据包对,发送端根据从发送到接收到 对端返回的TCP响应报文的传输时间来测评和估算传输链路的瓶颈带宽。

本发明是对AllBest算法的改进与优化,其主要特点是摆脱了ICMP响应报 文过长的缺陷,局限性小、可部署性强:只需要在单端部署带宽测量装置,就 能够快速测量端到端之间的瓶颈带宽,既有效降低了网络测量中部署硬件成本 较高、测试人员较多等问题,有利于广泛部署、推广和应用;还有效提高网络 测量的实用性和准确性。另外,相比于Wbest等主流测量方法,本发明测量方 法的优势之一是单端部署,可以大大降低部署的经济成本和时间成本、提高灵 活性。优势之二是较低的侵入性,可以保证在不影响网络现有状况的前提下, 完成瓶颈带宽的测量。以上两点优势极大地提高了本发明瓶颈带宽测量方法的 实用性与可行性。而且,本发明适用于有线与无线两种网络环境,是一种低成 本、有效的轻量级瓶颈带宽测量算法,具有很好的推广应用前景。

附图说明

图1是1个MTU字长的SYN数据包在网络中传输过程的示意图:首先 通过有线媒介到达路由器,再由路由器转发到对端。对端接收到该SYN报 文后,将反馈报文发回到源地址。其传输路径消耗的全部时间为RTT1

图2是两个背靠背的测试数据报文在网络中传输过程的示意图:首先发 送RST报文,接着发送SYN报文。对端接收到SYN报文后,再将反馈报 文发回到源地址。其传输路径消耗的全部时间为RTT2

图3是本发明基于主动测量和包间隔模型的网络瓶颈带宽测量方法操作 步骤流程图。

图4是本发明实施例的实验环境示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚,下面结合附图和实施例对 本发明作进一步的详细描述。

本发明是一种基于主动测量和包间隔模型的网络瓶颈带宽测量评估方法, 该方法基于包对(Packet Pair)测量技术原理,利用TCP(Transmission Control  Protocol)协议规定的三次握手交互协商方法,以及采用数据包对模型向网络中 的对端交替发送两种组合形式的数据包对,发送端根据从发送直至接收到对端 返回的TCP响应报文的双向传输时间和包长,对该传输链路的瓶颈带宽进行测 评与估算。

本发明方法采用的基于包对(Packet Pair)测量技术原理是:向网络中多次 发送两个背对背的包,在网络传输过程中,该两个背对背的包都会被分散传输。 此时,在接收端分别测量每次接收该两个包的传输间隔时间Di和包长Li,就能 够计算该传输链路的瓶颈带宽所以要多次发送两个背对背的包的目的 是减少误差和提高测量精度。

参见图3,介绍本发明方法的下述各个操作步骤:

步骤1,设置四个参数Ci、N、和并相应配置其初始化数值:

首先设置用于存储每次测试后得到的瓶颈带宽估算值Ci的集合C: C={Ci|i=1,2,...,N},式中,自然数下标i为测量次数的序号,其最大值、即循环 测试瓶颈带宽的总次数为2N;同时配置该集合C中的各个元素Ci的初始化数值 都为0,以供在每次测试后,将测试得到的瓶颈带宽估算值Ci存储于相应位置。

再设置发送端首先发送每组包对中的第一个数据包、即大小为1MTU、且 字段同步SYN=1、复位RST=0、响应ACK=0的TCP包,从发送端发送直至接收 到对端反馈信息的双向传输时间(参见图1);其中,上标i为发送次数、即 测量次数的序号,其最大值为N;下标1表示其为每组包对中的第一个包、称之 为“小包”。

最后设置在发送每组包对中的第一个小包后、再背对背地连续发送两个大 小均为1MTU的TCP包时,从发送端发送直到接收到对端反馈信息的双向传输时 间(参见图2),其中,此时第一个发送的TCP包的字段SYN=0、RST=1、 ACK=0,第二个发送的TCP包的字段SYN=1、RST=0、ACK=0;上标i为发送次 数、即测量次数的序号,其最大值为N;下标2表示其为每组包对中的第二个包、 称之为由背对背的两个包所组成的“大包”。

步骤2,向待测端发送每组包对中的第一个“小包”,并等待对端返回反馈 报文,再记录每次从发送到接收到反馈报文的双向传输时间

步骤3,接着向待测端发送每组包对中的第二个“大包”,并等待对端返回 反馈报文,再记录每次从发送到接收到反馈报文的双向传输时间

本发明方法中的步骤2与步骤3分别发送的小包和大包,构成第一组包对: 而在步骤3发送的大包中的两个测试包,又构成大包内的第二组包对。

为了改善和优化本发明方法的整个操作流程,在上述步骤2和步骤3中, 发送端都是将MTU大小的TCP SYN数据包发送到对方未启用的端口,对端自 动回复TCP RST/ACK数据包,且因该ACK数据包的字长小,故忽略不计其从 对端返回发送端的路径上的传输时间。

为避免无线传输过程中,每组包对中背靠背先后发送的两个包的反馈包发 生冲撞,并保证第二个包被对端响应和发送端能够得到用于计算瓶颈带宽估算 值C的RTT2,发送的每组包对中的单包大小都是字长为MTU的数据包:且每 组包对中的第一个包是TCP RST包,TCP RST包在到达对端时不会被回复;第 二个包是TCP SYN包,TCP SYN包到达对端时,都将被回复一个小包。这样 就可以避免包对的第二个包与第一个包的响应包发生冲突,同时可以保证第二 个包被对端响应,以便能够得到能够用于正确计算带宽的RTT2

步骤4,按照设定的测试次数N,多次返回和交替执行步骤2与步骤3,并 根据测试结果,计算每次测量的传输链路瓶颈带宽估算值式中, 是步骤2发送的第i组包对中的第一个小包的双向传输时间,是步骤 3发送的第i组包对中的大包内的第二个包的双向传输时间,L是发送的数据包 的包长,即1MTU的字长。该步骤4包括下列操作内容:

(41)多次返回和交替执行步骤2与步骤3,并根据该多次执行步骤2和 步骤3所得到的多个与并在每次测量后,分别计算并记录本次测试 得到的传输链路瓶颈带宽的估算值

(42)将每次测量得到的传输链路的瓶颈带宽估算值Ci存储于集合C中。

(43)分别判断已经执行的步骤2和步骤3的各自测量总次数i是否小于N, 若是,即i<N,则设置i=i+1后,返回执行步骤2;若否,即当步骤2与步骤3 各自的测量总次数同时达到i=N时,则执行后续步骤5。

步骤5,从多次测量结果、即瓶颈带宽估算值Ci的集合C中,选取其中位 值(median)作为最终测量结果的瓶颈带宽值

本发明已经进行了多次实施试验,下面参见图4,介绍本发明实施例的测 试实验环境:RT-WABest Server为使用本发明方法的瓶颈带宽测试计算机, Traffic generator为部署流量发生器的测试计算机,Access Point为无线路由, Client A与B是两台连接无线路由的测试计算机。这四台测试计算机都是运行 Linux操作系统,但具体配置哪一种操作系统并不影响本发明测量方法的实现。 另外,Crossing traffic是与发包同方向的背景流量,Contending traffic是与测试 过程中发送的测试包相互竞争的背景流量。

实施例的具体试验方式如下:

(1)首先按照图4搭建实验环境,要求实验环境中的流量完全可控。

(2)运行本发明测试方法的操作流程:在环境中完全没有背景流量时,测 试从RT-WABest Server到Client A端的传输链路的瓶颈带宽,执行测试多次, 并记录瓶颈带宽的测试结果数据。

(3)使用Traffic generator产生背景流量,然后执行本发明测试方法的操 作流程:在网络环境中有Crossing traffic与Contending traffic时,多次测试从 RT-WABest Server到Client A端的传输链路的瓶颈带宽的数值。

多次执行上述操作步骤后,就可以根据不同情况下记录的瓶颈带宽数值大 小来判断本发明测量方法的准确性。

下表是部分测试结果数值,其中,Ground Truth为真实的瓶颈带宽数值:

从上述测试结果数据可以获知:本发明测量方法在各种网络状况下,进行 测量得到的结果数据均在可接受的误差范围内。当背景流量过大时,RT-WABest 使用本发明测量方法得到的测量结果数值会发生相应波动,对于WBest或其他 测量方法也均有类似的情况发生,因此,本发明测量方法得到的测试结果数据 的准确性并不比其他测量方法的精度差。

总之,本发明瓶颈带宽测量方法的实施例试验是成功的,实现了发明目的, 具有很好的实用性与可行性。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号