QOS Queue(队列)一

来源:百度文库 编辑:神马文学网 时间:2024/06/05 06:49:24
一、思科队列技术除了FIFO外,还有:

  1、Weight fair queuing(WFQ)

  2、Flow-based weighted fair queuing

  3、Class-based weighted fair queuing(CBWFQ)

  4、Low latency queuing(LLQ)

  二、WFQ

  1、WFQ在2M以下的链路上(E1)被默认激活,在x.25或compressed ppp上默认为disable。E3或T3以上的局域网链路或串行链路不支持WFQ

  2、WFQ分4种类型:flow-based,distributed,class-based,distributed class-based

  3、WFQ配置示例(1):

  r1(config-if)# fair-queue {congestion-discard-threshold}   //拥塞丢弃门限值,可取1-512,默认为64

  4、WFQ配置示例(2):

  r2(config)#interface serial 1

  r2(config-if)# encapsulation frame-relay

  r2(config-if)# fair-queue 128

  r2(config-if)# bandwidth 56

  三、Class-based Weighted Fair Queuing(CBWFQ)

  1、接口带宽/类带宽=weight                          //类带宽越大,权越小,优先级越高

  2、配置示例(1):

  step1(config)# class-map xxx

  step1(config-cmap)# match access-group 101

  step1(config-cmap)# match input-interface s0/0

  step1(config-cmap)# match protocol tcp

  step1(config-cmap)# match ip precedence tos

  step2(config)# policy-map yyy

  step2(config-pmap)# class xxx

  step2(config-pmap-c)# bandwidth 64

  step2(config-pmap-c)# queue-limit 128       //尾丢弃

  step2(config-pmap-c)# random-detect 128  //WRED,随机早期检测 //默认情况下,class class-default 采用 flow-based WFQ

  step3(config)# interface s0/0

  step3(config-if)# service-policy output yyy

  3、配置示例(2):

  router(config)# access-list 101 permit udp host 10.10.10.10 host 10.10.10.20 range 16382 20000    //定义语音流量

  router(config)# access-list 102 permit udp host 10.10.10.10 host 10.10.10.20 range 53000 56000  //定义视频流量

  router(config)# class-map class1

  router(config-cmap)# match access-group 101

  router(config-cmap)# exit

  router(config)# class-map class2

  router(config-cmap)# match access-group 102

  router(config-cmap)# exit

  router(config)# policy-map policy1

  router(config-pmap)# class class1

  router(config-pmap-c)# bandwidth 3000 //3M带宽

  router(config-pmap-c)# queue-limit 30   //尾丢弃,30个包

  router(config-pmap-c)# exit

  router(config-pmap)# class class2

  router(config-pmap-c)# bandwidth 2000   //默认WFQ,64个包

  四、LLQ

  router(config)# policy yyy

  router(config-pmap)# class xxx

  router(config-pmap-c)# priority 30

  在定义LLQ时,bandwidth,queue-limit,random-detect命令不能同时使用

  vying:竞争的             //vie的现在分词

  perceive:察觉、看见、知觉

  discriminator:鉴别器、辨别者、歧视者

  interleave:交错

  crest:波峰

  through:波谷分类

  在有区别地对待和处理网络通信流之前,首先需要对通信流和"标记"或"颜色"进行分类,以保证特殊的数据包能够得到与其它数据包不同(或更好)的对待和处理。今天,Cisco IOS工具可以根据一些不同的标准对数据包进行分类,然后使用IP数据报头中的3个IP优先级位信息对这些数据包进行标记。


图2 IP数据包头中的IP优先级字段

  网络操作员最多可以定义6个服务等级(使用IP头中服务类型(ToS)字段的3个优先级位,其中的2个值保留作它用)。然后,可以使用QoS功能制定适当的通信流处理政策,包括针对每一通信流等级的拥塞管理、带宽分配以及延迟限制。


图3 边界处进行的通信流分类

  以下是分类功能选项的示例:

  某一特定T1上接收到的所有数据包都被划分为高优先级(基于端口的分类)

  所有超文本传输协议(HTTP)通信流都被划分为中优先级(根据应用进行分类)

  来自某一特定IP地址的视频通信流被划分为中优先级

  前往某一特定目的地的数据包都被划分为高优先级(例如,国际通信流或以外部网中的某一特定客户为目的地的通信流)

  队列和时序计划(拥塞管理)

  Cisco 7200和7500路由器所使用的不同队列功能包括:

  优先级队列

  自定义队列

  基于流的加权公平队列(WFQ)

  基于等级的加权公平队列(CB-WFQ)

  分布式加权公平队列(DWFQ)

  优先级队列

  优先级输出队列允许一个网络管理员为给定的端口定义4种通信流优先级-高、标准、中和低。当通信流到达路由器时,将安排其进入4个输出队列中的一个。最高优先级队列中的数据包将首先被输出。当这一队列变为空时,下一个最高优先级中的通信流将被输出,依此类推。

  这一机制可以确保在拥塞期间最高优先级数据不会因为低优先级通信流而被延迟。以下是如何使用优先级队列的例子:

  字节计数值少于200的DECnet将被安排进入中优先级队列

  来自某一特定TCP端口或以某一特定TCP端口(如用于远程登录通信流的端口23)为目的地的IP数据包将被安排进入中优先级队列

  来自用户数据报协议(UDP)端口53或以其为目的地的IP数据包将被安排进入中优先级队列

  所有IP数据包都将被安排进入高优先级队列


图4 优先级队列和严格优先级时序计划

  当使用优先级队列时有可能出现一种不希望看到的副作用:低优先级队列可能被锁死。换句话说,如果在一个没有尽头的到达流中出现太多的高优先级通信流,低速链路上的低优先级通信流就有可能永远得不到处理。如果这些低优先级通信流确实不重要,那么这可能正是所要求的结果。