带宽测量

2024-10-22

带宽测量(精选4篇)

带宽测量 篇1

引言

面对电信业由语音业务向数据业务进行战略性转变, 各运营商纷纷进行IP数据网络的建设。但是现有的IP网络在网络承载和业务运营上还存有不足, 各运营商对现有IP网是否能够承载各种电信级业务仍存有疑虑。主要表现在:

1) 运营商对于IP网络接入层、骨干层链路的通信质量和状况缺乏评估的手段。

2) 运营商对客户尤其是大客户的服务等级缺乏评估、保障和维护手段。

3) 运营商对IP承载网是否满足一些新业务的需求缺乏评估手段。

另外, 监管部门对IP网间互联互通链路的通信质量也缺乏监管手段。

根据IETF的RFC2330的建议, IP网络性能指标如下:

IP连接性:即IP网络的可用性

I P包传输时延:包括单向时延、双向时延

IP包丢失率:包括单向丢包率和双向丢包率

IP包时延变化:即最大时延和最小时延的差值

流量参数:即可用带宽

目前, 现有的IP网络性能测试仪表和I P网络性能测试系统大多实现了双向时延、单/双向丢包率、时延变化的测量。但支持可用带宽测量的设备很少, 本文主要阐述可用带宽的测量方法。

1. 可用带宽的测量简介

带宽是指一条通信链路的最大分组发送速率。可用带宽是用户可以享受到的IP层带宽, 是应用性能的决定性因素。精确的测量网络的带宽不但可以帮助维护人员了解整个网络的状态、及时发现网络的瓶颈所在, 更好的避免拥塞的发生, 实现更好的拥塞控制策略。

目前的带宽测量技术归类为两种:单数据包技术和数据包对技术。单数据包技术通常也称为可变大小数据包技术, 因为它向网络发送大小变化的探测数据包并统计达到目的端的时延来测试网络的带宽;数据包对技术利用数据包在传输过程中所形成的时间间隔来测试带宽。

2. 单数据包技术

单数据包技术通过向网络发送大小变化的探测数据包并统计达到目的端的时延来测试网络的带宽。网络的时延由传播时延、发送时延、排队时延三部分组成。其基本原理是如果一个大小已知的数据包经过一条链路的时间已知, 则该链路的带宽就可以计算出来。计算必须考虑链路的传播时延, 对于一定的传输媒介, 传播时延是固定的。在不考虑网络的排队时延的情况下, 传输时间 (t) 由数据包的大小 (p) , 链路的带宽 (b) 还有一个固定的传播时延 (l) 决定:

测试时, 发送多个不同大小的数据包, 当这些数据包在该链路的传输时间被测到后, 通过上述公式可以得出链路的带宽b。这些值都存在着干扰, 可以采用滤波的方法可以过滤出最接近于实际带宽值的数据。

3. 数据包对技术

数据包对技术利用数据包在传输过程中所形成的时间间隔来测试带宽。数据包对技术所测试的是链路的瓶颈带宽或是可用带宽, 而不是单个数据包技术所测得的链路的容量。数据包对技术基本方法可以用下图来说明:

图中链路L2是链路中的瓶颈。在没有干扰的情况下, 由于L3带宽大于L2, 因此两个数据包在经过L2、L3之间的节点处会形成时间间隔t。这个间隔时间等于L2链路末端的节点在接收完第一个数据包之后, 用在接收第二个数据包上的时间。这个值也实际上就等于第二个包的发送时延。发送时延与数据包大小成正比和链路的带宽成反比:

从上述分析可以看出, 数据包对技术需要解决两个问题:传输时延t的测量和干扰流量导致测得的传输时延t的偏差。传输时延t的测量可以通过基于测得数据的时间同步技术解决。干扰流量的影响可以通过如下的测量方法加以解决:

4. 结束语

通过本文介绍的几项关键技术, 可以解决IP网络单向时延、可用带宽的精确测量问题, 并为IP网络的拥塞分析提供了一种实际可行的分析手段。

摘要:本文重点阐释了IP网络性能测试的重要性, 并对IP网络性能测试的主要指标、关键技术进行阐释。

关键词:IP网络性能测试,主要指标,关键技术

参考文献

[1]ETF.RFC2330

[2]专利.申请号200510075342.0

[3]专利.申请号200510130143.5

[4]张蓉, 李健.高速网络环境下的网络带宽测试.www.net130.com

工业以太网非实时通信带宽的测量 篇2

关键词:调度,非实时带宽,瓶颈带宽

工业以太网EPA (Ethernet for Plant Automation) 为了满足通信的确定性, 采用的措施之一就是对处于同一微网段的设备通信进行确定性调度, 将网络中传输的数据分为实时数据和非实时数据, 即周期信息和非周期信息, 所有EPA设备的通信均按周期进行[1]。不同的应用需求对控制网络中这两类数据传输的带宽有不同的要求, 由此在工业以太网实时性性能测试标准中引入了非实时通信带宽这个测试指标。

工业以太网非实时通信带宽的测量, 就是看实际的测量结果是否满足某一应用对控制网络的需求, 同时它可以帮助网络管理人员了解整个网络的状态, 及时发现网络的瓶颈所在, 更重要的是可以给网络设计人员, 特别是网络协议的开发人员提供指导。带宽测量分为链路带宽测量、瓶颈带宽测量和剩余带宽测量[2], 这里的带宽测量属于瓶颈带宽测量。许多网络协议和应用需要知道瓶颈带宽以判断协议和应用的效率。

1 工业以太网的确定性和实时性

1.1 通信确定性与实时性

以太网由于采用CSMA/CD (载波侦听多路访问/冲突检测) 介质访问控制机制, 因此具有通信“不确定性”的特点, 不能满足工业应用中通信的实时性, 成为其应用于工业数据通信网络的主要障碍[3]。EPA是实时以太网的一种, 是应用于工业现场设备间通信的开放网络技术, 采用分段化系统结构和确定性通信调度控制策略, 能够适应工业现场特殊需要, 解决了以太网通信的不确定性的问题, 满足了系统的实时性要求。

1.2 确定性调度及时间同步

EPA系统中通讯调度规程处于协议栈链路层, 该规程规定在一个EPA子网段内, 所有EPA设备的时间均应同步, EPA设备的通信均按周期进行, 完成一个通信周期所需的时间T称为一个通信宏周期[4]。一个通信宏周期T分为2个阶段, 其中第1个阶段为周期报文传输阶段Tp, 第2个阶段为非周期报文传输阶段Tn, 如图1所示。

在周期报文传输阶段Tp, 每个EPA设备向网络上发送的报文是包含周期数据的报文。如需要按控制回路的控制周期传输的测量值、控制值或功能块输入、输出之间需要按周期更新数据。在非周期报文传输阶段Tn, 每个EPA设备向网络上发送的报文是包含非周期数据的报文。如程序的上下载数据、变量读写数据、事件通知、趋势报告等数据, 以及诸如ARP、RARP、HTTP、FTP、TFTP、ICMP、IGMP等应用数据。通过划分周期和非周期传输阶段, 网络保证了重要的实时数据有充足的时间进行发送。

1.3 调度组态

EPA组态软件是应用于EPA分布式控制网络的监控软件, 组态软件在自动监控系统中起着重要的作用[5]。EPA组态软件可以对参与调度的设备的相关参数进行设置, 也即设置总的通信宏周期、非实时通信时间和某一设备的周期发包起始时刻及相应的时间片。

2 非实时通信带宽的测试方法

2.1 非实时通信带宽

非实时通信带宽 (Non-RTE bandwidth) :指一条链路上, 能够用于传输非实时信息的带宽占总的带宽的百分比, 测试是需要给出总的链路带宽[6]。

根据前面对工业以太网通信确定性和实时性的介绍可知, 用于传输非实时信息的带宽占总的带宽的百分比即等于用于传输非实时数据的时间占总的数据传输时间的比值。而整个工业以太网的数据通信是按固定的通信周期T来进行的, 在一个周期内非周期数据通信的时间为Tn, 则非实时通信带宽B

B=ΤnΤ (1)

但测量中真正要解决的问题是总的带宽的测量, 也就是定义中提到的那个总的链路带宽。至于比值可以从组态软件中直接读出, 也可以测量得到, 但考虑到当以时间片的形式来组态设备时这一值不可精确测量, 故以从组态软件中读出这一值为依据。非实时通信带宽的测量就以链路的瓶颈带宽和组态软件设置好的时间比值为主要参考, 一般习惯把百分比的形式换算成实际的带宽值的形式, 便于分析比较。

2.2 非实时通信带宽的测量方法

结合实际的技术条件和测试对象, 提出了一种改进了的网络带宽测试算法。这种算法简单易行, 避免了繁琐算法难以实施以及测试工具和条件要求苛刻的缺陷, 用到的测试方法是基于包组或包群的测试方法。

这种基于包群的测试方法所利用的工具仅仅需要两台PC机以及一个高效的网络数据开发包, 基本原理就是向网络上某一条链路在一段连续的时间内注入达到网卡线速的流量, 以完全占据一条链路, 排除干扰流量的影响。然后在这一股流量中除掉最开始和结尾的部分, 在中间位置在利用连续接收到n个大小为p的数据包的时间差Δt求解网络上一条链路的瓶颈带宽b

Δt=n×pb (2)

这种方法的可行之处在于工业以太网中的设备为嵌入式的, 考虑到其上运行的操作系统及协议栈, 其发包能力原不如PC。实际测量中PC上用的网络数据开发包为Winpcap, 由于和操作系统核心和网卡驱动结合紧密, 在小一段时间内 (1 ms以内) , 利用其缓存发包机制, 可以不受操作系统调度影响, 使网卡的发包速率达到极限。测量中之所以用到n个数据包而不是2个主要是考虑到测量工具开发包WinPcap自身在打印时间戳上会存在误差。

3 非实时通信带宽的测量实现

3.1 测量模型

本测试采用主动测量的方式, 控制台PC向测试代理PC发送包含测试开始、参数设置和终止信息的报文, 测试代理PC根据收到报文的不同而执行不同的操作。整个测试流程由控制台PC控制, 它同时负责测设代理PC发送给它的数据流的接收、处理和结果的显示, 测试软件运行于前台。测试代理PC上的软件运行于后台, 以提高数据发送的效率。

3.2 软件实现流程图

测试中控制台PC上的软件和测试代理PC上的软件的运行流程图, 如图3所示, 图中忽略了一部分细节, 主要给出了大致的框架。控制台PC有两个线程, 一个是主界面线程, 一个是工作者线程。主界面线程负责测试流程控制、参数设置和数据结果显示, 工作者线程完成对数据流的高速处理, 并把处理结果提交给主界面线程。

3.3 软件运行及测试结果

测试软件的运行界面, 如图4所示, 从软件界面可以很直观地解释软件的大致框架和操作流程。测试时首先设置好相关参数再开始测量, 测试可以实时暂停或终止, 测试参数可以实时的更改, 操作很是方便。测试代理的发现由控制台PC广播一规定好格式的报文来实现, 当收到这一报文后, 代理PC会将相关的信息发送给控制台PC, 以后两个PC间的通讯就可以不用广播的形式了。

实际测量中测试结果依不同的链路而不同, 上述测试结果反映的是某一条链路上只有一个交换机的情况。从图4中可以看到, 非实时通信带宽随着帧长的变化而变化, 这主要是由于网络互联设备是基于存储转发的, 不同帧长的数据流在链路的利用率上不同所致。也就是帧与帧之间会有一个时间间隔, 这一间隔随着帧长的增加而增加, 但由于存储转发, 作为一个帧所消耗的时间比帧长这一因素更大, 所以帧长较小的就没有充分的利用链路资源。

4 结束语

考虑到网络带宽的测量已经很成熟, 有很多种测量方法, 尽管没有一种绝对完善和精确的方法 [5,6,7,8]。文中重点不在网络带宽测量方法的突破上, 而在于根据工业以太网自身的特殊性, 重点介绍其测量的背景和测试方法的选择与改进。文中给出了非实时通信带宽的定义, 介绍了与之联系密切的确定性、实时性、通信调度、组态和测量用到的开发包Winpcap, 研究了非实时通信带宽的测量方法, 最后给出了测量模型、流程图、软件测试界面及结果。事实证明这种测量方法是可行的, 结果令人满意。

参考文献

[1]缪学勤.论六种实时以太网的通信协议[J].自动化仪表, 2005, 26 (4) :1-6.

[2]陈中林, 牛志升, 金跃辉, 等.网络限速条件下的瓶颈带宽测量新方法[J].计算机应用与软件, 2006, 23 (5) :99-101.

[3]宋亚亮, 王平, 范生凯.EPA通信协议栈设计中的关键技术研究[J].微计算机信息, 2008 (2) :39-40, 19.

[4]孙攀, 王平, 谢昊飞.以太网工厂自动化协议中确定性调度的研究与实现[J].计算机集成制造系统, 2007, 13 (3) :563-567.

[5]冯小华, 王彦邦.工业以太网EPA实时性能测试中递交时间的确定[J].电子科技, 2008, 21 (9) :54-58.

[6]楼正华.基于EPA的电机控制系统的开发[J].计算机网络, 2008 (4) :157-159.

[7]IEC.IEC61784-2:Digital Data Communications for Measurement and Control-Part2:Additional Profiles for ISO/IEC8802-3Based Communication Networks in Re-al-time Applications[S].USA:IEC, 2005.

带宽测量 篇3

互联网规模的扩大以及用户数目的增加使网络性能日益成为人们关注的焦点。高性能网络不仅在服务质量方面为用户提供良好的保证,而且对网络提供商在运营、维护和管理等方面也给予很好的支持。

瓶颈带宽测量能够为提升网络性能提供必要的信息。网络中的瓶颈链路指源端到目的端之间处理能力最低的链路。瓶颈带宽是瓶颈链路在无背景流量干扰下所能达到的最大的数据传输速率。瓶颈带宽在网络管理、网络规划与设计以及提高网络应用程序性能等方面,具有非常重要的意义[1]。围绕瓶颈带宽测量的课题,国际上已进行了大量研究工作,如文献[2]中提出的bprobe算法,文献[3]中提出的nettimer算法以及文献[4]中提出的pathrate算法。这些算法的基础都是数据包对测量模型。

本文在搭建的网络环境中通过实际测量论证数据包对原理测量网络瓶颈带宽的准确性,并对基于此原理衍生的三种瓶颈带宽测量方法进行实现和比较,得出一些有意义的结论。

1数据包对原理

当前测量端到端瓶颈带宽的方法基本上都是基于网络瓶颈分离原理[5]。该原理描述如下:如果两个数据包在瓶颈链路处首尾相连紧密排在一起,则它们离开链路后的时间间隔为:

Τ=L2B (1)

式中L2是第二个数据包的长度;B是瓶颈链路的带宽。

数据包对算法就是对瓶颈分离原理的应用。基本的包对算法是:路径发送端发送两个大小相同紧密相连的数据包(如图1所示),起始时间间隔为△Ts。由于瓶颈带宽的限制,两个数据包到达瓶颈链路时需要进行排队。它们完全通过瓶颈链路后时间间隔为T。由于整条路径上没有其它链路具有比瓶颈链路更小的带宽,两个数据包又具有相同大小,那么第二个包不可能赶上第一个包。如果链路上不存在背景流量数据的干扰,则两个数据包到达接收端的时间间隔△Tr=max{△Ts,T}。由于起始时间间隔△Ts非常小,则由式(1)计算瓶颈带宽为:

B=L2Τ=L2Τr (2)

因而只要获得数据包对通过瓶颈链路后的时间间隔△Tr,就可以根据式(2)得到网络的瓶颈带宽。

由于网络中存在非测试数据包即背景流量,由此会在测量过程中产生干扰噪声。按照对到达时间间隔的影响,将这些噪声分为时间压缩噪声和时间扩展噪声[6]。如果背景流量插排在第一个探测数据包之前,这些附加包就会延迟第一个数据包,经过瓶颈链路后两者的时间间隔将减小,导致时间压缩,引起对瓶颈带宽过高估计;同样,这些附加包也可能插排在两个数据包之间而延迟第二个探测包,使二者的时间间隔加大,导致时间扩展,引起瓶颈带宽过低估计。现有去除这些噪声的方法是使用统计滤波对测量数据进行处理。

2三种基于包对原理测量瓶颈带宽的方法

本文分析和比较了基于发送端的数据包对算法SBPP(Sender Based Packet Pair)[1]、基于接收端的数据包对算法RBPP(Receiver Based Packet Pair)[1]以及仅基于接收端的数据包对算法ROPP(Receiver Only Packet Pair)[6]。这三种方法区别在于式(2)中的T是如何测得的。

图2展示了三种方法完成测量所在位置的不同。如图所示数据包对通过瓶颈链路后产生较大的时间间隔,其中指向SBPP,ROPP以及RBPP的箭头分别表示对于每种算法,需要何种计时信息从发送端或接收端送出。

在SBPP中,式(2)中的T是从数据包发送到其响应返回所需时间RTT,该值是在发送端进行测量的,不需要在接收端进行操作,因此式(2)可改写成:

B=L2R2-R1 (3)

式中R1和R2分别是第一个数据包和第二个数据包的响应返回发送端的时间。在SBPP算法中,背景流量的存在既可能干扰初始探测数据,也可能会干扰它们的响应,况且此算法还存在接收端收到探测包后迅速返回响应包的假设。因而SBPP的准确性不是很高。

在RBPP中,式(2)中的T是在接收端测量的,式(2)变成:

B=L2Τ2-Τ1 (4)

式中T1和T2分别是第一个数据包和第二个数据包到达接收端的时间。RBPP不仅要求在发送端对探测数据包进行计时处理,而且在接收端也要进行相同处理才能得到数据包到达接收端所需时间。

SBPP和RBPP具有各自优缺点,对于测量准确性要求不是很高的网络应用,可使用部署简易的SBPP算法;RBPP算法适用于准确性要求很高的网络应用。然而有些网络应用既需要较高的准确性,又希望测量部署比较简易。针对这些应用,可采用仅基于接收端的ROPP算法。ROPP算法使用式(4)进行计算,式中T1和T2同样是第一个数据包和第二个数据包到达接收端的时间。与RBPP不同,ROPP只需在接收端进行计时(如图2所示),因而它比RBPP更容易部署。由于没有在发送端进行计时操作,其精度低于RBPP。总之,ROPP算法是牺牲些许准确性达到部署简易目的。

3测试结果

3.1测试环境设置

本文在Linux环境下对三种数据包对算法进行编程实现,通过在搭建的网络环境中测试得出的一系列数据,对三种方法进行分析比较。最后通过实验进一步分析探测数据包的长度对测量结果的影响。测试环境如图3所示。

测试环境由四部分组成:1)发送端:发送探测数据包对并接收探测数据包对的响应数据包,对发送时间进行计时;2)接收端:接收数据包对,并对接收时间进行计时;3)流量生成器:为模拟真实网络状况,在路径结点处加入4个流量生成器,分别生成长度为1500、576、552和40字节的ICMP数据包,有规律的对探测数据包对进行干扰。研究表明[7]:互联网中传输的数据包的长度主要集中在3到4个数值点,其中大约50%的数据包长度为40字节,20%的数据包长度为552字节或576字节,15%的数据包长度为1500字节;4)路由器A、B、C:三个路由器都安装了广域网模拟器软件NIST Net。NIST Net是一个功能强大的网络模拟器,可以模拟数据包丢失率、路径时延和带宽限制等网络参数。

3.2测试结果及分析

在测试环境中通过NIST Net对三个路由器进行设置,设定测试环境的路径带宽分别为[30Mb/s,20Mb/s,10Mb/s,50Mb/s](如图3所示)。显然路由器B和C之间的链路为瓶颈链路,瓶颈带宽为10Mb/s。在编程实现的算法中,我们使用1000字节的ICMP包作为探测数据包,通过数据包上记录的发送和接收时间戳获得其通过瓶颈链路后的时间间隔,进而计算得到瓶颈带宽。我们对每种方法进行1000次测量,测量间隔为2s。

测量统计结果(如表1所示)对比了三种算法的1000个测量样本(测量值与真实值比值)的最小值(Min)、最大值(Max)、中值(Median)以及平均值(Mean)。

图4显示了背景流量干扰下三种算法测得的瓶颈带宽值的分布情况。横坐标是测量次数,纵坐标是测量值与真实带宽值(10Mb/s)的比值。

由图4和表1的测试结果,我们看到数据包对算法测量瓶颈带宽还是比较准确的,同时由于背景流量干扰的存在,大部分测量值都要高于真实值。通过测试结果可得在三种算法中,SBPP的准确性最差,但是其部署非常简易;RBPP的准确性最高,但其需要在发送端和接收端同时进行计时部署;ROPP算法在部署的简易性方面与SBPP相当,只需要牺牲少许准确性。这与之前的理论分析也是相吻合的。

下面讨论数据包对算法中探测数据包长度对测试结果的影响。一般认为探测数据包长度L越大,瓶颈链路处理的时间越长,从而导致数据包对时间间隔也就越大,更容易进行测量,因而认为最佳的L值应是路径最大传输单元(MTU)1500字节。然而此推论忽略了背景流量的影响,L越大,数据包对时间间隔越大,背景流量插扰其中的可能性更高,从而带宽测量过低估计的可能性会更大。以RBPP算法为例,我们测试了背景流量干扰时L为800字节以及1500字节测量带宽值的分布情况。对这两种情况得到的1000个测量样本做出直方图,如图5所示。其中横坐标是带宽值,纵坐标是测试所得样本数量。由图5中数据可知当L=800字节时,测试结果主要集中在10.2Mb/s附近,而当L=1500字节时,此时会出现两个峰值,分别集中在9.5Mb/s和10.2Mb/s附近,并且前一个峰值的样本数量多于后者,这样得出的测量值(9.5Mb/s)小于真实值(10Mb/s)。因而在背景流量干扰下,探测数据包的长度并非越长越好。然而太小的L也不是最佳的。因为在L减小的同时,数据包的时间间隔也成比例的减小,更容易得到失真结果。从互联网实验得到的经验结论是,当路径存在重负载时,800字节左右的数据包产生最强的流量[4],此时选择其作为探测数据包的长度对测试结果的影响结果最小;而当路由负载较轻时,对L的选择越大越好。

4结语

本文阐述并实现了三种基于包对原理测量瓶颈带宽的方法。通过实际的测量结果,从准确性及部署难易程度等方面对这三种方法进行了分析和比较。

实验结果显示,在三种测量方法中:SBPP算法准确性最差但是部署简易,适合对准确性要求不是很高的网络应用;对于精确度要求高的网络应用可使用准确性最佳的RBPP算法,但是其需要在发送和接受两端同时进行计时部署;对于既要求准确性又希望部署简易的网络应用,可以使用仅基于接收端计时的ROPP算法,ROPP准确性比RBPP稍差但是部署难易程度与SBPP相当。此外,通过实际的测量分析了探测数据包长度对测量结果的影响。实验结果表明,当路径存在重负载时,应选择800字节左右的数据包作为探测数据包;当负载较轻时,对数据包长度的选择是越大越好。

摘要:瓶颈带宽是网络测量中非常重要的性能指标。当前大部分测量瓶颈带宽的方法都是基于数据包对PP(Packet Pair)原理。阐述基于此原理的三种测量瓶颈带宽方法并在Linux环境下对三种方法进行实现。通过在搭建的网络环境中测试得出的一系列数据,证明了包对原理的准确性以及背景流量CT(Cross Traffic)对瓶颈带宽测量的干扰。根据测试结果从准确性、部署难易程度等方面分析和比较了三种方法。最后通过实验进一步分析了探测数据包的长度对测量结果的影响。结论可为不同网络应用场景下选择瓶颈带宽测量方法提供有效的参考。

关键词:网络测量,瓶颈带宽,数据包对,背景流量

参考文献

[1] Paxson V. Measurements and analysis of end-to-end internet dynamics [D].Berkeley: University of California, 1997.

[2] Carter R L,Crovella M E. Measuring bottleneck link speed in packet-switched networks [J].Performance valuation, 1996,27(28):297-318.

[3]Lai K,Baker M.Nettimer:A tool for measuring bottleneck link band-width[C]//CA,USA:In the USENIX Symposium on Internet Tech-nologies and Systems,2001.

[4]Dovrolis C,Ramanathan P,Moore D.What do packet dispersion tech-niques measure?[C]//AK,USA:Proceeding of IEEE INFOCOM2001:905-914.

[5] Jacobson V. Congestion avoidance and control[C]//Stanford, CA, USA: Proceedings of ACMSIGCOMM, 1988:314-329.

[6] Lai K,Baker M. Measuring Bandwidth[C]//NY, USA: Proceedings of IEEE INFOCOM 1999:235-245.

[7] Thompson K,Miller G J,Wilder R. Wide-area internet traffic patterns and characteristics [J]. IEEE Network, 1997(11):10-23.

带宽测量 篇4

随着无线多媒体技术的不断发展和广泛应用, 形成了许多新的多媒体业务需求,如语音通话、视频会议、多媒体监控等。 这些业务对延时、延时抖动、带宽提出了更高的要求, 而在无线网络中所有节点都共享同一个信道,这使得Qo S保障方法的实施显得尤为重要。

由于时延等参数与信道可用带宽都有一定的相关性, 而且不论是对Qo S路由的研究, 还是对无线网络进行有效的接入控制、 资源预留, 几乎都需要以链路可用带宽这一基本参数作为度量。 可用带宽的准确估计能使有限的带宽资源被充分利用,而错误的估计则会导致整个网络进入饱和状态, 性能急速下降, 造成节点之间无法正常通信。 所以如何精确有效地估计可用带宽成为了无线网络中Qo S保障的一个关键问题。

1相关工作

目前,可用带宽的估计方法主要有基于测量的方法、 基于分析模型的方法和基于感知的方法。

早期测量可用带宽的方法都是基于测量的[1,2,3],即通过发送探测数据包来估计可用带宽,但是也存在着明显的缺点, 那就是给网络加入了额外的通信量, 这影响了数据的传输。 而基于分析模型[4,5,6]的估计方法虽然能十分精确地估计WLAN的可用带宽,但是其非常依赖网络的拓扑结构。

基于感知的方法也称为被动测量方法[7,8], 利用无线节点的载波侦听机制来获取其周围的信道利用情况,然后交互这些信息来进行可用带宽估计。 基于感知的方法除了使用Hello报文传递信道空闲信息之外, 不会给网络带来其他的额外开销, 因此其估计过程不会对已存在的背景数据流造成干扰,非常适用于信道共享的无线网络。 下面着重介绍自适应接纳控制(Adaptive Admission Control , AAC ) 以及可用带宽估计( Available Bandwidth Es- timation , ABE ) 两种代表算法。

在AAC中,每个节点在给定的时间周期内通过载波侦听机制记录本地信道的忙闲状况, 并通过Hello数据包跟邻居节点交换可用带宽信息,就可以获得指定链路的可用带宽。 例如,定义发送节点为s,而接收节点为r, C为信道容量, 则链路( s , r ) 的可用带宽即可以表示为:

但是AAC也存在着明显的缺点,它假设了两个节点间感知到的信道忙时间完全重叠, 而在实际应用中, 这会高估可用带宽。

ABE进一步考虑了数据碰撞带来的额外带宽消耗以及退避过程带来的消耗,并且提出了两个通信节点间的信道同步概率问题,改进了AAC算法。 其可用带宽表达式为:

其中Pc为碰撞概率,而K为退避过程带来的消耗,可以表示为:

ABE中通过测量Hello报文的丢包率估计数据包的碰撞概率。 同时考虑到数据包大小对碰撞概率的影响, ABE利用拉格朗日插值多项式的方法对任意大小的数据包碰撞概率进行拟合。 定义m为数据包大小,则碰撞概率p(m)的表达式为:

f ( m ) 为拉格朗 日插值多 项式 , 通过NS2仿真可得 :

然而ABE也存在一系列问题。 一方面, 由于IEEE 802 . 11中使用的是停止等待ARQ协议, 因此不可忽视控制报文所带来的带宽消耗,ABE中并没有考虑控制报文所带来的带宽消耗; 另一方面,ABE算法估计出的可用带宽并没有考虑不同等级的Qo S要求,因此无法满足不同业务对可用带宽的需求。

2改进的可用带宽估计策略

本节将对ABE中的退避消耗参数K以及碰撞概率Pc进行改进, 同时引入信道利用率的概念。 改进后的ABE算法可用带宽公式为:

其中K′ 、Pc分别表示协议开销和数据包碰撞所消耗的信道容量,C为信道业务层容量,Cu为信道利用率, 是Qo S要求与平均网络负载的函数。 下面介绍改进策略。

2 . 1信道利用率

ABE 、 AAC这两种算法的估计结果是信道剩余容量,而并非是真正的可用带宽。 因为在实际估计过程中这两种算法都没有考虑加入业务后对已存在的背景业务的影响,这使得估计结果被新业务使用后仅能保证信道处于非饱和状态, 缓存队列不会溢出, 并不能保障有时延要求业务的服务质量。 同时它们基于业务可以理想调度这一假设, 但是在实际情况中, 随着信道负载的增大以及通信节点数的增加,由此而产生的碰撞与时延使得服务质量无法得到满足,无法保证在自由竞争的情况下不同业务的Qo S要求, 实现业务的理想调度, 因此本文加入信道利用率Cu这一参数。

设CABE为ABE算法所估计出的信道剩余容量, 即式(2),则可用带宽AB可以重新定义为ABE算法的可用带宽与信道利用率的乘积:

文献[10]证明了在理想工作点使用RTS/CTS的情况下, 信道利用率为Cideal= 0 . 95 , 因此为了保证新加入的业务能够不影响背景业务,定义在理想工作情况下的信道利用系数为:

则信道利用率Cu可以表示为:

其中Ridle为平均信道空闲时间,β 为Qo S保障系数, 由该业务以及背景业务的Qo S要求决定。

2 . 2控制报文开销

由图1可以看出,ABE的K值并没有考虑控制报文ACK 、 CTS以及帧间间隔SIFS对可用带宽估计带来的影响, 这部分控制报文以及等待时间虽然不大, 但是同样不容忽视。 因此本文把退避过程带来的消耗K重新定义为协议开销,则改进后的K′可以表示为:

其中ACK、CTS分别为传 输ACK和CTS报文的超 时时间 。可以由如 下公式得 到 :

其中m为最大退避阶数,CWmin、 CWmax分别为最小和最大退避窗口。

2 . 3由干扰节点造成的数据包碰撞概率

当前的可用带宽算法大多假设当多个报文同时或先后到达接收节点, 即它们的接收时间重叠时, 接收节点就认为出现碰撞并丢弃所有报文。 但在实际的无线通信系统中,由于距离不同。 因此不同发送节点到接收节点的信号衰落也不同,当某一信号的强度与来自其他节点的信号强度之和的比值大于一定值时,则该报文仍然能够被正确接收,即所谓的捕获效应。

定义能实现信号捕获的最小信号强度差异为捕获阈值CPTH。 设Pr与Pi分别表示接收节点处期望信号和干扰信号的功率, 只有当Pi·CPTH< Pr时, 捕获效应才能起作用。 为了准确表达干扰信号对期望信号的影响,定义干扰距离RI, 即能够影响接收节点正常接收时, 接收节点与干扰节点的最大距离。 该距离由捕获阈值CPTH和发送节点同接收节点间的距离d决定,即:

假设节点均匀分布, 当发送节点与接收节点之间的距离为通信距离RTX时,干扰节点数量为:

假设节点A有n个干扰节点, 则根据文献[11-13], A与其中任意一个节点碰撞的概率为:

3仿真实验

为了反映信道利用率对可用带宽估计的影响, 设置如图2所示的场景,在NS2中进行仿真。 其中传输距离为250 m, 载波监听范围为550 m,d1=200 m,d2=400 m。 链路(5,6) 的流f1有着可变化的带宽, 链路(1,2) 的流f2为恒定的800 Kb / s 。 估计链路( 3 , 4 ) 的可用带宽为f1所消耗带宽的函数。 介质容量为2 Mb/s,数据包大小为1 k B , 则应用层吞吐量即为1 . 6 Mb / s 。

由图3可以看出,ABE认为干扰是相互独立的, 因此在信道负载低的情况下会低估可用带宽,而在信道高负载的情况下,信道利用率成为可用带宽估计的主要影响因素。 可以看出,信道利用率随着信道负载的升高而下降。

为了评估本文所提出的可用带宽评估方法的性能, 设置仿真场景大小为1 100 m×1 100 m, 节点数为100, 随机地选取10对节点进行通信,数据包大小为1 000 B, 且每个连接对的业务负载均为x。在捕获阈值为10 d B的情况下, 根据式(12) 可以算出干扰范围为367 m。 在(450,550), ( 650 , 550 ) 处放置两个节点以构成目标链路。

先考虑不同的Qo S要求对实际可用带宽的影响, 由图4可以看出,不同的Qo S需求会得出不同的可用带宽估计结果, 而ABE仅仅考虑非饱和约束, 在估计过程中没有考虑实时业务的时延需求。

由图5的仿真结果可以看出,在150 ms时延约束条件下,ABE由于没有考虑信道利用率, 因此高估了可用带宽。 本文算法通过重新定义协议开销参数并且加入了信道利用率这一参数,使得时延约束下的可用带宽估计结果更加准确, 可以保证在使用可用带宽之后, 不会违背业务的Qo S时延要求。

4结论

上一篇:并行FFT算法下一篇:全日制教育硕士论文