1、 基于区分服务模型拥塞控制基于区分服务模型拥塞控制的改进的改进RIO-C算法算法 报告人:胡啸报告人:胡啸 指导老师:井元伟教授指导老师:井元伟教授主要内容主要内容绪论绪论 区分服务队列管理机制区分服务队列管理机制 改进改进的队列管理的队列管理算法算法改进算法仿真实验改进算法仿真实验 结论与展望结论与展望 1.绪论绪论人们对网络需求量的增加硬件设备的能力,包括路由器处理能力和链路带宽等就Internet的体系结构而言,拥塞的发生是其固有的属性源端算法:主要是针对TCP/IP协议的研究。链路算法:主要是路由器上对进入缓存的数据的处理方法,RED(随机早期检测)算法。网络现状网络现状 解决方法解决
2、方法1.绪论绪论 网络服务质量(网络服务质量(QoS)QoS 实现技术实现技术保证网络的高效运行确保重要业务量不受延迟或丢弃 综合服务模型(IntServ)资源预留协议(RSVP)区分服务模型(DiffServ)多协议标记交换(MPLS)2.区分服务队列管理机制区分服务队列管理机制区分服务体系结构的特点区分服务体系结构的特点基于优先级边缘分类,内部转发 2.区分服务队列管理机制区分服务队列管理机制区分服务标记区分服务标记DSCP DS 域定义为IPv4头部的服务类型TOS字段或IPv6头部的流类型字段的前六位,如图所示 2.区分服务队列管理机制区分服务队列管理机制 队列管理算法队列管理算法 自
3、1993年,S.Floyd 和 V.Jacobson 提出随机早期检测(Random Early Detection:RED)以来,它一直是一个研究热点,先后出现了几种改进方式,如:ARED、SRED、DWRED、WRED、RIO-C、RIO-D等 重点研究对象重点研究对象 基本RED算法、RIO-C 算法2.区分服务队列管理机制区分服务队列管理机制基本基本RED算法:算法:平均队列长度avg丢包概率0minminmaxminmaxmaxmin1maxththbpthththththavgavgpavgavg 算法采用计算队列平均长度的方法,在路由器接口上只维持一个队列,通过平均队列长度来计算
4、丢弃概率2.区分服务队列管理机制区分服务队列管理机制平均队列长度与丢包概率的关系如图所示2.区分服务队列管理机制区分服务队列管理机制RED算法的不足之处算法的不足之处 公平性问题。平均队列长度的计算受到 很多因素的影响,比如报的大小等,导致带宽享用的不公平性 优先级问题。RED 不会对标记过的数据进行区别对待,无法保证在DiffServ 模型为不同的业务提供 QoS 保证,不能实现服务区分。2.区分服务队列管理机制区分服务队列管理机制RIO-C算法:算法:该算法在DiffServ模型中扩展为三个丢弃优先级或颜色。其相应的平均队列长度如下图所示。平均队列长度avg丢包概率0minminmaxmi
5、nmaxmaxmin1maxithiithibipithiithithithiithiavgavgpavgavg i为1、2或3,分别代表绿色、黄色和红色分组。2.区分服务队列管理机制区分服务队列管理机制平均队列长度与丢包概率的关系如图所示2.区分服务队列管理机制区分服务队列管理机制虽然RIO-C算法能够实现区分服务,但仍有不足:低丢弃优先级分组数目变化除影响自身的分组丢弃概率外,还会影响高丢弃优先级分组的丢弃概率,对高丢弃优先级分组过分歧视,并使其难以获得足够的带宽。当网络处于较低业务流时,丢弃概率增长较快,致使网络资源没有得到充分的利用;相反,当网络处于较高业务流时,丢弃概率增长较慢,有可
6、能导致网络拥塞。3.改进改进的队列管理的队列管理算法算法 为克服RIO-C算法的不足,达到更加有效利用带宽和分等级服务质量方面的目的,本文提出一种基于RIO-C算法的改进队列管理算法ARIO-C(Algebraic RED with In/Out and Couple queue)。改进的RIO-C算法用 的二次函数来平滑 ,这样可以使丢包率 随着 的增长以曲线的方式平稳变化,避免了原RIO-C算法丢包率 随着 线性的增长。相对于RIO-C算法,在拥塞较轻的情况下改进算法拥有较低的丢包率,而在当 增大靠近最大阈值的时候,改进算法也能迅速的提高丢包概率,加大丢弃力度,能较快从严重拥塞状态得到解脱
7、。iavgbipiavgiavgiavgbipbip3.改进改进的队列管理的队列管理算法算法平均队列长度avgARIO-C算法:算法:改进算法也分为三个丢弃优先级或颜色。其相应的平均队列长度与RIO-C算法相同。丢包概率 i为1、2或3,分别代表绿色、黄色和红色分组。20minminmaxminmaxmaxminmaxithiithibipithiithithithiithiavgavgpavgavg3.改进改进的队列管理的队列管理算法算法平均队列长度与丢包概率的关系如图所示3.改进改进的队列管理的队列管理算法算法ARIO-C算法性能分析算法性能分析 对拥塞的反映。ARIO-C算法继承了RIO
8、-C算法的优点,在路由器处计算各丢弃优先级分组的平均队长,因此可以反映网络的拥塞程度 实现相对优先级。对任意的优先级i(i=1,2,3),可根据最大和最小阈值的设置来实现 带宽利用。在保证网络正常运行的情况下,尽可能的有效利用网络带宽,达到资源利用最大化 4.改进算法仿真实验改进算法仿真实验 为验证ARIO-C算法性能,本文进行了实验研究。实验使用NS2(Network Simulation Version2)作为仿真工具。ARIO-C实现相对区分;ARIO-C实现带宽的有效利用。实验环境介绍实验环境介绍本节将做下述研究:仿真实验拓扑结构仿真实验拓扑结构4.改进算法仿真实验改进算法仿真实验 4
9、.改进算法仿真实验改进算法仿真实验 仿真实验有关参数仿真实验有关参数 上图中S1、S2、S3为源端,S1、S2、S3发出的数据分组分别被标记为绿色(G),黄色(Y)和红色(R);D1、D2、D3为对应的目的端;E1、E2分别为DiffServ边缘路由器;C 为核心路由器;E1到E2之间的带宽为5Mbps,延迟为5ms,其他链路之间的带宽为10Mbps,延迟为5ms,这样在E1和E2之间就形成一个瓶颈链路。ARIO-C算法仿真参数 如下表所示。4.改进算法仿真实验改进算法仿真实验 验证验证ARIO-C算法实现区分服务算法实现区分服务 分组类别 C接收分组(pkts)C 丢失分组(pkts)丢包率
10、 吞吐率(Mbps)绿色(G)19997 0 0 2.500 黄色(Y)19997 32 0.002 2.498 红色(R)19997 19872 0.994 0.005 S1到D1、S2到D2、S3到D3均发送包长度为1000bytes、速率为2.5Mbps。从仿真结果可以看出,当采用ARIO-C算法时,绿色分组没有丢失现象,黄色分组的有少许丢失现象,红色分组丢失现象比较明显,实现了区分服务的目的。4.改进算法仿真实验改进算法仿真实验 验证验证ARIO-C算法实现带宽的有效利用算法实现带宽的有效利用 S1到D1、S2到D2、S3到D3均发送包长度为1000bytes、速率为3.0Mbps。对
11、RIO-C和ARIO-C算法分别进行仿真,比较两种算法下的丢包概率和吞吐量,仿真结果如表4.10、4.11所示。由表4.10,RIO-C算法中绿色(G)没有丢包,黄色(Y)分组丢失分组6856 pkts,红色(R)丢失分组19973 pkts。由表4.11,ARIO-C算法中绿色(G)没有丢包,黄色(Y)分组丢失分组6619 pkts,红色(R)丢失分组19989 pkts。表 4.10 RIO-C 算法得到的仿真结果 分组类别 C接收分组(pkts)C 丢失分组(pkts)丢包率 吞吐率(Mbps)绿色(G)19997 0 0 3.000 黄色(Y)19997 6856 0.343 1.96
12、8 红色(R)19997 19973 0.998 0.001 表 4.11 ARIO-C 算法得到的仿真结果 分组类别 C接收分组(pkts)C 丢失分组(pkts)丢包率 吞吐率(Mbps)绿色(G)19997 0 0 3.000 黄色(Y)19997 6619 0.331 1.998 红色(R)19997 19989 0.999 0.001 4.改进算法仿真实验改进算法仿真实验 4.改进算法仿真实验改进算法仿真实验 验证验证ARIO-C算法实现带宽的有效利用算法实现带宽的有效利用 S1到D1、S2到D2、S3到D3均发送包长度为1000bytes、速率为6.0Mbps。对RIO-C和ARI
13、O-C算法分别进行仿真,比较两种算法下的丢包概率和吞吐量,仿真结果如表4.16、4.17所示。由表4.16,RIO-C算法中红色(R)丢失分组和黄色(Y)分组基本全部丢失,绿色(G)丢失分组4033 pkts。由表4.17,ARIO-C算法中红色(R)丢失分组和黄色(Y)分组基本全部丢失,绿色(G)丢失分组3517 pkts。表 4.16 RIO-C 算法得到的仿真结果 分组类别 C接收分组(pkts)C 丢失分组(pkts)丢包率 吞吐率(Mbps)绿色(G)19997 4033 0.202 4.788 黄色(Y)19997 19995 0.999 0.001 红色(R)19997 1999
14、5 0.999 0.001 表 4.17 ARIO-C 算法得到的仿真结果 分组类别 C接收分组(pkts)C 丢失分组(pkts)丢包率 吞吐率(Mbps)绿色(G)19997 3517 0.176 4.958 黄色(Y)19997 19996 0.999 0.001 红色(R)19997 19996 0.999 0.001 4.改进算法仿真实验改进算法仿真实验 5.结论与展望结论与展望 较完整的论述了DiffServ体系结构和主动队列管理机制;在详细分析RED、RIO-C算法的基础上提出了一种改进DiffServ队列管理算法ARIO-C;通过仿真试验说明该算法能够实现相对区分,并能保证更加有效利用带宽。本文所作的主要工作有:本文所作的主要工作有:5.结论与展望结论与展望展展 望望在本算法的基础上,如何根据具体情况进行参数设置,达到理想的效果。进一步改进算法,提出一个能够同时实现带宽分配公平性和资源利用有效性的算法。DiffServ模型与其它模型相结合的问题。