この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このマニュアルセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザーインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブランゲージに対する取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
目次
この章の内容は、次のとおりです。
この機能により、次の目的に対応します。
クラスベース重み付け均等化キューイング(CBWFQ)は、標準の重み付け均等化キューイング(WFQ)機能を拡張して、ユーザ定義のトラフィック クラスをサポートするようにしたものです。 CBWFQ では、プロトコルなどの一致基準や CoS 値に基づいて、トラフィック クラスを定義します。 クラスの一致基準を満たすパケットは、そのクラスのトラフィックの一部となります。 クラスごとに 1 つのキューが確保され、クラスに属するトラフィックは、そのクラスのキューに送られます。
クラスが一致基準によって定義されると、その特性を割り当てることができます。 クラスに特性を持たせるには、帯域幅と最大キュー制限を割り当てます。 クラスに割り当てられた帯域幅は、輻輳中のクラスに適用する保証帯域幅です。
クラスに特性を持たせるには、そのクラスのキュー制限も指定します。これは、クラスのキューに集めることができる最大パケット数です。 クラスに属するパケットは、そのクラスの特性の帯域幅とキュー制限に対応しています。
設定されたキュー制限にキューが達した後、そのクラスにパケットが追加されると、テール ドロップが発生します。
設定されているどのクラスにも一致しないトラフィックには、ベスト エフォート処理が行われます。 パケットを分類した後、クラス間のサービスの区別にも使用可能なすべての標準メカニズムを適用します。
CBWFQ では、そのクラスに指定された重みは、そのクラスの一致基準を満たすそれぞれのパケットの重みとなります。 出力インターフェイスに到着したパケットは、定義された一致基準フィルタに従って分類された後、それぞれに適切な重みが割り当てられます。 特定のクラスに属するパケットの重み付けは、クラス設定したときにクラスに割り当てた帯域幅から適用されます。そういった意味では、クラスの重み付けはユーザ定義可能です。
パケットの重みが割り当てられると、そのパケットは適切なクラス キューに並びます。 CBWFQ は、キューイングされたパケットに割り当てられた重み付けを使用し、クラス キューが確実に均等に提供されるようにします。
クラス ポリシーの設定、つまり CBWFQ の設定は、次の 3 つの処理を伴います。
(注) |
キューイング ポリシー マップは、出力(発信)方向のアップリンクにだけ適用できます。 |
ポリシー マップにより、ネットワーク トラフィックがクラス単位で優先順位付けされます。 最適な Quality of Service が得られるトラフィックの優先順位付けが行われるように、ポリシー マップを作成して各クラスのトラフィックの扱い方法を定義します。
この機能にはライセンスは不要です。 ライセンス パッケージに含まれていない機能はすべて Cisco NX-OS システム イメージにバンドルされており、追加費用は一切発生しません。 NX-OS ライセンス方式の詳細については、『Cisco NX-OS Licensing Guide』を参照してください。
EXEC モードで CLI にログインしておきます。
クラスベース重み付け均等化キューイングは、デフォルトではディセーブルです。
この機能を利用すると、トラフィック クラスを区別し、適切な帯域幅を保証できます。 クラスベース重み付け均等化キューイングを設定するには、以下の手順に従ってください。
switch# config terminal switch(config)# class-map type queuing match-all class_fin1 switch(config-cmap-que)# match protocol vmw_vmotion switch(config-cmap-que)# exit switch(config)# policy-map type queuing Policy-vmotion switch(config-pmap-que)# class type queuing class_fin1 switch(config-pmap-c-que)# bandwidth percent 50 switch(config-pmap-c-que)# queue-limit 500 switch(config-pmap-c-que)# show policy-map type queuing Policy-vmotion Type queuing policy-maps ======================== policy-map type queuing Policy-vmotion class type queuing Match-vmotion bandwidth percent 50 switch(config-pmap-c-que)# exit switch(config-pmap-que)# exit switch(config)# port-profile type ethernet myppte switch(config-port-prof)# service-policy type queuing output my_pmtq switch(config-port-prof)# show policy-map interface switch(config-port-prof)# copy running-config startup-config
設定を確認するには、次のいずれかのコマンドを使用します。
コマンド |
説明 |
---|---|
show policy map type queuing name |
キューイング ポリシー マップの設定を表示します。 |
show class-map type queuing name |
キューイング クラス マップの設定を表示します。 |
show policy-map interface |
ポリシーマップ インターフェイスの設定を表示します。 |
show running-config ipqos |
QoS の実行コンフィギュレーションを表示します。 |
この例では、ポリシー vmotion のキューイング タイプのポリシー マップを表示します。
n1000v# show policy-map type queuing Policy-vmotion Type queuing policy-maps ======================== policy-map type queuing Policy-vmotion class type queuing Match-vmotion bandwidth percent 50
この例では、vmotion に対するクラス マップ キューイングを表示します。
n1000v# show class-map type queuing Match-vmotion Type queuing class-maps ======================== class-map type queuing match-any Match-vmotion match protocol vmw_vmotion
この例では、CoS キューイング タイプのクラス マップを表示します。
n1000v# show class-map type queuing Match-Cos Type queuing class-maps ======================== class-map type queuing match-all Match-Cos match cos 5
この例では、インターフェイス ethernet policy v-motion のポリシー マップを表示します。
n1000v# show policy-map interface ethernet 3/3 Global statistics status : disabled Ethernet3/3 Service-policy (queuing) output: Policy-vmotion policy statistics status: enabled Class-map (queuing): Match-vmotion (match-any) Match: protocol vmw_vmotion bandwidth percent 50
この例では、インターフェイス ethernet policy-CoS のサービス ポリシーを表示します。
n1000v# show policy-map interface ethernet 3/3 Global statistics status : disabled Ethernet3/3 Service-policy (queuing) output: Policy-Cos policy statistics status: enabled Class-map (queuing): Match-Cos (match-all) Match: cos 5 bandwidth percent 50
この例では、インターフェイス port channel のサービス ポリシーを表示します。
n1000v# show policy-map interface port-channel 1 Global statistics status : disabled port-channel1 Service-policy (queuing) output: Policy-vmotion policy statistics status: enabled Class-map (queuing): Match-vmotion (match-any) Match: protocol vmw_vmotion bandwidth percent 50
次に、vMotion トラフィックに帯域幅の 50% を割り当てる例を示します。
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# class-map type queuing match-any Match-vmotion switch(config-cmap-que)# exit switch(config)# policy-map type queuing Policy-vmotion switch(config-pmap-que)# class type queuing Match-vmotion switch(config-pmap-c-que)# bandwidth percent 50 switch(config-pmap-c-que)# exit switch(config-pmap-que)# exit switch(config)# interface ethernet 3/3 switch(config-if)# service-policy type queuing output Policy-vmotion
次に、CoS 値が 5 のトラフィックに帯域幅の 50% を割り当てる例を示します。
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# class-map type queuing match-all Match-Cos switch(config-cmap-que)# match cos 5 switch(config-cmap-que)# exit switch(config)# policy-map type queuing Policy-Cos switch(config-pmap-que)# class type queuing Match-Cos switch(config-pmap-c-que)# bandwidth percent 50 switch(config-pmap-c-que)# exit switch(config-pmap-que)# exit switch(config)# interface ethernet 3/3 switch(config-if)# service-policy type queuing output Policy-Cos
次の例では、複数のトラフィック クラスによるポリシー マップの方法を示します。
switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# class-map type queuing match-any class-vmotion switch(config-cmap-que)# match protocol vmw_vmotion switch(config-cmap-que)# exit switch(config)# class-map type queuing match-any class-cos-2 switch(config-cmap-que)# match cos 2 switch(config-cmap-que)# exit switch(config)# policy-map type queuing policy-priority-vmotion switch(config-pmap-que)# class type queuing class-vmotion switch(config-pmap-c-que)# bandwidth percent 60 switch(config-pmap-c-que)# class type queuing class-cos-2 switch(config-pmap-c-que)# bandwidth percent 40 switch(config-pmap-c-que)# exit switch(config-pmap-que)# exit switch(config)# interface po1 switch(config-if)# service-policy type queuing output policy-priority-vmotion switch(config-if)# show policy-map type queuing policy-priority-vmotion Type queuing policy-maps ======================== policy-map type queuing policy-priority-vmotion class type queuing class-vmotion bandwidth percent 60 class type queuing class-cos-2 bandwidth percent 40 switch# configure terminal Enter configuration commands, one per line. End with CNTL/Z. switch(config)# interface po1 switch(config-if)# service-policy type queuing output policy-priority-vmotion end switch(config-if)# show policy-map interface po1 Global statistics status : disabled port-channel1 Service-policy (queuing) output: policy-priority-vmotion policy statistics status: enabled Class-map (queuing): class-vmotion (match-any) Match: protocol vmw_vmotion bandwidth percent 60 Class-map (queuing): class-cos-2 (match-any) Match: cos 2 bandwidth percent 40