Cisco Nexus 9000 シリーズ NX-OS Quality of Service コンフィギュレーション ガイド リリース 6.x
モジュラ QoS コマンドライン インターフェイス(MQC)の使用
モジュラ QoS コマンドライン インターフェイス(MQC)の使用

目次

モジュラ QoS コマンドライン インターフェイス(MQC)の使用

MQC について

MQC は、QoS ポリシーを定義するための言語を提供します。

QoS ポリシーは次の 3 つの手順を使用して設定します。

  1. トラフィック クラスを定義します。

  2. 各トラフィック クラスにポリシーおよびアクションをアソシエートします。

  3. ポリシーを論理または物理インターフェイスに付加します。

MQC には、トラフィックのクラスとポリシーを定義するためのコマンド タイプが用意されています。

  • policy-map:ポリシー セットを表すポリシー マップを定義します。ポリシー マップはクラス別にクラス マップに適用されます。

    ポリシー マップは、帯域幅の制限やパケットのドロップなど、アソシエートされたトラフィック クラスで実行するアクション セットを定義します。

クラス マップおよびポリシー マップを作成する場合は、次の class-map および policy-map オブジェクト タイプを定義します。

  • network-qos:システム レベル関連のアクションに使用できる MQC オブジェクトを定義します。

  • qos:マーキングおよびポリシングに使用できる MQC オブジェクトを定義します。

  • queuing:キューイングおよびスケジューリングに使用できる MQC オブジェクトを定義します。


(注)  


デフォルトは qos タイプです。


service-policy コマンドを使用して、ポリシーをポート、ポート チャネル、またはサブインターフェイスに付加できます。

show class-map コマンドおよび show policy-map コマンドを使用して、MQC オブジェクトのすべてまたは個々の値を表示できます。


注意    


インターフェイス コンフィギュレーション モードでは、インターフェイスがホストとなっているラインカードがアップしているか、ダウンしているかに関係なく、デバイスは QoS およびアクセス コントロール リスト(ACL)コマンドを受け入れます。 ただし、ラインカードがダウンしている場合は、デバイスが事前設定情報をどれも受け入れないため、インターフェイス サブモードにはできません。


システム クラス

システム qos は MQC ターゲットの 1 種です。 サービス ポリシーを使用して、ポリシー マップをシステム qos ターゲットに関連付けます。 特定のインターフェイスでサービス ポリシー設定を上書きしない限り、システム qos ポリシーはデバイスのすべてのインターフェイスに適用されます。 システム qos ポリシーは、システム クラス、デバイス全体のトラフィック クラス、およびその属性を定義するために使用します。

サービス ポリシーがインターフェイス レベルで設定されている場合、インターフェイス レベルのポリシーは常にシステム クラス設定またはデフォルト値よりも優先されます。

QoS 機能を設定し、システムから MQC オブジェクトが要求される場合、4q モードのシステム定義 MQC オブジェクトまたは 8q モードのシステム定義オブジェクトを使用できます。

Cisco Nexus デバイスでは、システム クラスは qos-group 値によって一意に識別されます。 合計で 4 つのシステム クラスがサポートされています。 デバイスは、デバイスに常に存在する 1 つのデフォルト クラスをサポートします。 最大 3 つの追加システム クラスを管理者が作成できます。 システム QoS ターゲットでは、出力キューイングと network-qos ポリシーのみがサポートされます。 QoS ポリシーはサポートされません。

デフォルトのシステム クラス

デバイスは、次のシステム クラスを提供します。

  • ドロップ システム クラス

デフォルトでは、すべてのユニキャストおよびマルチキャスト イーサネット トラフィックは、デフォルトのドロップ システム クラスに分類されます。 このクラスは qos-group 0 で識別されます。

MQC オブジェクトを使用するためのライセンス要件

次の表に、この機能のライセンス要件を示します。

製品

ライセンス要件

Cisco NX-OS

QoS 機能にライセンスは必要ありません。 ライセンス パッケージに含まれていない機能は nx-os イメージにバンドルされており、無料で提供されます。 NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。

MQC オブジェクトの使用

QoS ポリシーとキューイング ポリシーを設定するには、MQC の class-map および policy-map オブジェクトを使用します。 クラス マップとポリシー マップを設定したら、各タイプのポリシー マップを 1 つインターフェイスに付加できます。 QoS ポリシーは、入力方向にのみ適用できます。

ポリシー マップには、QoS ポリシーまたはキューイング ポリシーのいずれかが含まれます。 ポリシー マップは、トラフィック クラスを表すクラス マップの名前を参照します。 トラフィックの各クラスについて、デバイスはユーザが選択したインターフェイスまたは VLAN にポリシーを適用します。

1 番目のトラフィック クラス定義から順に、トラフィック クラスに対してパケットが照合されます。 一致するものが見つかった場合は、そのクラスのポリシー アクションがパケットに適用されます。

予約済みのクラス マップ class-default は、タイプ qos ポリシー内の一致しないトラフィックをすべて受け取り、デバイスは他のすべてのトラフィック クラスと同様にポリシー アクションを適用します。

タイプ qos ポリシー

タイプqos ポリシーは、パケットのマーキング、およびポリシングに使用します。

QoS ポリシー構造と、タイプ QoS の関連 MQC オブジェクトを次の図に示します。 MQC オブジェクトは太字で示しています。

図 1. タイプ qos の MQC オブジェクトの使用を示す QoS ポリシーの図

タイプ キューイング ポリシー

タイプ キューイング ポリシーは、パケットのシェーピングおよびキューイングに使用します。

QoS ポリシー構造とタイプ キューイングの関連 MQC オブジェクトを、次の図に示します。 MQC オブジェクトは太字で示しています。

図 2. タイプ キューイングの MQC オブジェクトの使用を示す QoS ポリシーの図



システム定義の MQC オブジェクト

QoS 機能を設定し、システムから MQC オブジェクトが要求される場合、4q モードのシステム定義オブジェクトまたは 8q モードのシステム定義オブジェクトを使用できます。

8q モードのシステム定義オブジェクトは次のデバイスでサポートされます。

  • Cisco Nexus 9504

  • Cisco Nexus 9508

  • Cisco Nexus 9516

  • Cisco Nexus 3164


(注)  


TOR(トップ オブ ラック)デバイスは 8q モードのシステム定義オブジェクトをサポートしません。



(注)  


8q モードのシステム定義オブジェクトは、ACI 対応ラインカードでサポートされていません。


4q モードのシステム定義 MQC オブジェクト

QoS 機能を設定し、システムから MQC オブジェクトが要求される場合、以下のシステム定義オブジェクトを使用できます。


(注)  


Cisco Nexus 9000 シリーズ NX-OS システムは、デフォルトでは 4q モードで稼働します。 4q モードのシステム定義 MQC オブジェクトがデフォルトの MQC オブジェクトです。


  • タイプ qos クラス マップ

    表 1 システム定義のタイプ qos クラス マップ

    クラス マップ名

    説明

    class-default

    タイプ qos ポリシー マップで定義したトラフィック クラスの基準のどれにも一致しないすべてのパケットに割り当てられる、タイプ qos クラス マップ。

  • タイプ キューイング クラス マップ

    表 2 4q モードのシステム定義タイプ キューイング クラス マップ

    クラス マップ キュー名

    説明

    c-out-q-default

    出力デフォルト キュー:QoS グループ 0

    c-out-q1

    出力キュー 1:QoS グループ 1

    c-out-q2

    出力キュー 2:QoS グループ 2

    c-out-q3

    出力キュー 3:QoS グループ 3

  • タイプ network-qos クラス マップ

    表 3 4q モードのシステム定義のタイプ network-qos クラス マップ

    クラス マップ ネットワーク QoS 名

    説明

    c-nq-default

    ネットワーク QoS クラス:QoS グループ 0

    c-nq1

    ネットワーク QoS クラス:QoS グループ 1

    c-nq2

    ネットワーク QoS クラス:QoS グループ 2

    c-nq3

    ネットワーク QoS クラス:QoS グループ 3

  • ポリシー マップ

    表 4 システム定義のキューイング ポリシー マップ:4q モード

    キューイング ポリシー マップ名

    説明

    default-out-policy

    キューイング ポリシー マップを適用しないすべてのモジュール ポートに付加される出力キューイング ポリシー マップ。 デフォルトの設定値は次のとおりです。

    policy-map type queuing default-out-policy
      class type queuing c-out-q3
       priority level 1
      class type queuing c-out-q2
       bandwidth remaining percent 0
      class type queuing c-out-q1
       bandwidth remaining percent 0
      class type queuing c-out-q-default
       bandwidth remaining percent 100

    default-network-qos-policy

    キューイング ポリシー マップを適用しないすべてのモジュール ポートに付加される network-qos キューイング ポリシー マップ。 デフォルトの設定値は次のとおりです。

    policy-map type network-qos default-nq-policy
      class type network-qos c-nq3
       match qos-group 3
       mtu 1500
      class type network-qos c-nq2
       match qos-group 2
       mtu 1500
      class type network-qos c-nq1
       match qos-group 1
       mtu 1500
      class type network-qos c-nq-default
       match qos-group 0
       mtu 1500

8q モードのシステム定義 MQC オブジェクト

QoS 機能を設定し、システムから MQC オブジェクトが要求される場合、以下のシステム定義オブジェクトを使用できます。


(注)  


4q モードのシステム定義 MQC オブジェクトがデフォルトの MQC オブジェクトです。 8q モードに変更するには、次の MQC オブジェクトを有効にする必要があります。


  • タイプ qos クラス マップ

    表 5 システム定義のタイプ qos クラス マップ

    クラス マップ名

    説明

    class-default

    タイプ qos ポリシー マップで定義したトラフィック クラスの基準のどれにも一致しないすべてのパケットに割り当てられる、タイプ qos クラス マップ。

  • タイプ キューイング クラス マップ

    表 6 8q モードのシステム定義のタイプ キューイング クラス マップ

    クラス マップ キュー名

    説明

    c-out-8q-q-default

    出力デフォルト キュー:QoS グループ 0

    c-out-8q-q1

    出力キュー 1:QoS グループ 1

    c-out-8q-q2

    出力キュー 2:QoS グループ 2

    c-out-8q-q3

    出力キュー 3:QoS グループ 3

    c-out-8q-q4

    出力キュー 4:QoS グループ 4

    c-out-8q-q5

    出力キュー 5:QoS グループ 5

    c-out-8q-q6

    出力キュー 6:QoS グループ 6

    c-out-8q-q7

    出力キュー 7:QoS グループ 7

  • タイプ network-qos クラス マップ

    表 7 8q モードのシステム定義のタイプ network-qos クラス マップ

    クラス マップ ネットワーク QoS 名

    説明

    c-8q-nq-default

    ネットワーク QoS クラス:QoS グループ 0

    c-8q-nq1

    ネットワーク QoS クラス:QoS グループ 1

    c-8q-nq2

    ネットワーク QoS クラス:QoS グループ 2

    c-8q-nq3

    ネットワーク QoS クラス:QoS グループ 3

    c-8q-nq4

    ネットワーク QoS クラス:QoS グループ 4

    c-8q-nq5

    ネットワーク QoS クラス:QoS グループ 5

    c-8q-nq6

    ネットワーク QoS クラス:QoS グループ 6

    c-8q-nq7

    ネットワーク QoS クラス:QoS グループ 7

  • ポリシー マップ

    表 8 8q モードのシステム定義キューイング ポリシー マップ

    キューイング ポリシー マップ名

    説明

    default-8q-out-policy

    キューイング ポリシー マップを適用しないすべてのモジュール ポートに付加される出力キューイング ポリシー マップ。 デフォルトの設定値は次のとおりです。

    policy-map type queuing default-8q-out-policy
      class type queuing c-out-8q-q7
       priority level 1
      class type queuing c-out-8q-q6
       bandwidth remaining percent 0
      class type queuing c-out-8q-q5
       bandwidth remaining percent 0
      class type queuing c-out-8q-q4
       bandwidth remaining percent 0
      class type queuing c-out-8q-q3
       bandwidth remaining percent 0
      class type queuing c-out-8q-q2
       bandwidth remaining percent 0
      class type queuing c-out-8q-q1
       bandwidth remaining percent 0
      class type queuing c-out-8q-q-default
       bandwidth remaining percent 100

    default-8q-network-qos-policy

    キューイング ポリシー マップを適用しないすべてのモジュール ポートに付加される network-qos キューイング ポリシー マップ。 デフォルトの設定値は次のとおりです。

    policy-map type network-qos default-8q-nq-policy
      class type network-qos c-8q-nq7
       match qos-group 7
       mtu 1500
      class type network-qos c-8q-nq6
       match qos-group 6
       mtu 1500
      class type network-qos c-8q-nq5
       match qos-group 5
       mtu 1500
      class type network-qos c-8q-nq4
       match qos-group 4
       mtu 1500
      class type network-qos c-8q-nq3
       match qos-group 3
       mtu 1500
      class type network-qos c-8q-nq2
       match qos-group 2
       mtu 1500
      class type network-qos c-8q-nq1
       match qos-group 1
       mtu 1500
      class type network-qos c-8q-nq-default
       match qos-group 0
       mtu 1500

8q モードへの変更


(注)  


Cisco Nexus 9000 シリーズ NX-OS システムは、デフォルトでは 4q モードで稼働します。


8q モードに変更するには、次のガイドラインを使用してください。

  • network-qos ポリシーを 8q モードに変更します。

    default-8q-nq-policy(システムにより作成される 8q のデフォルト network-qos ポリシー)をアクティブにするか、またはqos copy policy-map type network-qos コマンドを使用してこのポリシーをコピーし、必要に応じて編集してからアクティブにできます。

  • キューイング ポリシーを 8q モードに変更します。 (つまり、システム キューング ポリシーと、任意でインターフェイス キューイング ポリシーを変更します。)

    qos copy policy-map type queuing コマンドを使用して、default-8q-out-policy(システムにより作成されるデフォルトの 8q キューイング ポリシー)をコピーします。 default-8q-out-policy のコピーを必要に応じて編集し、システム レベルでアクティブにします。また任意でインターフェイス レベルでもアクティブにできます。

  • network-qos ポリシーとキューイング ポリシーを 8q モードに変更したら、qos-group 4 ~ 7 に対して set qos-group アクションを使用して、キュー 4 ~ 7 にトラフィックを誘導できるようになります。

8q モードに関する注意

8q モードに関する注意を以下に示します。

  • 8q ポリシーがアクティブに使用されている場合、8q モードをサポートしないシステム イメージにシステムをダウングレードすることはできません。


    (注)  


    非互換性を回避するベスト プラクティスとして、ダウングレード前に 8q ポリシーを削除します。


    次の例に、8q モードをサポートしないシステム イメージへのダウングレードでの非互換性を示します。

    switch# show incompatibility nxos bootflash:n9000-dk9.6.1.2.I1.2.bin
    
    The following configurations on active are incompatible with  the system image
    
    1) Service : ipqosmgr , Capability : CAP_FEATURE_IPQOS_8Q_QUE_POLICY_ACTIVE
    Description : QoS Manager - 8Q queuing policy active
    Capability requirement : STRICT
    Enable/Disable command : Please remove 8q queuing policy
    
    2) Service : ipqosmgr , Capability : CAP_FEATURE_IPQOS_8Q_NQOS_POLICY_ACTIVE
    Description : QoS Manager - 8Q network-qos policy active
    Capability requirement : STRICT
    Enable/Disable command : Please remove 8q network-qos policy
    
  • 8q ポリシーは、8-queue をサポートしないラインカードが搭載されたシステムではアクティブにできません。 すべての ACI 対応ラインカードで、8-queue がサポートされていません。


    (注)  


    ベスト プラクティスとして、8-queue 機能を使用する前に、8-queue をサポートしないすべてのラインカードの電源をオフにします。


    次の例に、8-queue をサポートしないラインカードが搭載されたシステムで 8-queue 機能を使用すると発生するエラーの一部を示します。

    switch(config)# system qos
      switch(config-sys-qos)# service-policy type queuing output default-8q-out-policy
      ERROR: policy-map default-8q-out-policy can be activated only on 8q capable platforms
    
      switch(config)# system qos
      switch(config-sys-qos)# service-policy type network-qos default-8q-nq-policy
      ERROR: policy-map default-8q-nq-policy can be activated only on 8q capable platforms
    
      switch(config)# policy-map p1
      switch(config-pmap-qos)# class c1
      switch(config-pmap-c-qos)# set qos-group 7
      ERROR: set on qos-group 4-7 is supported only on 8q capable platforms
    
8q モードへの変更の例

8q モードへの変更例を次に示します。

switch# qos copy policy-map type network-qos default-8q-nq-policy prefix my
switch# show policy-map type network-qos

  Type network-qos policy-maps
  ============================
  policy-map type network-qos my8q-nq
    class type network-qos c-8q-nq7
      mtu 1500
    class type network-qos c-8q-nq6
      mtu 1500
    class type network-qos c-8q-nq5
      mtu 1500
    class type network-qos c-8q-nq4
      mtu 1500
    class type network-qos c-8q-nq3
      mtu 1500
    class type network-qos c-8q-nq2
      mtu 1500
    class type network-qos c-8q-nq1
      mtu 1500
    class type network-qos c-8q-nq-default
      mtu 1500

switch# config t
switch(config)# policy-map type network-qos my8q-nq
switch(config-pmap-nqos)# class type network-qos c-8q-nq1
switch(config-pmap-nqos-c)# mtu 9216
switch(config-pmap-nqos-c)# class type network-qos c-8q-nq2
switch(config-pmap-nqos-c)# mtu 2240
switch(config-pmap-nqos-c)# class type network-qos c-8q-nq4
switch(config-pmap-nqos-c)# pause pfc-cos 4
switch(config-pmap-nqos-c)# class type network-qos c-8q-nq5
switch(config-pmap-nqos-c)# mtu 2240
switch(config-pmap-nqos-c)# pause pfc-cos 5
switch(config-pmap-nqos-c)# class type network-qos c-8q-nq6
switch(config-pmap-nqos-c)# mtu 9216
switch(config-pmap-nqos-c)# pause pfc-cos 6
switch(config-pmap-nqos-c)# show policy-map type network-qos my8q-nq

  Type network-qos policy-maps
  ============================
  policy-map type network-qos my8q-nq
    class type network-qos c-8q-nq7
      mtu 1500
    class type network-qos c-8q-nq6
      pause pfc-cos 6
      mtu 9216
    class type network-qos c-8q-nq5
      pause pfc-cos 5
      mtu 2240
    class type network-qos c-8q-nq4
      pause pfc-cos 4
      mtu 1500
    class type network-qos c-8q-nq3
      mtu 1500
    class type network-qos c-8q-nq2
      mtu 2240
    class type network-qos c-8q-nq1
      mtu 9216
    class type network-qos c-8q-nq-default
      mtu 1500

switch(config)# system qos
switch(config-sys-qos)# service-policy type network-qos my8q-nq
switch(config-sys-qos)# 2014 Jun 12 11:13:48 switch %$ VDC-1 %$ %IPQOSMGR-2-QOSMGR_NETWORK_QOS_POLICY_CHANGE: Policy my8q-nq is now active

switch(config-sys-qos)# show policy-map system type network-qos

  Type network-qos policy-maps
  ============================
  policy-map type network-qos my8q-nq
    class type network-qos c-8q-nq7
      match qos-group 7
      mtu 1500
    class type network-qos c-8q-nq6
      match qos-group 6
      pause pfc-cos 6
      mtu 9216
    class type network-qos c-8q-nq5
      match qos-group 5
      pause pfc-cos 5
      mtu 2240
    class type network-qos c-8q-nq4
      match qos-group 4
      pause pfc-cos 4
      mtu 1500
    class type network-qos c-8q-nq3
      match qos-group 3
      mtu 1500
    class type network-qos c-8q-nq2
      match qos-group 2
      mtu 2240
    class type network-qos c-8q-nq1
      match qos-group 1
      mtu 9216
    class type network-qos c-8q-nq-default
      match qos-group 0
      mtu 1500

switch# qos copy policy-map type queuing default-8q-out-policy prefix my
switch# show policy-map type queuing my8q-out


  Type queuing policy-maps
  ========================

  policy-map type queuing my8q-out
    class type queuing c-out-8q-q7
      priority level 1
    class type queuing c-out-8q-q6
      bandwidth remaining percent 0
    class type queuing c-out-8q-q5
      bandwidth remaining percent 0
    class type queuing c-out-8q-q4
      bandwidth remaining percent 0
    class type queuing c-out-8q-q3
      bandwidth remaining percent 0
    class type queuing c-out-8q-q2
      bandwidth remaining percent 0
    class type queuing c-out-8q-q1
      bandwidth remaining percent 0
    class type queuing c-out-8q-q-default
     bandwidth remaining percent 100

switch# config t
switch(config)# policy-map type queuing my8q-out
switch(config-pmap-c-que)# class type queuing c-out-8q-q-default
switch(config-pmap-c-que)# bandwidth remaining percent 30
switch(config-pmap-c-que)# class type queuing c-out-8q-q1
switch(config-pmap-c-que)# bandwidth remaining percent 15
switch(config-pmap-c-que)# class type queuing c-out-8q-q2
switch(config-pmap-c-que)# bandwidth remaining percent 15
switch(config-pmap-c-que)# class type queuing c-out-8q-q3
switch(config-pmap-c-que)# bandwidth remaining percent 10
switch(config-pmap-c-que)# class type queuing c-out-8q-q4
switch(config-pmap-c-que)# bandwidth remaining percent 10
switch(config-pmap-c-que)# class type queuing c-out-8q-q5
switch(config-pmap-c-que)# bandwidth remaining percent 10
switch(config-pmap-c-que)# class type queuing c-out-8q-q6
switch(config-pmap-c-que)# bandwidth remaining percent 10
switch(config-pmap-c-que)# show policy-map type queuing my8q-out


  Type queuing policy-maps
  ========================

  policy-map type queuing my8q-out
    class type queuing c-out-8q-q7
      priority level 1
    class type queuing c-out-8q-q6
      bandwidth remaining percent 10
    class type queuing c-out-8q-q5
      bandwidth remaining percent 10
    class type queuing c-out-8q-q4
      bandwidth remaining percent 10
    class type queuing c-out-8q-q3
      bandwidth remaining percent 10
    class type queuing c-out-8q-q2
      bandwidth remaining percent 15
    class type queuing c-out-8q-q1
      bandwidth remaining percent 15
    class type queuing c-out-8q-q-default
      bandwidth remaining percent 30

switch(config)# system qos
switch(config-sys-qos)# service-policy type queuing output my8q-out
switch(config-sys-qos)# show policy-map system type queuing



  Service-policy output:   my8q-out
          Service-policy (queuing) output:   my8q-out
            policy statistics status:   disabled (current status: disabled)

            Class-map (queuing):   c-out-8q-q7 (match-any)
              priority level 1

            Class-map (queuing):   c-out-8q-q6 (match-any)
              bandwidth remaining percent 10

            Class-map (queuing):   c-out-8q-q5 (match-any)
              bandwidth remaining percent 10

            Class-map (queuing):   c-out-8q-q4 (match-any)
              bandwidth remaining percent 10

            Class-map (queuing):   c-out-8q-q3 (match-any)
              bandwidth remaining percent 10

            Class-map (queuing):   c-out-8q-q2 (match-any)
              bandwidth remaining percent 15

            Class-map (queuing):   c-out-8q-q1 (match-any)
              bandwidth remaining percent 15

            Class-map (queuing):   c-out-8q-q-default (match-any)
              bandwidth remaining percent 30

qos-group の設定例

qos-group に値 4 ~ 7 を設定する例を次に示します。

switch(config)# policy-map p1
switch(config-pmap-qos)# class c1
switch(config-pmap-c-qos)# set qos-group 1
switch(config-pmap-c-qos)# ex
switch(config-pmap-qos)# class c2
switch(config-pmap-c-qos)# set qos-group 4
switch(config-pmap-c-qos)# ex
switch(config-pmap-qos)# class c3
switch(config-pmap-c-qos)# set qos-group 7
switch(config-pmap-c-qos)# ex
switch(config-pmap-qos)# ex
switch(config)# show policy-map p1


  Type qos policy-maps
  ====================

  policy-map type qos p1
    class  c1
      set qos-group 1
    class  c2
      set qos-group 4
    class  c3
      set qos-group 7
switch(config)# conf t
switch(config)# int ethernet 2/1
switch(config-if)# service-policy type qos input p1
switch(config-if)# show policy-map interface ethernet 2/1


Global statistics status :   enabled

Ethernet2/1

  Service-policy (qos) input:   p1
    SNMP Policy Index:  285226505

    Class-map (qos):   c1 (match-all)
      Match: dscp 10
      set qos-group 1

    Class-map (qos):   c2 (match-all)
      Match: dscp 20
      set qos-group 4

    Class-map (qos):   c3 (match-all)
      Match: dscp 30
      set qos-group 7

8q モードから 4q モードへの変更

8q モードから 4q モードに変更するには、次のガイドラインを使用してください:

  • アクティブな入力 QoS ポリシーのいずれにも QoS グループ 4 ~ 7 に対する set qos-group アクションが含まれておらず、キュー 4 ~ 7 へのトラフィック フローが行われないことを確認します。

  • すべての 8q インターフェイス ポリシーと 8q システム レベル ポリシーが、対応する 4q ポリシーに置き換えられることを確認します。

  • 8q network-qos ポリシーを、対応する 4q ポリシーに置き換えます。

MQC オブジェクトの設定

MQC オブジェクト コマンドを指定すると、デバイスは、オブジェクトが存在しない場合にオブジェクトを作成し、それからマップ モードを開始します。

class-map または policy-map オブジェクトを削除するには、オブジェクトの作成に使用したコマンドの no 形式を使用します。

クラス マップの設定または変更

クラス マップを作成または変更できます。 以降は、クラス マップをポリシー マップで参照できるようになります。


(注)  


キューイング クラス マップは作成できません。いずれかのシステム定義のキューイング クラス マップを使用する必要があります。


手順の概要

    1.    configure terminal

    2.    class-map type qos [match-any | match-all] class-name

    3.    exit

    4.    class-map type queuing match-any class-name

    5.    exit

    6.    show class-map [type qos [ class-name]]

    7.    show class-map [type queuing [ class-name]]

    8.    copy running-config startup-config


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


    例:
    switch# configure terminal
    switch(config)#
     

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

     
    ステップ 2class-map type qos [match-any | match-all] class-name


    例:
    switch(config)# class-map type qos class1
    switch(config-cmap-qos)#
     

    タイプ qos のクラス マップを作成するか、タイプ qos のクラス マップにアクセスし、クラス マップ qos モードを開始します。 クラス マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。クラス マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。

     
    ステップ 3exit


    例:
    switch(config-cmap-qos)# exit
    switch(config)#
     

    クラス マップ qos モードを終了し、グローバル コンフィギュレーション モードを開始します。

     
    ステップ 4class-map type queuing match-any class-name


    例:
    switch(config)# class-map type queuing match-any c-out-q2
    switch(config-cmap-que)#
     

    タイプ キューイングのクラス マップを作成するか、タイプ キューイングのクラス マップにアクセスし、クラス マップ キューイング モードを開始します。

     
    ステップ 5exit


    例:
    switch(config-cmap-que)# exit
    switch(config)#
     

    クラス マップ キューイング モードを終了し、グローバル コンフィギュレーション モードを開始します。

     
    ステップ 6show class-map [type qos [ class-name]]


    例:
    switch(config)# show class-map type qos
     

    (任意)設定済みのすべてのクラス マップ、すべてのタイプ qos のクラス マップ、または選択したタイプ qos のクラス マップに関する情報を表示します。

     
    ステップ 7show class-map [type queuing [ class-name]]


    例:
    switch(config)# show class-map type queuing
     

    (任意)設定済みのすべてのクラス マップ、すべてのタイプ キューイングのクラス マップ、または選択したタイプ キューイングのクラス マップに関する情報を表示します。

     
    ステップ 8copy running-config startup-config


    例:
    switch(config)# copy running-config startup-config
     

    (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

     

    ポリシー マップの設定または変更

    ポリシー マップを作成または変更できます。ポリシー マップを使用して、クラス マップに対して実行するアクションを定義できます。

    手順の概要

      1.    configure terminal

      2.    policy-map type qos { [match-first] policy-map-name}

      3.    exit

      4.    policy-map type queuing {[match-first] policy-map-name}

      5.    exit

      6.    show policy-map [type qos [ policy-map-name]]

      7.    show policy-map [type queuing [ policy-map-name | default-out-policy]]

      8.    copy running-config startup-config


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


      例:
      switch# configure terminal
      switch(config)#
       

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

       
      ステップ 2policy-map type qos { [match-first] policy-map-name}


      例:
      switch(config)# policy-map type qos policy1
      switch(config-pmap-qos)#
       

      タイプ qos のポリシー マップを作成するか、タイプ qos のポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名は、最大 40 文字の英字、ハイフン、または下線文字を使用でき、大文字と小文字が区別されます。

       
      ステップ 3exit


      例:
      switch(config-pmap)# exit
      switch(config)#
       

      ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。

       
      ステップ 4policy-map type queuing {[match-first] policy-map-name}


      例:
      switch(config)# policy-map type queuing policy_queue1
      switch(config-pmap-que)#
       

      タイプ キューイングのポリシー マップを設定し、指定したポリシー マップ名のポリシー マップ モードを開始します。 ポリシー マップ名は、最大 40 文字の英字、ハイフン、または下線文字を使用でき、大文字と小文字が区別されます。

       
      ステップ 5exit


      例:
      switch(config-pmap)# exit
      switch(config)#
       

      ポリシー マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。

       
      ステップ 6show policy-map [type qos [ policy-map-name]]


      例:
      switch(config)# show policy-map type qos
       

      (任意)設定済みのすべてのポリシー マップ、すべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップに関する情報を表示します。

       
      ステップ 7show policy-map [type queuing [ policy-map-name | default-out-policy]]


      例:
      switch(config)# show policy-map type queuing
       

      (任意)設定済みのすべてのポリシー マップ、すべてのタイプ キューイングのポリシー マップ、選択したタイプ キューイングのポリシー マップ、またはデフォルトの出力キューイング ポリシーに関する情報を表示します。

       
      ステップ 8copy running-config startup-config


      例:
      switch(config)# copy running-config startup-config
       

      (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

       

      MQC オブジェクトへの説明の適用

      description コマンドを使用すると、MQC オブジェクトに説明を追加できます。

      手順の概要

        1.    configure terminal

        2.    説明を設定する MQC オブジェクトを指定します。

        • クラスマップ:

          class-map [type qos] [match-any | match-all] class-name
        • ポリシーマップ:

          policy-map [type qos] [match-first] policy-map-name

        3.    description string

        4.    exit

        5.    copy running-config startup-config


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


        例:
        switch# configure terminal
        switch(config)#
         

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

         
        ステップ 2説明を設定する MQC オブジェクトを指定します。
        • クラスマップ:

          class-map [type qos] [match-any | match-all] class-name
        • ポリシーマップ:

          policy-map [type qos] [match-first] policy-map-name


        例:
        • クラスマップ:

          switch(config-cmap)# class-map class1
          switch(config-cmap)#
        • ポリシーマップ:

          switch(config)# policy-map policy1
          switch(config-pmap)#
         
        • クラスマップ:

          クラス マップを作成するか、クラス マップにアクセスし、クラス マップ モードを開始します。 クラス マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。クラス マップ名は大文字と小文字が区別され、最大 40 文字までの英数字を設定できます。

        • ポリシーマップ:

          ポリシー マップを作成するか、ポリシー マップにアクセスし、ポリシー マップ モードを開始します。 ポリシー マップ名には、アルファベット、ハイフン、またはアンダースコア文字を含めることができます。ポリシー マップ名は大文字と小文字が区別され、最大 40 文字まで設定できます。

         
        ステップ 3 description string


        例:
        switch(config-cmap)# description my traffic class
        switch(config-cmap)#
         

        説明文字列を MQC オブジェクトに追加します。 説明には最大 200 文字の英数字を使用できます。

        (注)     

        システム定義のキューイング クラス マップの説明を変更することはできません。

         
        ステップ 4exit


        例:
        switch(config-cmap)# exit
        switch(config)#
         

        クラス マップ モードを終了し、グローバル コンフィギュレーション モードを開始します。

         
        ステップ 5copy running-config startup-config


        例:
        switch(config)# copy running-config startup-config
         

        (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

         

        MQC オブジェクトの確認

        MQC オブジェクトの設定情報を表示するには、次のいずれかの作業を行います。

        コマンド

        目的

        show class-map [type qos [class-name]]

        設定済みのすべてのクラス マップ、すべてのタイプ qos のクラス マップ、または選択したタイプ qos のクラス マップに関する情報を表示します。

        show class-map [type queuing [class-name]]

        設定済みのすべてのクラス マップ、すべてのタイプ キューイングのクラス マップ、または選択したタイプ キューイングのクラス マップに関する情報を表示します。

        show policy-map [type qos [policy-map-name]]

        設定済みのすべてのポリシー マップ、すべてのタイプ qos のポリシー マップ、または選択したタイプ qos のポリシー マップに関する情報を表示します。

        show policy-map [type queuing [policy-map-name | default-out-policy]]

        設定済みのすべてのポリシー マップ、すべてのタイプ キューイングのポリシー マップ、選択したタイプ キューイングのポリシー マップ、またはデフォルトの出力キューイング ポリシーに関する情報を表示します。

        QoS ポリシー アクションの付加および消去

        ソフトウェアのコンフィギュレーション コマンドを使用して QoS 機能をイネーブルまたはディセーブルにすることはできません。 QoS 機能をイネーブルまたはディセーブルにするには、ここで説明する方法を使用して、インターフェイスまたは VLAN に対して QoS ポリシーを付加または消去する必要があります。

        別のポリシー マップを具体的に付加しない限り、システム定義のタイプ キューイング ポリシー マップが各インターフェイスに付加されます。


        (注)  


        デバイスでは、インターフェイスごとに 1 つのキューイング ポリシーだけを使用できます。


        複数のインターフェイスで定義されているポリシーには次の制限があります。

        • 物理ポートに付加された QoS ポリシーは、ポートがポート チャネルのメンバーとなっていない場合に有効になります。

        • ポート チャネルに付加された QoS ポリシーは、ポリシーがメンバー ポートに付加されている場合でも有効になります。

        • VLAN に付加された QoS ポリシーは、他のポリシーが明確に適用されていないその VLAN 内のすべてのポートに適用されます。

        • 各レイヤ 3 ポートおよびレイヤ 3 ポート チャネル インターフェイスについて、1 つの入力 QoS ポリシーがサポートされています。

        • VLAN ごとに 1 つの入力 QoS ポリシーがサポートされています。

        • VLAN、ポート チャネル、またはその両方が複数のフォワーディング エンジンに接続すると、レートを強制するすべてのポリシーがフォワーディング エンジンごとに適用されます。

          たとえば、特定の VLAN のレートを 100 Mbps に制限するポリサーがその VLAN に設定されていて、あるモジュール上の VLAN 内にスイッチ ポートを 1 つ設定し、別のモジュール上の VLAN にスイッチ ポートを別のスイッチ ポートを設定する場合は、各フォワーディング エンジンで 100 Mbps のレートが強制されます。 この場合、レートを 100 Mbps に制限するように設定した VLAN 内で、実際には最大 200 Mbps を使用できる可能性があります。


        (注)  


        別のポリシーを設定して適用しない限り、デフォルトのキューイング ポリシーはアクティブです。


        次の表に、QoS ポリシーが適用されるインターフェイスを示します。 各行はインターフェイスのレベルを表しています。 各項目の説明は次のとおりです。

        • 適用済み:付加されたポリシーが適用されているインターフェイス

        • 存在:ポリシーは付加されているが適用されていないインターフェイス

        • 非存在:ポリシーが付加されていないインターフェイス

        • 存在または非存在:ポリシーは付加されているかどうかが不明で、適用されていないインターフェイス

        表 9 QoS ポリシー インターフェイス

        ポート ポリシー

        Port-Channel ポリシー

        VLAN ポリシー

        適用済み

        非存在

        存在または非存在

        存在または非存在

        応募済み

        存在または非存在

        非存在

        非存在

        応募済み

        ポリシー マップをインターフェイスまたは VLAN に付加するには、service-policy コマンドを使用します。 ポリシー マップで定義したポリシーをインターフェイス上のパケットの入力ストリームに適用します。

        インターフェイスからポリシー マップを消去するには、service-policy コマンドの no 形式を使用します。

        レイヤ 2 インターフェイスのサービス ポリシーの設定

        はじめる前に

        Ternary Content Addressable Memory(TCAM)がポート QoS に対してカービングされることを確認します。

        詳細については、「QoS TCAM カービングの設定」の項を参照してください。

        手順の概要

          1.    configure terminal

          2.    interface interface slot/port

          3.    switchport

          4.    service-policy type {qos input | queuing output} policy-map-name [no-stats]

          5.    show policy-map interface interface slot/port type {qos | queuing}

          6.    copy running-config startup-config


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


          例:
          switch# configure terminal
          switch(config)#
           

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

           
          ステップ 2interface interface slot/port


          例:
          switch(config)# interface ethernet 1/1
          switch(config-if)#
           

          設定インターフェイス モードを開始します。

           
          ステップ 3switchport


          例:
          switch(config-if)# switchport
           

          レイヤ 2 インターフェイスを選択します。

           
          ステップ 4 service-policy type {qos input | queuing output} policy-map-name [no-stats]


          例:
          switch(config-if)# service-policy input policy1
          switch(config-if)#
           

          ポリシー マップをレイヤ 3 インターフェイスのサービス ポリシーとして使用するように指定します。 2 つのポリシー マップ コンフィギュレーション モードがあります。

          • qos input:分類モード。これがデフォルトのモードです。

          • queuing output:キューイング モード。

          (注)     

          output キーワードは、そのポリシー マップがインターフェイスの送信トラフィックに適用される必要があることを示します。 queuing ポリシーには output のみ適用できます。

           
          ステップ 5show policy-map interface interface slot/port type {qos | queuing}


          例:
          switch(config)# show policy-map interface ethernet 1/1 type qos
           

          (任意)指定したインターフェイスに適用されるポリシー マップについての情報を表示します。 デバイスに表示される内容を、qos またはキューイング ポリシーに制限できます。

           
          ステップ 6copy running-config startup-config


          例:
          switch(config)# copy running-config startup-config
           

          (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

           

          レイヤ 3 インターフェイスのサービス ポリシーの設定

          はじめる前に

          Ternary Content Addressable Memory(TCAM)がレイヤ 3 QoS に対してカービングされることを確認します。

          詳細については、「QoS TCAM カービングの設定」の項を参照してください。

          手順の概要

            1.    configure terminal

            2.    interface interface slot/port

            3.    no switchport

            4.    service-policy type {qos input | queuing output} policy-map-name [no-stats]

            5.    show policy-map interface interface slot/port type {qos | queuing}

            6.    copy running-config startup-config


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


            例:
            switch# configure terminal
            switch(config)#
             

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

             
            ステップ 2interface interface slot/port


            例:
            switch(config)# interface ethernet 1/1
            switch(config-if)#
             

            設定インターフェイス モードを開始します。

             
            ステップ 3 no switchport


            例:
            switch(config-if)# no switchport
             

            レイヤ 3 インターフェイスを選択します。

             
            ステップ 4 service-policy type {qos input | queuing output} policy-map-name [no-stats]


            例:
            switch(config-if)# service-policy input policy1
            switch(config-if)#
             

            ポリシー マップをレイヤ 3 インターフェイスのサービス ポリシーとして使用するように指定します。 2 つのポリシー マップ コンフィギュレーション モードがあります。

            • qos input:分類モード。これがデフォルトのモードです。

            • queuing output:キューイング モード。

            (注)     

            output キーワードは、そのポリシー マップがインターフェイスの送信トラフィックに適用されることを示します。 queuing ポリシーには output のみ適用できます。

             
            ステップ 5show policy-map interface interface slot/port type {qos | queuing}


            例:
            switch(config)# show policy-map interface ethernet 1/1 type qos
             

            (任意)指定したインターフェイスに適用されるポリシー マップについての情報を表示します。 デバイスに表示される内容を、qos またはキューイング ポリシーに制限できます。

             
            ステップ 6copy running-config startup-config


            例:
            switch(config)# copy running-config startup-config
             

            (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

             

            システム サービス ポリシーの追加

            service-policy コマンドは、システムのサービス ポリシーとしてシステム クラス ポリシー マップを指定します。

            手順の概要

              1.    configure terminal

              2.    system qos

              3.    service-policy type {network-qos | queuing output} policy-map-name


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


              例:
              switch# configure terminal
              switch(config)#
               

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

               
              ステップ 2 system qos


              例:
              switch(config)# system qos
              switch(config-sys-qos)#
              
               

              システム クラス コンフィギュレーション モードを開始します。

               
              ステップ 3service-policy type {network-qos | queuing output} policy-map-name


              例:
              switch(config-sys-qos)# service-policy input default-nq-policy
               

              ポリシー マップをシステムのサービス ポリシー(default-nq-policy)として使用するよう指定します。 2 つのポリシー マップ コンフィギュレーション モードがあります。

              • network-qos:ネットワーク全体(system qos)モード。

              (注)     

              システムをデフォルトのサービス ポリシーに戻すには、このコマンドの no 形式を使用します。

              • queuing:キューイング モード(システム qos およびインターフェイスの output)。

              (注)     

              デフォルトのポリシー マップ コンフィギュレーション モードはありません。 タイプを指定する必要があります。 output キーワードは、そのポリシー マップがインターフェイスの送信トラフィックに適用されることを示します。 キューイング ポリシーには output のみ適用できます。

               

              VLAN への QoS ポリシー アクションの付加

              はじめる前に

              Ternary Content Addressable Memory(TCAM)が VLAN QoS に対してカービングされることを確認します。

              詳細については、QoS TCAM カービングに関する章を参照してください。

              手順の概要

                1.    configure terminal

                2.    vlan configuration vlan-id-list

                3.    service-policy [type qos] {input} {policy-map-name} [no-stats]

                4.    show policy-map [interface interface | vlan vlan-id] [input] [type qos | queuing] [class [type qos | queuing] class-map-name]

                5.    copy running-config startup-config


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


                例:
                switch# configure terminal
                switch(config)#
                 

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

                 
                ステップ 2 vlan configuration vlan-id-list


                例:
                switch(config)# vlan configuration 2
                switch(config-vlan-config)#
                 

                VLAN コンフィギュレーション モードを開始します。

                (注)     

                vlan-id-list は VLAN のスペース区切りリストです。

                 
                ステップ 3 service-policy [type qos] {input} {policy-map-name} [no-stats]


                例:
                switch(config-vlan-config)# service-policy type qos input policy1
                 

                ポリシー マップを VLAN の入力パケットに追加します。

                VLAN には入力ポリシーを 1 つのみ接続できます。

                この例では、policy1 を VLAN に追加します。

                 
                ステップ 4 show policy-map [interface interface | vlan vlan-id] [input] [type qos | queuing] [class [type qos | queuing] class-map-name]


                例:
                switch(config)# show policy-map vlan 2
                 

                (任意)すべてのインターフェイスまたは指定したインターフェイスに適用したポリシー マップについての情報を表示します。 デバイスに表示される内容を、入力ポリシー、qos またはキューイング ポリシー、および特定のクラスに制限できます。

                 
                ステップ 5copy running-config startup-config


                例:
                switch(config)# copy running-config startup-config
                 

                (任意)実行コンフィギュレーションをスタートアップ コンフィギュレーションに保存します。

                 

                Session Manager による QoS サポート

                Session Manager は QoS の設定をサポートしています。 この機能によって、QoS の設定を確認し、設定を実行コンフィギュレーションにコミットする前に、その設定が必要とするリソースが利用可能かどうかを確認できます。 Session Manager の詳細については、『Cisco Nexus 9000 Series NX-OS System Management Configuration Guide』を参照してください。

                コンフィギュレーション セッションを開始すると、コンフィギュレーション セッションが中断されるかコミットされるまで、configure terminal コンフィギュレーション モードを使用してコンフィギュレーション コマンドを開始できません。 並行設定(一方でコンフィギュレーション セッションを使用し、もう一方で configuration terminal コンフィギュレーション モードを使用)を開始すると、コンフィギュレーション セッション モードで確認エラーが発生する可能性があります。