虚拟带宽自适应控制系统及其控制方法

文档序号:7765528阅读:597来源:国知局
专利名称:虚拟带宽自适应控制系统及其控制方法
技术领域
本发明涉及的是一种网络工程技术领域的系统及控制方法,具体是一种虚拟带宽 自适应控制系统及其控制方法。
背景技术
网络技术飞速发展,网络用户在过去的二十年中经历了爆炸式地增长;同时,网络 数据流也从单一的FTP流转为混合数据流(含有UDP、HTTP流等),加重了网络拥塞问题。 如果拥塞不能够有效地得以控制,则会严重降低网络性能,甚至导致整个网络发生崩溃。所 以,对网络拥塞控制机制和方法的研究显得尤为重要。计算机、通信和系统控制等领域的科研工作者,提出了众多解决方案。如最初的端 到端拥塞控制。它在TCP协议中实现,作用于网络终端。但是,这种控制机制在日趋复杂的 网络环境中不能够达到理想的控制效果。后来,主动队列管理(Active Queue Management, AQM)机制应运而生。它在网络中间节点,如网关、路由器中工作,为终端提供更及时、准确的 拥塞信息,以协助TCP拥塞控制方法。主动队列管理的思想是将路由器缓存中的队列长度 维持在一个比较小的数值,以保证较小的传输延时,同时保持较高的链路利用率。经过对现有技术的检索发现,S. Floyd提出的随机早期检测方法(RED),成功地实 现了主动队列管理机制。但是RED存在众多严重的设计缺陷,主要集中在1)参数配置敏 感,不同的参数配置对网络性能影响巨大;2)队列长度受网络负载影响很大,在连接数增 多时,平均队列长度上升,且抖动增大;3)适应性、鲁棒性差,无法满足时变动态网络的需 求。随后,一些RED的改进方法被提出,具有代表性的有Gentle-RED、Adaptive-RED、SRED 等。然而,上述RED的改进方法同样基于启发式规则进行设计,缺少系统性考虑,参数配置 困难的问题没有得到很好地解决,适应性、鲁棒性差的问题仍然存在。此外,一些新的AQM方法陆续问世,如BLUE、GREEN、PI、REM和AVQ等。其中BLUE、 GREEN仍然采用基于直觉的设计方式,参数配置困难,环境适应性和鲁棒性差。其中GREEN 经常出现队列排空现象,不可避免地降低了链路利用率;BLUE的队列抖动很大,队列经常 溢出,从而增大了传输延时,出现大量的数据丢包。PI是基于控制论的AQM方法,根据线性 化的数据流量模型设计而来。它能够有效克服RED的一些不足,获得稳定的队列长度,但 仍存在很多缺点,如系统响应性差,常出现很大的队列超调,严重时造成队列溢出或排空; 此外,PI的参数设定是通过试凑法得到的,并且固定不变,从而无法在各种网络环境中保证 服务质量。REM是基于Kelly提出的网络流量优化理论中“影子价格”的概念来探测和控制 网络拥塞,具有与PI相似的控制属性,也存在相似的缺陷。AVQ由Kurmiyur S和SrikantR 这两位学者提出,目的是提供一种能够同时保证高链路利用率和低传输延时的AQM方法。 具体地,AVQ方法自身构建了一个虚拟队列,其虚拟带宽比实际的带宽小,每当新的数据包 到达实际队列中时,虚拟带宽进行一次更新。一旦虚拟队列中的数据包溢出,则对实际队列 中的数据包进行标记。随后,华中师范大学的杨燕、谭连生等人,提出了一种基于PD控制的 虚拟带宽调整方法(PD-AVQ)。但是,该方法通过牺牲链路利用率来维持较小的队列长度。空军工程大学的康巧燕等人在前人工作的基础上,构造QPID-AVQ虚拟带宽调整方法。从控 制理论的角度,如果将流速偏差作为误差值,那么PD-AVQ的虚拟带宽调整方法其实是比例 积分(PI)控制,而QPID-AVQ的虚拟带宽调整方法其实是比例积分+双重积分(PI+I2)控 制,系统响应能力和稳定裕量不足。同时,上述两种方法的参数都是针对特定的网络环境进 行设定的,不具备自适应能力,从而导致其扩展性不足
发明内容

本发明针对现有技术存在的上述不足,提供一种虚拟带宽自适应控制系统及其控 制方法,该系统结构简单,扩展性好,具有自学习功能,以及快速的响应能力和较强的鲁棒 性能,能够始终保持快速的系统响应,维持较低的路由器数据包排队延时及抖动,同时获得 较高的链路利用率。本发明是通过以下技术方案实现的本发明涉及一种虚拟带宽自适应控制系统,包括数据采集处理模块、虚拟带宽控 制模块和参数在线调整模块,其中数据采集处理模块负责采集数据流速等信息并进行预 处理输入到虚拟带宽控制模块,虚拟带宽控制模块基于输入的信息进行虚拟带宽的控制, 参数在线调整模块负责控制参数的优化调整。本发明涉及上述系统的控制方法,包括以下步骤步骤一,数据采集处理模块在每个数据报文到达路由器时,读取当前的队列长度, 记为q(t);从数据输入端口测量得到路由器的数据流速λ (t),并计算数据流速误差及其 变化率;所述的计算数据流速误差及其变化率是指(1)按照下式计算数据流速误差e(t) :e(t) = Y (t) · C-λ (t);其中C是实际的链路带宽大小;Y是期望的链路利用率,在0 1范围内取值。(2)计算数据流速误差e(t)的变化率,为Ae(t) = e(t)-e(s);(3)计算数据流速误差变化率Ae(t)的变化率,为Δ e2 (t) = Δ e (t) - Δ e (s);其中t和s分别表示当前时刻以及前一个时刻。步骤二,虚拟带宽控制模块根据数据采集处理模块所得的e(t)、Ae(t)和 Δ e2 (t),计算虚拟带宽 ,C{t) = C(5) + g{t)·(w,{t) ·e{t) + w2{t) ·^e{t) + ^3(0 ·Δ2<θ),其中g
是增益数值, 《2和W3是连接权值,S,S和A为相应连接权值经过归一化处理后的数值, 加权参数A(0,A(0,和增益g(t)都是实时更新的控制参数。所述的虚拟带宽作为虚拟带宽控制模块的输出量用于控制路由器的虚拟队列,并 通过与路由器、网关等网络数据转发节点缓存大小对比,决定是否对新到达的数据报文进 行拥塞标记。步骤三,参数在线调整模块对连接权值的归一化数值A(0,%(0、增益 g(t)和期望的链路利用率Y (t)进行实时调整,以适应网络环境变化,具体步骤包括(1)连接权值W1 (t),W2 (t)和W3 (t)的调整方法如下
'w^t) = W1(S)+ η,-v^t)\ w2(t) = w2(s)+ η2·ν2( ),
w3(t) = W3(S)+ η3·ν3( )
其中Il1, η2, η3为设定的步长参数。Vl,V2和V3为递归信号, V1 (0 = e(t) · C(t) · e(t),v2 (0 = e(t) · C(t) · Ae(t), V3 (t) = e(t) · C(t) · A2e(t)。(2)对连接权值进行归一化处理,得到w2(t),^2 (0 = ^2 (0/(1^ (0|+卜 2 (0|+h (0|), 访3 (0 = ^3 (0/(1^ (01+卜 2 (0|+卜 3 (0|)其中I * I表示取绝对值。(3)增益g(t)的调整方法如下
首先计算Δ<0·(Δ(:χ0-Δ('⑷),如果该数值大于0,将符号参数Sgn设置为1,否则
设置为-1。然后按下式调整g(t)g{t)=洲—"4 · e{t) ■ Sgn^wl (t) ■ e(t) + W2(t) ■ Ae(t) + W3(t) ■ A2e(t)),其中η4为调整步长,需要取较小的数值以保证系统稳定。(4)链路利用率Y (t)的调整方法如下首先,计算丢包概率 maxL0,C」;
Λ然后,选取期望的队列长度qref(t);最后,按照下式调整期望的链路利用率Y(t) = Y{s) i.k.N· Y(S) ·妳)· C(5) · [q{t) — qref ⑴]· P^,其中q(t)-qMf(t)表示实际队列长度与期望队列长度的误差;η 5为调整步长,需 要选取较小的数值以保证系统稳定;k为常数,设置为i jI;N为TCP连接数。本发明要求路由器支持基于丢包检测的TCP协议(如因特网中广泛使用的TCP Reno,无线网络中的TCP Veno),配合显式拥塞通知(ECN)功能,同时需要路由器、网关、无 线节点等数据转发设备提供AVQ队列控制器以配合本发明工作。本发明通过检测路由器、 网关的输入端口得到数据流入速率,经过上述步骤输出虚拟带宽大小,并由AVQ队列控制 器维持一个虚拟队列,从而探测网络拥塞状态,决定是否标记数据包。本发明的技术效果包括虚拟带宽控制模块根据数据采集处理模块提供的信息, 对虚拟带宽进行自适应控制。同时,参数在线调整模块负责实时调整虚拟带宽控制器中的 参数,能够有效提高系统响应能力,保证良好的环境适应性。本发明系统结构简单,扩展性 好;适用于参数时变的动态网络环境,并且能够在大范围网络环境中取得良好的鲁棒性能。 仿真分析表明本发明在不同的网络环境中,能够始终保持快速的系统响应,维持较低的路 由排队延时及抖动,同时获得较高的链路利用率。


图1为单瓶颈链路实验拓扑图。图2为多瓶颈链路实验拓扑图。
图3为本发明的系统框图。图4为单瓶颈链路队列长度变化(TCP连接数为50)。图5为单瓶颈链路队列长度变化(TCP连接数为200)。图6为动态网络环境下单瓶颈链路队列长度变化。图7为静态网络环境下多瓶颈链路中Q4的队列变化。图8为动态网络环境下多瓶颈链路中Q4的队列变化。
具体实施例方式下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行 实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施 例。如图1所示,本实施例首先在单瓶颈链路网络中实施。该单瓶颈链路网络由N个 发送端S1-Sn, N个接收端D1-Dn,以及路由器R1, R2组成,为哑铃型结构。图中标出了每条链 路上的带宽、传输延时。其中瓶颈链路带宽15Mbps,传输延时为10ms。其他全部链路带宽 为100Mbps,传输延时为5ms。本实施例的路由器缓存大小为200pkts,数据包的平均大小设 置为1000字节。然后,本实施例也在多瓶颈链路网络中实施,如图2所示。网络环境的设 定在图2中已经做了清楚的标注。同时,路由器缓存大小同样设置为200pkts,数据包的平 均大小也设置为1000字节。本实施例在图1和图2所示的路由器中配置本发明方法。要求该路由器能够配合 基于丢包检测的TCP协议,同时具有AVQ队列控制功能。本发明通过控制虚拟带宽,并通过 AVQ队列控制器来维持一个虚拟队列,从而探测网络拥塞状态,决定是否标记数据包。本实施例的具体实施步骤如下步骤(1)建立虚拟带宽自适应控制系统并初始化参数和变量,如图3所示。该系 统包括数据采集处理模块、虚拟带宽控制模块和参数在线调整模块,其中数据采集处理 模块负责采集数据流速等信息并进行预处理输入到虚拟带宽控制模块,虚拟带宽控制模块 基于输入的信息进行虚拟带宽的控制,参数在线调整模块负责控制参数的优化调整。所述的初始化参数和变量分别为期望的链路利用率Y,初始值为1 ;C是瓶颈链路带宽大小,设置为15Mbps ;t和s分别表示当前时刻以及前一个时刻;g是增益数值,初 值设定为2. 0 ;W1, W2和W3是连接权值,初值分别设定为0. 8,0. 1和0. 1 ;W1,%和%为相应连接权值经过归一化处理后的数值,初值均设定为0 ;V1, V2和V3为递归信号,初值均设定为0 ;Sgn为符号参数,初值设定为1 ;Ii1, η2, η3' 1和n5为设定的步长参数,初值均设定为ι. οχ ιο_18 ;队列长度目标值qref设定为20pkts。步骤(2)等待新数据包的到来。如果有新数据包到达,则执行步骤(3),否则再次 执行步骤⑵;
步骤(3)更新当前系统时刻t ;步骤(4)数据采集处理模块读取当前时刻的路由器队列长度q(t);同时测量进 入路由器的数据流速λ (t)。接下来做如下处理①按照下式计算数据流速误差e (t)e(t) = Y (t) · C- λ (t);其中C取值为15Mbps,即1875pkts/s ; y (t)的数值由参数在线调整模块提供。②计算数据流速误差的变化率,为Δ e (t) = e (t) _e (s);③计算数据流速误差变化率的变化率,为Δ e2 (t) = Δ e (t) _ Δ e (s);其中t和s分别表示当前时刻以及前一个时刻。 步骤(5)虚拟带宽控制模块调整虚拟带宽(’,如下所示C(t) = C(s) + g(t) ■ (^1 (t) ■ e(t) + W2 (t) ■ Ae(t) + W3(t) ■ A2e(t));其中加权参数AW,w2{t), 和增益g(t)都是实时更新的变量,由参数在 线调整模块提供。步骤(6)参数在线调整模块依次调整以下控制参数,包括连接权值的归一化数 值刚),诼2⑴,%(0,增益g(t)和期望链路利用率Y (t),调整方法如下①调整连接权值W1 (t),W2 (t)和W3 (t)
W1 (t) = W1 (s) +1.0 X10—18 · V1 (t)[V1 (0 = e(t). C(t). e(t)jw2(i) = w2O) + 1.0xl0—18弋0);其中^20)=昨).(^>).八昨);
W3( = W3(S)+ 1.0XlO—18 ·V3(t)[v2(t) = e(t)·C(t). A2e(t)②对连接权值进行归一化处理,得到A(0,w2(t), w3(t)
S (0 = (0/(k (0|+卜 2 (0|+卜 3 (0|)^2 (0 = ^2 (0/(1^ (0|+卜 2 (0|+h (0|); 访3 (0 = ^3 (0/(1^ (01+卜 2 (0|+卜 3 (0|)③判断Δ ο))的正负大小。如果其数值大于0,则Sgn = 1 ;否则Sgn =-1 ;④调整增益g(t):git) = g(s) — 1.0x10—18 · e(t) · Sgn · (^1 (t) · e(t) + W2if) · Ae(t) + W3(t) · A2e(t));⑤计算丢包概率p = maxL0-.
/I⑥调整期望的链路利用率Y (t)γ( ) = r(s) — 0.61 χ 10—18 ·#·r(s) · g(s) ■ C(s) ·[购)—qref(t)]·ρ飞,其中Ν为TCP连接数目,根据仿真给定的数值进行设置;q(t)-qref(t)为实际队列 长度相对期望队列长度的误差。步骤(7)记录系统时间,令s = t ;步骤(8)转至步骤(2),重复执行步骤(2)到步骤(7),直到结束。本实施例在NS2网络模拟器(Network Simulator, Version 2)中实现了本发明控制方法,并对其进行了详细的性能测试。NS2网络模拟器是如今使用最广泛的网络仿真软件,由于其采用开源的体系结构,支持的协议广泛,目前已经是网络应用研究领域中的权威 仿真软件之一。采用图1所示的单瓶颈链路网络拓扑结构。路由器中采用本实施例与AVQ传统虚 拟带宽控制方法进行对比。在仿真过程中,源端Si向对应的接收端Di发送大量的FTP数 据。为了测试本实施例的性能,进行了一系列的对比仿真实验。实施例1 设定TCP连接数N分别为50和200,以模拟不同的网络负载。测试AVQ 传统方法与本实施例在静态网络环境中的性能,如图4和图5所示。AVQ传统方法的链路利 用率设置为1.0。通过与AVQ传统方法的对比可以看出,在不同程度的拥塞链路中,本实施 例的队列长度均表现出快速的响应能力,并维持在队列目标值处,保持小幅振荡。而传统方 法在负载较轻时,保持较低的队列长度。当负载加重时,队列长度跃升至150pkts以上,并 且大幅波动,从而增大了传输延时及其抖动,影响网络性能。实施例2 由于实际网络中的TCP连接数随时都在变化,本次实验测试本实施例在突发业务流情况下的适应性和鲁棒性。在仿真开始时,启动50个FTP流,在IOOs和200s 时分别启动另外两组附加的FTP数据流,每组有50个TCP连接;并分别在300s和400s处 关闭。如图6所示的是传统方法和本实施例的队列长度变化情况。在负载突增时,传统方 法的响应能力很差,调整时间较长,队列长度不稳定,并且抖动剧烈;而本实施例具有快速 的响应能力,能够在短时间内将队列长度至稳定状态,并维持小幅振荡,体现出很强的环境 适应性和鲁棒性。接下来,采用图2所示的多瓶颈链路网络拓扑结构,测试传统方法和本实施例的 性能。实施例3 首先在静态网络环境中进行测试,分别给TCP连接簇1、2、3各设定50 个FTP连接。其中Q2和Q4是拥塞链路,并且它们的队列长度变化相似,所以图7只给出 了链路Q4处的队列长度变化情况。可以看出,本实施例能够将队列长度快速稳定在目标 值20pkts,而传统方法的队列长度较大,抖动也比本实施例大。另外,在静态网络设置的基 础上,引入突发数据流,用于测试传统方法和本实施例在多瓶颈链路动态网络的性能。在 IOOs和300s处,给TCP连接簇2分别增加50个TCP连接,直至仿真结束;相似地,在200s 和400s处,给TCP连接簇3分别增加50个TCP连接,直至仿真结束。图8所示的是Q4处 的队列变化。AVQ队列随着TCP连接的增加而明显增大,很容易造成数据包溢出路由器缓存 而出现强制丢包,同时也会增大数据包传输延时和抖动,降低网络性能。本实施例在TCP连 接数突变时,快速响应,保持队列稳定。通过对比发现,本发明适用于多瓶颈链路网络,具有 响应快速,队列稳定,抖动小等多项优点,体现出很好的环境适应性和鲁棒性。
权利要求
一种虚拟带宽自适应控制系统,其特征在于,包括数据采集处理模块、虚拟带宽控制模块和参数在线调整模块,其中数据采集处理模块负责采集数据流速等信息并进行预处理输入到虚拟带宽控制模块,虚拟带宽控制模块基于输入的信息进行虚拟带宽的控制,参数在线调整模块负责控制参数的优化调整。
2.一种根据权利要求1所述系统的控制方法,其特征在于,包括以下步骤步骤一,数据采集处理模块在每个数据报文到达路由器时,读取当前队列长度q(t),同 时从数据输入端口测量得到路由器的数据流速λ (t),并计算数据流速误差及其变化率;步骤二,虚拟带宽控制模块根据数据采集处理模块所得的数据流速误差e(t)、数据流 速误差的变化率Δβα)和数据流速误差变化率的变化率Ae2U),依照下式控制虚拟带 宽(^, (ο = (^)+^Ο·0^(Ο·<Ο+Α(Ο·Δ<Ο+Α(Ο·Δ2 <ο),其中g是增益数值,W1, W2 和W3是连接权值,巧,A和A为相应连接权值经过归一化处理后的数值,加权参数AW, %⑴,和增益g(t)都是实时调整的控制参数;步骤三,参数在线调整模块对连接权值的归一化数值A(0,%(0,巧(0、增益g(t) 和期望的链路利用率Y (t)进行实时调整,以适应网络环境变化。
3.根据权利要求2所述的控制方法,其特征是,所述的计算数据流速误差及其变化率 是指3. 1)按照下式计算数据流速误差e(t) :e(t) = Y (t) - C-λ (t);其中C是实际的链 路带宽大小;Y为期望的链路利用率,在0 1范围内取值; 3.2)计算数据流速误差的变化率,为Ae(t) =e(t)-e(s);3.3)计算数据流速误差变化率的变化率,为Ae2(t) = Ae(t)~Ae(s);其中t和s分 别表示当前时刻以及前一个时刻。
4.根据权利要求2所述的控制方法,其特征是,所述的步骤三包括以下步骤 4. 1)连接权值W1 (t),W2 (t)和W3 (t)的调整方法如下W1 (O = W1(S)+ ^1-V1(Z) <w2(t) = w2(s) + ^-v2(t), w3(t) = w3(s) + ^-v3(t)其中H1, η2, η3为设定的步长参数,V1, 和V3为递归信号,V1O) =冲)力0)·冲), V2 (0 = e(t) ■ C(t) ■ Ae(t), V3 (t) = e(t) ■ C(t) ■ A2e(t);4.2)对连接权值进行归一化处理,得到Α( ),w2{t), w3{t)..< (0 = ^2 (0/(1^ (0|+卜 2 (0|+h (0|), 访3 (0 = ^3 (0/(1^ (01+卜 2 (0|+卜 3 (0|)其中1*1表示取绝对值;4. 3)增益g(t)的调整方法如下首先计算Δ<0·(Δ(:χ0-Δ(%^)),如果数 值大于0,将符号参数Sgn设置为1,否则设置为-1 ;然后按下式调整g(t) = g⑷υ(0·物·(巧(0·<0+Α(0·Δ<0+Α(0·Δ2<0),其中η4 为调整步长,需要取较小的数值以保证系统稳定;4. 4)期望的链路利用率Y⑴的调整方法如下首先,计算丢包概率
全文摘要
一种网络工程技术领域的虚拟带宽自适应控制系统及其控制方法,该系统包括数据采集处理模块、虚拟带宽控制模块和参数在线调整模块。数据采集处理模块负责采集队列长度和数据流速等信息,并进行预处理,得到流速误差e(t)及变化率Δe(t)和Δ2e(t)。虚拟带宽控制模块对误差以及变化率进行加权组合,实现对虚拟带宽的控制。参数在线调整模块负责控制参数的调整配置,以增强系统的适应性和鲁棒性。本发明系统结构简单,扩展性好;适用于参数时变的动态网络环境,并且能够在大范围网络环境中取得良好的鲁棒性能。
文档编号H04L12/56GK101977155SQ20101054845
公开日2011年2月16日 申请日期2010年11月18日 优先权日2010年11月18日
发明者李荣先, 汪浩, 王红雨, 田作华, 钱华新 申请人:无锡源清高新技术研究所有限公司;上海交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1