思科交換機QOS限速及限制BT下載配置實例

Cisco交換機下,該如何進行QOS限速配置?如何限制BT下載?本博文將用詳細實例爲您詳解。

實例1:思科交換機上QOS限速問題

用於交換機上對專線用戶的帶寬進行控制,交換機平時都是10/100/1000、三種速率的,對於其它的速率需要進行QOS進行限速,也可以對一些端口進行限制,做策略,對一些端口進行限制。

一、網絡說明

user1_PC1接在Cisco3560 F0/1上,速率爲1M;

ip_add 192.168.1.1/24

user2_PC2接在Cisco3560 F0/2上,速率爲2M;

ip_add 192.168.2.1/24

Cisco3560的G0/1爲出口,或級聯端口。

二、詳細配置過程

注:每個接口每個方向只支持一個策略;一個策略可以用於多個接口。因此所有PC的下載速率的限制都應該定義在同一個策略(在本例子當中爲policy-map user-down),而PC不同速率的區分是在Class-map分別定義。

1、在交換機上啓動QOS

Switch(config)#mls qos //在交換機上啓動QOS

2、分別定義PC1(192.168.1.1)和PC2(192.168.2.1)訪問控制列表

Switch(config)#access-list 1 permit 192.168.1.0 0.0.0.255 //控制pc1上行流量

Switch(config)#access-list 101 permit any 192.168.1.0 0.0.0.255 //控制pc1下行流量

Switch(config)#access-list 2 permit 192.168.1.2 0 0.0.0.255 //控制pc2上行流量

Switch(config)#access-list 102 permit any 192.168.2.1 0.0.0.255 //控制pc2下行流量

3、定義類,並和上面定義的訪問控制列表綁定

Switch(config)# class-map user1-up //定義PC1上行的類,並綁定訪問列表1

Switch(config-cmap)# match access-group 1

Switch(config-cmap)# exit

Switch(config)# class-map user2-up

Switch(config-cmap)# match access-group 2 //定義PC2上行的類,並綁定訪問列表2

Switch(config-cmap)# exit

Switch(config)# class-map user1-down

Switch(config-cmap)# match access-group 101 //定義PC1下行的類,並綁定訪問列表101

Switch(config-cmap)# exit

Switch(config)# class-map user2-down

Switch(config-cmap)# match access-group 102 //定義PC2下行的類,並綁定訪問列表102

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

Switch(config-pmap-c)# police 1000000 1000000 exceed-action drop

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 2000000 2000000 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 1000000 1000000 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 2000000 2000000 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


實例2:限制BT下載的QOS配置實例

一、找出BT程序開放的連接端口,默認爲6881至6889.

二、將局域網內經常拉BT的IP統計出來,建立擴展訪問列表如下:

Extended IP access list btdownloadpermit tcp any host 192.168.1.120 range 6881 6889permit tcp any host 192.168.1.135 range 6881 6889permit tcp any host 192.168.1.146 range 6881 6889permit tcp any host 192.168.1.159 range 6881 6889permit tcp any host 192.168.1.211 range 6881 6889permit tcp any host 192.168.1.223 range 6881 6889

三、建立class-map class_bt

Cisco(config)#class-map class_btCisco(config-cmap)#match access-group name btdownload

四、建立policy-map qos_bt 進行速率限制

Cisco(config)#policy-map qos_btCisco(config-pmap)#class class_btCisco(config-pmap-c)#police 5000000 8000 exceed-action drop

五、 QOS配置完畢了,不過在將QOS應用到端口前,要搞清楚一個概念,QOS機制不能與flowcontrol(流控制)功能共存在同一個端口上。關於 flowcontrol——流控制在直連的以太端口上啓用,在擁塞期間允許另一端擁塞的節點暫停鏈路運作來控制流量速率。如果一個端口發生擁塞並且不能接收任何更多的流量,他將通知對端端口停止發送直到這種擁塞情況消失。當本地設備在他本地檢測到了任何擁塞,他能夠發送一個暫停幀通知鏈路夥伴或者遠程設備已發生擁塞。緊隨收到暫停幀之後,遠程設備停止發送任何數據包,這樣防止在擁塞期間丟棄任何一個數據包。流控制可以用兩種方式設計,對稱和不對稱。對稱設計適合於點到點的鏈路,而不對稱設計適合於輻射型節點連接。輻射型節點中中心路由器可以中斷末端系統,而反之就不行。用命令設置接口的發送或接收暫停幀爲on,off或desired.(interface) flowcontrol {receive | send}{on | off | desired}缺省快速以太端口是receive off和send off.在Catalyst3550交換機上,GBT端口能夠接收和發送暫停幀;快速以太端口只能夠接收暫停幀。因此,對快速以太端口來說,只能用 send off來描述其狀態。

六、將QOS應用到相應端口上

Cisco(config-if)#service-policy input qos_bt

QoS其他內容

QoS配置四個步驟:

1,設置ACL匹配應用流量;

2,設置class-map匹配相應ACL或者相應端口等等,不過一般式匹配ACL;

3,設置policy-map匹配class-map,然後定一規則動作;

4,將policy-map綁定到相應的接口上。

當然需要注意的是qos已經全局enable,默認情況先qos是disable的。使用全局命令mls qos來enable,可以通過show mls qos來查看是否enable。(mls:multilayer switching information)

QoS命令詳解

Basic introduction

marking就是修改IP優先級或者DSCP,但是由於IP優先級和DSCP都是佔用TOS字段,後者相當於前者的擴展,所以不能同

時設置這兩種值,如果同時設置了這兩 種值,那麼只有IP DSCP 的值生效。

標記是後續很多QOS策略應用的基本,使用的是policy map。

Configurations

1.定義class map

Class map是一個匹配表,類似於ACL。所有的policy map實質上是對class map進行操作的

nimokaka(config)#class-map [match-all|match-any] {map-name}----參數中match-all 表示匹配所有條件,match-any表示至少符合一個條件

2.class map的匹配

nimokaka(config-cmap)#

match access-group {ACL} ―――――――――――――――匹配IP ACL (主要就是對應數據包了)

match protocol {protocol} ―――――――――――――――匹配協議(這個在NBAR—基於網絡應用中使用)

match input-interface {interface} ―――――――――――――――匹配進站接口

match qos-group {Group ID} ―――――――――――――――匹配組ID(不知道幹啥的)

match destination-address {mac mac-address} ―――――――――――――――匹配目標MAC 地址

match source-address {mac mac-address} ―――――――――――――――匹配源MAC 地址

match ip {dscp dscp} ――――――――――――――――――――匹配IP DSCP 值

match ip {precedence precedence} ―――――――――――――――匹配IP 優先級

match class-map {map-name} ―――――――――――――――匹配class map(class map嵌套)

match vlan {vlan-id} ―――――――――――――――匹配VLAN

3.設置policy map

nimokaka(config)#policy-map {policy-name}

nimokaka(config-pmap)#class {class-map}

4.配置優先級和DSCP值

nimokaka(config-pmap-c)#

一些用於標記的動作選項:

set ip {precedence precedence} ―――――――――――――――設置IP優先級

set ip {dscp dscp} ―――――――――――――――設置IP DSCP 值

set qos-group {Group ID} ―――――――――――――――設置組ID

set cos {cos} ―――――――――――――――設置CoS 值

priority {kbps|percent percent} [Bc] ―――――――――――――――定義優先級流量的保留的帶寬(Kb or %)以及突發流量

bandwidth {kbps|percent percent} ―――――――――――――――定義保留的帶寬(Kb or %)

police {CIR Bc Be} conform-action {action} exceed-action {action} [violate-action{action}]――――使用令牌桶算法進行限速

random-detect 啓用WRED

queue-limit {packets} 定義隊列中數據包的最大個數

service-policy {policy-map} 使用別的策略進行嵌套,做爲match語句匹配的標準

shape {average|peak} {CIR [Bc] [Be]} 定義CIR,Bc以及Be進行整形

5.將配置掛接到接口上

nimokaka(config-if)service-policy [input|output] policy-name

6.檢查配置

nimokaka#show policy-map [policy-name]

查看接口的policy map 信息:

nimokaka#show policy-map interface [interface]

Case

把來自192.168.10.0/24 的出站telnet 流量的IP優先級設置爲5,其他的出站流量的IP 優先級設置爲1:

access-list 100 permit tcp 192.168.10.0 0.0.0.255 any eq telnet

class-map match-all telnet

match access-group 100

policy-map nimokaka

class telnet

set ip precedence 5

class class-default

set ip precedence 1

interface Serial1

clock rate 100

no shut

ip address 1.1.1.1 255.255.255.252

service-policy output nimokaka

PS

Class-map嵌套:有兩點理由:在創建class map的時候去調用一個已有的class map

1、管理方便,在已有的基礎上增加一個修改進行平滑的過度。

2、允許用戶在同一個class map裏分別使用匹配所有(match-all)和匹配任何(match-any)。

比如4個匹配標準:A、B、C和D。現在想讓class map 匹配A,或匹配B,或同時匹配C和D,就可以使用class map的嵌套:

創建一個新的class map,定義爲匹配所有(match-all)新標 準爲匹配E即同時匹配C和D;然後定義另一個匹配任何

(match-any)的class map,去匹配A, 或B,或E(即同時匹配C 和D)。

交換機QoS的配置方法(cisco3550/3560、cisco3750)

(一)配置流量分類和策略

1. 全局#class-map [match-all(默認:完全符合)/Match-any] ―――(建立一個流量分類的策略)

2. Map#match access-group ――――――(使用ACL進行流量分類,可以重複配置)

3. Map#match input-interface <接口>――――――(基於接口進行流量分類)

4. Map#match vlan <#>――――――――――――(基於vlan進行流量分類)

5. Map#match protocol ……――――――――(基於協議進行流量分類)

(二) 定義策略

1. 全局#policy-map ――――――――――――(建立一個策略文件)

2. Pm#class ―――――――――――(對定義好的分類流量作策略)

3. Pm-c#bandwidth <值/百分比> ――――――――――――――(用於設置權值*佔用接口的帶寬比例)

4. Pm-c#set ip precedence <0-7> ―――――――――――――(設置marking值)

5. Pm-c#set cos……

6. Pm-c#set dscp……

(三) 加載策略

1. 接口#service-policy  ――――――――――(在接口上加載策略)

(四) 全局#mls qos ――――――――――――――――――――――(打開開QoS功能)

(五) 接口#mls qos trust ――――――(在接口上設置信任狀態和信任邊界,一旦接口上收到相應Marking的值,則根據策略進行處理)

八. 顯示命令

(一) #show class-map

交換機端口限速的配置方法(cisco3550/3560、cisco3750)

mls qos

!

class-map match-all IPclass ―――――――――――――――――所有抓取所有流量

match ip dscp 0

!

!

policy-map rate-256K

class IPclass

police 256000 20000 exceed-action drop

policy-map rate-512K

class IPclass

police 512000 20000 exceed-action drop

policy-map rate-2M

class IPclass

police 2096000 200000 exceed-action drop

policy-map rate-6M

class IPclass

police 6296000 600000 exceed-action drop

policy-map rate-4M

class IPclass

police 4200000 300000 exceed-action drop

policy-map rate-800M

class IPclass

police 800000000 800000 exceed-action drop ―――定義policy-map,800M開始延時增加,到達800.8M後開始丟棄(丟包)

interface FastEthernet0/22

service-policy input rate-256K ―――――――――――――――――――應用policy到交換機端口上

service-policy output rate-256K


(二) #show policy-map

(三) #show policy-map interface <接口> ――――――――――(顯示接口加載的策略)


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章