- Cisco Industrial Ethernet 4000、4010、および 5000 スイッチ ソフトウェア コンフィギュレーション ガイド
- Contents
- はじめに
- 設定の概要
- コマンドライン インターフェイスの使用
- インターフェイスの設定
- スイッチ アラームの設定
- スイッチ セットアップの設定
- Cisco IOS Configuration Engine の設定
- スイッチ クラスタの設定
- スイッチ管理の実行
- PTP の設定
- PROFINET の設定
- CIP の設定
- SDM テンプレートの設定
- スイッチ ベース認証の設定
- IEEE 802.1x ポートベース認証の設定
- MACsec
- Web ベース認証の設定
- SmartPort マクロの設定
- SGACL モニタモードおよび SGACL ロギングの設定
- SGT 交換プロトコル over TCP(SXP)およびレイヤ 3 トランスポートの設定
- VLAN の設定
- VTP の設定
- 音声 VLAN の設定
- STP の設定
- MSTP の設定
- オプションのスパニングツリー機能の設定
- Resilient Ethernet Protocol の設定
- FlexLink および MAC アドレス テーブル移動更新の設定
- DHCP の設定
- ダイナミック ARP インスペクション(DAI)の設定
- IP ソース ガードの設定
- IGMP スヌーピングおよび MVR の設定
- ポート単位のトラフィック制御の設定
- LLDP、LLDP-MED、およびワイヤード ロケーション サービスの設定
- SPAN および RSPAN の設定
- レイヤ 2 NAT の設定
- CDP の設定
- UDLD の設定
- RMON の設定
- システム メッセージ ロギングの設定
- SNMP の設定
- ACL によるネットワーク セキュリティの設定
- QoS の設定
- スタティック IP ユニキャスト ルーティングの設定
- IPv6 ホスト機能の設定
- リンク ステート トラッキングの設定
- IP マルチキャスト ルーティングの設定
- MSDP の設定
- IPv6 MLD スヌーピングの設定
- HSRP および VRRP の設定
- IPv6 ACL の設定
- Embedded Event Manager の設定
- IP ユニキャスト ルーティングの設定
- IPv6 ユニキャスト ルーティングの設定
- ユニキャストの概要
- Cisco IOS IP SLA 動作の設定
- Dying Gasp
- 拡張オブジェクト トラッキングの設定
- MODBUS TCP の設定
- イーサネット CFM
- Cisco IOS ファイル システム、コンフィギュレーション ファイル、およびソフトウェア イメージの操作
- EtherChannel の設定
- トラブルシューティング
- SD カードの使用
QoS の設定
この章では、Cisco IE スイッチ上で、モジュラ QoS コマンドライン インターフェイス(CLI)(MQC)コマンドを使用して Quality of Service(QoS)を設定する方法について説明します。QoS を使用すると、特定のトラフィックを他のトラフィック タイプよりも優先的に処理できます。QoS が設定されていない場合、パケットの内容やサイズに関係なく、各パケットにベストエフォート型サービスが提供されます。信頼性、遅延限度、またはスループットに関して保証することなく、スイッチはパケットを送信します。MQC では、特定のトラフィック ストリームの優先順位付けまたは制限を行うための総合的な階層型設定のフレームワークを提供します。
Cisco IOS の MQC コマンドの詳細については、次のサイトにある「Cisco IOS Quality of Service Solutions Command Reference」を参照してください。
http://www.cisco.com/en/US/docs/ios/12_2/qos/command/reference/fqos_r.html
■
パフォーマンス モニタリング プロトコル用の QoS 処理
QoS の概要
ネットワークは通常、ベストエフォート型の配信方式で動作します。この場合、すべてのトラフィックに同じプライオリティが与えられ、送信されるタイミングも同じです。輻輳が発生すると、すべてのトラフィックが等しくドロップされます。
QoS 機能を設定すると、特定のネットワーク トラフィックを選択し、相対的な重要性に応じてプライオリティを指定し、トラフィック管理技術を使用して、優先処理を行うことができます。ネットワークに QoS を実装すると、ネットワーク パフォーマンスがさらに予測しやすくなり、帯域幅をより効率的に利用できるようになります。
図 78 に、MQC のモデルを示します。
■
パケット分類:トラフィックが特定の基準に一致するかどうかに基づいて、トラフィックを組織化します。スイッチはパケットを受信すると、すべての主要なパケット フィールド(サービス クラス(CoS)、Diffserv コード ポイント(DSCP)、または IP precedence)を識別します。スイッチは、この内容またはアクセス コントロール リスト検索に基づいて、パケットを分類します。詳細については、「分類」を参照してください。
■
パケットポリシングは着信トラフィックのレートを設定済みポリサーと比較して、パケットが適合か不適合かを決定します。設定されたポリサーに適合する、または超過するパケットのトラフィック フローを制御できます。認定情報レート(CIR)および最大情報レート(PIR)を設定し、CIR および PIR に適合するパケット(conform-action)、PIR には適合するが CIR には適合しないパケット(exceed-action)、および PIR 値を超えるパケット(violate-action)で実行するアクションを設定できます。 詳細については、ポリシングを参照してください。
■
パケットの優先順位付けまたはマーキングは、分類およびポリサー情報を評価して、実行するアクションを決定します。分類に属するすべてのパケットを、マーキングできます。ポリサーを設定した場合、許可された帯域幅要件(bps)に一致するまたは超過するパケットを条件付きで通過、廃棄、または再分類できます。詳細については、マーキングを参照してください。
■
輻輳管理は、キューイングおよびスケジューリング アルゴリズムを使用して、ポートから発信されるトラフィックをキューイングおよびソートします。スイッチは、スケジューリングおよびトラフィック制限機能(クラスベース均等化キューイング(CBWFQ)、クラスベース トラフィック シェーピング、ポート シェーピング、およびクラスベース プライオリティ キューイング)をサポートします。他のトラフィック キューの処理中でも、特定のトラフィック クラスに保証された帯域幅を割り当てることができます。詳細については、「輻輳管理およびスケジューリング」を参照してください。
■
スイッチ上でのキューイングは輻輳回避メカニズムである Weighted Tail-Drop(WTD)アルゴリズムによって拡張されます。WTD では、分類に基づいてトラフィック クラスを区別し、キュー サイズ(パケット数)を調整します。詳細については、「輻輳回避およびキューイング」を参照してください。
■
MQC
■
分類
MQC
MQC により、ユーザはトラフィック ポリシーを作成し、それらをインターフェイスに適用できます。1 つのトラフィック ポリシーには、1 つのトラフィック クラスと 1 つ以上の QoS 機能が含まれます。トラフィックの分類には、トラフィック クラスを使用します。また、トラフィック ポリシーの QoS 機能により、分類されたトラフィックの処理方法を決定します。
class-map [ match-all | match-any ] class-map-name グローバル コンフィギュレーション コマンドを使用して、トラフィッククラスを定義し、クラスマップ コンフィギュレーション モードを開始します。トラフィッククラスは、名前、設定済み match コマンドの評価方法の指示(クラスマップで複数の match コマンドが設定されている場合)、および一連の match コマンドの 3 つの要素で構成されます。
■
class-map コマンドラインで、トラフィッククラスの名前を指定し、クラスマップ コンフィギュレーション モードを開始します。
■
class-map match-any または class-map match-all を入力することにより、次の match コマンドを評価するためのキーワードを任意で指定できます。 match-any を指定した場合、評価されるトラフィックは指定の基準のいずれか 1 つに一致する必要があります。 match-all を指定した場合、評価されるトラフィックは指定の基準のすべてに一致する必要があります。 match-all クラスマップには、1 つの match 文しか含めることができませんが、 match-any クラスマップには複数の match 文を含めることができます。
match-all または match-any を入力しない場合、デフォルトは match-all になります。
■
パケット分類のための基準を指定するには、 match クラスマップ コンフィギュレーション コマンドを使用します。指定された基準に合っていれば、パケットはクラスのメンバーと見なされ、トラフィックポリシーで設定された QoS 仕様に従って転送されます。一致基準を満たさないパケットは、デフォルトのトラフィッククラスのメンバーとして分類されます。
2.
トラフィック ポリシーを作成し、1 つまたは複数の QoS 機能にトラフィック クラスを関連付けます。
policy-map policy-map-name グローバル コンフィギュレーション コマンドを使用して、トラフィックポリシーを作成し、ポリシーマップ コンフィギュレーション モードを開始します。トラフィック ポリシーでは、QoS 機能を定義して、指定されたトラフィック クラスに関連付けます。トラフィックポリシーは、名前、トラフィッククラス( class ポリシーマップ コンフィギュレーション コマンドにより指定される)、およびそのクラスで設定された QoS ポリシーの 3 つの要素で構成されます。
■
policy-map コマンドラインで、トラフィックポリシーの名前を指定し、ポリシーマップ コンフィギュレーション モードを開始します。
■
ポリシーマップ コンフィギュレーション モードで、指定のポリシーに対するトラフィックの分類で使用されるトラフィック クラス名を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。
■
ポリシーマップ クラス コンフィギュレーション モードで、QoS 機能を開始すると、分類されたトラフィックに適用できます。たとえば、入力ポリシーマップに、 set 、 police 、または police aggregate コマンドを使用したり、出力ポリシーマップに、 bandwidth 、 priority 、 queue-limit 、または shape average コマンドを使用できます。
注: パケットは、トラフィックポリシー内のいずれかのトラフィッククラスだけに一致します。パケットがトラフィック ポリシー内の複数のトラフィック クラスに一致する場合、ポリシーで定義された最初のトラフィック クラスが使用されます。パケットに複数の一致基準を設定するには、単一のトラフィック ポリシーに複数のトラフィック クラスを関連付けます。
3.
インターフェイスにトラフィック ポリシーを付加します。
service-policy インターフェイス コンフィギュレーション コマンドを使用すると、インターフェイスで送受信されるパケット用にポリシーマップをインターフェイスに付加できます。トラフィック ポリシーの特性を着信または発信パケットに適用するかどうかを指定する必要があります。たとえば、 service-policy output class1 インターフェイス コンフィギュレーション コマンドを入力すると、 class1 という名前のトラフィックポリシーのすべての特性が、指定されたインターフェイスに付加されます。指定されたインターフェイスから発信されるすべてのパケットは、 class1 という名前のトラフィックポリシーで指定された基準に従って評価されます。
入力ポリシーおよび出力ポリシー
ポリシー マップは、入力ポリシー マップまたは出力ポリシー マップのいずれかになり、スイッチでパケットが送受信される際に、インターフェイスに適用されたサービス ポリシーによって付加されます。入力ポリシー マップは、受信されたトラフィック上でポリシングおよびマーキングを実行します。ポリシングされたパケットが最大許容レートを超過している場合、廃棄されるか、またはプライオリティが低くなります(マーク ダウン)。出力ポリシー マップは、スイッチから発信されるトラフィック上でスケジューリングおよびキューイングを実行します。
入力ポリシーと出力ポリシーは、基本構造は同じですが規制する特性が異なります。図 79 に、入力ポリシーと出力ポリシーの関係を示します。
スイッチで設定可能なポリサープロファイルの数は 256 です。スイッチでサポートされているポリサーインスタンスの数は 1024 - 1 で、スイッチ上のインターフェイス数より多い数です。24 ポート スイッチでは、使用できるポリサー インスタンスの数は 999 です。ポリサー プロファイルは複数のインスタンスで使用できます。
1 つのインターフェイスには、入力ポリシー マップと出力ポリシー マップを 1 つずつ適用できます。
CPU 保護がイネーブルになっている場合(デフォルト)、ポート当たり 45 の入力ポリサーを設定できます。 no policer cpu uni all グローバル コンフィギュレーション コマンドを入力し、スイッチをリロードして CPU 保護をディセーブルにすると、ユーザ定義クラスにはポート当たり最大 63 のポリサー(すべての 4 番目のポート上で 62)および class-default に 1 つのポリサーを設定できます。show policer cpu uni-eni {drop | rate} 特権 EXEC コマンドを入力し、CPU 保護がイネーブルになっているかどうか確認できます。
入力ポリシー マップ
入力ポリシーマップの分類基準には、CoS、DSCP、または IP precedence 値のマッチング、またはアクセスコントロールリスト(ACL)か VLAN ID(ポート単位、VLAN QoS 単位)のマッチングが含まれます。入力ポリシー マップでは、次のいずれかのアクションを実行できます。
■
CoS、DSCP、IP precedence、または QoS グループ値の設定、もしくはマーキング
アクセス グループまたは VLAN ID の照合は入力ポリシーだけで実行され、QoS グループの照合は出力ポリシーでだけ実行されます。入力ポリシーに割り当てられた QoS グループ番号を、出力ポリシーで照合できます。クラスの class-default は、ポリシーマップで他のいずれのクラスとも明示的に一致しない任意のトラフィックに対して、ポリシーマップで使用されます。入力ポリシーマップでは、 bandwidth 、 queue-limit 、 priority 、および shape average などのキューイングおよびスケジューリングキーワードはサポートされていません。
入力ポリシーマップの最大クラス数は 64 + class-default です。入力ポリシーには、最大 64 のクラスを設定できます。
出力ポリシー マップ
出力ポリシー マップの分類基準には、CoS、DSCP、IP Precedence、または QoS グループ値のマッチングが含まれます。出力ポリシー マップでは、次のいずれかのアクションを実行できます。
■
スケジューリング( bandwidth 、 priority 、 shape average )
出力ポリシー マップでは、アクセス グループのマッチングをサポートしません。その代わり、入力ポリシー マップの該当するアクセス グループを照合し、QoS グループを設定することにより、QoS グループを使用できます。出力ポリシー マップでは、QoS グループを照合できます。詳細については、「QoS グループ に基づく分類」を参照してください。
出力ポリシーは、マーキングまたはポリシングをサポートしません(ポリシングのあるプライオリティの場合は除く)。スイッチ上では、出力パケットのマーキングは実行されません(出力ポリシーには set コマンドが含まれません)。
クラスの class-default は、ポリシーマップで他のいずれのクラスとも明示的に一致しない任意のトラフィックに対して、ポリシーマップで使用されます。出力ポートには最大 4 つのキューがあるため、出力ポリシー マップには最大 4 つのクラスを設定できます(class-defalt を含む)。
出力ポートに付加される出力ポリシー マップは、パケットの入力ポートに付加された入力ポリシー マップですでに一致しているパケットだけを照合できます。スイッチ上の任意のポートまたはすべてのポートに、出力ポリシー マップを付加できます。スイッチは各ポートに固有の出力ポリシー マップの設定および付加をサポートしています。ただし、これらの出力ポリシー マップには、それぞれ固有のキュー制限を 3 つしか設定できません。これら 3 つの固有のキュー制限設定は、スイッチ上にあるポート数に応じた数の出力ポリシー マップに含まれます。帯域幅、プライオリティ、またはシェーピングの設定には制限はありません。
cpu traffic qos [cos value | dscp value | precedence value | qos-group value] グローバル コンフィギュレーション コマンドを使用して、CPU が生成したトラフィックの出力ポリシー分類基準を設定できます。
分類
分類では、パケット ヘッダーのフィールドを検査して、トラフィックの種類を区別します。スイッチはパケットを受信すると、ヘッダーを検査して、すべての主要なパケット フィールドを識別します。パケットは、パケットの ACL、DSCP 値、CoS 値、IP precedence 値、または VLAN ID に基づいて分類されます。図 80 に、分類情報を伝達するのに、非推奨 IP タイプ オブ サービス(ToS)フィールドから 6 ビットを使用する、レイヤ 2 またはレイヤ 3 IP パケット ヘッダーで伝達される分類情報の例を示します。
■
レイヤ 2 の IEEE 802.1Q トランクとして設定されたポートでは、ネイティブ VLAN(仮想 LAN)のトラフィックを除き、すべてのトラフィックが 802.1Q フレームに収められます。レイヤ 2 802.1Q フレームヘッダーには、2 バイトのタグ制御情報フィールドがあり、上位 3 ビット(ユーザプライオリティビット)で CoS 値を、下位 12 ビットで VLAN ID 値を伝達します。他のフレーム タイプでレイヤ 2 CoS 値を伝達することはできません。
■
レイヤ 3 IP パケットは、IP precedence 値または DSCP 値のいずれかを伝達します。DSCP 値は IP precedence 値と下位互換性があるので、QoS ではどちらの値も使用できます。
IP precedence 値の範囲は 0 ~ 7 です。DSCP 値の範囲は 0 ~ 63 です。
■
出力は、レイヤ 2 またはレイヤ 3 のマーキング タイプ、マーキング値、およびパケット タイプに基づいて再マーキングされます。
図 80 フレームおよびパケットにおける QoS 分類レイヤ
クラス マップ
前述のとおり、MQC クラス マップを使用して、特定のトラフィック フロー(またはクラス)に名前を付けて、他のすべてのトラフィックと区別します。クラス マップでは、特定のトラフィック フローとの比較を行い、さらにそれを分類するために使用する基準を定義します。複数のトラフィック タイプを分類する場合は、別のクラス マップを作成し、異なる名前を使用できます。クラスマップ名を指定して class-map コマンドを入力すると、クラスマップ コンフィギュレーション モードが開始されます。このモードで、 match クラス マップ コンフィギュレーション コマンドを使用して、トラフィックの一致条件を定義します。パケットはクラスマップ基準に照合されてから、ポリシー マップで指定された関連アクションが実行されます。
分類では、複数の基準に照合できます。また、 class map match-all class-map name グローバル コンフィギュレーション コマンドを使用して、クラスマップ コンフィギュレーション モードを開始することにより、パケットヘッダー内にクラスマップのすべての一致基準が存在する必要があるクラスマップを作成できます。
注: match-all クラスマップで設定できる match エントリは 1 つだけです。
class map match-any class-map name グローバル コンフィギュレーション コマンドを使用すると、リストされた基準のいずれかを使用する分類を定義できます。
注: match-all または match-any を入力しない場合、デフォルトは match-all になります。match-all クラス マップでは、複数の分類基準(match 文)を設定できません。一致条件を含まないクラスマップは、デフォルトで match-all となります。
match コマンド
パケットの分類に使用される内容の種類を設定するには、 match クラスマップ コンフィギュレーション コマンドを使用して、分類基準を指定します。設定された基準に一致するパケットは、特定のクラスに属し、指定されたポリシーに従って転送されます。たとえば、CoS 値、IP DSCP 値、および IP precedence 値で match クラスマップコマンドを使用できます。これらの値は、パケット上で マーキング と呼ばれます。また、アクセス グループ、QoS グループ、または VLAN ID、またはポート単位、VLAN QoS 単位の ID 範囲と照合できます。
■
入力ポリシーマップでは、同一ポリシーマップまたはクラスマップ内に IP 分類( match ip dscp 、 match ip precedence 、IP ACL の match access-group )と非 IP 分類( match cos 、または MAC ACL の match access-group )を設定できません。
■
レイヤ 2 だけ分類が設定された入力ポリシーマップが、ルーテッド ポートまたはルーテッド スイッチ仮想インターフェイス(SVI)を含むスイッチ ポートに付加されている場合、サービス ポリシーはルーティング適格トラフィック上ではなく、スイッチング適格トラフィック上でだけ機能します。
■
802.1Q トンネル ポート上でトラフィックを分類するには、MAC ACL に基づくレイヤ 2 分類を含む入力ポリシー マップだけが使用できます。レイヤ 3 分類、match レイヤ 2 CoS 分類、またはポート単位、VLAN 単位のポリシーが設定された入力ポリシー マップは、トンネル ポート上でサポートされません。
■
出力ポリシー マップでは、異なるクラス マップで同じ分類基準(つまり、同じ match 修飾子および match 値)を使用できません。
次に、クラスマップ example を作成して、リストされた基準のいずれかに一致するクラスを定義する例を示します。この例では、DSCP 値 が 32 または 40 のパケットが受信された場合、このパケットはクラス マップにより識別(分類)されます。
レイヤ 2 CoS に基づく分類
match コマンドを使用することにより、CoS 値(0 ~ 7 の範囲)に基づいてレイヤ 2 トラフィックを分類できます。
注: match cos コマンドは、レイヤ 2 802.1Q トランクポートでだけサポートされます。
次に、CoS 値 5 に一致するクラス マップを作成する例を示します。
IP precedence に基づく分類
IPv4 トラフィックは、パケットの IP precedence 値(0 ~ 7 の範囲)に基づいて分類できます。
次に、IP precedence 値 4 に一致するクラス マップを作成する例を示します。
IP DSCP に基づく分類
IP DSCP 値に基づいて IPv4 トラフィックを分類し、 match ip dscp クラスマップ コンフィギュレーション コマンドを入力する場合、次のいくつかの分類オプションがあります。
■
IP precedence 値および DSCP 値 0 に対応するデフォルト サービスの使用。デフォルトの Per Hop Behavior(PHB)は通常、ベストエフォート サービスです。
■
DSCP 値をバイナリ形式で入力する、保証型転送(AF)の使用。AF では、輻輳が発生し、トラフィックが最大許容レートを超過していない場合に、パケットの特定のクラスが転送される相対的な確率を設定します。AF per-hop behavior により、IP パケットが異なる 4 つの AF クラス(AF11 ~ 13 [最高]、AF21 ~ 23、AF31 ~ 33、および AF41 ~ 43 [最低])で配信されます。各 AF クラスには、特定のバッファ スペース容量および廃棄確立が割り当てられ、DSCP 番号がバイナリ形式で指定されます。輻輳が発生すると、パケットの廃棄優先順位により、クラス内のパケットの相対的な重要性が決定されます。AF41 では、パケットがネットワークの端から端へ転送される確立が最も高くなります。
■
1 ~ 7 の範囲の Class Selector(CS; クラス セレクタ)サービス値の入力(パケットの ToS フィールドの IP precedence ビットに対応)
■
急送型転送(EF)の使用による低遅延パスの指定。これは、DSCP 値 46 に対応します。EF サービスでは、プライオリティ キューイングを使用して、プライオリティの低いトラフィック クラスをプリエンプトします。
DSCP のプライオリティ設定の詳細については、RFC-2597(AF PHB)、RFC-2598(EF)、または RFC-2475(DSCP)を参照してください。
802.1Q トンネリング CoS マッピング
スイッチでは、カスタマー VLAN(C-VLAN)からサービスプロバイダー VLAN(S-VLAN)への VLAN マッピングがサポートされています。QoS の場合、スイッチはカスタマー CoS(C-CoS)またはカスタマー DSCP(C-DSCP)値からサービス プロバイダー CoS(S-CoS)を設定でき、従来の 802.1Q トンネリング(QinQ)または選択した QinQ VLAN マッピングにより任意のトラフィックについて内部 CoS を外部 CoS にマッピングできます。このデフォルトにより、カスタマー CoS がサービス プロバイダー ネットワークにコピーされます。
スイッチでは、トランクポートで従来の QinQ および選択した QinQ について C-CoS から S-CoS への伝播がサポートされています。これはデフォルト動作であり、設定は必要ありません。1 対 2 VLAN マッピングを使用し、レイヤ 2 トランク ポートで従来の QinQ または選択した QinQ を設定する場合、またスイッチで C-DSCP から S-CoS を設定できます。
VLAN マッピングに設定された 802.1Q トンネル ポートまたはトランク ポート上のスイッチを開始するトラフィックについては、スイッチは、カスタマー パケット ヘッダーを検査し、カスタマー CoS 値またはカスタマー DSCP 値からサービス プロバイダー CoS 値(S-CoS)を設定する機能を備えています。
802.1Q マップ ポートでの CoS マッチングは、次のように設定されます。
■
(トンネル ポートまたはトランク ポート上の)802.1Q トンネリングまたは(トランク ポート上の)選択した 802.1Q に設定されたインターフェイスで、インターフェイス(C-CoS)上で受信した VLAN タグ(内部 VLAN または C-VLAN)の CoS 値は、デフォルトでトンネル VLAN タグ(外部 VLAN または S-VLAN)に自動的に反映されます。
■
set cos ポリシーマップ クラス コンフィギュレーション コマンドは常に、処理が完了した後、最も外側の VLAN タグである S-VLAN-ID に適用されます。たとえば、802.1Q トンネルでは、 set cos コマンドを入力すると、カプセル化されたパケットの外部タグの CoS 値だけ変更されます。
■
match dscp クラス マップ コンフィギュレーション コマンドを入力してポリシーを設定し、QinQ および選択した QinQ マッピングインターフェイスの set cos ポリシーマップ クラス コンフィギュレーション コマンドを入力すると、DSCP の一致によりカプセル化値の外部 CoS が設定されます。
■
外部 VLAN が一致した場合に DSCP を設定できます。
■
従来の QinQ マッピングまたは選択した QinQ マッピングに設定したインターフェイスで match cos コマンドを入力すると、外部 CoS、つまり反映された内部 Cos(C-CoS)に対して一致します。
分類の比較
表 61 に、一般的なトラフィックタイプに推奨される IP DSCP 値、IP precedence 値、および CoS 値を示します。
QoS ACL に基づく分類
パケットは、入力ポリシー マップで ACL 検索に基づいても分類されます。ACL 分類は、入力ポリシー マップの QoS グループまたは QoS 番号を割り当てることにより、出力ポリシーに伝達されます。ACL 検索に基づいて分類する場合は、まず IP ACL または MAC ACL を作成します。クラスマップを設定し、 match access-group { acl-number | acl name } クラスマップ コンフィギュレーション コマンドを使用して、ポリシーマップにクラスマップを付加します。
注: 出力ポリシーマップには、 match access-group を設定できません。
IP 標準、IP 拡張、またはレイヤ 2 MAC ACL を使用すると、同じ特性(クラス)を持つパケットのグループを定義できます。レイヤ 3 およびレイヤ 4 パラメータに基づいて IP トラフィックを分類する IP ACL を設定するには、 access-list グローバル コンフィギュレーション コマンドを使用します。レイヤ 2 パラメータに基づいて IP および 非 IP トラフィックを分類するレイヤ 2 MAC ACL を設定するには、 mac access-list extended グローバル コンフィギュレーション コマンドを使用します。
注: IP フラグメントを設定済みの IP 拡張 ACL に照合して、QoS を実行できません。IP フラグメントはベストエフォート型として送信されます。IP フラグメントは IP ヘッダーのフィールドで示されます。
match access-group コマンドでは、許可アクションが含まれる ACL だけを使用できます。拒否アクションが含まれる ACL は、 QoS ポリシーで照合されません。
QoS グループ に基づく分類
QoS グループは、スイッチがパケットを特定のクラスのメンバーとして識別するのに使用する内部ラベルです。このラベルはパケット ヘッダーには含まれず、ラベルを設定するスイッチに制限されています。QoS グループにより、明示的にパケットをマーキング(変更)しない後続の QoS アクションにパケットのタグ付け方法が提供されます。次に、入力ポリシー マップから出力ポリシー マップに ACL 一致を伝達できます。
QoS グループは、入力側で識別されて出力側で使用されます。また、入力ポリシーに割り当てられて、出力ポリシーのパケットを識別します。を参照してください。QoS グループにより、出力ポリシーの特定のアクションに対して、入力トラフィックの異なるクラスが集約されます。
QoS グループを使用すると、出力ポート上での同じ QoS 処理に対する入力クラス間およびポリシー マップ間の複数の入力ストリームを集約できます。同じ出力処理が必要なすべてのストリームに、入力ポリシー マップ内の同一の QoS グループ番号を割り当てて、出力ポリシー マップの QoS グループ番号に照合して、必要なキューイングおよびスケジューリング アクションを指定します。
また、QoS グループを使用すると、トラフィックが入力インターフェイスに基づいて出力側で異なる方法で処理される必要がある場合に、特定のインターフェイスに着信するトラフィックを識別できます。
QoS グループを使用すると、VLAN 上のブリッジド トラフィックに対して、出力インターフェイス上でポート単位、VLAN 単位の QoS 出力ポリシーを設定できます。ポート単位、VLAN 単位の入力ポリシーを設定することにより、入力インターフェイス上の VLAN に QoS グループ番号を割り当てます。次に、出力側での分類に同一の QoS グループ番号を使用します。ブリッジド トラフィックの VLAN は、スイッチを介して転送される間は変更されないため、入力 VLAN に割り当てられる QoS グループ番号は、出力インターフェイスで同じ VLAN を識別するのに使用できます。
cpu traffic qos [cos value | dscp value | precedence value | qos-group value] グローバル コンフィギュレーション コマンドを使用して、CPU が生成したトラフィックの QoS グループ番号を設定できます。
QoS グループ番号は、入力側でインターフェイス、VLAN、トラフィック フロー、および集約トラフィックの任意の組み合わせに個別に割り当てできます。QoS グループ番号を割り当てるには、入力ポリシー マップの QoS グループ マーキングと同時に、入力ポリシー マップ内の同一サービス クラスに必要なその他のマーキングまたはポリシング アクションを設定します。出力分類では QoS グループだけを使用する必要があるため、これにより、入力マーキングおよび入力ポリシング機能を出力分類機能(必要な場合)から切り離すことができます。
ACL 分類を出力ポリシーに伝達するには、入力側でパケットを指定する QoS 番号を割り当てます。次の例では、出力ポリシーであとで処理できるように、特定のパケットを QoS グループ 1 の一部として識別します。
set qos-group コマンドは、入力ポリシーでだけ使用します。割り当てられた QoS グループ識別子は、パケットにマーキングまたは変更を行わずに出力ポリシーであとで使用されます。 match qos-group は、出力ポリシーで使用します。
注: 入力ポリシーマップには、 match qos-group を設定できません。
次に、出力ポリシーを作成して、入力ポリシーマップ in-gold-policy で作成された QoS グループを照合する例を示します。 qos-group 1 として内部的にタグ付けされたトラフィックは、出力ポリシーで識別され、処理されます。
VLAN ID に基づく分類
VLAN ID に基づく分類により、所定のインターフェイスにユーザが指定した VLAN 上で送信されるフレームに QoS ポリシーを適用できます。アクセス ポートでは単一 VLAN のトラフィックを伝送するため、VLAN 単位の分類は必要ありません。トランク ポートではないポートに、ポート単位、VLAN 単位の階層型ポリシーを付加しようとすると、設定は拒否されます。
スイッチでは、 parent レベルおよび child レベルの 2 つのポリシーレベルがサポートされています。QoS の親子構造により、親ポリシー内の子ポリシーを参照して、特定のトラフィック タイプをさらに細かく制御できるようになります。ポート単位、VLAN 単位の QoS の場合、親レベルのクラス マップは VLAN 一致基準だけを指定し、子レベルのクラス マップは親レベルのクラス マップに一致するフレームをより詳細に分類します。親レベルで複数のサービス クラスを設定して、各種 VLAN の組み合わせを照合し、任意の子ポリシー マップを使用して、親のサービス クラスごとに個別の QoS ポリシーを適用できます。
注: ポート単位 VLAN 単位の親レベルのクラスマップでは、子ポリシーアソシエーションだけをサポートします。いずれのアクションも設定できません。さらに、親レベルのクラスマップでは、クラスの class-default のアクションまたは子ポリシーアソシエーションを設定できません。
ポート単位、VLAN 単位 QoS には、次の制限事項があります。
■
ポート単位、VLAN 単位の階層型ポリシー マップは、トランク ポートにだけ適用できます。
■
VLAN ID に基づく分類は、ポート単位、VLAN 単位の階層型ポリシー マップの親レベルでだけ設定できます。
■
VLAN または VLAN のセットに付加されている子ポリシーマップに、レイヤ 3 分類( match ip dscp 、 match ip precedence 、 match IP ACL )だけが含まれる場合、これらの VLAN は、必ずポート単位、VLAN 単位ポリシーが付加されているポート上でだけ実行されることに注意する必要があります。この制限事項に従わない場合は、これらの VLAN 上のスイッチに着信するトラフィックの QoS 動作が不適切になる場合があります。
■
また、ポート単位 VLAN 単位が適用されるトランクポート上で、 switchport trunk allowed vlan インターフェイス コンフィギュレーション コマンドを使用して、VLAN メンバーシップを制限することも推奨します。レイヤ 3 分類が設定されたポート単位、VLAN 単位のポリシーが含まれるトランク ポート間で VLAN メンバーシップが重複した場合も、予期せぬ QoS 動作が発生する可能性があります。
次の例では、子レベルのポリシー マップのクラス マップが音声、データ、およびビデオ トラフィックの一致基準を指定して、子ポリシー マップが各トラフィック タイプの入力ポリシングに対するアクションを設定します。親レベルのポリシー マップは、指定されたポート上の子ポリシー マップが適用される VLAN を指定します。
注: また、一致基準を match vlan 100 200 300 と入力した場合でも、同じ結果になります。
注: 各ポート単位、VLAN 単位の親ポリシークラス( class-default を除く)には、子ポリシーアソシエーションを設定できます。
設定上の注意事項および制限事項を含む設定情報については、階層型入力ポリシー マップを含むポート単位、VLAN 単位 QoS の設定を参照してください。
テーブル マップ
テーブル マップを使用すると、単一のコマンドで多数のトラフィック フローを管理できます。 set コマンドで指定したテーブルマップを、ポリシーのマークダウンマッピングとして使用できます。また、テーブル マップを使用すると、多数の明示的な match および set を設定せずに、着信 QoS マーキングを代わりのマーキングにマッピングできます。テーブル マップは、入力ポリシー マップでだけ使用します。
■
特定の CoS、DSCP、または IP precedence 値と特定の CoS、DSCP、または IP precedence 値を相互に関連付ける
■
CoS、DSCP、または IP precedence 値をマーク ダウンする
テーブル マップには、次のデフォルト アクションのいずれかが含まれます。
■
default default-value :すべてのマッピングされていない値に特定のデフォルト値(0 ~ 63)を適用します。
■
default copy :すべてのマッピングされていない値を別の修飾子の同等な値にマッピングします。
■
default ignore :マッピングされていない値を変更しません。
次に、特定の CoS 値を DSCP 値にマッピングするテーブルを作成する例を示します。 default コマンドにより、すべてのマッピングされていない CoS 値が DSCP 値 63 にマッピングされます。
スイッチでは、最大 256 の一意のテーブル マップをサポートしています。テーブルマップでは、最大 64 の異なる map from - to エントリを入力できます。スイッチでは、次のテーブル マップがサポートされます。
テーブルマップは、1 つのパラメータ(CoS、IP precedence、または DSCP のいずれか設定されているもの)だけを変更し、ポリシーマップで set コマンドにより設定されている場合、またはポリシング機能で conform-action コマンドか、 exceed-action コマンドにより設定されている場合にだけ有効です。個々のポリサーはまた、 violate-action コマンドをサポートしていますが、集約ポリサーは violate-action によるテーブルマップはサポートしていません。
テーブル マップは、出力ポリシー マップでサポートされません。詳細については、テーブル マップの設定を設定してください。
ポリシング
パケットが分類されたあと、図 82 に示されるポリシングを使用して、トラフィック クラスを規制できます。ポリシング機能では、特定のトラフィック フローで使用可能な帯域幅量を制限するか、または任意のトラフィック タイプが過剰な帯域幅およびシステム リソースを使用しないようにします。ポリサーは、ポリサーおよびトラフィック クラスの設定プロファイルと着信トラフィックのレートを比較することにより、パケットを適合または不適合として識別します。許容平均レートまたはバーストレートを超過するパケットは、 不適合 または 非適合 となります。これらのパケットは、ポリサーの設定に応じて、廃棄されるかまたは変更(追加処理用にマーキング)されます。
ポリシングは、主に受信インターフェイス上で使用されます。ポリサーを含むポリシー マップは、入力サービス ポリシーに限り付加できます。出力ポリシー マップでは、プライオリティ クラスのポリシングだけが許可されます。無条件のプライオリティ ポリシングを参照してください。
個別のポリシング
個別のポリシングは、入力ポリシー マップにだけ適用されます。ポリシーマップ コンフィギュレーション モードで、 class コマンドのあとにクラスマップ名を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。
シスコ産業用イーサネットスイッチは、個別ポリシングまたは集約ポリシングについて 1-rate、2-color 入力ポリシングおよび 2-rate、3-color のポリシングをサポートします。
1-rate、2-color ポリシングについては、 police ポリシーマップ クラス コンフィギュレーション コマンドを使用して、ポリサー、トラフィックの認定速度制限、トラフィックの認定バーストサイズ制限、または制限未満( conform-action )および制限を越える( exceed-action )トラフィックに対して実行するアクションを定義します。バースト サイズ(bc)を指定しない場合は、システムにより適切なバースト サイズ値が算出されます。算出された値は、ほとんどのアプリケーションに適しています。詳細については、「トラフィック ポリシーのインターフェイスへの適用」を参照してください。
最初のトークン バケットを更新するため、認定情報レート(CIR)の設定を含む、2-rate ポリサーを設定する場合、2 番目のトークン バケットが更新される最大情報レート(PIR)も設定します。PIR を設定しない場合、ポリサーは標準 1-rate、2-color ポリサーです。
2-rate、3-color ポリシングについては、指定の CIR および PIR に適合するパケット(conform-action)、PIR には適合するが CIR には適合しないパケット(exceed-action)、および PIR 値を超えるパケット(violate-action)で実行するアクションを任意に設定できます。
■
PIR に等しい CIR 値を設定している場合、CIR 以下のトラフィック レート速度は適合範囲内です。CIR を超えるトラフィックは違反範囲に入ります。
■
PIR を CIR よりも大きな値に設定すると、CIR を下回るトラフィック レートは適合になります。CIR を超過し、PIR 以下のトラフィック レートは超過になります。PIR を超過するトラフィック レートは違反になります。
■
PIR を設定しない場合、ポリサーは 1-rate、2-color ポリサーとして設定されます。
バースト サイズの設定が低すぎると、バースト トラフィックがある状況でスループットが低下する場合があります。バースト サイズの設定が高すぎると、トラフィック レートが高くなりすぎる場合があります。
注: スイッチでは、 show policy-map interface 特権 EXEC コマンド出力で conform、exceed、および violate の各クラスのバイトレベル統計情報がバイト カウンタでサポートされています。
ポリシーマップを有効にするには、 service-policy input インターフェイス コンフィギュレーション コマンドを使用し、ポリシーマップを物理ポートに付加します。ポリシングは、受信トラフィックでだけ行われるため、ポリサーは入力サービス ポリシーにだけ付加できます。
conform-action および exceed-action ポリシーマップ クラス コンフィギュレーション コマンド、または conform-action および exceed-action ポリシーマップ クラス ポリシング コンフィギュレーション コマンドを使用すると、パケットが指定のトラフィックレートに適合するまたは超過する場合に実行するアクションを指定できます。
適合アクションとは、パケットを変更しないで送信する、新しい CoS 値、DSCP 値、IP precedence 値を設定する、または出力側での分類用に QoS グループ値を設定することです。超過アクションとは、パケットを廃棄する、パケットを変更しないで送信する、新しい CoS 値、DSCP 値、IP precedence 値を設定する、または出力側での分類用に QoS グループ値を設定することです。
conform-action 、 exceed-action 、および violate-action ポリシーマップ クラス コンフィギュレーション コマンド、または conform-action 、 exceed-action 、および violate-action ポリシーマップ クラス ポリシング コンフィギュレーション コマンドを使用すると、パケットが指定のトラフィックレートに適合するまたは超過する場合に実行するアクションを指定できます。適合アクション、超過アクション、および違反アクションは、パケットを廃棄する、パケットを変更しないで送信する、新しい CoS 値、DSCP 値、IP precedence 値を設定する、または出力側での分類用に QoS グループ値を設定することです。
明示的な値、テーブル マップ、またはその両方を組み合わせて、各マーキング アクションを設定できます。テーブル マップでは、特定のトラフィック属性を示し、それらを他の属性にマッピング(変換)します。
各サービス クラスで複数の適合アクションおよび超過アクションを同時に設定できます。各サービス クラスで複数の適合アクション、超過アクション、および違反アクションを同時に設定できます。 violate-action を設定しない場合、デフォルトで違反クラスが exceed-action と同じアクションに割り当てられます。
テーブル マップの作成後、ポリシーマップ ポリサーを設定して、テーブル マップを使用します。
注: 入力ポリシーマップでテーブルマップを使用する場合、テーブルマップの from - アクションのプロトコルタイプは、対応する分類のプロトコルタイプと同じである必要があります。たとえば、クラスマップが IP 分類を表す場合、テーブルマップの from - タイプアクションは、 dscp または precedence である必要があります。クラスマップが非 IP 分類を表す場合、テーブルマップの from - タイプアクションは、 cos である必要があります。
クラスで複数の動作を設定する場合、ポリシーマップ クラス ポリシング コンフィギュレーション モードで複数の適合または超過の各アクションのエントリ適合、超過、または違反の各アクションのエントリを入力する必要があります(次の例を参照)。
集約ポリシング
集約ポリシングは、入力ポリシー マップにだけ適用されます。集約ポリサーは、個別のポリサーとは異なり、ポリシー マップ内の複数のトラフィック クラスで共有されます。シスコ産業用イーサネットスイッチは、集約ポリシングについて 1-rate、2-color 入力ポリシングおよび 2-rate、3-color のポリシングをサポートします。
policer aggregate グローバル コンフィギュレーション コマンドを使用して、物理インターフェイスで送受信されるすべてのトラフィックのポリサーを設定できます。集約ポリサーを設定すると、特定のバースト サイズおよび適合アクションと超過アクションを設定できます。バーストサイズ( bc )を指定しない場合は、システムにより適切なバーストサイズ値が算出されます。算出された値は、ほとんどのアプリケーションに適しています。
最初のトークン バケットを更新するため、認定情報レート(CIR)の設定を含む、2-rate ポリサーを設定する場合、2 番目のトークン バケットが更新される最大情報レート(PIR)も設定します。PIR を設定しない場合、ポリサーは標準 1-rate、2-color ポリサーです。
2-rate、3-color ポリシングについては、指定の CIR および PIR に適合するパケット(conform-action)、PIR には適合するが CIR には適合しないパケット(exceed-action)、および PIR 値を超えるパケット(violate-action)で実行するアクションを任意に設定できます。
注: 適合アクションが drop に設定されている場合、超過アクションおよび違反アクションは自動的に drop に設定されます。超過アクションが drop に設定されている場合、違反アクションは自動的に drop に設定されます。
■
PIR に等しい CIR 値を設定している場合、CIR 以下のトラフィック レート速度は適合範囲内です。CIR を超えるトラフィックは違反範囲に入ります。
■
PIR を CIR よりも大きな値に設定すると、CIR を下回るトラフィック レートは適合になります。CIR を超過し、PIR 以下のトラフィック レートは超過になります。PIR を超過するトラフィック レートは違反になります。
■
PIR を設定しない場合、ポリサーは 1-rate、2-color ポリサーとして設定されます。
バースト サイズの設定が低すぎると、予想よりトラフィックが少なくなる場合があります。バースト サイズの設定が高すぎると、予想よりトラフィックが多くなる場合があります。
各サービス クラスで複数の適合アクションおよび超過アクションを同時に設定できます。適合アクションとは、パケットを変更しないで送信する、出力側での分類用に QoS グループ値を設定する、または新しい CoS 値、DSCP 値、IP precedence 値を設定することです。超過アクションとは、パケットを廃棄する、パケットを変更しないで送信する、出力側での分類用に QoS グループを設定する、または新しい CoS 値、DSCP 値、IP precedence 値を設定することです。明示的な値、テーブル マップ、またはその両方を組み合わせて、マーキングの適合アクションまたは超過アクションをそれぞれ設定できます。テーブル マップでは、特定のトラフィック属性を示し、それらを他の属性にマッピング(変換)します。
各サービス クラスで複数の適合アクション、超過アクション、および違反アクションを同時に設定できます。 conform-action 、 exceed-action 、および violate-action ポリシーマップ クラス コンフィギュレーション コマンド、または conform-action 、 exceed-action 、および violate-action ポリシーマップ クラス ポリシング コンフィギュレーション コマンドを使用すると、パケットが指定のトラフィックレートに適合するまたは超過する場合に実行するアクションを指定できます。適合アクション、超過アクション、および違反アクションは、パケットを廃棄する、パケットを変更しないで送信する、新しい CoS 値、DSCP 値、IP precedence 値を設定する、または出力側での分類用に QoS グループ値を設定することです。
注: 適合アクションが drop に設定されている場合、超過アクションおよび違反アクションは自動的に drop に設定されます。超過アクションが drop に設定されている場合、違反アクションは自動的に drop に設定されます。
明示的な値、テーブル マップ、またはその両方を組み合わせて、マーキングの適合アクション、超過アクション、または違反アクションをそれぞれ設定できます。 violate-action を設定しない場合、デフォルトで違反クラスが exceed-action と同じアクションに割り当てられます。
テーブル マップでは、特定のトラフィック属性を示し、それらを他の属性にマッピング(変換)します。超過アクションのテーブルマップを設定し、違反アクションのアクションが明示的に設定されていない限り、集約ポリシングの violate-action に対するテーブルマップはサポートされません。
テーブル マップの作成後、ポリシーマップ ポリサーを設定して、テーブル マップを使用します。
注: 入力ポリシーマップでテーブルマップを使用する場合、テーブルマップの from - アクションのプロトコルタイプは、対応する分類のプロトコルタイプと同じである必要があります。たとえば、クラスマップが IP 分類を表す場合、テーブルマップの from - タイプアクションは、 dscp または precedence である必要があります。クラスマップが非 IP 分類を表す場合、テーブルマップの from - タイプアクションは、 cos である必要があります。
複数の適合および超過アクション適合、超過、違反アクションを集約ポリサーに policer aggregate グローバル コンフィギュレーション コマンドのパラメータとして同時に設定できますが、次の順序でアクションを入力する必要があります。集約ポリシングを含む入力ポリシー マップの設定の設定ガイドラインを参照してください。
集約ポリサーを設定したあとで、ポリシー マップおよび対応するクラス マップを作成し、集約ポリサーにポリシー マップを関連付けて、サービス ポリシーをポートに適用します。
注: 1 つのポリシーマップだけが、任意の特定の集約ポリサーを使用できます。集約ポリシングは、複数のインターフェイス上のトラフィック ストリームの集約には使用できません。集約ポリシングは、インターフェイスに付加されるポリシー マップの複数のクラスにまたがるトラフィック ストリームの集約、およびポート単位、VLAN 単位ポリシー マップのポート上の複数の VLAN にまたがるストリームの集約にだけ使用できます。
ポリシーマップおよびポリシングアクションを設定した後で、 service-policy インターフェイス コンフィギュレーション コマンドを使用して、入力ポートにポリシーを統合します。
設定情報については、集約ポリシングを含む入力ポリシー マップの設定を参照してください。
集約ポリシングを使用して、複数の VLAN にまたがるトラフィック ストリームの規制もできます(次の例を参照)。
無条件のプライオリティ ポリシング
プライオリティ ポリシングは、出力ポリシー マップにだけ適用されます。出力ポリシーマップで priority ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、特定のトラフィッククラスに対して低遅延パスまたはクラスベース プライオリティ キューイングを指定できます。完全プライオリティ キューイングを使用すると、プライオリティ キューのパケットは、キューが空になるまで他のキューよりも優先的にスケジューリングされ、送信されます。高いプライオリティ キューイングを過剰に使用すると、下位のプライオリティ トラフィックで輻輳が発生する場合があります。
このような輻輳を排除するには、ポリシング機能があるプライオリティ(プライオリティ ポリシング)を使用すると、プライオリティ キューで使用される帯域幅を削減し、他のキューにトラフィック レートを割り当てることができます。ポリシング機能があるプライオリティは、出力ポリシー マップでサポートされるポリシング形式だけになります。
注:プライオリティで出力ポリシーマップの 1-rate、2-color ポリサーを設定できます。出力ポリシーの 2-rate、3-color ポリサーは設定できません。
クラスベース プライオリティ キューイングを含む出力ポリシー マップの設定も参照してください。
注: 無条件のプライオリティポリサー用にバーストサイズが認定されたポリサーは、設定できません。設定されたバースト サイズは、いずれも無視されます。
次に、 priority コマンドと police コマンドを併用して、 out-class1 をプライオリティキューとして設定し、キューに着信するトラフィックを 20,000,000 bps に制限して、プライオリティキューがそれを超えるレートを使用しないようにする例を示します。このレートを超えるトラフィックは、廃棄されます。これにより、他のトラフィック キューはポート帯域幅の一部を受け取ります。この場合、最小帯域幅保証は、500,000 および 200,000 kbps です。クラスの class-default キューは、残りのポート帯域幅を受け取ります。
マーキング
入力ポリシー マップでパケット マーキングを使用すると、特定のクラスに属するトラフィックの属性を設定または変更できます。ネットワーク トラフィックがクラス内に組み込まれたあとで、マーキングを使用して、特定のトラフィック タイプを識別して固有の処理を行います。たとえば、クラスの CoS 値を変更したり、特定のトラフィック タイプの IP DSCP 値または IP precedence 値を設定できます。その後、これらの新しく設定された値を使用して、トラフィックの処理方法を決定します。また、マーキングを使用すると、スイッチ内の QoS グループにトラフィックを割り当てることもできます。
トラフィック マーキングは通常、入力ポートの特定のトラフィック タイプで実行されます。マーキング アクションにより、CoS、DSCP、または precedence ビットは、設定に応じて書き換えられるか、またはそのまま変更されません。これにより、QoS ドメインで使用されるポリシーに従って、パケットのプライオリティが高くなるかまたは低くなります。そのため、他の QoS 機能ではマーキング情報を使用して、パケットの相対的および絶対的な重要性を判断できます。マーキング機能では、ポリシング機能から取得した情報または分類機能から直接取得した情報を使用できます。
ポリシーマップで、すべてのサポート対象の QoS マーキング(CoS、IP DSCP、IP precedence、および QoS グループ)に対して set コマンドを使用することにより、トラフィックを指定およびマーキングできます。 set コマンドにより、特定クラスに一致するパケットは無条件にマーキングされます。その後、インターフェイスにポリシー マップを入力ポリシー マップとして付加します。
また、テーブルマップと set コマンドを併用しても、トラフィックをマーキングできます。テーブルマップでは、特定トラフィックの属性を表示し、他の属性にそれらをマッピング(変換)します。テーブル マップでは、属性の to-from 関係を確立し、行われた変更を定義します。
QoS グループ マーキング アクションと同一サービスのパケットの DSCP、precedence、および CoS マーキングを変更するアクションを同時に設定できます。出力分類に関してマーキング アクションで定義された QoS グループ番号を使用できます。
注: 入力ポリシーマップでテーブルマップを使用する場合、テーブルマップの from - アクションのプロトコルタイプは、対応する分類のプロトコルタイプと同じである必要があります。たとえば、クラスマップが IP 分類を表す場合、テーブルマップの from - タイプアクションは、 dscp または precedence である必要があります。クラスマップが非 IP 分類を表す場合、テーブルマップの from - タイプアクションは、 cos である必要があります。
テーブル マップの作成後、ポリシーマップを設定して、テーブル マップを使用します。輻輳管理およびスケジューリングを参照してください。図 83 に、トラフィックのマーキングの手順を示します。
次に、ポリシー マップを使用してパケットをマーキングする例を示します。最初のマーキング( set コマンド)は、クラス AF31 ~ AF33 によって一致しなかったすべてのトラフィックを照合する QoS デフォルトクラスマップに適用され、すべてのトラフィックの IP DSCP 値を 1 に設定します。2 番目のマーキングは、クラス AF31 ~ AF33 のトラフィックの IP DSCP を 3 に設定します。
パフォーマンス モニタリング プロトコル用の QoS 処理
■
IP-SLA および TWAMP プローブ用の QoS 処理
■
CPU によって生成されたトラフィックの QoS マーキング
■
CPU によって生成されたトラフィックの QoS キューイング
TWAMP
Two-Way Active Measurement Protocol(TWAMP)の詳細については、「 TWAMP の概要 」(41-14 ページ)および「 TWAMP の設定 」(41-15 ページ)を参照してください。
IP-SLA および TWAMP プローブ用の QoS 処理
IP-SLA および TWAMP のプローブ用の QoS 処理は、デバイスを通過する通常のデータ トラフィックに発生する影響を正確に反映する必要があります。
生成元デバイスはプローブのマーキングを変更してはいけません。これらのプローブは、設定されている通常トラフィックのキューイング ポリシーに基づいてキューに格納される必要があります。
マーキング
デフォルトでは、CFM トラフィックの Class of Service(CoS)マーキング(CFM プローブを使用する IP SLA を含む)は変更されません。この機能ではこの動作を変更できません。
デフォルトでは、IP トラフィック マーキング(IP SLA および TWAMP プローブを含む)は変更されません。この機能では、この動作は変更できます。
キューイング
通常のトラフィックと同様、CFM トラフィック(CFM プローブを使用する IP SLA を含む)は、このトラフィックの CoS 値および出力ポートに設定された出力ポリシー マップに応じてキューに格納されます。この機能ではこの動作を変更できません。
(IP SLA および TWAMP プローブを含む)IP トラフィックは、 cpu traffic qos グローバル コンフィギュレーション コマンドおよび出力ポートの出力ポリシーマップで指定されたマーキングにしたがってキューイングされます。このコマンドが設定されていない場合、すべての IP トラフィックは、出力ポートのキューにスタティックにマッピングされます。
CPU によって生成されたトラフィックの QoS マーキング
QoS マーキングを使用して、CPU からのトラフィックの属性を設定または変更できます。QoS マーキング アクションにより、パケット内の CoS、DSCP、または IP precedence ビットは書き換えられるか、またはそのまま変更されませんQoS はパケット マーキングを使用して、あるトラフィック タイプおよびローカル スイッチおよびネットワーク上でのそれらのタイプの処理方法を識別します。
また、マーキングを使用すると、スイッチ内の QoS グループにトラフィックを割り当てることもできます。この QoS グループは、パケットを変更しない内部ラベルですが、ネットワーク ポートで出力キューイングを設定する場合のトラフィック タイプの識別に使用できます。
CPU によって生成されたトラフィックを指定してマーキングするには、次のグローバル コンフィギュレーション コマンドを使用します。
cpu traffic qos cos { cos_value | cos [ table-map table-map-name ] | dscp [ table-ma p table-map-name ] | precedence [ table-map table-map-name ]}
cpu traffic qos dscp { dscp_value | cos [ table-map table-map-name ] | dscp [ table-map table-map-name ] | precedence [ table-map table-map-name ]}
cpu traffic qos precedence { precedence_value | cos [ table-map table-map-name ] | dscp [ table-map table-map-name ] | precedence [ table-map table-map-name ]}
cpu traffic qos qos-group value
明示的な値を設定するか、またはキーワード table-map を使用して、CoS、IP-DSCP、IP precedence、および QoS グループをマークできます。テーブル マップでは、特定のトラフィック属性を示し、それらを別の属性にマッピング(変換)します。テーブル マップでは、属性の to-from 関係を確立し、行われた変更を定義します。
■
IP CPU パケットの CoS、 または IP-DSCP、または IP precedence を使用した CoS のマーキング
■
非 IP CPU パケットの CoS を使用した CoS のマーキング
■
CPU パケットの CoS、または IP-DSCP、または IP precedence を使用した IP DSCP のマーキング
■
CPU パケットの CoS、または IP-DSCP、または IP precedence を使用した IP precedence のマーキング
IP-DSCP または IP precedence いずれかのマーキングを設定できます。
また同時に、CoS、IP-DSCP または IP precedence、および QoS グループを修正するマーキング アクションを設定できます。
cpu traffic qos コマンドは、適用先となるトラフィックを指定します。それらは、すべての CPU トラフィック、CPU IP トラフィックだけ、または CPU 非 IP トラフィックだけです。その他のすべてのトラフィックは、その QoS マーキングを保持しています。この機能は CFM トラフィック(CFM を使用したレイヤ 2 IP SLA プローブを含む)には影響を与えません。
注: スイッチには、テーブルマップを使用して CPU が生成したトラフィックの CoS、IP-DSCP および IP precedence をマーキングする機能が搭載されています。
CPU によって生成されたトラフィックの QoS キューイング
cpu traffic qos グローバル コンフィギュレーション コマンドにより、出力ポリシーマップのクラスマップでパケット ID として CPU 生成トラフィックに確立された QoS マーキングを使用して、CPU トラフィックを出力ポートの出力ポリシーマップのクラスキューにマッピングできます。出力ポートの出力ポリシー マップを使用して、そのポートのスイッチから発信されるトラフィックのキューイングおよびスケジューリングを設定できます。
CoS、IP DSCP、または IP-precedence パケットマーキングを変更せずに、すべての CPU 生成トラフィックを出力ポリシーマップの 1 つのクラスにマッピングする場合、CPU 生成グループのマーキングに QoS グループを使用できます。
IP DSCP または IP-precedence に基づき、それらのパケットマーキングを変更せずに、すべての CPU 生成 IP トラフィックを出力ポリシーマップの複数クラスにマッピングする場合、テーブルマップを使用できます。
■
テーブルマップを指定せず、 DSCP または precedence を map from 値として使用することで、IP-DSCP または IP precedence マーキングを設定します。
■
default および copy の各キーワードだけを使用したテーブルマップを指定し、 DSCP または precedence を map from 値として使用することで、IP-DSCP または IP precedence マーキングを設定します。
CoS に基づき、CoS パケットマーキングを変更せずに、すべての CPU 生成トラフィックを出力ポリシーマップの複数クラスにマッピングする場合、テーブルマップを使用できます。
■
テーブルマップを指定せず、CoS を map from 値として使用することで、 CoS マーキングを設定します。
■
default および copy の各キーワードだけを使用したテーブルマップを指定し、 CoS を map from 値として使用することで、CoS マーキングを設定します。
テーブルマップの詳細については、テーブル マップを参照してください。
テーブルマッピングで cpu traffic qos グローバル コンフィギュレーション コマンドを使用すると、複数のマーキングポリシーおよびキューイングポリシーがともに動作、または個別に動作するよう設定できます。 cpu traffic qos グローバル コンフィギュレーション コマンドを使用して設定された CoS マーキングに基づき、ネイティブ VLAN トラフィックをキューイングできます。
cpu traffic qos コマンドは、適用先となるトラフィックを指定します。それらは、すべての CPU トラフィック、CPU IP トラフィックだけ、または CPU 非 IP トラフィックだけです。その他のトラフィックは、出力ポートの CPU デフォルト キューにスタティックにマッピングされます。すべての CFM トラフィック(CFM を使用したレイヤ 2 IP SLA プローブを含む)は、出力ポリシー マップのクラスにマッピングされ、その CoS 値に基づいてキューイングされます。
注: スイッチには、テーブルマップを使用して CPU が生成したトラフィックの CoS、IP-DSCP および IP precedence に基づいてキューイングする機能が搭載されています。
設定のガイドライン
■
この機能はスイッチでグローバルに設定する必要があります。ポート単位またはプロトコル単位では設定できません。
■
個別の回線上でそれぞれ cpu traffic qos マーキングアクションを入力します。
■
cpu traffic qos cos グローバル コンフィギュレーション コマンドは、特定の CoS 値またはテーブルマップの両方ではなく、いずれかを使用して、CPU 生成トラフィックの CoS マーキングを設定します。新しく設定を行うと、既存の設定は置き換えられます。
■
cpu traffic qos dscp グローバル コンフィギュレーション コマンドは、特定の DSCP 値またはテーブルマップの両方ではなく、いずれかを使用して、CPU 生成 IP トラフィックの IP-DSCP マーキングを設定します。新しく設定を行うと、既存の設定は置き換えられます。
■
cpu traffic qos precedence グローバル コンフィギュレーション コマンドは、特定の precedence 値またはテーブルマップの両方ではなく、いずれかを使用して、CPU 生成 IP トラフィックの IP-precedence マーキングを設定します。新しく設定を行うと、既存の設定は置き換えられます。
■
cpu traffic qos dscp グローバル コンフィギュレーション コマンドと cpu traffic qos precedence グローバル コンフィギュレーション コマンドは相互に排他的です。新しく設定を行うと、既存の設定は置き換えられます。
■
cpu traffic qos dscp グローバル コンフィギュレーション コマンドがテーブルマップで設定されている場合、一度に 1 つの map from 値(DSCP、precedence、または CoS)しか設定できません。新しく設定を行うと、既存の設定は置き換えられます。このコマンドでマーキングされたパケットは、マーキングされた DSCP 値または precedence 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
■
cpu traffic qos precedence グローバル コンフィギュレーション コマンドがテーブルマップで設定されている場合、一度に 1 つの map from 値(DSCP、precedence、または CoS)しか設定できません。新しく設定を行うと、既存の設定は置き換えられます。このコマンドでマーキングされたパケットは、マーキングされた precedence 値または DSCP 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
■
DSCP および precedence 両方の map from 値は設定できません。新しく設定を行うと、既存の設定は置き換えられます。
■
cpu traffic qos cos グローバル コンフィギュレーション コマンドがテーブルマップで設定されている場合、一度に 2 つの map from 値(CoS と DSCP または precedence のいずれか)を設定できます。
■
cpu traffic qos cos グローバル コンフィギュレーション コマンドが DSCP または precedence の map from 値だけで設定されている場合、次のようになります。
–
IP パケットの CoS 値は、パケットの DSCP(または precedence)値および設定されたテーブル マップを使用してマッピングされています。パケットは、マーキングされた CoS 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
■
cpu traffic qos cos グローバル コンフィギュレーション コマンドが CoS の map from 値で設定されている場合、次のようになります。
–
IP パケットの CoS 値は、パケットの CoS 値および設定されたテーブル マップを使用してマッピングされています。パケットは、マーキングされた CoS 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
–
非 IP パケットの CoS 値は、パケットの CoS 値および設定されたテーブル マップを使用してマッピングされています。パケットは、マーキングされた CoS 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
■
cpu traffic qos cos グローバル コンフィギュレーション コマンドが DSCP または precedence および CoS の map from 値で設定されている場合、次のようになります。
–
IP パケットの CoS 値は、パケットの DSCP または precedence 値および設定されたテーブル マップを使用してマッピングされています。パケットは、マーキングされた CoS 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
–
非 IP パケットの CoS 値は、パケットの CoS 値および設定されたテーブル マップを使用してマッピングされています。パケットは、マーキングされた CoS 値に基づいて、出力ポリシー マップで分類し、キューイングできます。
■
cpu traffic qos qos-group グローバル コンフィギュレーション コマンドを使用して、特定の QoS グループの CPU 生成トラフィックだけの QoS グループマーキングを設定できます。 table-map オプションは使用できません。
輻輳管理およびスケジューリング
Cisco Modular QoS CLI(MQC)は、発信トラフィック フローを制御する関連メカニズムをいくつか備えています。これらのメカニズムは、出力ポリシー マップに実装され、出力トラフィック キューを制御します。スケジューリング ステージでは、該当する時間までパケットを保有してから、4 つのトラフィック キューのいずれかに送信します。キューイングは、パケット クラスに基づいて特定のキューにパケットを割り当てて、輻輳を回避するため、WTD アルゴリズムにより拡張されます。異なるスケジューリング メカニズムを使用すると、他のトラフィックを均等に処理しながら、特定のトラフィック クラスに保証された帯域幅を割り当てることができます。特定のトラフィック クラスで消費される最大帯域幅を制限して、低遅延キューの遅延の影響を受けやすいトラフィックが他のキューよりも先に送信されるように保証できます。
スイッチでは、次のスケジューリング メカニズムをサポートします。
shape average ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、特定のトラフィッククラスで最大許容平均レートを使用するように指定できます。最大レートは bps で指定します。
bandwidth ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、特定のクラスに割り当てられる帯域幅を制御できます。最小帯域幅は、ビット レート、または総帯域幅もしくは残りの帯域幅との割合で指定できます。
■
プライオリティ キューイングまたはクラスベース プライオリティ キューイング
priority ポリシーマップ クラス コンフィギュレーション コマンドを使用して、他のトラフィックタイプよりも優先されるトラフィックタイプを指定します。プライオリティの高いトラフィックには、完全プライオリティを指定して、その他のトラフィック キューには余剰の帯域幅を割り当てたり、またはプライオリティの高いトラフィックの無条件のポリシングを含むプライオリティを指定して、その他のトラフィック キュー間に既知の残りの帯域幅を割り当てることができます。
–
完全プライオリティを設定するには、 priority ポリシーマップ クラス コンフィギュレーション コマンドだけを使用して、プライオリティキューを設定します。その他のトラフィッククラスには、 bandwidth remaining percent ポリシーマップ クラス コンフィギュレーション コマンドを使用して、必要な比率で余剰の帯域幅を割り当てます。
–
無条件のポリシングを含むプライオリティを設定するには、 priority ポリシーマップ クラス コンフィギュレーション コマンドおよび police ポリシーマップ クラス コンフィギュレーション コマンドを使用して、プライオリティキューを無条件にレート制限します。この場合、他のトラフィッククラスは、要件に応じて bandwidth または shape average により設定できます。
トラフィック シェーピング
トラフィック シェーピングは、トラフィック ポリシングと同様のトラフィック制御メカニズムです。入力ポリシー マップでトラフィック ポリシングが使用されている場合、トラフィック シェーピングはインターフェイスからトラフィックを発信するときに実行されます。スイッチは、インターフェイスから発信されるトラフィックのクラスにはクラスベース シェーピングを、およびインターフェイスから発信されるすべてのトラフィックにはポート シェーピングを適用できます。トラフィック シェーピングのキュー設定により、キューの最大帯域幅および Peak Information Rate(PIR)が設定されます。
注: 出力ポリシーマップ内の同一のクラスに、トラフィックシェーピング( shape average )と CBWFQ( bandwidth )、またはプライオリティキューイング( priority )を設定できません。出力ポリシー マップ内の別のクラスに、完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合、特定のトラフィック クラスにトラフィック シェーピングを設定できません。
クラスベースのシェーピング
クラスベースシェーピングは、 shape average ポリシーマップ クラス コンフィギュレーション コマンドを使用して、データ伝送速度(bps)を制限し、トラフィッククラスの認定情報速度(CIR)に使用します。スイッチは、3 つのトラフィック クラスごとに別々のキューをサポートします。4 番目のキューは常に、クラス class-default 、未分類トラフィック用のデフォルトキューです。
注: トラフィックシェーピングの設定により、キューの最小帯域幅保証または CIR を PIR と同じ値に自動的に設定します。
ポート シェーピング
ポートシェーピング(送信ポートシェーパ)を設定するには、デフォルトクラスだけを含むポリシーマップを作成して、 shape average コマンドを使用してポートの最大帯域幅を指定します。
次に、前の例で設定された out-policy ポリシーマップに応じて割り当てられた、ポートを 90 Mbps にシェーピングするポリシーマップを設定する例を示します。 service-policy ポリシー マップ クラス コマンドは、親ポリシーに子ポリシーを作成する場合に使用します。
親子階層
トラフィックシェーピングでは、 parent ポリシーレベルおよび child ポリシーレベルもサポートされます。QoS の親子構造は、特定のトラフィック タイプをさらに詳細に制御するために、子ポリシーが親ポリシー内で参照されるという特定の目的に使用されます。
最初のポリシーレベルは親レベルで、ポートシェーピングに使用されます。また、ポリシー内にクラスタイプの class-default を 1 つだけ特定できます。次に、親レベルのポリシー マップの例を示します。
2 番目のポリシーレベルは子レベルで、特定のトラフィックストリームまたはトラフィッククラスを制御するのに使用されます(次の例を参照)。
注: 子ポリシーの各キューにおける最小帯域幅保証の合計(CIR)は、ポートシェーピングの合計速度を上回ることはできません。
CBWFQ
CBWFQ を設定することにより、ポートで使用可能な総帯域幅の一部を割り当てて、キューの相対的優先順位を設定できます。 bandwidth ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、トラフィッククラスの出力帯域幅をレート(kbps)、総帯域幅に対するパーセンテージ、または残りの帯域幅に対するパーセンテージで設定できます。
注: ポリシーマップで帯域幅を設定する場合は、すべてのレートを同じ形式(設定されたレートまたはパーセンテージ)で設定する必要があります。ポリシーの各キューにおける最小帯域幅保証の合計(CIR)は、親の合計速度を上回ることはできません。
■
bandwidth ポリシーマップ クラス コンフィギュレーション コマンドを使用して、トラフィッククラスを絶対レート(kbps)または総帯域幅に対するパーセンテージで設定する場合、これはそのトラフィッククラスの最小帯域幅保証(CIR)を表します。つまり、トラフィック クラスは最低でもコマンドにより指定された帯域幅を取得しますが、その帯域幅に制限されるわけではありません。ポート上の余剰の帯域幅はすべて、CIR レートの設定と同じ比率で各クラスに割り当てられます。
出力ポリシーの別のクラスに完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合には、帯域幅を絶対レートまたは総帯域幅に対するパーセンテージでは設定できません。
■
bandwidth ポリシーマップ クラス コンフィギュレーション コマンドを使用して、トラフィッククラスを残りの帯域幅に対するパーセンテージで設定する場合、これはクラスに割り当てられるポートの余剰帯域幅の一部を表しています。つまり、ポート上に余剰の帯域幅がある場合、およびこのトラフィック クラスに最小帯域幅保証がない場合にだけ、クラスに帯域幅が割り当てられます。
出力ポリシー マップの別のクラスに完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合にだけ、帯域幅を残りの帯域幅に対するパーセンテージで設定できます。
詳細については、「CBWFQ を含む出力ポリシー マップの設定」を参照してください。
注: 出力ポリシーマップ内の同一のクラスには、帯域幅とトラフィックシェーピング( shape average )またはプライオリティキューイング( priority )を設定できません。
注: クラスの CIR 帯域幅を絶対レートまたは総帯域幅に対するパーセンテージで設定する場合、ポリシーマップ内のすべてのクラスの CIR の処理後に残った余剰な帯域幅すべては、CIR レートと同じ比率でクラス間に配分されます。クラスの CIR レートが 0 に設定されている場合、このクラスはどの余剰帯域幅に対しても不適格となるため、帯域幅を取得できません。
プライオリティ キューイング
priority ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、特定のトラフィッククラスで優先処理が行われるよう保証できます。完全プライオリティ キューイングを使用すると、プライオリティ キューは常に処理されます。キュー内のすべてのパケットは、キューが空になるまでスケジューリングされ、送信されます。プライオリティ キューイングにより、関連付けられたクラスのトラフィックは、他のキューのパケットよりも先に送信されます。
注: priority コマンドを使用する際は注意してください。完全プライオリティ キューイングを過剰に使用すると、他のキューで輻輳が発生する場合があります。
スイッチでは、完全プライオリティキューイングまたは police ポリシーマップ コマンドと併用されるプライオリティをサポートしています。
■
完全プライオリティキューイング (ポリシングなしのプライオリティ)では、トラフィッククラスを低遅延キューに割り当てて、このクラスのパケットの遅延確率が最小になるよう保証します。完全プライオリティ キューイングが設定されている場合、プライオリティ キューは空になるまで継続的に処理され、他のキューのパケットは処理されない場合もあります。
同一出力ポリシー マップ内の別のクラスで、トラフィック シェーピングまたは CBWFQ が設定されている場合は、トラフィック クラスに対するポリシングなしのプライオリティを設定できません。
■
police ポリシーマップ コマンドとプライオリティを併用するか、または無条件のプライオリティポリシングを使用することにより、プライオリティキューで使用される帯域幅を削減できます。これは、出力ポリシー マップでサポートされる唯一のポリシング形式です。このようにコマンドを組み合わせて、プライオリティキューの最大レートを設定します。また、他のクラスに bandwidth および shape average の各ポリシーマップ コマンドを使用すると、他のキューのトラフィックレートを割り当てることができます。
出力ポリシーマップに police コマンドを使用せずにプライオリティが設定されている場合に他のキューを設定するには、 bandwidth remaining percent ポリシーマップ コマンドを使用して余剰の帯域幅を割り当てることによって共有するしかありません。
■
priority コマンドは、スイッチ上で付加されたすべての出力ポリシーの単一の一意のクラスに関連付けできます。
■
同一クラスでは、プライオリティとその他のスケジューリングアクション( shape average または bandwidth )を設定できません。
■
出力ポリシーマップの class-default にはプライオリティキューイングを設定できません。
詳細については、「クラスベース プライオリティ キューイングを含む出力ポリシー マップの設定」を参照してください。
次に、クラス out-class1 を完全プライオリティキューとして設定し、このクラスのすべてのパケットが他のトラフィッククラスより先に送信される例を示します。他のトラフィックキューでは、 out-class2 は残りの帯域幅の 50%、 out-class3 は残りの帯域幅の 20% を取得するように設定されます。クラス class-default は、保証なしで、残りの 30% を取得します。
次に、 priority コマンドと police コマンドを併用して、 out-class1 をプライオリティキューとして設定し、キューに着信するトラフィックを 20000000 bps に制限して、プライオリティキューがそれを超えるレートを使用しないようにする例を示します。このレートを超えるトラフィックは、廃棄されます。他のトラフィック キューは、残りの帯域幅の 50% および 20% を使用するように設定されます(上記の例を参照)。
輻輳回避およびキューイング
輻輳回避では、テール ドロップなどのアルゴリズムを使用して、キューイングおよびスケジューリング ステージを開始するパケット数を制御して、輻輳およびネットワークのボトルネックを回避します。スイッチは、Weighted Tail-Drop(WTD)を使用して、キュー サイズを管理し、トラフィック分類の廃棄優先順位を指定します。キュー サイズの制限は、キューのパケット マーキングに応じて設定されます。スイッチを通過するパケットごとに、特定のキューおよびしきい値が割り当てられます。たとえば、特定の DSCP 値または CoS 値は特定の出力キューおよびしきい値にマッピングされます。
WTD はキュー サイズを管理したり、トラフィック分類ごとに廃棄優先順位を設定するためにトラフィック キューに実装されます。WTD ではパケット分類を使用して、特定のキューに着信したフレームにそれぞれ異なるしきい値を適用します。宛先キューの合計サイズが、再分類された任意のトラフィックのしきい値を上回る場合、そのトラフィックの次のフレームは廃棄されます。
図 84 に 1000 フレームのキューにおける WTD の動作例を示します。ドロップ割合は次のように設定されています。40%(400 フレーム)、60%(600 フレーム)、および 100%(1000 フレーム)です。これらのパーセンテージは、40% のしきい値に再分類されたトラフィックは、キュー深度が 400 フレームを超過すると廃棄され、60% のしきい値に再分類されたトラフィックは、キュー深度が 600 フレームを超過すると廃棄されるということを意味します。また、40% しきい値の場合は最大 400 フレーム、60% しきい値の場合は最大 600 フレーム、100% しきい値の場合は最大 1000 フレームをキューイングできるという意味です。
この例では、CoS 値 6 および 7 は他の CoS 値よりも重要度が高く、100% ドロップしきい値に割り当てられます(キューフル ステート)。CoS 値 4 および 5 は 60% しきい値に、CoS 値 0 ~ 3 は 40% しきい値に割り当てられます。
すでにキューが 600 フレームで満たされている場合に、4 および 5 の CoS 値を含む新しいフレームが着信すると、このフレームは 60% しきい値の対象となります。このフレームがキューに追加されると、しきい値を超過するため、フレームは廃棄されます。
WTD は、 queue-limit ポリシーマップ クラス コマンドにより設定されます。このコマンドにより、特定のトラフィック クラスに関連するキュー サイズ(バッファ サイズ)が調整されます。しきい値をパケット数で指定する場合、各パケットは 256 バイトの固定単位となります。同一キュー内のトラフィック クラス(CoS、DSCP、precedence、または QoS グループ)ごとに、異なるキュー サイズを指定できます。キュー制限を設定することにより、対応するトラフィックの輻輳発生時の廃棄しきい値が確立されます。
注: queue-limit ポリシー マップ クラス コマンドを使用してキューサイズを設定する場合は、まずスケジューリングアクション( bandwidth 、 shape average または priority )を設定する必要があります。唯一の例外は、出力ポリシーマップの class-default のキュー制限を設定する場合です。
スイッチは、すべての出力ポリシー マップにおいてそれぞれ固有のキュー制限設定を最大 3 つまでサポートしています。出力ポリシー マップ内で許容されるキュー(クラス)は 4 つだけです(クラス デフォルトを含む)。各キューには 3 つのしきい値が定義されています。スイッチ上では、固有のしきい値を 3 つまで設定できます。ただし、複数のポリシー マップで同じキュー制限を共有できます。2 つのポリシー マップがキュー制限の設定を共有する場合、両方のポリシー マップのすべてのクラスで、すべてのしきい値が同じでなければなりません。
詳細については、「CBWFQ を含む出力ポリシー マップの設定」を参照してください。
次に、 class A が DSCP 値およびポリシーマップ、 PM1 に一致するよう設定する例を示します。30 および 50 の DSCP は、一意のしきい値(それぞれ 32 および 64)にマッピングされます。40 および 60 の DSCP 値は、112 パケットの最大しきい値にマッピングされます。
スイッチ上の複数の出力ポリシー マップで同じキュー制限値を使用できます。ただし、クラスのキュー制限値の 1 つを変更すると、新たな固有のキュー制限設定が作成されます。インターフェイスに付加できる出力ポリシー マップの固有のキュー制限設定は、どの時点でも 3 つだけです。4 つめのキュー制限が設定された出力ポリシー マップを付加しようとすると、次のエラー メッセージが表示されます。
注: 出力ポリシーマップで特定のクラスにキュー制限を設定する場合、他のすべての出力ポリシーマップでは、同一の修飾子タイプおよび修飾値の形式を使用する必要があります。キュー制限のしきい値に限り、異なる値を設定できます。たとえば、ポリシーマップ PM1 の dscp 30 および dscp 50 に、 class A のキュー制限のしきい値が設定されていて、ポリシーマップ PM2 で class A のキュー制限を設定する場合、 dscp 30 および dscp 50 を修飾子として使用する必要があります。 dscp 20 および dscp 40 は、使用できません。別のしきい値を設定できますが、これにより、新たなキュー制限設定が作成されます。
デフォルトでは、バッファ スペースの総容量は、すべてのポートおよび各ポートのすべてのキューで均等に配分されます。これは、多くのアプリケーションに適合します。遅延の影響を受けやすいトラフィックのキュー サイズを削減したり、またはバースト性のあるトラフィックのキュー サイズを増加させたりできます。
注: queue-limit コマンドを使用して、クラスのキューしきい値を設定する場合、WTD しきい値は、キューの最大しきい値以下にする必要があります。修飾子なしで設定されたキュー サイズは、修飾子を使用して設定されたいずれのキュー サイズよりも大きくする必要があります。
キュー制限を設定する場合、指定できるパケット数の範囲は 16 の倍数で、16 ~ 544 です。この場合、各パケットは 256 バイトの単位となります。
注: 最適なパフォーマンスを実現するため、キュー制限を 272 以下に設定することを推奨します。
キューの帯域幅とキュー サイズ(キュー制限)は、別々に設定されます。相互依存はしません。帯域幅およびキュー制限を設定する場合、送信されるトラフィック タイプを考慮する必要があります。
■
大きなバッファ(キュー制限)により、パケットを損失しないでバースト性のあるトラフィックに対応できますが、遅延は増えます。
■
小さなバッファは遅延を減らしますが、バースト性のあるトラフィックより安定したトラフィック フローに適しています。
■
非常に小さなバッファは通常、プライオリティ キューイングを最適化するのに使用されます。プライオリティ キューイングされるトラフィックの場合、通常少しのパケットに対応するだけのバッファ サイズが必要です。通常、大きなバッファ サイズは遅延を増加させるため、必要ではありません。高いプライオリティの遅延の影響を受けやすいパケットには、相対的に大きな帯域幅および相対的に小さなキュー サイズを設定します。
■
queue-limit コマンドを使用した場合、WTD 修飾子( cos 、 dscp 、 precedence 、 qos-group )に 3 つ以上のしきい値を設定できません。ただし、これらのしきい値にマッピングできる修飾子の数に制限はありません。修飾子を指定しないで queue-limit コマンドを使用することにより、最大キューを設定する 3 番目のしきい値を設定できます。
■
queue-limit コマンドの WTD 修飾子は、関連するクラスマップの少なくとも 1 つの match 修飾子と同じである必要があります。
次に、 out-class1 、 out-class2 、 out-class3 、および class-default がそれぞれ最低 40、20、10、および 10% のトラフィック帯域幅を取得するように、帯域幅およびキュー制限を設定する例を示します。対応するキューサイズは、48、32、16、および 272(256 バイト)パケットに設定されます。
スイッチポート数に応じた数の出力ポリシー マップを設定および付加できますが、一意のキュー制限は 3 つしか設定できません。他の出力ポリシー マップが同じキュー制限およびクラス設定を使用する場合、帯域幅パーセンテージが異なる場合でも、キュー制限設定は同じであると見なされます。
QoS の設定
■
使用するアプリケーションのタイプおよびネットワークのトラフィックパターン。
■
トラフィックの特性およびネットワークのニーズ。バースト性の高いトラフィックかどうかの判別。音声およびビデオスリーム用の帯域幅確保の必要性
次に、着信トラフィックの分類、ポリシングおよびマーキング方法と発信トラフィックのスケジューリングおよびキューイング方法について説明します。ネットワーク設定に応じて、次の作業を 1 つまたは複数実行する必要があります。
■
CPU 生成トラフィックの QoS マーキングおよびキューイングの設定
QoS のデフォルト設定
ポリシー マップ、クラス マップ、テーブル マップ、またはポリサーは設定されていません。出力ポートでは、すべてのトラフィックは動作可能なポートの全帯域幅を割り当てられる単一のデフォルト キューを介して発信されます。デフォルト キューのデフォルト サイズは、160(256 バイト)パケットです。
パケットは変更されません(パケット内の CoS、DSCP、および IP precedence 値は変更されません)。トラフィックはパススルー モードでスイッチングされ、書き換えられずにポリシングを伴わないベストエフォート型として分類されます。
QoS 設定時の注意事項
■
QoS が設定されたポートでは、そのポートを通じて受信されるすべてのトラフィックは、ポートに付加された入力ポリシー マップに従って分類、ポリシング、およびマーキングが行われます。QoS が設定されたトランク ポートでは、そのポートを通じて受信されるすべての VLAN 内トラフィックは、ポートに付加されたポリシー マップに従って分類、ポリシング、およびマーキングが行われます。ポート単位、VLAN 単位ポリシー マップが付加された場合、トランク ポート上のトラフィックは、親レベルのポリシーで指定された VLAN に対して、各 VLAN に関連付けられた子ポリシー マップに従って分類、ポリシング、およびマーキングされます。
■
スイッチに EtherChannel ポートが設定されている場合は、EtherChannel を構成する各物理ポートで QoS の分類、ポリシング、マッピング、およびキューイングを設定する必要があります。また、QoS の設定を EtherChannel のすべてのポートで照合するかどうかを決定する必要があります。
■
スイッチで受信された制御トラフィック(スパニングツリー ブリッジ プロトコル データ ユニット(BPDU)やルーティング アップデート パケットなど)には、入力 QoS 処理がすべて行われます。
■
キュー設定を変更すると、データが失われることがあります。したがって、トラフィックが最小のときに設定を変更するようにしてください。
■
新しいポリシーをインターフェイスに付加しようとし、これによりポリサーインスタンスの数が 1024 - (スイッチ上のインターフェイス数 + 1)255 より多い数になる場合、エラーメッセージを受信し、設定は失敗します。
■
新しいポリシーをインターフェイスに付加しようとし、これによりポリサープロファイルの数を 256 より多くする場合、エラーメッセージを受信し、設定は失敗します。プロファイルは、認定速度、最大速度、認定バースト、および最大バーストの組み合わせです。1 つのプロファイルを複数のインスタンスに付加できますが、これらの特性のいずれかが異なっている場合、ポリサーに新しいプロファイルがあると見なされます。
■
スイッチのすべてのポートに、256 のポート単位、VLAN 単位ポリシーマップ内の固有の VLAN 分類基準を指定できます。この制限を超える原因となるような任意のポリシーへ付加や変更を行うと失敗となり、VLAN label resources exceeded というエラーメッセージが返されます。
■
QoS ACE 分類リソース制限に達するまで、ポート単位およびポート単位、VLAN 単位のポリシーマップをスイッチのすべてのポートに付加できます。この制限を超える原因となるような任意のポリシーへ付加や変更を行うと失敗となり、TCAM resources exceeded というエラーメッセージが返されます。
■
CPU 保護がイネーブルになっている場合、ポートごとに設定できるポリサーは 45 だけです。CPU 保護をディセーブルにすると、ポートごとに最大 64 のポリサーを設定できます。show policer cpu uni-eni {drop | rate} 特権 EXEC コマンドを入力し、CPU 保護がイネーブルになっているかどうか確認できます。
■
CPU 保護をディセーブルにする際はこれらの制限事項について注意してください。
–
CPU 保護をディセーブルにすると、ユーザ定義クラスに対してポートごとに最大 63 のポリサー(すべての 4 番目のポート上に 62)を、class-default に対して 1 つのポリサーを設定できます。この制限を超える原因となるような任意のポリシーへ付加や変更を行うと失敗となり、 policer resources exceeded というエラーメッセージが返されます。
–
CPU 保護をディセーブルにすると、スイッチで最大 256 個のポリサーを設定できます。この制限を超える原因となるような任意のポリシーへ付加や変更を行うと失敗となり、policer resources exceeded というエラーメッセージが返されます。
–
CPU 保護をディセーブルにして、45 を超えるポリサーを持つポリシー マップを付加してから、CPU 保護を再度イネーブルにして、リロードした場合、CPU 保護には、ポートごとに 19 のポリサーが再度必要となります。リロード中、ポリサー 46 以降は、 policer resources exceeded のエラー条件を満たすことになるので、これらのクラスに付加されるポリサーはありません。
■
内部 QoS ラベル数が 256 を超えると、エラー メッセージを受信します。
■
超過アクションのテーブルマップを設定し、違反アクションのアクションが明示的に設定されていない限り、集約ポリシングの violate-action に対するテーブルマップはサポートされません。個々のポリサーおよび集約ポリサー両方について、 violate-action を設定しない場合、デフォルトで違反クラスが exceed-action と同じアクションに割り当てられます。
■
トランクまたは 802.1Q トンネル インターフェイスで 2 重タグ パケットを受信すると、これらのパケットは他のパラメータとともに DSCP および IP precedence で分類されますが、発信パケットで DSCP または IP precedence は設定できません。発信パケットで CoS を設定できます。
ACL を使用したトラフィックの分類
IP 標準または IP 拡張 ACL を使用すると、IP トラフィックを分類できます。レイヤ 2 MAC ACL を使用すると、IP および非 IP トラフィックを分類できます。
QoS ACL を設定する場合は、次の注意事項に従ってください。
■
IP フラグメントを設定済みの IP 拡張 ACL に照合して、QoS を実行できません。IP フラグメントはベストエフォート型として送信されます。IP フラグメントは IP ヘッダーのフィールドで示されます。
■
スイッチは、入力ポリシー マップのクラスごとにアクセス グループを 1 つだけサポートします。
IP 標準 ACL の作成
IP トラフィック用の IP 標準 ACL を作成するには、特権 EXEC モードで次の手順を実行します。
アクセス リストを削除するには、 no access-list access-list-number グローバル コンフィギュレーション コマンドを使用します。
次に、指定された 3 つのネットワーク上のホストだけにアクセスを許可する例を示します。ネットワーク アドレスのホスト部分にワイルドカード ビットが適用されます。
IP 拡張 ACL の作成
IP トラフィック用の IP 拡張 ACL を作成するには、特権 EXEC モードで次の手順を実行します。
アクセス リストを削除するには、 no access-list access-list-number グローバル コンフィギュレーション コマンドを使用します。
次に、任意の送信元から、DSCP 値が 32 に設定されている任意の宛先への IP トラフィックを許可する ACL を作成する例を示します。
次に、10.1.1.1 の送信元ホストから 10.1.1.2 の宛先ホストへの IP トラフィック(precedence 値は 5)を許可する ACL を作成する例を示します。
レイヤ 2 MAC ACL の作成
非 IP トラフィック用にレイヤ 2 MAC ACL を作成するには、特権 EXEC モードで次の手順を実行します。
アクセス リストを削除するには、 no mac access-list extended access-list-name グローバル コンフィギュレーション コマンドを入力します。
次に、2 つの許可( permit )ステートメントを指定したレイヤ 2 の MAC ACL を作成する例を示します。最初のステートメントでは、MAC アドレスが 0001.0000.0001 であるホストから、MAC アドレスが 0002.0000.0001 であるホストへのトラフィックが許可されます。2 番めのステートメントでは、MAC アドレスが 0001.0000.0002 であるホストから、MAC アドレスが 0002.0000.0002 であるホストへの、Ethertype が XNS-IDP のトラフィックのみが許可されます。
クラス マップを使用したトラフィック クラスの定義
個々のトラフィック フロー(またはクラス)を他のすべてのトラフィックから分離して名前を付けるには、 class-map グローバル コンフィギュレーション コマンドを使用します。クラス マップが、特定のトラフィック フローとの照合を行い、さらにそれを分類するために使用する基準を定義します。match 文には、ACL、CoS 値、DSCP 値、IP precedence 値、 QoS グループ値、または VLAN ID などの基準が含まれます。一致基準は、クラスマップ コンフィギュレーション モードで入力される 1 つまたは複数の match ステートメントで定義されます。
クラス マップの設定を行うときは、次の注意事項に従ってください。
■
match-all クラスマップには、1 つの分類基準(match 文)しか指定できませんが、 match-any クラスマップには複数の match 文を指定できます。
■
match cos コマンドおよび match vlan コマンドは、レイヤ 2 802.1Q トランクポート上でだけサポートされます。
■
match vlan コマンドを含むクラスマップは、トランクポート上のポート単位、VLAN 単位 QoS に関する入力階層型ポリシーマップの親ポリシーで使用します。子ポリシー マップに関連付けられた 1 つまたは複数のクラスがあるポリシーは、親ポリシー マップと見なされます。親ポリシー マップ内の各クラスは、親クラスと呼ばれます。親クラスでは、 match vlan コマンドだけを設定できます。子ポリシーマップ内のクラスでは、 match vlan コマンドを設定できません。
■
入力ポリシーマップでは、同一ポリシーマップまたはクラスマップ内に IP 分類( match ip dscp 、 match ip precedence 、IP ACL の match access-group )と非 IP 分類( match cos 、または MAC ACL の match access-group )を設定できません。ポート単位、VLAN 単位階層型ポリシー マップでは、これを子ポリシー マップに適用します。
■
入力ポリシーマップには、 match qos-group を設定できません。
■
出力ポリシー マップでは、異なるクラス マップで同じ分類基準(つまり、同じ match 修飾子および match 値)を使用できません。
クラス マップを作成し、トラフィックを分類するための一致基準を定義するには、特権 EXEC モードで次の作業を実行します。
|
|
|
|
|---|---|---|
クラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。デフォルトでは、クラス マップは定義されていません。 ■ ■ ■ |
||
match { access-group acl-index-or-name | cos cos-list | ip dscp dscp-list | ip precedence ip-precedence-list | qos-group value | vlan vlan-list } |
トラフィックを分類するための一致条件を定義します。デフォルトでは、一致条件は定義されていません。 各クラス マップでサポートされる一致タイプおよび ACL は、それぞれ 1 つだけです。 ■ ■ ■ ■ ■ ■ |
|
既存のクラスマップまたは一致基準を削除するには、該当するコマンドの no 形式を使用します。
次に、アクセスリスト 103 を作成し、 class1 という名前のクラスマップを設定する例を示します。 class1 にはアクセス リスト 103 という一致条件が 1 つ設定されています。このクラス マップによって、任意のホストから任意の宛先へのトラフィック(DSCP 値は 10)が許可されます。
次に、DSCP 値が 10、11、および 12 である着信トラフィックと照合する、 class2 という名前のクラス マップを作成する例を示します。
次に、IP precedence 値が 5、6、および 7 である着信トラフィックと照合する、 class3 という名前のクラス マップを作成する例を示します。
次に、30 ~ 40 の範囲の VLAN ID で着信トラフィックと照合する、 parent-class という名前の親クラスマップを作成する例を示します。
テーブル マップの設定
テーブル マップを設定すると、単一のコマンドで多数のトラフィック フローを管理できます。テーブル マップを使用して、特定の DSCP 値、IP precedence 値、および CoS 値を相互に関連付けて、DSCP 値、IP precedence 値、または CoS 値をマークダウンするか、それらにデフォルト値を割り当てます。 set コマンドで指定したテーブルマップを、ポリシーのマークダウンマッピングとして使用できます。
■
precedence/CoS、DSCP、または precedence
テーブル マップの設定を行うときは、次の注意事項に従ってください。
■
スイッチでは、最大 256 の一意のテーブル マップをサポートしています。
■
テーブル マップは、出力ポリシー マップで使用できません。
■
超過アクションのテーブルマップを設定し、違反アクションのアクションが明示的に設定されていない限り、集約ポリシングの violate-action に対するテーブルマップはサポートされません。
テーブルマップを作成するには、特権 EXEC モードで次の手順を実行します。
テーブルマップを削除するには、 no table-map table-map-name グローバル コンフィギュレーション コマンドを使用します。
次に、DSCP/CoS テーブル マップを作成する例を示します。完全なテーブルには通常、大きな DSCP 値用の追加の map 文が含まれます。このテーブルのデフォルト 4 は、マッピングされていない DSCP が CoS 値 4 に割り当てられるということを意味します。
トラフィック ポリシーのインターフェイスへの適用
service-policy インターフェイス コンフィギュレーション コマンドを使用して、インターフェイスにトラフィックポリシーを付加し、ポリシーが適用される方向(着信トラフィックの入力ポリシーマップ、または発信トラフィックの出力ポリシーマップ)を指定します。入力ポリシー マップおよび出力ポリシー マップは、別々の QoS 機能をサポートします。入力ポリシーマップおよび出力ポリシーマップの制限事項に関しては、入力ポリシー マップの設定および出力ポリシー マップの設定を参照してください。
サービス ポリシーは、物理ポートにだけ付加できます。ポートごとに、入力ポリシー マップおよび出力ポリシー マップをそれぞれ 1 つだけ付加できます。
ポートに ポリシー マップを付加するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
ポリシー マップを適用するポートを指定し、インターフェイス コンフィギュレーション モードを開始します。指定できるインターフェイスは、物理ポートです。 |
||
ポリシーマップとポートの関連付けを解除するには、 no service-policy { input | output } policy-map-name インターフェイス コンフィギュレーション コマンドを使用します。
入力ポリシー マップの設定
ポリシー マップでは、動作の実行対象トラフィック クラスおよびそのアクションを指定します。トラフィック クラスの一致基準に一致しないすべてのトラフィックは、デフォルト クラスに属します。スイッチに着信するトラフィックは、入力ポリシー マップにより規制されます。入力ポリシー マップでは、CoS、DSCP、IP precedence、ACL、または VLAN ID を照合して、個別のポリシング、集約ポリシング、または CoS 値、DSCP 値、IP precedence 値、QoS グループ値へのマーキングを設定できます。
入力ポリシー マップの設定を行うときは、次の注意事項に従ってください。
■
1 つのポートに付加できる入力ポリシー マップは 1 つに限られます。
■
スイッチ上に設定されるポリシー マップの最大数は 256 です。
■
スイッチ上に設定できるポリサープロファイルの合計数は 256 です。スイッチでサポートされているポリサーインスタンスの合計数は 1024 - 1 で、スイッチ上のインターフェイス数より多い数です。24 ポート スイッチでは、使用できるポリサー インスタンスの数は 999 です。ポリサー プロファイルは複数のインスタンスで使用できます。
■
各入力ポリシーマップの最大クラス数は、64 + class-default です。
■
スイッチに付加できる入力ポリシー マップ数は、ハードウェア リソースのアベイラビリティにより制限されます。いずれかのハードウェア リソースの制限を超過する原因となる入力ポリシー マップを付加しようとすると、設定エラーになります。
■
service-policy input インターフェイス コンフィギュレーション コマンドを使用して、インターフェイスに単一レベルのポリシーマップを付加すると、インターフェイスからポリシーを消去せずに、ポリシーを変更できます。分類基準、クラス、またはアクションの追加または削除、もしくは設定されたアクション(ポリサー、レート、マッピング、マーキングなど)のパラメータの変更を行えます。また、ポート単位、VLAN 単位の階層型ポリシー マップのように、階層型ポリシー マップの子ポリシーの基準の変更にも適用されます。
階層型ポリシー マップの親ポリシーの場合、ポリシー マップがインターフェイスに付加されていると、親レベルのクラスを追加または削除できません。インターフェイスからポリシーを消去して、ポリシーを変更してから、このポリシーを再度インターフェイスに付加する必要があります。
■
最大 2 レベルの階層型ポリシー マップを、親レベルの VLAN ベース分類だけ含み、子レベルの VLAN ベース分類を含まない入力ポリシー マップとして設定できます。
■
レイヤ 2 分類だけを含む入力ポリシー マップが、ルーテッド SVI を含むルーテッド ポートまたはスイッチ ポートに付加されている場合、サービス ポリシーはルーティング適格トラフィック上ではなく、スイッチング適格トラフィック上でだけ作用します。
■
802.1Q トンネル ポート上でトラフィックを分類するには、MAC ACL に基づくレイヤ 2 分類を含む入力ポリシー マップだけが使用できます。CoS または VLAN ID に基づくレイヤ 3 分類またはレイヤ 2 分類を含む入力ポリシー マップは、トンネル ポート上でサポートされません。
■
入力ポリシー マップは、スケジューリングまたはキューイングではなく、ポリシングおよびマーキングをサポートします。入力ポリシーマップでは、 bandwidth 、 priority 、 queue-limit 、または shape average を設定できません。
個別のポリシングを含む入力ポリシー マップの設定
トラフィックの認定速度制限、認定バーストサイズ制限、およびトラフィッククラスの動作を定義するには、 police ポリシーマップ クラス コンフィギュレーション コマンドを使用して、個別のポリサーを設定します。
個別のポリサーを設定する場合は、次の注意事項に従ってください。
■
ポリシングは、入力ポリシー マップ上でだけサポートされます。
■
スイッチ上では、最大 229 のポリサーがサポートされます(228 のユーザ設定可能なポリサーと、1 つの内部使用に予約されたポリサー)。
■
CPU 保護がイネーブルになっている場合(デフォルト)、ポート当たり 45 の入力ポリサーを設定できます。 no policer cpu uni all グローバル コンフィギュレーション コマンドを入力し、スイッチをリロードして CPU 保護をディセーブルにすると、ユーザ定義クラスにはポート当たり最大 63 のポリサー(すべての 4 番目のポート上で 62)および class-default に 1 つのポリサーを設定できます。show policer cpu uni-eni {drop | rate} 特権 EXEC コマンドを入力し、CPU 保護がイネーブルになっているかどうか確認できます。
■
入力ポリシーマップのポリシング超過アクションにテーブルマップを使用する場合、 map from アクションタイプのプロトコルタイプは、対応する分類のプロトコルタイプと同じである必要があります。たとえば、対応するクラスマップが IP 分類を表す場合、テーブルマップを参照する map from アクションタイプは、 dscp または precedence である必要があります。対応するクラスマップが非 IP 分類を表す場合、テーブルマップを参照する map from アクションタイプは、 cos である必要があります。
■
2-rate、3-color ポリシングは、入力ポリシー マップでだけサポートされており、1-rate、2-color ポリシングは入力および出力ポリシー マップ両方でサポートされています。
■
スイッチ上のポリサー インスタンスの数は 1024 - (インターフェイス数 + 1)です。スイッチは、最大 256 のポリサープロファイルをサポートします。
■
violate-action を設定しない場合、デフォルトで違反クラスが exceed-action と同じアクションに割り当てられます。
個別のポリシングを含む入力ポリシーマップを作成するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。デフォルトでは、クラス マップは定義されていません。 |
||
クラスマップ名またはすべての未分類のパケットを照合する class-default を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。 クラスマップ名を入力する場合は、 class-map グローバル コンフィギュレーション コマンドを使用してクラスマップを作成済みである必要があります。 |
||
police { rate-bps | cir cir-bps } [ burst-bytes | bc burst-bytes ] |
■ ■ ■ ■ |
|
conform-action cos { cos_value | cos [ table table-map-name ] | dscp [ table table-map-name ] | precedence [ table table-map-name ]} |
(任意)CIR に適合するパケットで実行するアクションを入力します。 ■ ■ ■ ■ ■ 注: police コマンドのあとに、単一の conform-action をコマンドストリングの一部として入力できます。また、 police コマンドのあとに Enter キーを押して、ポリシーマップ クラス ポリシング コンフィギュレーション モードを開始でき、ここで複数のアクションを入力できるようになります。ポリシーマップ クラス ポリシング コンフィギュレーション モードでは、実行するアクションを入力する必要があります。 |
|
exceed -action cos { cos_value | cos [ table table-map-name ] | dscp [ table table-map-name ] | precedence [ table table-map-name ]} |
(任意)CIR に適合しないパケットに実行するアクションを入力します。 ■ ■ ■ ■ ■ 注: police コマンドのあとに、単一の exceed-action をコマンドストリングの一部として入力できます。または、 police コマンドのあとに Enter キーを押して、ポリシーマップ クラス ポリシング コンフィギュレーション モードを開始でき、ここで複数のアクションを入力できるようになります。ポリシーマップ クラス ポリシング コンフィギュレーション モードでは、実行するアクションを入力する必要があります。 注: コマンドのキーワードとして、 exceed-action drop を明示的に設定する場合は、ポリシーマップ クラス ポリシング コンフィギュレーション モードを開始し、 no exceed-action drop コマンドを入力して以前に設定された超過アクションを削除する必要があります。 |
|
個別の 2-rate、3-color ポリシングを含む入力ポリシーマップを作成するには、特権 EXEC モードで次の手順を実行します。
作成した入力ポリシー マップを、入力方向のインターフェイスに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存のポリシーマップ、クラスマップ、またはポリサーを削除するには、該当するコマンドの no 形式を使用します。
次に、ポリシーマップ コンフィギュレーション モードを使用して 2-rate、3-color ポリシングを設定する例を示します。
次に、ポリシーマップ クラス ポリシング コンフィギュレーション モードで同じ設定を作成する例を示します。
次に、CoS 値が 4 のトラフィック分類を作成して、ポリシー マップを作成し、入力ポートに付加する例を示します。平均トラフィック レートは、10000000 b/s に制限され、バースト サイズは 10000 バイトです。
次に、 set dscp の適合アクションおよびデフォルトの超過アクションを含むポリシーマップを作成する例を示します。
次に、ポリシーマップ クラス ポリシング コンフィギュレーション モードを使用して、複数の適合アクションおよび 1 つの超過アクションを設定する例を示します。このポリシー マップでは、CIR を 23000 bps に、適合バースト サイズを 10000 バイトに設定します。このポリシー マップには、複数の適合アクション(DSCP 用およびレイヤ 2 CoS 用)および超過アクションが含まれます。
次に、ポリシーマップ クラス ポリシング コンフィギュレーション モードで、テーブル マップを使用して超過アクションのマークダウンを設定する例を示します。このポリシー マップでは、CIR を 23000 bps に、適合バースト サイズを 10000 バイトに設定します。このポリシーマップには、デフォルトの適合アクション( transmit )およびテーブルマップに基づいてレイヤ 2 CoS 値をマークダウンし、af41 の IP DSCP をマーキングする超過アクションが含まれます。
集約ポリシングを含む入力ポリシー マップの設定
集約ポリサーを設定するには、 policer aggregate グローバル コンフィギュレーション コマンドを使用します。集約ポリサーは、同一ポリシー マップ内の複数のトラフィック クラスで共有されます。 集約ポリサーを定義し、ポリシー マップを作成し、ポリシー マップにクラス マップを関連付け、集約ポリサーにポリシー マップを関連付け、ポートにサービス ポリシーを適用します。
集約ポリサーを設定する場合は、次の注意事項に従ってください。
■
集約ポリシングは、入力ポリシー マップ上でだけサポートされます。
■
スイッチ上では、ポートに関連付けられた最大 229 のポリサーがサポートされます(228 のユーザ設定可能なポリサーと、1 つの内部使用に予約されたポリサー)。ポート上では、最大 45 のポリサーを設定できます。
■
CPU 保護がイネーブルになっている場合(デフォルト)、ポート当たり 45 の入力ポリサーを設定できます。 no policer cpu uni all グローバル コンフィギュレーション コマンドを入力し、スイッチをリロードして CPU 保護をディセーブルにすると、ユーザ定義クラスにはポート当たり最大 63 のポリサー(すべての 4 番目のポート上で 62)および class-default に 1 つのポリサーを設定できます。show policer cpu uni-eni {drop | rate} 特権 EXEC コマンドを入力し、CPU 保護がイネーブルになっているかどうか確認できます。
■
スイッチ上のポリサー インスタンスの数は 1024 - (スイッチ上の合計インターフェイス数 + 1)です。スイッチは、最大 256 のポリサープロファイルをサポートします。
■
violate-action を設定しない場合、デフォルトで違反クラスが exceed-action と同じアクションに割り当てられます。
■
1 つのポリシー マップだけが、任意の特定の集約ポリサーを使用できます。集約ポリシングは、複数のインターフェイス上のストリームの集約には使用できません。集約ポリシングは、インターフェイスに付加されるポリシー マップの複数のクラスにまたがるストリームの集約、およびポート単位、VLAN 単位ポリシー マップのポート上の VLAN にまたがるトラフィック ストリームの集約にだけ使用できます。
■
入力ポリシー マップのポリシング超過アクションにテーブル マップを使用する場合、map from アクションタイプのプロトコル タイプは、対応する分類のプロトコル タイプと同じである必要があります。たとえば、対応するクラスマップが IP 分類を表す場合、テーブルマップを参照する map from のアクションタイプは、 dscp または precedence のいずれかである必要があります。対応するクラスマップが非 IP 分類を表す場合、テーブルマップを参照する map from アクションタイプは、 cos である必要があります。
■
exceed-action のテーブルマップを設定し、違反アクションのアクションが明示的に設定されていない限り、集約ポリシングの violate-action に対するテーブルマップはサポートされません。
複数の適合および超過アクション 適合、超過、違反アクション を集約ポリサーに policer aggregate グローバル コンフィギュレーション コマンドのパラメータとして同時に設定できますが、次の順序でアクションを入力する必要があります。
■
drop、または transmit あるいは set アクションは、 conform-action のあとに次の順序で入力する必要があります。
set-dscp-transmit または set-prec-transmit
■
drop 、 transmit または set アクションは、 exceed-action のあとに次の順序で入力する必要があります。
set-dscp-transmit または set-prec-transmit
■
drop、transmit または set アクションは、violate-action のあとに次の順序で入力する必要があります。
set-dscp-transmit または set-prec-transmit
注: ポリシーマップ クラス ポリシング コンフィギュレーション モードでは、集約ポリサーの適合アクション、超過アクション、および違反アクションは設定しません。すべてのアクションはストリングで入力する必要があります。その結果、複数の適合、超過、および違反の各アクションを入力すると、コマンドが著しく長くなり、切り捨てられたり読みにくくなる場合があります。
集約ポリサーを作成するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
policer aggregate aggregate-policer-name { rate-bps | cir cir-bps } [ bc burst- value ] [ conform-action [ set-cos-transmit { cos_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-dscp-transmit { dscp_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-prec-transmit { precedence_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-qos-transmit qos-group_value | transmit ] [ exceed action [ drop | set-cos-transmit { cos_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-dscp-transmit { dscp_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-prec-transmit { precedence_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-qos-transmit qos-group_value | transmit ]] |
同じポリシー マップ内の複数のトラフィック クラスに適用できるポリサー パラメータを定義します。 ■ ■ ■ ■ ■ ■ 使用可能なキーワードの定義については、このリリースのコマンドリファレンス、または個別のポリシングを含む入力ポリシー マップの設定を参照してください。 |
|
ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。 |
||
クラスマップ名またはすべての未分類のパケットを照合する class-default を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。 クラスマップ名を入力する場合は、 class-map グローバル コンフィギュレーション コマンドを使用してクラスマップを作成済みである必要があります。 |
||
同じポリシー マップ内の複数のクラスに集約ポリサーを適用します。 aggregate-policer-name には、ステップ 2 で指定した名前を入力します。 |
||
2-rate、3-color 集約ポリサーを作成するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
policer aggregate aggregate-policer-name { rate-bps | cir cir-bps } [ burst-bytes ] [ bc [ conform-burst ] [ pir pir-bps [ be peak-burst ]] [ exceed-action [ drop | set-cos-transmit { cos_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-dscp-transmit { dscp_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-prec-transmit { precedence_value | [ cos | dscp | precedence ] [ table table-map name ]} | set-qos-transmit qos-group_value | transmit ]] [ violate- action [ drop | set-cos-transmit { cos_value | [ cos | dscp | precedence ]} | set-dscp-transmit { dscp_value | [ cos | dscp | precedence ]} | set-prec-transmit { precedence_value | [ cos | dscp | precedence ]} | set-qos-transmit qos-group_value | transmit ]] |
同じポリシー マップ内の複数のトラフィック クラスに適用できるポリサー パラメータを定義します。 ■ ■ ■ ■ ■ ■ ■ ■ 注: 適合アクションが drop に設定されている場合、超過アクションおよび違反アクションは自動的に drop に設定されます。超過アクションが drop に設定されている場合、違反アクションは自動的に drop に設定されます。 ■ ■ アクションキーワードの定義については、個別のポリシングを含む入力ポリシー マップの設定を参照してください。 注: exceed-action のテーブルマップを設定し、違反アクションのアクションが明示的に設定されていない限り、集約ポリシングの violate-action に対するテーブルマップは設定できません。 |
|
ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。 |
||
クラスマップ名またはすべての未分類のパケットを照合する class-default を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。 クラスマップ名を入力する場合は、 class-map グローバル コンフィギュレーション コマンドを使用してクラスマップを作成済みである必要があります。 |
||
同じポリシー マップ内の複数のクラスに集約ポリサーを適用します。 aggregate-policer-name には、ステップ 2 で指定した名前を入力します。 |
||
集約ポリサーを作成してから、それを入力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
指定された集約ポリサーをポリシー マップから削除するには、 no police aggregate aggregate-policer-name ポリシー マップ コンフィギュレーション モードを使用します。集約ポリサーおよびそのパラメータを削除するには、 no policer aggregate aggregate-policer-name グローバル コンフィギュレーション コマンドを使用します。
次に、集約ポリサーを作成して、ポリシー マップ内の複数のクラスに結合する例を示します。ポリシー マップは入力ポートに結合されます。
次に、2-rate、3-color 集約ポリサーを作成し、ポリシー マップ内の複数のクラスに付加する例を示します。ポリシー マップは入力ポートに結合されます。
マーキングを含む入力ポリシー マップの設定
特定のクラスに属するトラフィックの属性を設定または変更するには、 set ポリシーマップ クラス コンフィギュレーション コマンドを使用します。ポリシー マップでマーキングの設定を行うときは、次の注意事項に従ってください。
■
スイッチ上には、最大 100 の QoS グループを設定できます。
■
入力ポリシー マップのマーキングにテーブル マップを使用する場合、map from アクション タイプのプロトコル タイプは、対応する分類のプロトコル タイプと同じである必要があります。たとえば、対応するクラスマップが IP 分類を表す場合、テーブルマップを参照する map from のアクションタイプは、 dscp または precedence のいずれかである必要があります。対応するクラスマップが非 IP 分類を表す場合、テーブルマップを参照する map from アクションタイプは、 cos である必要があります。
トラフィックをマーキングする入力ポリシー マップを作成するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。 |
||
クラスマップ名またはすべての未分類のパケットを照合する class-default を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。 クラスマップ名を入力する場合は、 class-map グローバル コンフィギュレーション コマンドを使用してクラスマップを作成済みである必要があります。 |
||
set qos-group value |
パケットに新しい値を設定するか、テーブル マップを指定するか、または QoS グループを指定することにより、トラフィックをマーキングします。 ■ ■ ■ ■ ■ |
|
ポリシーマップまたはテーブルマップを削除する場合、または割り当てられた CoS 値、DSCP 値、precedence 値、または QoS グループ値を削除する場合は、該当するコマンドの no 形式を使用します。
次に、ポリシー マップを使用してパケットをマーキングする例を示します。最初のマーキング( set コマンド)は、クラス AF31 ~ AF33 によって一致しなかったすべてのトラフィックを照合する QoS デフォルトクラスマップに適用され、すべてのトラフィックの IP DSCP 値を 1 に設定します。2 番目のマーキングは、クラス AF31 ~ AF33 のトラフィックの IP DSCP を 3 に設定します。
階層型入力ポリシー マップを含むポート単位、VLAN 単位 QoS の設定
ポート単位、VLAN 単位 QoS により、所定のインターフェイスおよび VLAN 上で受信されるフレームへの QoS の適用に関して、VLAN ID に基づく分類が可能になります。これは、親ポリシーおよび子ポリシーを含む階層型ポリシー マップの使用により実現されます。
ポート単位、VLAN 単位 QoS を設定する場合は、次の注意事項および制限事項に留意してください。
■
この機能は、2 レベルの階層型入力ポリシー マップを使用する場合に限り、サポートされます。このポリシー マップは、親レベルで VLAN ベースの分類を定義し、子レベルで 1 つまたは複数の該当する VLAN に適用される QoS ポリシーを定義します。
■
親レベルで複数のサービス クラスを設定することにより、各種 VLAN の組み合わせを照合できます。また、子ポリシー マップを使用することにより、親サービス クラスごとに個別の QoS ポリシーを適用できます。
■
子ポリシー マップに関連付けられた 1 つまたは複数のクラスがあるポリシーは、親ポリシー マップと見なされます。親ポリシー マップ内の各クラスは、親クラスと呼ばれます。親クラスでは、 match vlan クラスマップ コンフィギュレーション コマンドだけを設定できます。子ポリシーマップ内のクラスでは、 match vlan コマンドを設定できません。
■
ポート単位 VLAN 単位の親レベルのクラス マップでは、子ポリシー アソシエーションだけをサポートします。いずれのアクションも設定できません。親レベルのクラスマップでは、クラスの class-default のアクションまたは子ポリシーアソシエーションを設定できません。
■
子ポリシー マップ内では、レイヤ 2 とレイヤ 3 が混在するクラス マップを設定できません。このような子ポリシー マップを親ポリシーに関連付けようとすると、設定は拒否されます。ただし、レイヤ 2 とレイヤ 3 の子ポリシーを異なる親レベルのクラス マップに関連付けることはできます。
■
ポート単位、VLAN 単位 QoS は、802.1Q トランク ポート上でだけサポートされます。
■
VLAN または一連の VLAN に付加されている子ポリシーマップに、レイヤ 3 分類( match ip dscp 、 match ip precedence 、 match IP ACL )だけが含まれる場合は、これらの VLAN が、必ずポート単位 VLAN 単位ポリシーが付加されているポート上でだけ伝送されることに注意する必要があります。このルールに従わない場合は、これらの VLAN 上のスイッチに着信するトラフィックの QoS 動作が不適切になる場合があります。
■
また、ポート単位 VLAN 単位が適用されるトランクポート上で、 switchport trunk allowed vlan インターフェイス コンフィギュレーション コマンドを使用して、VLAN メンバーシップを制限することも推奨します。レイヤ 3 分類が設定されたポート単位、VLAN 単位のポリシーが含まれるトランク ポート間で VLAN メンバーシップが重複した場合も、予期せぬ QoS 動作が発生する可能性があります。
子ポリシーのクラス マップの作成
1 つまたは複数の子ポリシーのクラス マップを作成するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
クラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。デフォルトでは、クラス マップは定義されていません。 ■ ■ ■ |
||
match { access-group acl-index-or-name | cos cos-list | ip dscp dscp-list | ip precedence ip-precedence-list | qos-group value | vlan vlan-list } |
トラフィックを分類するための一致条件を定義します。デフォルトでは、一致条件は定義されていません。 各クラス マップでサポートされる一致タイプおよび ACL は、それぞれ 1 つだけです。 ■ ■ ■ ■ ■ ■ |
|
親ポリシーのクラス マップの作成
1 つまたは複数の親ポリシーのクラス マップを作成するには、特権 EXEC モードで次の手順を実行します。
子ポリシー マップの作成
1 つまたは複数の子ポリシー マップを作成するには、特権 EXEC モードで次の手順を実行します。
親ポリシー マップの作成
親ポリシー マップを作成し、それをインターフェイスに付加するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
show policy-map [ parent-policy-map-name [ class class-map-name ]] |
||
インターフェイスへの親ポリシー マップの付加
作成した親ポリシー マップをインターフェイスに付加するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
(推奨)ポート単位、VLAN 単位ポリシーにレイヤ 3 分類が含まれる場合は、トランク ポートの VLAN メンバーシップを制限して、VLAN メンバーシップが重複しないようにします。 |
||
次に、複数の親クラスを使用して、カスタマー VLAN 上の音声およびビデオの一致基準を分類する例を示します。
出力ポリシー マップの設定
出力ポリシー マップは、スイッチから発信されるパケットの輻輳回避、キューイング、およびスケジューリングを管理するのに使用します。スイッチには、4 つの出力キューがあり、そのキュー トラフィックを制御するには、出力ポリシー マップを使用します。これらのキューでは、シェーピング、キュー制限、および帯域幅を設定します。高いプライオリティ(クラスベース プライオリティ キューイング)を使用できます。クラスベース プライオリティ キューイングにポリシング付きプライオリティが設定されている場合以外は、ポリシングは出力ポリシー マップでサポートされません。出力ポリシー マップの分類基準には、CoS 値、DSCP 値、IP Precedence 値、または QoS グループ値の照合が含まれます。
物理ポートに出力ポリシー マップを設定する際は、次の注意事項に従ってください。
■
スイッチ上のポート数に応じた数の出力ポリシー マップを設定および付加できます。複数の出力ポリシー マップで同じキュー制限設定を使用できます。ただし、これらのポリシー マップには、固有のキュー制限を 3 つしか設定できません。
■
出力ポリシーマップには、最大 4 つのクラス(クラス class-default を含む)を含めることができます。
■
すべての出力ポリシー マップでは、同じ数(1、2、または 3 のいずれか)のクラス マップが定義されている必要があります。
■
出力ポリシー マップごとに各クラスで異なるアクションを設定できますが、すべての出力ポリシー マップで同じクラス設定を使用する必要があります。
■
子ポリシーマップでは、 class-default が、 priority および police 以外のすべての出力ポリシーマップアクションをサポートします。 class-default のキュー制限の設定で、スケジューリング動作を設定する必要がないこと以外は、 class-default の動作制限はその他のクラスと同じです。
■
出力側の基準に基づいて分類する場合、その基準を入力側で確立する必要があります。マーキングはなくポリシングだけが設定されている場合に限り、分類を使用して、または任意のマーキング( conform または exceed マーキングを含むポリシングか、無条件の set マーキング)が設定されている場合は、明示的なマーキングを使用して、入力側で基準を確立できます。
■
出力ポリシーマップのクラス class-default にはクラスベース プライオリティ キューイングを設定できません。
■
出力ポリシー マップでは、プライオリティ キューイングが設定されていない限り、クラスのデフォルトには、ポート上の未設定の帯域幅に等しい最小帯域幅保証を受信します。
■
設定済みアクションのパラメータ(レート、パーセンテージなど)だけを変更したり、またはインターフェイスにポリシーマップが付加されている場合にクラスマップの分類基準を追加、削除する場合は、まず service-policy インターフェイス コンフィギュレーション コマンドを使用して、インターフェイスに出力ポリシーマップを付加します。クラスまたはアクションを追加、削除するには、すべてのインターフェイスからポリシー マップを消去して、変更し、再度インターフェイスに付加する必要があります。
ポリシー マップで 3 つのクラスが必要となる予定がある場合は、その時点では 3 つすべてを使用しないときでも、ポリシー マップの作成時に 3 つのクラスを定義する必要があります。インターフェイスにポリシー マップを付加したあとで、ポリシー マップにクラスを追加できません。
■
アクティブ ポートに少なくとも 1 つの出力ポリシー マップが付加されている場合、出力ポリシー マップが付加されていないアクティブ ポートでは、付加された出力ポリシー マップと同じクラスを使用しているトラフィックを適切にスケジューリングしたり、順序付けできない場合があります。使用中のすべてのポートに、出力ポリシー マップを付加することを推奨します。また、未使用のポートは、 shutdown インターフェイス コンフィギュレーション コマンドを使用してシャットダウンステートにすることも推奨します。たとえば、DSCP 23 トラフィックをシェーピングする出力ポリシー マップをポートに付加する場合に、同一ポートから他のトラフィックが送出されると、ポリシー マップが付加されていない他のポートから送信される DSCP トラフィックは適切にスケジューリングまたは順序付けされない場合があります。
■
出力ポリシー マップをポートに付加して、ポートが出力ポリシー マップを無効にするレートに自動ネゴシエーションされないようにする場合は、ポート速度の自動ネゴシエーションをディセーブルにするよう強く推奨します。 speed インターフェイス コンフィギュレーション コマンドを使用すると、スタティックなポート速度を設定できます。自動ネゴシエーションするように設定されているポートで出力ポリシー マップが設定されていて、その速度がポリシーを無効にする値に自動ネゴシエーションされた場合、ポートは error-disabled ステートになります。
■
1 つのポートに付加できる出力ポリシー マップは、1 つに限られます。
■
スイッチ上に設定されるポリシー マップの最大数は 256 です。
ここでは、異なるタイプの出力ポリシー マップの設定について説明します。
■
クラスベース シェーピングを含む出力ポリシー マップの設定
CBWFQ を含む出力ポリシー マップの設定
CBWFQ を設定するには、 bandwidth ポリシーマップ クラス コンフィギュレーション コマンドを使用します。CBWFQ では、ポートで使用可能な総帯域幅の一部を割り当てることにより、キューの相対的な優先順位を設定します。
■
ポリシー マップで帯域幅を設定する場合は、すべてのレート設定を同じ形式(設定されたレートまたはパーセンテージ)にする必要があります。
■
ポリシーの各キューにおける最小帯域幅保証の合計速度は、インターフェイスの合計速度を上回ることはできません。
■
出力ポリシーマップ内の同一のクラスに、CBWFQ( bandwidth )とトラフィック( shape average )またはプライオリティキューイング( priority )を設定できません。
■
別のクラス マップで完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合には、帯域幅を絶対レートまたは総帯域幅に対するパーセンテージとして設定できません。
■
出力ポリシー マップの別のクラスで完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合にだけ、帯域幅を残りの帯域幅に対するパーセンテージで設定できます。
■
クラスの CIR 帯域幅を絶対レートまたは総帯域幅に対するパーセンテージで設定する場合、ポリシー マップ内のすべてのクラスの CIR の処理後に残った余剰な帯域幅は、いずれも CIR レートと同じ比率でクラス間に配分されます。クラスの CIR レートを 0 に設定した場合、このクラスはいずれの余剰帯域幅に対しても不適格となり、帯域幅を取得できません。
最小帯域幅をビット レートまたはパーセンテージで指定することにより、CBWFQ を使用してトラフィック クラスに割り当てられる帯域幅を制御するには、特権 EXEC モードで次の手順を実行します。
作成された出力ポリシー マップを、出力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存のポリシーマップ、クラスマップ、または帯域幅設定を削除するには、該当するコマンドの no 形式を使用します。
次に、クラス マップで定義されたトラフィック クラスに、使用可能な合計帯域幅の 25% を割り当てて、キューの優先順位を設定する例を示します。
クラスベース シェーピングを含む出力ポリシー マップの設定
トラフィックシェーピングを設定するには、 shape average ポリシーマップ クラス コンフィギュレーション コマンドを使用します。クラスベース シェーピングは、インターフェイスから発信されるトラフィック クラスに適用される制御メカニズムで、クラスの CIR で使用されるデータ伝送速度を制限するには、shape average コマンドを使用します。
クラスベース シェーピングの設定を行うときは、次の注意事項に従ってください。
■
トラフィック シェーピングのキュー設定により、キューの最大帯域幅および Peak Information Rate(PIR)が設定されます。トラフィックシェーピングの自動設定により、キューの最小帯域幅保証または CIR も PIR と同じ値に設定されます。
■
出力ポリシーマップ内の同一のクラスに、CBWFQ( bandwidth )またはプライオリティキューイング( priority )およびトラフィック( shape average )を設定できません。
■
出力ポリシー マップ内の別のクラスに、完全プライオリティ(ポリシングなしのプライオリティ)が設定されている場合、特定のトラフィック クラスにトラフィック シェーピングを設定できません。
クラスベース シェーピングを使用して、トラフィック クラスの最大許容平均速度を設定するには、特権 EXEC モードで次の手順を実行します。
作成された出力ポリシー マップを、出力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存のポリシーマップ、クラスマップ、またはクラスベースシェーピングの設定を削除するには、該当するコマンドの no 形式を使用します。
ポート シェーピングを含む出力ポリシー マップの設定
ポート シェーピングは、インターフェイスから発信されるすべてのトラフィックに適用されます。 shape average コマンドによりポートの最大帯域幅が指定されている場合は、クラスのデフォルトだけを使用するポリシーマップを使用します。子ポリシーが、階層型ポリシー マップ形式でクラスのデフォルトに付加されると、シェーピング ポート上のキューのクラスベース アクションを指定できます。
子ポリシーの各キューにおける最小帯域幅保証の合計(CIR)は、ポート シェーピングの合計速度を上回ることはできません。
ポート シェーピングを使用して、トラフィック クラスの最大許容平均速度を設定するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
階層型ポリシー マップ名を入力して階層型ポリシー マップを作成し、親ポリシーのポリシーマップ コンフィギュレーション モードを開始します。 |
||
| target bps には、平均ビットレートを bps で指定します。指定できる範囲は 4000000 ~ 1000000000 です。 |
||
作成された階層型出力ポリシー マップを、出力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存の階層型ポリシーマップ、ポートシェーピングの設定を削除したり、または階層型ポリシーマップからポリシーマップを削除するには、該当するコマンドの no 形式を使用します。
次に、前述の例で設定された out-policy ポリシーマップに基づいて割り当てられ、ポートを 90 Mbps にシェーピングする階層型ポリシーマップを設定して、ポートシェーピングを設定する例を示します。
クラスベース プライオリティ キューイングを含む出力ポリシー マップの設定
priority ポリシーマップ クラス コンフィギュレーション コマンドを使用すると、特定のトラフィッククラスで優先処理が行われるよう保証できます。完全プライオリティ キューイングの場合、プライオリティ キューは常に処理されます。キュー内のすべてのパケットは、キューが空になるまでスケジューリングされ、送信されます。プライオリティ キューを過剰に使用すると、他のキューのパケットが遅延して、不必要な輻輳が発生する可能性があります。
完全プライオリティ キューイング(ポリシングなしのプライオリティ)または無条件のプライオリティ ポリサー(ポリシングありのプライオリティ)を設定できます。プライオリティ キューイングの設定時は、次の注意事項に従ってください。
■
priority コマンドは、スイッチ上で付加されたすべての出力ポリシーの単一の一意のクラスに関連付けられます。
■
トラフィッククラスをプライオリティキューとして設定する場合、 同一クラスのその他のキューイングアクションとして設定できるのは、 police および queue-limit だけです。同一クラスのプライオリティキューを使用して、 bandwidth または shape average を設定できません。
ポリシングなしのプライオリティの設定
完全プライオリティ キューイング(ポリシングなしのプライオリティ)の設定を行う場合は、次の注意事項に従ってください。
■
クラスベースシェーピング( shape average )または CBWFQ( bandwidth )が出力ポリシーマップ内の他のクラスに設定されている場合は、トラフィッククラスにポリシングなしのプライオリティキューイングを設定できません。
■
トラフィッククラスにポリシングなしのプライオリティキューイングを設定する場合、余剰の帯域幅を割り当てるには、 bandwidth remaining percent ポリシーマップ クラス コンフィギュレーション コマンドを使用して、他のキューで共有を設定するしかありません。このコマンドは、割り当てられた帯域幅を保証しませんが、分散レートは保証されます。
完全プライオリティ キューを設定するには、特権 EXEC モードで次の手順を実行します。
作成された出力ポリシー マップを、出力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存のポリシーマップまたはクラスマップの削除、プライオリティクラスの完全プライオリティキューイングまたは他のクラスへの帯域幅設定の解除を行うには、該当するコマンドの no 形式を使用します。
次に、クラス out-class1 を完全プライオリティキューとして設定し、このクラスのすべてのパケットが他のトラフィッククラスより先に送信される例を示します。他のトラフィックキューでは、 out-class2 は残りの帯域幅の 50%、 out-class3 は残りの帯域幅の 20% を取得するように設定されます。クラス class-default は、保証なしで、残りの 30% を取得します。
ポリシングを含むプライオリティの設定
ポリシング機能のあるプライオリティを使用して無条件のプライオリティ ポリサーを設定すると、プライオリティ キューで使用される帯域幅の制限、帯域幅の割り当て、または他のキューのシェーピングが可能になります。ポリシングを含むプライオリティの設定時は、次の注意事項に従ってください。
■
CLI ヘルプでキーワードが表示される場合でも、無条件のプライオリティ ポリサーに対して認定バースト サイズを設定できません。出力サービス ポリシーを付加しようとすると、設定済みのバースト サイズはすべて無視されます。
■
CLI ヘルプに表示される範囲が 8000 ~ 1000000000 bps である場合でも、許容ポリシング レートの範囲は 64000 ~ 1000000000 bps です。範囲外のレートでは、出力サービス ポリシーを付加できません。
■
同じ出力ポリシーマップ内の別のクラスで bandwidth remaining percent が設定されている場合は、トラフィッククラスにポリシングのあるプライオリティを設定できません。
■
プライオリティで出力ポリシーの 1-rate、2-color ポリサーを設定できます。出力ポリシーの 2-rate、3-color ポリサーは設定できません。
ポリシングのあるプライオリティを設定するには、特権 EXEC モードで次の手順を実行します。
作成された出力ポリシー マップを、出力ポートに付加します。トラフィック ポリシーのインターフェイスへの適用を参照してください。
既存のポリシーマップまたはクラスマップの削除、プライオリティクラスのプライオリティキューイング、ポリシング、または他のクラスへの帯域幅設定の解除を行うには、該当するコマンドの no 形式を使用します。
次に、 priority コマンドと police コマンドを併用して、 out-class1 をプライオリティキューとして設定し、キューに着信するトラフィックを 20000000 bps に制限して、プライオリティキューがそれを超えるレートを使用しないようにする例を示します。このレートを超えるトラフィックは、廃棄されます。その他のトラフィック キューは、前述の例のとおり設定されます。
WTD を含む出力ポリシー マップの設定
WTD では、トラフィック クラスに関連付けられたキュー サイズ(バッファ サイズ)を調整します。WTD は、 queue-limit ポリシーマップ クラス コンフィギュレーション コマンドにより設定されます。
■
queue-limit コマンドによる WTD の設定は、最初にスケジュールアクション( bandwidth 、 shape average 、または priority など)を設定する場合にだけサポートされます。 class-default で queue-limit を設定する場合は、例外です。
■
ポート数に応じた数の出力ポリシー マップを設定および付加できます。複数の出力ポリシー マップで同じキュー制限設定を使用できます。ただし、これらのポリシー マップには、固有のキュー制限を 3 つしか設定できません。
■
queue-limit コマンドを使用して CPU が生成したトラフィックのキュー制限を設定できます。
■
queue-limit コマンドを使用して、クラスのキューしきい値を設定する場合、WTD しきい値は、キューの最大しきい値以下にする必要があります。修飾子なしで設定されたキュー サイズは、修飾子を使用して設定されたいずれのキュー サイズよりも大きくする必要があります。
■
queue-limit コマンドで、WTD 修飾子( cos 、 dscp 、 precedence 、 qos-group )に 3 つ以上の一意のしきい値を設定できません。ただし、これらのしきい値にマッピングできる修飾子の数に制限はありません。修飾子なしの queue-limit コマンドを使用することにより、3 番めの一意のしきい値を設定して、最大キューを設定できます。
■
queue-limit コマンドの WTD 修飾子は、関連するクラスマップの少なくとも 1 つの match 修飾子と同じである必要があります。
■
出力ポリシー マップで一意のクラスにキュー制限を設定した場合、他のすべての出力ポリシー マップでは、修飾子タイプおよび修飾値に同じ形式を使用する必要があります。キュー制限しきい値だけ、異なる値を設定できます。たとえば、ポリシーマップ 1 の dscp 30 および dscp 50 に、クラス A のキュー制限のしきい値を設定して、ポリシーマップ 2 でクラス A のキュー制限を設定する場合、 dscp 30 および dscp 50 を修飾子として使用する必要があります。 dscp 20 および dscp 40 は、使用できません。別のしきい値を設定できますが、これにより、新しいキュー制限設定が作成されます。
WTD を使用してトラフィック クラスのキュー サイズを調整するには、特権 EXEC モードで次の手順を実行します。
|
|
|
|
|---|---|---|
ポリシー マップ名を入力することによってポリシー マップを作成し、ポリシー マップ コンフィギュレーション モードを開始します。 |
||
子クラスマップ名またはすべての未分類のパケットを照合する class-default を入力して、ポリシーマップ クラス コンフィギュレーション モードを開始します。 ■ |
||
bandwidth { rate | percent value | remaining percent value } |
トラフィック クラスのスケジューリング アクションを設定します。詳細については、CBWFQ を含む出力ポリシー マップの設定、クラスベース シェーピングを含む出力ポリシー マップの設定、ポート シェーピングを含む出力ポリシー マップの設定、またはクラスベース プライオリティ キューイングを含む出力ポリシー マップの設定を参照してください。 |
|
queue-limit [ cos value | dscp value | precedence value | qos-group value ] number-of-packets [ packets ]} |
■ ■ ■ ■ ■ 注: 最適なパフォーマンスを実現するため、キュー制限を 272 以下に設定することを推奨します。 値は、デフォルトでパケットに指定されますが、キーワード packets は任意です。 注: 複数の出力ポリシーマップでは、同じキュー制限設定を使用できます。ただし、これらのポリシー マップには、固有のキュー制限を 3 つしか設定できません。 |
|
出力インターフェイスにポリシー マップ(ステップ 2 で作成)を付加します。 注: 4 つめのキュー制限設定を含む出力ポリシーマップを付加しようとすると、エラーメッセージが表示され、付加は許可されません。 |
||
作成された出力ポリシー マップを、出力ポートに付加します。出力ポリシー マップの設定を参照してください。
既存のポリシーマップ、クラスマップ、または WTD 設定を削除するには、該当するコマンドの no 形式を使用します。
次に、指定された帯域幅およびキュー サイズが設定されたポリシー マップの例を示します。DSCP 30 または 10 ではないトラフィックには、112 パケットのキュー制限が割り当てられます。DSCP 値が 30 のトラフィックには、48 パケットのキュー制限が、また、DSCP 値が 10 のトラフィックには、32 パケットのキュー制限が割り当てられます。クラス トラフィックに属していないすべてのトラフィックは、class-default に分類され、使用可能な合計帯域幅の 10% が、256 パケットのラージ キュー サイズで設定されます。
CPU 生成トラフィックの QoS マーキングおよびキューイングの設定
CPU によって生成されたトラフィックのマーキングおよびキューイングを設定するには、特権 EXEC モードで次の手順を実行します。この手順は任意です。
|
|
|
|
|---|---|---|
テーブル マップの設定を参照してください。 |
||
cpu traffic qos cos { cos-value | cos [table-map table-map-name ] | dscp [table-map table-map-name ] | prec [table-map table-map-name ]} |
新しい CoS 値を設定するか、テーブル マップを指定することにより、トラフィックをマーキングします。 ■ ■ このステップを完了したら、ステップ 7. に進みます。 |
|
cpu traffic qos dscp { dscp_value | cos [table-map table-map-name ] | dscp [table-map table-map-name ] | prec [table-map table-map-name ]} |
新しい DsCP 値を設定するか、テーブル マップを指定することにより、トラフィックをマーキングします。 ■ ■ ■ このステップを完了したら、ステップ 7. に進みます。 |
|
cpu traffic qos precedence { precedence_value | cos [table-map table-map-name ] | dscp [table-map table-map-name ] | prec [ table-map table-map-name ]} |
新しい precedence 値を設定するか、テーブル マップを指定することにより、トラフィックをマーキングします。 ■ ■ このステップを完了したら、ステップ 7. に進みます。 |
|
| qos-group - value には、出力側で使用される QoS グループを識別します。指定できる範囲は、0 ~ 99 です。 このステップを完了したら、ステップ 7. に進みます。 |
||
COS、IP DSCP、IP precedence および QoS グループなどの QoS マーキングをクラス キューにマッピングするために出力ポリシー マップを設定し、キューイングおよびスケジューリングを設定します。 |
出力ポリシー マップの設定を参照してください。 |
|
設定済みのクラス マップ、ポリシー マップ、ポリシー マップ、テーブル マップ、および CPU トラフィック QoS 設定を表示します。 |
||
show policy-map [ policy-map-name | interface [ interface-id ] [ output ] [ class class-name ]] |
指定されたポリシー マップ名、インターフェイス、入力/出力ポリシー マップ、またはポリシー マップ クラスの QoS ポリシー マップ情報を表示します。 |
コマンドをディセーブルにするには、このコマンドの no 形式を使用します。
次に、CPU 生成 IP パケットの DSCP 値に基づいて出力キューイングを設定する例を示します。
■
IP DSCP 値および設定済み出力ポリシーマップ output-policy に基づく、出力ポート上のすべての CPU 生成 IP トラフィックキュー。
■
音声トラフィックをシミュレートする DSCP 値が ef のすべての IP SLA または TWAMP プローブが voice クラスに割り当てられている。
■
音声トラフィックをシミュレートする DSCP 値が af41 、 af42 および af43 のすべての IP SLA または TWAMP が video クラスに割り当てられている。
■
DSCP 値が 48 および 56 のすべての IP 制御プロトコルトラフィックが network-internetwork-control クラスに割り当てられている。
■
残りの IP トラフィックがデフォルト クラスに割り当てられている。
■
すべての CPU 生成非 IP トラフィックが、スタティックに出力ポートの固定キューにマッピングされている。
■
CoS に基づくクラスが存在しないため、すべての CFM トラフィックがデフォルト クラスにキューイングされている。
次に、パケットの DSCP 値に基づいて CPU 生成 IP トラフィック(IP-SLA および TWAMP を含む)の CoS をマーキングし、CoS 値に基づいて出力キューイングを設定する例を示します。
■
IP DSCP 値および output-policy という設定済み出力ポリシーマップに基づく、出力ポート上のすべての CPU 生成 IP トラフィックキュー。
■
音声トラフィックをシミュレートする DSCP 値が ef のすべての IP SLA または TWAMP プローブが voice クラスに割り当てられている。
■
音声トラフィックをシミュレートする DSCP 値が af41 、 af42 および af43 のすべての IP SLA または TWAMP が video クラスに割り当てられている。
■
DSCP 値が 48 および 56 のすべての IP 制御プロトコルトラフィックが network-internetwork-control クラスに割り当てられている。
■
残りの IP トラフィックがデフォルト クラスに割り当てられている。
■
CoS 5 のすべての CPU 生成非 IP トラフィックが voice クラスに割り当てられている。
■
CoS 3 のすべての CPU 生成非 IP トラフィックが video クラスに割り当てられている。
■
CoS 6 および 7 のすべての CPU 生成非 IP トラフィックが network-internetwork-control クラスに割り当てられている。
■
CoS 5 のすべての CFM トラフィックが voice クラスに割り当てられている。
■
CoS 3 のすべての CFM トラフィックが video クラスに割り当てられている。
■
CoS 6 および 7 のすべての CFM トラフィックが network-internetwork-control クラスに割り当てられている。
■
パケットの DSCP 値に基づいて CPU 生成 IP トラフィック(IP-SLA および TWAMP を含む)の DSCP 値をマーキングする。
■
パケットの DSCP 値に基づいて CPU 生成 IP トラフィック(IP-SLA および TWAMP を含む)の CoS をマーキングする。
■
パケットの CoS 値に基づいて CPU 生成非 IP トラフィックの CoS をマーキングする。
■
QoS グループが付いたすべての CPU 生成トラフィックをマーキングする。
■
DSCP 値が 46、48、および 56 のすべての CPU 生成 IP トラフィックでは、既存のマーキングが維持される。
■
その他のすべての CPU 生成 IP パケットについては、DSCP 値はゼロにリセットされる。
■
DSCP 値が 46、48、および 56 のすべての CPU 生成 IP トラフィックは、それぞれ対応する CoS 値 5、6、および 7 にマッピングされる。
■
その他のすべての CPU 生成 IP パケットについては、CoS 値はゼロにリセットされる。
■
CoS 値が 5、6、および 7 のすべての CPU 生成非 IP トラフィックでは、既存のマーキングが維持される。
■
その他のすべての CPU 生成非 IP パケットについては、CoS 値はゼロにリセットされる。
■
すべての CPU 生成トラフィックは、 cpu-traffic という 1 つのクラスを通過する。 user-voice クラスである user-voice および user-video は、ユーザトラフィック用に確保されています。その結果、CPU トラフィックおよびユーザ トラフィックは出力ポートのさまざまなキューに分割されています。
QoS 情報の表示
QoS 情報を表示するには、表 62 に示す特権 EXEC コマンドを 1 つまたは複数組み合わせて使用します。
|
|
|
|---|---|
show policy-map [ policy-map-name | interface [ interface-id ] [ input | output ] [ class class-name ]] |
指定されたポリシー マップ名、インターフェイス、入力/出力ポリシー マップ、またはポリシー マップ クラスの QoS ポリシー マップ情報を表示します。 |
インターフェイス上の両方向で完全パス QoS をテストするには、 ethernet loopback facility インターフェイス コンフィギュレーション コマンドを入力してイーサネット ターミナル ループバックを設定できます。ターミナル ループバック モードでは、ポートは、リンクがアップに見える状態になりますが、実際はリンクはダウンになっており、パケットは送信されません。ポートの設定変更は、ループバックされているトラフィックに即座に影響を与えます。
QoS 統計情報
QoS 入力および出力ポリシー マップの統計情報を表示する方法は、いくつかあります。
入力ポリシーマップの場合、 show policy-map interface [ interface-id ] 特権 EXEC コマンドを使用してクラス単位、ポリサー単位の適合および超過統計情報を表示できます。ポリサーの適合統計情報は設定済みポリサー プロファイルに適合するパケット数で、ポリサーの超過統計情報は設定済みポリサー プロファイルを超過したパケット数です。スイッチでは、クラス単位の分類統計情報をサポートしませんが、クラスの回線速度でポリシングを設定することによりこれらの統計情報を決定できます。この場合、設定済みポリサー プロファイルを超過するパケットはありません。また、ポリサーの適合統計情報はクラスの分類統計情報に等しくなります。
またこの出力には、conform、exceed、および violate の各クラスのバイトレベルの統計情報が含まれています。
入力 QoS 統計情報を表示する別の方法として、show platform qos statistics interface [ interface-id ] 特権 EXEC コマンドの出力があります。ポート単位のフレームの統計情報は、ポート上の着信フレームの DSCP 値および CoS 値でソートされています。これらの統計情報には、インターフェイス上で設定される MQC 入力ポリシー マップについての情報は含まれません。
出力ポリシーマップの場合、 show policy-map interface [ interface-id ] コマンドを使用して、指定されたクラスに一致する合計パケット数を示すクラス単位の分類統計情報を表示できます。このカウントには、指定のクラスで送信および廃棄された合計パケット数も含まれます。クラス単位のテール ドロップ統計情報を表示する場合も、同じコマンドが使用できます。
ポリシー マップの設定例
ここでは、設定に関する注意事項および制限事項を含む Cisco IE スイッチ上での QoS ポリシーの設定例を示します。これらのセクションは、お客様が実行する可能性のあるさまざまな設定アクションに分かれています。各セクションには、設定または変更を成功させるために従う必要がある手順の正確な順序が記載されています。
■
出力ポリシーの変更およびキューイングまたはスケジューリング パラメータの変更
カスタマー A の QoS 設定
ここでは、カスタマー スイッチの初期設定および QoS ポリシーのアクティブ化の例を示します。入力および出力 QoS サービス ポリシーは、要件に基づいて設定され、関連ポートに付加されます。
カスタマー A の初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、ネットワーク ノード インターフェイス(NNI)で、デフォルトではイネーブルです。
■
出力ポリシー マップでは、最大 3 つのクラスを定義できます。
■
定義されたクラスは、他の出力ポリシー マップと同一でなければなりません。
■
各出力ポリシーマップで定義されるクラス数は、同じである必要があります。
■
クラスごとに動作を割り当てる必要があります。つまり、空のクラスはありません。
■
各クラス設定は、入力ポリシー マップで実行された分類/マーキングに基づいている必要があります。
次に、入力サービス ポリシーのクラスを設定し、3 つの サービス クラス(gold、silver、bronze)を定義する例を示します。 match-all 分類(デフォルト)には単一の分類基準しかないため、 match-any 分類を使用して将来的に分類基準を追加できるようにします。
次に、gold クラスをマーキングして、silver クラスを 50 Mb/s に、bronze クラスを 20 Mb/s にポリシングする入力ポリシー マップを設定する例を示します。
次に、3 つの サービス クラス(gold、silver、bronze)を備えた出力サービス ポリシーのクラスを設定する例を示します。gold クラスは、入力サービス ポリシーでマーキングされた値を照合するように設定されます。 match-all 分類(デフォルト)には単一の分類基準しかないため、 match-any 分類を使用して将来的に分類基準を追加できるようにします。
次に、両方のギガビット イーサネット NNI に適用され、gold クラスへのレート制限があるプライオリティ、silver クラスへのクラスベース シェーピング、および bronze クラスへの 10% の最小帯域幅保証を割り当てる例を示します。
次に、ギガビット イーサネット ポートに入力および出力サービス ポリシーを付加して、アクティブ化する例を示します。
カスタマー B の QoS 設定
このセクションでは、現在のカスタマーに影響を与えずに一連の新しいカスタマーにスイッチ上で QoS ポリシーを設定してアクティブ化する例を示します。入力および出力 QoS サービス ポリシーは、要件に基づいて設定され、関連ポートに付加されます。この例では、既存の入力ポリシー マップを使用し、新しいカスタマーには新しい出力ポリシー マップを設定します。
カスタマー B の初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、NNI で、デフォルトではイネーブルです。
■
アクティブ化されたポートに入力および出力ポリシーを付加します。
■
出力ポリシー マップでは、最大 3 つのクラスを定義できます。
■
定義されたクラスは、他の出力ポリシー マップと同一でなければなりません。
■
各出力ポリシーマップで定義されるクラス数は、同じである必要があります。
出力ポリシーの変更および分類基準の追加と削除
ここでは、既存の一連の出力ポリシー マップを更新して、分類基準を追加または削除する例を示します。サービス プロビジョニング要件または入力サービス ポリシー マップでの変更により、修正が必要となる場合があります。いずれのポートもシャットダウンすることなく、変更できます。
初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、NNI で、デフォルトではイネーブルです。
■
入力サービス ポリシーの設定済みクラス マップを変更します。
■
出力サービス ポリシーの設定済みクラス マップを変更します。
次に、silver-in クラスに分類基準を追加して、入力サービス ポリシーのクラスを変更し、dscp cs5 も照合する例を示します。これは、dscp cs5 を照合する出力ポリシー マップで必要となります。
次に、silver-out クラスに分類基準を追加して、出力サービス ポリシーのクラスを変更し、dscp cs5 も照合する例を示します。これにより、すべての設定済みおよび付加済み出力サービス ポリシーで dscp cs5 が silver-out クラスに追加されます。これで dscp cs5 フローが、silver-out クラスと同じキューイングおよびスケジューリング処理を受信します。
出力ポリシーの変更およびキューイングまたはスケジューリング パラメータの変更
ここでは、既存の一連の出力ポリシー マップを更新して、設定済みのキューイングおよびスケジューリング アクションのパラメータを変更する例を示します。サービス プロビジョニング要件での変更により、出力ポリシー マップでの修正が必要となる場合があります。いずれのポートもシャットダウンすることなく、変更できます。
初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、NNI で、デフォルトではイネーブルです。
■
出力ポリシー マップでは、最大 3 つのクラスを定義できます。
■
定義されたクラスは、他の出力ポリシー マップと同一でなければなりません。
■
各出力ポリシーマップで定義されるクラス数は、同じである必要があります。
出力ポリシーの変更および設定済み動作の追加または削除
ここでは、既存の一連の出力ポリシー マップを更新して、キューイングおよびスケジューリング動作を追加または削除する例を示します。サービス プロビジョニング要件での変更により、出力ポリシー マップでの修正が必要となる場合があります。変更される出力ポリシー マップが設定されていないポートをシャットダウンしないで、変更できます。ただし、出力ポリシー マップが設定されているポートは、シャットダウンする必要があります。この出力ポリシー マップを使用しないカスタマーは、影響を受けません。
初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、NNI で、デフォルトではイネーブルです。
■
変更されるポリシーを伝搬するすべてのアクティブ ポートをシャットダウンします。
■
出力ポリシーが付加されているすべてのポートから、ポリシーを消去します。
■
出力ポリシー マップでは、最大 3 つのクラスを定義できます。
■
定義されたクラスは、他の出力ポリシー マップと同一でなければなりません。
■
各出力ポリシーマップで定義されるクラス数は、同じである必要があります。
■
クラスごとに動作を割り当てる必要があります。つまり、空のクラスはありません。
■
各クラス設定は、入力ポリシー マップで実行された分類/マーキングに基づいている必要があります。
次の手順では、出力ポリシーを伝搬するポートすべて(この場合は、ギガビット イーサネット ポートだけ)がシャットダウンされます。
次の手順では、変更される出力ポリシー(この場合は、ギガビット イーサネット ポートに設定されたポリシー)が削除されます。
次の手順では、ギガビット イーサネット NNI を処理する出力サービス ポリシーが変更されます。ポリシーは、bronze クラスに最小帯域幅保証の 10% を割り当てる代わりに、クラスベース シェーピングに 100000 bps を割り当てるように変更されます。
次の手順では、出力ポリシーがギガビット イーサネットポートに再度付加されます。
次の手順では、すべてのギガビット イーサネット ポートがアクティブ化されます。
出力ポリシーの変更およびクラスの追加または削除
ここでは、既存の一連の出力ポリシー マップを更新して、すべてのクラスを追加または削除する例を示します。サービス プロビジョニング要件または入力サービス ポリシーでの変更により、出力ポリシー マップでの修正が必要となる場合があります。この変更を行うには、スイッチ上のすべてのアクティブ ポートをシャットダウンする必要があります。任意の出力ポリシー マップに対するこの種の更新は、すべてのカスタマーに影響を及ぼす場合があります。これを回避するため、出力サービス ポリシーでクラスを設定する場合は将来的に可能性のある更新について考慮することを推奨します。
初期設定では、ギガビット イーサネット ポート 1 ~ 2 は、NNI で、デフォルトではイネーブルです。
次の手順では、すべてのアクティブで適用可能なイーサネットポートをシャットダウンします。
次の手順では、影響を受けるイーサネットポートからすべての出力ポリシーを消去します。
次の手順では、すべての出力ポリシー マップおよび入力ポリシー マップからクラスを削除します。入力ポリシーは付加したままでも、消去してもかまいません。
次の手順では、すべての適用可能なイーサネットポートをアクティブ化します。
付加された出力サービス ポリシーにクラスを追加する場合は、同じ手順を使用する必要があります。
注: 前述の順序に従わない場合は、問題が発生する可能性があります。
インターフェイスにポリシーマップを付加する場合、ポリシーマップ内の設定済みのクラスマップに明示的に一致しないすべてのトラフィックは、デフォルトキュー(クラス class-default )を通過します。ただし、場合によっては、出力ポリシー マップに明示的に一致しないトラフィックが複数のキューを通過する場合があります。このようなキューイング問題は、前述の手順に従わない場合、およびすべてのアクティブ ポートに出力ポリシーが付加されていない場合に発生する可能性があります。
フィードバック