我正在努力了解使用SRR 调度程序的整形和共享的影响。鉴于接口上的这 2 个命令:
switch(config-if)#srr-queue bandwidth share 40 20 30 20
switch(config-if)#srr-queue bandwidth shape 0 20 0 0
在配置中给我这个:
switch#show mls qos interface gigabitEthernet 1/0/5 queueing | include Sha
Shaped queue weights (absolute) : 0 20 0 0
Shared queue weights : 40 20 30 20
我可以理解 share 命令计算带宽如下:
Q1/(Q1+Q2+Q3+Q4)*100
具有以下值:
Q1=40/(40+20+30+20)*100
所以如果我用上面的值填充它,我会得到每个队列的以下带宽分配:
Q1=36%
Q2=18%
Q3=27%
Q4=18%
但是现在,整形命令开始发挥作用。思科文档说明如下:
如果配置权重为 0,则对应的队列以共享模式运行。srr-queue bandwidth shape 命令指定的权重被忽略,队列的srr-queue bandwidth share interface 配置命令指定的权重生效。在同一队列集中配置队列以进行整形和共享时,请确保为整形配置最小数量的队列。
因此,接口上的默认配置如下所示:
switch#show mls qos interface gigabitEthernet 1/0/6 queueing | include Sha
Shaped queue weights (absolute) : 25 0 0 0
Shared queue weights : 25 25 25 25
因此,据我了解,queue1 的 25 共享权重被忽略,因为该队列正在成形。如果 queue2 已满,它可以从 queue3 和 queue4 中获取未使用的权重,使其最大权重为 75。默认)我们只能利用 75% 的接口带宽?
平台是 Cisco Catalyst 2960X 交换机。