思科 典型QoS配置案例

一般的QoS配置不外乎四个步骤:   

 

1,设置ACL匹配应用流量;     

 

2,设置class-map匹配相应ACL或者相应端口等等,不过一般式匹配ACL;     

 

3,设置policy-map匹配class-map,然后定一规则动作;     

 

4,将policy-map绑定到相应的接口上。

 

  下面使用一个比较典型的案例来说明QoS的配置步骤:

 

  需求:路径带宽为622Mbps,四种应用流量,需要保证如下几点:   

 

流量1,某一具体应用流量,永远优先传输,最小带宽保证为365Mbps;     

 

流量2,某一具体应用流量,次优先传输,最小带宽保证为200Mbps;     

 

流量3,此为业务流量,保证在1和2后的其余带宽下传输即可;     

 

流量4,某一具体应用流量,保证在123流量外的带宽下传输即可。

 

  

具体配置如下:

     

 

第一步,定义ACL匹配应用流量:     

 

ip access-list extended tra1_acl     

 

  permit tcp 1.1.1.0 0.0.0.255 1.1.2.0 0.0.0.255 eq 8818     

 

ip access-list extended tra2_acl     

 

  permit tcp 1.1.3.0 0.0.0.255 1.1.4.0 0.0.0.255 eq 901     

 

ip access-list extended tra4_acl     

 

  permit ip 1.1.5.0 0.0.0.255 1.1.6.0 0.0.0.255     

 

第二步,定义class-map匹配相关ACL:     

 

class-map match-all tra1_cmap     

 

  match access-group name tra1_acl     

 

class-map match-all tra2_cmap     

 

  match access-group name tra2_acl     

 

class-map match-all tra4_cmap     

 

  match access-group name tra4_acl     

 

第三步,定义policy-map:     

 

policy-map tra_pmap     

 

  class tra1_cmap     

 

    set precedence 5     

 

   plicy cir 365000000 bc 45000000 be 50000000 conform-action transmitexceed-action set-prec-transmit 3 violate-action set-prec-transmit 2

 

    bandwitch 365000     

 

  class tra2_cmap     

 

    set precedence 4     

 

   policy cir 200000000 bc 30000000 be 33000000 conform-action transmitexceed-action set-prec-transmit 3 violate-action set-prec-transmit 2

 

  class tra4_cmap     

 

    set precedence 1     

 

  class class-default     

 

    set precedence 2    

 

第四步,绑定policy-map于相应的接口:

 

int pos1/0/0

 

  service-policy output tra_pmap

 

至此,配置完毕。

 

通过命令查看policy-map的匹配情况:

 

switch-a#sh policy-map interface pos1/0/0

 

POS1/0/0

 

  Service-policy output: tra_map

 

    Class-map: tra1_cmap (match-all)

 

      66639423781 packets, 74849682635166 bytes

 

      30 second offered rate 260369000 bps, drop rate 0 bps  //匹配此class-map的流量速率

 

      Match: access-group name tra1_acl

 

      Queueing

 

      queue limit 91250 (packets)

 

      (queue depth/total drops/no-buffer drops) 0/0/0

 

      (pkts queued/bytes queued) 66639405294/74849695040832

 

      QoS Set

 

        ip precedence 5

 

          Packets marked 66639423781

 

      police:

 

          cir 365000000 bps, bc 45000000 bytes, be 50000000 bytes  //注意cir、bc和be的单位

 

        conformed 66191701966 packets, 74341131469597 bytes; action: transmit

 

        exceeded 218369922 packets, 232627302399 bytes; action: set-prec-transmit 4

 

        violated 229208950 packets, 275718927918 bytes; action: set-prec-transmit 3

 

        conformed 256761000 bps, exceed 1656000 bps, violate 1939000 bps  //每个action的流量速率,注意这三个值总和应该大致等于上面的总速率;

 

      bandwidth 365000 kbps

 

    Class-map: tra2_cmap (match-all)

 

      11315788699 packets, 7283900643868 bytes

 

      30 second offered rate 10753000 bps, drop rate 0 bps

 

      Match: access-group tra2_acl

 

      Queueing

 

      queue limit 50000 (packets)

 

      (queue depth/total drops/no-buffer drops) 1/0/0

 

      (pkts queued/bytes queued) 11315783713/7283897663316

 

      QoS Set

 

        ip precedence 4

 

          Packets marked 11315788699

 

      police:

 

          cir 200000000 bps, bc 30000000 bytes, be 33000000 bytes

 

        conformed 11315784826 packets, 7283898283723 bytes; action: transmit

 

        exceeded 0 packets, 0 bytes; action: set-prec-transmit 3

 

        violated 0 packets, 0 bytes; action: set-prec-transmit 2

 

        conformed 10753000 bps, exceed 0 bps, violate 0 bps

 

      bandwidth 200000 kbps

 

    Class-map: tra4_cmap (match-all)

 

      1751296887 packets, 2633425803184 bytes

 

      30 second offered rate 149000 bps, drop rate 0 bps

 

      Match: access-group name tra4_acl

 

      QoS Set

 

        ip precedence 1

 

          Packets marked 1751296887

 

    Class-map: class-default (match-any)

 

      22956539608 packets, 17721898306471 bytes

 

      30 second offered rate 196094000 bps, drop rate 528000 bps

 

      Match: any

 

      queue limit 14250 (packets)

 

      (queue depth/total drops/no-buffer drops) 0/9004701/0

 

      (pkts queued/bytes queued) 24700897941/20350618920708

 

      QoS Set

 

        ip precedence 2

 

          Packets marked 22958504481

 

switch-a#

 

必要命令解释:

 

plicy cir 365000000 bc 45000000 be 50000000 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优先级并转发数据包;

 

上面整体命令解释为:承诺带宽365Mbps,普通突发为450Mbps,最高突发为500Mbps。当速率小于450Mbps是转发数据包,当超 过 450Mbps小于500Mbps是重写IP优先级为3并转发数据包,当超过500Mbps是重写IP优先级为2并转发数据包。

你可能感兴趣的:(接口,流量,的)