MPLS EXP の分類とマーキング
QoS EXP Matching 機能を使用すれば、マルチプロトコル ラベル スイッチング(MPLS)Experimental ビット(EXP ビット)フィールドを変更することで、ネットワーク トラフィックを分類し、マーキングすることができます。このモジュールでは、MPLS EXP フィールドを使用してネットワーク トラフィックを分類してマーキングするための概念情報と設定作業について説明します。
機能情報の確認
ご使用のソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。最新の機能情報および警告については、使用するプラットフォームおよびソフトウェア リリースの Bug Search Tool およびリリース ノートを参照してください。このモジュールに記載されている機能の詳細を検索し、各機能がサポートされているリリースのリストを確認する場合は、このモジュールの最後にある機能情報の表を参照してください。
プラットフォームのサポートおよび Cisco ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator には、http://www.cisco.com/go/cfn からアクセスします。Cisco.com のアカウントは必要ありません。
MPLS EXP の分類とマーキングの前提条件
-
スイッチは MPLS プロバイダー エッジ(PE)またはプロバイダー(P)ルータとして設定する必要があります。この設定には、有効なラベル プロトコルと基礎となる IP ルーティング プロトコルの設定を含めることができます。
MPLS EXP の分類とマーキングの制約事項
-
MPLS の分類とマーキングは、運用可能な MPLS ネットワーク内でのみ実行できます。
-
MPLS EXP 分類とマーキングは、MPLS がイネーブルになっているインターフェイスか、またはその他のインターフェイス上の MPLS トラフィックでのみサポートされます。
-
パケットが入力で IP タイプ オブ サービス(ToS)またはサービス クラス(CoS)によって分類された場合は、出力で MPLS EXP によって再分類できません(インポジション ケース)。ただし、パケットが入力で MPLS によって分類された場合は、出力で IP ToS、CoS、または Quality of Service(QoS)グループによって再分類できます(ディスポジション ケース)。
-
プロトコルの境界を越えてトラフィックに QoS を適用するには、QoS グループを使用します。入力トラフィックを分類し、QoS グループに割り当てることができます。その後に、出力で QoS グループを分類し、QoS を適用することができます。
-
パケットが MPLS でカプセル化されている場合は、IP などの他のプロトコルの MPLS ペイロードをチェックして分類またはマーキングすることはできません。MPLS EXP マーキングのみが MPLS によってカプセル化されたパケットに影響します。
MPLS EXP の分類とマーキングに関する情報
MPLS EXP の分類とマーキングの概要
QoS EXP Matching 機能を使用すれば、MPLS パケットの MPLS EXP フィールドに値を設定することによってネットワーク トラフィックを整理できます。MPLS EXP フィールドで異なった値を選択することにより、輻輳時にパケットが必要なプライオリティを持つようパケットをマーキングすることができます。MPLS EXP 値の設定によって次のことが可能になります。
- トラフィックの分類
分類プロセスでマーキングするトラフィックが選択されます。分類は、トラフィックを複数の優先順位レベル、つまり、サービス クラスに分割することによりこのプロセスを実施します。トラフィック分類は、クラス ベースの QoS プロビジョニングのプライマリ コンポーネントです。詳細については、『Classifying Network Traffic』モジュールを参照してください。
- トラフィックのポリシングとマーキング
ポリシングでは、設定されたレートを上回るトラフィックが廃棄されるか、別のドロップ レベルにマーキングされます。トラフィックのマーキングは、パケット フローを特定してそれらを区別する方法です。パケット マーキングを利用すれば、ネットワークを複数の優先プライオリティ レベルまたはサービス クラスに分割することができます。詳細については、『Marking Network Traffic』モジュールを参照してください。
MPLS 実験フィールド
MPLS Experimental ビット(EXP)フィールドは、ノードからパケットに付加される QoS 処理(Per-Hop Behavior)を定義するために使用可能な MPLS ヘッダー内の 3 ビット フィールドです。IP ネットワークでは、DiffServ コード ポイント(DSCP)(6 ビット フィールド)でクラスとドロップ優先順位が定義されます。EXP ビットは、IP DSCP でエンコードされた情報の一部を伝達するためにも、ドロップ優先順位をエンコードするためにも使用できます。
デフォルトで、Cisco IOS ソフトウェアは、IP パケットの DSCP または IP precedence の上位 3 ビットを MPLS ヘッダー内の EXP フィールドにコピーします。このアクションは、MPLS ヘッダーが初めて IP パケットに付加されたときに実行されます。ただし、DSCP または IP precedence と EXP ビットとの間のマッピングを定義することによって、EXP フィールドを設定することもできます。このマッピングは、set mpls experimental コマンドまたは police コマンドを使用して設定します。詳細については、「MPLS EXP の分類とマーキングの方法」を参照してください。
MPLS EXP マーキング操作を実行するには、テーブルマップを使用します。入力ポリシー内の別のトラフィック クラスに QoS グループを割り当て、テーブルマップを使用して QoS グループを出力ポリシー内の DSCP および EXP マーキングに変換することをお勧めします。
MPLS EXP の分類とマーキングのメリット
ネットワーク経由で伝送されるパケットの IP precedence フィールド値をサービス プロバイダーが変更したくない場合は、MPLS EXP フィールド値を使用して IP パケットを分類してマーキングできます。
MPLS EXP フィールド用の複数の値を選択することにより、ネットワーク輻輳が発生した場合に重大なパケットが優先されるようにそのようなパケットをマーキングすることができます。
MPLS EXP の分類とマーキングの方法
MPLS カプセル化パケットの分類
match mpls experimental topmost コマンドを使用すれば、MPLS ドメイン内のパケット EXP 値に基づくトラフィック クラスを定義できます。これらのクラスは、police コマンドを使用して EXP トラフィックをマーキングするサービス ポリシーを定義するために使用できます。
手順
コマンドまたはアクション | 目的 | |||
---|---|---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードをイネーブルにします。
|
||
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
||
ステップ 3 |
class-map [match-all | match-any ] class-map-name 例:
|
トラフィックを指定したクラスにマッチングするために使用するクラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。
|
||
ステップ 4 |
match mpls experimental topmost mpls-exp-value 例:
|
一致基準を指定します。
|
||
ステップ 5 |
end 例:
|
(任意)特権 EXEC モードに戻ります。 |
最も外側のラベルでの MPLS EXP のマーキング
インポーズされたラベル エントリの MPLS EXP フィールドの値を設定するには、次の作業を実行します。
始める前に
通常の設定では、インポジションでの MPLS パケットのマーキングが IP ToS または CoS フィールドに基づく入力分類で使用されます。
(注) |
IP インポジション マーキングでは、デフォルトで、IP precedence 値が MPLS EXP 値にコピーされます。 |
(注) |
set mpls experimental imposition コマンドは、新しいまたは追加の MPLS ラベルが追加されたパケットに対してのみ機能します。 |
手順
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードをイネーブルにします。
|
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
policy-map policy-map-name 例:
|
作成されるポリシー マップの名前を指定し、ポリシー マップ コンフィギュレーション モードを開始します。
|
ステップ 4 |
class class-map-name 例:
|
トラフィックを指定したクラスにマッチングするために使用するクラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。
|
ステップ 5 |
set mpls experimental imposition mpls-exp-value 例:
|
インポーズされたすべてのラベル エントリの MPLS EXP フィールドの値を設定します。 |
ステップ 6 |
end 例:
|
(任意)特権 EXEC モードに戻ります。 |
ラベル スイッチド パケットでの MPLS EXP のマーキング
ラベル スイッチド パケットでの MPLS EXP フィールドを設定するには、次の作業を実行します。
始める前に
(注) |
set mpls experimental topmost コマンドは、MPLS トラフィックの最も外側のラベルに EXP をマークします。入力ポリシーでのこのマーキングにより、出力ポリシーに MPLS EXP 値に基づく分類を含める必要があります。 |
手順
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードをイネーブルにします。
|
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
policy-map policy-map-name 例:
|
作成されるポリシー マップの名前を指定し、ポリシー マップ コンフィギュレーション モードを開始します。
|
ステップ 4 |
class class-map-name 例:
|
トラフィックを指定したクラスにマッチングするために使用するクラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。
|
ステップ 5 |
set mpls experimental topmost mpls-exp-value 例:
|
出力インターフェイスの最上位ラベルの MPLS EXP フィールド値を設定します。 |
ステップ 6 |
end 例:
|
(任意)特権 EXEC モードに戻ります。 |
条件付きマーキングの設定
すべてのインポーズされたラベルに MPLS EXP フィールドの値を条件付きで設定するには、次の作業を実行します。
始める前に
(注) |
set-mpls-exp-topmost-transmit アクションは、MPLS カプセル化パケットにのみ影響します。 set-mpls-exp-imposition-transmit アクションは、パケットに追加されたすべての新しいラベルに影響します。 |
手順
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードをイネーブルにします。
|
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
policy-map policy-map-name 例:
|
作成されるポリシー マップの名前を指定し、ポリシー マップ コンフィギュレーション モードを開始します。
|
ステップ 4 |
class class-map-name 例:
|
トラフィックと指定されたクラスを照合するために使用するクラス マップを作成し、ポリシーマップ クラス コンフィギュレーション モードを開始します。
|
ステップ 5 |
police cir bps bc pir bps be 例:
|
分類するトラフィック用のポリサーを定義し、ポリシーマップ クラス ポリシング コンフィギュレーション モードを開始します。 |
ステップ 6 |
conform-action transmit 例:
|
ポリサーで指定された値に適合するパケットに対して実行するアクションを定義します。
|
ステップ 7 |
exceed-action set-mpls-exp-topmost-transmit dscp table dscp-table-value 例:
|
ポリサーで指定された値を上回るパケットに対して実行するアクションを定義します。 |
ステップ 8 |
violate-action drop 例:
|
レートが最大情報レート(pir)を超えており、bc と be の範囲外のパケットに対して実行するアクションを定義します。
|
ステップ 9 |
end 例:
|
(任意)特権 EXEC モードに戻ります。 |
MPLS EXP の分類とマーキングの設定例
例:MPLS カプセル化パケットの分類
MPLS EXP クラス マップの定義
次に、MPLS 実験値 3 を含むパケットと一致する exp3 という名前のクラス マップを定義する例を示します。
Switch(config)# class-map exp3
Switch(config-cmap)# match mpls experimental topmost 3
Switch(config-cmap)# exit
ポリシー マップの定義とポリシー マップの入力インターフェイスへの適用
次の例では、上の例でポリシー マップを定義するために作成したクラス マップを使用します。また、この例では、入力トラフィックの物理インターフェイスにポリシー マップを適用します。
Switch(config)# policy-map change-exp-3-to-2
Switch(config-pmap)# class exp3
Switch(config-pmap-c)# set mpls experimental topmost 2
Switch(config-pmap)# exit
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy input change-exp-3-to-2
Switch(config-if)# exit
ポリシー マップの定義とポリシー マップの出力インターフェイスへの適用
次の例では、上の例でポリシー マップを定義するために作成したクラス マップを使用します。また、この例では、出力トラフィックの物理インターフェイスにポリシー マップを適用します。
Switch(config)# policy-map WAN-out
Switch(config-pmap)# class exp3
Switch(config-pmap-c)# shape average 10000000
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy output WAN-out
Switch(config-if)# exit
最も外側のラベルでの MPLS EXP のマーキング
インポーズされたラベル エントリの MPLS EXP フィールドの値を設定するには、次の作業を実行します。
始める前に
通常の設定では、インポジションでの MPLS パケットのマーキングが IP ToS または CoS フィールドに基づく入力分類で使用されます。
(注) |
IP インポジション マーキングでは、デフォルトで、IP precedence 値が MPLS EXP 値にコピーされます。 |
(注) |
set mpls experimental imposition コマンドは、新しいまたは追加の MPLS ラベルが追加されたパケットに対してのみ機能します。 |
手順
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 |
enable 例:
|
特権 EXEC モードをイネーブルにします。
|
ステップ 2 |
configure terminal 例:
|
グローバル コンフィギュレーション モードを開始します。 |
ステップ 3 |
policy-map policy-map-name 例:
|
作成されるポリシー マップの名前を指定し、ポリシー マップ コンフィギュレーション モードを開始します。
|
ステップ 4 |
class class-map-name 例:
|
トラフィックを指定したクラスにマッチングするために使用するクラス マップを作成し、クラス マップ コンフィギュレーション モードを開始します。
|
ステップ 5 |
set mpls experimental imposition mpls-exp-value 例:
|
インポーズされたすべてのラベル エントリの MPLS EXP フィールドの値を設定します。 |
ステップ 6 |
end 例:
|
(任意)特権 EXEC モードに戻ります。 |
例:ラベル スイッチド パケットの MPLS EXP のマーキング
MPLS EXP ラベル スイッチド パケット ポリシー マップの定義
次の例では、転送されたパケットの MPLS EXP 値に基づいて MPLS EXP 最上位値を 2 に設定するポリシー マップを定義します。
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# class-map exp012
Switch(config-cmap)# match mpls experimental topmost 0 1 2
Switch(config-cmap)# exit
Switch(config-cmap)# policy-map mark-up-exp-2
Switch(config-pmap)# class exp012
Switch(config-pmap-c)# set mpls experimental topmost 2
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
メイン インターフェイスへの MPLS EXP ラベル スイッチド パケット ポリシー マップの適用
次に、ポリシー マップのメイン インターフェイスへの適用例を示します。
Switch# configure terminal
Enter configuration commands, one per line. End with CNTL/Z.
Switch(config)# interface GigabitEthernet 0/0/0
Switch(config-if)# service-policy input mark-up-exp-2
Switch(config-if)# exit
例:条件付きマーキングの設定
この例では、ip2tag ポリシー マップに含まれる iptcp クラス用のポリサーを作成し、そのポリシー マップをギガビット イーサネット インターフェイスに適用します。
Switch(config)# policy-map ip2tag
Switch(config-pmap)# class iptcp
Switch(config-pmap-c)# police cir 1000000 pir 2000000
Switch(config-pmap-c-police)# conform-action transmit
Switch(config-pmap-c-police)# exceed-action set-mpls-exp-imposition-transmit 2
Switch(config-pmap-c-police)# violate-action drop
Switch(config-pmap-c-police)# exit
Switch(config-pmap-c)# exit
Switch(config-pmap)# exit
Switch(config)# interface GigabitEthernet 0/0/1
Switch(config-if)# service-policy input ip2tag
その他の参考資料
関連資料
関連項目 |
参照先 |
---|---|
Cisco IOS コマンド |
|
QoS コマンド |
『Cisco IOS Quality of Service Solutions Command Reference』 |
標準および RFC
標準/RFC |
タイトル |
---|---|
新しい規格または変更された規格はサポートされていません。また、既存の規格に対するサポートに変更はありません。 |
テクニカル サポート
説明 |
リンク |
---|---|
右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。これらのリソースは、ソフトウェアをインストールして設定したり、シスコの製品やテクノロジーに関する技術的問題を解決したりするために使用してください。この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。 |
QoS MPLS EXP の機能情報
次の表に、このモジュールで説明した機能に関するリリース情報を示します。この表は、ソフトウェア リリース トレインで各機能のサポートが導入されたときのソフトウェア リリースのみを示しています。その機能は、特に断りがない限り、それ以降の一連のソフトウェア リリースでもサポートされます。
プラットフォームのサポートおよび Cisco ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。Cisco Feature Navigator にアクセスするには、www.cisco.com/go/cfn に移動します。Cisco.com のアカウントは必要ありません。
リリース |
変更箇所 |
---|---|
Cisco IOS XE Everest 16.5.1a |
この機能が導入されました。 |