QoS:ポリシングおよびシェーピング コンフィギュレーション ガイド Cisco IOS XE Release 3S(Cisco ASR 1000)
階層型 Color-Aware ポリシング
階層型 Color-Aware ポリシング

目次

階層型 Color-Aware ポリシング

階層型 Color-Aware ポリシング機能は、2 つのレベルでポリシングを指定し、子から親の順でポリサーを評価して、親レベルで特定のトラフィックを優先的に処理します。 Cisco IOS XE Release 3.2S 以降、Cisco ASR 1000 シリーズ アグリゲーション サービス ルータで、次のサポートと変更によってこの機能が使用できるようになりました。

  • 階層型ポリシーでデータプレーンのポリシング順序を逆にして、子から親の順にポリシングが評価されます。 以前のリリースでは、親から子の順にポリシーが評価されます。

  • Quality of Service(QoS)ポリシーに含まれる Color-Aware ポリシング(RFC 2697 および RFC 2698)の限定サポート。

機能情報の確認

ご使用のソフトウェア リリースでは、このモジュールで説明されるすべての機能がサポートされているとは限りません。 最新の機能情報および警告については、使用するプラットフォームおよびソフトウェア リリースの Bug Search Tool およびリリース ノートを参照してください。 このモジュールに記載されている機能の詳細を検索し、各機能がサポートされているリリースのリストを確認する場合は、このモジュールの最後にある機能情報の表を参照してください。

プラットフォームのサポートおよびシスコ ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。 Cisco Feature Navigator にアクセスするには、www.cisco.com/​go/​cfn に移動します。 Cisco.com のアカウントは必要ありません。

階層型カラーアウェア ポリシングの前提条件

Cisco ASR 1000 シリーズ ルータに Cisco IOS XE Release 3.2S 以降のバージョンがインストールされて稼働中になっている必要があります。

モジュラ QoS CLI(MQC)、マスター制御プロセッサ(MCP)ソフトウェアおよびハードウェア アーキテクチャなどの関連する機能と技術について十分理解している必要があります。 その他の関連資料では、関連する機能と技術の参照先ドキュメントをリストしています。

階層型カラーアウェア ポリシングに関する制約事項

階層型カラーアウェア ポリシング機能には、次の制約事項が適用されます。

  • カラーアウェア クラス マップは、QoS グループの照合のみをサポートします。

  • カラーアウェア クラスごとに 1 つのフィルタ(1 つの match 文)のみがサポートされます。

  • カラーアウェア統計情報はサポートされていません。既存のポリサー統計情報のみがサポートされます。

  • カラーアウェア クラス マップがカラーアウェア ポリサーで参照されている間は、(no class-map class-map-name コマンドを使って)そのクラス マップを削除することができません。 (最初に no conform-color class-map-name または no exceed-color class-map-name コマンドを使用して)すべてのカラーアウェア ポリサーからそれを削除する必要があります。

  • 子から親への順序をサポートするために、階層型ポリサーが持続的に逆順で評価されます(設定不能)。

階層型 Color-Aware ポリシングについて

階層順ポリシング

Cisco IOS XE Release 3.2S より前では、Cisco ASR 1000 シリーズ プラットフォームでサポートされる階層型ポリシーのポリサーは、親から子の順に評価されていました。 階層型 Color-Aware ポリシング機能の導入により、評価順序が逆になり、QoS ポリシーのポリサーは子から親の順に評価されるようになりました。 この順序はデフォルト動作に関する固定的な変更であり、設定可能ではありません。 逆順のポリシング機能は、入力方向と出力方向の両方で共有されます。

次の例のような単純な 2 レベルのポリサー設定では、次の図に示されるように動作が変更されます。

policy-map child
 class user1
  police 100k
 class user2
  police 100k
policy-map parent
 class class-default
  police 150k
  service-policy child



制限付き Color-Aware ポリシング

次の例のような単純な 2 レベルの Color-Aware ポリサー設定では、次の図に示されるように動作が変更されます。

ip access-list extended user1-acl
 permit ip host 192.168.1.1 any
 permit ip host 192.168.1.2 any
ip access-list extended user2-acl
 permit ip host 192.168.2.1 any
 permit ip host 192.168.2.2 any
class-map match-all user1-acl-child
  match access-group name user1-acl
class-map match-all user2-acl-child
  match access-group name user2-acl
class-map match-all hipri-conform
 match qos-group 5
policy-map child-policy
 class user1-acl-child
   police 10000 bc 1500
    conform-action set-qos-transmit 5
class user2-acl-child
   police 20000 bc 1500
    conform-action set-qos-transmit 5
class class-default
   police 50000 bc 1500
policy-map parent-policy
 class class-default
  police 50000 bc 3000
   exceed-action transmit
   violate-action drop
   conform-color hipri-conform
  service-policy child-policy
図 1. 単純な 2 レベルの Color-Aware ポリサー


(注)  


「準拠」する子トラフィックが親レベルでドロップされないようにするために、親ポリシーのレートとバーストを、子ポリシーの準拠レートおよびバースト サイズの合計以上の値に設定する必要があります。 コード内には、(親と子の間で)不適切なレートおよびバースト サイズの検査が含まれていません。 この制約事項を考慮した上で、適切に設定する必要があります。 次の例では、明示的なマーキング アクションが Color-Aware ポリシングとの組み合わせでサポートされ、Color-Aware ポリサーのマーキング アクションと同じように機能します。 これらのマーキング アクション(たとえば「set qos-group」)が子ポリシーに含まれる場合、最終的なビット値は親 Color-Aware ポリサーによって評価されます(子ポリサー マーキング アクションの場合と同じ):計算式は 50k >= 10k (user1-acl-child) + 20k (user2-acl-child) です。


子クラスと親クラスでのトラフィック ポリシング

階層型カラーアウェア ポリシング機能がリリースされるまで、通常はポリシングおよびマーキングが入力 QoS オプションとして使用されていました。 たとえば、音声カスタマーの音声制御は 112 kb/s に、音声トラフィックは 200 Kbps に制限されていました。 class-default クラスには、ポリサーがありません。 唯一の制限は、xDSL 接続の物理的な帯域幅です。 次の図に示すように、カスタマーは 1000 kb/s まで送信できます。 ただし、これにはより多くの音声パケットと音声制御パケットの送信が伴うため、両方のクラスのトラフィックのポリシングが必要でした。

図 2. 子クラスでのトラフィック ポリシング

次の図に示すように、入力帯域幅全体を制御することが重要です。 重要な要件は、全体的な制限においてプレミアム トラフィックに影響が及ばないことです。 次の図では、音声パケットと音声制御パケットは全体的な制限においてドロップされません。 制限を満たすために、子 class-default クラスからのパケットだけがドロップされます。

図 3. 親クラスでのトラフィック ポリシング

最初のクラスは同じように機能します。 音声および音声制御は許容レベルにポリシングされ、class-default クラスは影響を受けません。 次のレベルでは、全体的な帯域幅が 500 kb/s に制限され、class-default クラスからのパケットだけをドロップする必要があります。 音声および音声制御に影響が及ばないようにする必要があります。

ポリサーの実行順序は次のとおりです。

  1. 子クラスのトラフィックをポリシングします(上の図を参照)。VoIP-Control クラスを 112 kb/s に、VoIP クラスを 200 kb/s に、class-default クラスを 500 kb/s にポリシングします。

  2. 親ポリシー マップの class-default クラスのトラフィックをポリシングします。ただし、子 class-default クラスからのトラフィックのみをドロップし、その他の子クラスはドロップしません。 上の図に示すように、112 Kb/s の VoIP-Control および 200 kb/s の VoIP トラフィックは親ポリシーで影響を受けませんが、500 kb/s の子 class-default クラスは、親レベルでの全体的ポリシング ポリシー 500 kb/s に適合させるために 188 kb/s にポリシングされます。

階層型 Color-Aware ポリシングの設定方法

階層型カラーアウェア ポリシング機能の設定

手順の概要

    1.    enable

    2.    configure terminal

    3.    policy-map policy-map-name

    4.    class {class-name | class-default [fragment fragment-class-name]} [insert-before class-name] [service-fragment fragment-class-name]

    5.    police [cir cir][bc conform-burst] [pir pir][be peak-burst] [conform-action action [exceed-action action [violate-action action]]][conform-color hipri-conform]

    6.    service-policy policy-map-name

    7.    end


手順の詳細
     コマンドまたはアクション目的
    ステップ 1 enable


    例:
    Router> enable
     

    特権 EXEC モードをイネーブルにします。

    • パスワードを入力します(要求された場合)。

     
    ステップ 2 configure terminal


    例:
    Router# configure terminal
     

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

     
    ステップ 3 policy-map policy-map-name


    例:
    Router(config)# policy-map parent-policy
     

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

     
    ステップ 4 class {class-name | class-default [fragment fragment-class-name]} [insert-before class-name] [service-fragment fragment-class-name]


    例:
    Router(config-pmap)# class class-default
     

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

    • 作成または変更するポリシーのクラス名を指定するか、ポリシーを指定する前にデフォルト クラス(一般に class-default クラスといいます)を指定します。 作成または変更する子クラスまたは親クラスを指定するのに必要な回数だけ、このコマンドを繰り返してください。

    • class name:設定するクラス、またはポリシーを編集するクラスの名前。 クラス名は、クラス マップに使用するとともに、ポリシー マップのクラスにポリシーを設定する場合にも使用します。

    • class-default :デフォルト クラスのポリシーを設定または変更できるようにデフォルト クラスを指定します。

    • fragment fragment-class-name :(オプション)デフォルト トラフィック クラスをフラグメントとして指定し、フラグメント トラフィック クラスに名前を付けます。

    • insert-before class-name :(オプション)既存の 2 つのクラス マップ間のクラス マップを追加します。 既存の 2 つのクラス マップ間に新しいクラス マップを挿入すると、既存のポリシー マップ設定をより柔軟に変更できるようになります。 このオプションを指定しない場合、クラス マップはポリシー マップの末尾に付加されます。

    (注)     

    このキーワードは、Flexible Packet Matching(FPM)ポリシーでだけサポートされています。

    • service-fragment fragment-class-name :(オプション)クラスがフラグメントのコレクションを分類することを指定します。 このクラスにより分類されるフラグメントは、すべて同じフラグメント クラス名を共有している必要があります。

     
    ステップ 5 police [cir cir][bc conform-burst] [pir pir][be peak-burst] [conform-action action [exceed-action action [violate-action action]]][conform-color hipri-conform]


    例:
    Router(config-pmap-c)# police 50000 bc 3000 Router(config-pmap-c-police)# exceed-action transmit


    例:
    Router(config-pmap-c-police)# violate-action drop


    例:
    Router(config-pmap-c-police)# conform-color hipri-conform
     

    トラフィック ポリシングを設定し、指定のレートに準拠、超過、または違反としてマーク付けされたパケットに適用する複数のアクションを指定します。

    • ポリシー マップ クラス ポリス コンフィギュレーション モードを開始します。 1 つのアクションにつき 1 行を使用して、アクションを指定します。

    • cir :認定情報レート。 CIR がトラフィック ポリシングに使用されることを示します。

    • conform-action :(オプション)準拠バーストを下回るレートのパケットに対して実行するアクション。

    • exceed-action :(オプション)準拠バースト以上で、準拠バーストと超過バーストの合計以下のレートのパケットに対して実行するアクション。

    • violate-action :(オプション)準拠バーストと超過バーストの合計を上回るレートのパケットに対して実行するアクション。 violate-action を指定する前に、exceed-action を指定する必要があります。

    • conform-color :(オプション)カラーアウェア ポリシングを(設定中のポリサーで)イネーブルにし、適合カラーの判別に使用するクラス マップを割り当てます。 hipri-conform キーワードは、使用する(class-map で設定済みの)クラス マップです。

     
    ステップ 6 service-policy policy-map-name


    例:
    Router(config-pmap-c-police)# service-policy child-policy
     

    サービス ポリシーをポリシー マップに含まれる QoS ポリシー(階層型サービス ポリシー)として指定します。

    • policy-map-name :QoS ポリシーとして使用する定義済みのポリシー マップの名前。 名前には最大 40 文字までの英数字を指定できます。

     
    ステップ 7 end


    例:
    Router(config-pmap-c-police)# end
     

    現在のコンフィギュレーション モードを終了します。

     

    次に、階層型カラーアウェア ポリシング機能の設定例を示します。ポリシングはここに示されている逆順で適用されます。

    policy-map child-policy
     class user1-acl-child
      police 10000 bc 1500
     class user2-acl-child
      police 20000 bc 1500
     class class-default
      police 50000 bc 1500
    policy-map parent-policy
     class class-default
      police 50000 bc 3000
      service-policy child-policy

    階層型カラーアウェア ポリシングの設定例

    例:階層型カラーアウェア ポリシング機能のイネーブル化

    次に、階層型カラーアウェア ポリシング機能をイネーブルにする設定例を示します。

    Router# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)# ip access-list extended user1-acl
    Router(config-ext-nacl)# permit ip host 192.168.1.1 any
    Router(config-ext-nacl)# permit ip host 192.168.1.2 any
    Router(config-ext-nacl)# ip access-list extended user2-acl
    Router(config-ext-nacl)# permit ip host 192.168.2.1 any
    Router(config-ext-nacl)# permit ip host 192.168.2.2 any
    Router(config-ext-nacl)# exit
    Router(config)# class-map match-all user1-acl-child
    Router(config-cmap)# match access-group name user1-acl
    Router(config-cmap)# class-map match-all user2-acl-child
    Router(config-cmap)# match access-group name user2-acl
    Router(config-cmap)# class-map match-all hipri-conform
    Router(config-cmap)# match qos-group 5
    Router(config-cmap)# exit
    Router(config)# policy-map child-policy
    Router(config-pmap)# class user1-acl-child
    Router(config-pmap-c)# police cir 10000 bc 1500
    Router(config-pmap-c-police)# class user2-acl-child
    Router(config-pmap-c)# police cir 20000 bc 1500
    Router(config-pmap-c-police)# exit
    Router(config-pmap-c)# exit
    Router(config-pmap)# exit
    Router(config)# policy-map parent-policy
    Router(config-pmap)# class class-default
    Router(config-pmap-c)# police cir 50000 bc 3000
    Router(config-pmap-c-police)# exceed-action transmit
    Router(config-pmap-c-police)# violate-action drop
    Router(config-pmap-c-police)# conform-color hipri-conform
    Router(config-pmap-c-police)# service-policy child-policy
    

    例:クラス マップの複数エントリの拒否

    次の例では、クラス マップに複数のエントリを設定しようとする操作が拒否されます。

    Router# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)# class-map hipri-conform
    Router(config-cmap)# match qos-group 5
    Router(config-cmap)# match qos-group 6
    Only one match statement is supported for color-aware policing
    Router(config-cmap)# no match qos-group 6
    

    例:アクティブな カラーアウェア クラス マップの削除の拒否

    次の例では、アクティブな カラーアウェア クラス マップの削除が拒否されます。

    Router# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)# no class-map hipri-conform
    Class-map hipri-conform is being used
    

    例:階層型カラーアウェア ポリシング機能の設定解除

    次に、階層型カラーアウェア ポリシング機能の設定を解除する例を示します。

    Router# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)# no policy-map parent-policy 
    Router(config)# no policy-map child-policy
    Router(config)# no class-map hipri-conform
    Router(config)# no class-map user1-acl-child 
    Router(config)# no class-map user2-acl-child
    

    例:Cisco ASR 1000 シリーズ ルータ用の階層型カラーアウェア ポリシング

    次に、Cisco ASR 1000 シリーズ ルータで階層型カラーアウェア ポリシング機能をイネーブルにする設定例を示します。

    Router# configure terminal
    Enter configuration commands, one per line. End with CNTL/Z.
    Router(config)# ip access-list extended user1-acl
    Router(config-ext-nacl)# permit ip host 192.168.1.1 any
    Router(config-ext-nacl)# permit ip host 192.168.1.2 any
    Router(config-ext-nacl)# ip access-list extended user2-acl
    Router(config-ext-nacl)# permit ip host 192.168.2.1 any
    Router(config-ext-nacl)# permit ip host 192.168.2.2 any
    Router(config-ext-nacl)# class-map match-all user1-acl-child
    Router(config-cmap)# match access-group name user1-acl
    Router(config-cmap)# class-map match-all user2-acl-child
    Router(config-cmap)# match access-group name user2-acl
    Router(config-cmap)# class-map match-all hipri-conform
    Router(config-cmap)# match qos-group 5
    Router(config-cmap)# policy-map child-policy
    Router(config-pmap)# class user1-acl-child
    Router(config-pmap-c)# police 10000 bc 1500
    Router(config-pmap-c-police)# conform-action set-qos-transmit 5
    Router(config-pmap-c-police)# class user2-acl-child
    Router(config-pmap-c)# police 20000 bc 1500
    Router(config-pmap-c-police)# conform-action set-qos-transmit 5
    Router(config-pmap-c-police)# class class-default
    Router(config-pmap-c)# police 50000 bc 1500
    Router(config-pmap-c-police)# policy-map parent-policy
    Router(config-pmap)# class class-default
    Router(config-pmap-c)# police 50000 bc 3000
    Router(config-pmap-c-police)# exceed-action transmit
    Router(config-pmap-c-police)# violate-action drop
    Router(config-pmap-c-police)# conform-color hipri-conform
    Router(config-pmap-c-police)# service-policy child-policy
    Router(config-pmap-c)# end
    Router#
    *Sep 16 12:31:11.536: %SYS-5-CONFIG_I: Configured from console by console
    Router# show class-map 
    Class Map match-all user1-acl-child (id 4)
    Match access-group name user1-acl
    Class Map match-all user2-acl-child (id 5)
    Match access-group name user2-acl
    Class Map match-any class-default (id 0)
    Match any 
    Class Map match-all hipri-conform (id 3)
    Match qos-group 5
    Router# show policy-map
    Policy Map parent-policy
    Class class-default
    police cir 50000 bc 3000 be 3000
    conform-color hipri-conform 
    conform-action transmit 
    exceed-action transmit 
    violate-action drop 
    service-policy child-policy
    Policy Map police
    Class prec1
    priority level 1 20000 (kb/s)
    Class prec2
    bandwidth 20000 (kb/s)
    Class class-default
    bandwidth 20000 (kb/s)
    Policy Map child-policy
    Class user1-acl-child
    police cir 10000 bc 1500
    conform-action set-qos-transmit 5
    exceed-action drop 
    Class user2-acl-child
    police cir 20000 bc 1500
    conform-action set-qos-transmit 5
    exceed-action drop 
    Class class-default
    police cir 50000 bc 1500
    conform-action transmit 
    exceed-action drop

    例:階層型カラーアウェア ポリシングを適用した show コマンド

    次に、階層型カラーアウェア ポリシングを適用した場合の show policy-map interface コマンドの出力例を示します。

    Router# show policy-map interface
    GigabitEthernet0/0/0 
    Service-policy input: parent-policy
    Class-map: class-default (match-any) 
    0 packets, 0 bytes
    5 minute offered rate 0000 bps, drop rate 0000 bps
    Match: any 
    police:
    cir 50000 bps, bc 3000 bytes, be 3000 bytes
    conformed 0 packets, 0 bytes; actions:
    transmit 
    exceeded 0 packets, 0 bytes; actions:
    transmit 
    violated 0 packets, 0 bytes; actions:
    drop 
    No color-aware policing statistics available
    conformed 0000 bps, exceed 0000 bps, violate 0000 bps
    Service-policy : child-policy
    Class-map: user1-acl-child (match-all) 
    0 packets, 0 bytes
    5 minute offered rate 0000 bps, drop rate 0000 bps
    Match: access-group name user1-acl
    police:
    cir 10000 bps, bc 1500 bytes
    conformed 0 packets, 0 bytes; actions:
    set-qos-transmit 5
    exceeded 0 packets, 0 bytes; actions:
    drop 
    conformed 0000 bps, exceed 0000 bps
    Class-map: user2-acl-child (match-all) 
    0 packets, 0 bytes
    5 minute offered rate 0000 bps, drop rate 0000 bps
    Match: access-group name user2-acl
    police:
    cir 20000 bps, bc 1500 bytes
    conformed 0 packets, 0 bytes; actions:
    set-qos-transmit 5
    exceeded 0 packets, 0 bytes; actions:
    drop 
    conformed 0000 bps, exceed 0000 bps
    Class-map: class-default (match-any) 
    0 packets, 0 bytes
    5 minute offered rate 0000 bps, drop rate 0000 bps
    Match: any 
    police:
    cir 50000 bps, bc 1500 bytes
    conformed 0 packets, 0 bytes; actions:
    transmit 
    exceeded 0 packets, 0 bytes; actions:
    drop 
    conformed 0000 bps, exceed 0000 bps

    その他の関連資料

    関連資料

    関連項目

    マニュアル タイトル

    Cisco IOS コマンド

    『Cisco IOS Master Commands List, All Releases』

    Quality of Service コマンド

    『Cisco IOS Quality of Service Solutions Command Reference』

    Quality of Service(QoS)設定に関する情報

    『Cisco IOS QoS Configuration Guide, Cisco IOS XE Release 3S』

    規格

    規格

    タイトル

    この機能がサポートする新しい規格または変更された規格はありません。

    --

    MIB

    MIB

    MIB のリンク

    • CISCO-CLASS-BASED-QOS-MIB

    • CISCO-CLASS-BASED-QOS-CAPABILITY-MIB

    選択したプラットフォーム、Cisco ソフトウェア リリース、およびフィーチャ セットの MIB を検索してダウンロードする場合は、次の URL にある Cisco MIB Locator を使用します。

    http:/​/​www.cisco.com/​go/​mibs

    RFC

    RFC

    タイトル

    RFC 2697

    『A Single Rate Three Color Marker』

    RFC 2698

    『A Two Rate Three Color Marker』

    テクニカル サポート

    説明

    リンク

    右の URL にアクセスして、シスコのテクニカル サポートを最大限に活用してください。 これらのリソースは、ソフトウェアをインストールして設定したり、シスコの製品やテクノロジーに関する技術的問題を解決したりするために使用してください。 この Web サイト上のツールにアクセスする際は、Cisco.com のログイン ID およびパスワードが必要です。

    http:/​/​www.cisco.com/​cisco/​web/​support/​index.html

    階層型カラーアウェア ポリシングの機能情報

    次の表に、このモジュールで説明した機能に関するリリース情報を示します。 この表は、特定のソフトウェア リリース トレインで各機能のサポートが導入されたときのソフトウェア リリースのみを示しています。 その機能は、特に断りがない限り、それ以降の一連のソフトウェア リリースでもサポートされます。

    プラットフォームのサポートおよびシスコ ソフトウェア イメージのサポートに関する情報を検索するには、Cisco Feature Navigator を使用します。 Cisco Feature Navigator にアクセスするには、www.cisco.com/​go/​cfn に移動します。 Cisco.com のアカウントは必要ありません。

    表 1 階層型カラーアウェア ポリシングの機能情報

    機能名

    リリース

    機能情報

    階層型カラーアウェア ポリシング

    Cisco IOS XE Release 3.2S

    階層型カラーアウェア ポリシング機能では、2 つのレベルでポリシングを指定し、子から親の順でポリサーを評価して、親レベルで特定のトラフィックを優先的に処理します。