IP to ATM Class of Service(CoS; サービス クラス)では、IP と ATM 間における、Quality of Service(QoS)特性による大まかなマッピングに関する一連の機能が規定されています。場合によっては、分散 QoS を使用する 7500 シリーズ プラットフォームでは、7200 シリーズおよび 2600/3600 シリーズを含むその他すべてのプラットフォームとは異なる方法で、これらの機能が実装されます。
1 つの違いは、Class-Based Weighted Fair Queueing(CBWFQ; クラスベース均等化キューイング)の bandwidth 文または Low Latency Queueing(LLQ; 低遅延キューイング)の priority 文で割り当てることができない帯域幅、およびその他すべてのトラフィックで使用できる必要がある帯域幅の量です。このドキュメントでは、実装の違いと、7500シリーズルータ以外のプラットフォームでmax-reserved-bandwidthコマンドを使用して残す必要がある帯域幅の量を調整する方法について説明します。
このドキュメントに特有の要件はありません。
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。
音声とビデオをサポートするためにQoSサービスポリシーを設定する場合は、必要なすべてのアプリケーションに適切な帯域幅が確保されていることを確認する必要があります。設定を開始するには、音声メディアストリーム、ビデオストリーム、音声制御プロトコル、およびすべてのデータトラフィックなど、主要な各アプリケーションの最小帯域幅要件を追加します。この合計は、特定のリンクの最小帯域幅要件を表し、そのリンクで使用可能な総帯域幅の75 %以下を消費する必要があります。この75 %のルールでは、次の2種類のオーバーヘッドトラフィックの帯域幅が残されます。
ルーティングプロトコルのアップデートとレイヤ2キープアライブ
電子メール、HTTPトラフィック、その他のデータトラフィックなど、簡単に測定できない追加アプリケーション
さらに、75 %のルールは、レイヤ2オーバーヘッドの2セットに対して帯域幅を予約します。
定義したトラフィッククラスのレイヤ2オーバーヘッド。ATM Permanent Virtual Circuit(PVC;相手先固定接続)では、bandwidthおよびpriorityコマンドで指定された帯域幅パラメータは、最後のセルを48バイトの偶数倍または各セルヘッダーの5バイトにするためにパディングをカウントまたは含みません。詳細は、『IP to ATM CoSキューイングでカウントされるバイト数』を参照してください。
QoSサービスポリシーのclass-defaultクラスに一致するパケットのレイヤ2オーバーヘッド
この図は、ルーティングアップデートやその他のバイトがリンクの容量をいかに満たしているかを示しています。
75 %の規則は、『Cisco IOS® Quality of Service Solutions Configuration Guide』の「Congestion Management Overview」の章に記載されています。このルールが適用されるのは、分散 QoS を使用した 7500 シリーズ以外のフラットフォームのみであることを理解することが重要です。
bandwidth コマンドおよび priority コマンドは、kbps 単位またはパーセントで指定される帯域幅パラメータをサポートしています。指定された帯域幅パラメータの合計は、使用可能な帯域幅の75 %を超えることはできません。ATM PVCは、ATMサービスカテゴリに基づいて、次の使用可能な帯域幅の定義を使用します。
ATM サービス カテゴリ | 使用可能な帯域幅の定義 |
---|---|
VBR-rt | 出力 Sustained Cell Rate(SCR; 平均セルレート) |
VBR-nrt | 出力 Sustained Cell Rate(SCR; 平均セルレート) |
ABR | 出力 Minimum Cell Rate(MCR; 最小セルレート) |
UBR | N/A。bandwidth コマンドと priority コマンドのどちらを使用しても、UBR VC は最小帯域幅を保証しません。 |
残りの帯域幅の25 %がオーバーヘッドに使用されます。これには、レイヤ2オーバーヘッド、ルーティングトラフィック、ベストエフォートトラフィックが含まれます。
特定のトラフィック条件とサービスポリシーが使用可能な帯域幅の75 %以上を予約できる場合は、max-reserved-bandwidthコマンドを使用して75 %ルールを上書きできます。Cisco IOSソフトウェアリリース12.2(6)S、12.2(6)T、12.2(4)T2、および12.2(3)では、7500シリーズ以外のプラットフォームのATM PVCでのmax-reserved-bandwidthコマンドがサポートされています。Cisco Bug ID CSCdv06837(登録ユーザ専用)を参照してください。
デフォルトでは、インターフェイス帯域幅の75 %を高度なキューイングに使用できます。このパーセンテージを変更する必要がある場合は、max-reserved-bandwidthコマンドを使用して、高度なキューイングに割り当てられる帯域幅の量を指定できます。max-reserved-bandwidthコマンドはATM物理インターフェイスに適用できますが、インターフェイスの使用可能な帯域幅出力には影響しません。この例では、ATM物理インターフェイスでmax-reserved-bandwidthコマンドを設定する方法を示します
Rtr(config)#policy-map test class multimedia priority 128
Rtr(config)#interface atm 1/0 Rtr(config-if)#max-reserved-bandwidth 90 Rtr(config-if)#service-policy output test
Rtr#show queueing interface atm 1/0 Interface ATM1/0 Queueing strategy: weighted fair Output queue: 0/512/100/0 (size/max total/threshold/drops) Conversations 0/1/64 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) Available Bandwidth 1034 kilobits/sec ...
使用可能な帯域幅は、式に従って1267キロビット/秒(Available Bandwidth = (max reserved bandwidth * interface bandwidth) - (priority classの合計)である必要があります。ただし、出力は1034キロビット/秒です。つまり、max-reserved-bandwidthはインターフェイスの帯域幅の75 %(デフォルトのパーセンテージ)になります。 物理ATMインターフェイスモードで設定されたmax-reserved-bandwidthコマンドは、使用可能な帯域幅の計算に影響を与えないことを示します。
max-reserved-bandwidthコマンドは、PVCの下でも設定できます。次の例は、PVCでのmax-reserved-bandwidthコマンドの設定を示します。
Rtr(config)#policy-map test class multimedia priority 128
Rtr(config)#interface atm 1/0 Rtr(config-if)#pvc 1/41 Rtr(config-if-atm-vc)#max-reserved-bandwidth 90 Rtr(config-if-atm-vc)# service-policy output test
Rtr#show queueing interface atm 1/0 Interface ATM1/0 VC 1/41 Queueing strategy: weighted fair Output queue: 0/512/100/0 (size/max total/threshold/drops) Conversations 0/1/64 (active/max active/max total) Reserved Conversations 0/0 (allocated/max allocated) Available Bandwidth 1267 kilobits/sec ...
使用可能な帯域幅は1267 kbpsで、式に従ってAvailable Bandwidth = (max reserved bandwidth * interface bandwidth) - (priority classの合計)です。 つまり、max-reserved-bandwidthコマンドは、PVCで設定されているインターフェース帯域幅の90 %です。
注:max-reserved-bandwidthコマンドは、PVCで設定されている場合にのみ機能します。ATMインターフェイスで設定することもできますが、使用可能な帯域幅は式に従って変更されません。
使用可能な帯域幅を計算するための式は次のとおりです。
Available Bandwidth = (max reserved bandwidth * interface bandwidth) - (sum of priority classes)
注:高度なキューイングで使用可能な帯域幅は、bandwidth [value in kilobits]インターフェイスコンフィギュレーションコマンドで設定されているようなインターフェイス帯域幅に基づいて計算されます。ただし、サービスポリシーがフレームリレーPVCまたはATM PVCに適用されている場合を除きます。
このコマンドが帯域幅割り当てに与える影響は、Cisco IOSソフトウェアリリースとプラットフォームによって若干異なります。
Cisco IOSソフトウェアリリース12.1Tおよび12.2では、クラスで定義するパーセンテージは、インターフェイス全体またはVC帯域幅ではなく、使用可能な帯域幅のパーセンテージです。
この出力は、T1物理リンクを使用する例です。次のポリシーマップが設定されます。
policy-map test122 class multimedia priority 128 class www bandwidth percent 30
このポリシーマップは、インターフェイスserial0の出力に適用されます。
Router#show policy interface serial0 Serial0 Service-policy output: test122 Class-map: multimedia (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0bps Match: access-group 101 Weighted Fair Queueing Strict Priority Output Queue: Conversation 264 Bandwidth 128 (kbps) Burst 3200 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0 Class-map: www (match-all) 0 packets, 0 bytes 5 minute offered rate 0 bps, drop rate 0bps Match: access-group 102 Weighted Fair Queueing Output Queue: Conversation 265 Bandwidth 30 (%) Max Threshold 64 (packets) (pkts matched/bytes matched) 0/0 (depth/total drops/no-buffer drops) 0/0/0
show interfaceコマンドを使用すると、使用可能な帯域幅を表示できます。
Router#show interface serial 0 Serial0 is up, line protocol is up Internet address is 1.1.1.1/30 MTU 1500 bytes, BW 1544 Kbit, DLY 20000 usec, ... Queueing strategy: weighted fair Output queue: 0/1000/64/0 (size/max total/threshold/drops) Conversations 0/0/256 (active/max active/max total) Reserved Conversations 1/1 (allocated/max allocated) Available Bandwidth 1030 kilobits/sec ...
使用可能な帯域幅は次のように計算されます。
Available Bandwidth = (max reserved bandwidth * interface bandwidth) - (sum of priority classes)
この例の数値を入力すると、1030 Kbit = (75% * 1544 Kbit) - 128 Kbitになります。
帯域幅の割合は、ここで計算したAvailable Bandwidthのパーセンテージです。この場合、1030 Kbitから30%、309 Kbitになります。show policy interfaceコマンドの出力も、絶対値ではなくパーセンテージへの参照を提供します。
注:Cisco IOSソフトウェアリリース12.1Tおよび12.2では、7200以前と7500プラットフォームの間では、帯域幅パーセントのセマンティックに一貫性がありません。7200では、帯域幅の割合は使用可能な帯域幅に対する相対的な割合の数値です。7500では、インターフェイスの帯域幅を基準とした絶対パーセントの数値です。
注:Cisco IOSソフトウェアリリース12.1Tおよび12.2では、同じポリシーマップでクラスをbandwidthとclassとbandwidth percentを混在させることはできません。
Cisco IOSソフトウェアリリース12.2Tおよび12.3では、bandwidth percentコマンドは、7500および7200以前の間で一貫しています。つまり、bandwidth percentコマンドは、Available Bandwidthのパーセンテージではなく、インターフェイスの帯域幅のパーセンテージを指します。ポリシーマップでbandwidth percentコマンドを使用したクラスには、計算された帯域幅の固定量が割り当てられます。すべての帯域幅または帯域幅の割合、優先度および優先度の割合クラスの合計は、最大予約帯域幅ルールを考慮する必要があります。
Cisco 7200およびそれ以前のプラットフォーム用のCisco IOSソフトウェアリリース12.1Tおよび12.2で理解されているbandwidth percentの機能は、Cisco IOSソフトウェアリリース12.2Tおよび12.3で維持され、新しいコマンドbandwidth remaining percent。
これらの変更の詳細については、『Low Latency Queueing with Priority Percentage Support』を参照してください。
次に例を示します。
policy-map test123 class multimedia priority 128 class www bandwidth percent 20 class audiovideo priority percent 10
show policy interfaceの出力では、計算された帯域幅はインターフェイス帯域幅のパーセンテージから得られます。
Router#show policy-map interface serial 0/0 Serial0/0 Service-policy output: test123 Class-map: multimedia (match-all) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: access-group 101 Queueing Strict Priority Output Queue: Conversation 264 Bandwidth 128 (kbps) Burst 3200 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0 Class-map: www (match-all) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: access-group 102 Queueing Output Queue: Conversation 265 Bandwidth 20 (%) ! 20% of 1544Kbit is rounded to 308Kbit Bandwidth 308 (kbps) Max Threshold 64 (packets) (pkts matched/bytes matched) 0/0 (depth/total drops/no-buffer drops) 0/0/0 Class-map: audiovideo (match-all) 0 packets, 0 bytes 30 second offered rate 0 bps, drop rate 0 bps Match: access-group name AudioVideo Queueing Strict Priority Output Queue: Conversation 264 Bandwidth 10 (%) ! 10% of 1544Kbit is rounded to 154Kbit Bandwidth 154 (kbps) Burst 3850 (Bytes) (pkts matched/bytes matched) 0/0 (total drops/bytes drops) 0/0
注:bandwidthコマンドの場合は、同じポリシーマップ内で異なる単位(帯域幅、帯域幅パーセント、帯域幅の残りパーセント)とクラスを混在させることはできません。次のようなエラーメッセージが表示されます。
Router(config-pmap-c)#bandwidth remaining percent 50 All classes with bandwidth should have consistent units
リソース予約プロトコル(RSVP)フローのアドミッションは、使用可能なWFQ帯域幅の関数である最大予約帯域幅を使用するip rsvp bandwidthコマンドによって制限されます。したがって、max-reserved-bandwidthコマンドを使用して、従来のデフォルト値である75 %よりも高い値を設定すると、RSVPで使用可能な帯域幅が増えます。ただし、RSVP設定では、RSVPコールに対して75 %に制限されます。回避策として、bandwidthコマンドを使用して、インターフェイスの帯域幅を増やし、max-reserved-bandwidthコマンドを適用した後、ip RSVP bandwidthコマンドを再適用または再設定します。つまり、Cisco IOSソフトウェアプロセスで見られるように、インターフェイス帯域幅を人為的に増加させます。
注:この回避策の欠点には、ルーティングメトリックの計算誤りや、SNMPで計算されたリンク使用率の値などがあります。
max-reserved-bandwidthコマンドは、Route Switch Processor(RSP)ベースのCBWFQが以前サポートされていた場合を除き、分散クラスベース重み付け均等化キューイング(CBWFQ)やWFQなどの分散VIPベースのQoS機能にはには効果はありません。設定されたクラスには、使用可能な帯域幅の 99 % までを割り当てることができます。class-default では、最低 1 % しか必要とされません。これは、Cisco IOSソフトウェアリリース12.0S、12.1E、および12.2メインラインリリースに当てはまります。
7500シリーズおよび7500シリーズ以外のルータでは、既存の機能との下位互換性を確保するために、デフォルトの最大予約帯域幅値が最初に選択されました。これらのデフォルトは、Modular QoS CLI(MQC)では特に必要ありません。
この違いは、class-default自体の処理に関連しています。
7500 シリーズでは、class-default には(設定で特に予約されていない)最低 1 % の帯域幅が与えられます。class-default のフローはクラスとして、設定されているほかのクラスと、スケジューラへのアクセスをめぐって競合します。
7200 シリーズでは、fair-queue コマンドを使用して設定した場合、class-default はグローバルなスケジューリングの対象としては存在しません。代わりに、class-defaultからの各フローは、次に示すように、他の設定済みクラスと競合します。
したがって、すべてのフローが 1 つのクラスとして処理されるため、7500 での class-default の帯域幅を 1 % に制限することができます。その他のプラットフォームでは、すべての個別フローにより使用される帯域幅の量を決定する必要があります。
class-default と、設定されたクラスの両方における各フローには重み付けが割り当てられ、この重み付けが帯域幅を決定します。すべてのフローに対応する同等の重み付けを計算し、それをその他のクラスの重み付けと比較することができます。さらに悪いケースでは、class-defaultに大量のprecedence-7フローを設定すると、帯域幅の25 %を超える可能性があります。以下に、いくつかの例を示します。
weight = 32k/(1+prec) ==> 4k for flow prec 7
256個の独立したハッシュ・フローがあり、このタイプのハッシュ・フローの合計は4 k/256 = 16になります。これらの256フローは、重み16のクラスに対応する同等の帯域幅を使用します。この例では、使用する帯域幅を1%に制限できません。例外的な状況では、帯域幅は1 %、10 %、20 %、さらには30 %です。実際には、一般的に帯域幅は非常に制限されています。輻輳が発生すると、重み付けが32 kのフローには制限された帯域幅が与えられます。
VC使用率とパケットサイズを推定する方法に関するガイドラインについては、『ATM PVCの使用率の測定』を参照してください。