例:静的および動的ECNの設定
この例では、出力キューで明示的輻輳通知(ECN)を有効にする方法を示しています。
要件
この例では、以下のハードウェアおよびソフトウェアコンポーネントを使用しています。
-
ECNをサポートする1つのデバイス。
機能エクスプローラーを使用して、静的および動的ECNのプラットフォームとリリースのサポートを確認します。
概要
ECNにより、TCP/IPベースのネットワーク上の2つのエンドポイント間でエンドツーエンドの輻輳通知が可能になります。2つのエンドポイントは、ECN対応の送信者とECN対応の受信者です。ECNが正常に動作するためには、両方のエンドポイントとエンドポイント間のすべての中間デバイスでECNを有効にする必要があります。ECNをサポートしていない伝送経路内のデバイスは、エンドツーエンドのECN機能を中断します
ECNが有効になっている出力キューには、WRED(Weighted Random Early Detection)パケットドロッププロファイルを適用する必要があります。ECNは、WREDドロッププロファイルの閾値を使用して、出力キューが混雑した場合にパケットにマークを付けます。
ECNは、ネットワーク輻輳時にECN対応パケットをパケットをドロップするのではなく、転送することでパケットロスを低減します。(TCPはパケットをドロップすることで混雑についてネットワークに通知します。)輻輳期間中、ECNは輻輳したキューから出るECN対応パケットをマークします。混雑が発生しているとマークされたECNパケットを受信者が受信すると、受信者は混雑状態を送信者にエコーします。その後、送信側は伝送速度を下げて輻輳を解消します。
ECNはデフォルトで無効になっています。ベストエフォート型トラフィックでECNを有効にできます。混雑通知に優先度ベースのフロー制御(PFC)を使用するロスレストラフィックキューではECNを有効にしないでください。また、優先度が最も高いトラフィックキューではECNを有効にしないでください。
ECNには、静的ECNと動的ECNの2種類があります。静的ECNでは、通知イベントをトリガーするしきい値レベルを手動で設定する必要があります。ダイナミックECNは、キューの長さやトラフィックパターンなどのリアルタイムの条件に基づいて、しきい値を自動的に調整します。
出力キューでECNを有効にするには、キュースケジューラでECNを有効にするだけでなく、以下のことを行う必要もあります。
-
WRED パケット ドロップ プロファイルを設定します。
-
WRED ドロッププロファイルを含め、ECN を有効にするキュースケジューラを設定します。(この例では、ECNとドロッププロファイルの設定のみを示しています。スケジューラで帯域幅、優先度、バッファ設定も構成できます)。
-
キュースケジューラをスケジューラマップの転送クラス(出力キュー)にマッピングします。
-
ETS(拡張伝送選択)階層スケジューリングを使用している場合は、転送クラスセット(優先度グループ)に転送クラスを追加します。
-
ETS を使用している場合は、キュー スケジューラ マップをトラフィック制御プロファイル(階層スケジューリング用の優先グループ スケジューラ)に関連付けます。
-
ETS を使用している場合は、トラフィック制御プロファイルと転送クラス セットをインターフェイスに適用します。そのインターフェイスでは、出力キューは、トラフィック制御プロファイルに接続されたスケジューラマップで指定された転送クラスにマッピングされたスケジューラを使用します。これにより、キューでECNを有効にし、WREDドロッププロファイルをキューに適用します。
ポートスケジューリングを使用している場合は、インターフェイスにスケジューラマップを適用します。そのインターフェイスでは、出力キューはスケジューラマップ内の転送クラスにマッピングされたスケジューラを使用し、これによりキューでECNを有効にし、WREDドロッププロファイルをキューに適用します。
表1は 、この例の設定コンポーネントを示しています。
| コンポーネント |
設定 |
|---|---|
| 落下プロファイル(2つのフィルレベル/落下確率ペア付き) |
名前: |
| スケジューラ |
名前: |
| スケジューラマップ |
名前:
注:
デフォルトでは、 |
| 転送クラス セット(ETS のみ) |
名前: |
| トラフィック制御プロファイル(ETSのみ) |
名前: |
| インターフェイス(ETSのみ) |
名前: |
| インターフェイス(ポートスケジューリングのみ) |
名前: |
ETS階層スケジューリングをサポートするデバイスのみが、フォワーディングクラスセットとトラフィック制御プロファイルの設定をサポートしています。ダイレクトポートスケジューリングは、階層スケジューリング構造を使用しません。
設定
CLIクイックコンフィグレーション
ドロッププロファイル、ECNを有効にしたスケジューラを迅速に設定し、スケジューラをインターフェイス上の出力キューにマッピングするには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除し、ネットワーク設定に合わせて変数と詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー&ペーストします。
ETSクイックコンフィグレーション
[edit class-of-service] set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80 set schedulers be-sched explicit-congestion-notification set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp set schedulers be-sched transmit-rate percent 25 set schedulers be-sched buffer-size percent 25 set schedulers be-sched priority low set scheduler-maps be-map forwarding-class best-effort scheduler be-sched set forwarding-class-sets be-pg class best-effort set traffic-control-profiles be-tcp scheduler-map be-map set interfaces xe-0/0/20 forwarding-class-set be-pg output-traffic-control-profile be-tcp
ポートスケジューリングのクイック設定
[edit class-of-service] set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80 set schedulers be-sched explicit-congestion-notification set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp set schedulers be-sched transmit-rate percent 25 set schedulers be-sched buffer-size percent 25 set schedulers be-sched priority low set scheduler-maps be-map forwarding-class best-effort scheduler be-sched set interfaces xe-0/0/20 scheduler-map be-map
静的ECNの設定
ステップバイステップの手順
静的ECNを設定するには:
WRED パケット ドロップ プロファイル
be-dpを設定します。この例では、30%のドロップ開始ポイント、75%のドロップエンドポイント、0%の最小ドロップ率、80%の最大ドロップ率を使用しています。[edit class-of-service] user@switch# set drop-profile be-dp interpolate fill-level 30 fill-level 75 drop-probability 0 drop-probability 80
ECNを有効にしてスケジューラ
be-schedを作成し、ドロッププロファイルbe-dpをスケジューラに関連付けます。[edit class-of-service] user@switch# set schedulers be-sched explicit-congestion-notification user@switch# set schedulers be-sched drop-profile-map loss-priority low protocol any drop-profile be-dp user@switch# set be-sched transmit-rate percent 25 user be-sched transmit-rate percent 25 user@switch# set be-sched buffer-size percent 25 user@switch# set be-sched buffer-size percent 25 user@switch# set be-sched priority low
スケジューラマップ
be-mapを使用して、スケジューラbe-schedをbest-effort転送クラス(出力キュー0)にマッピングします。[edit class-of-service] user@switch# set scheduler-maps be-map forwarding-class best-effort scheduler be-sched
ETSを使用している場合は、転送クラス
best-effortをフォワーディングクラスセットbe-pgに追加します。ダイレクトポートスケジューリングを使用している場合は、このステップをスキップします。[edit class-of-service] user@switch# set forwarding-class-sets be-pg class best-effort
ETSを使用している場合は、スケジューラマップ
be-mapトラフィック制御プロファイルbe-tcpに関連付けます。ダイレクトポートスケジューリングを使用している場合は、このステップをスキップします。[edit class-of-service] user@switch# set traffic-control-profiles be-tcp scheduler-map be-map
ETSを使用している場合は、トラフィック制御プロファイル
be-tcpと転送クラスセットbe-pgを、ベストエフォートキューでECNを有効にするインターフェイスに関連付けます。[edit class-of-service] user@switch# set interfaces xe-0/0/20 forwarding-class-set be-pg output-traffic-control-profile be-tcp
ダイレクトポートスケジューリングを使用している場合は、ベストエフォートキューでECNを有効にしたいインターフェイスにスケジューラマップ
be-map関連付けます。[edit class-of-service] user@switch# set interfaces xe-0/0/20 scheduler-map be-map
動的ECNの設定
ステップバイステップの手順
ダイナミックECNを設定するには:
手順に従って、静的ECNを設定します。
動的ECNプロファイルを有効にします。
[edit class-of-service] user@switch# set decn-profile profile-name queue queue number floor floor value offset offset value
床とオフセットの値の範囲は 0 から 524287 です。
下限値とオフセット値を設定する必要はありません。値が選択されていない場合、デフォルトでは最大値の524287が選択されます。
動的ECNプロファイルをインターフェイスに割り当てます。
[edit class-of-service] user@switch# set interfaces interface decn-profile profile-name
検証
ECNが有効になっていることの確認
目的
スケジューラマップbe-mapの設定を示して、スケジューラbe-schedでECNが有効になっていることを確認します。
アクション
運用モードコマンドを使用して、スケジューラマップ設定を表示します show class-of-service scheduler-map be-map。
user@switch> show class-of-service scheduler-map be-map
Scheduler map: be-map, Index: 12240
Scheduler:be-sched, Forwarding class: best-effort, Index: 115
Transmit rate: 25 percent, Rate Limit: none, Buffer size: 25 percent,
Buffer Limit: none, Priority: low
Excess Priority: unspecified, Explicit Congestion Notification: enable
ECN Type: static/dynamic Offset offset-value Floor floor-value
Drop profiles:
Loss priority Protocol Index Name
Low any 3312 be-dp
Medium-high any 1 <default-drop-profile>
High any 1 <default-drop-profile>
意味
show class-of-service scheduler-map操作コマンドは、スケジューラマップに関連付けられたスケジューラの設定と、そのスケジューラにマッピングされた転送クラスを表示します。出力は以下を示しています。
スケジューラマップに関連付けられたスケジューラは
be-schedです。スケジューラマップは、転送クラス
best-effort(出力キュー0)に適用されます。スケジューラ
be-schedの送信レートは25%、キューバッファサイズは25%、ドロップ優先度はlowです。明示的な輻輳通知の状態は
enableです。ドロップ優先度の低いトラフィックに使用されるWREDドロッププロファイルは
be-dpです。