Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
このページの内容
 

レイヤー 3 サービス クラス(CoS)

ジュニパークラウドネイティブルーターは、L3サービス品質(QoS)としても知られるレイヤー3サービスクラス(CoS)をサポートします。このトピックでは、サポートされるCoSメカニズムの概要、設定例、検証例を紹介します。

L3 CoSの概要

ネットワークで輻輳や遅延が発生した場合、データのランダムな損失を避けるために、一部のパケットに優先順位を付ける必要があります。サービス品質(QoS)としても知られるサービスクラス(CoS)は、電子メール、ストリーミングビデオ、音声、大容量ドキュメントファイル転送などの類似タイプのトラフィックをクラスに分割することで、この優先順位付けを実現します。その後、スループットやパケットロスなど、異なるレベルの優先度をグループごとに適用することで、トラフィックの動作を制御します。ジュニパークラウドネイティブルーターはCoSをサポートしており、トラフィックを区別または分類することができます。設定されたルールに従って、トラフィックをドロップするか、トラフィックの優先度を下げることができます。 サービスクラス の詳細については、Junosのドキュメントを参照してください。

クラウドネイティブルーターのCoSアプリケーションは、IPv4およびIPv6パケットヘッダーの差別化されたサービスフィールドに6ビットの差別化されたサービスコードポイント(DSCP)を使用するDiffServをサポートしています。IPv6では、DSCPはトラフィッククラスと呼ばれます。この設定では、DSCP値を使用して、着信パケットのCoS処理を決定します。DSCPフィールドは、パケットの変更された優先度をネクストホップに通知するためにも使用されます。

クラウドネイティブルーターがサポートするCoSメカニズム

Cloud-Native Routerは、分類子、ポリサー、書き換え/マーカーCoSメカニズムをサポートします。以下のセクションで、クラウドネイティブルーターのCoS実装について詳しく見てみましょう。

転送クラスと損失の優先度

転送クラスは、JCNRを通過するパケットに適用される転送ポリシーとマーキングポリシーに影響します。デフォルトでは、Cloud-Native Routerには転送クラスが定義されていません。8つのキューにマッピングされた最大16のカスタム転送クラスを定義できます。

クラウドネイティブルーターのCoS実装では、転送クラスと損失の優先度が書き換えルールとポリサーに使用されます。損失の優先度は、分類子によって低、中低、中高、高に設定されます。クラウドネイティブルーターのCoS実装における損失の優先度の使用方法の一部を次に示します。

表1:フォワーディングクラスと損失の優先度の使用
QoSブロック

損失の優先度の使用方法

分類子

転送クラスと損失の優先度は、分類子によって設定されます。

書き換え

損失の優先度は、新しいDSCP値を取得するためのトラフィッククラス(フォワーディングクラス)とともにインデックスとして使用されます。

ポリサー

カラー認識ポリサーのみが損失優先度を使用します。損失の優先度は、以下のようにトラフィックカラーにマッピングされます。

  • 損失の優先度低は緑にマッピングされます
  • 損失の優先度「中高」と「中低」は黄色にマッピングされます
  • 損失優先度高は赤にマッピングされます
スケジューラ 転送クラスと損失の優先度は、厳密な優先度に基づいてトラフィックをキューイングするためのスケジューラへの入力です。

分類子

パケット分類とは、着信パケットの検査を指します。この機能は、パケットを特定の CoS サービス レベルに関連付けます。分類子は、受信パケットを転送クラスと損失優先度に関連付け、関連する転送クラスに基づいて、パケットを出力キューに割り当てます。2つの一般的なタイプの分類子がサポートされています。

  • 動作集約分類子—動作集約(BA)は、JCNRに入るパケットに対して動作する分類方法です。パケットヘッダーのCoS値が調べられ、この1つのフィールドがパケットに適用されるCoS設定を決定します。BA 分類子を使用すると、DSCP(差別化されたサービスコードポイント)値と DSCP IPv6 値に基づいて、パケットの転送クラスと損失優先度を設定できます。BA 分類子はインターフェイスレベルで設定されます。 Behavior Aggregate Classifer の詳細については、Junosのドキュメントを参照してください。

  • マルチフィールドトラフィック分類子—マルチフィールド(MF)分類子は、パケットの送信元アドレスと宛先アドレス、送信元と宛先ポート番号など、パケット内の複数のフィールドを調べることができます。マルチフィールド分類子では、ファイアウォールフィルター(ACL)ルールに基づいてパケットの転送クラスと損失優先度を設定します。パケットがBAとMFの両方の分類子に一致する場合、MF分類子が優先されます。 Multified Traffic Classifier の詳細については、Junos のドキュメントを参照してください。

ポリサー

ポリサーを使用すると、特定のクラスのトラフィックを指定された帯域幅とバーストサイズに制限できます。ポリサーは、設定されたトラフィックレートとバーストサイズに対して各パケットを測定(測定)します。次に、パケットと測定結果をマーカーに渡し(書き換えルール)、測定結果に対応するパケット損失の優先度を割り当てます。ポリサーは、設定された特定のトラフィック制限のセットに基づいて、自動車の交通制御に使用される信号機の色に類似した2つまたは3つのカテゴリのいずれかに属するものとしてトラフィックフローを識別します。ポリサーは、パケットごと、またはトラフィッククラスごとに適用できます。 クラウドネイティブルーターのCoS実装は、16のポリサープロファイルをサポートします。 ポリサーの実装 の詳細については、Junosのドキュメントを参照してください。クラウドネイティブルーターのCoS実装では、ポリサーはシングルレート3カラーマーカー(srTCM)または2レート3カラーマーカー(trTCM)モードで動作します。ポリサーは、カラー認識モードまたは色覚異常モードでトラフィックカラーマーキングを実行できます。カラー認識モードでは、ポリサーは分類子によって派生したパケットのカラーを追加入力とみなします。色覚異常モードでは、ポリサーは新しい色を決定する際にパケットの色を考慮しません。以下の表で、各モードのさまざまな考慮事項を見ていきます。

  • シングルレート3カラー—シングルレート3カラーマーカー(srTCM)は、設定されたコミット情報レート(CIR)、コミットバーストサイズ(CBS)、ピークバーストサイズ(PBS)に基づいてトラフィックを計測します。シングルレートの3カラーポリサーは、ピーク到着率ではなくパケット長に基づいてサービスが構成されている場合に最も役立ちます。トラフィックは、以下の考慮事項に基づいて、緑、黄、赤の3つのカテゴリのいずれかに属するものとしてマークされます。

    表2:カラー認識srTCM
    受信カラー

    パケットの測定対象

    考えられるケース

    新しい色

    パケットに対するアクション

    緑色

    CIR、CBS、PBS

    CBS以下

    緑色

    ドロップされていません

    CBSより上、PBSより下

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PBS以上

    破棄

    黄色

    PBS

    PBS以下

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PBS以上

    破棄
    従量制なし NA 破棄
    表3:色覚異常srTCM

    パケットの測定対象

    考えられるケース

    新しい色

    パケットに対するアクション

    CIR、CBS、PBS

    CBS以下

    緑色

    ドロップされていません

    CBSより上、PBSより下

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PBS以上

    破棄

  • ツーレートスリーカラー—2レートスリーカラーマーカー(trTCM)は、設定されたCIRとピーク情報レート(PIR)に基づいてトラフィックを計測します。2 レート 3 カラー ポリサーは、サービスが必ずしもパケットの長さではなく到着レートに従って構成されている場合に最も役立ちます。トラフィックは、以下の考慮事項に基づいて、次の3つのカテゴリのいずれかに属するものとしてマークされます。

    表4:カラー認識trTCM
    受信カラー

    パケットの測定対象

    考えられるケース

    新しい色

    パケットに対するアクション

    緑色

    CIR、PIR

    CIR以下

    緑色

    ドロップされていません

    CIRを上回るがPIRを下回る

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PIR以上

    破棄

    黄色

    PIR

    PIR以下

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PIR以上

    破棄
    従量制なし NA 破棄
    表5:色覚異常trTCM

    パケットの測定対象

    考えられるケース

    新しい色

    パケットに対するアクション

    CIR、PIR

    CIR以下

    緑色

    ドロップされていません

    CIRを上回るがPIRを下回る

    黄色

    書き換えルールを使用してトラフィッククラスを変更します。

    PIR以上

    破棄

ポリサーによってマークされた色は、次のように損失の優先度にマップされます。

表6:色から損失の優先度へのマッピング

カラー

損失の優先度

緑色

低い

黄色

中-低(色を損失の優先度にマッピングしている間は、中-高は使用されません)

高い

書き換え/マーカー

書き換えルールまたはマーカーは、発信パケットに適切なCoSビットを設定します。これにより、次のダウンストリームのルーティングデバイスは、パケットを適切なサービスグループに分類できます。アウトバウンドパケットの書き換え(マーキング)は、ルーティングデバイスがネットワークの境界にあり、ターゲットピアのポリシーを満たすためにCoS値を変更する必要がある場合に便利です。書き換えプロファイルはインターフェイスに適用され、分類子やポリサーの計測結果から導き出された転送クラスと損失の優先度に基づきます。Cloud-Native Router書き換えルールは、外部IPv4/IPv6 DSCPマーキングの内部IPヘッダーDSCPフィールドへのコピーと、MPLS EXPビットマーキングをサポートしています。Cloud-Native Routerは、16種類の書き換えプロファイルをサポートしています。 ルールの書き換え の詳細については、Junosのドキュメントを参照してください。

注:

クラウドネイティブルーターのCoS実装は、どのCoSブロックにも一致しないトラフィックに対する暗黙的なベストエフォート処理をサポートしていません。ベストエフォート処理には、明示的なキャッチオールルールを設定する必要があります。

注:

クラウドネイティブルーターのCoS実装は、トンネル化されたパケット(MPLSoUDPおよびVXLAN)に対してのみ、外部IPヘッダーのDSCP値を変更します。

スケジューラ

スケジューラは、Cloud-Native RouterのCoS実装の最後のブロックで、パケットの優先度を計算します。Cloud-Native Routerは、優先度の高い順から低い順に、厳密な優先度8キュースケジューラを実装しています。転送クラスは、スケジューラの優先度に直接マッピングされます。Cloud-Native Routerは、デプロイメントヘルムチャートで最大4つのスケジューラプロファイルと、最大16のスケジューラマップとフォワーディングクラスをサポートします。ス ケジューラ の詳細については、Junosのドキュメントを参照してください。以下の表に示すように、8つの優先度のいずれかでスケジューラを設定できます。スケジューラの優先度はすでにインターフェイスキュー(8キュー)にマッピングされていることに注意してください。

表7:スケジューラの優先順位

優先度

スケジューリングの優先度(キュー)

高い

スケジューリングの優先度1

スケジューリングの優先度 7 (最小)

低-高

スケジューリングの優先度 5

低遅延

スケジューリングの優先度 4

低-中

スケジューリングの優先度6

中高

スケジューリングの優先度2

中-低

スケジューリングの優先度3

ストリクトハイ

スケジューリング優先度0(最高)

ドロッパーとシェイパー

スケジューラブロックには、スポイトモジュールとシェーパーモジュールも含まれています。

  • ドロッパー—DPDKドロッパーモジュールは、輻輳を回避するためにスケジューラブロックに到着したパケットをドロップします。ドロップは、設定されたWRED(Weighted Random Early Detection)ドロッププロファイルマップに基づいて実行されます。深刻な輻輳が発生した場合、ドロッパーモジュールがテールドロップを実行し、その結果、到着したすべてのパケットがドロップされることがあります。ドロッププロファイルは、スケジューラキューごとに適用され、パケット損失の優先度に基づく場合があります。スケジューラごとに最大32のドロッププロファイルと3つのドロッププロファイルマップがサポートされます。 ドロッパー の詳細については、Junosのドキュメントを参照してください。
  • シェーパー—シェーパーまたは送信レートは、エグレス キューごとのトラフィックをシェーピングするために使用されます。シェーパーは、キューの送信レートを制限することで、優先度の高いキューが優先度の低いキューを枯渇させるのを防ぐことができます。シェーピングレートは、スケジューラキューに適用されます。

サポートされているインターフェイス

Cloud-Native Routerは、CoS実装のために以下のインターフェイスをサポートしています。

表8:CoS実装用サポートインターフェイス
CoSコンポーネント/インターフェイスタイプ

ポッドインターフェイス

ファブリックインターフェイス

IRB インターフェイス

分類子

対応

対応

対応

ポリサー

対応

対応

対応

マーカー

対応

対応

対応

スケジューラ 未対応 対応 未対応

L3 CoS設定

スケジューラのコア数と帯域幅を定義する Helm チャートのインターフェイスごとの CoS スケジューラプロファイルを設定する必要があります。詳細については、 Helm Chartのカスタマイズ を確認してください。
コンフィグレットを使用して、Cloud-Native RouterコントロールプレーンでCoS設定を実行する必要があります。詳細については、「 クラウドネイティブルーター設定のカスタマイズ 」を参照してください。コンフィグレットの例を以下に示します。

転送クラスを設定する

Cloud-Native Routerには、デフォルトで設定された転送クラスがありません。8つのキューにマッピングされた最大16の転送クラスを設定できます。キュー番号はスケジューラ設定で定義された優先度から派生し、キュー番号と1対1でマッピングされるため、ユーザー定義のキューマッピングは無視されます。

分類子の設定

BA分類子を設定し、インターフェイスに適用することができます。

MF分類子をファイアウォールフィルターとして設定できます。

ポリサーの設定

ポリサーをアクションタイプ three-color-policer 以下のように設定できます。

シングルレートスリーカラーメーター(srTCM)ポリサー:

ツーレートスリーカラーメーター(trTCM)ポリサー:

ポリサーで分類子を設定できます。

ポリサー付きBA分類子:

ポリサーを備えたファイアウォールフィルターとしてのMF分類子:

注:複数のファイアウォールフィルター条件に同じポリサーが設定されている場合、条件ごとに1つずつ、複数のポリサーインスタンスが作成されます。

書き換え/マーカーの設定

書き換え/マーカーは次のように設定できます。

トンネルパケットのMPLS Exp書き換え:

スケジューラの設定

スケジューラは、8つの優先度のいずれかに設定できます。スケジューラマップは、スケジューラマッピングへの転送クラスを設定し、インターフェイスレベルで適用されます。

注:CoS設定は、ファブリックインターフェイスがhelmチャートのqos-scheduler-profileにマッピングされている場合にのみ有効です。スケジューラプロファイルには、CPUと帯域幅の割り当てを設定する必要があります。詳細については、Helm Chartのカスタマイズを参照してください。

ドロッパーとシェーパーの設定

スケジューラブロック内でドロッパーモジュールとシェーパーモジュールを設定できます。ドロッププロファイルマップを定義し、送信レートとともにスケジューラに割り当てます。

L3 CoS検証

L3 CoS設定を確認するためのCLIコマンド

cRPDでの分類子設定の確認

cRPDシェルで以下のコマンドを使用して、L3 CoS設定を検証できます。

  • show class-of-service classifierコマンドを使用して分類子の設定を確認します。出力例を以下に示します。
  • show class-of-service code-point-aliasesコマンドを使用して、code-point-alisasesの設定を確認します。出力例を以下に示します。
  • show class-of-service interfaceコマンドを使用して、インターフェイス上のCoS設定を確認します。出力例を以下に示します。
  • show class-of-service rewrite-ruleコマンドを使用して、書き換えルールの設定を確認します。出力例を以下に示します。
  • show class-of-service schedulersコマンドを使用して、スケジューラ、ドロッパー、シェーパーの設定を確認します。出力例を以下に示します。

vRouterでCoS分類子を検証する

書き換えルールの検証

MF 分類子の ACL を検証する

注:各用語には独自のポリサーインスタンスがあります。例えば、ファミリーinetの用語1にはポリサーインスタンスV4MCFF_31trTCM_2があり、用語2には同じポリサーsrTCM_2.のポリサーインスタンスV4MCFF_32trTCM_2があります

ポリサー統計の検証

スケジューラ統計情報の検証

ドロッパーの統計情報を確認します。

インターフェイスレート統計を確認します。

スケジューラポート統計を確認します。

スケジューラのポートレート統計を確認します。

スケジューラポート統計情報のクリア:

インターフェイスに適用されたCoS機能の検証