ACXシリーズルーター上のPPPおよびMLPPPインターフェイスのCoS
Junos CoS では、トラフィックをクラスに分割し、さまざまなレベルのスループットと、輻輳発生時のパケット ロスを提供できます。この機能により、設定したルールに従ってパケット損失が発生します。Junos CoS機能は、ベストエフォート型のトラフィック配信が不十分な場合に差別化されたサービスを提供するために使用できる一連のメカニズムを提供します。
CoS機能は、PPPおよびMLPPPインターフェイスでサポートされています。PPPおよびMLPPPパケットの論理インターフェイスごとに最大4つの転送クラスと4つのキューがサポートされています。
PPPおよびMLPPPインターフェイスのCoSは、ACX5048、ACX5096、またはACX7000シリーズルーターには適用されません。
Junos OS CoS機能は、ベストエフォート型のトラフィック配信が不十分な場合に差別化されたサービスを提供するために使用できる一連のメカニズムを提供します。CoS アプリケーションを設計する際には、サービス ニーズを慎重に検討し、CoS ドメイン内のすべてのルーティング デバイス間で一貫性を確保するために、CoS 設定を徹底的に計画および設計する必要があります。また、すべての機器間の相互運用性を確保するために、CoSドメイン内のすべてのルーティングデバイスとその他のネットワーキング機器を考慮する必要があります。
PPPおよびMLPPPインターフェイス上のCoSに共通する制限
ACXシリーズ ルーターのPPPおよびMLPPPインターフェイスでCoSを設定する場合、以下の制限が適用されます。
PPPカプセル化されたインターフェイスでは、IPv4、IPCP(インターネットプロトコル制御プロトコル)、CHAP(PPPチャレンジハンドシェイク認証プロトコル)、PAP(パスワード認証プロトコル)アプリケーションをサポートするようにインターフェイスを設定できます。
リンクサービスまたはマルチリンクバンドル内のメンバーリンクによってドロップされたパケットの回復方法を定義するドロップタイムアウトは、ACXルーターには適用されません。
トラフィックの損失は、CoS 設定の変更中に発生します。計画担当者属性を即座に変更することはできません。リンクは PPP ではダウン状態に移行し、MLPPP インターフェイスではプロトコルがダウンと表示されます。
スケジューリングおよびシェーピング機能は CIR-EIR モデルに基づいており、重み付け均等化キューイング モードに準拠していません。最小送信速度は 32 Kbps であり、送信レートとシェーピング レートの間でサポートできる最小差も 32 Kbps です。
バッファー サイズは、平均パケット サイズとして 256 バイトを使用して、パケット単位で計算されます。たとえば、TI インターフェイスに 10% のバッファ サイズを設定した場合、1.536 Mbps *(10/100) *(0.1 秒) = 15360 ビットとして割り当てられるバッファ。以下の式は、設定されたキューの長さを計算します。
設定されたキュー長 = バッファ/平均パケット サイズ = (15360/256)/8 = 7.5 = 8 パケット
共有バッファーがないため、「buffer-size」属性と「buffer-size exact」属性を使用しても同じ動作になります。
低と高の 2 つの損失優先度レベルのみがサポートされています。パケット転送エンジンから中高の優先度で到着するトラフィックは、高優先度のトラフィックとして扱われます。ファイアウォール条件のアクションを設定する際に、中高損失優先度タイプを設定できますが、システムによって優先度の高いトラフィックと見なされます。
転送クラスとキュー番号間の固定の組み込みマッピングは、次のように実行されます。 ベストエフォートはキュー 0、expedited-forwarding はキュー 1、sured-forwarding はキュー 2、network-control はキュー 3 です
WRED 設定の場合、最大フィルレベルと最小フィル レベルの差は、パケット数(x^2)で 2 の累乗した値です。そうでない場合は、下側の塗りつぶしレベルが調整され、その差が 2 の累乗の値になります。たとえば、キューには 64 パケットのサイズが含まれます。次の設定を行うとします。
fill-level 50 drop-probability 0; fill-level 100 drop-probability 100;
低いフィル レベルでは、パケットの最小数は 32 です。ただし、fill-level を 50 ではなく 45 に指定すると、下限 fill level は 28 になります。64 - 28 (36 に等しい) は 2 の累乗ではないため、下限の充填レベルは、指数関数的に 2 に累乗された数値に変換するように内部的に調整されます。
フラグメント化マップが設定されている場合、マルチクラス 0 のトラフィックを伝送する転送クラスには最高の優先度を割り当て、マルチクラス 3 トラフィックを伝送する転送クラスに最も低い優先度を割り当てる必要があります。このような設定は、NPU の設計上必要です。
PPP インターフェイスでの CoS の制限
ACXシリーズルーターのPPPインターフェイスでCoSを設定する場合、以下の制限が適用されます。
同じプライオリティを含む 2 つ以上のキュー間の超過レートの分配は、先着順で行われます。たとえば、次のように設定された 2 つのキューがあるとします。
Q1 : 送信レート = 10%、シェーピングレート = 20%
Q2 : 同じ優先度で送信レート = 10%、シェーピングレート = 30%
Q1 の超過率 = (20 - 10) = 10%
Q2 の超過率 = (30 - 10) = 20%
Q1 と Q2 の超過レート分散は同じ比率ではありませんが、これらのキュー内のパケットは先着順で提供されます。このようなシナリオでは、シェーピングレートが引き続き尊重されます。
PPPおよびMLPPPインターフェイスでCoSを設定するためのガイドライン
PPPおよびMLPPPインターフェイスでCoSを設定する場合、以下の点に注意してください。
[edit class-of-service schedulers scheduler-name drop-profile-map]階層レベルでprotocolステートメントで any オプションのみを設定し、指定したスケジューラのプロトコル タイプを指定できます。TCP プロトコル タイプまたは非 TCP プロトコル タイプを指定することはできません。フラクショナルT1およびE1インターフェイスのCoS機能はサポートされていません。CoS は、完全な T1 および E1 インターフェイスでのみサポートされています。
Weighted Fair Queuing(WFQ)シェーピングおよびスケジューリング モデルはサポートされていません。WFQの代わりに、CIR-EIRモデルがサポートされており、シェーピングとスケジューリングの要件を処理します。
パーセンテージベースのレート設定は、MLPPP LSQ インターフェイスではサポートされていません。bpsでの絶対レート設定のみがサポートされています。
T1/E1 リンクの追加や削除によるシェーピングおよびスケジューリング レートの自動調整はサポートされていません。ACXルーターのCoSに適用されるすべての制限は、PPPインターフェイスに適用されます。
ギガビットイーサネットインターフェイスのACXルーターに対するポリサーの制限はすべて、PPPインターフェイスに有効です。この制限には、イングレスおよびエグレス ポリサーが含まれます。これらの制限はシャーシ全体に適用されるため、PPP インターフェイスにも有効です。
inet アドレス ファミリーを持つ MLPPP インターフェイスに指定されたすべての有効な設定は、MPLS アドレス ファミリーを持つ MLPPP インターフェイスにも有効です。例えば、グローバル分類子としての EXP 分類子はイングレス分類でサポートされ、EXP 書き換えルールはエグレス論理インターフェイスでサポートされます。
PPPカプセル化は、ACX1000、ACX2000、ACX2100、およびACX4000ルーターでサポートされています。
ACXルーターでは、最大1000個の論理インターフェイスをサポートできます。
最大 280 の PPP または MLPPP 論理インターフェイスが、システム上のドロップ プロファイルをサポートできます。各MICでは、最大140のPPPまたはMLPPPインターフェイスがサポートされています。
MLPPP インターフェイスでの CoS の制限
ACXシリーズルーター上のMLPPPインターフェイスでCoSを設定する場合、以下の制限が適用されます。
スケジュールおよびシェーピング パラメータのパーセントベースの設定はサポートされていません。絶対レート設定のみがサポートされています。その結果、T1/E1リンクの追加や削除によって、シェーピングやスケジューリングの設定を動的かつ迅速に変更することはありません。
バッファー サイズは、1 つの T1 または E1 リンク速度で計算されます。したがって、マイクロ秒単位の時間値を使用して、バッファー サイズの大きい値のバッファー サイズが計算されます。temporal 設定では、キューイング アルゴリズムは、計算されたバイト数を超えてキューイングするとパケットのドロップを開始します。この最大値は、キューの伝送速度に設定された時間値を乗じて計算されます。デフォルトのキュー サイズと割合ベースのキュー サイズは、現在の帯域幅に基づいていません。
フラグメンテーション マップを使用せずにスケジューラ マップを設定すると、デフォルト設定を含むすべてのスケジューラ マップ設定が、正確な伝送速度機能と同じ動作で適用されます。トラフィックのプライオリティは考慮されず、超過レートはプロビジョニングされません。レート設定のない転送クラスは、割り当てられた最小固定レートである32 Kbpsを受け取ります。
オーバーサブスクリプションとプライオリティはサポートされていないため、帯域幅の使用効率が低下する可能性があります。たとえば、デフォルトのスケジューラ マップで、ベストエフォート キューが 16*T1*(.95) の正確な送信レートに等しいレートで設定されているとします。
ネットワーク制御キューは、正確な 16*T1*(0.05) 送信レートに等しいレートで設定されています。このようなシナリオでは、単一のT1リンクを持つMLPPPバンドルで次の動作が観察されます。
ベストエフォートタイプのトラフィックとしてのみ到着するトラフィックには、他のキューにトラフィックが分配されない場合、完全な帯域幅容量が提供されます。唯一のネットワーク制御キューに到着するトラフィックは、他のキューにトラフィックが存在しない場合でも、1.2288 Mbps の帯域幅に制限されます。トラフィックがベストエフォート キューとネットワーク制御キューの両方に到着すると、両方のキューが最小保証レート内であるため、両方のキューでトラフィックが均等に分割されます。ベストエフォートとネットワーク制御以外のキューは、32 Kbps の正確な送信帯域幅を受信します。
ベストエフォートとネットワーク制御以外のキューには、32 Kbps の正確な送信帯域幅が割り当てられます。
デフォルトのスケジューラマップと、2つのT1リンクを持つMLPPPバンドルの別の例を考えてみましょう。このようなシナリオでは、2つのT1リンクを持つMLPPPバンドルで次の動作が観察されます。
ベストエフォート キューだけに到着するトラフィックは、他のキューにトラフィックがない場合、帯域幅容量全体を取得します。トラフィックが他のキューを通過していない場合でも、ネットワーク制御キューのみに到着するトラフィックは 1.2288 Mbps に制限されます。トラフィックが両方のキューに到着すると、ネットワーク制御キューは 1.2288 Mbps、ベストエフォート キューは 1.843200 Mbps とマークされます。
16 個の T1 リンクを含む MLPPP バンドルを持つデフォルトのスケジューラマップでは、ベストエフォート型トラフィックのみとして到着するトラフィックは、他のどのキューにもトラフィックがない場合、(0.95 * 16 * T1)容量に等しい帯域幅を受け取ります。ネットワーク制御トラフィックとしてのみ到着するトラフィックは、他のキューでトラフィックが観測されない場合でも、1.2288 Mbpsに制限されます。トラフィックが両方のキューに到着すると、ネットワーク制御の場合は 1.2288 Mbps、ベストエフォート キューの場合は(0.95 * 16 * T1)Mbps としてタグ付けされます。フラグメンテーションマップでスケジューラマップを設定した場合、2つ以上のクラスが同じ優先度で設定されていると、それらに提供された送信レートのみを受信し、正確な送信レート機能のために定義されたトラフィックとして機能します。
同じプライオリティの2つのマルチクラス間のオーバーサブスクリプションはサポートされません。マルチクラスエントリーがないキューは、無効状態に移行します。転送クラスからマルチクラスへの1対1のマッピングのみがサポートされます。1つの転送クラスが、1つのマルチクラスのみに対応するトラフィックを送信できます。
IPv4 over PPPインターフェイスのCoS機能
IPv4 トラフィックの PPP インターフェイスでは、次の CoS 機能がサポートされています。
イングレス分類は、固定分類子または動作集約(BA)分類子として指定できます。固定分類子は、インターフェイス上のすべてのトラフィックを転送クラスにマッピングします。転送クラスが出力キューを決定します。固定分類子を設定するには、
[edit class-of-service interface interface-name unit logical-unit-number]階層レベルでforwarding-class class-nameステートメントを含めます。BA 分類(CoS 値トラフィック分類)とは、CoS 設定を使用して、IP パケット ヘッダーの CoS 値に基づいてパケットの転送クラスを設定するパケットパケット分類方法を指します。BA 分類のために検査される CoS 値は、DSCP(差別化されたサービス コード ポイント)値、IP precedence 値、または EXP ビットです。デフォルトの分類子は、IP precedence 値に基づきます。
グローバルEXP分類子を設定するには、 [edit class-of-service system-defaults] 階層レベルで以下のステートメントを記述します。
[edit class-of-service] { system-defaults { classifiers exp classifier-name } }CoS は、次の例に示すように、EXP タイプの 1 つのグローバル システムのデフォルト分類子をサポートします。
[edit class-of-service] { system-defaults { classifiers { exp exp-classf-core; } } }イングレス方向の論理インターフェイスで受信されたすべてのパケットは、固定分類を使用して単一の転送クラスに分類できます。
論理インターフェイス レベルでは、以下のパケット フィールドに基づく BA 分類がサポートされています。
IPv4 - inet-precedence
DSCP
以下は、BA 分類子を定義するための設定スタンザです。
[edit class-of-service] classifiers { (inet-precedence|dscp ) classifier-name { forwarding-class class-name loss-priority [low | high] code-points ([ aliases ] | [ dscp-bits ]); }キューイングおよびスケジューリング機能は、以下のパラメータで構成されています。
キュー当たりの送信速度
キュー当たりのシェーピング レート
WREDの
転送クラス。PPP インターフェイスには、最大 4 つの転送クラスを定義できます。
論理インターフェイスレベルのキューイングでサポートされている 4 つの優先度は、ストリクトハイ、ミディアムハイ、ミディアムロー、またはローです。キューあたりの送信レート(CIR)は、各キューに指定できる最小コミットレートです。キューあたりのシェーピング レート(PIR)は、各キューに指定できる最大送信レートです。WRED の場合、デフォルトの動作ではテール ドロップが有効になります。ドロップ プロファイル設定は WRED を有効にし、入力するドロップの優先順位に基づいて異なるドロップ動作を有効にします。損失の優先度の設定は、輻輳時にどのパケットをネットワークからドロップするかを判断するのに役立ちます。このソフトウェアは、複数のPLP(パケット損失優先度)指定をサポートしています。 低および高
バッファーサイズは、パーセンテージと時間的設定で特定できます。このサイズはキューあたりのパケット数に変換され、256 バイトが平均パケット サイズとして扱われます。キューレベルでは、次の設定を構成できます。
保証伝送速度(CIR)
シェーピングレート(PIR)
ドロッププロファイル
バッファー サイズ
[edit class-of-service] schedulers scheduler_name { transmit-rate (percent number | rate); shaping-rate (percent number | rate); buffer-size (percent | temporal) drop-profile-map map_name; }論理インターフェイスごとに 4 つの転送クラスと 4 つのキューのみがサポートされます。また、論理インターフェイスベースのシェーピングはサポートされていません。
送信およびドロップされたパケットのパケットカウンターとバイトカウンターは、キューごとに使用できます。これらの統計情報の詳細は、show interfaces queue コマンドを使用して表示されます。必要に応じて、ポートレベルの統計情報を提供するアグリゲーションもシステムによってサポートされています。論理インターフェイスレベルの統計情報は、エグレス方向で正しく利用でき、出力に表示されますが、ハードウェアの制限により、ドロップされたパケットに関する統計は考慮されません。以下の設定スタンザは、書き換えルールを定義します。
[edit class-of-service] rewrite-rules { (inet-precedence | dscp | exp) rewrite-name { forwarding-class class-name loss-priority [low | high] code-point value; } }各書き換えルールは、次の設定構文を使用してインターフェイスにアタッチできます。
[edit class-of-service interfaces interface-name]
rewrite-rules { dscp (rewrite-name | default) protocol (inet-both | inet-outer | mpls); exp (rewrite-name | default) protocol protocol-types; inet-precedence (rewrite-name | default) protocol (inet-both | inet-outer | mpls); }ACXルーターでサポートされているファイアウォール機能はすべて、IPv4パケットのPPPインターフェイスに適用できます。
書き換えルールでは、IPv4 または inet の優先順位と EXP ルールがサポートされています。EXP書き換えルールは、論理インターフェイスにのみ適用されます。物理インターフェイスにEXP書き換えルールを適用することはできません。デフォルトのEXP書き換えルールはありません。MPLSパケットのEXP値を書き換えたい場合は、EXP書き換えルールを設定し、論理インターフェイスに適用する必要があります。書き換えルールが適用されていない場合、プッシュされるすべてのMPLSラベルの値はゼロ(0)になります。スワップされたMPLSラベルでは、EXP値は変更されません。
IPv4 over MLPPPインターフェイスのCoS機能
IPv4トラフィックのMLPPPインターフェイスでは、次のCoS機能がサポートされています。
イングレス分類は、固定分類子またはBA分類子として指定できます。
転送クラスを使用した固定分類と、IPv4 優先順位値を使用した BA 分類がサポートされています。
次のスケジューリングおよびキューイングプロパティがサポートされています。
キュー当たりの送信速度
キュー当たりのシェーピング レート
WREDの
転送クラス
キュー当たりのバッファー サイズ
転送クラスからマルチリンククラスへのマッピング。
multilink-classステートメントを使用して、転送クラスをマルチクラス MLPPP(MCML)にマッピングします。ACXルーターでサポートされているファイアウォール機能はすべて、IPv4パケットのMLPPPインターフェイスに適用できます
書き換えルールでは、IPv4 優先順位ルールがサポートされています。
MPLS パケットの MLPPP インターフェイスでは、以下の CoS 機能がサポートされています。
イングレス分類は、固定分類子またはBA分類子として指定できます。転送クラスを使用した固定分類と、EXP ビットを使用した BA 分類がサポートされています。
次のスケジューリングおよびキューイングプロパティがサポートされています。
キュー当たりの送信速度
キュー当たりのシェーピング レート
WREDの
転送クラス
キュー当たりのバッファー サイズ
転送クラスからマルチリンククラスへのマッピング。
multilink-classステートメントを使用して、転送クラスをマルチクラス MLPPP(MCML)にマッピングします。ACXルーターでサポートされているファイアウォール機能はすべて、IPv4パケットのMLPPPインターフェイスに適用できます
書き換えルールでは、EXP ルールがサポートされています。
次の例は、MLPPP CoS 設定セットを示しています。
[edit]
class-of-service {
classifiers {
inet-precedence all-traffic-inet {
forwarding-class assured-forwarding {
loss-priority low code-points 101;
}
forwarding-class expedited-forwarding {
loss-priority low code-points 000;
}
}
}
drop-profiles {
plp-low-red {
fill-level 50 drop-probability 0;
fill-level 100 drop-probability 100;
}
plp-high-red {
fill-level 25 drop-probability 0;
fill-level 50 drop-probability 100;
}
}
forwarding-classes {
queue 0 best-effort;
queue 1 assured-forwarding;
queue 2 expedited-forwarding;
queue 3 network-control;
}
schedulers {
evdo-mlppp-best-effort {
transmit-rate 1M;
buffer-size percent 80;
priority medium-high;
}
evdo-mlppp-assured-forwarding {
transmit-rate 500000;
buffer-size percent 10;
drop-profile-map loss-priority low protocol any drop-profile plp-low-red;
drop-profile-map loss-priority high protocol any drop-profile plp-high-red;
priority medium-low;
}
evdo-mlppp-expedited-forwarding {
transmit-rate 300000;
buffer-size percent 5;
priority low;
}
evdo-mlppp-network-control {
transmit-rate 200000;
buffer-size percent 5;
priority strict-high;
}
}
scheduler-maps {
evdo-mlppp-cos-map {
forwarding-class best-effort scheduler evdo-mlppp-best-effort;
forwarding-class assured-forwarding scheduler evdo-mlppp-assured-forwarding;
forwarding-class network-control scheduler evdo-mlppp-network-control;
forwarding-class expedited-forwarding scheduler evdo-mlppp-expedited-forwarding;
}
}
fragmentation-maps {
frag-mlppp {
forwarding-class {
assured-forwarding {
multilink-class 2;
}
expedited-forwarding {
multilink-class 3;
}
best-effort {
multilink-class 1;
}
network-control {
multilink-class 0;
}
}
}
}
interfaces {
lsq-0/* {
unit * {
scheduler-map evdo-mlppp-cos-map;
fragmentation-map frag-mlppp;
}
}
}
サポートされるACXシリーズルーターでは、PPPおよびMLPPPインターフェイスの転送クラスとキューマッピングが固定されています。
次の例は、MLPPP ファイアウォール設定セットを示しています。
[edit]
firewall {
filter classify-evdo-traffic-mlppp {
interface-specific;
term signalling {
from {
dscp ef;
}
then {
count signalling-counter;
forwarding-class network-control;
accept;
}
}
term user-speech {
from {
dscp af31;
}
then {
policer user-speech-rate-limit;
count user-speech-counter;
forwarding-class network-control;
accept;
}
}
term ptt-mcs {
from {
dscp af11;
}
then {
count ptt-mcs-counter;
forwarding-class network-control;
accept;
}
}
term user-video {
from {
dscp af21;
}
then {
count user-video-counter;
loss-priority low;
forwarding-class assured-forwarding;
accept;
}
}
term user-cmcs {
from {
dscp af12;
}
then {
count user-cmcs-counter;
loss-priority low;
forwarding-class assured-forwarding;
accept;
}
}
term ran-rlp-retransmission {
from {
dscp af41;
}
then {
count rlp-retransmit-counter;
loss-priority high;
forwarding-class assured-forwarding;
accept;
}
}
term user-best-effort {
then {
count user-be-counter;
forwarding-class best-effort;
accept;
}
}
}
}