APP下载

基于EPON承载IPTV业务的加权调度算法研究

2013-01-31殷爱菡郭建伟

电视技术 2013年13期
关键词:数据流队列数据包

殷爱菡,郭建伟

(华东交通大学 信息工程学院,江西 南昌330013)

随着FTTH技术的成熟,IPTV服务逐渐受到人们的重视,但由于IPTV会产生大量的数据,需要较宽的接入带宽,所以组播技术结合光接入网成为一种可行的解决方案[1]。EPON能够提供较宽的带宽并且支持组播协议,采用EPON承载IPTV业务是一种合理的解决方案,得到了广泛关注[2-3]。

现有的EPON系统,OLT端通常采用RR算法进行业务调度。该算法依次轮流调度各缓存队列,能够保障服务的公平性,但当各个队列的优先等级不同时,高优先级的队列往往得不到合适的带宽,产生阻塞丢包的情况[4]。如果一个组播数据包在OLT端丢失,所有的用户都将收不到该数据包,丢失的数据包会在用户端累积从而影响IPTV节目的质量。

本文设计了一种基于EPON承载IPTV业务的加权轮询调度算法(WRR),将不同节目的组播数据包分配到不同的缓存队列,再按照一定算法赋予相应的权重,以满足相应等级的服务质量(QoS)要求。该算法在OLT端可以合理地分配带宽,有效地减少组播数据包丢失,降低队列时延,为用户提供更好的IPTV服务。

1 设计方案

由于EPON承载IPTV业务组播数据包丢失数受节目订制用户数的影响,所以为了减少丢包,订制用户较多的节目组播数据流应该分配到较宽的带宽[5]。在OLT端,WRR算法首先将组播数据包依等级调度到不同的队列,然后按照一定的算法给每个队列分配相应的权重,最后在一个轮询周期内按权重的大小分别发送数据包。该算法主要包括队列调度和权重分配两部分。

1.1 队列调度

图1给出了采用WRR算法的EPON体系结构,包括一个OLT(光线路终端)、一个POS(无源分光器)和若干ONU(光网络单元)。

OLT是WRR算法的核心,由一个分类模块、几个缓存队列和一个调度模块组成。分类模块的作用是根据式(1)重新分配来自上游的IPTV组播数据流,将其分成3个等级

每个缓存队列对应一个等级:高等级队列(Q0),中等级队列(Q1)和低等级队列(Q2);调度模块按照相关权重为每个缓存队列中的数据包分配带宽,其中权重的分配机制将在下文介绍。

图1 EPON结构下WRR算法框图

表1给出了IPTV服务的组播信息,每个节目都包括1个IPTV ID(Si)、1个组播ID(Mi)、订制用户数(ni)和缓存队列(qi)。其中,Si是一个IPTV服务的ID,Mi是一个广播ID,ni是相关节目订制用户数,qi是相应缓存队列。

表1 OLT端IPTV服务组播信息

分类模块依照相应用户订制数,将上游IPTV组播数据包分配到不同的队列qi,qi由两个门限值N1和N2决定,N1和N2可以根据组播数据流量和队列长度设定。假设N1大于N2,如果N1变大,则进入Q0队列的组播数据流就会减少,而进入Q1的组播数据流会增加,详见式(1)。

1.2 权重分配

权重由订制用户数决定,并且会随订制用户数增多而变大。提高权重能增大相关数据流的传输带宽,增加队列空余缓存空间,从而降低丢包率。为了减少受欢迎电视节目数据包的丢失,此类节目数据包被分配了一个相对较大的权重以确保其占有较宽的带宽[6]。

权重Wi表示调度模块分配给缓存队列的带宽,其定义如下

式中:ni,j表示第i个队列中第j个组播节目的订制用户数;ki表示第i个队列中组播节目数据流的个数;W0,W1,W2分别是队列Q0,Q1,Q2的权重,由式(1)得到其关系为

图2给出了OLT端WRR算法的流程图。其中,一个确定的权重值wi即某时刻第i个队列的传输带宽,设wi=1表示缓存队列数据包发送的门限带宽。当wi小于1,表示没有足够的带宽传输队列Qi中的数据包。

图2 OLT端WRR算法流程图

调度模块根据wi将组播数据包分成3个等级,分别对应3个缓存队列。系统初始化时,调度模块检查队列Qi判断是否发送数据包:

1)如果Qi中有数据,且对应的wi的值大于或等于1,则Qi发送一个组播数据包,同时wi减1;

2)如果Qi中有数据,但对应的wi小于1,则检测下一队列;

3)如果Qi中没有数据,则调度模块执行wi+Wi。

从式(3)可得,订制用户较多的节目组播数据包比较少地占有更宽的带宽,对应的队列空余出相对较大的缓存空间,从而减少了IPTV组播数据包的丢失,降低了平均队列时延。

2 仿真结果及分析

本文运用OPNET仿真工具,对WRR算法效果进行评估。在OPNET中建立EPON仿真环境,对比WRR算法和RR算法在组播数据包丢失数和平均队列时延两个方面的表现(见图3)。仿真环境参量如下:

1)一个OLT连接16个ONU,每个ONU连接一个用户;

2)各队列背景流量不相同,Q0的流量是Q2的两倍;

3)3个缓存队列中均有一个组播数据流,节目订制数按Q0,Q1,Q2顺序依次为9,4,1,即W0=3,W1=2,W2=1;

4)链路的流量负荷为1 Gbit/s;

5)IPTV数据流是10 Mbit/s的高清节目[7];

6)每个队列最大长度为1 Mbit;

7)数据包的间隔到达时间呈指数分布;

8)数据包在队列中均采用先进先出的机制;

9)每个数据包的长度为10 528 bit;

10)仿真时间为10μs。

图3 OPNET仿真节点拓扑图

图4 给出了EPON承载IPTV业务ONU端总的组播数据包丢失数与流量负荷的关系曲线图。WRR算法同RR算法相比,丢包率降低了86.7%。如图所示,曲线可以分为两个阶段,当流入负荷在0.1~0.3 Gbit/s时,WRR算法和RR算法相比,效果相近,没有明显的优势,这是因为流入负荷较小时,缓存队列中排队等待发送的数据包较少,两种调度算法均能够较好地调度各个队列中的数据包,没有造成一定的延时和丢包。当流入负荷大于0.3 Gbit/s时,曲线进入第二阶段,由于Q0的流量是Q2的两倍,又因为节目订制人数不同,分配的权值也就不同,进而分配的带宽也就不同,这样订制用户较多的节目的数据包享有较宽的传输带宽,缓解了阻塞情况。相比没有分配权重的RR算法,有效地降低了丢包数。

图4 不同流入负荷下组播数据包丢失数

图5 给出了OLT端组播数据平均队列时延与流入负荷的关系曲线图。WRR算法与RR算法相比,平均队列时延降低了23.4%。如图所示,曲线可以分为3个阶段,当流入负荷在0.1~0.4 Gbit/s时,WRR算法和RR算法仿真效果相当,没有较大差别,这是因为在流量负荷比较小的情况下,两种调度算法都可以较快地调度队列中缓存的数据包,没有造成一定的延时;在流入负荷在0.4~0.8 Gbit/s时,WRR算法相比RR算法仿真效果有一定优势;在流入负荷在0.8 Gbit/s以上时,相比RR算法,WRR算法的优势比较明显,这是因为流量负荷变大,缓存队列中滞留的数据包开始增多,而WRR算法下,Q0队列有较宽发送带宽,能够在一个轮询周期发送更多的组播数据包,有效地缓解了由于Q0队列流量较大所造成的数据包滞留,从而降低了缓存队列的平均队列时延。

图5 不同流入负荷下OLT端平均队列时延

从图4和图5可以看出,相比RR算法,WRR算法减少了组播数据包的丢失,降低了组播数据平均队列时延,能够更加安全、快速地给用户传输组播数据包,提高了IPTV服务的质量,具备一定的优势。

3 小结

本文设计了一种减少IPTV丢包的加权轮询调度算法,根据IPTV组播节目订制数,将组播数据包按权重分配到不同等级的缓存队列,重新组合调度IPTV组播数据包,给用户较喜欢的IPTV节目组播数据包分配较宽的带宽,减少了组播数据包的丢失,降低了平均队列时延。仿真结果显示WRR算法比RR算法,丢包率降低了86.7%,平均队列时延减少了23.4%。

[1]殷爱菡,黄丛峰,郭建伟.EPON承载IPTV组播业务的设计[J].电视技术,2012,36(11):73-76.

[2]NGO M T,GRAVEY A,BHADAURIA D.Controlling QoS in EPONbased FTTX access networks[J].Telecommunication Systems,2011,48(1/2):203-217.

[3]INATY E,RAAD R,FORTIER P,et al.Code division multiple access enabled dynamic bandwidth allocation(CDBA)Scheme for EPON[J].Journal of Optical Communications and Networking,2012,4(3):271-281.

[4]JIA W K,CHEN Y C.Performance evaluation of ethernet frame burst mode in EPON downstream link[J].ETRI J,2008,30(2):290-300.

[5]SAJJAD Z,AKBAR G R.An FEC scheme combined with weighted scheduling to reduce multicast packet loss in IPTV over PON[J].Journal of Network and Computer Applications,2012,25(1):459-468.

[6]ASGHAR J,HOOD I,FAUCHEUR F.Preserving video quality in IPTV networks[J].IEEE Transactions on Broadcasting,2009,55(2):386-395.

[7]ITU-T G.1080,Quality of experience requirements for IPTV services[S].2008.

猜你喜欢

数据流队列数据包
二维隐蔽时间信道构建的研究*
汽车维修数据流基础(上)
民用飞机飞行模拟机数据包试飞任务优化结合方法研究
汽车维修数据流基础(下)
队列里的小秘密
基于多队列切换的SDN拥塞控制*
在队列里
SmartSniff
丰田加速驶入自动驾驶队列
基于数据流聚类的多目标跟踪算法