一、网络说明
  PC1接在Cisco3550 F0/1上,速率为1M
  PC2接在Cisco3550 F0/2上,速率为2M
  Cisco3550G0/1为出口。
  二、详细配置过程
  注:每个接口每个方向只支持一个策略;一个策略可以用于多个接口。因此所有PC下载速率的限制都应该定义在同一个策略(在本例子当中为policy-map user-down),而PC不同速率的区分是在Class-map分别定义。
  1、在交换机上启动QOS
  Switch(config)#mls qos //在交换机上启动QOS
  2、分别定义PC110.10.1.1)和PC210.10.2.1)访问控制列表
  Switch(config)#access-list 10 permit 10.10.1.0 0.0.0.255 //控制pc1上行流量
  Switch(config)#access-list 100 permit any 10.10.1.0 0.0.0.255 //控制pc1下行流量
  Switch(config)#access-list 11 permit 10.10.2.0 0.0.0.255 //控制pc2上行流量
  Switch(config)#access-list 111 permit any 10.10.2.0 0.0.0.255 //控制pc2下行流量
  Ip nat inside destination list 1 pool Webser
  Ip nat inside destination list 2 pool Ftpser
  3、定义类,并和上面定义的访问控制列表绑定
  Switch(config)# class-map user1-up //定义PC1上行的类,并绑定访问列表10
  
Switch(config-cmap)# match access-group 10
  
Switch(config-cmap)# exit
  
Switch(config)# class-map user2-up
  
Switch(config)# class-map user1-down
  Switch(config-cmap)# match access-group 100 //定义PC1下行的类,并绑定访问列表
100
  
Switch(config)# class-map user2-down
  Switch(config-cmap)# match access-group 111 //定义PC2下行的类,并绑定访问列表
111
  Switch(config-cmap)# exit
  4、定义策略,把上面定义的类绑定到该策略
  Switch(config)# policy-map user1-up //定义PC1上行的速率为1M
  
Switch(config-pmap)# class user1-up
  Switch(config-pmap-c)# trust dscp 信任差分服务代码点,用来对每一类流量实施各种QOS策略,用户进来的数据包的DSCP缺省都为
0
  Switch(config-pmap-c)# police 1024000 1024000 exceed-action drop 任何超过策略限制速率的通信流将会被丢弃(bitsbytes

  Switch(config)# policy-map user2-up //定义PC2上行的速率为2M
  Switch(config-pmap)# class user2-up
  Switch(config-pmap-c)# trust dscp
  Switch(config-pmap-c)# police 2048000 1024000 exceed-action drop
  Switch(config)# policy-map user-down
  Switch(config-pmap)# class user1-down
  Switch(config-pmap-c)# trust dscp
  
Switch(config-pmap-c)# police 1024000 1024000 exceed-action drop
  
Switch(config-pmap-c)# exit
  
Switch(config-pmap)# class user2-down
  
Switch(config-pmap-c)# trust dscp
  
Switch(config-pmap-c)# police 2048000 1024000 exceed-action drop
  Switch(config-pmap-c)# exit
  5、在接口上运用策略
  Switch(config)# interface f0/1
  
Switch(config-if)# service-policy input user1-up
  
Switch(config)# interface f0/2
  
Switch(config-if)# service-policy input user2-up
  
Switch(config)# interface g0/1
  Switch(config-if)# service-policy input user-down