朱 瑞 军, 王 伟, 甄 翠 平
(大连理工大学 控制科学与工程学院,辽宁 大连 116024)
目前,流媒体业务(如视频、音频)在Internet上的应用日益广泛.与传统的数据传输(如文件传输)相比,这种业务具有以下几方面的特点[1~3]:(1)流媒体的平均码率较大,传输时间较长,因而要求有足够且稳定的网络带宽作保障.如MPEG-1码流需1.5Mbps的带宽,即使H.263编码的视频也需要28kbps以上的带宽.(2)流媒体是实时业务,对传输延迟有严格的要求.这是因为如果流媒体数据到达时间比播放时间晚,这些数据就变得无用甚至对播放效果有害.另外,流媒体对延迟抖动很敏感,由于流媒体的时间相关性很强,帧间的时间限制必须严格遵循,否则用户将明显感觉到视频的不连贯.(3)流媒体可以容忍一定的数据丢失,但分组丢失必须低于一定阈值,否则会引起流媒体的服务质量下降,甚至在严重情况下导致终端无法解码播放流媒体.然而,Internet的资源(如可用带宽)是有限的,这些附加的要求可能导致网络产生严重的拥塞,从而造成缓存器溢出,传输延迟增大,分组丢失,服务质量(QoS)降低.因此要保证流媒体的服务质量,有效的拥塞控制机制是非常必要的.
传输控制协议(TCP)是目前在Internet上应用最广泛的协议,但它是一种基于窗口的协议,会引起发送速率严重的波动,不适合流媒体的传输[4].基于速率的控制方法允许端系统调节它们的发送速率来支持尽力服务,并且可以最大程度地利用网络资源,因此,它为流媒体在Internet上传输取得高的服务质量提供了有效的解决办法[5].目前人们已经提出很多有效的速率控制方法来支持流媒体的传输.在文献[6、7]中,作者使用与TCP类似的加性增乘性减(AIMD)机制来调节源端的发送速率,即当网络中未发生拥塞时,发送速率以每个往返延迟(RTT)增加一个分组的速度增加;当发生拥塞时,发送速率减半.然而,这种简单的AIMD方式会引起发送速率的波动,影响流媒体的服务质量.在文献[8~10]中,作者提出了一种基于模型的控制方法,使用TCP吞吐量模型来计算传输流媒体的可用带宽,从而调节源端的发送速率.这种方法可以取得较高的网络利用率,但会导致发送速率严重的波动,造成网络吞吐量下降.总之,上述方法主要针对拥塞控制,并没有考虑有效地利用网络资源,如带宽和用户缓存区.最近,人们提出利用网络流理论和控制理论方法设计支持流媒体传输的速率控制器.这种方法可以直接利用缓冲区队列长度来控制源端发送速率,同时考虑了网络延迟对排队长度的影响.在文献[11]中,作者针对存在不确定时变延迟的通信网络提出了一种流控制方法;在文献[12]中,作者利用经典控制理论提出了一种支持尽力服务流媒体传输的自适应PI速率控制算法.但这些方法并不能灵活地处理传输延迟时变,且网络负载随机变化,网络中存在不受控源的情况.文献[10]对上述同样的问题,利用离散LQ控制设计了流控制器.
本文利用模糊逻辑控制原理提出一种支持流媒体传输的模糊增益PID速率控制器,以补偿时变不确定性的影响,增强闭环系统的稳定性和鲁棒性.
本文考虑的数据交换网是由一定数目位置分布不同的源/目的节点组成.流媒体由源节点产生,并分组成为IP包,经过一系列的中间节点最后传输到目的节点.模糊增益PID速率控制器工作在路由器上,它根据路由器瞬时缓存队列长度计算出期望的源节点传输速率q′i(t),并通过IP数据包和ACK数据包以窗口大小的形式通知源节点.源节点通过调节它当前窗口的大小(例如传输速率qi(t))来提供尽力服务.与此同时网络中还存在不受控的保证服务流以速率υ(t)通过路由器传输数据.
根据上面的描述,图1中给出了有N个尽力流和一个保证传输质量流的AQM路由器队列模型.AQM路由器利用有限的缓存空间存储到来的数据包,并以恒定的速率输出数据包.路由器的缓存区分别被尽力服务流和保证传输质量流划分为两个逻辑队列,假定每个队列的服务都是按照先进先出(FIFO)的原则进行,且两个队列分享同一个链路带宽,保证传输质量流的队列比尽力服务流的队列优先权高.网络存在两种延迟:(1)从受控源节点i到路由器的时变前向延迟τfi(t),包括传输延迟、排队延迟和传播延迟;(2)从路由器到目的端与目的端到受控源节点i的时变反馈延迟τbi(t),同样也包括传输延迟、排队延迟和传播延迟.因此,第i源节点的时变往返延迟为τi(t)=τbi(t)+τfi(t).
图1 AQM路由器队列模型Fig.1 Queue model of AQM router
由图1给出的AQM路由器队列模型可以得出,路由器缓存器队列长度的变化率等于所有的尽力服务流的输入速率与保证传输质量流的输入速率之和减去路由器服务速率.即
模糊增益PID算法是在PID算法的基础上,通过计算当前系统偏差和偏差的一阶微分,利用模糊规则进行模糊推理,查询模糊规则表进行参数的调整.它的结构简单,鲁棒性强.与文献[8]使用的经典控制理论方法相比,模糊逻辑控制方法不受被控对象模型的限制,而根据人工控制规则组织控制决策表,然后由该表决定控制量的大小,因此更适合复杂时变的网络系统.本文提出的模糊增益PID速率控制器可以取得路由器零队列偏移,并且可以避免缓存器溢出.每个受控源节点以最大的允许传输速率来发送数据流,因此能充分利用网络的剩余带宽.
设x0为AQM路由器目标缓存队列长度,为路由器瞬时队列长度.根据瞬时缓存队列长度x(t),第i受控源节点的期望发送速率q′i(t)可由下面的PID控制算法得到:
其中Kp、Ki、Kd分别为比例、积分和微分增益,e(t)=x0-x(t).
PID速率控制器的增益通过模糊逻辑推理在线调整,图2给出了模糊增益PID控制系统的结构图.设计中包括3个模糊逻辑推理系统,它们的输入都为e、Δe,输出分别是Kp、Ki、Kd.PID增益Kp、Ki和Kd的大小由当前的偏差e(k)和其一阶微分Δe(k)决定,通过下面的模糊推理计算得到:
如果e(k)为Ai且Δe(k)为Bi,则Kp为Ci、Ki为Di、Kd为Ei;i=1,2,…,m
其中:Ai、Bi、Ci、Di和Ei是模糊集.e(k)和Δe(k)的隶属度函数取为三角形,论域为[a-,a+],如图3所示.Kp、Ki、Kd的隶属度函数也同样取为三角形,论域为[b-,b+],如图4所示.在图3、4中 N代表负,P代表正,ZE代表零,S代表小,M代表中,B代表大.因此NB代表负大,PB代表正大等.
图2 模糊增益PID控制系统Fig.2 Fuzzy-gain PID control system
图3 e(k)和Δe(k)的隶属度函数Fig.3 Membership functions of e(k)andΔe(k)
图4 Kp、Ki、Kd 的隶属度函数Fig.4 Membership functions of Kp,Ki,Kd
模糊控制设计的核心是总结工程设计人员的技术知识和实际操作经验,建立合适的模糊规则,得到针对Kp、Ki、Kd3个参数分别整定的模糊规则,如表1~3所示.在这里,本文根据过程的单位阶跃响应来制定规则,图5给出了单位阶跃响应曲线.例如,在响应的起始点a1处,偏差e很大且为正,偏差的一阶微分几乎等于零.为了得到快速的系统响应,必须加大被控对象的输入量,即操作量.因此PID速率控制器应该有大的比例增益Kp,大的积分增益Ki,小的微分增益Kd,此时的模糊控制规则可写成
“如果e为PB且Δe为ZE,则Kp为B,Ki为B,Kd为S”
表1 Kp的模糊规则表Tab.1 Fuzzy rule table of Kp
表2 Ki的模糊规则表Tab.2 Fuzzy rule table of Ki
表3 Kd的模糊规则表Tab.3 Fuzzy rule table of Kd
图5 阶跃响应曲线Fig.5 Curve of step response
在b1处,为了减小系统的超调量,必须最大程度地减少操作量,因此PID速率控制器应有小的比例增益Kp、小的积分增益Ki、大的微分增益Kd,控制规则可写为
“如果e为ZE且Δe为NB,则Kp为S,Ki为S,Kd为B”
同样,可以写出c1、d1等点处的控制规则.表1~3分别给出了Kp、Ki、Kd的控制规则.
e和 Δe的量化因子分别为ke、kΔe;Kp、Ki、Kd的比例因子分别为kp、ki、kd.这5个参数根据专家知识和经验选取.本文使用重心法进行解模糊化.
本文使用 Matlab/Simulink进行仿真,仿真的网络拓扑图如图6所示.网络中包含N个受控的源节点和1个不受控的源节点,链路的带宽(即AQM路由器的服务速率为44 736 000b/s,所有的IP包有相同的大小,为1 024bytes,路由器1的缓存大小为1 000packets,路由器2的缓存容量足够大不会发生丢包.路由器1的目标缓存容量设为400packets.采样时间取为0.018 3 ms.往返延迟τi=x(t)/c0+τ0i,c0为 AQM 路由器的处理速 度,为 5 461packets/s,τ0i∈ (0.1,0.3)s.
图6 网络拓扑图Fig.6 Network topology
在仿真中,设有20个受控的ftp源节点和1个不受控的保证传输质量流媒体节点通过路由器向目的端发送数据.为了说明本文控制器的有效性,将模糊增益PID速率控制器和传统PI速率控制器[8]的性能作了比较.图7给出了不受控源的瞬时发送速率,图8给出了路由器瞬时缓存队列长度,图9中给出了各个受控源的瞬时发送速率.
图7 不受控源的瞬时发送速率Fig.7 Instantaneous sending rates of uncontrolled sources
在t=0时,12个受控源(i=1~12)和1个不受控源向网络发送数据包.12个受控源的发送速率不断增加,并在t=15s时保持稳定,发送速率327packets/s(如图9),同时瞬时缓存队列长度也不断增加,在t=20s时趋于目标缓存值(400 packets),如图8所示.在t=120s时,另8个受控源节点(13~20)开始通过路由器向目的端发送数据.由于网络中接入的受控源节点数目的增加,引起12个受控ftp源节点(1~12)发送速率大幅度减小,如图9所示.瞬时队列长度也减小,在t=130s时达到稳定值400packets.
图8 路由器的队列长度Fig.8 Queue length in router
图9 各受控源的瞬时发送速率Fig.9 Instantaneous sending rates of controlled sources
在本文的仿真中,仿真时间设为300s.模糊增益PID速率控制器的参数设置如下:e,Δe∈(-6,6),Kp、Ki、Kd∈ (0,1),ke= 0.000 11,kΔe=0.000 2,kp=0.221,ki=0.1,kd=0.03.传统PI速率控制器的Kp=0.201 4,Ki=0.145 8.
从仿真图中可以看出,在t=0~120s时,由于网络传输延迟是时变的,且网络中存在不受控源,文献[8]采用的经典控制理论方法所取得的控制效果明显不如模糊增益PID速率控制器.在PI控制器作用下缓存队列长度和发送速率都有明显的波动,而模糊增益PID速率控制器作用下的缓存队列变化很平缓,发送速率也很平滑.t=120s时,由于网络负载的增加,PI速率控制器作用下的队列长度和发送速率波动更加剧烈,这将严重影响流媒体的服务质量.而模糊增益PID速率控制器不受对象模型的限制,能快速地响应变化,使得缓存区队列长度和发送速率变化平缓,不受负载变化的影响.因此,模糊增益PID速率控制器具有更好的鲁棒性能,能更有效地保证流媒体的服务质量.
本文提出了一种支持流媒体传输的模糊增益PID速率控制器,该控制器使用模糊逻辑控制原理在线调整PID增益,有效地补偿了不确定性的影响.所设计的模糊增益PID速率控制器通过调节源端的发送速率支持流媒体的传输,因此避免了Internet中拥塞的发生.
仿真结果表明,模糊增益PID速率控制器使AQM路由器很好地适应不受控源的波动,因此提供了很好的暂态性能.
[1] WU D,HOU Y,ZHANG Y Q.Transporting realtime video over the Internet:Challenges and approaches[J].Proceedings of IEEE,2000,88:1-19
[2] SEFEROGLU H,MARKOPOULOU A.Distributed rate control for video streaming over wireless networks with intersession network coding [C]//2009 17th International Packet Video Workshop,PV 2009.Piscataway:IEEE Computer Society,2009
[3] CHEN Zhen-zhong,NGAN K N.Recent advances in rate control for video coding [J].Signal Processing:Image Communication,2007,22(1):19-38
[4] HUANG Cheng,XU Li-hao.SRC:Stable rate control for streaming media [C]//IEEE Global Telecommunications Conference GLOBECOM′03.San Francisco:Institute of Electrical and Electronics Engineers Inc.,2003:4016-4021
[5] BOLOT J C, TURLETTI T. Experience with control mechanisms for packet video in the Internet[J]. ACM SIGCOMM Computer Communication Review,1998,28(1):4-5
[6] REJAIE R,HANDLEY M,ESTRIN D.RAP:An end-to-end rate-based congestion control mechanism for real-time streams in the internet[J].Proceedings-IEEE INFOCOM,1999,3:1337-1345
[7] SISALM D, WOLISZ A.LDA + TCP-Friendly adaptation:A measurement and comparison study[C]//Proceedings of 10th International Workshop on Network and Operating Systems Support for Digital Audio and Video.Chapel Hill:[s n],2000
[8] HANDLEY M,FLOYD S,PADHYE J,etal.RFC 5348.TCP Friendly Rate Control(TFRC):Protocol Specification[S].Lenexa:IETF,2008
[9] WU Gang,CHONG E K P,GIVAN R.Predictive buffer control in delivering remotely stored video using proxy servers[J].Computer Networks,2006,50(18):3721-3742
[10] ZHOU Xiao-fei,ONG K.Discrete LQ rate control for MPEG2video streaming system [J].Journal of Multimedia,2008,3(2):12-19
[11] QUET P F,ATASLAR B,IFTAR A,etal.Ratebased flow controllers for communication networks in the presence of uncertain time-varying multiple time-delays[J].Automatica,2002,38(6):917-928
[12] HONG Y,YANG O W W.Design of an adaptive PI rate controller for streaming media traffic based on gain and phase margins [J].IEE Proceedings:Communications,2006,153(1):5-14