配置问题导致流队列延迟过大

发布时间:  2012-07-27 浏览次数:  85 下载次数:  1
问题描述
现网版本为V3R2,进行HQOS配置(单用户),发现不同队列的延迟过大。测试结果见附件:
配置如下:
flow-queue fq_test 
 queue be wfq weight 25 flow-wred fw_be 
 queue af1 lpq 
 queue af2 pq shaping 15 
 queue af3 wfq weight 35 shaping 25 flow-wred fw_af3 
 queue af4 wfq weight 40 shaping 30 
 queue ef pq shaping 15 
user-group-queue ugq_test 
 shaping 2000 outbound 
flow-wred fw_be 
color green low-limit 60 high-limit 100 discard-percentage 80 
flow-wred fw_af3 
color green low-limit 75 high-limit 100 discard-percentage 40 
interface GigabitEthernet8/0/5 
 port-queue be wfq weight 25 outbound 
 port-queue af1 lpq outbound 
 port-queue af2 lpq outbound 
 port-queue af3 wfq weight 35 outbound 
 port-queue af4 wfq weight 40 outbound 
int  GigabitEthernet8/0/5.100 
interface GigabitEthernet8/0/5.100 
 vlan-type dot1q 100 
 ip address 172.16.20.1 255.255.255.0 
 user-queue cir 2000 pir 2000 flow-queue fq_test user-group-queue ugq_test outbound 
告警信息

处理过程
如果要想缩小延迟,要考虑以下两个方面:
1,减小buffer中存放的报文数量,对超出的报文进行丢弃。
2.增大该队列的带宽。
整改配置:
1. 拥塞发生时,减少buffer中存放的报文数量
  配置flow-wred,高低门限可以调,建议不要大于5%。
   flow-wred fw_ef
?  color green low-limit 1 high-limit 1 discard-percentage 100
2. 通过配置调大该队列的带宽。
注意:1.对其的高低门限配置上只能是整数,最小是1,也就是8090路由器的极限。
      2.如果将高低门限调为1%,延迟还是很大,只能通过调大该队列的带宽来实现。
      3.调小高低门限,意味着大流量发生是,会有更多的报文丢弃,所以在调试的过程
        中需要权衡延迟和丢包。
根因
1. 8090路由器内部实现上每个队列的深度为8M,并且不可以调整;
2. 队列中报文的延迟取决于buffer中缓存的报文数量和对该队列进行调度的出口速率;
3. buffer中缓存的报文数量和对该队列进行调度的出口速率取决于配置。
其他:user-group-queue中配置的shaping是针对所有用户的,该配置中只有一个用户,并且user-queue cir 2000 pir 2000,说明出接口对所有的队列的总带宽限制为了2M.
从配置上来看,如果发生特别大流量(将这个buffer存放满):
buffer中缓存的报文数量:8M
为EF队列配置的接口带宽:queue ef pq shaping 15 
   (整形速率为15Kps)即:为EF队列配置的接口带宽为15Kbps
并且没有配置flow-wred,导致延迟过大。
如果流量特别大,整个8M的buffer存放满,延迟大约为:8M/15K==533S 
建议与总结

END