概要
このドキュメントでは、Cisco 9000 シリーズのアグリゲーション サービス ルータ(ASR9K)プラットフォーム上で Quality of Service(QoS)のオフロード機能を設定する方法について説明します。この機能の目的、適用、および制限事項についても説明します。
要件
この設定を行う前に、システムで次の要件が満たされていることを確認します。
- 特定のサテライトのハードウェアに、次のサテライトのパッケージ インストレーション エンベロープ(PIE)のいずれかまたは両方が、インストールされてアクティブになっている必要があります。
- asr9k-asr9000v-nV-px.pie-5.1.1
- asr9k-asr901-nV-px.pie-5.1.2
- サテライトには、更新されたソフトウェアと Field-Programmable Device(FPD)が組み込まれている必要があります。
使用するコンポーネント
このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。
- ASR-9000v 用の ASR9K 上の Cisco IOS® XR バージョン 5.1.1。
- ASR-901 用の ASR9K 上の Cisco IOS XR バージョン 5.1.2。
注:現時点では、ASR-903のQoSオフロード機能は正式にはサポートされていません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
背景説明
QoS オフロードの概要
サテライトと ASR9K 間のシャーシ間リンク(ICL)(通常 10 Gbps)は、サテライト自体のアクセス インターフェイスによってすぐに飽和状態になる可能性があります。QoS オフロード機能では、輻輳時に ICL 上の重要なデータの喪失を防止するために、(ASR9K ホストの反対側にある)実際のサテライト上のハードウェア内で QoS 機能を提供します。
QoS オフロード機能は、次の図で赤い破線の矢印で示しているように、サテライトのアクセス ポートから ASR9K への方向の輻輳から、ICL を通過するトラフィックを保護するために導入されました。この概念は、いくつかの制限事項を理解する上で役立ち、また QoS の実装を設計する際にも役立ちます。
QoS オフロードのための重要なプロセス
ここでは、QoS オフロードに使用される 2 つの重要なプロセスについて説明します。
インターフェイス コントロール プレーン エクステンダ(icpe_cpm)プロセス
インターフェイス コントロール プレーン エクステンダ(ICPE)プロセスでは、ASR9K ホストとサテライト間の通信チャネルを提供する、サテライト検出および制御(SDAC)プロトコルを管理します。
QoS Policy Manager(qos_ma)プロセス
QoS Policy Manager プロセスでは、次の処理を実行します。
- Route Switch Processor(RSP)のデータベース内の class-map および policy-map の検証およびデータベース内へのそれらの保存を実行します。
- サテライトのインターフェイスから service-policy へのマッピングのデータベースを維持管理します。
- オフロードされたサービス ポリシーに関する QoS 統計情報をサテライト ボックスから定期的に収集します。
- RSP とラインカード(LC)の両方を組み込むために、コントロール プレーン インターフェイスが存在するノードすべてで実行されます。
設定
ここでは、QoS オフロード機能を ASR9K 上に設定する方法について説明します。
QoS オフロードの設定
次の図は、サービス ポリシーがインストールされている場所の視覚的表現として役立ちます。
サテライトのアクセス インターフェイス
サテライトのアクセス インターフェイスの設定例を次に示します。
interface GigabitEthernet200/0/0/1
service-policy output NQoSOff_Out
service-policy input NQoSOff_In
nv
service-policy input ACCESS
注:service-policy output NQoSOff_Outは、ASR9KのICLインターフェイスからサテライトアクセスインターフェイスに送信される非QoSオフロードトラフィック(1)を示し、input NQoSOff_Inは、サテライトアクセスインターフェイスからASR9Kで受信される非QoSトラフィック(1)を示します。また、service-policy input ACCESS は、PC からサテライトのアクセス インターフェイスで受信される QoS オフロード トラフィック(2)を示します。
ICL インターフェイス
ICL インターフェイスの設定例を次に示します。
interface TenGigE0/0/0/1
service-policy output NOT_SUPPORTED
service-policy input NOT_SUPPORTED
nv
satellite-fabric-link network
redundancy
iccp-group 1
!
satellite 200
service-policy output ICL_OFFLOAD
remote-ports GigabitEthernet 0/0/1-2
注:service-policyの出力と入力は、このインターフェイスではNOT_SUPPORTEDです。次のセクションを参照して、慎重に設計してください。また、service-policy output ICL_OFFLOAD は、サテライトの ICL から ASR9K に送信される QoS オフロード トラフィック(3)を示します。
ICL のオーバーサブスクリプション
QoS の service-policy は、ICL インターフェイス(非 QoS オフロード)で直接はサポートされません。このため、サテライトの ICL インターフェイスをオーバーサブスクライブしないように注意する必要があります。ここでは、ICL のオーバーサブスクリプションを防ぐために使用する 2 つの方法について説明します。1 つの方法は、ICL ごとにアクセス インターフェイスの数を制限して、輻輳が発生する可能性をなくすことです。もう 1 つの方法は、シェーパーを各アクセス インターフェイスに適用して、すべてのシェーパーの合計が ICL の帯域幅を超えないようにすることです。
ICL ごとにアクセス インターフェイスの数を制限する
輻輳時にパケットのドロップなしでサテライト上で 15 個の 1 Gbps 接続(15 Gbps のトラフィックの可能性がある)をサポートするには、2 つの別個の 10 Gbps の ICL リンクを設定する必要があります。1 つの 10 Gbps の ICL 接続に、まず 10 個の 1 Gbps のサテライトのアクセス インターフェイスをマッピングします。もう 1 つの 10 Gbps の ICL 接続に、残りの 5 つの 1 Gbps のサテライトのアクセス インターフェイスをマッピングします。各 10 Gbps の ICL 接続にマッピングされるアクセス インターフェイスの数が 10 を超えない限り、他の組み合わせも可能です。
次に設定例を示します。
interface TenGigE0/0/0/1
description ICL_LINK_1_FOR_SAT100
nv
satellite-fabric-link network
satellite 100
remote-ports GigabitEthernet 0/0/0-9
!
interface TenGigE0/0/0/2
description ICL_LINK_2_FOR_SAT100
nv
satellite-fabric-link network
satellite 100
remote-ports GigabitEthernet 0/0/10-14
アクセス インターフェイスへのシェーパーの適用
オーバーサブスクリプションを防ぐために使用するもう 1 つの方法では、ICL からサテライトまでの全体で複数のライン レートの伝送を防ぐために、シェーパーを各サテライトのアクセス インターフェイス(たとえば、GigE100/0/0/9)に直接適用します。たとえば、1 つの 10 Gbps ICL の場合、500 Mbps のシェーパーが 20 個の GigabitEthernet のサテライトのインターフェイスに適用されるときは、この ICL を通過するためにスケジュールされるのは常に 10 Gbps(500 Mb X 20)以下です。
次に設定例を示します。
interface TenGigE0/0/0/1
nv
satellite-fabric-link network
satellite 100
remote-ports GigabitEthernet 0/0/0-19
!
interface GigE100/0/0/0 (For all Gi100/0/0/0-19)
service-policy output 500MBPS_SHAPE
注:ASR9Kホスト上の仮想エンティティであるサテライトアクセスインターフェイス上の非QoSオフロード用に、完全なモジュラQoS CLI(MQC)機能が提供されます。
ICL を通過するコントロールプレーン トラフィックの保護
ここでは、サテライトのアクセス インターフェイスで受信されるネットワーク コントロール プレーン トラフィックが ICL を通過する際に、そのトラフィックを保護する設定例を示します。次の設定例は、この保護をどのように実現できるかを示すものです。
Satellite Access Interface Config:
class-map match-any routing
match precedence 6
policy-map Protect_NCP
class routing
set qos-group 4
!
class class-default
set qos-group 0
interface Gi100/0/0/1
description Satellite Access Interface
service-policy input Protect_NCP
ICL Interface Config:
class-map match-any qos-group-4
match qos-group 4
policy-map ICL-Policy
class qos-group-4
bandwidth remaining percent 5
!
class class-default
bandwidth remaining percent 90
interface TenGigE0/0/0/1
description Satellite ICL
nv
satellite-fabric-link network
redundancy
iccp-group 1
!
satellite 100
service-policy output ICL-Policy
上の設定例では、policy-map の「Protect_NCP」は 6 の IP プレシデンスのすべてのパケットと一致し、それらのパケットを内部 QoS グループ 4 にグループ化します。次にこのグループが ASR9K ホストに向かう ICL に出力されると、QoS グループ 4 の class-map 内に設定された帯域予約によって保護されます。
注意:QoSグループは、パケットのToSバイトに対する実際のマーキングではなく、サテライトとASR9Kホストに対してのみローカルで意味を持つ内部マーキングです。
重要:QoS オフロードを使用する場合、QoS グループの 1、2、4、および 5 をユーザで定義できます。QoS グループの 3、6、および 7 は、基本機能のために予約されており、nV サテライトに固有のため、決して使用しないでください。QoS グループ 0 は、class-default のトラフィック用に予約されています。
QoS オフロードの制限事項
ここでは、QoS オフロード機能の制限事項について説明します。
service-policy の配置に関する制限事項
QoS オフロードは、サテライトのアクセス ポートから ASR9K ホストへの方向の QoS 機能を提供するために実装されています。配置に関する以下の制限事項が適用されます。
- QoS の service-policy は、オフロードまたは非オフロードの ASR9K の ICL インターフェイスには、直接配置できません。
- 出力(output)の service-policy がサポートされるのは、アクティブ ホストに面しているサテライトの ICL インターフェイス上の QoS オフロードに対してだけです。
- 入力(input)の service-policy がサポートされるのは、サテライトのアクセス インターフェイスまたはバンドルで直接受信されるトラフィック用の、サテライトのアクセス ポート インターフェイスまたはバンドル上の QoS オフロードに対してだけです。バンドルの場合、QoS ポリシーはリンクごとの各メンバー単位でインストールされます。
- オフロードされた service-policy は sub-interface に適用できません。
サポートされる QoS オフロード機能
サポートされる QoS オフロード機能は、『Cisco ASR 9000 シリーズ アグリゲーション サービス ルータのモジュラ QoS 構成ガイド、リリース 5.1.x』の「QoS オフロードに関するサポートされるプラットフォーム固有の情報」セクションで説明されています。
注:現在、Simple Network Management Protocol(SNMP)関連のQoSオフロード統計情報はサポートされていません。
サテライトのアクセス インターフェイス上の非 QoS オフロードの制限事項
ここでは、サテライトのアクセス インターフェイス上の非 QoS オフロードの制限事項について説明します。
service-policy の配置に関する制限事項
以下の service-policy の配置に関する制限事項は、サテライトのアクセス インターフェイス上の非 QoS オフロードに適用されます。
- 入力と出力の service-policy は、実際のアクセス ポート設定(nv ではない)で適用できます。これらのポリシーはオフロードされず、パケットは ASR9K からサテライトへのワイヤに配置される前にキューイングされます。
- QoS の service-policy は、オフロードまたは非オフロードの ASR9K の ICL インターフェイスには、直接配置できません。
サービス ポリシー トポロジに関する制限事項
ハブ アンド スポーク トポロジの場合、3 つのレベル(祖父母、親、子)の QoS ポリシーがサポートされます。より新しいトポロジであるリングおよびレイヤ 2(L2)ファブリックの場合、2 つのレベルの QoS ポリシーだけがサポートされます。
確認
このセクションでは、QoS オフロードの設定が正常に機能していることを確認します。
アウトプット インタープリタ ツール(登録ユーザ専用)は、特定の show コマンドをサポートしています。show コマンドの出力の分析を表示するには、Output Interpreter Tool を使用します。
QoS オフロード ポリシーのサテライトへのインストール
オフロードされる QoS ポリシー用のサテライトのハードウェアに QoS ポリシーが正しくインストールされたかどうかを判断するには、nv satellite オプションを指定して show qos status interface コマンドを入力します。コマンド出力内の Status に Active と表示された場合、オフロードされる QoS ポリシーのインストールは成功しています。出力内の Status に Inactive と表示された場合は、なんらかの障害が発生しています。
障害が発生した場合、実際の ICL リンクに問題があることが多く、またオフロードを試みている QoS ポリシーが、ASR9K ホストが稼働している IOS XR ソフトウェアの現在のバージョンではサポートされているものの、実際のサテライトではサポートされていない場合があります。詳細については、このドキュメントの「サポートされる QoS オフロード機能」セクションを参照してください。
コマンド出力内の Status に In-Progress と表示された場合は、サテライトとの接続が失われたことを示しています。Active と Inactive の間のこの中間的な状態では、QoS ポリシーが正常にオフロードされていません。
オフロードの成功と失敗を示す 2 つの出力例を次に示します。
OUTPUT:
RP/0/RSP0/CPU0:ASR9001#show qos status interface gig 0/0/0/0 nv satellite 100
Wed Apr 16 23:50:46.575 UTC
GigabitEthernet0/0/0/0 direction input: Service Policy not installed
GigabitEthernet0/0/0/0 Satellite: 100 output: test-1
Last Operation Attempted : ADD
Status : ACTIVE
OUTPUT:
RP/0/RSP0/CPU0:ASR9001#show qos status interface gig 0/0/0/0 nv satellite 100
Wed Apr 16 23:51:34.272 UTC
GigabitEthernet0/0/0/0 direction input: Service Policy not installed
GigabitEthernet0/0/0/0 Satellite: 100 output: test-2
Last Operation Attempted : ADD
Status : INACTIVE
Failure description :Apply Servicepolicy: Handle Add Request AddSP
test-2 CliParserWrapper:
Remove shape action under class-default first.
サテライトのアクセス インターフェイス上のオフロードされた QoS ポリシーの QoS 統計情報
リモート サテライトのアクセス インターフェイスに適用された QoS ポリシー マップの統計情報を表示またはクリアするには、次の各コマンドを入力します。
- show policy-map interface Gi100/0/0/9 input nv
- clear qos counters interface Gi100/0/0/9 input nv
サテライトの ICL インターフェイス上のオフロードされた QoS ポリシーの QoS 統計情報
リモート サテライトの ICL インターフェイスに適用された QoS ポリシー マップの統計情報を表示またはクリアするには、次の各コマンドを入力します。
- show policy-map interface Ten0/0/0/1 output nv satellite-fabric-link 100
- clear qos counters interface Ten0/0/0/1 input nv satellite-fabric-link 100
注:QoS統計情報は、ASR9Kホストに対して30秒ごとに更新されます。
トラブルシュート
QoS オフロード機能のトラブルシューティングを試みる場合、または Cisco Technical Assistance Center(TAC)へのサービス リクエストを開く場合にデバッグ情報を収集するには、次の各コマンドを入力します。
- show policymgr process trace [all|intermittent|critical]
- show tech qos
- show policy-lib trace [all|critical|intermittent]
- show policy-lib trace client <client-name> location <loc>
- show app-obj trace
- show app-obj db <db_name> jid <jid> location <loc>
- show qos-ma trace
注:<db_name>はclass_map_qos_dbまたはpolicy_map_qos_dbのいずれかです。
既知の障害
このドキュメントに記載された情報に関する既知の障害については、「Cisco Bug ID CSCuj87492 - satether 以外のインターフェイスの下の service-policy オプションの nv を削除する必要がある」を参照してください。この障害は、サテライト以外のインターフェイスから nv オプションを削除するために提起されました。