例:ほとんどがロスレストラフィックを持つネットワークのための共有バッファープールの推奨設定
スイッチはポートとキューに最小限のメモリ割り当てを確保するためにバッファー領域を確保しますが、システムが残りのバッファー領域をどのように使用するかを設定して、ネットワークトラフィックの特定の組み合わせに合わせてバッファー割り当てを最適化することができます。
この例では、ほとんどがロスレストラフィックを伝送するネットワークをサポートするためのグローバル共有バッファプールの推奨設定を示しています。グローバル共有バッファー プールは、スイッチ上のすべてのポートがバッファーを必要とするときに動的に共有するメモリー空間です。グローバル共有メモリ領域をさまざまなタイプのバッファーに割り当てることで、ネットワークトラフィックのさまざまな組み合わせをより適切にサポートできます。
バッファ構成の変更は、中断イベントになります。バッファの再プログラミングが完了するまで 、すべての ポートでトラフィックが停止します。
デフォルトの共有バッファ設定(ロスレス、ベストエフォート、マルチキャストトラフィックがバランスよく混在しているネットワークの場合)、またはネットワークトラフィックの混在に推奨される共有バッファ設定のいずれかを使用します(主にベストエフォート型のユニキャストトラフィック、イーサネット一時停止が有効になっているリンク上のほとんどベストエフォート型トラフィック、ほとんどがマルチキャストトラフィック、またはほとんどがロスレストラフィック)。デフォルト設定または推奨設定のいずれかが、ほとんどのネットワークのニーズを満たすバッファ割り当てを提供します。
ロスレスバッファとは、ロスレストランスポートを確保するために優先順位に基づくフロー制御(PFC)を有効にするトラフィックを処理するバッファを指します。ロスレスバッファは、イーサネット一時停止(IEEE 802.3x)を有効にしたリンク上のベストエフォート型トラフィックには使用されません。
推奨設定から開始した後は、共有バッファ設定を微調整できますが、バッファの設定ミスによるトラフィック損失を防ぐために注意してください。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
ジュニパーネットワークススイッチ
サポートされているすべてのJunosリリース
概要
グローバル共有バッファに割り当てられた使用可能な(ユーザー設定可能な)バッファー領域の割合を設定できます。グローバル共有バッファー・プールに割り振られていないスペースはすべて、専用バッファー・プールに追加されます。デフォルト設定では、使用可能なバッファー領域の 100% がグローバル共有バッファーに割り当てられます。
イングレスとエグレスの共有バッファープールをパーティション化して、ネットワークが主に伝送するトラフィックのタイプに多くのバッファーを割り当て、他のトラフィックに割り当てるバッファーを減らすことができます。イングレス共有バッファープールに割り振られたバッファー領域から、以下の用途に領域を割り当てることができます。
ロスレスバッファ—すべてのロスレスイングレストラフィックの共有ロスレスプールの割合。ロスレスバッファの最小値は5%です。
-
ロスレスヘッドルームバッファ—一時停止がアサートされている間に受信したパケットの共有バッファプールの割合。ポートでイーサネットPAUSEが設定されている場合、またはポートの優先順位にPFC(優先順位に基づくフロー制御)が設定されている場合、ポートが接続されたピアに一時停止メッセージを送信すると、ポートはヘッドルームバッファを使用して、ポートが一時停止メッセージを送信してからピアがトラフィックを一時停止した後に最後のパケットが到着するまでの間に到着したパケットを格納します。ロスレス ヘッドルーム バッファーの最小値は 0(ゼロ)パーセントです。(ロスレスヘッドルームバッファは、最小値を5%未満にできる唯一のバッファです。)
非可逆バッファ—すべてのベストエフォートイングレストラフィック(ベストエフォートユニキャスト、マルチデスティネーション、およびストリクト高優先度トラフィック)の共有バッファプールの割合。損失のあるバッファーの最小値は 5% です。
イングレスロスレス、ロスレスヘッドルーム、およびロスバッファパーティションの合計パーセント値は、正確に100%でなければなりません。バッファパーセンテージの合計が100%を超えるか100%未満の場合、スイッチはコミットエラーを返します。すべてのイングレスバッファパーティションは、ロスレスヘッドルームバッファパーティションの値が0(ゼロ)パーセントの場合でも明示的に設定する必要があります。
スイッチに十分なリソースがないバッファ設定をコミットすると、スイッチがコミットエラーを返さず、エラーを記録することがあります。その場合、syslogメッセージがコンソールに表示されます。次に例を示します。
user@host# commit configuration check succeeds Message from syslogd@host at Jun 13 11:11:10 ... host dc-pfe: Not enough Ingress Lossless headroom.(Already allocated more). Dedicated : 14340 Lossy : 47100 Lossless 4239 Headroom 21195 Avail : 20781 commit complete
エグレス共有バッファープールに割り当てられたバッファー領域から、以下に領域を割り当てることができます。
ロスレスバッファ—すべてのロスレスエグレスキューの共有ロスレスバッファプールの割合。ロスレスバッファの最小値は5%です。
非可逆バッファ—すべてのベストエフォートエグレスキュー(ベストエフォート、ユニキャスト、およびストリクト高優先度キュー)の共有バッファプールの割合。損失のあるバッファーの最小値は 5% です。
マルチキャストバッファ—すべてのマルチデスティネーション(マルチキャスト、ブロードキャスト、宛先ルックアップ失敗)エグレスキューの共有バッファプールの割合。マルチキャストバッファの最小値は5%です。
エグレスロスレス、ロス、マルチキャストバッファパーティションの合計パーセント値は、合計が正確に100%でなければなりません。バッファパーセンテージの合計が100%を超えるか100%未満の場合、スイッチはコミットエラーを返します。すべてのエグレスバッファパーティションは明示的に設定される必要があり、少なくとも5%の値が必要です。
ほとんどがロスレストラフィックを伝送するネットワークをサポートするように共有バッファを設定するには、ロスレスバッファにより多くのバッファ領域を割り当て、ロスレスバッファに割り当てるバッファ領域を減らす必要があります。この例では、ほとんどがロスレストラフィックを伝送するネットワークをサポートするために推奨されるグローバル共有バッファープール割り振りを設定する方法を示しています。
トポロジー
表1は 、この例の設定コンポーネントを示しています。
コンポーネント |
設定 |
|---|---|
ハードウェア |
QFXスイッチ |
イングレス共有バッファー |
ingress共有バッファに割り当てられた利用可能なingressバッファー領域の割合:100% ロスレストラフィックに割り当てられたイングレスバッファー領域の割合(ロスレスバッファパーティション):15% ロスレスヘッドルームトラフィックに割り当てられたイングレスバッファスペースの割合(ロスレスヘッドルームバッファパーティション):80% ベストエフォート型トラフィック(非可逆バッファパーティション)に割り当てられたイングレスバッファー領域の割合:5% |
Egress共有バッファー |
エグレス共有バッファに割り当てられた利用可能なエグレスバッファー領域の割合:100% ロスレスキュー(ロスレスバッファパーティション)に割り当てられたエグレスバッファ領域の割合:90% ベストエフォートキュー(ロスバッファパーティション)に割り当てられたエグレスバッファー領域の割合:5% マルチキャストトラフィック(マルチキャストバッファパーティション)に割り当てられたエグレスバッファスペースの割合:5% |
設定
CLIクイックコンフィグレーション
ほとんどがロスレストラフィックを伝送するネットワークに推奨される共有バッファー設定をすばやく構成するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク構成に合わせて変数と詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー&ペーストします。
[edit class-of-service shared-buffer] set ingress percent 100 set ingress buffer-partition lossless percent 15 set ingress buffer-partition lossless-headroom percent 80 set ingress buffer-partition lossy percent 5 set egress percent 100 set egress buffer-partition lossless percent 90 set egress buffer-partition lossy percent 5 set egress buffer-partition multicast percent 5
ほとんどがロスレストラフィックを使用するネットワークのグローバル共有バッファプールの設定
ステップバイステップの手順
ほとんどがロスレストラフィックを伝送するネットワーク向けに、グローバルなイングレスおよびエグレス共有バッファ割り当てとパーティションを設定するには:
ingressグローバル共有バッファプールに使用される使用可能な(非予約済み)バッファの割合を設定します。
[edit class-of-service shared-buffer] user@switch# set ingress percent 100
ロスレス、ロスレスヘッドルーム、ロストラフィックのグローバルロスレスバッファパーティションを設定します。
[edit class-of-service shared-buffer] user@switch# set ingress buffer-partition lossless percent 15 user@switch# set ingress buffer-partition lossless-headroom percent 80 user@switch# set ingress buffer-partition lossy percent 5
egressグローバル共有バッファプールに使用する使用可能な(非予約済み)バッファの割合を設定します。
[edit class-of-service shared-buffer] user@switch# set egress percent 100
ロスレスキュー、ロスキュー、マルチキャストキューのグローバルエグレスバッファパーティションを設定します。
[edit class-of-service shared-buffer] user@switch# set egress buffer-partition lossless percent 90 user@switch# set egress buffer-partition lossy percent 5 user@switch# set egress buffer-partition multicast percent 5
結果
設定の結果の表示:
rroot@dcbg-tp-pa-02> show configuration class-of-service shared-buffer
ingress {
percent 100;
buffer-partition lossless {
percent 15;
}
buffer-partition lossy {
percent 5;
}
buffer-partition lossless-headroom {
percent 80;
}
}
egress {
percent 100;
buffer-partition lossless {
percent 90;
}
buffer-partition lossy {
percent 5;
}
buffer-partition multicast {
percent 5;
}
}
検証
共有バッファ設定が正しく作成されていることを確認します。
共有バッファ構成の検証
目的
イングレスおよびエグレスのグローバル共有バッファープールが正しく構成され、共有バッファータイプ間でパーティション化されていることを確認します。
アクション
次の動作モードコマンドを使用して、グローバル共有バッファ設定を一覧表示します show class-of-service shared-buffer。
user@switch> show class-of-service shared-buffer
root@dcbg-tp-pa-02> show class-of-service shared-buffer
Ingress:
Total Buffer : 9360.00 KB
Dedicated Buffer : 2158.00 KB
Shared Buffer : 7202.00 KB
Lossless : 1080.30 KB
Lossless Headroom : 5761.60 KB
Lossy : 360.10 KB
Lossless Headroom Utilization:
Node Device Total Used Free
0 5761.60 KB 0.00 KB 5761.60 KB
Egress:
Total Buffer : 9360.00 KB
Dedicated Buffer : 2704.00 KB
Shared Buffer : 6656.00 KB
Lossless : 5990.40 KB
Multicast : 332.80 KB
Lossy : 332.80 KB
意味
show class-of-service shared-buffer操作コマンドは、バッファ パーティショニングを含む、イングレスおよびエグレスのグローバル共有バッファ設定をすべて表示します。
イングレス共有バッファの場合、コマンド出力は以下のとおりです。
-
スイッチ バッファー プールの合計は 9360 KB(9 MB)です。
-
専用バッファープールは2158KBです。これは、ingress共有バッファープールを使用可能な(ユーザー設定可能な)バッファー領域の100%として設定した場合のグローバルingress専用バッファープールのサイズです。これは、予約されたイングレス専用イングレスバッファプールの最小サイズです(ユーザーが設定不可)。共有バッファーを使用可能なバッファー プールの 100% 未満に設定すると、残りのバッファー領域が専用バッファー プールに追加されます。
-
イングレス共有バッファープールを使用可能なバッファーの100%として構成した場合、イングレス共有バッファープールの合計サイズは7202KBとなります。
-
イングレス共有バッファープールは、以下を割り当てるようにパーティション化されます。
-
1080 KBからロスレストラフィックへ
-
5761.60 KB(ロスレスヘッドルームトラフィック)
-
360.10 KBからロスユニキャストトラフィックへ
-
-
ロスレスヘッドルーム使用率フィールドには、一時停止したトラフィック用に予約されたバッファー領域の使用量が表示されます。使用可能なロスレス ヘッドルーム バッファー領域の合計 5761.60 KB のうち、現在バッファー領域は使用されていないため、5761.60 KB のバッファー領域はすべて空いています。
egress共有バッファの場合、コマンド出力は以下を示します。
-
スイッチ バッファー プールの合計は 9360 KB(9 MB)です。
-
専用バッファープールは 2704 KB です。これは、エグレス共有バッファープールを利用可能な(ユーザー設定可能な)バッファー領域の100%として構成した場合のグローバルエグレス専用バッファープールのサイズです。これは、予約されたエグレス専用バッファプールの最小サイズです(ユーザーが設定不可)。共有バッファーを使用可能なバッファー プールの 100% 未満に設定すると、残りのバッファー領域が専用バッファー プールに追加されます。
-
エグレス共有バッファープールを使用可能なバッファーの100%として構成した場合、エグレス共有バッファープールの合計サイズは6656KBとなります。これは、スイッチがイングレス専用バッファー領域よりも多くのエグレス専用バッファー領域を予約するため、イングレス共有バッファープールよりも小さくなります。(専用バッファー領域が多いほど共有バッファー領域が少なくなり、共有バッファー領域が多いほど専用バッファー領域が少なくなります)。
-
エグレス共有バッファープールは、以下を割り当てるようにパーティション化されます。
-
5990.40 KBからロスレストラフィックへ
-
332.80 KB からマルチキャスト トラフィックへ
-
332.80 KB からロスが多いユニキャストトラフィック
-
プラットフォーム固有の動作
お使いのプラットフォームに固有の動作を確認するには、以下の表を使用して下さい。
| プラットフォーム |
違い |
|---|---|
| QFXバーチャルシャーシおよびEX4600/EX4650バーチャルシャーシ |
|