Catalyst 2950/2955 スイッチ ソフトウェア コンフィギュレーション ガイド Cisco IOS Release 12.1(22)EA7
QoS の設定
QoS の設定
発行日;2012/01/14 | ドキュメントご利用ガイド | ダウンロード ; この章pdf , ドキュメント全体pdf (PDF - 6MB) | フィードバック

目次

QoS の設定

QoS の概要

QoS の基本モデル

分類

QoS ACL に基づく分類

クラス マップおよびポリシー マップに基づく分類

ポリシングおよびマーキング

マッピング テーブル

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

CoS の概要

ポート プライオリティ

ポート スケジューリング

出力 CoS キュー

auto-QoS の設定

生成された auto-QoS の設定

設定への auto-QoS の影響

設定時の注意事項

旧ソフトウェア リリースからのアップグレード

VoIP に対する auto-QoS のイネーブル化

auto-QoS 情報の表示

auto-QoS の設定例

標準 QoS の設定

標準 QoS のデフォルト設定

設定時の注意事項

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

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

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

信頼される境界の設定

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

QoS ポリシーの設定

ACL によるトラフィックの分類

クラス マップによるトラフィックの分類

ポリシー マップによるトラフィックの分類、ポリシング、およびマーキング

CoS マップの設定

CoS/DSCP マップの設定

DSCP/CoS マップの設定

出力キューの設定

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

WRR プライオリティの設定

緊急キューのイネーブル化および WRR プライオリティの設定

標準 QoS 情報の表示

標準 QoS の設定例

既存の配線クローゼットに適した QoS の設定

インテリジェント配線クローゼットに適した QoS の設定

QoS の設定

この章では、標準の Quality of Service(QoS; サービス品質)コマンド、または自動 QoS(auto-QoS)コマンドを使用して QoS を設定する方法について説明します。QoS により、特定のトラフィック タイプを他のタイプより優先的に処理できます。QoS を使用しなかった場合、Catalyst 2950 または Catalyst 2955 スイッチはパケットの内容やサイズに関係なく、各パケットにベストエフォート型のサービスを提供します。信頼性、遅延限度、またはスループットを保証することなく、スイッチはパケットを送信します。

この章で説明されている機能を使用するには、Enhanced Software Image(EI; 拡張ソフトウェア イメージ)をスイッチにインストールしておく必要があります。

スイッチに Standard Software Image(SI; 標準ソフトウェア イメージ)をインストールしている場合、一部の機能は設定できません。 表29-1 に、設定できる各機能についての参照先を示します。

 

表29-1 標準ソフトウェア機能について説明しているセクション

内容
セクション

出力ポートでのキューイングおよびスケジューリング

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

QoS の設定

「標準 QoS の設定」

「標準 QoS のデフォルト設定」

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

「出力キューの設定」


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


スイッチは、Modular QoS CLI(MQC)コマンドの一部をサポートしています。MQC コマンドの詳細については、次の URL にアクセスして、「Modular Quality of Service Command Line Interface Overview」を参照してください。

http://www.cisco.com/univercd/cc/td/doc/product/software/ios122/122cgcr/fqos_c/fqcprt8/qcfmdcli.htm#89799

QoS は、Network Assistant を使用することによって、または CLI(コマンドライン インターフェイス)から設定できます。設定手順については、Network Assistant のオンラインヘルプを参照してください。

EI が稼働しているスイッチでは、次のウィザードを使用して QoS を設定することもできます。

プライオリティ データ ウィザード ― TCP ポートまたは UDP ポートに基づいてデータ アプリケーションにプライオリティを設定できます。標準アプリケーション リストが用意されており、優先させるアプリケーション、プライオリティ レベル、さらに優先処理を行うインターフェイスを選択します。プライオリティ データ ウィザードの使用手順については、ウィザードのオンラインヘルプを参照してください。

ビデオ ウィザード ― 指定したビデオ サーバからのトラフィックに、データ トラフィックより高いプライオリティを与えます。このウィザードでは、ビデオ サーバがクラスタ内の単一装置に接続されていることが前提となります。ビデオ ウィザードの使用手順については、ウィザードのオンラインヘルプを参照してください。

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

「QoS の概要」

「auto-QoS の設定」

「auto-QoS 情報の表示」

「auto-QoS の設定例」

「標準 QoS の設定」

「標準 QoS 情報の表示」

「標準 QoS の設定例」

QoS の概要

ここでは、スイッチに QoS を実装する手順について説明します。SI がインストールされているスイッチでは、ここで説明する概念および機能が当てはまらない場合があります。使用可能な機能の一覧については、 表29-1 を参照してください。

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

QoS 機能を設定すると、特定のネットワーク トラフィックを選択し、相対的な重要性に応じてそのトラフィックに優先度を指定し、輻輳管理および輻輳回避技術を使用して、優先処理を実行できます。ネットワークに QoS を実装すると、ネットワーク パフォーマンスの予測可能性が向上し、帯域幅をより効率的に利用できるようになります。

QoS は、Internet Engineering Task Force(IETF)の新しい規格である DiffServ アーキテクチャに基づいて実装します。このアーキテクチャでは、ネットワークに入るときに各パケットを分類することが規定されています。分類は IP パケット ヘッダーの deprecated IP Type-of-Service(ToS; サービス タイプ)フィールドの 6 ビットを使用して、分類( class )情報として伝達されます。

分類情報をレイヤ 2 フレームで伝達することもできます。レイヤ 2 フレームまたはレイヤ 3 パケットのこれらの特殊なビットについて、次に説明します。図29-1 を参照してください。

レイヤ 2 フレームのプライオリティ値

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

他のフレーム タイプでレイヤ 2 CoS 値を伝達することはできません。

レイヤ 2 CoS 値の範囲は、0(ロー プライオリティ)~ 7(ハイ プライオリティ)です。

レイヤ 3 パケットのプライオリティ ビット

レイヤ 3 IP パケットは、Differentiated Services Code Point(DSCP)値を伝送できます。サポートされる DSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および56です。

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

 

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

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

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

QoS の基本モデル

図29-2 に、QoS の基本モデルを示します。入力インターフェイスでのアクションには、トラフィックの分類、ポリシング、およびマーキングがあります。


) スイッチに SI がインストールされている場合は、使用できるのはキューイングおよびスケジューリング機能だけです。


分類では、トラフィックの種類を 1 つずつ区別します。詳細は、「分類」を参照してください。

ポリシングでは、設定されているポリサーに基づいて、パケットが適合か、不適合かを判別します。ポリサーにより、トラフィックのフローが消費する帯域幅が制限されます。この判別結果がマーカーに引き渡されます。詳細は、「ポリシングおよびマーキング」を参照してください。

マーキングでは、パケットが不適合の場合の対処法に関して、ポリサーおよび設定情報を検討し、パケットの扱い(パケットを変更しないで通過させるか、パケットの DSCP 値をマークダウンするか、またはパケットを廃棄するか)を決定します。詳細は、「ポリシングおよびマーキング」を参照してください。

出力インターフェイスでのアクションには、キューイングおよびスケジューリングがあります。

キューイングでは、CoS 値を検討して、4 つの出力キューのどれにパケットを格納するかを決定します。

スケジューリングでは、設定されている Weighted Round Robin(WRR; 重み付きラウンドロビン)のウェイトに基づいて、4 つの出力キューを処理します。

図29-2 QoS の基本モデル

 

分類


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


分類とは、パケットのフィールドを検証して、トラフィックの種類を区別するプロセスです。

分類は物理インターフェイス単位でのみ行われます。VLAN レベルでのパケット分類はサポートされません。

着信トラフィックの分類に、フレームまたはパケットのどのフィールドを使用するかは、ユーザ側で指定します。

非 IP トラフィックには、次の分類オプションを使用できます。

ポートのデフォルトを使用します。フレームに CoS 値が指定されていない場合、スイッチは着信フレームにデフォルトのポート CoS 値を割り当てます。

着信フレームの CoS 値を信頼します(ポートが CoS を信頼するように設定します)。レイヤ 2 の IEEE 802.1Q フレームのヘッダーは、タグ制御情報フィールドの上位 3 ビットで CoS 値を伝達します。CoS 値の範囲は、0(ロー プライオリティ)~ 7(ハイ プライオリティ)です。

非 IP トラフィックに DSCP を信頼するように設定するのは無意味です。このオプションを指定してポートを設定しても、非 IP トラフィックを受信すると、スイッチはデフォルトのポート CoS 値を割り当て、その CoS 値に基づいてトラフィックを分類します。

IP トラフィックには、次の分類オプションを使用できます。

着信パケットの IP DSCP 値を信頼します(ポートが DSCP を信頼するように設定します)。スイッチは内部で使用するパケットに同じ DSCP を割り当てます。IETF は、1 バイトの ToS フィールドの上位 6 ビットを DSCP として定義しています。個々の DSCP 値が表すプライオリティは、設定可能です。サポートされる DSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。

着信パケットの CoS 値(存在する場合)を信頼します。スイッチは、CoS と DSCP のマッピングを使用して DSCP を生成します。


) インターフェイスは、CoS または DSCP のどちらかを信頼するように設定できますが、同時に両方を設定することはできません。


QoS ACL に基づく分類

IP 標準 Access Control List(ACL; アクセス制御リスト)、IP 拡張 ACL、およびレイヤ 2 MAC(メディア アクセス制御)ACL を使用すると、同じ特性(クラス)を備えたパケット グループを定義できます。QoS のコンテキストでは、Access Control Entry(ACE; アクセス制御エントリ)の許可および拒否アクションの意味が、セキュリティ ACL の場合とは異なります。

許可アクションとの一致が検出されると(最初の一致の原則)、指定の QoS 関連アクションが実行されます。

許可アクションとの一致が検出されないまま、すべての ACE の検証が終了した場合、そのパケットでは QoS 処理が実行されません。

インターフェイスに複数の ACL が設定され、パケットで最初の ACL と許可アクションの一致が検出された場合、QoS 処理が開始されます。

スイッチでは、QoS ACL の拒否アクション設定はサポートされません。

クラス マップでシステム定義マスクを使用できます。ただし、次の制限事項があります。

ポリシー マップに含まれる複数のクラス マップで、システム定義マスクとユーザ定義マスクを組み合わせて使用することはできません。

ポリシー マップに含まれるシステム定義マスクは、すべて同じタイプのシステム マスクを使用する必要があります。たとえば、 permit tcp any any ACE を使用するクラス マップと permit ip any any ACE を使用するクラス マップを同じポリシー マップに含めることはできません。

ポリシー マップには、すべて同じユーザ定義マスクまたは同じシステム定義マスクを使用している場合に限り、複数のクラス マップを含めることができます。


) システム定義マスクの詳細については、「ACP の概要」を参照してください。


ACL の制限事項についての詳細は、「ACL の設定」を参照してください。

ACL でトラフィック クラスを定義したあとで、そのトラフィック クラスにポリシーを結合できます。ポリシーにはそれぞれにアクションを指定した複数のクラスを含めることができます。ポリシーには、特定のアグリゲートとしてクラスを分類する(DSCP を割り当てるなど)コマンドまたはクラスのレート制限を実施するコマンドを含めることができます。このポリシーを特定のポートに結合すると、そのポートでポリシーが有効になります。

IP ACL を実装して IP トラフィックを分類する場合は、 access-list グローバル コンフィギュレーション コマンドを使用します。レイヤ 2 MAC ACL を実装してレイヤ 2 トラフィックを分類する場合は、 mac access-list extended グローバル コンフィギュレーション コマンドを使用します。

クラス マップおよびポリシー マップに基づく分類

クラス マップは、特定のトラフィック フロー(またはクラス)を他のあらゆるトラフィックから分離して名前をつけるメカニズムです。クラス マップでは、特定のトラフィック フローをさらに分類するための照合で使用する条件を定義します。この条件には、ACL によって定義されたアクセス グループとの照合を含めることができます。複数のトラフィック タイプを分類する場合は、別のクラス マップを作成し、異なる名前を使用できます。パケットをクラス マップ条件と照合したあとで、ポリシー マップを使用してさらに分類します。

ポリシー マップでは、作用対象のトラフィック クラスを指定します。アクションには、トラフィック クラスの具体的な DSCP 値の設定、トラフィック帯域幅制限の指定、トラフィックが適合する場合に実行するアクションの指定が含まれます。ポリシー マップを効率的に機能させるには、インターフェイスにポリシー マップを結合しなければなりません。

クラス マップを作成するには、 class-map グローバル コンフィギュレーション コマンドまたは class ポリシー マップ コンフィギュレーション コマンドを使用します。多数のポート間でマップを共有する場合には、 class-map グローバル コンフィギュレーション コマンドを使用する必要があります。 class-map グローバル コンフィギュレーション コマンドを入力すると、クラス マップ コンフィギュレーション モードが開始されます。このモードで、 match クラス マップ コンフィギュレーション コマンドを使用して、トラフィックの一致条件を定義します。

ポリシー マップは、 policy-map グローバル コンフィギュレーション コマンドを使用して作成し、名前を付けます。このコマンドを入力すると、ポリシー マップ コンフィギュレーション モードが開始されます。このモードでは、 class または set ポリシー マップ コンフィギュレーション コマンドを使用することによって、特定のトラフィック クラスに対して実行するアクションを指定します。ポリシー マップを効率的に機能させるには、 service-policy インターフェイス コンフィギュレーション コマンドを使用してインターフェイスにマップを結合します。

ポリシー マップには、ポリサー、トラフィックの帯域幅制限、および限度を超えた場合のアクションを定義するコマンドを含めることもできます。詳細は、「ポリシングおよびマーキング」を参照してください。

ポリシー マップには、次の特性もあります。

ポリシー マップには、複数の class ステートメントを指定できます。

1 つのインターフェイスから受信されたトラフィック タイプごとに、別々のポリシー マップ クラスを設定できます。

ポリシー マップのコンフィギュレーション ステートは、インターフェイスの信頼状態のためアクションよりも優先されます。

設定手順については、「QoS ポリシーの設定」を参照してください。

ポリシングおよびマーキング


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


ポリシングには、トラフィックの帯域幅限度を指定するポリサーの作成が伴います。この限度を超えたパケットは、 不適合 パケットです。各ポリサーでは、不適合パケットに対するアクションを指定します。マーカーが実行するこれらのアクションには、パケットの廃棄または新しいユーザ定義値を使用したパケットのマークダウンが含まれます。

個別のポリサーを作成できます。QoS はポリサーで指定された帯域幅限度を、一致したトラフィック クラスごとに別々に適用します。このタイプのポリサーは、 policy-map コンフィギュレーション コマンドを使用して、ポリシー マップの中で設定します。

ポリシングおよびポリサーを設定する場合、次の考慮事項があります。

デフォルトでは、ポリサーは設定されません。

ポリサーを設定できるのは、物理ポートに限られます。VLAN レベルでのポリシングはサポートされません。

入力方向でパケットに適用できるのは、1 つのポリサーだけです。

設定できるのは、平均速度パラメータおよび認定バースト パラメータだけです。

ポリシングは入力インターフェイスで実行されます。

ギガビット対応イーサネット入力ポートでサポートされるポリサーは 60 個です。

10/100 イーサネット入力ポートでサポートされるポリサーは 6 個です。

平均バースト速度の粒度は、10/100 ポートで 1 Mbps、ギガビット イーサネット ポートで 8 Mbps です。

QoS 対応として設定されているインターフェイスを介して受信したすべてのトラフィックは、そのインターフェイスに結合されたポリシー マップに基づいて分類、ポリシング、およびマーキングが行われます。QoS 対応として設定されているトランク インターフェイスの場合、インターフェイスを介して受信した すべて の VLAN のトラフィックは、そのインターフェイスに結合されたポリシー マップに基づいて分類、ポリシング、およびマーキングが行われます。


) 出力インターフェイスにポリサーを設定することはできません。


マッピング テーブル


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


分類時に、QoS は設定可能な CoS/DSCP マップを使用して、受け取った CoS 値から内部 DSCP 値を導き出します。この DSCP 値は、トラフィックのプライオリティを表します。

トラフィックがスケジューリング ステージに到達する前に、QoS は設定可能な DSCP/CoS マップを使用して、内部 DSCP 値から CoS 値を導き出します。CoS 値を使用して、4 種類の出力キューから 1 つが選択されます。

CoS/DSCP マップおよび DSCP/CoS マップのデフォルト値は、使用しているネットワークに適している場合と適さない場合があります。

設定手順については、「CoS マップの設定」を参照してください。

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


) この機能は、SI と EI の両方でサポートされます。


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

CoS の概要

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

ポート プライオリティ

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

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

ポート スケジューリング

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

CoS は、フレームのタグまたはポート情報に応じて、通常プライオリティの送信キューおよびハイ プライオリティの送信キューを指定して各送信ポート(出力ポート)を設定します。通常プライオリティ キュー内のフレームが転送されるのは、ハイ プライオリティ キューのフレームが転送されてからです。

スイッチ(IEEE 802.1p ユーザ プライオリティ)には、4 つのプライオリティ キューがあります。フレームは、ユーザが定義したプライオリティ/キュー マッピングに基づいて適切なキューに転送されます。

出力 CoS キュー

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

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

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

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

WRR スケジューリング

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

完全優先スケジューリングおよび WRR スケジューリング

完全優先スケジューリングおよび WRR スケジューリングは、完全優先キューイングとも呼ばれ、緊急キュー(キュー 4)として出力キューの 1 つを使用します。残りのキューは、WRRに参加します。緊急キューが設定されると、他のキューが WRR スケジューリングに処理される前に、優先キューとして空になるまで処理されます。

wrr-queue bandwidth weight1 weight2 weight3 0 グローバル コンフィギュレーション コマンドを使用することで出力緊急キューをイネーブルにし、WRR ウェイトを他のキューに割り当てることができます。

auto-QoS の設定


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


auto-QoS 機能を使用して、既存の QoS 機能の配置を簡略化できます。auto-QoS はネットワークのデザインを推測します。その結果、スイッチは様々なトラフィック フローに優先順位を付け、デフォルトの QoS 動作を使用せずに、出力キューを適切に使用できます(スイッチは、パケットの内容やサイズに関係なく、各パケットにベストエフォート型のサービスを提供し、単一のキューからパケットを送信します)。

auto-QoS をイネーブルにすると、トラフィック タイプおよび入力パケット ラベルに基づいて、自動的にトラフィックを分類します。スイッチは分類の結果を用いて、適切な出力キューを選択します。

Cisco IP Phone や、Cisco SoftPhone アプリケーションが動作する装置に接続されているポートを特定するには、auto-QoS コマンドを使用します。このコマンドは、アップリンクから信頼できるトラフィックを受信するポートを特定するために使用することもできます。auto-QoS は次の機能を実行します。

IP Phone の有無の検知

QoS 分類の設定

出力キューの設定

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

「生成された auto-QoS の設定」

「設定への auto-QoS の影響」

「設定時の注意事項」

「旧ソフトウェア リリースからのアップグレード」

「VoIP に対する auto-QoS のイネーブル化」

生成された auto-QoS の設定

auto-QoS がイネーブルの場合、auto-QoS は入力パケット ラベルを使用してトラフィックの分類と出力キューの設定を行います( 表29-2 を参照)。

 

表29-2 トラフィック タイプ、パケット ラベル、および出力キュー

VoIP 1
データ
トラフィック
VoIP 制御
トラフィック
ルーティング
プロトコル
トラフィック
STP BPDU 2 トラフィック
リアルタイム ビデオ
トラフィック
その他すべての
トラフィック

DSCP

46

24、26

48

56

34

-

CoS

5

3

6

7

4

CoS からキューへのマッピング

5

3、6、7

4

2

0、1

出力キュー

1% WRR(キュー 4)

70% WRR(キュー 3)

20% WRR(キュー 2)

20% WRR(キュー 2)

10% WRR(キュー 1)

1.VoIP = Voice over IP

2.BPDU = Bridge Protocol Data Unit:ブリッジ プロトコル データ ユニット

表29-3 に、出力キューに対する生成された auto-QoS の設定を示します。

 

表29-3 出力キューに対する auto-QoS の設定

出力キュー
キュー番号
CoS からキューへのマッピング
キュー ウェイト

1% WRR

4

5

1%

70% WRR

3

3、6、7

70%

20% WRR

2

2、4

20%

10% WRR

1

0、1

10%

最初のインターフェイスで auto-QoS 機能をイネーブルにすると、自動的に次の動作が働きます。

Cisco IP Phone に接続されたネットワーク エッジのポートで auto qos voip cisco-phone インターフェイス コンフィギュレーション コマンドを入力すると、スイッチで信頼される境界機能がイネーブルになります。Cisco IP Phone の有無を検知するには、Cisco Discovery Protocol(CDP)が使用されます。Cisco IP Phone が検知されると、インターフェイスの入力分類はパケットで受信された QoS ラベルを信頼するよう設定されます。Cisco IP Phone が検知されない場合、入力分類はパケットの QoS ラベルを信頼しないよう設定されます。スイッチは、 表29-3 の設定に従ってポートの出力キューを設定します。

Cisco SoftPhone が動作する装置に接続されたネットワーク エッジのポートで auto qos voip cisco-softphone インターフェイス コンフィギュレーション コマンドを入力すると、スイッチはポリシングに従ってパケットが適格であるかどうかを判断し、パケットのアクションを指定します。パケットの DSCP 値が 24、26、または 46 でない場合、あるいはパケットが不適格である場合、スイッチは DSCP 値を 0 に変更します。スイッチは、 表29-3 の設定に従ってポートの出力キューを設定します。

ネットワーク内部に接続されたポートで auto qos voip trust インターフェイス コンフィギュレーション コマンドを入力すると、スイッチは入力パケットの CoS 値を信頼します(トラフィックがすでに別のエッジ デバイスで分類されていると仮定)。スイッチは、 表29-3 の設定に従ってポートの出力キューを設定します。

信頼される境界機能の詳細については、「信頼される境界の設定」を参照してください。

auto qos voip cisco-phone auto qos voip cisco-softphone 、または auto qos voip trust インターフェイス コンフィギュレーション コマンドを使用して auto-QoS をイネーブルにする場合、スイッチは、トラフィック タイプと入力パケット ラベルに基づいて自動的に QoS 設定を生成し、 表29-4 に記載されたコマンドをインターフェイスに適用します。

 

表29-4 生成される auto-QoS 設定

説明
自動生成された QoS コマンド

スイッチは自動的に標準の QoS をイネーブルにし、CoS から DSCP へのマッピング(着信パケットの CoS 値を DSCP 値にマップ)の設定を行います( 表29-2 を参照)。

Switch(config)# mls qos map cos-dscp 0 8 16 26 32 46 48 56

auto qos voip trust コマンドを入力すると、パケットで受信した CoS 値を信頼するため、スイッチは自動的にインターフェイスに入力分類を設定します。

Switch(config-if)# mls qos trust cos

auto qos voip cisco-phone コマンドを入力した場合、スイッチは自動的に信頼される境界機能をイネーブルにし、CDP を使って Cisco IP Phone の有無を検知します。

Switch(config-if)# mls qos trust device cisco-phone

auto qos voip cisco-softphone コマンドを入力すると、スイッチは自動的にクラス マップとポリシー マップを作成します。

Switch(config)# class-map match-all AutoQoS-VoIP-RTP-Trust
Switch(config-cmap)# match ip dscp 46
Switch(config)# class-map match-all AutoQoS-VoIP-Control-Trust
Switch(config-cmap)# match ip dscp 24 26
Switch(config)# policy-map AutoQoS-Police-SoftPhone
Switch(config-pmap)# class AutoQoS-VoIP-RTP-Trust
Switch(config-pmap-c)# set ip dscp 46
Switch(config-pmap-c)# police 1000000 4096 exceed-action drop
Switch(config-pmap)# class AutoQoS-VoIP-Control-Trust
Switch(config-pmap-c)# set ip dscp 24
Switch(config-pmap-c)# police 1000000 4096 exceed-action drop

スイッチは、クラス マップとポリシー マップを作成すると、 AutoQoS-Police-SoftPhone というポリシー マップを、Cisco SoftPhone 機能によって auto-QoS がイネーブルになった入力インターフェイスに自動的に適用します。

Switch(config-if)# service-policy input AutoQoS-Police-SoftPhone

スイッチは、このインターフェイスで自動的に出力キューの使用を割り当てます( 表29-3 を参照)。

ネットワーク トラフィックの一部で緊急転送が必要な場合は、緊急キューとしてキュー 4 を設定します。キューの WRR ウェイトが 0 に設定されている場合、このキューが緊急キューとなります。緊急キューに設定できるのは、キュー 4 だけです。

スイッチは CoS から出力キューへのマッピングを次のように設定します。

CoS 値 0 および 1 はキュー 1 を選択

CoS 値 2 および 4 はキュー 2 を選択

CoS 値 3、6 および 7 はキュー 3 を選択

CoS 値 5 はキュー 4 を選択

Switch(config)# wrr-queue bandwidth 10 20 70 1
Switch(config)# no wrr-queue cos-map
Switch(config)# wrr-queue cos-map 1 0 1
Switch(config)# wrr-queue cos-map 2 2 4
Switch(config)# wrr-queue cos-map 3 3 6 7
Switch(config)# wrr-queue cos-map 4 5

設定への auto-QoS の影響

auto-QoS がイネーブルであれば、 auto qos voip インターフェイス コンフィギュレーション コマンド、および生成された設定が、実行コンフィギュレーションに追加されます。

スイッチは、auto-QoS 生成コマンドを、CLI から入力されたのと同様に適用します。ユーザ設定が行われていると、生成されたコマンドの適用が失敗したり、生成されたコマンドによってユーザ設定が上書きされたりすることがあります。このようなアクションは、警告が発行されずに実行されます。生成されたコマンドがすべて正常に適用されると、上書きされなかったユーザ設定が実行コンフィギュレーションとして残ります。上書きされたユーザ設定を復旧するには、現在の設定をメモリに保存せずにスイッチをリロードします。生成されたコマンドが適用に失敗すると、それまでの実行コンフィギュレーションが復元されます。

設定時の注意事項

auto-QoS の設定を行う前に、次の注意事項を確認してください。

Cisco IOS Release 12.1(20)EA2 より前のリリースでは、auto-QoS で設定が可能なのは Cisco IP Phone が設置された VoIP のスイッチのみです。

Cisco IOS Release 12.1(20)EA2 以降では、auto-QoS によって、Cisco IP Phone が設置された VoIP のスイッチのほか、Cisco SoftPhone アプリケーションが動作する装置が接続された VoIP のスイッチの設定も可能です。


) Cisco SoftPhone が動作する装置をポートに接続する場合、スイッチが 1 ポートにつきサポート可能なのは、1 つの Cisco SoftPhone アプリケーションのみです。


auto-QoS のデフォルトを利用するには、別の QoS コマンドを設定する前に、auto-QoS をイネーブルにする必要があります。必要であれば、QoS の設定を微調整できますが、auto-QoS の設定が完了したあとに行うことを推奨します。詳細は、「設定への auto-QoS の影響」を参照してください。

auto-QoS をイネーブルにしたあとで、名前に AutoQoS が含まれているポリシー マップや集約ポリサーを修正しないでください。ポリシー マップや集約ポリサーを修正する必要がある場合は、これらのコピーを作成して、コピーした方のポリシー マップやポリサーを変更するようにしてください。生成されたものの代わりに新しいポリシー マップを使用するには、生成されたポリシー マップをインターフェイスから削除し、新しいポリシー マップを適用します。

スタティック ポート、ダイナミック アクセス ポート、音声 VLAN アクセス ポート、およびトランク ポートで auto-QoS をイネーブルにできます。

デフォルトでは、CDP はすべてのインターフェイスでイネーブルです。auto-QoS を正しく機能させるため、CDP はディセーブルにしないでください。

Cisco SoftPhone の VoIP に対して auto-QoS がイネーブルになっている場合、スイッチは auto-QoS 設定のためのマスクを使用します。

このリリースでは、Cisco IP SoftPhone バージョン 1.3(3) 以降のみをサポートしています。

接続する装置では、Cisco CallManager バージョン 4 以降を使用する必要があります。

旧ソフトウェア リリースからのアップグレード

Cisco IOS Release 12.2(20)EA1 では、auto-QoS の実装が以前のリリースから変更されています。生成された auto-QoS 設定が変更され、Cico SoftPhone 機能のサポートが追加されました。

Cisco IOS Release 12.2(20)EA2 より前のリリースが動作するスイッチで auto-QoS を設定していて、そのあとスイッチを Cisco IOS Release 12.2(20)EA2 以降にアップグレードすると、そのコンフィギュレーション ファイルには新しい設定が含まれず、auto-QoS は機能しません。コンフィギュレーション ファイルの auto-QoS 設定を更新する手順は、次のとおりです。

1. スイッチを Cisco IOS Release 12.2(20)EA2 以降にアップグレードします。

2. auto-QoS がイネーブルになっているすべてのポートで auto-QoS をイネーブルにします。

3. no コマンドを使用して、グローバル auto-QoS 設定をすべてデフォルト値に戻します。

4. ステップ 2 で auto-QoS をディセーブルにしたポートで、auto-QoS を再度イネーブルにします。ポートに前と同じ auto-QoS 設定を行います。

VoIP に対する auto-QoS のイネーブル化

QoS ドメイン内で VoIP に対して auto-QoS をイネーブルにするには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

interface interface-id

Cisco IP Phone に接続されたインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。ネットワーク内部の別の信頼できるスイッチやルータに接続されたアップリンク インターフェイスを指定することもできます。

ステップ 3

auto qos voip { cisco-phone | cisco-softphone | trust }

auto-QoS をイネーブルにします。

キーワードの意味は次のとおりです。

cisco-phone ― インターフェイスが Cisco IP Phone に接続されている場合、着信パケットの QoS ラベルは IP Phone が検知される場合にのみ信頼されます。

cisco-softphone ポートは Cisco SoftPhone 機能が動作している装置に接続されます。


cisco-softphoneキーワードは、Cisco IOS Release 12.2(20)EA2 以降でのみサポートされています。


trust ― アップリンク インターフェイスが信頼されたスイッチやルータに接続されており、入力パケットの VoIP 分類は信頼されています。

ステップ 4

end

イネーブル EXEC モードに戻ります。

ステップ 5

show auto qos interface interface-id

設定を確認します。

このコマンドを実行すると、auto-QoS がイネーブルになっているポートで auto-QoS コマンドが表示されます。auto-QoS 設定およびユーザ変更を表示するには、 show running-config イネーブル EXEC コマンドを使用します。

スイッチの auto-QoS をディセーブルにし、デフォルトのポート信頼状態(untrusted[信頼されない])に戻すには、次の手順を実行します。

1. auto-QoS がイネーブルに設定されているすべてのインターフェイスで no auto qos voip インターフェイス コンフィギュレーション コマンドを実行します。複数のインターフェイスで同時に auto-QoS をディセーブルにするには、 interface range グローバル コンフィギュレーション コマンドを使用します。

2. auto-QoS がイネーブルに設定されているすべてのインターフェイスで auto-QoS をディセーブルにしたあと、次のグローバル コンフィギュレーション コマンドを使用して、出力キューと CoS/DSCP マップをデフォルト設定に戻します。

no wrr-queue bandwidth

no wrr-queue cos-map

no mls qos map cos-dscp

auto-QoS がイネーブルまたはディセーブルの場合に自動生成された QoS コマンドを表示するには、auto-QoS をイネーブルする前に debug auto qos イネーブル EXEC コマンドを入力します。詳細は、「debug auto qos コマンドの使用」を参照してください。

次に、auto-QoS をイネーブルにし、インターフェイスに接続されている装置が Cisco IP Phone として検出された場合、着信パケットの QoS ラベルを信頼する手順を例示します。

Switch(config)# interface fastethernet0/1
Switch(config-if)# auto qos voip cisco-phone
 

次に、auto-QoS をイネーブルにし、インターフェイスに接続されているスイッチまたはルータが信頼性のある装置である場合に、着信パケットの QoS ラベルを信頼する手順を例示します。

Switch(config)# interface gigabitethernet0/1
Switch(config-if)# auto qos voip trust
 

auto-QoS 情報の表示

初期の auto-QoS の設定を表示するには、 show auto qos [ interface [ interface-id ]] イネーブル EXEC コマンドを使用します。初期の設定に対してユーザが加えた変更を表示するには、 show running-config イネーブル EXEC コマンドを使用します。 show auto qos コマンドおよび show running-config コマンドの出力を比較して、ユーザが定義した QoS 設定を確認できます。

auto-QoS の影響を受ける可能性のある QoS 設定の情報を表示するには、次のいずれかのコマンドを使用します。

show mls qos

show mls qos maps cos-dscp

show wrr-queue bandwidth

show wrr-queue cos-map

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

auto-QoS の設定例


) この例が適用されるのは、スイッチで EI が稼働している場合に限られます。


ここでは、ネットワーク内で auto-QoS を実装する手順について説明します(図29-3 を参照)。QoS のパフォーマンスを最適にするには、ネットワーク内のすべての装置で auto-QoS をイネーブルにする必要があります。

図29-3 auto-QoS を設定するネットワークの例

 

図29-3 のインテリジェント配線クローゼットは、EI が稼働している Catalyst 2950 スイッチ、および Catalyst 3550 スイッチで構成されています。この構成例では、VoIP トラフィックをその他のトラフィックよりも優先することを目的としています。そのためには、配線クローゼット内の QoS ドメインのエッジにあるスイッチで auto-QoS をイネーブルにします。


) auto-QoS コマンドを入力する前に標準 QoS コマンドの設定は行わないでください。QoS の設定の微調整はできますが、auto-QoS の設定が完了したあとで行うことを推奨します。


QoS ドメインのエッジにあるスイッチを設定して、VoIP トラフィックがその他のトラフィックよりも優先されるようにするには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

debug auto qos

auto-QoS のデバッグをイネーブルにします。デバッグがイネーブルの場合、スイッチは auto-QoS がイネーブルになる際に自動生成される QoS の設定を表示します。

ステップ 2

configure terminal

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

ステップ 3

cdp enable

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

ステップ 4

interface interface-id

Cisco IP Phone に接続されたスイッチ ポートを指定し、インターフェイス コンフィギュレーション モードを開始します。

ステップ 5

auto qos voip cisco-phone

インターフェイスで auto-QoS をイネーブルにし、インターフェイスに Cisco IP Phone が接続されていることを指定します。

着信パケットの QoS ラベルが信頼されるのは、IP Phone が検知される場合に限ります。

ステップ 6

exit

グローバル コンフィギュレーション モードに戻ります。

ステップ 7

Cisco IP Phone に接続されているポートの数だけ、ステップ 4 6 を繰り返します。

ステップ 8

interface interface-id

信頼できるスイッチまたはルータに接続されていると考えられるスイッチ ポートを指定し、インターフェイス コンフィギュレーション モードを開始します。図29-3 を参照してください。

ステップ 9

auto qos voip trust

インターフェイスで auto-QoS をイネーブルにし、インターフェイスに信頼されたルータやスイッチが接続されていることを指定します。

ステップ 10

end

イネーブル EXEC モードに戻ります。

ステップ 11

show auto qos

設定を確認します。

このコマンドを実行すると、auto-QoS がイネーブルになっているポートで auto-QoS コマンドが表示されます。auto-QoS 設定およびユーザ変更を表示するには、 show running-config イネーブル EXEC コマンドを使用します。

auto-QoS の影響を受ける可能性のある QoS の設定については、「auto-QoS 情報の表示」を参照してください。

ステップ 12

copy running-config startup-config

auto qos voip インターフェイス コンフィギュレーション コマンド、および生成された auto-QoS の設定をコンフィギュレーション ファイルに保存します。

標準 QoS の設定

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

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

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

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

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

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


) SI が稼働しているスイッチの場合、設定できるのは「ポートの信頼状態による分類の設定」および「出力キューの設定」で説明する機能だけです。「標準 QoS 情報の表示」で説明するように、QoS 情報を表示することもできます。


「標準 QoS のデフォルト設定」

「設定時の注意事項」

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

「QoS ポリシーの設定」

「CoS マップの設定」

「出力キューの設定」

標準 QoS のデフォルト設定

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


) ポリシー マップ、ポリサー、CoS/DSCP マップ、および DSCP/CoS マップを設定できるのは、スイッチ上で EI が稼働している場合だけです。


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

0 の CoS 値がすべての着信パケットに割り当てられます。

デフォルトのポートの信頼状態は untrusted(信頼されない)です。

ポリシー マップは設定されません。

ポリサーは設定されません。

デフォルトの CoS/DSCP マップは、 表29-7 のとおりです。

デフォルトの DSCP/CoS マップは、 表29-8 のとおりです。

デフォルトの出力キュー スケジューリング方法は、完全優先です。

デフォルトの CoS 値および WRR 値については、「出力キューの設定」を参照してください。


) Cisco IOS Release 12.1(11)EA1 より前のソフトウェア リリースでは、スイッチは DSCP 値を変更しないで、着信パケットの CoS 値を使用します。ポートでパススルー モードをイネーブルにすると、このように設定できます。詳細は、「パススルー モードのイネーブル化」を参照してください。


設定時の注意事項


) これらの注意事項が適用されるのは、スイッチで EI が稼働している場合に限られます。


QoS の設定を始める前に、次の注意事項を確認してください。

スイッチで QoS をイネーブルにする前に、すべてのポートで IEEE 802.3x フロー制御をディセーブルにする必要があります。フロー制御をディセーブルにする場合は、 flowcontrol receive off および flowcontrol send off インターフェイス コンフィギュレーション コマンドを使用します。

スイッチで EtherChannel ポートが設定されている場合、EtherChannel を形成する個々の物理ポートに QoS の分類、ポリシング、マッピング、およびキューイングを設定する必要があります。また、QoS の設定を EtherChannel の全ポートで照合するかどうかを決定する必要があります。

IP フラグメントと設定されている IP 拡張 ACL を照合することによって、QoS を実施できます。IP フラグメントは、ベストエフォート型トラフィックとして送信されます。IP フラグメントは IP ヘッダーのフィールドで示されます。

スイッチが受信する制御トラフィック(スパニングツリー Bridge Protocol Data Unit[BPDU; ブリッジ プロトコル データ ユニット]、ルーティング アップデート パケットなど)は、あらゆる入力 QoS 処理の対象になります。

クラス マップに結合できるのは、物理インターフェイス用に作成された ACL だけです。

1 つのクラス マップで使用できる ACL は 1 つ、使用できる match コマンドは 1 つだけです。ACL に複数のアクセス制御エントリ、すなわちフィールドとパケットの内容を照合するコマンドを指定できます。

出力方向での ACL 分類が含まれるポリシー マップを使用することはできません。
また、 service-policy input policy-map-name インターフェイス コンフィギュレーション コマンドを使用してインターフェイスに結合することもできません。

ポリシー マップで class-default という名前のクラスを使用することはできません。class class-default ポリシー マップ コンフィギュレーション コマンドによって定義されたポリシー マップに基づくトラフィック フィルタリングは行われません。

ACL 設定時の注意事項についての詳細は、「QoS ACL に基づく分類」を参照してください。

物理インターフェイスへの ACL の適用については、「物理インターフェイスに ACL を適用する場合の注意事項」を参照してください。

システム定義マスクを持つポリシー マップとユーザ定義マスクを持つセキュリティ ACL がインターフェイスに設定されている場合、スイッチはポリシー マップによって指定されたアクションを無視し、ACL によって指定されたアクションだけを実行する場合があります。マスクの詳細については、「ACP の概要」を参照してください。

ユーザ定義マスクを持つポリシー マップとユーザ定義マスクを持つセキュリティ ACL がインターフェイスに設定されている場合、スイッチは 表29-5 に説明されたアクションのいずれかを実行します。マスクの詳細については、「ACP の概要」を参照してください。

 

表29-5 ポリシー マップとセキュリティ ACL の相互作用

ポリシー マップの条件
セキュリティ ACL の条件
操作

パケットがプロファイルに一致する場合

指定されたパケットを許可する

トラフィックの転送

パケットがプロファイルに一致せず、不適合アクションが DSCP 値をマークダウンした場合

指定されたパケットを廃棄する

トラフィックの廃棄

パケットがプロファイルに一致せず、不適合アクションがパケットを廃棄した場合

指定されたパケットを許可する

トラフィックの廃棄

指定されたパケットを廃棄する

トラフィックの廃棄

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

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

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

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

「信頼される境界の設定」

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


) この機能は、SI と EI の両方でサポートされます。


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

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

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

 

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

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

interface interface-id

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

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

ステップ 3

mls qos trust [ cos | dscp ]

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

デフォルトでは、ポートは信頼されません。

キーワードの意味は次のとおりです。

cos ― パケット CoS 値を使用して入力パケットを分類します。タグ付き IP パケットの場合、CoS/DSCP マップに基づいて、パケットの DSCP 値が変更されます。パケットに割り当てられる出力キューは、パケット CoS 値に基づいて決まります。

dscp ― パケット DSCP 値を使用して入力パケットを分類します。非 IP パケットの場合、タグ付きパケットではパケット CoS 値が 0 に設定され、タグなしパケットにはデフォルトのポート CoS が使用されます。スイッチは内部で、DSCP/CoS マップを使用して CoS 値を変更します。このキーワードを使用できるのは、スイッチで EI が稼働している場合に限られます。


) Cisco IOS Release 12.1(11)EA1 より前のソフトウェア リリースでは、mls qos trust コマンドを使用できるのは、スイッチで EI が稼働している場合に限られます。


ネットワークがイーサネット LAN で構成される場合は、 cos キーワードを使用してください。

ネットワークがイーサネット LAN だけで構成されていない場合で、高度な QoS 機能とその実装方法の知識がある場合は、 dscp キーワードを使用します。

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

ステップ 4

end

イネーブル EXEC モードに戻ります。

ステップ 5

show mls qos interface [ interface-id ] [ policers ]

設定を確認します。

ステップ 6

copy running-config startup-config

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

untrusted(信頼されない)状態にポートを戻す場合は、 no mls qos trust インターフェイス コンフィギュレーション コマンドを使用します。

デフォルトの CoS 値を変更する方法については、「インターフェイスの CoS 値の設定」を参照してください。CoS/DSCP マップを設定する方法については、「CoS/DSCP マップの設定」を参照してください。

インターフェイスの 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 キーワードを使用します。ポートがすでに DSCP を信頼するように設定されている場合、設定済みの信頼状態がこのコマンドによって上書き変更され、すべての着信 CoS 値にこのコマンドで設定されたデフォルトの CoS 値が割り当てられます。着信パケットがタグ付きの場合、出力ポートで、ポートのデフォルト CoS を使用してパケットの CoS 値が変更されます。

ステップ 4

end

イネーブル EXEC モードに戻ります。

ステップ 5

show mls qos interface

設定を確認します。

ステップ 6

copy running-config startup-config

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

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

信頼される境界の設定

通常のネットワークでは、図29-4のように Cisco IP Phone をスイッチ ポートに接続し、データ パケットを生成する装置を、電話の背面からカスケードします。Cisco IP Phone は、音声パケットの CoS レベルをハイ プライオリティ(CoS = 5)としてマーキングし、データ パケットをロー プライオリティ(CoS = 0)としてマーキングすることにより、共有データ リンクを通して音声の質を保証します。電話からスイッチに送信されたトラフィックは通常、IEEE 802.1Q ヘッダーを使用するタグでマーキングされます。ヘッダーには VLAN 情報とともに、パケットのプライオリティを決定する 3 ビットの Class of Service(CoS; サービス クラス)フィールドが含まれます。

Cisco IP Phone の設定では通常、電話からスイッチに送信されるトラフィックを信頼し、音声トラフィックがネットワーク上の他のタイプのトラフィックより優先されるようにします。 mls qos trust cos インターフェイス コンフィギュレーション コマンドを使用することで、電話を接続するスイッチ ポートがそのポートで受信したあらゆるトラフィックの CoS ラベルを信頼するように設定します。

信頼設定では、ユーザが電話を経由しないで PC を直接スイッチに接続する場合にハイ プライオリティ キューが誤使用されないようにするため、信頼される境界の機能を使用することもできます。信頼される境界を使用しない場合、PC で生成された CoS ラベルがスイッチによって信頼されます(信頼できる CoS 設定であるため)。これに対して、信頼される境界は、CDP を使用して Cisco IP Phone(Cisco IP Phone 7910、7935、7940、7960 など)がスイッチ ポートに接続されていることを検出します。電話が検出されなかった場合、信頼される境界の機能はスイッチ ポートの信頼設定をディセーブルにし、ハイ プライオリティ キューが誤って使用されないようにします。PC や Cisco IP Phone が、ハブ経由でスイッチに接続されている場合は信頼される境界の機能が有効にならないため、注意が必要です。

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

スイッチ ポートに信頼される境界を設定するには、イネーブル 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 をインターフェイスで信頼される装置として設定します。

信頼される境界と auto-QoS( auto qos voip インターフェイス コンフィギュレーション コマンド)は相互に排他的であるため、この 2 つを同時にイネーブルにすることはできません。

ステップ 6

mls qos trust cos

入力パケットの CoS 値を信頼するように、ポートの信頼状態を設定します。

デフォルトでは、ポートは信頼されません。


) Cisco IOS Release 12.1(11)EA1 より前のソフトウェア リリースでは、mls qos trust cos コマンドを使用できるのは、スイッチで EI が稼働している場合に限られます。


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

ステップ 7

end

イネーブル EXEC モードに戻ります。

ステップ 8

show mls qos interface [ interface-id ] [ policers ]

設定を確認します。

ステップ 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 に接続されている場合も含めて、受信したトラフィックの分類を信頼しません。

auto-QoS がすでにイネーブルになっている場合、信頼される境界をイネーブルにすることはできません。逆の場合も同様です。auto-QoS がイネーブルで、Cisco IP Phone がポートにない場合、ポートは受信するトラフィックの分類を信頼しません。

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

 

表29-6 信頼される境界がイネーブルの場合のポート設定

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

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

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

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

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

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

タグ付きの非 IP パケットの場合、パケットの CoS 値は 0 に設定されます。

タグなしの非 IP パケットの場合、パケットの CoS 値がデフォルトの CoS 値に割り当てられます。

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

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

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

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

Cisco IOS Release 12.1(11)EA1 より前のソフトウェア リリースでは、スイッチはパススルー モードです。この場合、スイッチは DSCP 値を変更しないで着信パケットの CoS 値を使用し、4 つの出力キューの 1 つからパケットを送信します。スイッチで Cisco IOS Release 12.1(11)EA1 より前のソフトウェア リリースが稼働している場合、パススルー モードをイネーブルまたはディセーブルにすることはできません。

Cisco IOS Release 12.1(11)EA1 以降では、スイッチはパケットを変更しないで、すべての着信パケットに 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 | dscp ] インターフェイス コマンドを入力すると、パススルー モードがディセーブルになります。

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

QoS ポリシーの設定


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


QoS ポリシーを設定するには、通常、トラフィックをクラス別に分類し、各トラフィック クラスに適用するポリシーを設定し、ポリシーをインターフェイスに結合する必要があります。

基本情報については、「分類」および「ポリシングおよびマーキング」を参照してください。

ここでは、次の設定手順について説明します。

「ACL によるトラフィックの分類」

「クラス マップによるトラフィックの分類」

「ポリシー マップによるトラフィックの分類、ポリシング、およびマーキング」

ACL によるトラフィックの分類

IP 標準 ACL または IP 拡張 ACL を使用することによって、IP トラフィックを分類できます。レイヤ 2 トラフィックは、レイヤ 2 MAC ACL を使用することによって分類できます。

IP トラフィック用に IP 標準 ACL を作成するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

access-list access-list-number { permit | remark } { source source-wildcard | host source | any }

IP 標準 ACL を作成し、必要な回数だけコマンドを繰り返します。

access-list-number には、ACL 番号を入力します。有効範囲は 1 ~ 99 および 1300 ~ 1999 です。

permit を入力し、条件と一致した場合にアクセスを許可するかどうかを指定します。

remark を入力し、100 文字以内の ACL エントリのコメントを指定します。


) QoS ACL では、拒否(deny)ステートメントはサポートされません。詳細については、「QoS ACL に基づく分類」を参照してください。


source は、パケットが送られてくるネットワークまたはホストの送信元アドレスです。次の 3 つの方法のいずれかで指定されます。

ドット付き 10 進表記で 32 ビットの値

キーワード any は 0.0.0.0 255.255.255.255 という source および source-wildcard の省略形です。source-wildcard の入力は不要です。

キーワード host は、 source 0.0.0.0 という source および source-wildcard の省略形です。

(任意) source-wildcard 変数によって、ワイルドカード ビットが source に適用されます(最初のリスト項目を参照)。

ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show access-lists

設定を確認します。

ステップ 5

copy running-config startup-config

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

IP 標準 ACL の作成手順については、「物理インターフェイスに ACL を適用する場合の注意事項」を参照してください。

ACL を削除する場合は、 no access-list access-list-number グローバル コンフィギュレーション コマンドを使用します。

指定した 2 つのネットワーク上のホストだけにアクセスを許可する例を示します。ネットワーク アドレスのホスト部分にワイルドカード ビットが適用されます。ACL のステートメントと一致しない送信元アドレスのホストはすべて拒否されます。

Switch(config)# access-list 1 permit 192.5.255.0 0.0.0.255
Switch(config)# access-list 1 permit 36.0.0.0 0.0.0.255
 

IP トラフィック用に IP 拡張 ACL を作成するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

access-list access-list-number { permit | remark } protocol { source source-wildcard | host source | any} [operator port ] { destination destination-wildcard | host destination | any } [ operator port ] [ dscp dscp-value ] [ time-range time-range-name ]

IP 拡張 ACL を作成し、必要な回数だけコマンドを繰り返します。

access-list-number には、ACL 番号を入力します。有効範囲は 100 ~ 199 および 2000 ~ 2699 です。

permit を入力し、条件と一致した場合にアクセスを許可します。

remark を入力し、100 文字以内の ACL エントリのコメントを指定します。


) QoS ACL では、拒否(deny)ステートメントはサポートされません。詳細については、「QoS ACL に基づく分類」を参照してください。


protocol には、IP プロトコルの名前または番号を入力します。疑問符( ? )を使用すると、使用できるプロトコル キーワードのリストが表示されます。

source には、パケットの送信元となるネットワークまたはホストを指定します。 source-wildcard では、無視するビット位置に 1 を入力することによって、ワイルドカード ビットを指定します。 source および source-wilcard を指定するには、ドット付き 10 進表記を使用するか、 source 0.0.0.0 source-wildcard 255.255.255.255 の省略形として any キーワードを使用するか、または source 0.0.0.0 を表すキーワードとして host を使用します。

destination には、パケットの宛先となるネットワークまたはホストを指定します。 destination および destination-wildcard には、 source および source-wildcard での説明と同じオプションを使用できます。

宛先ポートまたは送信元ポートを定義します。

operator に使用できるのは eq (equal)だけです。

source source-wildcard の後ろに operator を指定した場合、送信元ポートと定義したポートが同じ場合に条件が一致します。

destination destination-wildcard の後ろに operator を指定した場合、宛先ポートと定義したポートが同じ場合に条件が一致します。

port は、TCP ポートまたは UDP ポートを表す 10 進数または名前です。指定できる番号は 0 ~ 65535 です。

TCP ポート名は、TCP トラフィック専用です。

UDP ポート名は、UDP トラフィック専用です。

dscp は、サポートされる 13 の DSCP 値(0、8、10、16、18、24、26、32、34、40、46、48、および 56)のいずれかとパケットを照合する場合に入力します。または疑問符( ? )を入力すると、使用できる値のリストが表示されます。

time-range キーワードは任意です。このキーワードについては、「ACL への時間範囲の適用」を参照してください。

ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show access-lists

設定を確認します。

ステップ 5

copy running-config startup-config

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

IP 拡張 ACL の作成手順については、「物理インターフェイスに ACL を適用する場合の注意事項」を参照してください。

ACL を削除する場合は、 no access-list access-list-number グローバル コンフィギュレーション コマンドを使用します。

TCP ポートが番号 25 で宛先 IP アドレスが 128.88.1.2 からの TCP トラフィックだけを許可する ACL の作成例を示します。

Switch(config)# access-list 102 permit tcp 0.0.0.0 255.255.255.255 128.88.1.2 0.0.0.0 eq 25
 

レイヤ 2 トラフィック用にレイヤ 2 MAC ACL を作成するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

mac access-list extended name

リスト名を指定することによって、レイヤ 2 MAC ACL を作成します。

このコマンドを入力すると、拡張 MAC ACL コンフィギュレーション モードに切り替わります。

ステップ 3

permit を入力し、条件と一致した場合にアクセスを許可します。


) QoS ACL では、拒否(deny)ステートメントはサポートされません。詳細については、「QoS ACL に基づく分類」を参照してください。


source MAC address には、パケットの送信元となるホストの MAC アドレスを指定します。このアドレスを指定するには、すべての送信元の MAC アドレスを拒否する any キーワードを使用するか、または host キーワードおよび 16 進形式(H.H.H)の送信元を使用します。

destination MAC address には、パケットの宛先となるホストの MAC アドレスを指定します。このアドレスを指定するには、すべての宛先の MAC アドレスを拒否する any キーワードを使用するか、または host キーワードおよび 16 進形式(H.H.H)の宛先を使用します。

(任意)次のオプションを入力することもできます。

aarp | amber | appletalk | dec-spanning | decnet-iv | diagnostic | dsm | etype-6000 | etype-8042 | lat | lavc-sca | mop-console | mop-dump | msdos | mumps | netbios | vines-echo |vines-ip | xns-idp(非 IP プロトコル)

ステップ 4

end

イネーブル EXEC モードに戻ります。

ステップ 5

show access-lists [ number | name ]

設定を確認します。

ステップ 6

copy running-config startup-config

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

MAC 拡張 ACL の作成手順については、「名前付き MAC 拡張 ACL の作成」を参照してください。

ACL を削除する場合は、 no mac access-list extended name グローバル コンフィギュレーション コマンドを使用します。

許可(permit)ステートメントを指定したレイヤ 2 MAC ACL の作成例を示します。このステートメントにより、MAC アドレス 0001.0000.0001 のホストから MAC アドレス 0002.0000.0001 へのトラフィックが許可されます。

Switch(config)# mac access-list extended maclist1
Switch(config-ext-macl)# permit host 0001.0000.0001 host 0002.0000.0001

クラス マップによるトラフィックの分類

個々のトラフィック フロー(またはクラス)を他のあらゆるトラフィックから分離して名前をつけるには、 class-map グローバル コンフィギュレーション コマンドを使用します。クラス マップでは、さらに細かく分類するために、特定のトラフィック フローと照合する条件を定義します。match ステートメントには ACL だけを含めることができます。一致条件は、クラス マップ コンフィギュレーション モードの中で match ステートメントを 1 つ入力することによって定義します。


class ポリシー マップ コンフィギュレーション コマンドを使用することによって、ポリシー マップの作成時にクラス マップを作成することもできます。詳細は、「ポリシー マップによるトラフィックの分類、ポリシング、およびマーキング」を参照してください。


クラス マップを作成し、トラフィックを分類するための一致条件を定義するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

access-list access-list-number permit { source source-wildcard | host source | any }

または

access-list access-list-number { permit | remark } protocol { source source-wildcard | host source | any } [ operator port ] { destination destination-wildcard | host destination | any } [ operator port ] [ dscp dscp-value ] [ time-range time-range-name ]

または

mac access-list extended name

permit { any | host source MAC address } { any | host destination MAC address } [ aarp | amber | dec-spanning | decnet-iv | diagnostic | dsm | etype-6000 | etype-8042 | lat | lavc-sca | mop-console | mop-dump | msdos | mumps | netbios | vines-echo |vines-ip | xns-idp]

ステップ 3

class-map class-map-name

クラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。

デフォルトでは、クラス マップは定義されません。

class-map-name には、クラス マップ名を指定します。

ステップ 4

match { access-group acl-index | access-group name acl-name | ip dscp dscp-list }

トラフィックを分類するための一致条件を定義します。

デフォルトでは、一致条件はサポートされません。

指定できる一致条件は、1 つのクラス マップに 1 つだけです。また、1 つのクラス マップでサポートされる ACL は 1 つだけです。

access-group acl-index または access-group name acl-name には、ステップ 3 で作成した ACL の番号または名前を指定します。

ip dscp dscp-list には、着信パケットと照合する match ステートメントごとに、最大 8 つの IP DSCP 値からなるリストを 1 つずつ入力します。各値はスペースで区切ります。サポートされるDSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。

ステップ 5

end

イネーブル EXEC モードに戻ります。

ステップ 6

show class-map [ class-map-name ]

設定を確認します。

ステップ 7

copy running-config startup-config

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

既存のクラス マップを削除するには、 no class-map class-map-name グローバル コンフィギュレーション コマンドを使用します。一致条件を削除するには、no match { access-group acl-index | name acl-name | ip dscp} クラス マップ コンフィギュレーション コマンドを使用します。

class1 というクラス マップの設定例を示します。 class1 には、一致条件として、 103 という ACL が 1 つあります。

Switch(config)# access-list 103 permit any any tcp eq 80
Switch(config)# class-map class1
Switch(config-cmap)# match access-group 103
Switch(config-cmap)# end
Switch#

ポリシー マップによるトラフィックの分類、ポリシング、およびマーキング

ポリシー マップでは、作用対象のトラフィック クラスを指定します。アクションには、トラフィック クラスの具体的な DSCP 値の設定、一致した各トラフィック クラスへのトラフィック帯域幅制限の指定(ポリサー)、トラフィックがプロファイルに一致しない場合に実行するアクションの指定(マーキングまたは廃棄)が含まれます。

ポリシー マップには、次の特性もあります。

1 つのポリシー マップに、それぞれ異なる一致条件とポリサーを指定した複数のクラス ステートメントを指定できます。

1 つのインターフェイスから受信されたトラフィック タイプごとに、別々のポリシー マップ クラスを設定できます。

入力方向で 1 つのインターフェイスに 1 つだけポリシー マップを結合できます。

ポリシー マップを作成するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

access-list access-list-number permit { source source-wildcard | host source | any }

または

access-list access-list-number { permit | remark } protocol { source source-wildcard | host source | any } [ operator port ] { destination destination-wildcard | host destination | any} [ operator port] [dscp dscp-value ] [ time-range time-range-name ]

または

mac access-list extended name

permit { any | host source MAC address } { any | host destination MAC address } [ aarp | amber | appletalk | dec-spanning | decnet-iv | diagnostic | dsm | etype-6000 | etype-8042 | lat | lavc-sca | mop-console | mop-dump | msdos | mumps | netbios | vines-echo |vines-ip | xns-idp]

ステップ 3

policy-map policy-map-name

ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。

デフォルトでは、ポリシー マップは定義されません。

ポリシー マップのデフォルトの動作では、パケットが IP パケットの場合は DSCP が 0 に、パケットがタグ付きの場合は CoS が 0 に設定されます。ポリシングは実行されません。

ステップ 4

class class-map-name [ access-group name acl-index-or-name ]

トラフィックの分類を定義し、ポリシー マップ クラス コンフィギュレーション モードを開始します。

デフォルトでは、ポリシー マップ クラス マップは定義されません。

class-map グローバル コンフィギュレーション コマンドを使用してトラフィック クラスがすでに定義されている場合は、このコマンドで class-map-name にその名前を指定します。

access-group name acl-index-or-name には、ステップ 2 で作成した ACL の番号または名前を指定します。


) ポリシー マップで class-default という名前のクラスを使用することはできません。class class-default ポリシー マップ コンフィギュレーション コマンドにより定義されたポリシー マップに基づくトラフィック フィルタリングは行われません。


ステップ 5

set { ip dscp new-dscp }

パケットに新しい値を設定することによって、IP トラフィックを分類します。

ip dscp new-dscp には、分類されたトラフィックに割り当てる新しい DSCP 値を入力します。サポートされる DSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。

ステップ 6

police rate-bps burst-byte [ exceed-action { drop | dscp dscp-value }]

分類したトラフィックにポリサーを定義します。

ギガビット対応イーサネット入力ポートでは最大 60、10/100 イーサネット入力ポートでは最大 6 つのポリサーを設定できます。

rate-bps には、平均トラフィック伝送速度をビット/秒(bps)で指定します。有効範囲は、10/100 イーサネット ポートでは 1 ~ 100 Mbps、ギガビット対応のイーサネット ポートでは 8 ~ 1000 Mbps です。

burst-byte には、標準バースト サイズをバイト数で指定します。10/100 ポートに使用できる値は、4096、8192、16384、32768、および 65536 です。ギガビット対応のイーサネット ポートに指定できる値は、4096、8192、16348、32768、65536、131072、262144、および 524288 です。

(任意)速度を超過した場合に実行するアクションを指定します。パケットを廃棄する場合は、 exceed-action drop キーワードを使用します。DSCP 値を引き下げてパケットを送信する場合は、 exceed-action dscp dscp-value キーワードを使用します。

ステップ 7

exit

ポリシー マップ コンフィギュレーション モードに戻ります。

ステップ 8

exit

グローバル コンフィギュレーション モードに戻ります。

ステップ 9

interface interface-id

ポリシー マップに関連付けるインターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

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

ステップ 10

service-policy input policy-map-name

特定インターフェイスの入力に指定したポリシー マップを適用します。

サポートされるポリシー マップは、1 方向 1 インターフェイスに 1 つだけです。

ステップ 11

end

イネーブル EXEC モードに戻ります。

ステップ 12

show policy-map [ policy-map-name cla ss class-name ]

設定を確認します。

ステップ 13

copy running-config startup-config

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

既存のポリシー マップを削除するには、no policy-map policy-map-name グローバル コンフィギュレーション コマンドを使用します。既存のクラス マップを削除するには、no class class-map-name ポリシー マップ コンフィギュレーション コマンドを使用します。割り当てられた DSCP 値を削除するには、 no set ip dscp new-dscp ポリシー マップ コンフィギュレーション コマンドを使用します。既存のポリサーを削除するには、no police rate-bps burst-byte [exceed-action { drop | dscp dscp-value }] ポリシー マップ コンフィギュレーション コマンドを使用します。ポリシー マップとインターフェイスの対応付けを削除するには、no service-policy input policy-map-name インターフェイス コンフィギュレーション コマンドを使用します。

ポリシー マップとセキュリティ ACL を同じインターフェイスに設定する方法については、 表29-5 を参照してください。

ポリシー マップを作成し、入力インターフェイスに結合する例を示します。この設定では、IP 標準 ACL でネットワーク 10.1.0.0 からのトラフィックを許可します。この分類にトラフィックが一致した場合、着信パケットの DSCP 値が信頼されます。一致したトラフィックが 5000000 bps という平均トラフィック伝送速度、および 8192 バイトという標準バースト サイズを超過している場合、DSCP 値が 10 に引き下げられて送信されます。

Switch(config)# access-list 1 permit 10.1.0.0 0.0.255.255
Switch(config)# class-map ipclass1
Switch(config-cmap)# match access-group 1
Switch(config-cmap)# exit
Switch(config)# policy-map flow1t
Switch(config-pmap)# class ipclass1
Switch(config-pmap-c)# police 5000000 8192 exceed-action dscp 10
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# switchport mode access
Switch(config-if)# service-policy input flow1t
 

次に、2 つの許可(permit)ステートメントを指定してレイヤ 2 MAC ACL を作成し、入力インターフェイスに適応する例を示します。最初の許可(permit)ステートメントにより、MAC アドレス 0001.0000.0001 のホストから MAC アドレス 0002.0000.0001 のホストへのトラフィックが許可されます。

Switch(config)# mac access-list extended maclist1
Switch(config-ext-mac)# permit host 0001.0000.0001 host 0002.0000.0001
Switch(config-ext-mac)# exit
Switch(config)# mac access-list extended maclist2
Switch(config-ext-mac)# permit host 0001.0000.0003 host 0002.0000.0003
Switch(config-ext-mac)# exit
Switch(config)# class-map macclass1
Switch(config-cmap)# match access-group name maclist1
Switch(config-cmap)# exit
Switch(config)# policy-map macpolicy1
Switch(config-pmap)# class macclass1
Switch(config-pmap-c)# set ip dscp 56
Switch(config-pmap-c)# exit
Switch(config-pmap)# class macclass2 maclist2
Switch(config-pmap-c)# set ip dscp 48
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
Switch(config)# interface gigabitethernet0/1
Switch(config-if)# switchport mode trunk
Switch(config-if)# mls qos trust cos
Switch(config-if)# service-policy input macpolicy1

CoS マップの設定


) この機能を使用できるのは、スイッチで EI が稼働している場合に限られます。


ここでは、CoS マップの設定手順について説明します。

「CoS/DSCP マップの設定」

「DSCP/CoS マップの設定」

マップはすべてグローバルに定義されています。

CoS/DSCP マップの設定

CoS/DSCP マップを使用して、着信パケットの CoS 値を、QoS がトラフィックのプライオリティを表すために内部使用する DSCP 値に対応付けます。

表29-7 に、デフォルトの CoS/DSCP マップを示します。

 

表29-7 デフォルトの CoS/DSCP マップ

CoS 値
DSCP 値

0

0

1

8

2

16

3

24

4

32

5

40

6

48

7

56

これらの値が使用しているネットワークに適さない場合は、値を変更する必要があります。

CoS/DSCP マップを変更するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

mls qos map cos-dscp dscp1...dscp8

CoS/DSCP マップを変更します。

dscp1...dscp8 には、CoS 値 0 ~ 7 に対応する 8 つの DSCP 値を入力します。各 DSCP 値はスペースで区切ります。

サポートされる DSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。

ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show mls qos maps cos-dscp

設定を確認します。

ステップ 5

copy running-config startup-config

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

デフォルトのマップに戻す場合は、 no mls qos map cos-dscp グローバル コンフィギュレーション コマンドを使用します。

CoS/DSCP マップを変更して表示する例を示します。

Switch# configure terminal
Switch(config)# mls qos map cos-dscp 8 8 8 8 24 32 56 56
Switch(config)# end
Switch# show mls qos maps cos-dscp
 
Cos-dscp map:
cos: 0 1 2 3 4 5 6 7
--------------------------------
dscp: 8 8 8 8 24 32 56 56

DSCP/CoS マップの設定

DSCP/CoS マップを使用して、着信パケットの DSCP 値を、4 つの出力キューの 1 つを選択するために使用される CoS 値に対応付けます。

スイッチは次の DSCP 値をサポートします。0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。

表29-8 に、デフォルトの DSCP/CoS マップを示します。

 

表29-8 デフォルトの DSCP/CoS マップ

DSCP 値
CoS 値

0

0

8、10

1

16、18

2

24、26

3

32、34

4

40、46

5

48

6

56

7

これらの値が使用しているネットワークに適さない場合は、値を変更する必要があります。

DSCP/CoS マップを変更するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

mls qos map dscp-cos dscp-list to cos

DSCP/CoS マップを変更します。

dscp-list には、最大 13 の DSCP 値をスペースで区切って入力します。さらに、 to キーワードを入力します。

cos には、DSCP 値と対応する CoS 値を入力します。

サポートされる DSCP 値は、0、8、10、16、18、24、26、32、34、40、46、48、および 56 です。CoS の範囲は 0 ~ 7 です。

ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show mls qos maps dscp-cos

設定を確認します。

ステップ 5

copy running-config startup-config

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

デフォルトのマップに戻す場合は、 no mls qos map dscp-cos グローバル コンフィギュレーション コマンドを使用します。

次に、DSCP 値 26 および 48 を CoS 値 7 に対応付ける例を示します。残りの DSCP 値に関しては、デフォルトの DSCP/CoS マッピングです。

Switch(config)# mls qos map dscp-cos 26 48 to 7
Switch(config)# exit
 
Switch# show mls qos maps dscp-cos
 
Dscp-cos map:
dscp: 0 8 10 16 18 24 26 32 34 40 46 48 56
-----------------------------------------------
cos: 0 1 1 2 2 3 7 4 4 5 5 7 7

出力キューの設定


) この機能は、SI でも EI でもサポートされます。


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

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

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

「緊急キューのイネーブル化および 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 weight2 、および weight3 の場合は、範囲は 1 ~ 255 です。

weight4 の場合、範囲は 0 ~ 255 です。weight4 が 0 であれば、キュー 4 は緊急キューと設定されます。


) Cisco IOS Release 12.1(12c)EA1 より前のソフトウェア リリースでは、すべてのキューの範囲が 1 ~ 255 になります。


ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show wrr-queue bandwidth

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

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

キューの 1 つを緊急キューとしてイネーブルにし、残りのキューに対し WRR スケジューリングをイネーブルにするには、「緊急キューのイネーブル化および WRR プライオリティの設定」を参照してください。

緊急キューのイネーブル化および WRR プライオリティの設定

Cisco IOS Release 12.1(12c)EA1 以降で、緊急キュー(キュー 4)をイネーブルにし、残りのキューに WRR プライオリティを割り当てるには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

wrr-queue bandwidth weight1 weight2 weight3 0

キュー 4 を緊急キューとして設定し、WRR ウェイトを残りの出力キューに割り当てます。

weight1 weight2 、および weight3 の WRR ウェイトの範囲は 1 ~ 255 です。

ステップ 3

end

イネーブル EXEC モードに戻ります。

ステップ 4

show wrr-queue bandwidth

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

標準 QoS 情報の表示

標準 QoS 情報を表示するには、 表29-9 のイネーブル EXEC コマンドを 1 つまたは複数使用します。

 

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

コマンド
目的

show class-map [ class-map-name ] 3

トラフィックを分類するための一致条件を定義した QoS クラス マップを表示します。

show policy-map [ policy-map-name [ class class-name ]] 1

着信トラフィックの分類条件を定義した QoS ポリシー マップを表示します。

show mls qos maps [ cos-dscp | dscp-cos ] 1

QoS マッピング情報を表示します。マップは、トラフィックのプライオリティを表す内部 DSCP 値を生成する目的で使用されます。

show mls qos interface [ interface-id ] [ policers ] 1

インターフェイス レベルでの QoS 情報を表示します。出力キューおよび CoS/出力キュー マップの設定、ポリサーが設定されているインターフェイス、および入力統計情報が含まれます。

show mls masks [ qos | security ] 1

QoS ACL およびセキュリティ ACL に使用されているマスク 4 の詳細情報を表示します。

show wrr-queue cos-map

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

show wrr-queue bandwidth

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

3.EI が稼働しているスイッチでのみ使用できます。

4.スイッチ CLI コマンドおよび出力では、アクセス制御パラメータをマスクと呼びます。

標準 QoS の設定例


) これらの例が適用されるのは、スイッチで EI が稼働している場合に限られます。


ここでは、既存のネットワークと予定しているネットワーク変更に基づいて、QoS 機能を迅速に実装できるように、QoS の移行方法を示します。図29-5 を参照してください。項目は次のとおりです。

「既存の配線クローゼットに適した QoS の設定」

「インテリジェント配線クローゼットに適した QoS の設定」

図29-5 QoS を設定するネットワークの例

 

既存の配線クローゼットに適した QoS の設定

図29-5 に、Catalyst 2900 XL や 3500 XL スイッチなどを接続した既存の配線クローゼットを示します。これらのスイッチでは、QoS ベースの IEEE 802.1p CoS 値をサポートする、Cisco IOS Release 12.0(5)XP 以降が稼働しています。QoS による分類では、各フレームにプライオリティ別の CoS 値が割り当てられ、プライオリティの高いトラフィックが優先されます。

Catalyst 2900 および 3500 XL スイッチでは、各ポートにデフォルトの CoS 値を設定することによって( switchport priority default default-priority-id インターフェイス コンフィギュレーション コマンド)、タグなし(ネイティブ)のイーサネット フレームを入力ポートで分類できます。タグ情報のある IEEE 802.1Q フレームには、ヘッダー フレームのプライオリティ値が使用されます。Catalyst 3524-PWR XL および Catalyst 3548 XL スイッチでは、 switchport priority default override インターフェイス コンフィギュレーション コマンドによって、このプライオリティをデフォルト値で上書きできます。上書き機能が備わっていない Catalyst 2950 および Catalyst 2900 XL スイッチまたは他の 3500 XL モデルの場合、 mls qos cos override インターフェイス コンフィギュレーション コマンドを使用することにより、Catalyst 3550-12T スイッチはディストリビューション レイヤで IEEE 802.1p CoS 値を上書きできます。

Catalyst 2900 および 3500 XL スイッチの場合、CoS は、フレームのタグまたはポート情報に応じて、通常プライオリティの送信キューおよびハイ プライオリティの送信キューを指定して各送信ポート(出力ポート)を設定します。通常プライオリティ キュー内のフレームが転送されるのは、ハイ プライオリティ キューのフレームが転送されてからです。0 ~ 3 の IEEE 802.1p CoS 値が設定されているフレームは、通常プライオリティの送信キューに格納され、4 ~ 7 の CoS 値が設定されているフレームは、緊急(ハイ プライオリティ)キューに格納されます。

インテリジェント配線クローゼットに適した QoS の設定

図29-5 に、Catalyst 2950 スイッチなどを接続したインテリジェント配線クローゼットを示します。スイッチのうちの 1 台はビデオ サーバに接続されており、IP アドレスは 172.20.10.16 です。

この例の目的は、他のあらゆるトラフィックよりもビデオ トラフィックが優先されるようにすることです。そのためには、46 という DSCP 値をビデオ トラフィックに割り当てます。このトラフィックは、他のキューより頻繁に処理されるキュー 4 に格納されます。

ビデオ パケットが他のすべてのトラフィックより優先されるようにスイッチを設定するには、イネーブル EXEC モードで次の手順を実行します。

 

コマンド
目的

ステップ 1

configure terminal

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

ステップ 2

access-list 1 permit 172.20.10.16

IP 標準 ACL を定義し、172.20.10.16 のビデオ サーバからのトラフィックを許可します。

ステップ 3

class-map videoclass

videoclass というクラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。

ステップ 4

match access-group 1

ACL 1 によって指定されたトラフィックを照合することによって、一致条件を定義します。

ステップ 5

exit

グローバル コンフィギュレーション モードに戻ります。

ステップ 6

policy-map videopolicy

videopolicy というポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。

ステップ 7

class videoclass

作用対象のクラスを指定し、ポリシー マップ クラス コンフィギュレーション モードを開始します。

ステップ 8

set ip dscp 46

トラフィックが ACL 1 と一致した場合は、着信パケットの DSCP 値を 46 に設定します。

ステップ 9

police 5000000 8192 exceed-action drop

5 Mbps の平均トラフィック伝送速度、8192 バイトのバースト サイズを超えるトラフィックを廃棄するために、分類されたビデオ トラフィックにポリサーを定義します。

ステップ 10

exit

ポリシー マップ コンフィギュレーション モードに戻ります。

ステップ 11

exit

グローバル コンフィギュレーション モードに戻ります。

ステップ 12

interface interface-id

ビデオ サーバに接続されたスイッチ入力インターフェイスを指定し、インターフェイス コンフィギュレーション モードを開始します。

ステップ 13

service-policy input videopolicy

入力インターフェイスにポリシーを適用します。

ステップ 14

exit

グローバル コンフィギュレーション モードに戻ります。

ステップ 15

wrr-queue bandwidth 1 2 3 4

キュー 4 に高い WRR ウェイトを割り当てます。

ステップ 16

wrr-queue cos-map 4 6 7

CoS 値 6 および CoS 値 7 でキュー 4 が選択されるように、CoS/出力キュー マップを設定します。

ステップ 17

end

イネーブル EXEC モードに戻ります。

ステップ 18

show class-map videoclass

show policy-map videopolicy

show mls qos maps [ cos-dscp | dscp-cos ]

設定を確認します。

ステップ 19

copy running-config startup-config

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