例:階層型 CoS キューのジッターの削減
この例では、階層キューイング MPC でホストされている VLAN ポートの出力キューのジッターを削減する方法を示します。
要件
この例では、次のジュニパーネットワークスのハードウェアと Junos OS ソフトウェアを使用します。
IPv4ネットワーク内にあり、Junos OSリリース13.2以降を実行しているMX960ルーター。
FPCスロット2、PICスロット 0、ポート0でホストされている利用可能なギガビットイーサネットポート 。
FPCスロット5のMPC2 Qモジュラーポートコンセントレータ(MPC)のPIC スロット 0にあるギガビットイーサネットモジュラーインターフェイスカード(MIC)のポート0でホストされている使用可能なギガビットイーサネットポート 。
この例の設定を始める前に、スロット 5 の階層キューイング MPC に許容されるキューの最大数がまだ設定されていないことを確認してください。設定モードから コマンド show chassis fpc 5
を入力する場合、 max-queues
ステートメントは表示されません。
概要
この例では、階層キューイング MPC でホストされている VLAN ポートで階層スケジューリングを設定します。MPC でホストされているすべてのエグレス ポートのキュー内のジッターを減らすには、MPC で許可されるキューの最大数を減らします。
構成
CLIクイック構成
この例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、 階層レベルのCLI [edit]
にコマンドをコピーして貼り付けます。
set interfaces xe-2/0/0 per-unit-scheduler set interfaces xe-2/0/0 flexible-vlan-tagging set interfaces xe-2/0/0 unit 0 vlan-id 1 set interfaces xe-2/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces xe-2/0/0 unit * classifiers ieee-802.1 ieee_jitter set interfaces xe-5/0/0 per-unit-scheduler set interfaces xe-5/0/0 flexible-vlan-tagging set interfaces xe-5/0/0 unit 0 vlan-id 1 set interfaces xe-5/0/0 unit 0 family inet address 10.2.1.1/24 set class-of-service-interfaces xe-5/0/0 unit * output-traffic-control-profile tcp set class-of-service forwarding-classes queue 0 be set class-of-service forwarding-classes queue 1 ef set class-of-service forwarding-classes queue 2 af set class-of-service forwarding-classes queue 3 nc set class-of-service schedulers be_sch priority low set class-of-service schedulers ef_sch priority low set class-of-service schedulers af_sch priority strict-high set class-of-service schedulers nc_sch priority low set class-of-service classifiers ieee_jitter forwarding-class be loss-priority low code-points 000 set class-of-service classifiers ieee_jitter forwarding-class ef loss-priority low code-points 001 set class-of-service classifiers ieee_jitter forwarding-class af loss-priority low code-points 010 set class-of-service classifiers ieee_jitter forwarding-class nc loss-priority low code-points 011 set class-of-service scheduler-maps smap_jitter forwarding-class be scheduler be_sch set class-of-service scheduler-maps smap_jitter forwarding-class ef scheduler ef_sch set class-of-service scheduler-maps smap_jitter forwarding-class af scheduler af_sch set class-of-service scheduler-maps smap_jitter forwarding-class nc scheduler nc_sch set class-of-service traffic-control-profiles tcp scheduler-map smap_jitter set class-of-service traffic-control-profiles tcp shaping-rate 6g
ベースライン構成
手順
で階層スケジューリング xe-5.0.0
を設定します。
VLAN 1 の入力と出力
xe-2/0/0.0
を とxe-5/0/0.0
で設定するには:[edit] user@host# set interfaces xe-2/0/0 per-unit-scheduler user@host# set interfaces xe-2/0/0 flexible-vlan-tagging user@host# set interfaces xe-2/0/0 unit 0 vlan-id 1 user@host# set interfaces xe-2/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces xe-5/0/0 per-unit-scheduler user@host# set interfaces xe-5/0/0 flexible-vlan-tagging user@host# set interfaces xe-5/0/0 unit 0 vlan-id 1 user@host# set interfaces xe-5/0/0 unit 0 family inet address 10.2.1.1/24
4 つのキューをそれぞれ転送クラスにマッピングします。
[edit] user@host# set class-of-service forwarding-classes queue 0 be user@host# set class-of-service forwarding-classes queue 1 ef user@host# set class-of-service forwarding-classes queue 2 af user@host# set class-of-service forwarding-classes queue 3 nc
各転送クラスにパケットスケジューリング優先度値を割り当てます。
[edit] user@host# set class-of-service schedulers be_sch priority low user@host# set class-of-service schedulers ef_sch priority low user@host# set class-of-service schedulers af_sch priority strict-high user@host# set class-of-service schedulers ef_sch priority low
iEEE 802.1p コード ポイントに異なる値を定義することで、デフォルトの IEEE 802.1p 分類子(レイヤ 2 ヘッダーに基づく BA 分類子)をカスタマイズします。
[edit] user@host# set class-of-service classifiers ieee_jitter forwarding-class be loss-priority low code-points 000 user@host# set class-of-service classifiers ieee_jitter forwarding-class ef loss-priority low code-points 001 user@host# set class-of-service classifiers ieee_jitter forwarding-class af loss-priority low code-points 010 user@host# set class-of-service classifiers ieee_jitter forwarding-class nc loss-priority low code-points 011
上の論理ユニット
xe-2/0/0
の入力にBA分類子を適用します。[edit] user@host# set interfaces xe-2/0/0 unit * classifiers ieee-802.1 ieee_jitter
転送クラスをスケジューラにマッピングするようにスケジューラ マップ
smap_jitter
を設定します。[edit] user@host# set class-of-service scheduler-maps smap_jitter forwarding-class be scheduler be_sch user@host# set class-of-service scheduler-maps smap_jitter forwarding-class ef scheduler ef_sch user@host# set class-of-service scheduler-maps smap_jitter forwarding-class af scheduler af_sch user@host# set class-of-service scheduler-maps smap_jitter forwarding-class nc scheduler nc_sch
トラフィック制御プロファイル
tcp
を設定して、スケジューラ マップsmap_jitter
(ポートベースのスケジューリングでは転送クラスをスケジューラにマッピング)とシェーピング レート(階層スケジューリングの場合)を結合します。[edit] user@host# set class-of-service traffic-control-profiles tcp scheduler-map smap_jitter user@host# set class-of-service traffic-control-profiles tcp shaping-rate 6g
のルーター出力
xe-5/0/0
にトラフィック制御プロファイルを適用します。[edit] user@host# set class-of-service-interfaces xe-5/0/0 unit * output-traffic-control-profile tcp
デバイスの設定が完了したら、設定をコミットします。
[edit] user@host# commit
結果
コンフィギュレーション・モードから と show cloass-of-service
というコマンドを入力し、show interfaces
コンフィギュレーションを確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
[edit] user@host# show interfaces xe-2/0/0 { per-unit-scheduler; flexible-vlan-tagging; unit 0 { vlan-id 1; family inet { address 10.1.1.1/24; } } } xe-5/0/0 { per-unit-scheduler; flexible-vlan-tagging; unit 0 { vlan-id 1; family inet { address 10.2.1.1/24; } } }
[edit] user@host# show class-of-service classifiers { ieee-802.1 ieee_jitter { forwarding-class be { loss-priority low code-points 000; } forwarding-class ef { loss-priority low code-points 001; } forwarding-class af { loss-priority low code-points 010; } forwarding-class nc { loss-priority low code-points 011; } } } forwarding-classes { queue 0 be; queue 1 ef; queue 2 af; queue 3 nc; } traffic-control-profiles { tcp { scheduler-map smap_jitter; shaping-rate 6g; } } interfaces { xe-2/0/0 { unit * { classifiers { ieee-802.1 ieee_jitter; } } } xe-5/0/0 { unit * { output-traffic-control-profile tcp; } } } scheduler-maps { smap_jitter { forwarding-class be scheduler be_sch; forwarding-class ef scheduler ef_sch; forwarding-class af scheduler af_sch; forwarding-class nc scheduler nc_sch; } } schedulers { be_sch { priority low; } ef_sch { priority low; } af_sch { priority strict-high; } nc_sch { priority low; } }
検証
設定が正常に機能していることを確認します。
ベースラインを確立するためのエンドツーエンドのジッター測定
目的
エグレス ポートをホストする階層キューイング ライン カードがデフォルトの最大キュー数で設定されている場合に発生するジッターの量を記録することで、ベースライン測定値を確立します。
アクション
ジッターを測定するには:
VLAN を介してトラフィックを通過させます。
データフロー内の選択されたパケットのパケット遅延の変動を測定します。
ジッター低減の設定
目的
VLAN ポート出力キューのジッターを低減します。
アクション
スロット 5の階層型キューイングMPCで、エグレスポートのキュー最大数を減らして、ポートキューのジッターを減らします。
[edit] user@host# set chassis fpc 5 max-queue 64k
デバイスの設定が完了したら、設定をコミットします。
[edit] user@host# commit