この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
この章では、Cisco NX-OS デバイス上でトラフィック クラスのポリシングを設定する方法について説明します。
ご使用のソフトウェア リリースで、このモジュールで説明されるすべての機能がサポートされているとは限りません。 最新の警告および機能情報については、https://tools.cisco.com/bugsearch/ の Bug Search Tool およびご使用のソフトウェア リリースのリリース ノートを参照してください。 このモジュールに記載されている機能の詳細、および各機能がサポートされているリリースのリストについては、「新規および変更された情報(New and Changed Information)」の章または以下の「機能の履歴」表を参照してください。
ポリシングとは、トラフィックの特定のクラスについて、そのデータ レートをモニタすることです。 データ レートがユーザ設定値を超えると、ただちにパケットのマーキングまたはドロップが発生します。 ポリシングではトラフィックがバッファリングされないため、伝搬遅延への影響はありません。 トラフィックがデータ レートを超えた場合に、パケットをドロップするかパケット内の Quality of Service(QoS)フィールドをマーキングするかを、ユーザがシステムに指示します。
シングルレート、デュアルレート、およびカラー対応のポリサーを定義できます。
シングルレート ポリサーは、トラフィックの認定情報レート(CIR)をモニタします。 デュアルレート ポリサーは、CIR と最大情報レート(PIR)の両方をモニタします。 また、システムは、関連するバースト サイズもモニタします。 指定したデータ レート パラメータに応じて、適合(グリーン)、超過(イエロー)、違反(レッド)の 3 つのカラー、つまり条件が、パケットごとにポリサーによって決定されます。
各条件について設定できるアクションは 1 つだけです。 たとえば、最大 200 ミリ秒のバーストで、256,000 bps のデータ レートに適合するように、クラス内のトラフィックをポリシングするとします。 この場合、システムは、このレートの範囲内のトラフィックに対して適合アクションを適用し、このレートを超えるトラフィックに対して違反アクションを適用します。
カラー対応ポリサーは、トラフィックが以前にカラーによってすでにマーキングされているものと見なします。 次に、このタイプのポリサーが実行するアクションの中で、その情報が使用されます。
ポリサーの詳細については、Request For Comments(RFC)2697 および RFC 2698 を参照してください。
QoS では、一致したトラフィック内のすべてのフローに対して、共有ポリサー内で指定された帯域幅上限が累積的に適用されます。 共有ポリサーによって、同一のポリサーが複数のインターフェイスに同時に適用されます。
たとえば、VLAN 1 および VLAN 3 上のすべての Trivial File Transfer Protocol(TFTP)トラフィック フローについて 1 Mbps を許可するように共有ポリサーを設定した場合、デバイスでは、VLAN 1 および VLAN 3 上で結合されるすべてのフローについて、TFTP トラフィックが 1 Mbps に制限されます。
共有ポリサーを設定する際の注意事項を次に示します。
名前付き共有ポリサーを作成するには、qos shared-policer コマンドを入力します。 共有ポリサーを作成し、その共有ポリサーを使用するポリシーを作成して、そのポリシーを複数の入力ポートに付加した場合、デバイスでは、その付加先となっているすべての入力ポートからの一致するトラフィックがポリシングされます。
共有ポリサーはポリシング コマンドの中のポリシー マップ クラスで定義します。 名前付き共有ポリサーを複数の入力ポートに付加した場合、デバイスでは、その付加先となっているすべての入力ポートからの一致するトラフィックがポリシングされます。
共有ポリサーはモジュールごとに独立して機能します。
QoS 機能にライセンスは必要ありません。 ライセンス パッケージに含まれていない機能はすべて Cisco NX-OS システム イメージにバンドルされており、追加費用は一切発生しません。
仮想デバイス コンテキスト(VDC)の使用には Advanced Services ライセンスが必要です。
NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。
ポリシングの前提条件は、次のとおりです。
ポリシング設定時の注意事項と制約事項は次のとおりです。
F1 モジュールはポリシングをサポートしません。
ポリシングはモジュールごとに独立して実行されます。このことは、複数のモジュールにわたって分散しているトラフィックに適用される QoS 機能に影響を与える可能性があります。 このような QoS 機能の例を次に示します。
入力と出力のどちらの方向についても、すべてのポリサーで同じモードを使用する必要があります。 たとえば、クラスに対してカラー対応モードが必要な場合、そのポリシー内で同じ方向のすべてのクラスをカラー対応モードにする必要があります。
モジュール上の 2 つの異なるポート ASIC のインスタンス間のトラフィックのポリシング レートは、M1 モジュールおよび F2 モジュールに対し別々に設定されます。
トラフィックが M1 モジュール上の 2 つの異なるインスタンス間にある場合、ポリシング レートはインスタンス間で共有されます。 3 番目のインスタンスとして別のインターフェイスを追加すると、2 つの既存のインスタンス間と同じポリシング レートが共有されます。 たとえば、5 Mbps のポリシング レートが 2 つのインスタンス間で共有され、3 番目のインスタンスにインターフェイスが追加されると、5 Mbps のポリシング レートが 3 つすべてのインスタンス間で共有されます。
トラフィックが F2 モジュール上の 2 つの異なるインスタンス間にある場合、ポリシング レートはインスタンス間で共有されません。 ポリシング レートは、同じインスタンス上のインターフェイス間でのみ共有されます。 たとえば、5 Mbps のポリシング レートをあるインスタンス上のインターフェイスに設定した場合、この 5 Mbps のポリシング レートは別のインスタンス上のインターフェイスとは共有されません。
ポリサーがトラフィック分類に MAC ACL を使用する場合、ポリサーは M1 モジュールおよび F2 モジュールにより別々に適用されます (適用は、mac packet-classify コマンドによって異なります)。
入力ポリシングは FEX ホスト ポートではサポートされていません。
デバイスによって作成されるポリサーのタイプは、以下の表に示す police コマンドの引数の組み合わせに基づきます。
(注) |
1 レート 3 カラーのポリシングを設定する場合は、pir と cir とでまったく同じ値を指定する必要があります。 |
引数 |
説明 |
||
---|---|---|---|
cir |
CIR(つまり、望ましい帯域幅)を、ビット レート、またはリンク レートの割合として指定します。 cir は必須ですが、引数そのものは省略可能です。 値の範囲は 1 ~ 80000000000 です。 ポリシング値の範囲は 8000 ~ 80 Gbps です。 |
||
percent |
レートを、インターフェイス レートの割合として指定します。 値の範囲は 1 ~ 100 です。 |
||
bc |
cir を超過できる量を、ビット レート、または cir 時の時間量として指定します。 デフォルトは、設定されたレートで 200 ミリ秒のトラフィックです。 デフォルトのデータ レートの単位はバイトであり、ギガビット/秒(Gbps)のレートはこのパラメータではサポートされていません。 |
||
pir |
PIR を、PIR ビット レート、またはリンク レートの割合として指定します。 デフォルトはありません。 値の範囲は 1 ~ 80000000000 です。ポリシング値の範囲は 8000 ~ 80 Gbps です。 割合値の範囲は 1 ~ 100% です。 |
||
be |
pir を超過できる量を、ビット レート、または pir 時の時間量として指定します。 bc 値を指定しない場合のデフォルトは、設定されたレートで 200 ミリ秒のトラフィックです。 デフォルトのデータ レートの単位はバイトであり、ギガビット/秒(Gbps)のレートはこのパラメータではサポートされていません。
|
||
conform |
トラフィックのデータ レートが制限内に収まっている場合に実行される単一のアクション。 基本的なアクションは transmit または以下の表(Conform に対するポリサー アクション)に一覧が示された set コマンドのいずれかです。 デフォルトは transmit です。 |
||
exceed |
トラフィックのデータ レートが超過した場合に実行される単一のアクション。 基本的なアクションは、廃棄またはマークダウンです。 デフォルトは drop です。 |
||
violate |
トラフィックのデータ レートが設定済みのレート値に違反した場合に実行される単一のアクション。 基本的なアクションは、廃棄またはマークダウンです。 デフォルトは drop です。 |
(注) |
カラー対応の police コマンドの引数の詳細については、「カラー対応ポリシングの設定」の項を参照してください。 |
上記の表に示した引数はすべて省略可能ですが、cir の値は指定する必要があります。 ここでは、cir はその値の内容を示しており、必ずしもキーワードそのものを示しているわけではありません。 これらの引数組み合わせと、その結果得られるポリサーのタイプおよびアクションを次の表に示します。
police の引数の有無 |
ポリサーのタイプ |
ポリサーのアクション |
||
---|---|---|---|---|
cir(ただし pir、be、または violate はなし) |
1 レート、2 カラー |
≤ cir の場合は conform、それ以外の場合は violate |
||
cir および pir |
1 レート、3 カラー |
≤ cir の場合は conform、≤ pir の場合は exceed、それ以外の場合は violate
|
||
cir および pir |
2 レート、3 カラー |
≤ cir の場合は conform、≤ pir の場合は exceed、それ以外の場合は violate |
指定できるポリサー アクションについては、次の 2 つの表で説明します。
Action |
説明 |
---|---|
drop |
パケットをドロップします。 このアクションは、パケットがパラメータを超過した場合またはパラメータに違反した場合にだけ使用できます。 |
set dscp dscp table {cir-markdown-map | pir-markdown-map} |
テーブル マップから指定したフィールドを設定して、パケットを送信します。 システム定義またはデフォルトのテーブル マップの詳細については、「マーキングの設定」を参照してください。このアクションは、パケットがパラメータを超過した場合(cir-markdown-map を使用)またはパラメータに違反した場合(pir-markdown-map を使用)にのみ、使用できます。 |
Action |
説明 |
---|---|
transmit |
パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。 |
set-prec-transmit |
IP precedence フィールドを指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。 |
set-dscp-transmit |
Diffserv コード ポイント(DSCP)フィールドを、指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。 |
set-cos-transmit |
サービス クラス(CoS)フィールドを、指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。 |
set-qos-transmit |
QoS グループ内部ラベルを指定した値に設定して、パケットを送信します。 このアクションは、入力ポリシーでだけ使用でき、パケットがパラメータに適合している場合にだけ使用できます。 |
set-discard-class-transmit |
廃棄クラス内部ラベルを指定した値に設定して、パケットを送信します。 このアクションは、入力ポリシーでだけ使用でき、パケットがパラメータに適合している場合にだけ使用できます。 |
(注) |
ポリサーは、指定したパラメータに対して超過または違反となっているパケットだけをドロップまたはマークダウンできます。 マーキング ダウン パケットについては、「マーキングの設定」を参照してください。 |
以下の表に、police コマンドで使用されるデータ レートを示します。
レート |
説明 |
---|---|
bps |
ビット/秒(デフォルト) |
kbps |
1,000 ビット/秒 |
mbps |
1,000,000 ビット/秒 |
gbps |
1,000,000,000 ビット/秒 |
以下の表に、police コマンドで使用されるバースト サイズを示します。
速度 |
説明 |
---|---|
bytes |
bytes |
kbytes |
1,000 バイト |
mbytes |
1,000,000 バイト |
ms |
milliseconds |
us |
microseconds |
(注) |
1 レート 3 カラーのポリシングを設定する場合は、pir と cir とでまったく同じ値を指定する必要があります。 |
次に、policy1 ポリシー マップ設定の表示方法例を示します。
switch# show policy-map policy1
カラー対応ポリシングでは、トラフィック クラス内の QoS DSCP フィールドが、ユーザがポリサーで使用できる値によって以前にマーキングされているものと見なされます。 この機能により、ネットワーク内のあるノードでトラフィックをマーキングしたあと、後続のノードでそのマーキングに基づいてアクションを実行できるようになります。
police コマンドの詳細については、「1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定」の項を参照してください。
police コマンドの 4 つのクラス マップ conform-color または exceed-color のうち 1 つまたは複数を使用して、カラー対応ポリシングを実行できます。 これらのキーワードでは、パケットの分類に使用されるクラス マップ名が必要です。 ユーザがクラス マップ内で指定した一致基準に基づいて、トラフィックはこれら 2 つのクラスのいずれかに分類されるか、一致がない場合は class-default に分類されます。 次に、ポリサーによって次のアクションが実行されます。
conform-color クラスに属するパケットは、police コマンドの cir および pir 引数を使用してポリシングされます。
exceed-color クラスに属するパケットは、police コマンドの pir 引数に対してだけポリシングされます。 pir を指定しない場合は、cir の値が使用されます。
conform-color クラスにも exceed-color クラスにも一致しなかったために最終的に class-default に分類されたパケットには、ただちに違反アクションが実行されます。
RFC 2697 および RFC 2698 の規定により、すべてのパケットに必ずカラーを割り当てなければならないため、class-default 以外のカラーを違反アクションに割り当てることはできません。
カラー対応ポリシングの DSCP 値に、指定した値を設定できます。 有効な DSCP 値の一覧を以下の表に示します。
値 |
DSCP 値のリスト |
---|---|
af11 |
AF11 dscp(001010):10 進値 10 |
af12 |
AF12 dscp(001100):10 進値 12 |
af13 |
AF13 dscp(001110):10 進値 14 |
af21 |
AF21 dscp(010010):10 進値 18 |
af22 |
AF22 dscp(010100):10 進値 20 |
af23 |
AF23 dscp(010110):10 進値 22 |
af31 |
AF31 dscp(011010):10 進値 26 |
af32 |
AF40 dscp(011100):10 進値 28 |
af33 |
AF33 dscp(011110):10 進値 30 |
af41 |
AF41 dscp(100010):10 進値 34 |
af42 |
AF42 dscp(100100):10 進値 36 |
af43 |
AF43 dscp(100110):10 進値 38 |
cs1 |
CS1(precedence 1)dscp(001000):10 進値 8 |
cs2 |
CS2(precedence 2)dscp(010000):10 進値 16 |
cs3 |
CS3(precedence 3)dscp(011000):10 進値 24 |
cs4 |
CS4(precedence 4)dscp(100000):10 進値 32 |
cs5 |
CS5(precedence 5)dscp(101000):10 進値 40 |
cs6 |
CS6(precedence 6)dscp(110000):10 進値 48 |
cs7 |
CS7(precedence 7)dscp(111000):10 進値 56 |
デフォルト |
デフォルト dscp(000000):10 進値 0 |
ef |
EF dscp(101110):10 進値 46 |
カラー対応ポリシングを適用すると、デバイス内のすべての一致するパケットが、カラー対応ポリサーの指定に従ってポリシングされます。
カラー対応ポリシングを設定するには以下を行います。
クラス マップを作成します。 クラス マップの設定については、「分類の設定」を参照してください。
ポリシー マップを作成します。 ポリシー マップについては、この章と「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
ここで説明する方法を使用して、カラー対応クラス マップを設定します。
サービス ポリシーをインターフェイスに適用します。 インターフェイスへのポリシーの付加については、「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
(注) |
共有ポリサーで指定したレートは、サービス ポリシーを適用したインターフェイスの数だけ共有されます。 共有ポリサーで指定するような独自の専用レートを各インターフェイスが指定することはありません。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# class-map {conform-color-in | conform-color-out | exceed-color-in | exceed-color-out} | カラー対応クラス マップにアクセスし、カラー マップ モードを開始します。 このコマンドを入力すると、次のメッセージが返されます。 Warning: Configuring match for any DSCP values in this class-map will make ALL policers in the system color-aware for those DSCP values. |
ステップ 3 | switch(config-color-map)# match dscp dscp-value | カラー対応ポリサーに対して照合する DSCP 値を指定します。 有効な値の一覧については、上記の表を参照してください。 |
ステップ 4 | switch(config-color-map)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} | qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。 |
ステップ 5 | switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] | class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。 |
ステップ 6 | switch(config-pmap-c-qos)# police [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {conform {transmit | set-prec-transmit | set-dscp-transmit | set-cos-transmit | set-qos-transmit | set-discard-class-transmit} [exceed {drop | set dscp dscp table {cir-markdown-map}} [violate {drop | set dscp dscp table {pir-markdown-map}}]]} | cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。 |
ステップ 7 | switch(config-color-map)# exit | カラー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。 |
ステップ 8 | switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] | (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。 |
ステップ 9 | switch(config)# copy running-config startup-config | (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。 |
次に、policy1 ポリシー マップ設定の表示方法例を示します。
switch# show policy-map policy1
QoS ポリシー マップをインターフェイスに付加することにより、その QoS ポリシー マップ内のポリシング命令を入力または出力パケットに適用できます。 入力または出力を選択するには、service-policy コマンドで input または output キーワードのいずれかを指定します。 インターフェイスに対する QoS ポリシー アクションの付加および消去については、「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
マークダウン ポリシングとは、ポリシングされたデータ レートに対してトラフィックが超過または違反している場合にパケット内の QoS フィールドを設定することです。 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 に示すポリシング アクションに対して set コマンドを使用することで、マークダウン ポリシングを設定できます。
ここで紹介する例では、テーブル マップを使用してマークダウンを実行する方法を示しています。
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} | qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。 |
ステップ 3 | switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] | class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。 |
ステップ 4 | switch(config-pmap-c-qos)# police [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {conform {transmit | set-prec-transmit | set-dscp-transmit | set-cos-transmit | set-qos-transmit | set-discard-class-transmit} [exceed {drop | set dscp dscp table {cir-markdown-map}} [violate {drop | set dscp dscp table {pir-markdown-map}}]]} | cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。 |
ステップ 5 | switch(config-pmap-c-qos)# exit | ポリシー マップ クラス コンフィギュレーション モードを終了し、ポリシー マップ モードを開始します。 |
ステップ 6 | switch(config-pmap-qos)# exit | ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。 |
ステップ 7 | switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] | (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。 |
ステップ 8 | switch(config)# copy running-config startup-config | (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。 |
次に、policy1 ポリシー マップ設定の表示方法例を示します。
switch# show policy-map policy1
共有ポリサー機能を使用すると、同じポリシング パラメータを複数のインターフェイスに同時に適用できます。 共有ポリサーを作成するには、ポリサーに名前を割り当て、指定したインターフェイスに付加したポリシー マップにそのポリサーを適用します。 シスコの他のマニュアルでは、共有ポリサーは名前付き集約ポリサーとも呼ばれています。
(注) |
共有ポリサーを設定したら、共有ポリサー名を使用して共有ポリシングのタイプを設定できます。これについては、「1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定」の項、「カラー対応ポリシングの設定」の項、「入力および出力ポリシングの設定」の項、および「マークダウン ポリシングの設定」の項で説明されています。 |
共有ポリシングを設定するには以下を行います。
ここで説明する方法を使用して、共有ポリサーを設定します。
クラス マップを作成します。 クラス マップの設定については、「分類の設定」を参照してください。
ポリシー マップを作成します。 ポリシー マップについては、この章と「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
ここで説明する方法を使用して、ポリシー マップから共有ポリサーを参照します。
サービス ポリシーをインターフェイスに適用します。 インターフェイスへのポリシーの付加については、「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
(注) |
共有ポリサーで指定したレートは、サービス ポリシーを適用したインターフェイスの数だけ共有されます。 共有ポリサーで指定するような独自の専用レートを各インターフェイスが指定することはありません。 |
コマンドまたはアクション | 目的 | |
---|---|---|
ステップ 1 | switch# configure terminal | グローバル コンフィギュレーション モードを開始します。 |
ステップ 2 | switch(config)# qos shared-policer [type qos] shared-policer-name [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {{conform conform-action [exceed {drop | set dscp dscp table cir-markdown-map} [violate {drop | set dscp dscp table pir-markdown-map}]]}} | 共有ポリサーを作成するか、共有ポリサーにアクセスします。 共有ポリサー名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。共有ポリサー名は大文字と小文字が区別され、最大 40 文字まで設定できます。 cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。 |
ステップ 3 | switch(config)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} | qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。 |
ステップ 4 | switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] | class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。 |
ステップ 5 | switch(config-pmap-c-qos)# police aggregate shared-policer-name | ポリシー マップ内で shared-policer-name への参照を作成します。 |
ステップ 6 | switch(config-pmap-c-qos)# exit | ポリシー マップ クラス コンフィギュレーション モードを終了し、ポリシー マップ モードを開始します。 |
ステップ 7 | switch(config-pmap-qos)# exit | ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。 |
ステップ 8 | switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] | (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。 |
ステップ 9 | switch(config)# copy running-config startup-config | (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。 |
次に、test1 共有ポリサー設定を表示する例を示します。
switch# show qos shared-policer test1
ポリシングの設定情報を表示するには、次の作業のいずれかを行います。
show policy-map |
ポリシー マップおよびポリシングについての情報を表示します。 |
show qos shared-policer [type qos] [policer-name] |
すべての共有ポリシングについての情報を表示します。 |
次に、1 レート、2 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy1 class one_rate_2_color_policer police cir 256000 conform transmit violate drop
次に、DSCP マークダウンを使用して 1 レート、2 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy2 class one_rate_2_color_policer_with_dscp_markdown police cir 256000 conform transmit violate drop
次に、1 レート、3 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy3 class one_rate_3_color_policer police cir 256000 pir 256000 conform transmit exceed set dscp dscp table cir-markdown-map violate drop
次に、2 レート、3 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy4 class two_rate_3_color_policer police cir 256000 pir 256000 conform transmit exceed set dscp dscp table cir-markdown-map violate drop
次に、指定の DSCP 値のカラー対応ポリサーにポリシングを設定する方法の例を示します。
configure terminal class-map conform-color-in match dscp 0-10 policy-map policy5 class one_rate_2_color_policer police cir 256000 conform transmit violate drop
次に、共有ポリサーにポリシングを設定する方法の例を示します。
configure terminal qos shared-policer type qos udp_10mbps cir 10 mbps pir 20 mbps conform transmit exceed set dscp dscp table cir-markdown-map violate drop policy-map type qos udp_policy class type qos udp_qos police aggregate udp_10mbps
以下の表に、このマニュアルで取り上げる新機能および変更された機能を要約し、各機能がサポートされているリリースを示します。 ご使用のソフトウェア リリースで、本書で説明されるすべての機能がサポートされているとは限りません。 最新の警告および機能情報については、https://tools.cisco.com/bugsearch/ の Bug Search Tool およびご使用のソフトウェア リリースのリリース ノートを参照してください。
機能名 |
リリース |
機能情報 |
---|---|---|
リリース 4.1(2) からの変更はなし |
5.1(1) |
—— |
目次
この章では、Cisco NX-OS デバイス上でトラフィック クラスのポリシングを設定する方法について説明します。
機能情報の確認
ご使用のソフトウェア リリースで、このモジュールで説明されるすべての機能がサポートされているとは限りません。 最新の警告および機能情報については、https://tools.cisco.com/bugsearch/ の Bug Search Tool およびご使用のソフトウェア リリースのリリース ノートを参照してください。 このモジュールに記載されている機能の詳細、および各機能がサポートされているリリースのリストについては、「新規および変更された情報(New and Changed Information)」の章または以下の「機能の履歴」表を参照してください。
ポリシングに関する情報
ポリシングとは、トラフィックの特定のクラスについて、そのデータ レートをモニタすることです。 データ レートがユーザ設定値を超えると、ただちにパケットのマーキングまたはドロップが発生します。 ポリシングではトラフィックがバッファリングされないため、伝搬遅延への影響はありません。 トラフィックがデータ レートを超えた場合に、パケットをドロップするかパケット内の Quality of Service(QoS)フィールドをマーキングするかを、ユーザがシステムに指示します。
シングルレート、デュアルレート、およびカラー対応のポリサーを定義できます。
シングルレート ポリサーは、トラフィックの認定情報レート(CIR)をモニタします。 デュアルレート ポリサーは、CIR と最大情報レート(PIR)の両方をモニタします。 また、システムは、関連するバースト サイズもモニタします。 指定したデータ レート パラメータに応じて、適合(グリーン)、超過(イエロー)、違反(レッド)の 3 つのカラー、つまり条件が、パケットごとにポリサーによって決定されます。
各条件について設定できるアクションは 1 つだけです。 たとえば、最大 200 ミリ秒のバーストで、256,000 bps のデータ レートに適合するように、クラス内のトラフィックをポリシングするとします。 この場合、システムは、このレートの範囲内のトラフィックに対して適合アクションを適用し、このレートを超えるトラフィックに対して違反アクションを適用します。
カラー対応ポリサーは、トラフィックが以前にカラーによってすでにマーキングされているものと見なします。 次に、このタイプのポリサーが実行するアクションの中で、その情報が使用されます。
ポリサーの詳細については、Request For Comments(RFC)2697 および RFC 2698 を参照してください。
共有ポリサー
QoS では、一致したトラフィック内のすべてのフローに対して、共有ポリサー内で指定された帯域幅上限が累積的に適用されます。 共有ポリサーによって、同一のポリサーが複数のインターフェイスに同時に適用されます。
たとえば、VLAN 1 および VLAN 3 上のすべての Trivial File Transfer Protocol(TFTP)トラフィック フローについて 1 Mbps を許可するように共有ポリサーを設定した場合、デバイスでは、VLAN 1 および VLAN 3 上で結合されるすべてのフローについて、TFTP トラフィックが 1 Mbps に制限されます。
共有ポリサーを設定する際の注意事項を次に示します。
名前付き共有ポリサーを作成するには、qos shared-policer コマンドを入力します。 共有ポリサーを作成し、その共有ポリサーを使用するポリシーを作成して、そのポリシーを複数の入力ポートに付加した場合、デバイスでは、その付加先となっているすべての入力ポートからの一致するトラフィックがポリシングされます。
共有ポリサーはポリシング コマンドの中のポリシー マップ クラスで定義します。 名前付き共有ポリサーを複数の入力ポートに付加した場合、デバイスでは、その付加先となっているすべての入力ポートからの一致するトラフィックがポリシングされます。
共有ポリサーはモジュールごとに独立して機能します。
注意事項と制約事項
ポリシング設定時の注意事項と制約事項は次のとおりです。
F1 モジュールはポリシングをサポートしません。
ポリシングはモジュールごとに独立して実行されます。このことは、複数のモジュールにわたって分散しているトラフィックに適用される QoS 機能に影響を与える可能性があります。 このような QoS 機能の例を次に示します。
入力と出力のどちらの方向についても、すべてのポリサーで同じモードを使用する必要があります。 たとえば、クラスに対してカラー対応モードが必要な場合、そのポリシー内で同じ方向のすべてのクラスをカラー対応モードにする必要があります。
モジュール上の 2 つの異なるポート ASIC のインスタンス間のトラフィックのポリシング レートは、M1 モジュールおよび F2 モジュールに対し別々に設定されます。
トラフィックが M1 モジュール上の 2 つの異なるインスタンス間にある場合、ポリシング レートはインスタンス間で共有されます。 3 番目のインスタンスとして別のインターフェイスを追加すると、2 つの既存のインスタンス間と同じポリシング レートが共有されます。 たとえば、5 Mbps のポリシング レートが 2 つのインスタンス間で共有され、3 番目のインスタンスにインターフェイスが追加されると、5 Mbps のポリシング レートが 3 つすべてのインスタンス間で共有されます。
トラフィックが F2 モジュール上の 2 つの異なるインスタンス間にある場合、ポリシング レートはインスタンス間で共有されません。 ポリシング レートは、同じインスタンス上のインターフェイス間でのみ共有されます。 たとえば、5 Mbps のポリシング レートをあるインスタンス上のインターフェイスに設定した場合、この 5 Mbps のポリシング レートは別のインスタンス上のインターフェイスとは共有されません。
ポリサーがトラフィック分類に MAC ACL を使用する場合、ポリサーは M1 モジュールおよび F2 モジュールにより別々に適用されます (適用は、mac packet-classify コマンドによって異なります)。
入力ポリシングは FEX ホスト ポートではサポートされていません。
1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定
手順デバイスによって作成されるポリサーのタイプは、以下の表に示す police コマンドの引数の組み合わせに基づきます。
(注)
1 レート 3 カラーのポリシングを設定する場合は、pir と cir とでまったく同じ値を指定する必要があります。
表 1 police コマンドの引数 引数
説明
cir
CIR(つまり、望ましい帯域幅)を、ビット レート、またはリンク レートの割合として指定します。 cir は必須ですが、引数そのものは省略可能です。 値の範囲は 1 ~ 80000000000 です。 ポリシング値の範囲は 8000 ~ 80 Gbps です。
percent
レートを、インターフェイス レートの割合として指定します。 値の範囲は 1 ~ 100 です。
bc
cir を超過できる量を、ビット レート、または cir 時の時間量として指定します。 デフォルトは、設定されたレートで 200 ミリ秒のトラフィックです。 デフォルトのデータ レートの単位はバイトであり、ギガビット/秒(Gbps)のレートはこのパラメータではサポートされていません。
pir
PIR を、PIR ビット レート、またはリンク レートの割合として指定します。 デフォルトはありません。 値の範囲は 1 ~ 80000000000 です。ポリシング値の範囲は 8000 ~ 80 Gbps です。 割合値の範囲は 1 ~ 100% です。
be
pir を超過できる量を、ビット レート、または pir 時の時間量として指定します。 bc 値を指定しない場合のデフォルトは、設定されたレートで 200 ミリ秒のトラフィックです。 デフォルトのデータ レートの単位はバイトであり、ギガビット/秒(Gbps)のレートはこのパラメータではサポートされていません。
(注) pir の値は、デバイスによってこの引数が表示される前に指定する必要があります。
conform
トラフィックのデータ レートが制限内に収まっている場合に実行される単一のアクション。 基本的なアクションは transmit または以下の表(Conform に対するポリサー アクション)に一覧が示された set コマンドのいずれかです。 デフォルトは transmit です。
exceed
トラフィックのデータ レートが超過した場合に実行される単一のアクション。 基本的なアクションは、廃棄またはマークダウンです。 デフォルトは drop です。
violate
トラフィックのデータ レートが設定済みのレート値に違反した場合に実行される単一のアクション。 基本的なアクションは、廃棄またはマークダウンです。 デフォルトは drop です。
(注)
カラー対応の police コマンドの引数の詳細については、「カラー対応ポリシングの設定」の項を参照してください。
上記の表に示した引数はすべて省略可能ですが、cir の値は指定する必要があります。 ここでは、cir はその値の内容を示しており、必ずしもキーワードそのものを示しているわけではありません。 これらの引数組み合わせと、その結果得られるポリサーのタイプおよびアクションを次の表に示します。
表 2 police の引数の有無から得られるポリサーのタイプおよびアクション police の引数の有無
ポリサーのタイプ
ポリサーのアクション
cir(ただし pir、be、または violate はなし)
1 レート、2 カラー
≤ cir の場合は conform、それ以外の場合は violate
cir および pir
1 レート、3 カラー
≤ cir の場合は conform、≤ pir の場合は exceed、それ以外の場合は violate
(注) cir と pir に同一の値を指定する必要があります。
cir および pir
2 レート、3 カラー
≤ cir の場合は conform、≤ pir の場合は exceed、それ以外の場合は violate
指定できるポリサー アクションについては、次の 2 つの表で説明します。
表 3 Exceed または Violate に対するポリサー アクション Action
説明
drop
パケットをドロップします。 このアクションは、パケットがパラメータを超過した場合またはパラメータに違反した場合にだけ使用できます。
set dscp dscp table {cir-markdown-map | pir-markdown-map}
テーブル マップから指定したフィールドを設定して、パケットを送信します。 システム定義またはデフォルトのテーブル マップの詳細については、「マーキングの設定」を参照してください。このアクションは、パケットがパラメータを超過した場合(cir-markdown-map を使用)またはパラメータに違反した場合(pir-markdown-map を使用)にのみ、使用できます。
表 4 conform に対するポリサー アクション Action
説明
transmit
パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。
set-prec-transmit
IP precedence フィールドを指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。
set-dscp-transmit
Diffserv コード ポイント(DSCP)フィールドを、指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。
set-cos-transmit
サービス クラス(CoS)フィールドを、指定した値に設定して、パケットを送信します。 このアクションは、パケットがパラメータに適合している場合にだけ使用できます。
set-qos-transmit
QoS グループ内部ラベルを指定した値に設定して、パケットを送信します。 このアクションは、入力ポリシーでだけ使用でき、パケットがパラメータに適合している場合にだけ使用できます。
set-discard-class-transmit
廃棄クラス内部ラベルを指定した値に設定して、パケットを送信します。 このアクションは、入力ポリシーでだけ使用でき、パケットがパラメータに適合している場合にだけ使用できます。
(注)
ポリサーは、指定したパラメータに対して超過または違反となっているパケットだけをドロップまたはマークダウンできます。 マーキング ダウン パケットについては、「マーキングの設定」を参照してください。
以下の表に、police コマンドで使用されるデータ レートを示します。
表 5 police コマンドのデータ レート レート
説明
bps
ビット/秒(デフォルト)
kbps
1,000 ビット/秒
mbps
1,000,000 ビット/秒
gbps
1,000,000,000 ビット/秒
以下の表に、police コマンドで使用されるバースト サイズを示します。
表 6 police コマンドのバースト サイズ 速度
説明
bytes
bytes
kbytes
1,000 バイト
mbytes
1,000,000 バイト
ms
milliseconds
us
microseconds
(注)
1 レート 3 カラーのポリシングを設定する場合は、pir と cir とでまったく同じ値を指定する必要があります。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。
ステップ 3 switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。
ステップ 4 switch(config-pmap-c-qos)# police [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {conform {transmit | set-prec-transmit | set-dscp-transmit | set-cos-transmit | set-qos-transmit | set-discard-class-transmit} [exceed {drop | set dscp dscp table {cir-markdown-map}} [violate {drop | set dscp dscp table {pir-markdown-map}}]]} cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の表を参照してください。
(注) cir と pir に同一の値を指定する必要があります。
ステップ 5 switch(config-pmap-c-qos)# exit ポリシー マップ クラス コンフィギュレーション モードを終了し、ポリシー マップ モードを開始します。
ステップ 6 switch(config-pmap-qos)# exit ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。
ステップ 7 switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。
ステップ 8 switch(config)# copy running-config startup-config (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。
カラー対応ポリシングの設定
手順カラー対応ポリシングでは、トラフィック クラス内の QoS DSCP フィールドが、ユーザがポリサーで使用できる値によって以前にマーキングされているものと見なされます。 この機能により、ネットワーク内のあるノードでトラフィックをマーキングしたあと、後続のノードでそのマーキングに基づいてアクションを実行できるようになります。
police コマンドの詳細については、「1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定」の項を参照してください。
police コマンドの 4 つのクラス マップ conform-color または exceed-color のうち 1 つまたは複数を使用して、カラー対応ポリシングを実行できます。 これらのキーワードでは、パケットの分類に使用されるクラス マップ名が必要です。 ユーザがクラス マップ内で指定した一致基準に基づいて、トラフィックはこれら 2 つのクラスのいずれかに分類されるか、一致がない場合は class-default に分類されます。 次に、ポリサーによって次のアクションが実行されます。
conform-color クラスに属するパケットは、police コマンドの cir および pir 引数を使用してポリシングされます。
exceed-color クラスに属するパケットは、police コマンドの pir 引数に対してだけポリシングされます。 pir を指定しない場合は、cir の値が使用されます。
conform-color クラスにも exceed-color クラスにも一致しなかったために最終的に class-default に分類されたパケットには、ただちに違反アクションが実行されます。
RFC 2697 および RFC 2698 の規定により、すべてのパケットに必ずカラーを割り当てなければならないため、class-default 以外のカラーを違反アクションに割り当てることはできません。
カラー対応ポリシングの DSCP 値に、指定した値を設定できます。 有効な DSCP 値の一覧を以下の表に示します。
表 7 カラー対応ポリシングの有効な DSCP 値 値
DSCP 値のリスト
af11
AF11 dscp(001010):10 進値 10
af12
AF12 dscp(001100):10 進値 12
af13
AF13 dscp(001110):10 進値 14
af21
AF21 dscp(010010):10 進値 18
af22
AF22 dscp(010100):10 進値 20
af23
AF23 dscp(010110):10 進値 22
af31
AF31 dscp(011010):10 進値 26
af32
AF40 dscp(011100):10 進値 28
af33
AF33 dscp(011110):10 進値 30
af41
AF41 dscp(100010):10 進値 34
af42
AF42 dscp(100100):10 進値 36
af43
AF43 dscp(100110):10 進値 38
cs1
CS1(precedence 1)dscp(001000):10 進値 8
cs2
CS2(precedence 2)dscp(010000):10 進値 16
cs3
CS3(precedence 3)dscp(011000):10 進値 24
cs4
CS4(precedence 4)dscp(100000):10 進値 32
cs5
CS5(precedence 5)dscp(101000):10 進値 40
cs6
CS6(precedence 6)dscp(110000):10 進値 48
cs7
CS7(precedence 7)dscp(111000):10 進値 56
デフォルト
デフォルト dscp(000000):10 進値 0
ef
EF dscp(101110):10 進値 46
カラー対応ポリシングを適用すると、デバイス内のすべての一致するパケットが、カラー対応ポリサーの指定に従ってポリシングされます。
カラー対応ポリシングを設定するには以下を行います。
クラス マップを作成します。 クラス マップの設定については、「分類の設定」を参照してください。
ポリシー マップを作成します。 ポリシー マップについては、この章と「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
ここで説明する方法を使用して、カラー対応クラス マップを設定します。
サービス ポリシーをインターフェイスに適用します。 インターフェイスへのポリシーの付加については、「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
(注)
共有ポリサーで指定したレートは、サービス ポリシーを適用したインターフェイスの数だけ共有されます。 共有ポリサーで指定するような独自の専用レートを各インターフェイスが指定することはありません。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# class-map {conform-color-in | conform-color-out | exceed-color-in | exceed-color-out} カラー対応クラス マップにアクセスし、カラー マップ モードを開始します。 このコマンドを入力すると、次のメッセージが返されます。
Warning: Configuring match for any DSCP values in this class-map will make ALL policers in the system color-aware for those DSCP values.ステップ 3 switch(config-color-map)# match dscp dscp-value カラー対応ポリサーに対して照合する DSCP 値を指定します。 有効な値の一覧については、上記の表を参照してください。
ステップ 4 switch(config-color-map)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。
ステップ 5 switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。
ステップ 6 switch(config-pmap-c-qos)# police [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {conform {transmit | set-prec-transmit | set-dscp-transmit | set-cos-transmit | set-qos-transmit | set-discard-class-transmit} [exceed {drop | set dscp dscp table {cir-markdown-map}} [violate {drop | set dscp dscp table {pir-markdown-map}}]]} cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。
ステップ 7 switch(config-color-map)# exit カラー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。
ステップ 8 switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。
ステップ 9 switch(config)# copy running-config startup-config (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。
マークダウン ポリシングの設定
手順マークダウン ポリシングとは、ポリシングされたデータ レートに対してトラフィックが超過または違反している場合にパケット内の QoS フィールドを設定することです。 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 に示すポリシング アクションに対して set コマンドを使用することで、マークダウン ポリシングを設定できます。
ここで紹介する例では、テーブル マップを使用してマークダウンを実行する方法を示しています。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。
ステップ 3 switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。
ステップ 4 switch(config-pmap-c-qos)# police [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {conform {transmit | set-prec-transmit | set-dscp-transmit | set-cos-transmit | set-qos-transmit | set-discard-class-transmit} [exceed {drop | set dscp dscp table {cir-markdown-map}} [violate {drop | set dscp dscp table {pir-markdown-map}}]]} cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。
ステップ 5 switch(config-pmap-c-qos)# exit ポリシー マップ クラス コンフィギュレーション モードを終了し、ポリシー マップ モードを開始します。
ステップ 6 switch(config-pmap-qos)# exit ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。
ステップ 7 switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。
ステップ 8 switch(config)# copy running-config startup-config (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。
共有ポリサーの設定
手順共有ポリサー機能を使用すると、同じポリシング パラメータを複数のインターフェイスに同時に適用できます。 共有ポリサーを作成するには、ポリサーに名前を割り当て、指定したインターフェイスに付加したポリシー マップにそのポリサーを適用します。 シスコの他のマニュアルでは、共有ポリサーは名前付き集約ポリサーとも呼ばれています。
(注)
共有ポリサーを設定したら、共有ポリサー名を使用して共有ポリシングのタイプを設定できます。これについては、「1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定」の項、「カラー対応ポリシングの設定」の項、「入力および出力ポリシングの設定」の項、および「マークダウン ポリシングの設定」の項で説明されています。
共有ポリシングを設定するには以下を行います。
ここで説明する方法を使用して、共有ポリサーを設定します。
クラス マップを作成します。 クラス マップの設定については、「分類の設定」を参照してください。
ポリシー マップを作成します。 ポリシー マップについては、この章と「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
ここで説明する方法を使用して、ポリシー マップから共有ポリサーを参照します。
サービス ポリシーをインターフェイスに適用します。 インターフェイスへのポリシーの付加については、「モジュラ QoS コマンドライン インターフェイスの使用」を参照してください。
(注)
共有ポリサーで指定したレートは、サービス ポリシーを適用したインターフェイスの数だけ共有されます。 共有ポリサーで指定するような独自の専用レートを各インターフェイスが指定することはありません。
コマンドまたはアクション 目的 ステップ 1 switch# configure terminal グローバル コンフィギュレーション モードを開始します。
ステップ 2 switch(config)# qos shared-policer [type qos] shared-policer-name [cir] {committed-rate [data-rate] | percent cir-link-percent} [bc committed-burst-rate [link-speed]] [pir] {peak-rate [data-rate] | percent cir-link-percent} [be peak-burst-rate [link-speed]] {{conform conform-action [exceed {drop | set dscp dscp table cir-markdown-map} [violate {drop | set dscp dscp table pir-markdown-map}]]}} 共有ポリサーを作成するか、共有ポリサーにアクセスします。 共有ポリサー名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。共有ポリサー名は大文字と小文字が区別され、最大 40 文字まで設定できます。 cir をビット数で、またはリンク レートの割合としてポリシングします。 データ レートが ≤ cir ならば、conform アクションが実行されます。 be および pir を指定しない場合は、他のすべてのトラフィックで violate アクションが実行されます。 be または violate を指定した場合は、データ レート ≤ pir ならば exceed アクションが実行され、それ以外ならば violate アクションが実行されます。 アクション、データ レート、リンク速度については、上記の 1 レートおよび 2 レート、2 カラーおよび 3 カラーのポリシングの設定 を参照してください。
ステップ 3 switch(config)# policy-map [type qos] [match-first] {qos-policy-map-name | qos-dynamic} qos-policy-map-name という名前のポリシー マップを作成するか、そのポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。
ステップ 4 switch(config-pmap-qos)# class [type qos] {class-map-name | qos-dynamic | class-default} [insert-before before-class-map-name] class-map-name への参照を作成し、ポリシー マップ クラス コンフィギュレーション モードを開始します。 insert-before を使用して事前挿入するクラスを指定しない限り、ポリシー マップの末尾にクラスが追加されます。 ポリシー マップ内のクラスと現在一致していないトラフィックをすべて選択するには、class-default キーワードを使用します。
ステップ 5 switch(config-pmap-c-qos)# police aggregate shared-policer-name ポリシー マップ内で shared-policer-name への参照を作成します。
ステップ 6 switch(config-pmap-c-qos)# exit ポリシー マップ クラス コンフィギュレーション モードを終了し、ポリシー マップ モードを開始します。
ステップ 7 switch(config-pmap-qos)# exit ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。
ステップ 8 switch(config)# show policy-map [type qos] [policy-map-name | qos-dynamic] (任意) 設定済みのすべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップについて情報を表示します。
ステップ 9 switch(config)# copy running-config startup-config (任意) 実行中の設定をスタートアップ コンフィギュレーションに保存します。
ポリシングの設定例
次に、1 レート、2 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy1 class one_rate_2_color_policer police cir 256000 conform transmit violate drop次に、DSCP マークダウンを使用して 1 レート、2 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy2 class one_rate_2_color_policer_with_dscp_markdown police cir 256000 conform transmit violate drop次に、1 レート、3 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy3 class one_rate_3_color_policer police cir 256000 pir 256000 conform transmit exceed set dscp dscp table cir-markdown-map violate drop次に、2 レート、3 カラーのポリサーにポリシングを設定する方法の例を示します。
configure terminal policy-map policy4 class two_rate_3_color_policer police cir 256000 pir 256000 conform transmit exceed set dscp dscp table cir-markdown-map violate drop次に、指定の DSCP 値のカラー対応ポリサーにポリシングを設定する方法の例を示します。
configure terminal class-map conform-color-in match dscp 0-10 policy-map policy5 class one_rate_2_color_policer police cir 256000 conform transmit violate drop次に、共有ポリサーにポリシングを設定する方法の例を示します。
configure terminal qos shared-policer type qos udp_10mbps cir 10 mbps pir 20 mbps conform transmit exceed set dscp dscp table cir-markdown-map violate drop policy-map type qos udp_policy class type qos udp_qos police aggregate udp_10mbpsポリシングの機能履歴
以下の表に、このマニュアルで取り上げる新機能および変更された機能を要約し、各機能がサポートされているリリースを示します。 ご使用のソフトウェア リリースで、本書で説明されるすべての機能がサポートされているとは限りません。 最新の警告および機能情報については、https://tools.cisco.com/bugsearch/ の Bug Search Tool およびご使用のソフトウェア リリースのリリース ノートを参照してください。