スイッチ : Cisco Catalyst 3750 シリーズ スイッチ

Cisco Catalyst 3750 の QoS 設定例

2015 年 11 月 26 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2008 年 2 月 21 日) | 英語版 (2015 年 8 月 22 日) | フィードバック


目次


概要

Cisco Catalyst 3750 スイッチは、分類、マーキング、ポリシング、キューイング、スケジューリングなどのさまざまな QoS 機能をサポートしています。 このドキュメントでは、これらの QoS 機能と設定例を説明しています。

前提条件

要件

QoS の設定』に関する知識があることが推奨されます。

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づくものです。

  • Cisco Catalyst 3750 スイッチ:WS-C3750-24TS

  • Cisco IOS(R) ソフトウェア リリース 12.2(35)SE2

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

QoS の概要

QoS を使用すると、他の種類のトラフィックを犠牲にしてある種類のトラフィックを優先的に取り扱うことができます。 QoS ラベルを使用すると、トラフィックを差別化できます。 レイヤ 3 IP ヘッダーで最も一般的に使用される 2 つの QoS ラベルは、IP precedence フィールドと DSCP フィールドです。 レイヤ 2 フレーム ヘッダーの QoS ラベルは、Class of Service(CoS; サービス クラス)と呼ばれます。 Catalyst スイッチの QoS ツールによる優先処理は、レイヤ 3 QoS ラベルまたはレイヤ 2 QoS ラベルのいずれかに基づいて行えます。 このドキュメントでは、Cisco Catalyst スイッチにおけるレイヤ 2 およびレイヤ 3 QoS ラベルを理解できるようにする、さまざまな例を紹介します。

/image/gif/paws/91862/cat3750-qos-config1.gif

QoS を使用しない Cisco Catalyst 3750 スイッチ

Catalyst 3750 スイッチでは、デフォルトでは QoS が無効になっています。 QoS が無効である間は、すべてのフレーム/パケットは変更されることなくスイッチを通過します。 たとえば、CoS が 5 であり、フレーム内のパケットに DSCP EF が割り当てられているフレームがスイッチに入ると、CoS と DSCP のラベルは変更されません。 トラフィックは、スイッチに入ったときと同じ CoS および DSCP 値でスイッチから送出されます。 音声を含むすべてのトラフィックは、ベスト エフォート方式で配送されます。

Switch#show mls qos
QoS is disabled
QoS ip packet dscp rewrite is enabled

!--- Even though it says QoS ip packet dscp rewrite is enabled,
!--- the switch does not alter the DSCP label on the packets when 
!--- the QoS is disabled.

Cisco Catalyst 3750 スイッチの QoS 機能

3750 スイッチで QoS を有効にしても、デフォルトで有効になる入力と出力の QoS 機能はごく少数です。 次の図に、スイッチの QoS アーキテクチャの概容を示します。

/image/gif/paws/91862/cat3750-qos-config2.gif

この図に基づくポイントの概要は次のとおりです。

  • 分類、マーキング、およびポリシングなどの入力の QoS 機能は、ポート単位で設定可能。

  • 入力マップ テーブルおよび入力キューイングはグローバルに設定可能で、 これらはポート単位での設定は不可能。

  • 入力キューの SRR はグローバルに設定可能。

  • スタック リングの帯域幅はスタックのケーブル接続に依存。 スタックがフル帯域幅で接続されている場合、32Gbps の帯域幅が使用されます。 この帯域幅が、スタック内のすべてのスイッチにより共有されます。

  • 出力マップ テーブルおよび出力キューはグローバルに設定可能。 2 つのキュー設定のセットを使用でき、また 1 つのポートにはキュー セット設定の任意の 1 つを適用できます。

  • 出力キューの SRR はポート単位で設定可能。

入力の QoS 機能

このセクションでは、使用できるさまざまな入力 QoS 設定の概念を説明します。 このセクションでは、次の項目について説明します。

デフォルトの入力 QoS 設定

QoS が有効になった後、デフォルトではスイッチはフレームを次のように扱います。

  • フレームがスイッチ ポートに入っても、フレームはタグ付けされない(これは、ポートはアクセス ポートであり、スイッチに入るフレームは ISL または dot1q カプセル化を適用されないことを意味する)。

  • スイッチは dot1q を使用してフレームをカプセル化する(すべての新しいスイッチでは dot1q がデフォルトであるため ISL を無視する)。

  • dot1q フレーム タグ内部では CoS とも呼ばれる 802.1p プライオリティ ビットという 3 ビットが使用可能である。 これらのビットは 0 に設定されます。

  • 続いて、スイッチは CoS-DSCP マップ テーブルに基づいて DSCP 値を計算する。 表によって、スイッチはパケットの IP ヘッダーに 0。DSCP 値に DSCP 値をあります設定 します。

要約すると、スイッチ上で QoS が有効である場合、デフォルトではスイッチに入るフレームの CoS および DSCP 値は 0 に設定されます。

分類とマーキング

ルータとは異なり、Cisco Catalyst スイッチでは QoS の分類とマーキングは異なった動作をします。 Cisco ルータでは、着信パケットの DSCP 値または Access Control List(ACL; アクセス コントロール リスト)のいずれかに基づいて、MQC を使用してパケットを分類できます。 これは、着信パケットの QoS ラベルを信頼するかどうかに依存します。 Cisco Catalyst 3750 スイッチでは、着信 CoS/DSCP 値または ACL のいずれかに基づいてフレームを分類できます。

着信 CoS/DSCP 値に基づく設定は、次の 3 つの異なる方法で設定できます。

これら 3 つの方法のいずれか 1 つを使用できます。 1 つのポートでは複数の方法を使用できません。 たとえば、あるポートで mls qos trust cos コマンドを設定したとします。 サービスポリシー入力 <policy MAP 名前 > コマンドでポートを設定するとき、mls qos trust cos コマンドを自動的に削除します。

分類とマーキング:ポート ベース」のセクションではポート ベースの設定を説明します。

分類とマーキング:MQC ベース」のセクションでは MQC ベースの分類を説明します。

分類とマーキング:ポート ベース

このセクションでは、インターフェイス固有の設定に基づく分類を説明します。 セクションのタイトル「分類とマーキング」を疑問に思う方もいるでしょう。 これは、Cisco Catalyst 3750 スイッチ内では、フレームの CoS または DSCP 値(フレーム内のパケット)がマップ テーブルを使用して再マーキングされるためです。 Cisco ルータではマップ テーブルは使用できません。 これを利用できるのは、Cisco Catalyst スイッチだけです。 このセクションでは、これらのテーブルの機能を説明します。

このセクションでは、次の 2 つの設定について説明します。

/image/gif/paws/91862/cat3750-qos-config3.gif

分類:ポートの信頼の設定

着信パケットまたはフレームにはすでに QoS ラベルが割り当てられている可能性があります。 次のような問題が生じる可能性があります。

  • ポート上の着信パケット/フレームの QoS ラベルを信頼するのか。

  • IP Phone や PC がポートに接続されている場合、IP Phone と PC の一方または両方の QoS ラベルを信頼するのか。

着信パケット/フレームの QoS ラベルを信頼しない場合は、access-list に基づいてパケットを分類し、QoS ラベルをマーキングする必要があります。 着信パケット/フレームの QoS ラベルを信頼する場合、ポート上の着信パケット/フレームの CoS 値または DSCP 値を信頼する必要があるかどうかという別の問題が生じます。 これは状況に依存します。 このセクションでは例を使用してさまざまな状況を検討します。

ポートの信頼の設定オプションは次のとおりです。

Switch(config-if)#mls qos trust ?
  cos            cos keyword
  device         trusted device class
  dscp           dscp keyword
  ip-precedence  ip-precedence keyword
  <cr>
  • 例 1: ポートがアクセス ポートまたはレイヤ 3 ポートである場合、mls qos trust dscp コマンドを設定する必要があります。 アクセス ポートまたはレイヤ 3 ポートからのフレームには dot1q または ISL タグが含まれていないため、mls qos trust cos コマンドは使用できません。 CoS ビットがあるのは、dot1q または ISL フレーム内だけです。

    interface GigabitEthernet1/0/1
     description **** Layer 3 Port ****
     no switchport
     ip address 192.168.10.1 255.255.255.0
     mls qos trust dscp
    end
    interface GigabitEthernet1/0/2
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     mls qos trust dscp
    end
  • 例 2: ポートがトランク ポートである場合、mls qos trust cos コマンドまたは mls qos trust dscp コマンドのいずれかを設定できます。 ポートが DSCP を信頼するように設定されている場合、dscp-cos マップ テーブルを使用して CoS 値が計算されます。 同様に、ポートが CoS を信頼するように設定されている場合、cos-dscp マップ テーブルを使用して DSCP 値が計算されます。

    interface GigabitEthernet1/0/3
    description **** Trunk Port ****
    switchport trunk encapsulation dot1q
    switchport mode trunk
    switchport trunk native vlan 5
    switchport trunk allowed vlan 5,10,20,30,40,50
    mls qos trust cos
    end
    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end
    
    !--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice 
    !--- VLAN traffic.
    
    
  • 例 3: ポートが dot1q トランク ポートであり、ポートが mls qos trust cos コマンドを使用して設定されている場合、ネイティブ VLAN フレームでは CoS および DSCP 値が 0 になっています。 ネイティブ VLAN フレームにはタグがなく、フレームはスイッチに入った後にタグを付けられるため、スイッチではデフォルトの CoS 値が 0 に設定され、CoS-to-DSCP テーブルでは DSCP 値が 0 に設定されます。

    注: ネイティブ VLAN から着信するパケットの DSCP 値は 0 にリセットされます。

    また MLS QoS cos <0-7> コマンドを使用して 0 から 0-7 間の他のどの値にタグなしフレームのデフォルト CoS 値を変更するためにスイッチポートを設定できます。 このコマンドでは、タグ付きフレームの CoS 値は変更されません。

    たとえば、ポート GigabitEthernet1/0/12 がアクセス VLAN 10 および音声 VLAN 20 で設定されているとします。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    
    !--- The Cisco IP Phone uses IEEE 802.1Q frames for Voice 
    !--- VLAN traffic. Voice VLAN is only supported on access ports and not  
    !--- on trunk ports, even though the configuration is allowed.
    
    end

    デフォルトでは、PC はデータをタグなしで送信します。 Cisco IP Phone に接続されたデバイスからのタグなしのトラフィックは、IP Phone のアクセス ポートの信頼状態に関係なく、変更されることなく IP Phone を通過します。 IP Phone では音声 VLAN ID 20 で dot1q タグ付きフレームが送信されます。 そのため、mls qos trust cos コマンドを使用してポートを設定した場合、IP Phone からのフレーム(タグ付きフレーム)の CoS 値は信頼され、PC からのフレーム(タグなし)の CoS 値は 0 に設定されます。 その後、CoS-DSCP マップ テーブルでは CoS 値が 0 である場合 DSCP 値が 0 であるため、CoS-DSCP マップ テーブルに従ってフレーム内部のパケットの DSCP 値が 0 に設定されます。 PC からのパケットが特定の DSCP 値を持つ場合、その値は 0 にリセットされます。 ポート上で mls qos cos 3 コマンドを設定した場合、PC からのすべてのフレームの CoS 値は 3 に設定され、IP Phone からのフレームの CoS 値は変更されません。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     mls qos cos 3
     spanning-tree portfast
    end

    mls qos cos 3 override コマンドを使用してポートを設定した場合、すべてのフレーム(タグ付きとタグなしの両方)の CoS 値は 3 に設定されます。 以前に設定された信頼値は上書きされます。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     mls qos cos 3 override
    
    !--- Overrides the mls qos trust cos.
    
    
    !--- Applies CoS value 3 on all the incoming packets on both 
    !--- the vlan 10 and 20.
    
     spanning-tree portfast
    end
  • 例 4: 例として、ポート gi 1/0/12 の設定を調べます。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end

    PC で VLAN 20 を使用してフレームにタグ付けされている場合、CoS 値は 5 に設定されます。 スイッチは、Cisco IP Phone のアクセス ポートに接続されたデバイスからのタグ付きデータ トラフィック(IEEE 802.1Q または IEEE 802.1p フレーム タイプのトラフィック)を処理します。 インターフェイスは CoS 値を信頼するように設定されているため、Cisco IP Phone のアクセス ポートを通じて受信されたすべてのトラフィックは、変更されることなく IP Phone を通過します。 また、スイッチでも PC からのトラフィックが信頼および許可され、IP Phone のトラフィックと同じプライオリティが付与されます。 これは望ましい結果ではありません。 これはスイッチポート 優先順位を使用して伸ばします cos <cos 値 > コマンドを避けることができます。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     switchport priority extend cos 0
    
    !--- Overrides the CoS value of PC traffic to 0.
    
     spanning-tree portfast
    end

    スイッチポート 優先順位は IP Phone が 0 に PC トラフィックの CoS 値を変更すること cos <cos 値 > コマンドを設定します電話をそのような物伸ばします

  • 例 5: たとえば、同じインターフェイスで、あるユーザが PC をスイッチに直接接続し、PC データを高い CoS 値の dot1q フレームでタグ付けしたとします。 これは、mls qos trust device cisco-phone コマンドを使用することで回避できます。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     switchport priority extend cos 0
     mls qos trust device cisco-phone 
    
    !--- Specify that the Cisco IP Phone is a trusted device.
    
     spanning-tree portfast
    end
  • 例 6: たとえば、インターフェイス GigabitEthernet1/0/12 で、PC からの QoS ラベルを信用する必要があるとします。 また、PC はネイティブ VLAN 10.に PC パケットが CoS 値をタグ付けしないので、mls qos trust cos コマンド助けませんこの場合接続されます。 DSCP 値のみがタグ付けされます。 したがって、スイッチは dot1q フレームを追加し、デフォルトの CoS 値を 0 に設定します。 続いて、CoS-DSCP テーブルは計算を行い、DSCP 値を 0 にリセットします。

    この問題を修正するための選択肢が 2 つあります。 1 つは MQC を使用して分類とマーキングを設定する方法です。 発信元と宛先の IP アドレス、および発信元/宛先のポート番号に基づいて、PC トラフィックを照合する ACL を作成できます。 続いて、クラスマップでこの ACL を照合できます。 このトラフィックを信頼するポリシーマップを作成できます。 このソリューションは次のセクションで説明します。 このセクションでは、第 2 の方法について説明します。 第 2 の方法は、CoS ラベルではなく DSCP ラベルを信頼する方法です。 続いて DSCP-CoS ラベルにより計算が行われ、DSCP 値に対応する CoS 値が設定されます。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust dscp
     spanning-tree portfast
    end

    すべての PC トラフィックの QoS ラベルを信頼することは推奨できないため、第 1 の方法が推奨方法です。

マーキング:QoS マップ テーブルの設定

QoS を有効にした後、デフォルト値を使用してマップ テーブルが作成され、有効になります。

Distribution1#show mls qos maps cos-dscp
   Cos-dscp map:
        cos:   0  1  2  3  4  5  6  7
     --------------------------------
       dscp:   0  8 16 24 32 40 48 56

Distribution1#show mls qos maps dscp-cos
   Dscp-cos map:
     d1 :  d2 0  1  2  3  4  5  6  7  8  9
     ---------------------------------------
      0 :    00 00 00 00 00 00 00 00 01 01
      1 :    01 01 01 01 01 01 02 02 02 02
      2 :    02 02 02 02 03 03 03 03 03 03
      3 :    03 03 04 04 04 04 04 04 04 04
      4 :    05 05 05 05 05 05 05 05 06 06
      5 :    06 06 06 06 06 06 07 07 07 07
      6 :    07 07 07 07
  • 例 1: ポートが CoS を信頼するように設定されている場合、すべての着信 CoS 値は信頼され、DSCP 値は CoS-DSCP テーブルに基づいて再マーキングされます。 デフォルトの CoS-DSCP 設定に従って、値は次に示すようにマッピングされています。

    CoS DSCP(10 進数) DSCP
    0 0 デフォルト
    1 8 CS1
    2 16 CS2
    3 24 CS3
    4 32 CS4
    5 40 CS5
    6 48 CS6
    7 56 CS7

    ここに注意する必要がある 1 つの重要な値は CoS 値 5.に DSCP 値対応しますです。 それは CS5 です。 例 2 でこの値を説明します。

  • 例 2: たとえば、インターフェイス GigabitEthernet1/0/12 が CoS を信頼するように設定されているとします。

    interface GigabitEthernet1/0/12
     description **** Cisco IP Phone  ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 20
     mls qos trust cos
     spanning-tree portfast
    end

    Cisco IP Phone は、トラフィックをスイッチに送信する際に CoS 5 および DSCP EF でボイス ペイロードをマーキングします。 トラフィックがポート Gi 1/0/12 に入る際、スイッチでは CoS 値が信頼されます。 続いて、スイッチは CoS-DSCP テーブルから CoS 値 5 の DSCP 値 CS5(40)を取得します。 CoS 5 を持つすべてのボイス ペイロードは DSCP 値 CS5 でマーキングされます。 これは望ましい値ではありません。 ボイス ペイロードに必要な DSCP 値は DSCP EF です。 デフォルトでは、DSCP 値に対するその他の CoS 値は RFC に従って正しくマッピングされています。

    この設定は、CoS-DSCP マップ テーブルを設定して、CoS 5 に対応する DSCP 値 EF を変更するのに役立ちます。

    Distribution1(config)# mls qos map cos-dscp 0  8 16 
    24 32 46 48 56
    
    !--- DSCP 46 is EF
    
    

    この設定後、値は次に示すようにマッピングされます。

    CoS DSCP(10 進数) DSCP
    0 0 デフォルト
    1 8 CS1
    2 16 CS2
    3 24 CS3
    4 32 CS4
    5 46 EF
    6 48 CS6
    7 56 CS7

  • 例 3: ポートが DSCP を信頼するように設定されている場合、すべての着信 DSCP 値は信頼され、CoS 値は DSCP-CoS テーブルに基づいて再マーキングされます。 デフォルトの DSCP-CoS 設定に従って、値は次に示すようにマッピングされています。

    DSCP DSCP(10 進数) CoS
    デフォルト 0-7 0
    CS1 AF11 AF12 AF13 8-15 1
    CS2 AF21 AF22 AF23 16-23 2
    CS3 AF31 AF32 AF33 24-31 3
    CS4 AF41 AF42 AF43 32-39 4
    CS5 EF 40-47 5
    CS6 48-55 6
    CS7 56-63 7

    これらのデフォルト値を変更する必要はありません。

参照用に、次の表に DSCP 値と CoS 値をまとめます。

DSCP(10 進数) DSCP CoS
0 デフォルト 0
     
8 CS1 1
10 AF11 1
12 AF12 1
14 AF13 1
     
16 CS2 2
18 AF21 2
20 AF22 2
22 AF23 2
     
24 CS3 3
26 AF31 3
28 AF32 3
30 AF33 3
     
32 CS4 4
34 AF41 4
36 AF42 4
38 AF43 4
     
40 CS5 5
42   5
44   5
46 EF 5
     
48 CS6 6
     
56 CS7 7

注: ネットワークでは、すべての Cisco Catalyst スイッチには同じマップ テーブルが必要です。 それぞれのスイッチでマップ テーブルの値が異なると、望ましくない QoS 動作の原因になります。

分類とマーキング:MQC ベース

「分類とマーキング」のセクションで説明したように、MQC を使用してパケットを分類およびマーキングできます。 ポート固有の設定の代わりに MQC を使用できます。 また、ポリシーマップを使用して着信パケットマーキングすることもできます。

この例の要件は次のとおりです。

  • IP Phone トラフィックの CoS 値を信頼する。

  • IP Phone に接続されている PC からのソフトフォン アプリケーション パケットの DSCP 値をマーキングする。

  • PC からのその他すべてのトラフィックを信頼しない。

cat3750-qos-config4.gif

この図では、ポリシーマップがインターフェイスの入力に添付されていることが示されています。 Catalyst 3750 スイッチのインターフェイスの出力にはポリシーマップを適用できません。 次の設定はこの図を表したものです。 このセクションでは QoS 機能のキューイング部分は重点的には扱いません。 インターフェイスで適用される MQC のみを重点的に扱います。

データ VLAN は 10 であり、そのサブネット アドレスは 172.16.10.0/24 であることが前提になっています。 音声 VLAN は 100 で、そのサブネット アドレスは 192.168.100.0/24 です。


!--- Section A

Distribution1(config)#ip access-list extended voice-traffic
Distribution1(config-std-nacl)#permit ip 192.168.100.0 0.0.0.255 any

Distribution1(config-std-nacl)#ip access-list extended
 database-application
Distribution1(config-ext-nacl)#permit tcp any any eq 1521
Distribution1(config-ext-nacl)#permit tcp any any eq 1810
Distribution1(config-ext-nacl)#permit tcp any any eq 2481
Distribution1(config-ext-nacl)#permit tcp any any eq 7778
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map  Class-A
Distribution1(config-cmap)#match access-group name voice-traffic
Distribution1(config-cmap)#exit
Distribution1(config)#class-map  Class-B
Distribution1(config-cmap)#match access-group name
 database-application
Distribution1(config-cmap)#exit


!--- Section B

Distribution1(config)#policy-map sample-policy1
Distribution1(config-pmap)#class Class-A
Distribution1(config-pmap-c)#trust cos
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#class Class-B
Distribution1(config-pmap-c)#set dscp af21
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit


!--- Section C

Distribution1(config)#interface gigabitEthernet 1/0/13
Distribution1(config-if)#switchport access vlan 10
Distribution1(config-if)#switchport mode access
Distribution1(config-if)#switchport voice vlan 100
Distribution1(config-if)#spanning-tree portfast
Distribution1(config-if)#service-policy input sample-policy1
Distribution1(config-if)#exit

セクション A:

  • IP Phone トラフィックを Class-A に分類します。 IP Phone は音声 VLAN に属し、192.168.100.0 サブネット内の IP アドレスが割り当てられています。

  • データベース アプリケーションのトラフィックを Class-B に分類します。 ポート番号が 1521、1810、2481、7778 である任意の送信先が宛先である PC トラフィック(実際には設定に従う任意のトラフィック)は、Class-B のクラス マップに分類されます。

セクション B:

  • Class-A に一致するトラフィックは CoS ラベルを信頼するように設定されています。 これは、IP Phone からのすべてのトラフィックの CoS 値が信頼されることを意味します。 図に示されているように、DSCP 値は、Class-A トラフィック用の CoS-DSCP マップ テーブルから取得されています。

  • Class-B に一致するトラフィックは、DSCP 値を AF21 に設定するように設定されています。 図に示されているように、DCoS 値は、Class-B トラフィック用の DSCP-CoS マップ テーブルから取得されています。

  • ポリシーマップの各クラスの下の設定は PHB アクションと呼ばれます。 マーキング、キューイング、ポリシング、シェーピング、および輻輳回避は、Cisco ルータでサポートされている PHB アクションです。 Cisco Catalyst 3750 スイッチでサポートされている PHB アクションは、マーキングとポリシングだけです。

    Distribution1(config)#policy-map test
    Distribution1(config-pmap)#class test
    Distribution1(config-pmap-c)#?
    QoS policy-map class configuration commands:
      exit            Exit from QoS class action configuration mode
      no              Negate or set default values of a command
      police          Police
      service-policy  Configure QoS Service Policy
      set             Set QoS values
      trust           Set trust value for the class
      <cr>

    set および trust コマンドは、Marking PHB アクションです。 set または trust PHB アクションのいずれかを設定できます。 ポリシーマップの 1 つのクラスでは両方のアクションを設定することはできません。 ただし、1 つのクラスで set を設定し、同じポリシーマップの別のクラスで trust を設定することは可能です。

    police コマンドは Policing PHB アクションです。 これについては次のセクションで詳細に説明します。

    シェーピングは Cisco Cisco 3750 スイッチではサポートされていません。 Cisco Catalyst 3750 スイッチではキューイングと輻輳回避がサポートされていますが、MQC を使用して設定することはできません。 キューイングと輻輳回避の設定については、このドキュメントの後半で詳しく説明します。

セクション C:

  • ポリシーマップは、インターフェイスの入力にのみ適用できます。 出力インターフェイスに適用すると、次のようなエラー メッセージが表示されます。

    Distribution1(config)#int gi 1/0/3
    Distribution1(config-if)#service-policy output test
    Warning: Assigning a policy map to the output side of an
             interface not supported
    
    Service Policy attachment failed
    Warning: Assigning a policy map to the output side of an
             interface not supported
  • ポート ベースや VLAN ベースなどのその他の QoS 分類方式がポート gi 1/0/3 で設定されている場合、ポリシーマップを適用するとこれらの設定は削除されます。 たとえば、ポート Gi 1/0/13 が次に示すように CoS を信頼するように設定されているとします。

    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     mls qos cos 3
     mls qos trust cos
     spanning-tree portfast
  • ポリシーマップをこのインターフェイスに適用した場合は、trust コマンドが削除されます。

    Distribution1(config)#int gi 1/0/13
    Distribution1(config-if)#service-policy input sample-policy1
    Distribution1(config-if)#do show run int gi 1/0/13
    Building configuration...
    
    Current configuration : 228 bytes
    !
    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     service-policy input sample-policy1  
     
    !--- It replaces the mls qos trust or mls qos 
    !--- vlan-based command.
    
     mls qos cos 3    
     
    !--- This command is not removed.
    
     spanning-tree portfast
    end

    サービスポリシーの入力により、mls qos trust または mls qos vlan-based コマンドのみが置き換えられることが確認できます。 mls qos cos コマンドや mls qos dscp-mutation コマンドなどの他のコマンドは変更されません。 要約すると、QoS 分類コマンドは置き換えられますが、QoS マーキング コマンドは置き換えられません。

  • ポリシーマップでは、2 つのクラスマップのみが確認できます。 Class-A は IP Phone トラフィックに一致し、Class-B は PC からのデータベース アプリケーション トラフィックに一致します。 (access-list で定義されているデータベース アプリケーションを除く)その他すべての PC トラフィックは、ポリシーマップの class-default クラスの下で分類されます。 これは、ポリシーマップに添付されている定義済みのクラスマップに一致しないトラフィックを捕捉する catch-all トラフィックです。 したがって、class-default に属するこのトラフィックはポートには信頼されず、またこれらのパケットはデフォルトの CoS および DSCP ラベルで 0 に設定されます。 この class-default トラフィックには、任意のデフォルトの CoS または DSCP 値を設定できます。

    MQC を使用するとデフォルトの DSCP 値を設定できます。 CoS 値は、DSCP-CoS マップ テーブルから取得されます。

    Distribution1(config)#policy-map sample-policy1
    Distribution1(config-pmap)#class class-default
    Distribution1(config-pmap-c)#set dscp af13
    Distribution1(config-pmap-c)#exit
    

    デフォルトの CoS 値は次に示すように設定できます。 DSCP 値は、CoS-DSCP マップ テーブルから取得されます。

    Distribution1(config)#int gi 1/0/13
    Distribution1(config-if)#mls qos cos 3
    Distribution1(config-if)#do show run int gi 1/0/13
    Building configuration...
    
    Current configuration : 228 bytes
    !
    interface GigabitEthernet1/0/13
     description **** Access Port ****
     switchport access vlan 10
     switchport mode access
     switchport voice vlan 100
     service-policy input sample-policy1  
     mls qos cos 3    
     spanning-tree portfast

トラフィックに高優先順位を設定 して下さい

この例では TCPポート 1494 からのトラフィックに高優先順位を設定 するのに、設定が使用されています。

  1. VOIPトラフィック EF の DSCP 値は割り当てられる必要があります:

    
    !--- Classifying all traffic coming with dscp value of EF 
    !--- under this class-map.
    
    Switch(config)# class-map match-all AutoQoS-VoIP-RTP-Trust
    Switch(config-cmap)# match ip dscp ef 
    
    Switch(config)# policy-map AutoQoS-Police-CiscoPhone
    Switch(config-pmap)# class AutoQoS-VoIP-RTP-Trust
    
    !--- Again setting the dscp value back to EF.
    
    Switch(config-pmap-c)# set dscp ef
    Switch(config-pmap-c)# police 320000 8000 exceed-action 
    policed-dscp-transmit
    
  2. TCP 1494 からのトラフィック CS4 の DSCP 値は割り当てられる必要があります:

    Switch(config)# access-list 100 permit tcp <source source-wildcard>
                 <destination destination-wildcard> eq 1494
    
    Switch(config)# class-map tcp 
    Switch(config-cmap)# match access-group 100
    
    Switch(config)# policy-map AutoQoS-Police-CiscoPhone
    Switch(config-pmap)# class tcp
    Switch(config-pmap-c)# set dscp cs4
    
  3. 他のトラフィックはすべて CS3 を割り当てられる必要があります:

    Switch(config)# access-list 200 permit ip any any
    
    Switch(config)# class-map default
    Switch(config-cmap)# match access-group 200
    
    Switch(config)# policy-map AutoQoS-Police-CiscoPhone
    Switch(config-pmap)# class default
    Switch(config-pmap-c)# set dscp cs3
    
  4. 関連するインターフェイスの下でそれを適用して下さい:

    Switch(config)# interface <interface-type><interface number>
    
    Switch(config-if)# service-policy <policy-map-name>
    
    

ポリシング

Cisco Catalyst 3750 スイッチでは、ポリシングは入力ポート上でのみ設定できます。 ポリシングは MQC を介してのみ設定できます。 これは、トラフィックをポリシングするためのインターフェイス固有のコマンドが存在しないことを意味します。 policy-map のポリシングを設定、サービスポリシー入力 <policy 名前 > コマンドだけを使用して policy-map を適用できます。 インターフェイスの出力側にはポリシーマップを適用できません。

Distribution1(config-if)#service-policy output test
police command is not supported for this interface
Configuration failed!
Warning: Assigning a policy map to the output side of an 
         interface not supported.

このセクションでは、次の項目について説明します。

分類、マーキングおよびポリシング(超過アクション:drop)

このセクションでは、過剰なトラフィックを廃棄するポリシング設定について説明します。 ポリシングにより着信トラフィックが計測され、着信レートが設定済みのビット/秒(bps)に維持されます。 Cisco Catalyst 3750 スイッチでは、単一のレートと単一のバケット ポリシングのみがサポートされます。 これは、スイッチでは 1 つのレートでのみ計測が行われ、さらにスイッチでは適合アクションと超過アクションの 2 つの基準でトラフィックのプロファイリングが可能であることを意味します。 次の図に、3 つのクラスマップがあるポリシーマップ sample-policy2 を示します。

この例の要件は次のとおりです。

  • ftp、pop3、imap トラフィックを 10Mbps にポリシングする。

  • IP Phone に接続されている PC からの IP Communicator アプリケーション パケットの DSCP 値を信頼する。 また、このトラフィックを 1Mbps にポリシングする必要がある。

  • filnet アプリケーションをマーキングおよびポリシングする。

cat3750-qos-config5.gif

次の設定は、図に記載されているポリシーマップを表します。


!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended BULK-DATA
Distribution1(config-ext-nacl)#permit tcp any any eq ftp
Distribution1(config-ext-nacl)#permit tcp any any eq ftp-data
Distribution1(config-ext-nacl)#permit tcp any any eq pop3
Distribution1(config-ext-nacl)#permit tcp any any eq 143
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A
Distribution1(config-cmap)#match access-group name BULK-DATA
Distribution1(config-cmap)#exit


!--- Create Access-list and Class map Class-B

Distribution1(config)#ip access-list extended IP-Communicator
Distribution1(config-ext-nacl)#remark *** Voice Payload ***
Distribution1(config-ext-nacl)#permit udp any any range 16384 32767
Distribution1(config-ext-nacl)#remark *** Voice Signalling ***
Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B
Distribution1(config-cmap)#match access-group name IP-Communicator
Distribution1(config-cmap)#exit


!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application
Distribution1(config-ext-nacl)#remark *** Application for example ***
Distribution1(config-ext-nacl)#permit tcp any any eq 32768
Distribution1(config-ext-nacl)#permit udp any any eq 32768
Distribution1(config-ext-nacl)#permit tcp any any eq 32769
Distribution1(config-ext-nacl)#permit udp any any eq 32769
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-C
Distribution1(config-cmap)#match access-group name application
Distribution1(config-cmap)#exit


!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy2
Distribution1(config-pmap)#class Class-A
Distribution1(config-pmap-c)#police 10000000 8000 exceed-action drop
Distribution1(config-pmap-c)#class Class-B
Distribution1(config-pmap-c)#trust dscp
Distribution1(config-pmap-c)#police 256000 8000 exceed-action drop
Distribution1(config-pmap-c)#class Class-C
Distribution1(config-pmap-c)#set dscp CS2
Distribution1(config-pmap-c)#police 25000000 8000 exceed-action drop
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit


!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/20
Distribution1(config-if)#service-policy input sample-policy2

次に、ポリシーマップの設定について説明します。

  • Class-A: Class A に一致するトラフィックは、10 Mbps のレートでポリシングされます。 Class A のトラフィック上の QoS ラベルは信頼されません。 CoS および DSCP 値は 0 にマーキングされます。 過剰なパケットはポリサーにより廃棄されます。

  • Class-B: Class B に一致するトラフィックで実行される PHB アクションは 2 つあります。 1 つは信頼で、もう 1 つはポリシングです。 Class-B トラフィックの DSCP 値は信頼されません。 CoS 値は、DSCP-CoS テーブルから取得されます。 そのため、Class B トラフィックは 256 Kbps のレートでポリシングされます。 過剰なパケットはポリサーにより廃棄されます。

  • Class-C: Class B に一致するトラフィックで実行される PHB アクションは 2 つあります。 1 つはマーキングで、もう 1 つはポリシングです。 Class C に一致する着信パケットは DSCP 値 CS2 でマーキングされ、CoS 値は DSCP-CoS テーブルから取得されます(値は 2)。 したがって、Class C トラフィックは 25 Mbps のレートでポリシングされます。 過剰なパケットはポリサーにより廃棄されます。

分類、マーキングおよびポリシング(超過アクション:policed-dscp-transmit)

このセクションでは、過剰なトラフィックをマーキングおよび転送するポリシング設定について説明します。 次の図に、2 つのクラスマップがあるポリシーマップ sample-policy3 を示します。

/image/gif/paws/91862/cat3750-qos-config6.gif

スイッチでは、policed-DSCP マップ テーブルの値に基づいて設定されたポリシング レートを超えるトラフィックにマーキングされます。 policed-DSCP マップは、ポリシング設定で設定された場合にのみに使用されます。 デフォルトの policed-DSCP マップ テーブルの一覧を次に示します。

Distribution1(config)#do show mls qos map policed-dscp
   Policed-dscp map:
     d1 :  d2 0  1  2  3  4  5  6  7  8  9
     ---------------------------------------
      0 :    00 01 02 03 04 05 06 07 08 09
      1 :    10 11 12 13 14 15 16 17 18 19
      2 :    20 21 22 23 24 25 26 27 28 29
      3 :    30 31 32 33 34 35 36 37 38 39
      4 :    40 41 42 43 44 45 46 47 48 49
      5 :    50 51 52 53 54 55 56 57 58 59
      6 :    60 61 62 63

このテーブルから、同じ DSCP 値が対応していることが確認できます。 たとえば、DSCP 34 は DSCP 34 にマッピングされています。 ポリサー レートに準拠するトラフィックは、DSCP 値を変更することなく転送されます。 ポリサー レートを超過するトラフィックは転送可能ですが、DSCP 値が異なります。 たとえば、廃棄される可能性が高い DSCP 値でマーキングできます。

デフォルトの policed-DSCP 値を使用する場合は、ポリシングを使用しても意味がありません。 たとえば、10 Mbps のレートでトラフィックをポリシングするように設定したとします。 着信パケットには DSCP 値 CS4 が割り当てられています。 デフォルトの DSCP 値を維持する場合、10Mbps に準拠するトラフィックは DSCP 値 CS2 で転送されます。 また、10 Mbps を超えるトラフィックも DSCP 値 CS2 で転送されます。 これは、policed-DSCP マップのデフォルト値が同じ値をマッピングしているためです。 そのため、DSCP 値を区別するために、policed-DSCP マップ テーブルを適切に設定することが推奨されます。

この例の要件は次のとおりです。

  • policed-DSCP マップ テーブルのマッピングを次のように設定する。

    • EF から AF31

    • CS3 から AF13

    • CS2 から AF11

  • IP Communicator パケットの DSCP 値を信頼し、それを 256Kbps にポリシングする。 トラフィックが 256Kbps を超える場合は、policed-DSCP マップ テーブルを使用して DSCP 値を再マーキングする。

  • filnet アプリケーションをマーキングおよびポリシングする。 トラフィックが 25Mbps を超える場合は、policed-DSCP マップ テーブルを使用して DSCP 値を再マーキングする。

次の設定は、図に記載されているポリシーマップを表します。


!--- Policed DSCP table Configuration

Distribution1(config)#mls qos map policed-dscp 46 to 26
Distribution1(config)#mls qos map policed-dscp 24 to 14
Distribution1(config)#mls qos map policed-dscp 16 to 10


!--- Create Access-list and Class map Class-A

Distribution1(config)#ip access-list extended IP-Communicator
Distribution1(config-ext-nacl)#remark *** Voice Payload ***
Distribution1(config-ext-nacl)#permit udp any any range 16384 32767
Distribution1(config-ext-nacl)#remark *** Voice Signalling ***
Distribution1(config-ext-nacl)#permit tcp any any range 2000 2002
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-A
Distribution1(config-cmap)#match access-group name IP-Communicator
Distribution1(config-cmap)#exit


!--- Create Access-list and Class map Class-C

Distribution1(config)#ip access-list extended application
Distribution1(config-ext-nacl)#remark *** Application for example ***
Distribution1(config-ext-nacl)#permit tcp any any eq 32768
Distribution1(config-ext-nacl)#permit udp any any eq 32768
Distribution1(config-ext-nacl)#permit tcp any any eq 32769
Distribution1(config-ext-nacl)#permit udp any any eq 32769
Distribution1(config-ext-nacl)#exit

Distribution1(config)#class-map Class-B
Distribution1(config-cmap)#match access-group name application
Distribution1(config-cmap)#exit


!--- Create Policy map

Distribution1(config-cmap)#policy-map sample-policy3
Distribution1(config-pmap-c)#class Class-A
Distribution1(config-pmap-c)#trust dscp
Distribution1(config-pmap-c)#police 256000 8000 exceed-action 
policed-dscp-transmit
Distribution1(config-pmap-c)#class Class-B
Distribution1(config-pmap-c)#set dscp CS2
Distribution1(config-pmap-c)#police 25000000 8000 exceed-action 
policed-dscp-transmit
Distribution1(config-pmap-c)#exit
Distribution1(config-pmap)#exit


!--- Apply Policy map to the interface

Distribution1(config)#interface GigabitEthernet1/0/21
Distribution1(config-if)#service-policy input sample-policy3

次に、ポリシーマップの設定について説明します。

  • policed-DSCP: policed-DSCP マップ テーブルには変更される 3 つの値があります。

    • EF から AF31

    • CS3 から AF13

    • CS2 から AF11

    最初の 2 つの値は、Class-A および Class-B クラス マップで分類されるトラフィックのタイプに基づいて変更されます。

  • Class-A: ソフトフォンからのボイス ペイロードおよび音声制御は、Class-A クラス マップで分類されます。 ボイス ペイロード トラフィックには DSCP 値 EF が割り当てられており、音声制御には DSCP 値 CS3 が割り当てられています。 ポリシーマップ設定に従って、これらの DSCP 値は信頼されます。 トラフィックは 256 Kbps のレートでポリシングされます。 このレートに準拠するトラフィックは、着信 DSCP 値を使用して送信されます。 このレートを超過するトラフィックは、policed-DSCP テーブルにより再マーキングされ、転送されます。 policed-DSCP テーブルは、設定された値に従って EF を AF31 に、CS3 を AF13 に再マーキングします。 したがって、対応する CoS 値は、DSCP-CoS テーブルから取得されます。

  • Class-B: Class-B に一致する着信パケットは、DSCP 値 CS2 でマーキングされます。 Class B トラフィックは 25 Mbps のレートでポリシングされます。 このレートに準拠するトラフィックは DSCP 値 2 で送信され、CoS 値は DSCP-CoS テーブルから取得されます(値は 2)。 このレートを超過するトラフィックは、policed-DSCP テーブルにより再マーキングされ、転送されます。 policed-DSCP テーブルは、設定された値に従って EF を AF31 に、CS3 を AF13 に再マーキングします。 したがって、対応する CoS 値は、DSCP-CoS テーブルから取得されます。

輻輳の管理と回避

輻輳の管理と回避は、3 ステップのプロセスです。 そのステップとは、キューイング、廃棄、およびスケジューリングです。 キューイングにより、QoS ラベルに基づいてさまざまなソフトウェア キューにパケットが配置されます。 Cisco Catalyst 3750 スイッチには 2 つの入力キューがあります。 トラフィックが QoS ラベルを使用して分類およびマーキングされた後は、QoS ラベルに基づいて 2 つの異なるキューにトラフィックを割り当てることができます。

キューの長さを管理し、さまざまなトラフィックの分類に関して廃棄の優先順位を決定するために、重み付けテール ドロップ(WTD)が使用されます。

入力キューと出力キューは両方とも SRR により処理されます。SRR はパケットが送信されるレートを制御します。 入力キューに対しては、SRR はパケットをスタック リングに送信します。 SRR は、「shaped」(シェーピング済み)と「shared」(共有)と呼ばれる 2 つのモードで動作可能です。 入力キューでは、共有がデフォルトのモードで、サポートされる唯一のモードです。 共有モードでは、キューは、設定された重み付けに従ってキュー間で帯域幅を共有します。 帯域幅はこのレベルで保証されますが、このレベルに制限されるものではありません。

このセクションでは、3 種類の設定について説明します。

これらの設定に使用可能なコマンドは次のとおりです。

Distribution1(config)#mls qos srr-queue input ?

!--- Queueing

  buffers         Configure buffer allocation
  cos-map         Configure cos-map for a queue id
  dscp-map        Configure dscp-map for a queue id

!--- Scheduling

  bandwidth       Configure SRR bandwidth
  priority-queue  Configure priority scheduling

!--- Dropping

  threshold       Configure queue tail-drop thresholds

デフォルトのキューイング、廃棄およびスケジューリングの設定

次の出力に、マッピングをキューイングするためのデフォルトの QoS ラベルを示します。 各キューは 3 つのしきい値レベルをサポートできます。 デフォルトでは、キュー サポートごとに、100 % である 1 つのしきい値のみがあります。

cat3750-qos-config7.gif

  • デフォルトのキュー マップ設定:

    CoS 5(DSCP 40 から 47)のパケットがキュー 2 に配置されます。 残るパケットは、キュー 1 に配置されます。

    Distribution1#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
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2  0    1    2    3    4    5    6    7    8    9
         ------------------------------------------------------------
          0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
          5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
          6 :  01-01 01-01 01-01 01-01

    次の表に、キュー マッピングを入力するためのデフォルトの CoS/DSCP を示します。

    CoS DSCP 入力キュー
    0 0 から 7 1
    1 8 から 15 1
    2 16 から 23 1
    3 24 から 31 1
    4 32 から 39 1
    5 40 から 47 2
    6 48 から 55 1
    7 56 から 63 1

  • デフォルトのキュー設定:

    入力 キュー バッファはキューによるキュー 1 および 10% によって 90% 2.スレッシュホールド レベル 1、2 および 3 です 100% 共有されます。

    Distribution1#show mls qos input-queue
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :       4       4
    priority  :       0      10
    threshold1:     100     100
    threshold2:     100     100
    
  • デフォルトのスケジューラ設定:

    キュー 2 はプライオリティ キューです。 SRR は、設定済みの重み付け(10 %)に対してプライオリティ キューを処理します。 続いて、SRR は残りの帯域幅(90 %)を両方の入力キューで共有し、設定済みの重み付けの指定に従ってにそれらを処理します。 この場合、キュー 1 とキュー 2 はそれぞれ 45 % の割合で処理されます。

    Distribution1#show mls qos input-queue
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :       4       4
    priority  :       0      10
    threshold1:     100     100
    threshold2:     100     100

キューイングとスケジューリング

キューイングとスケジューリングを設定するには 3 つの手順があります。 手順は次のとおりです。

  1. キュー マップ設定:

    キュー マップ設定は、DSCP または CoS 値に基づいて、2 つの入力キューにパケットをマッピングします。

  2. キュー設定:

    キュー設定では、2 つのキュー間で入力バッファを分割するために使用する比率を定義します(容量を割り当てます)。

  3. スケジューラの設定:

    SRR は、キューからスタック リングにパケットをデキューする頻度を制御する重み付けの比率を設定します。

キューとスケジューラの設定により、パケットが廃棄されるまでにバッファリングできるデータ量が制御されます。

cat3750-qos-config8.gif

このセクションでは、WTD 廃棄レベルは設定されていません。 これは、キューが 100 % であると、パケットが廃棄されることを意味します。

  • キュー マップ設定:

    まず、CoS 値がキューにマッピングされます。 このセクションでは、しきい値は設定されていません。

    
    !--- Assign the frames into the queue based on the CoS value.
    
    Distribution1(config)#mls qos srr-queue input cos-map
     queue 1 0 1 
    Distribution1(config)#mls qos srr-queue input cos-map
     queue 2 2 3 4 5 6 7
    
    
    !--- Show output.
    
    Distribution1#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 2-1 2-1 2-1 2-1 2-1 2-1
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2   0    1    2    3    4    5    6    7    8    9
         ------------------------------------------------------------
         0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
         5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         6 :  01-01 01-01 01-01 01-01

    Cos-inputq-threshold マップと Dscp-inputq-threshold マップには競合が確認できます。 たとえば、CoS 3 は Cos-inputq-threshold テーブルのキュー 2 にマッピングされます。 ところが、DSCP 値 24(CoS 3 に対応)は、Dscp-inputq-threshold マップのキュー 1 にマッピングされます。 実際には、Cos-inputq-threshold マップよりも Dscp-inputq-threshold マップが優先されます。 動作を想定どおりにするために、およびトラブルシューティングを容易にするために、これらのマッピングは可能な限り一貫したものにする必要があります。 そのため、Dscp-inputq-threshold マップは Cos-inputq-threshold マップと同期するように設定します。

    
    !--- Assign the frames into the queue based on the DSCP value.
    
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2
      16 17 18 19 20 21 22 23
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2
      24 25 26 27 28 29 30 31
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2
      32 33 34 35 36 37 38 39
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2
      48 49 50 51 52 53 54 55
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2
      56 57 58 59 60 61 62 63
    
    Distribution1#show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2  0   1   2    3    4    5    6    7    8    9
         ------------------------------------------------------------
         0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         1 :  01-01 01-01 01-01 01-01 01-01 01-01 02-01 02-01 02-01 02-01
         2 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
         3 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
         4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
         5 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
         6 :  02-01 02-01 02-01 02-01
  • キュー設定:

    IOS は、QoS が有効になった後、入力パケットをキューイングするためにバッファにデフォルトのスペースを割り当てます。 両方の入力キュー(キュー 1 とキュー 2)がこのバッファ スペースを共有します。 Catalyst 3750 スイッチでは、各キューが使用できるこのバッファ スペースの比率を設定できます。 入力キューの合計使用可能メモリの 67 % がキュー 1 に割り当てられ、33 % がキュー 2 に割り当てられます。

    Distribution1(config)#mls qos srr-queue input buffers 67 33
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :       4       4
    priority  :       0      10
    threshold1:     100     100
    threshold2:     100     100
  • スケジューラの設定:

    この設定は、mls qos srr-queue input bandwidth コマンドを使用して実行します。 ここで、この帯域幅が、キューに対して SRR により処理されるビット量を指定します。

    Distribution1(config)#mls qos srr-queue input bandwidth 90 10
    Distribution1(config)#mls qos srr-queue input priority-queue 2 
    bandwidth 20
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :      90      10
    priority  :       0      20
    threshold1:     100     100
    threshold2:     100     100

    デフォルトでは、キュー 2 がプライオリティ キューで、内部のリング帯域幅の合計の 10 % がプライオリティ キューに割り当てられます。 キュー 1 をプライオリティ キューとして設定することも可能です。 ただし、両方のキューをプライオリティ キューとして設定することはできません。

    リングの帯域幅が 10Gbps である場合、SRR はまずキュー 2 に 10Gbps の 20 %(2 Gbps)を供給します。 残りの 8 Gbps リング 帯域幅は設定によってキュー 1 およびキュー 2.によって共有されます、キュー 1 は 90% 8 Gbps の保守され、キュー 2 は再度 10% 8 Gbps の保守されます。 この 8 Gbps の帯域幅は、共有モードで SRR により処理されます。 これは、設定されている帯域幅の比率は保証されるが、それには制限されないことを意味します。

    注: mls qos srr-queue input priority-queue 2 bandwidth 0 コマンドを使用すると、プライオリティ キューを無効にできます。

    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :      90      10
    priority  :       0       0
    threshold1:     100     100
    threshold2:     100     100
    Distribution1(config)#

キューイング、廃棄およびスケジューリング

このセクションでは、キューのバッファ サイズに加えて、WTD しきい値レベルが設定されます。 スイッチを通過する各パケットにキューとしきい値を割り当てることができます。

cat3750-qos-config9.gif

設定例と説明を次に示します。

  • キュー マップ設定:

    まず、CoS 値がキューにマッピングされます。

    
    !--- Assign the frames into the queue based on the CoS value.
    
    Distribution1(config)#mls qos srr-queue input cos-map queue 1
     threshold 2  1
    Distribution1(config)#mls qos srr-queue input cos-map queue 1
     threshold 3  0
    Distribution1(config)#mls qos srr-queue input cos-map queue 2
     threshold 1  2
    Distribution1(config)#mls qos srr-queue input cos-map queue 2
     threshold 2  4 6 7
    Distribution1(config)#mls qos srr-queue input cos-map queue 2
     threshold 3  3 5
    
    
    !--- Show output.
    
    Distribution1(config)#do show mls qos maps cos-input-q
       Cos-inputq-threshold map:
                  cos:  0   1   2   3   4   5   6   7
                  ------------------------------------
      queue-threshold: 1-3 1-2 2-1 2-3 2-2 2-3 2-2 2-2
    
    Distribution1(config)#do show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2  0    1    2    3    4    5    6    7    8    9
         ------------------------------------------------------------
         0 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         1 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         2 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         3 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         4 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 01-01 01-01
         5 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01
         6 :  01-01 01-01 01-01 01-01

    Cos-inputq-threshold マップと Dscp-inputq-threshold マップには競合が確認できます。 たとえば、CoS 3 は Cos-inputq-threshold テーブルでキュー 2 にマッピングされていますが、DSCP 値 24(CoS 3 に対応)は Dscp-inputq-threshold マップのキュー 1 にマッピングされています。 実際には、Cos-inputq-threshold マップよりも Dscp-inputq-threshold マップが優先されます。 動作を想定どおりにするために、およびトラブルシューティングを容易にするために、これらのマッピングは可能な限り一貫したものにする必要があります。 そのため、Dscp-inputq-threshold マップは Cos-inputq-threshold マップと同期するように設定します。

    
    !--- Assign the frames into the queue based on the DSCP value.
    
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1
     threshold 2 9 10 11 12 13 14 15
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1 
     threshold 3 0 1 2 3 4 5 6 7
    Distribution1(config)#mls qos srr-queue input dscp-map queue 1 
     threshold 3 32
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 
     threshold 1 16 17 18 19 20 21 22 23
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 
     threshold 2 33 34 35 36 37 38 39 48
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 
     threshold 2 49 50 51 52 53 54 55 56
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 
     threshold 2 57 58 59 60 61 62 63
    Distribution1(config)#mls qos srr-queue input dscp-map queue 2 
     threshold 3 24 25 26 27 28 29 30 31
    
    Distribution1(config)#do show mls qos maps dscp-input-q
       Dscp-inputq-threshold map:
         d1 :d2  0    1    2    3    4    5    6    7    8    9
         ------------------------------------------------------------
         0 :  01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-03 01-01 01-02
         1 :  01-02 01-02 01-02 01-02 01-02 01-02 02-01 02-01 02-01 02-01
         2 :  02-01 02-01 02-01 02-01 02-03 02-03 02-03 02-03 02-03 02-03
         3 :  02-03 02-03 01-03 02-02 02-02 02-02 02-02 02-02 02-02 02-02
         4 :  02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-03 02-02 02-02
         5 :  02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02 02-02
         6 :  02-02 02-02 02-02 02-02
  • キュー設定:

    デフォルトでは、しきい値 3 は 100 % で、変更はできません。

    Distribution1(config)#mls qos srr-queue input buffers 67 33
    Distribution1(config)#mls qos srr-queue input threshold 1 8 16
    Distribution1(config)#mls qos srr-queue input threshold 2 34 66
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :       4       4
    priority  :       0      10
    threshold1:       8      34
    threshold2:      16      66
  • スケジューラの設定:

    IOS は、QoS が有効になった後、各入力ポートのバッファにデフォルトのスペースを割り当てます。 両方のキューがこのバッファ スペースを共有します。 Catalyst 3560/3750 スイッチでは、各キューが使用できるこのバッファ スペースの比率を設定できます。

    Distribution1(config)#mls qos srr-queue input bandwidth 90 10
    Distribution1(config)#mls qos srr-queue input priority-queue 2
     bandwidth 20
    
    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      67      33
    bandwidth :      90      10
    priority  :       0      20
    threshold1:       8      34
    threshold2:      16      66

    デフォルトでは、キュー 2 がプライオリティ キューで、内部のリング帯域幅の合計の 10 % がプライオリティ キューに割り当てられます。 キュー 1 をプライオリティ キューとして設定することも可能です。 ただし、両方のキューをプライオリティ キューとして設定することはできません。

    リングの帯域幅が 10Gbps である場合、SRR はまずキュー 2 に 10Gbps の 20 %(2 Gbps)を供給します。 残りの 8 Gbps リング 帯域幅は設定によってキュー 1 およびキュー 2.によって共有されます、キュー 1 は 90% 8 Gbps の保守され、キュー 2 は再度 10% 8 Gbps の保守されます。 この 8 Gbps の帯域幅は、共有モードで SRR により処理されます。 これは、設定されている帯域幅の比率は保証されるが、それには制限されないことを意味します。

    注: mls qos srr-queue input priority-queue 2 bandwidth 0 コマンドを使用すると、プライオリティ キューを無効にできます。

    Distribution1(config)#do show mls qos input
    Queue     :       1       2
    ----------------------------------------------
    buffers   :      90      10
    bandwidth :      90      10
    priority  :       0       0
    threshold1:     100     100
    threshold2:     100     100
    Distribution1(config)#

出力の QoS 機能

輻輳の管理と回避は、Cisco Catalyst 3750 スイッチによりサポートされている出力 QoS 機能です。 輻輳の管理と回避は、3 ステップのプロセスです。 そのステップとは、キューイング、廃棄、およびスケジューリングです。

キューイングにより、QoS ラベルに基づいてさまざまなソフトウェア キューにパケットが配置されます。 Cisco Catalyst 3750 スイッチには 4 つの出力キューがあり、キューごとに 3 つのしきい値があります。 トラフィックが QoS ラベルで分類され、マークされる後、QoS ラベルに基づいて 4 つの異なるキューにトラフィックを割り当てることができます。

各キューは、バッファ サイズ、予約済みしきい値、しきい値レベル、および最大しきい値を使用して設定できます。 キューの長さを管理し、さまざまなトラフィックの分類に関して廃棄の優先順位を決定するために、重み付けテール ドロップ(WTD)が使用されます。 入力キューのパラメータはグローバルに設定されます。 入力キューのパラメータはポート単位では設定されません。 一方、出力キューのパラメータはポート単位で設定されます。 そのため設定はポート単位で行います。 各ポートでの異なった設定はできません。 各ポートは、2 つの異なる方法で設定できます。 これはキュー セットと呼ばれます。 グローバル設定では、最大 2 つの異なるキュー セットを設定できます。 続いて、これらの 2 つのセットの一方をインターフェイスに適用できます。

入力キューと出力キューは両方とも SRR により処理されます。SRR はパケットが送信されるレートを制御します。 入力キューに対しては、SRR はパケットをスタック リングに送信します。 SRR は、「shaped」(シェーピング済み)と「shared」(共有)と呼ばれる 2 つのモードで動作可能です。 入力キューでは、共有がデフォルトのモードで、サポートされる唯一のモードです。 共有モードでは、キューは、設定された重み付けに従ってキュー間で帯域幅を共有します。 帯域幅はこのレベルで保証されますが、このレベルに制限されるものではありません。 シェーピング済みモードでは、出力キューには帯域幅の比率が保証され、出力キューはその総量にレート制限されています。 シェーピングされるトラフィックは、リンクがアイドル状態であっても、割り当てられた帯域幅以上は使用しません。 シェーピングにより、時間の流れの中で均等なトラフィックのフローが実現され、バースト性トラフィックの浮き沈みが緩和されます。 キュー 1 は、プライオリティ キューとして設定できます。

出力 QoS のコマンド

このセクションでは、すべての使用可能な出力 QoS コマンドを分類しています。

  • キュー マップ設定:

    CoS 値を出力キューにマッピングするには、次のコマンドを使用します。

    Rack1SW1(config)#mls qos srr-queue output cos-map queue ?
      <1-4>  enter cos-map output queue id
    
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1
     threshold ? <1-3>  enter cos-map threshold id
    
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1
     threshold 1 ? <0-7>  8 cos values separated by spaces

    DSCP 値を出力キューにマッピングするには、次のコマンドを使用します。

    Rack1SW1(config)#mls qos srr-queue output dscp-map queue ?
      <1-4>  enter dscp-map output queue id
    
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1
     threshold ? <1-3>  enter dscp-map threshold id
    
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1
     threshold 1 ? <0-63>  dscp values separated by spaces
     (up to 8 values total)
  • キュー設定:

    出力キューの設定により、2 つのキュー セットを設定できます。 各キュー セットには、4 つの出力キューのバッファ サイズとしきい値を設定するためのオプションがあります。 続いて、キュー セットの任意の 1 つを任意のポートに適用できます。 デフォルトでは、スイッチで QoS を有効にした場合、キュー セット 1 がすべてのポートに割り当てられます。

    Rack1SW1(config)#mls qos queue-set output ?
      <1-2>  queue-set id
    
    Rack1SW1(config)#mls qos queue-set output 1 ?
      buffers    assign buffers to each egress queue
      threshold  Assign threshold values to a queue
    

    4 つすべての出力キューのバッファ サイズを設定するには、次のコマンドを使用します。

    Rack1SW1(config)#mls qos queue-set output 1 buffers ?
      <0-99>  enter buffer percentage for queue 1 0-99
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 ?
      <1-100>  enter buffer percentage for queue 2 1-100
     (includes CPU buffer)
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 ?
      <0-99>  enter buffer percentage for queue 3 0-99
    
    Rack1SW1(config)#mls qos queue-set output 1 buffers 10 20 30 ?
      <0-99>  enter buffer percentage for queue 4 0-99

    各キューの 2 つのしきい値、予約済みおよび最大のしきい値(しきい値 3 はデフォルトでは 100 % で変更不可能)を設定するには、次のコマンドを使用します。

    Rack1SW1(config)#mls qos queue-set output 1 threshold ?
      <1-4>  enter queue id in this queue set
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 ?
      <1-400>  enter drop threshold1 1-400
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 ?
      <1-400>  enter drop threshold2 1-400
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60 ?
      <1-100>  enter reserved threshold 1-100
    
    Rack1SW1(config)#mls qos queue-set output 1 threshold 1 50 60
     100 ? <1-400>  enter maximum threshold 1-400

    キュー セットをインターフェイスに適用するには、次のコマンドを使用します(デフォルトでは、スイッチで QoS を有効にした場合、キュー セット 1 がすべてのポートに割り当てられます)。

    Rack1SW1(config-if)#queue-set ?
      <1-2>  the qset to which this port is mapped
  • スケジューラの設定:

    スイッチ インターフェイスには 3 つの異なる設定が使用できます。 その設定は、帯域幅のシェーピング、共有、および制限です。 出力キュー 1 をプライオリティ キューとして設定することも可能です。 プライオリティ キューが有効である場合、その他 3 つのキューを処理する前に、プライオリティ キューが空になるまで、SRR はプライオリティ キューを処理します。 ただし、入力プライオリティ キューでは、SRR は設定済みの値を使用してプライオリティ キューを処理します。

    Rack1SW1(config-if)#srr-queue bandwidth ?
      limit  Configure bandwidth-limit for this interface
      shape  Configure shaping on transmit queues
      share  Configure shared bandwidth
    
    Rack1SW1(config-if)#priority-queue ?
      out  egress priority queue

    帯域幅の制限の設定:

    Rack1SW1(config-if)#srr-queue bandwidth limit ?
      <10-90>  enter bandwidth limit for interface  as percentage

    帯域幅のシェーピングの設定:

    Rack1SW1(config-if)#srr-queue bandwidth shape ?
      <0-65535>  enter bandwidth weight for queue id 1
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 ?
      <0-65535>  enter bandwidth weight for queue id 2
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 ?
      <0-65535>  enter bandwidth weight for queue id 3
    
    Rack1SW1(config-if)#srr-queue bandwidth shape 10 20 30 ?
      <0-65535>  enter bandwidth weight for queue id 4

    帯域幅の共有の設定:

    Rack1SW1(config-if)#srr-queue bandwidth share ?
      <1-255>  enter bandwidth weight for queue id 1
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 ?
      <1-255>  enter bandwidth weight for queue id 2
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 20 ?
      <1-255>  enter bandwidth weight for queue id 3
    
    Rack1SW1(config-if)#srr-queue bandwidth share 10 20 30 ?
      <1-255>  enter bandwidth weight for queue id 4

    プライオリティ キューが有効である場合(この場合は最初の帯域幅重み付けが無視され比率計算では使用されません)を除き、4 つすべてのキューが SRR に参加します。 他のキューを処理する前に、プライオリティ キューは空になるまで処理されます。 プライオリティ キューを有効にするには、priority-queue out インターフェイス設定コマンドを使用します。

デフォルト設定

デフォルトのキュー マップ設定:

/image/gif/paws/91862/cat3750-qos-config10.gif

次のように、要件に従ってこれらのデフォルトのマッピングは変更できます。


!--- Map CoS to Egress Queue

Distribution1#show mls qos maps cos-output-q
   Cos-outputq-threshold map:
              cos:  0   1   2   3   4   5   6   7
              ------------------------------------
  queue-threshold: 2-1 2-1 3-1 3-1 4-1 1-1 4-1 4-1


!--- Map DSCP to Egress Queue

Distribution1#show mls qos maps dscp-output-q
   Dscp-outputq-threshold map:
     d1 :d2  0    1    2    3    4    5    6    7    8    9
     ------------------------------------------------------------
     0 :  02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01 02-01
     1 :  02-01 02-01 02-01 02-01 02-01 02-01 03-01 03-01 03-01 03-01
     2 :  03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01 03-01
     3 :  03-01 03-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01
     4 :  01-01 01-01 01-01 01-01 01-01 01-01 01-01 01-01 04-01 04-01
     5 :  04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01 04-01
     6 :  04-01 04-01 04-01 04-01

デフォルトのキュー設定:

cat3750-qos-config11.gif

出力キューのデフォルト設定はほとんどの状況に適しています。 出力キューを完全に理解していて、これらの設定が使用する QoS ソリューションに合わない場合にのみ、デフォルト設定を変更してください。

2 つのキュー セットが設定され、デフォルトではキュー セット 1 がすべてのポートに割り当てられます。 各キューは 25%総バッファ領域の割り当てられます。 各キューには、割り当て済みバッファ スペースの 50 %(合計バッファ スペースの 12.5 %)が予約されます。 すべての予約済みバッファの合計が予約済みプールであり、残りのバッファは共通プールの一部になります。 デフォルト設定では、パケットが廃棄される前にこのキューが保持できる最大メモリとして 400 % が設定されています。

Distribution1#show mls qos queue-set 1
Queueset: 1
Queue     :       1       2       3       4
----------------------------------------------
buffers   :      25      25      25      25
threshold1:     100     200     100     100
threshold2:     100     200     100     100
reserved  :      50      50      50      50
maximum   :     400     400     400     400

Distribution1#show mls qos queue-set 2
Queueset: 2
Queue     :       1       2       3       4
----------------------------------------------
buffers   :      25      25      25      25
threshold1:     100     200     100     100
threshold2:     100     200     100     100
reserved  :      50      50      50      50
maximum   :     400     400     400     400

Distribution1#show mls qos int gigabitEthernet 1/0/20 buffers
GigabitEthernet1/0/20
The port is mapped to qset : 1
The allocations between the queues are : 25 25 25 25

デフォルトのスケジューラ設定:

プライオリティ キューは無効です。 SRR には、シェーピング済みモードと共有モードの両方が設定されます。 シェーピング済みモードの重み付けは、共有モードの値よりも優先されます。 そのため、最終結果ではキュー 1 がシェーピング済みモードで処理され、キュー 2、3、および 4 が共有モードで処理されます。 これはキュー 1 が(1/25 の)パーセントである、または帯域幅の 4%、保守されることを絶対値と意味します。 キュー 2、3 および 4 は帯域幅の 25%で保守されます。 帯域幅が利用できる場合、2 つ、3 つおよび 4 つを帯域幅の 25%以上で保守することができます並べます。

Distribution1#show mls qos int gigabitEthernet 1/0/20 queueing
GigabitEthernet1/0/20
Egress Priority Queue : disabled
Shaped queue weights (absolute) :  25 0 0 0
Shared queue weights  :  25 25 25 25
The port bandwidth limit : 100  (Operational Bandwidth:100.0)
The port is mapped to qset : 1

キューイング、廃棄およびスケジューリング

設定例を次に示します。

  • キュー マップ設定:

    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1
     threshold 3 5
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 1
     threshold 1 2 4
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 2 
     threshold 2 3
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 2
     threshold 3 6 7
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 3
     threshold 3 0
    Rack1SW1(config)#mls qos srr-queue output cos-map queue 4
     threshold 3 1
    
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 1
     threshold 3  46
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 1  16
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 1  18 20 22
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 1  25
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 1  32
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 1  34 36 38
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 2  24 26
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 2
     threshold 3  48 56
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 3
     threshold 3  0
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4
     threshold 1  8
    Rack1SW1(config)#mls qos srr-queue output dscp-map queue 4
     threshold 3  10 12 14
    
  • キュー設定:

    この設定はすべてのインターフェイスで両方のキュー セット 1 および 2.の設定を、キュー 設定 しました 1 つを適用されますデフォルトで示します。

    Rack1SW3(config)#mls qos queue-set output 1 buffers 10 10 26 54
    Rack1SW3(config)#mls qos queue-set output 2 buffers 16 6 17 61
    
    Rack1SW3(config)#mls qos queue-set output 1 threshold 2 70 80
     100 100
    Rack1SW3(config)#mls qos queue-set output 1 threshold 4 40 100
     100 100
    
    Rack1SW3(config)#mls qos queue-set output 2 threshold 1 149 149
     100 149
    Rack1SW3(config)#mls qos queue-set output 2 threshold 2 118 118
     100 235
    Rack1SW3(config)#mls qos queue-set output 2 threshold 3 41 68
     100 272
    Rack1SW3(config)#mls qos queue-set output 2 threshold 4 42 72
     100 242
    
    Rack1SW3(config)#int fa 1/0/11
    Rack1SW3(config-if)#queue-set 2
    

    インターフェイス 1/0/11 はキュー セット 2 を使用して適用されます。

    Rack1SW3(config-if)#do show mls qos int fa 1/0/10 buffers
    FastEthernet1/0/10
    The port is mapped to qset : 1
    The allocations between the queues are : 10 10 26 54
    
    Rack1SW3(config-if)#do show mls qos int fa 1/0/11 buffers
    FastEthernet1/0/11
    The port is mapped to qset : 2
    The allocations between the queues are : 16 6 17 61
  • スケジューラの設定:

    Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5
    Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0
    

    Cisco Catalyst 3750 の出力キューでは Low Latency Queueing(LLQ; 低遅延キューイング)はサポートされていません。 プライオリティ キューイングはサポートされています。 priority-queue out を設定すると、キュー 1 はパケットがあれば常に処理されます。

    Rack1SW3(config-if)#srr-queue bandwidth share 1 75 25 5
    Rack1SW3(config-if)#srr-queue bandwidth shape  3  0  0  0
    Rack1SW3(config-if)#priority-queue out
    

    このコマンドを設定した場合、SRR に参加するキューが 1 つ少なくなるため、SRR の重み付けとキュー サイズの比率が影響を受けます。 これは、srr-queue bandwidth shape または srr-queue bandwidth share コマンドの weight1 が無視される(比率計算では使用されない)ことを意味します。

次のコマンドは、特定のキューでの廃棄を確認するためのものです。

ステップ 1:

1/ #show platform pm if-numbers

提示プラットフォーム pm 数コマンドを使用し、インターフェイスに相当してポート情報をチェックして下さい(これはの 3750) 発信インターフェイスです。 たとえば、FAS 0/3 はポート 0/4 です。 ポート値として 4 つを保存して下さい; 最初の値がゼロではない場合、ポート番号の後で ASIC 数を与えて下さい。

interface gid gpn lpn port slot unit slun port-type lpn-idb gpn-idb
------------------------------------------------------------------------
---------
Gi0/1     1    1    25   0/1  1    1    1    local     Yes     Yes
Gi0/2     2    2    26   0/0  1    2    2    local     Yes     Yes
Fa0/1     3    3    1    0/2  1    1    3    local     Yes     Yes
Fa0/2     4    4    2    0/3  1    2    4    local     Yes     Yes
Fa0/3     5    5    3    0/4  1    3    5    local     Yes     Yes
Fa0/4     6    6    4    0/5  1    4    6    local     Yes     Yes
Fa0/5     7    7    5    0/6  1    5    7    local     Yes     Yes
Fa0/6     8    8    6    0/7  1    6    8    local     Yes     Yes

インターフェイス fa 0/3 に相当するポート値は 0/4 です。 この場合提示プラットフォーム ポート ASIC 統計のインターフェイス fa 0/3 のキュー ドロップがポート 4 コマンドを廃棄するのを表示できます。

2/ #show platform port-asic stats drop port 4 
       
Port-asic Port Drop Statistics - Summary
========================================
  RxQueue 0 Drop Stats: 0
  RxQueue 1 Drop Stats: 0
  RxQueue 2 Drop Stats: 0
  RxQueue 3 Drop Stats: 0
...
 
  Port 4 TxQueue Drop Statistics
    Queue 0
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 0
    Queue 1
      Weight 0 Frames 0
      Weight 1 Frames 2755160   <--- Here is an example of drops
      Weight 2 Frames 0
    Queue 2
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 0
    Queue 3
      Weight 0 Frames 0
      Weight 1 Frames 0
      Weight 2 Frames 8

ステップ 2:

  • 帯域幅の制限の設定:

    ポートの最大出力を制限するために、srr キュー 帯域幅制限インターフェイスコンフィギュレーションコマンドを設定して下さい。 80%にこのコマンドを設定する場合、ポートはアイドル状態時間の 20%です。 行比率は接続された速度の 80%に廃棄します。 これらの値はハードウェアが 6 ずつ行比率を調節するので正確ではないです。 このコマンドは 10 ギガビット イーサネット インターフェイスで利用できません。

    srr-queue bandwidth limit weight1
    
    

    weight1 がポートが限られるはずであるポート速度のパーセントであるところ。 範囲は 10 から 90 です。

    注: 出力キューのデフォルト設定はほとんどの状況に適しています。 出力キューの完全な理解があるときだけ、そしてこれらの設定が Quality of Service (QoS) ソリューションに会わなければそれらを変更する必要があります。

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 91862