Catalyst 2940 スイッチ ソフトウェア コンフィギュレーション ガイド 12.1(22)EA11 and Later
QoS の設定
QoS の設定
発行日;2012/02/03 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 5MB) | フィードバック

目次

QoS の設定

QoS の概要

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

CoS の概要

ポート プライオリティ

出力 CoS キュー

QoS の設定

QoS のデフォルト設定

ポートの信頼状態による分類の設定

QoS ドメイン内のポートの信頼状態の設定

インターフェイスの CoS 値の設定

信頼境界の設定

パススルー モードのイネーブル化

出力キューの設定

CoS プライオリティ キューの設定

WRR プライオリティの設定

QoS 情報の表示

QoS の設定

この章では、標準の QoS(Quality of Service)を使用して、Catalyst 2940 スイッチ上で QoS を設定する手順について説明します。QoS により、特定のトラフィック タイプを他のタイプより優先的に処理できます。QoS を使用しない場合、スイッチはパケットの内容およびサイズに関わらず、ベストエフォート型のサービスを提供します。信頼性、遅延限度、またはスループットに関して保証することなく、スイッチはパケットを送信します。


) この章で使用するコマンドの構文および使用方法の詳細については、このリリースに対応するコマンド リファレンスを参照してください。


QoS は、デバイス マネージャまたは CLI(コマンドライン インターフェイス)から設定できます。デバイス マネージャの詳細については、デバイス マネージャ オンライン ヘルプを参照してください。

この章で説明する内容は、次のとおりです。

「QoS の概要」

「QoS の設定」

「QoS 情報の表示」

QoS の概要

ここでは、スイッチに QoS を実装する手順について説明します。ネットワークは通常、ベストエフォート型の配信方式で動作します。したがって、すべてのトラフィックに等しいプライオリティが与えられ、正しいタイミングで配信される可能性も同じです。輻輳が発生した場合に、廃棄される可能性についても、すべてのトラフィックで同じです。

QoS 機能を設定するとき、輻輳管理および輻輳回避を使用すると優先的に処理できます。ネットワークに QoS を実装すると、ネットワーク パフォーマンスの予測可能性が向上し、帯域幅をより効率的に利用できるようになります。

QoS を実装する作業はレイヤ 2 フレームのプライオリティ値に基づきます。

レイヤ 2 802.1Q フレーム ヘッダーには、2 バイトのタグ制御情報フィールドがあり、上位 3 ビット(ユーザ プライオリティ ビット)で Class of Service(CoS; サービス クラス)値が伝達されます。レイヤ 2 802.1Q トランクとして設定されたインターフェイス上では、ネイティブ VLAN のトラフィックを除くすべてのトラフィックが 802.1Q フレームにされます。他のフレーム タイプでレイヤ 2 CoS 値を伝送することはできません。レイヤ 2 CoS 値の範囲は、0(ロー プライオリティ)~ 7(ハイ プライオリティ)です。

図25-1 フレームおよびパケットにおける QoS 分類レイヤ

 

インターネットにアクセスするすべてのスイッチおよびルータは、クラス情報に基づいて、同じクラス情報が与えられているパケットは同じ扱いで転送を処理し、異なるクラス情報のパケットにはそれぞれ異なる扱いをします。パケットのクラス情報は、設定されているポリシー、パケットの詳細な検証、またはその両方に基づいて、エンド ホストが割り当てるか、または伝送中にスイッチまたはルータで割り当てることができます。パケットの詳細な検証は、コア スイッチおよびルータの負荷が重くならないように、ネットワークのエッジ付近で行います。

パス上のスイッチおよびルータは、クラス情報を使用して、個々のトラフィック クラスに割り当てるリソースの容量を制限できます。トラフィックを処理するときの、各装置の動作をホップ単位動作といいます。パス上のすべての装置に一貫性のあるホップ単位動作をさせることによって、エンドツーエンドの QoS ソリューションを構築できます。

ネットワーク上で QoS を実装する作業は、インターネットワーキング装置が提供する QoS 機能、ネットワークのトラフィック タイプおよびパターン、さらには着信および発信トラフィックに求める制御のきめ細かさによって、簡単にも複雑にもなります。

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

スイッチは、QoS ベースの 802.1p CoS 値を提供します。QoS は、分類およびスケジューリングを使用して、スイッチからのネットワーク トラフィックを予測可能な方法で送信します。QoS による分類では、各フレームにプライオリティ別の CoS 値が検証され、電話など、プライオリティの高いトラフィックが優先されます。

CoS の概要

Catalyst 6000 ファミリー スイッチとともに使用する Catalyst 2940 スイッチ上で 802.1p CoS を設定する場合は、あらかじめ Catalyst 6000 のマニュアルを参照してください。802.1p の実装方式が異なるので、互換性を保証するには、その相違を理解しておく必要があります。

ポート プライオリティ

管理目的で定義された VLAN のユーザから受信したフレームは、分類、すなわち タグ付け してから他の装置へ伝送されます。管理者が定義したルールに基づいて、各フレーム ヘッダーに一意の識別情報(タグ)が挿入されてから転送されることになります。各装置では、タグを検証し、認識した上で、他のスイッチ、ルータ、または端末にブロードキャストを行うか、または伝送します。フレームが最終スイッチまたはルータに到達すると、タグが削除されて、宛先の端末に送信されます。識別情報(タグ)なしでトランクまたはアクセス ポートに割り当てられた VLAN を、ネイティブまたはタグなしフレームと呼びます。

タグ情報のある IEEE 802.1Q フレームには、ヘッダー フレームのプライオリティ値が使用されます。ネイティブ フレームには、入力ポートのデフォルト プライオリティが使用されます。

スイッチ上の各ポートには、着信トラフィック用に 1 つずつ受信キュー バッファ(入力ポート)があります。タグなしフレームが着信すると、そのフレームのポート デフォルト プライオリティとして、ポートの値が割り当てられます。この値は、CLI または CMS を使用して割り当てます。タグ付きのフレームは、引き続きそのフレームに割り当てられた CoS 値を使用して、入力ポートを通過します。

出力 CoS キュー

スイッチは、各出力ポートで 4 つの CoS キューをサポートしています。各キューで、次のタイプのスケジューリングを指定できます。

完全優先スケジューリング

完全優先スケジューリングは、キューのプライオリティに基づきます。ハイ プライオリティのキューにあるパケットは、常に最初に送信され、ロー プライオリティのキューにあるパケットは、ハイ プライオリティのキューが空になるまでは送信されません。

デフォルトのスケジューリング方式は完全優先です。

WRR スケジューリング

Weighted Round-Robin(WRR; 重み付きラウンドロビン)スケジューリングでは、他の CoS キューとの比較でキューの重要性(ウェイト)を示す値を指定しなければなりません。WRR スケジューリングは、ロー プライオリティのキューがハイ プライオリティのトラフィック伝送中に完全に放置されないようにします。WRR スケジューラは、いくつかのパケットを各キューから順に送信します。送信されるパケットの数は、関連するキューの重要性に応じます。たとえば、あるキューのウェイトが 3 で、別のキューのウェイトが 4 である場合、第 2 のキューからパケットが 4 つ送信されるたびに、最初のキューから 3 つ送信されます。このスケジューリングを使用することによって、ロー プライオリティのキューは、ハイ プライオリティのキューが空にならなくてもパケットを送信できます。

QoS の設定

QoS を設定する前に、次の事項を十分に理解しておく必要があります。

使用するアプリケーションのタイプおよびネットワークのトラフィック パターン

トラフィックの特性およびネットワークのニーズ。バースト性の高いトラフィックかどうかの判別。音声およびビデオ ストリーム用の帯域確保の必要性。

ネットワークの帯域幅要件および速度

ネットワーク上の輻輳発生位置

ここでは、スイッチ上で QoS を設定する手順について説明します。

「QoS のデフォルト設定」

「ポートの信頼状態による分類の設定」

「出力キューの設定」

QoS のデフォルト設定

QoS のデフォルト設定は、次のとおりです。

デフォルトのポート CoS 値は 0 です。

デフォルトのポート CoS 値はすべてのタグなしの着信パケットに割り当てられます。各タグ付きパケットの CoS 値は変更されないままです。

デフォルトでは、ポートの信頼状態は設定されません。

トラフィックはすべて 1 つの出力キューから送信されます。

ポートの信頼状態による分類の設定

ここでは、ポートの信頼状態を使用して着信トラフィックを分類する方法について説明します。

「QoS ドメイン内のポートの信頼状態の設定」

「インターフェイスの CoS 値の設定」

「信頼境界の設定」

QoS ドメイン内のポートの信頼状態の設定

QoS ドメインに入るパケットは、QoS ドメインのエッジで分類されます。パケットがエッジで分類されると、QoS ドメイン内の各スイッチでパケットを分類する必要がないので、QoS ドメイン内のスイッチ ポートをいずれか 1 つの信頼状態に設定できます。図25-2 に、ネットワーク トポロジの例を示します。

図25-2 QoS ドメイン内のポートの信頼状態

 

ポートが受信したトラフィックの分類を信頼するように設定するには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface interface-id

信頼するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

有効なインターフェイスには物理インターフェイスが含まれます。

ステップ 3

mls qos trust [ cos ]

ポートの信頼状態を設定します。

デフォルトでは、ポートは信頼性がありません。トラフィックはすべて 1 つの出力キューから送信されます。

cos キーワード を使用してパケット CoS 値を持つ入力パケットを分類します。パケットに割り当てられる出力キューは、パケット CoS 値に基づいて決まります。このキーワードを入力すると、「出力キューの設定」に示すようにトラフィックは 4 つの QoS キューにより送信されます。

コマンドの詳細については、このリリースに対応するコマンド リファレンスを参照してください。

ステップ 4

end

特権 EXEC モードに戻ります。

ステップ 5

show mls qos interface [ interface-id ]

設定を確認します。

ステップ 6

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

mls qos trust cos コマンドを入力すると、DSCP 値は 表25-1 に示される値に従って変更されます。

 

表25-1 デフォルトの CoS/DSCP マップ

CoS 値

0

1

2

3

4

5

6

7

DSCP 値

0

8

16

24

32

40

48

56


) CoS/DSCP 値は設定できません。


ポートを未設定の状態に戻す場合は、 no mls qos trust インターフェイス コンフィギュレーション コマンドを使用します。

インターフェイスの CoS 値の設定

QoS は、信頼性のあるポートおよび信頼性のないポートで受信したタグなしフレームに、 mls qos cos インターフェイス コンフィギュレーション コマンドで指定された CoS 値を割り当てます。

デフォルトのポート CoS 値を定義するか、またはポート上のすべての着信パケットにデフォルトの CoS 値を割り当てるには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface interface-id

信頼するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

有効なインターフェイスには物理インターフェイスが含まれます。

ステップ 3

mls qos cos { default-cos | override }

デフォルトのポート CoS 値を設定します。

default-cos には、ポートに割り当てるデフォルトの CoS 値を指定します。ポートが CoS を信頼するように設定されており、パケットがタグなしの場合、デフォルトの CoS 値がパケットの CoS 値になります。CoS 値に指定できる範囲は 0 ~ 7 です。デフォルト値は 0 です。

着信パケットにすでに設定されている信頼状態を上書きし、すべての着信パケットにデフォルトのポート CoS 値を適用する場合は、 override キーワードを使用します。デフォルトでは、CoS の上書きはディセーブルに設定されています。

特定のポートに届くすべての着信パケットに、他のポートからのパケットより高いプライオリティを与える場合には、 override キーワードを使用します。着信パケットがタグ付きの場合、出力ポートで、ポートのデフォルト CoS を使用してパケットの CoS 値が変更されます。

ステップ 4

end

特権 EXEC モードに戻ります。

ステップ 5

show mls qos interface

設定を確認します。

ステップ 6

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

デフォルトの設定に戻す場合は、no mls qos cos { default-cos | override } インターフェイス コンフィギュレーション コマンドを使用します。

信頼境界の設定

一般的なネットワークでは、図25-2で示すように Cisco IP Phone をスイッチ ポートに接続します。電話からスイッチに送信されたトラフィックは通常、802.1Q ヘッダーを使用するタグでマーキングされます。ヘッダーには VLAN 情報とともに、パケットのプライオリティを決定する 3 ビットの CoS フィールドが含まれます。Cisco IP Phone の設定では通常、電話からスイッチに送信されるトラフィックを信頼し、音声トラフィックがネットワーク上の他のタイプのトラフィックより優先されるようにします。 mls qos trust cos インターフェイス コンフィギュレーション コマンドを使用することによって、電話を接続するスイッチ ポートがそのポートで受信したあらゆるトラフィックの CoS ラベルを信頼するように設定できます。

状況によっては、IP Phone に PC またはワークステーションを接続する場合もあります。このような状況では、スイッチの CLI から switchport priority extend cos インターフェイス コンフィギュレーション コマンドを使用して、PC から受信したトラフィックのプライオリティが上書きされるように電話を設定できます。このコマンドを使用すると、PC がハイ プライオリティのデータ キューを使用しないようにできます。

ただし、ユーザが電話をバイパスして PC をスイッチに直接接続した場合、スイッチは(信頼する CoS の設定に基づいて)PC によって生成された CoS ラベルを信頼するので、ハイ プライオリティ キューが誤って使用される可能性があります。信頼境界機能は、CDP を使用して Cisco IP Phone(Cisco IP Phone 7910、7935、7940、7960 など)がスイッチ ポートに接続されていることを検出することによって、この問題を解消します。電話が検出されなかった場合、信頼境界機能はスイッチ ポートの信頼設定をディセーブルにし、高プライオリティ キューが誤って使用されないようにします。

スイッチ ポートに信頼境界を設定するには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

cdp enable

CDP をグローバルでイネーブルにします。デフォルトでは、イネーブルに設定されています。

ステップ 3

interface interface-id

信頼するインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

有効なインターフェイスには物理インターフェイスが含まれます。

ステップ 4

cdp enable

インターフェイスで CDP をイネーブルにします。デフォルトでは CDP はイネーブルに設定されています。

ステップ 5

mls qos trust device cisco-phone

Cisco IP Phone をインターフェイス上で信頼性のある装置として設定します。

ステップ 6

mls qos trust cos

入力パケットの CoS 値を信頼するように、ポートの信頼状態を設定します。デフォルトでは、ポートは信頼性がありません。このコマンドの詳細については、このリリースに対応するコマンド リファレンスを参照してください。

ステップ 7

end

特権 EXEC モードに戻ります。

ステップ 8

show mls qos interface [ interface-id ]

設定を確認します。

ステップ 9

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

no mls qos trust インターフェイス コンフィギュレーション コマンドを入力しても、信頼境界はディセーブルになりません。このコマンドを入力し、ポートが Cisco IP Phone に接続されている場合、ポートは受信したトラフィックの分類を信頼しないことになります。信頼境界をディセーブルにするには、 no mls qos trust device インターフェイス コンフィギュレーション コマンドを使用します。

mls qos cos override インターフェイス コンフィギュレーション コマンドを入力した場合、ポートは Cisco IP Phone に接続されている場合も含めて、受信したトラフィックの分類を信頼しません。

表25-2 に、IP Phone がある場合とない場合のポート設定を示します。

 

表25-2 信頼境界がイネーブルの場合のポート設定

ポートの設定
Cisco IP Phone がある場合
Cisco IP Phone がない場合

ポートは着信パケットの CoS 値を信頼します。

パケットの CoS 値が信頼されます。

パケットの CoS 値がデフォルトの CoS 値に割り当てられます。

ポートは着信パケットにデフォルトの CoS 値を割り当てます。

パケットの CoS 値がデフォルトの CoS 値に割り当てられます。

パケットの CoS 値がデフォルトの CoS 値に割り当てられます。

パススルー モードのイネーブル化

スイッチがパススルー モードの場合、スイッチは DSCP 値を変更しないで着信パケットの CoS 値を使用し、4 つの出力キューの 1 つからパケットを送信します。デフォルトでは、パススルー モードはディセーブルです。スイッチは、パケットを変更しないですべての着信パケットに 0 の CoS 値を割り当てます。スイッチは、パケットの内容またはサイズに関係なく、各パケットにベスト エフォート型のサービスを提供し、単一出力キューからパケットを送信します。

パススルー モードをイネーブルにするには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface interface-id

パススルー モードをイネーブルにするインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

有効なインターフェイスには物理インターフェイスが含まれます。

ステップ 3

mls qos trust cos pass-through dscp

パススルー モードをイネーブルにします。着信パケットの CoS 値を信頼し、DSCP 値を変更しないでパケットを送信するように、インターフェイスが設定されます。

ステップ 4

end

特権 EXEC モードに戻ります。

ステップ 5

show mls qos interface [ interface-id ]

設定を確認します。

ステップ 6

copy running-config startup-config

(任意)コンフィギュレーション ファイルに設定を保存します。

パススルー モードをディセーブルにするには、 no mls qos trust pass-through dscp インターフェイス コンフィギュレーション コマンドを使用します。

パススルー モードがイネーブルのときに、 mls qos cos override および mls qos trust [ cos ] インターフェイス コマンドを入力すると、パススルー モードがディセーブルになります。

mls qos cos override および mls qos trust [ cos ] インターフェイス コマンドがすでに設定されているときに、 mls qos trust cos pass-through dscp インターフェイス コンフィギュレーション コマンドを入力すると、パススルー モードがディセーブルになります。

出力キューの設定

ここでは、出力 キューの設定方法について説明します。

「CoS プライオリティ キューの設定」

「WRR プライオリティの設定」

出力 キューの詳細については、「出力 CoS キュー」を参照してください。

CoS プライオリティ キューの設定

CoS プライオリティ キューを設定するには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

wrr-queue cos-map qid cos1...cosn

CoS プライオリティ キューのキュー ID を指定します(範囲は 1 ~ 4 で、1 が最下位の CoS プライオリティ キューです)。

キュー ID にマッピングする CoS 値を指定します。

デフォルト値は次のとおりです。

CoS 値 CoS プライオリティ キュー

0、1 1

2、3 2

4、5 3

6、7 4

ステップ 3

end

特権 EXEC モードに戻ります。

ステップ 4

show wrr-queue cos-map

CoS プライオリティ キューのマッピングを表示します。

新しい CoS 設定値をディセーブルにし、デフォルト値に戻すには、 no wrr-queue cos-map グローバル コンフィギュレーション コマンドを使用します。

WRR プライオリティの設定

WRR プライオリティを設定するには、特権 EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

グローバル コンフィギュレーション モードを開始します。

ステップ 2

wrr-queue bandwidth weight1...weight4

WRR ウェイトを 4 つの CoS キューに割り当てます。

WRR 値 weight1 weight4 に指定できる範囲は 1 ~ 255 です。

ステップ 3

end

特権 EXEC モードに戻ります。

ステップ 4

show wrr-queue bandwidth

CoS プライオリティ キューへの WRR 帯域幅割り当てを表示します。

WRR スケジューリングをディセーブルにし、完全優先スケジューリングをイネーブルにするには、 no wrr-queue bandwidth グローバル コンフィギュレーション コマンドを使用します。

QoS 情報の表示

QoS 情報を表示するには、 表25-3 の特権 EXEC コマンドを 1 つまたは複数使用します。

 

表25-3 QoS 情報を表示するためのコマンド

コマンド
目的

show wrr-queue cos-map

CoS プライオリティ キューのマッピングを表示します。

show wrr-queue bandwidth

CoS プライオリティ キューへの WRR 帯域幅割り当てを表示します。