诉求很简单,对客户限速,那么麻烦就很多,怎么限?

先普及一下Cisco的qos知识

单速单桶: 单速单桶模式不允许流量突发,当用户的流量速率小于配置的CIR时,报文被认为是conform;当用户的流量大于CIR时直接被认为是exceed(思科exceed华为violate)。

(图中Tc代表桶里令牌的数量,CBS代表令牌桶的容量即Bc)

如果只配置CIR,不指定Bc,那么默认Bc等于1500bytes或者 CIR数值 / 32
 class 100
  police 8000 conform-action transmit  exceed-action drop 
 class 200
  police cir 8000 conform-action transmit  exceed-action drop 
 class 300
  police 8000 1500 conform-action transmit  exceed-action drop 
 class 400
  police cir 8000 bc 1500 conform-action transmit  exceed-action drop

单速双桶: 支持突发流量,用户的流量会出现三种结果: (图中Tc、Te代表桶里令牌的数量,CBS,EBS代表令牌桶的容量即Bc、Be)

小于或等于CIR(也就是符合CIR) (conform)
大于CIR并小于或等于CIR与Be之和(也就是符合两个桶令牌之和)(exceed)
超过CIR与Be之和(也就是超过两个桶令牌之和)(violate)

如果只配置CIR、Bc,不指定Be,那么默认Be等于1500bytes或者CIR数值 / 32。
 class 500
  police 8000 1000 conform-action transmit  exceed-action set-prec-transmit 1 violate-action drop 
 class 600
  police 8000 1000 1300 conform-action transmit  exceed-action set-prec-transmit 1 violate-action drop 
 class 700
  police cir 8000 bc 1000 be 1300 conform-action transmit  exceed-action set-prec-transmit 1 violate-action drop

双速双桶: (图中Tc、Tp代表桶里令牌的数量,CBS,PBS代表令牌桶的容量即Bc、Be)

class 800  
 police cir 8000 bc 1000 pir 8000 be 1200 conform-action transmit  exceed-action transmit  violate-action drop

好,罗嗦了这么多。注意,有可能Cisco的交换机不支持最复杂的1rate,three color,所以你就得更换另外两种方式了。

实战来一下:

policy-map LIMIT-50mbit  
 class class-default
  police cir 50000000 bc 5000000 be 15000000 conform-action transmit exceed-action set-prec-transmit 3 violate-action set-prec-transmit 2

cir为承诺的带宽速率,即需要保证的带宽速率,单位为bps;
bc为普通突发,单位为bytes;
be为最高突发,单位为bytes;
set-prec-transmit,表示设置IP优先级并转发数据包;
注意cir和bc、be的单位是不同的,bc和be需要×8,简单算就是×10;

上面整体命令解释为:承诺带宽50Mbps,普通突发为5Mbytes,最高突发为15Mbytes。当速率小于100Mbps(50+50)是转发数据包,当超过100Mbps小于200Mbps(50+150)是重写IP优先级为3并转发数据包,当超过200Mbps是重写IP优先级为2并转发数据包。

可以变种一下,超了100兆直接drop

  police cir 50000000 bc 5000000 be 15000000 conform-action transmit exceed-action drop

最后在端口应用一下策略即可:

interface GigabitEthernet1/0/22  
 description uplink: uplink [50Mbps-200Mbps]
 switchport access vlan 111
 switchport mode access
 storm-control broadcast level 1.00
 storm-control multicast level 5.00
 storm-control action shutdown
 spanning-tree portfast
 spanning-tree bpdufilter enable
 spanning-tree bpduguard enable
 service-policy input LIMIT-50mbit
 service-policy output LIMIT-50mbit
!
comments powered by Disqus