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

目次

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 トラフィック タイプ、パケット ラベル、および出力キュー

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

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値にマップ)の設定を行います(トラフィック タイプ、パケット ラベル、および出力キューを参照)。

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

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

ネットワーク トラフィックの一部で緊急転送が必要な場合は、緊急キューとしてキュー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情報の表示」(p.26-13)を参照してください。

ステップ 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 { 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]

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]

IPトラフィック用のIP標準/拡張ACLまたは非IPトラフィック用のレイヤ2 MAC ACLを作成し、必要な回数だけ、コマンドを繰り返します。

詳細については、「物理インターフェイスにACLを適用する場合の注意事項」および「ACLによるトラフィックの分類」を参照してください。

mac access-list extended name コマンドの詳細は、「名前付きMAC拡張ACLの作成」を参照してください。


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


ステップ 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]

IPトラフィック用のIP標準/拡張ACLまたは非IPトラフィック用のレイヤ2 MAC ACLを作成し、必要な回数だけ、コマンドを繰り返します。

詳細は、「ACLによるトラフィックの分類」を参照してください。


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


mac access-list extended name コマンドの詳細は、「名前付きMAC拡張ACLの作成」を参照してください。

ステップ 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

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