Cisco交換機下,該如何進行QOS限速配置?如何限制BT下載?本博文將用詳細實例為您詳解。
實例1:思科交換機上QOS限速問題
用於交換機上對專線用戶的帶寬進行控制,交換機平時都是10/100/1000、三種速率的,對於其它的速率需要進行QOS進行限速,也可以對一些端口進行限制,做策略,對一些端口進行限制。
一、網絡說明
user1_PC1接在Cisco3560F0/1上,速率為1M;
ip_add192.168.1.1/24
user2_PC2接在Cisco3560F0/2上,速率為2M;
ip_add192.168.2.1/24
Cisco3560的G0/1為出口,或級聯端口。
二、詳細配置過程
注:每個接口每個方向只支持一個策略;一個策略可以用於多個接口。因此所有PC的下載速率的限制都應該定義在同一個策略(在本例子當中為policy-mapuser-down),而PC不同速率的區分是在Class-map分別定義。
1、在交換機上啟動QOS
Switch(config)#mlsqos//在交換機上啟動QOS
2、分別定義PC1(192.168.1.1)和PC2(192.168.2.1)訪問控制列表
Switch(config)#access-list1permit192.168.1.00.0.0.255//控制pc1上行流量
Switch(config)#access-list101permitany192.168.1.00.0.0.255//控制pc1下行流量
Switch(config)#access-list2permit192.168.1.200.0.0.255//控制pc2上行流量
Switch(config)#access-list102permitany192.168.2.10.0.0.255//控制pc2下行流量
3、定義類,並和上面定義的訪問控制列表綁定
Switch(config)#class-mapuser1-up//定義PC1上行的類,並綁定訪問列表1
Switch(config-cmap)#matchaccess-group1
Switch(config-cmap)#exit
Switch(config)#class-mapuser2-up
Switch(config-cmap)#matchaccess-group2//定義PC2上行的類,並綁定訪問列表2
Switch(config-cmap)#exit
Switch(config)#class-mapuser1-down
Switch(config-cmap)#matchaccess-group101//定義PC1下行的類,並綁定訪問列表101
Switch(config-cmap)#exit
Switch(config)#class-mapuser2-down
Switch(config-cmap)#matchaccess-group102//定義PC2下行的類,並綁定訪問列表102
Switch(config-cmap)#exit
4、定義策略,把上面定義的類綁定到該策略
Switch(config)#policy-mapuser1-up//定義PC1上行的速率為1M,超過的丟棄
Switch(config-pmap)#classuser1-up
Switch(config-pmap-c)#trustdscp
Switch(config-pmap-c)#police10000001000000exceed-actiondrop
Switch(config)#policy-mapuser2-up//定義PC2上行的速率為2M,超過丟棄
Switch(config-pmap)#classuser2-up
Switch(config-pmap-c)#trustdscp
Switch(config-pmap-c)#police20000002000000exceed-actiondrop
Switch(config)#policy-mapuser-down
Switch(config-pmap)#classuser1-down
Switch(config-pmap-c)#trustdscp
Switch(config-pmap-c)#police10000001000000exceed-actiondrop
Switch(config-pmap-c)#exit
Switch(config-pmap)#classuser2-down
Switch(config-pmap-c)#trustdscp
Switch(config-pmap-c)#police20000002000000exceed-actiondrop
Switch(config-pmap-c)#exit
5、在接口上運用策略
Switch(config)#interfacef0/1
Switch(config-if)#service-policyinputuser1-up
Switch(config)#interfacef0/2
Switch(config-if)#service-policyinputuser2-up
Switch(config)#interfaceg0/1
Switch(config-if)#service-policyinputuser-down
實例2:限制BT下載的QOS配置實例
一、找出BT程序開放的連接端口,默認為6881至6889.
二、將局域網內經常拉BT的IP統計出來,建立擴展訪問列表如下:
ExtendedIPaccesslistbtdownloadpermittcpanyhost192.168.1.120range68816889
permittcpanyhost192.168.1.135range68816889permittcpanyhost192.168.1.146
range68816889permittcpanyhost192.168.1.159range68816889permittcpanyhost
192.168.1.211range68816889permittcpanyhost192.168.1.223range68816889
三、建立class-mapclass_bt
Cisco(config)#class-mapclass_btCisco(config-cmap)#matchaccess-groupnamebtdownload
四、建立policy-mapqos_bt進行速率限制
Cisco(config)#policy-mapqos_btCisco(config-pmap)#classclass_btCisco(config-pmap-c)#police50000008000exceed-actiondrop
五、QOS配置完畢了,不過在將QOS應用到端口前,要搞清楚一個概念,QOS機制不能與flowcontrol(流控制)功能共存在同一個端口上。關於flowcontrol——流控制在直連的以太端口上啟用,在擁塞期間允許另一端擁塞的節點暫停鏈路運作來控制流量速率。如果一個端口發生擁塞並且不能接收任何更多的流量,他將通知對端端口停止發送直到這種擁塞情況消失。當本地設備在他本地檢測到了任何擁塞,他能夠發送一個暫停幀通知鏈路伙伴或者遠程設備已發生擁塞。緊隨收到暫停幀之後,遠程設備停止發送任何數據包,這樣防止在擁塞期間丟棄任何一個數據包。流控制可以用兩種方式設計,對稱和不對稱。對稱設計適合於點到點的鏈路,而不對稱設計適合於輻射型節點連接。輻射型節點中中心路由器可以中斷末端系統,而反之就不行。用命令設置接口的發送或接收暫停幀為on,off或desired.(interface)flowcontrol{receive|send}{on|off|desired}缺省快速以太端口是receiveoff和sendoff.在Catalyst3550交換機上,GBT端口能夠接收和發送暫停幀;快速以太端口只能夠接收暫停幀。因此,對快速以太端口來說,只能用sendoff來描述其狀態。
六、將QOS應用到相應端口上
Cisco(config-if)#service-policyinputqos_bt
QoS其他內容
QoS配置四個步驟:
1,設置ACL匹配應用流量;
2,設置class-map匹配相應ACL或者相應端口等等,不過一般式匹配ACL;
3,設置policy-map匹配class-map,然後定一規則動作;
4,將policy-map綁定到相應的接口上。
當然需要注意的是qos已經全局enable,默認情況先qos是disable的。使用全局命令mlsqos來enable,可以通過showmlsqos來查看是否enable。(mls:multilayerswitchinginformation)
QoS命令詳解
Basicintroduction
marking就是修改IP優先級或者DSCP,但是由於IP優先級和DSCP都是占用TOS字段,後者相當於前者的擴展,所以不能同
時設置這兩種值,如果同時設置了這兩種值,那麼只有IPDSCP的值生效。
標記是後續很多QOS策略應用的基本,使用的是policymap。
Configurations
1.定義classmap
Classmap是一個匹配表,類似於ACL。所有的policymap實質上是對classmap進行操作的
nimokaka(config)#class-map[match-all|match-any]{map-name}----參數中match-all表示匹配所有條件,match-any表示至少符合一個條件
2.classmap的匹配
nimokaka(config-cmap)#
matchaccess-group{ACL}―――――――――――――――匹配IPACL(主要就是對應數據包了)
matchprotocol{protocol}―――――――――――――――匹配協議(這個在NBAR—基於網絡應用中使用)
matchinput-interface{interface}―――――――――――――――匹配進站接口
matchqos-group{GroupID}―――――――――――――――匹配組ID(不知道干啥的)
matchdestination-address{macmac-address}―――――――――――――――匹配目標MAC地址
matchsource-address{macmac-address}―――――――――――――――匹配源MAC地址
matchip{dscpdscp}――――――――――――――――――――匹配IPDSCP值
matchip{precedenceprecedence}―――――――――――――――匹配IP優先級
matchclass-map{map-name}―――――――――――――――匹配classmap(classmap嵌套)
matchvlan{vlan-id}―――――――――――――――匹配VLAN
3.設置policymap
nimokaka(config)#policy-map{policy-name}
nimokaka(config-pmap)#class{class-map}
4.配置優先級和DSCP值
nimokaka(config-pmap-c)#
一些用於標記的動作選項:
setip{precedenceprecedence}―――――――――――――――設置IP優先級
setip{dscpdscp}―――――――――――――――設置IPDSCP值
setqos-group{GroupID}―――――――――――――――設置組ID
setcos{cos}―――――――――――――――設置CoS值
priority{kbps|percentpercent}[Bc]―――――――――――――――定義優先級流量的保留的帶寬(Kbor%)以及突發流量
bandwidth{kbps|percentpercent}―――――――――――――――定義保留的帶寬(Kbor%)
police{CIRBcBe}conform-action{action}exceed-action{actio