Cisco IOS QoS – Catalyst 3560 Input Queueの設定

スポンサーリンク

Catalyst 3560にはルータとは異なる独自のQoSが存在します。Catalyst 3560には2つの入力キューが存在し、SRR (Shared Round Robin)という特殊なアルゴリズムによってパケットの割り振りを行います。

コマンド一覧

このシナリオで重要なコマンド一覧は以下の通りです。

Switch(config)# mls qos
Switch(config)# mls qos srr-queue input priority-queue <id> bandwidth <percent>
Switch(config)# mls qos srr-queue input bandwidth <weight1> <weight2>
Switch(config)# mls qos srr-queue input dscp-map queue <id> [ threshold <id> ] <dscp 1> <dscp 2> ... <dscp N>
Switch(config)# mls qos srr-queue input cos-map queue <id> [ threshold <id> ] <cos 1> <cos 2> ... <cos N>

構成図

以下の構成で動作確認を行います。

 [physical diagram]
    +------+f0/0    +------+f0/13   +------+f0/1    +------+
    |  R1  +--------+ SW 1 +--------+ SW 2 +--------+  R2  |
    +------+    f0/1+------+   f0/13+------+    f0/0+------+

 [logical diagram]
           192.168.12.0/24
          f0/0        f0/0
    +------+.1        .1+------+
    |      +------------+      |
    |  R1  |            |  R2  |
    |      +------------+      |
    +------+.2        .2+------+
         f0/0.21    f0/0.21
          192.168.21.0/24

 [R1]
ipx routing
!
interface FastEthernet0/0
 ip address 192.168.12.1 255.255.255.0
!
interface FastEthernet0/0.21
 encapsulation dot1Q 21
 ip address 192.168.21.1 255.255.255.0
 ipx network 21 encapsulation SNAP
!
line vty 0 4
 password cisco
 login

 [R2]
ipx routing
!
interface FastEthernet0/0
 ip address 192.168.12.2 255.255.255.0
!
interface FastEthernet0/0.21
 encapsulation dot1Q 21
 ip address 192.168.21.2 255.255.255.0
 ipx network 21 encapsulation SNAP
!
line vty 0 4
 password cisco
 login

 [SW1]
vlan 12,21
!
interface FastEthernet0/1
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 12
 switchport mode trunk
!
interface FastEthernet0/13
 switchport trunk encapsulation dot1q
 switchport mode trunk
!
interface range FastEthernet0/14 - 21
 shutdown

 [SW2]
vlan 12,21
!
interface FastEthernet0/1
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 12
 switchport mode trunk
!
interface FastEthernet0/13
 switchport trunk encapsulation dot1q
 switchport mode trunk
!
interface range FastEthernet0/14 - 21
 shutdown

設定全文は下記ファイルです。詳細設定は下記を参照ください。

R1
!
version 12.4
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R1
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
no network-clock-participate slot 1
no network-clock-participate wic 0
ip cef
!
!
!
!
!
ipx routing 000f.8f4f.ad60
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface FastEthernet0/0
 ip address 192.168.12.1 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/0.21
 encapsulation dot1Q 21
 ip address 192.168.21.1 255.255.255.0
 ipx network 21 encapsulation SNAP
!
interface Serial0/0
 no ip address
 shutdown
!
interface Serial0/1
 no ip address
 shutdown
!
!
!
ip http server
no ip http secure-server
!
!
!
!
!
!
!
control-plane
!
!
!
!
!
!
!
!
!
!
line con 0
 logging synchronous level 0 limit 20
line aux 0
line vty 0 4
 login
!
!
end
R2
!
version 12.4
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname R2
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
no network-clock-participate slot 1
no network-clock-participate wic 0
ip cef
!
!
!
!
!
ipx routing 000d.655b.9740
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
interface FastEthernet0/0
 ip address 192.168.12.2 255.255.255.0
 duplex auto
 speed auto
!
interface FastEthernet0/0.21
 encapsulation dot1Q 21
 ip address 192.168.21.2 255.255.255.0
 ipx network 21 encapsulation SNAP
!
interface Serial0/0
 no ip address
 shutdown
!
interface Serial0/1
 no ip address
 shutdown
!
!
!
ip http server
no ip http secure-server
!
!
!
!
!
!
!
control-plane
!
!
!
!
!
!
!
!
!
!
line con 0
 logging synchronous level 0 limit 20
line aux 0
line vty 0 4
 password cisco
 login
!
!
end
SW1
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW1
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
system mtu routing 1500
ip subnet-zero
!
!
!
!
!
!
!
!
!
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
!
!
!
interface FastEthernet0/1
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 12
 switchport mode trunk
!
interface FastEthernet0/2
!
interface FastEthernet0/3
!
interface FastEthernet0/4
!
interface FastEthernet0/5
!
interface FastEthernet0/6
!
interface FastEthernet0/7
!
interface FastEthernet0/8
!
interface FastEthernet0/9
!
interface FastEthernet0/10
!
interface FastEthernet0/11
!
interface FastEthernet0/12
!
interface FastEthernet0/13
 switchport trunk encapsulation dot1q
 switchport mode trunk
!
interface FastEthernet0/14
 shutdown
!
interface FastEthernet0/15
 shutdown
!
interface FastEthernet0/16
 shutdown
!
interface FastEthernet0/17
 shutdown
!
interface FastEthernet0/18
 shutdown
!
interface FastEthernet0/19
 shutdown
!
interface FastEthernet0/20
 shutdown
!
interface FastEthernet0/21
 shutdown
!
interface FastEthernet0/22
!
interface FastEthernet0/23
!
interface FastEthernet0/24
!
interface GigabitEthernet0/1
!
interface GigabitEthernet0/2
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
!
!
control-plane
!
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
end
SW2
version 12.2
no service pad
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname SW2
!
boot-start-marker
boot-end-marker
!
!
no aaa new-model
system mtu routing 1500
ip subnet-zero
!
!
!
!
!
!
!
!
!
!
spanning-tree mode pvst
spanning-tree extend system-id
!
vlan internal allocation policy ascending
!
!
!
!
interface FastEthernet0/1
!
interface FastEthernet0/2
 switchport trunk encapsulation dot1q
 switchport trunk native vlan 12
 switchport mode trunk
!
interface FastEthernet0/3
!
interface FastEthernet0/4
!
interface FastEthernet0/5
!
interface FastEthernet0/6
!
interface FastEthernet0/7
!
interface FastEthernet0/8
!
interface FastEthernet0/9
!
interface FastEthernet0/10
!
interface FastEthernet0/11
!
interface FastEthernet0/12
!
interface FastEthernet0/13
 switchport trunk encapsulation dot1q
 switchport mode trunk
!
interface FastEthernet0/14
 shutdown
!
interface FastEthernet0/15
 shutdown
!
interface FastEthernet0/16
 shutdown
!
interface FastEthernet0/17
 shutdown
!
interface FastEthernet0/18
 shutdown
!
interface FastEthernet0/19
 shutdown
!
interface FastEthernet0/20
 shutdown
!
interface FastEthernet0/21
 shutdown
!
interface FastEthernet0/22
!
interface FastEthernet0/23
!
interface FastEthernet0/24
!
interface GigabitEthernet0/1
!
interface GigabitEthernet0/2
!
interface Vlan1
 no ip address
 shutdown
!
ip classless
ip http server
ip http secure-server
!
!
!
control-plane
!
!
line con 0
 logging synchronous level 0 limit 20
line vty 0 4
 login
line vty 5 15
 login
!
end

仕様説明

mls qos

Catalyst 3560はCoS値(またはDSCP)に基づくinput queueを実装しています。この機能を有効にするには、mls qosを有効にする必要があります。

Switch(config)# mls qos

priority

Catalyst 3560には、2つのinput queueが存在します。以下のコマンドで、priority queueの設定と各キューの重み付けを定義する事ができます。

Switch(config)# mls qos srr-queue input priority-queue <id> bandwidth <percent>
Switch(config)# mls qos srr-queue input bandwidth <weight1> <weight2>

例えば以下のような設定ならば、全処理時間のうち20%がqueue 1の処理を最優先で行います。残りの80%がbandwidthコマンドで指定して重みに基づいて処理されます。つまり、80%の1/4がqueue1の処理に充てられ、80%の3/4がqueue2の処理に割り当てられます。

Switch(config)# mls qos srr-queue input priority-queue 1 bandwidth 20
Switch(config)# mls qos srr-queue input bandwidth 1 3

以下のコマンドで、どの優先度のパケットがどのqueueに格納されるかを定義します。(thresholdの説明は後述します)

Switch(config)# mls qos srr-queue input dscp-map queue <id> [ threshold <id> ] <dscp 1> <dscp 2> ... <dscp N>
Switch(config)# mls qos srr-queue input cos-map queue <id> [ threshold <id> ] <cos 1> <cos 2> ... <cos N>

WTP(weighted tail drop)

Catalyst 3560はWTPと呼ばれる優先度に基づいたqueueingを行います。

まず、queue 1, queue 2のそれぞれに割り当てるキュー長の比率を定義します。

Switch(config)# mls qos srr-queue input buffer <percent1> <percent2>

各キューに対して3段階の閾値を定義します。threshold1, threshold2が定義可能な値で、threshold3は100%固定です。

Switch(config)# mls qos srr-queue input threshold <queue-id> <threshold1> <threshold2>

以下のコマンドで、どの優先度のパケットが、どのqueueに格納され、どのthresholdが適用されるかを定義します。

Switch(config)# mls qos srr-queue input dscp-map queue <id> threshold <id> <dscp 1> <dscp 2> ... <dscp N>
Switch(config)# mls qos srr-queue input cos-map queue <id> threshold <id> <cos 1> <cos 2> ... <cos N>

priority

設定投入

以下の設定をSW1に投入し、queue1, queue2の受信比率を変更します。

 [SW1]
mls qos
mls qos srr-queue input priority-queue 2 bandwidth 20
mls qos srr-queue input bandwidth 1 3
mls qos srr-queue input cos-map queue 1 0 1 2 3 4 6 7
mls qos srr-queue input cos-map queue 2 5
!
interface FastEthernet0/1
 mls qos trust cos

設定確認

show runにより設定を確認します。なお、デフォルト設定と変わらないコマンドはshow runで表示されません。

 [SW1]
SW1#show running-config | include ^mls
mls qos srr-queue input bandwidth 1 3
mls qos srr-queue input priority-queue 2 bandwidth 20
mls qos
SW1#

queue1, queue2の受信比率は以下のコマンドにより確認できます。

 [SW1]
SW1#show mls qos input-queue
Queue     :       1       2
----------------------------------------------
buffers   :      90      10
bandwidth :       1       3
priority  :       0      20
threshold1:     100     100
threshold2:     100     100
SW1#

cosとqueue割り当ての関係は以下のコマンドで確認できます。

 [SW1]
SW1#show mls qos maps cos-input-q
   Cos-inputq-threshold map:
              cos:  0   1   2   3   4   5   6   7
              ------------------------------------
  queue-threshold: 1-1 1-1 1-1 1-1 1-1 2-1 1-1 1-1


SW1#

WTP

設定投入

以下の設定をSW1に投入します。cos 0, 1はqueueの60%でdropされるようにし、cos 2, 3, 4はqueueの80%でdropされるようにします。

 [SW1]
mls qos
mls qos srr-queue input priority-queue 2 bandwidth 20
mls qos srr-queue input bandwidth 1 3
mls qos srr-queue input buffers 85 15
mls qos srr-queue input cos-map queue 1 threshold 1 0 1
mls qos srr-queue input cos-map queue 1 threshold 2 2 3 4
mls qos srr-queue input cos-map queue 1 threshold 3 6 7
mls qos srr-queue input cos-map queue 2 5
mls qos srr-queue input threshold 1 60 80

設定確認

確認コマンドは以下の通りです。

 [SW1]
SW1#show running-config | include ^mls
mls qos srr-queue input bandwidth 1 3
mls qos srr-queue input threshold 1 60 80
mls qos srr-queue input buffers 85 15
mls qos srr-queue input priority-queue 2 bandwidth 20
mls qos srr-queue input cos-map queue 1 threshold 2  2 3 4
mls qos srr-queue input cos-map queue 1 threshold 3  6 7
mls qos
SW1#
SW1#
SW1#show mls qos input-queue
Queue     :       1       2
----------------------------------------------
buffers   :      85      15
bandwidth :       1       3
priority  :       0      20
threshold1:      60     100
threshold2:      80     100
SW1#
SW1#
SW1#show mls qos maps cos-input-q
   Cos-inputq-threshold map:
              cos:  0   1   2   3   4   5   6   7
              ------------------------------------
  queue-threshold: 1-1 1-1 1-2 1-2 1-2 2-1 1-3 1-3


SW1#
タイトルとURLをコピーしました