ポリサーの適用
ポリサーの適用の概要
ポリサーを使用すると、ファイアウォールフィルターを設定せずに、特定のインターフェイスまたはレイヤー2 仮想プライベートネットワーク(VPN)上で単純なトラフィックポリシングを実行できます。ポリサーを適用するには、 policer ステートメントを含めます。
policer { arp policer-template-name; input policer-template-name; output policer-template-name; }
以下の階層レベルでこれらのステートメントを含めることができます。
[edit interfaces interface-name unit logical-unit-number family family][edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number family family]
familyステートメントでは、プロトコルファミリーはccc、inet、inet6、mpls、tcc、またはvplsです。
arpステートメントでは、インターフェイスでアドレス解決プロトコル(ARP)パケットを受信したときに評価される1つのポリサーテンプレートの名前をリストします。デフォルトでは、family inetステートメントを設定したすべてのイーサネットインターフェイスで共有されるARPポリサーがインストールされています。ARP パケットのより厳格または緩やかなポリシングが必要な場合は、インターフェイス固有のポリサーを設定し、インターフェイスに適用できます。ARPポリサーは、他のポリサーと同じように、[edit firewall policer]階層レベルで設定します。このポリサーをインターフェイスに適用すると、デフォルトのARPパケットポリサーが上書きされます。このポリサーを削除すると、デフォルトのポリサーが再び有効になります。
インターフェイス上のプロトコル ファミリーごとに異なるポリサーを設定でき、ファミリーごとに 1 つの入力ポリサーと 1 つの出力ポリサーを使用できます。ポリサーを適用する場合、ファミリー
ccc、inet、inet6、mpls、tcc、またはvplsのみ、ファミリーinetプロトコル用にのみ1つのARPポリサーを設定できます。ポリサーが参照されるたびに、そのインターフェイスのパケット転送コンポーネントにポリサーの個別のコピーがインストールされます。ポリサーとファイアウォールフィルターの両方をインターフェイスに適用する場合、入力ポリサーは入力ファイアウォールフィルターの前に評価され、出力ポリサーは出力ファイアウォールフィルターの後に評価されます。
inputステートメントでは、インターフェイスでパケットが受信されたときに評価される1つのポリサーテンプレートの名前をリストします。outputステートメントでは、インターフェイスでパケットが送信されたときに評価される1つのポリサーテンプレートの名前をリストします。複数のFPCにまたがるアグリゲートイーサネット(AE)インターフェイスを介してMXシリーズルーターで終端する加入者の場合、ポリサーで設定された制限がAEバンドル内の各インターフェイスに個別に適用されるため、全体の加入者レートが設定されたレートを超える可能性があります。したがって、例えば、3メンバーAEインターフェイス上のポリサーに600mの
bandwidth-limitを適用させる場合、AEの3つのインターフェイス(つまり、インターフェイスあたり200Mbps、合計600Mbps)を考慮し200mポリサーのbandwidth-limitを設定する必要があります。インターフェイス
lo0にポリサーを適用すると、ルーティングエンジンによって受信または送信されたパケットに適用されます。
集約ポリサーの適用
集約ポリサーの適用
デフォルトでは、同じ論理インターフェイス上の複数のプロトコルファミリーにポリサーを適用すると、ポリサーは各プロトコルファミリーのトラフィックを個別に制限します。例えば、IPv4とIPv6の両方のトラフィックに50Mbpsの帯域幅制限を適用したポリサーでは、インターフェイスが50Mbps のIPv4トラフィックと50Mbps のIPv6トラフィックを受け入れることができます。集約ポリサーを適用する場合、ポリサーは、インターフェイスがIPv4とIPv6のトラフィックを合わせた50Mbps しか受信できないことを許可します。
集約ポリサーを設定するには、[edit firewall policer policer-template-name]階層レベルでlogical-interface-policerステートメントを含めます。
[edit firewall policer policer-template-name] logical-interface-policer;
ポリサーを集合体として扱うには、 policer ステートメントを含めて、単一の論理インターフェイス上で複数のプロトコルファミリーに適用する必要があります。
policer { arp policer-template-name; input policer-template-name; output policer-template-name; }
以下の階層レベルでこれらのステートメントを含めることができます。
[edit interfaces interface-name unit logical-unit-number family family][edit logical-systems logical-system-name interfaces interface-name unit logical-unit-number family family]
familyステートメントでは、プロトコルファミリーはccc、inet、inet6、mpls、tcc、またはvplsです。
ポリサーを適用しないプロトコルファミリーは、ポリサーの影響を受けません。例えば、単一の論理インターフェイスがMPLS、IPv4、IPv6トラフィックを受け入れるように設定し、論理インターフェイスポリサー policer1 をIPv4およびIPv6プロトコルファミリーのみに適用する場合、MPLSトラフィックは policer1の制約を受けません。
別の論理インターフェイスに policer1 を適用する場合、ポリサーのインスタンスは2つ存在します。つまり、同じ物理インターフェイスポート上の複数の論理インターフェイスに同じ論理インターフェイスポリサーが適用されている場合でも、Junos OSは、集約としてではなく、別々の論理インターフェイス上のトラフィックを個別にポリシー化します。
例:集約ポリサーの適用
aggregate_police1とaggregate_police2の2つの論理インターフェイスポリサーを設定します。論理インターフェイス fe-0/0/0.0で受信したIPv4およびIPv6トラフィックにaggregate_police1を適用します。論理インターフェイスfe-0/0/0.0で受信したCCCおよびMPLSトラフィックにaggregate_police2を適用します。この設定では、ソフトウェアは aggregate_police1 のインスタンスを 1 つ、aggregate_police2 のインスタンスを 1 つだけ作成します。
別の論理インターフェイスfe-0/0/0.1で受信したIPv4およびIPv6トラフィックにaggregate_police1を適用します。この設定により、ソフトウェアはaggregate_police1の新しいインスタンスを作成します。1つはユニット0に適用され、もう1つはユニット1に適用されます。
[edit firewall]
policer aggregate_police1 {
logical-interface-policer;
if-exceeding {
bandwidth-limit 100m;
burst-size-limit 500k;
}
then {
discard;
}
}
policer aggregate_police2 {
logical-interface-policer;
if-exceeding {
bandwidth-limit 10m;
burst-size-limit 200k;
}
then {
discard;
}
}
[edit interfaces fe-0/0/0]
unit 0 {
family inet {
policer {
input aggregate_police1;
}
}
family inet6 {
policer {
input aggregate_police1;
}
}
family ccc {
policer {
input aggregate_police2;
}
}
family mpls {
policer {
input aggregate_police2;
}
}
}
unit 1 {
family inet {
policer {
input aggregate_police1;
}
}
family inet6 {
policer {
input aggregate_police1;
}
}
}
拡張インテリジェントキューイングPICへの階層型ポリサーの適用
拡張インテリジェントキューイングPICへの階層型ポリサーの適用
拡張インテリジェントキューイング(IQE)PICを搭載したルーターでは、イングレス方向の階層型ポリサーをサポートしており、インターフェイスのプレミアムおよびアグリゲート(プレミアムプラスノーマル)トラフィックレベルに階層型ポリサーを適用することができます。階層型ポリサーは、設定された物理インターフェイスとパケット転送エンジン間のクロス機能を提供します。
開始する前に、階層型ポリサーに適用される一般的な制限がいくつかあります。
論理インターフェイスまたは物理インターフェイスに設定できるポリサーは1種類のみです。例えば、同じ論理インターフェイスに対して同じ方向の階層型ポリサーと通常のポリサーは許可されません。
ポリサーのチェイニング、つまり、ポートとそのポートの論理インターフェイスの両方にポリサーを適用することは許可されていません。
BA分類がない場合、インターフェイスあたりのポリサーは64個に制限されており、DLCIごとに1つのポリサーが提供されます。
物理インターフェイスまたは論理インターフェイスに適用できるポリサーは1種類だけです。
ポリサーはBA分類から独立している必要があります。BA 分類を使用しない場合、インターフェイス上のすべてのトラフィックは、設定に基づいて EF または非 EF として扱われます。BA 分類では、インターフェイスは最大 64 個のポリサーをサポートできます。ここでも、インターフェイスは物理インターフェイスまたは論理インターフェイス(DLCIなど)です。
BA分類では、その他のトラフィック(BA分類のDSCP/EXPビットのいずれとも一致 しない トラフィック)は、非EFトラフィックとしてポリシングされます。このトラフィック用に個別のポリサーはインストールされません。
階層型ポリサーの概要
階層ポリシングでは、2つのトークンバケットを使用します。1つはアグリゲート(非EF)トラフィック用、もう1つはプレミアム(EF)トラフィック用です。どのトラフィックがEFで、どれが非EFかは、サービスクラス設定によって決定されます。論理的には、階層型ポリシングは、2つのポリサーを連鎖させることで実現します。
図 1 の例では、EF トラフィックはプレミアムポリサーによってポリシングされ、非 EF トラフィックはアグリゲートポリサーによってポリシングされています。つまり、EFトラフィックの場合、仕様外のアクションはプレミアムポリサーに設定されたアクションになりますが、仕様内のEFトラフィックは引き続きアグリゲートポリサーからのトークンを消費します。
ただし、EF トラフィックがアグリゲート ポリサーの仕様外アクションに送信されることはありません。また、プレミアムポリサーの仕様外アクションが破棄に設定されていない場合、それらの仕様外パケットはアグリゲートポリサーからのトークンを消費しません。集約ポリサーは、非EFトラフィックのみを規制します。ご覧のとおり、すべてのトークンが非 EF トラフィックによって消費され、EF トラフィックのバーストが発生した場合、集約ポリサー トークン バケットが負になる可能性があります。しかし、それは非常に短い時間であり、一定期間にわたって平均化されるでしょう。次に例を示します。
プレミアムポリサー: 帯域幅2Mbps、OOSアクション:破棄
アグリゲートポリサー: 帯域幅10Mbps、OOSアクション:破棄
上記の場合、EF トラフィックの入力レートに応じて、EF トラフィックは 2 Mbps が保証され、非 EF トラフィックは 8 Mbps から 10 Mbps になります。
階層型ポリシングの特性
階層型トークンバケットの機能には、次のものがあります。
イングレストラフィックは、ポリサーを適用する前に、まずEFトラフィックと非EFトラフィックに分類されます。
分類はQツリー検索によって実行されます。
チャネル番号は、共有トークンバケットポリサーを選択します。
デュアルトークンバケットポリサーは、2つのシングルバケットポリサーに分かれています。
ポリサー1—EFトラフィック
Policer2—非EFトラフィック
共有トークンバケットは、次のようにトラフィックを規制するために使用されます。
Policer1 は EF レート(例:2 Mbps)に設定されています
Policer2は、インターフェイスポリシングレート(例えば、10Mbps)を集約するように設定されています。
EFトラフィックはPolicer1に適用されます。
トラフィックが仕様内であれば、Policer1とPolicer2の両方からの通過とデクリメントが許可されます。
トラフィックが仕様外の場合は、破棄するか、新しいFCまたは損失優先度でマークすることができます。Policer2は、仕様外のEFトラフィックに対して何も実行しません。
非EFトラフィックは、Policer2にのみ適用されます。
トラフィックが仕様内であれば、通過が許可され、デクリメントされたPolicer2。
トラフィックが仕様外の場合、破棄されるか、新しいFCでマークされるか、新しいドロップ優先度が設定されます。
レイヤー2でポート速度を希望の速度にレート制限します
EFトラフィックのレート制限
非EFトラフィックのレート制限
カラーごとにカウントされるドロップのポリシング
関連項目
階層型ポリサーの設定
階層ポリサーを設定するには、適切な転送クラスに policing-priority ステートメントを適用し、集約レベルとプレミアムレベルに階層ポリサーを設定します。サービスクラスの詳細については、 ルーティングデバイス用Junos OSサービスクラスユーザーガイドを参照してください。
階層型ポリサーは、IQE PICでホストされているSONET物理インターフェイスでのみ設定できます。集約レベルとプレミアムレベルのみがサポートされています。
階層ポリサー向けフォワーディングクラスのCoS設定
[edit class-of-service forwarding-classes] class fc1 queue-num 0 priority high policing-priority premium; class fc2 queue-num 1 priority low policing-priority normal; class fc3 queue-num 2 priority low policing-priority normal; class fc4 queue-num 3 priority low policing-priority normal;
サービスクラスの設定とステートメントの詳細については、 ルーティングデバイス用 Junos OS サービスクラスユーザーガイドを参照してください。
階層ポリサーのファイアウォール設定
[edit firewall hierarchical-policer foo]
aggregate {
if-exceeding {
bandwidth-limit 70m;
burst-size-limit 1500;
}
then {
discard;
}
premium {
if-exceeding {
bandwidth-limit 50m;
burst-size-limit 1500;
}
then {
discard;
}
}
階層ポリサーは、次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-hierarchical-policer foo;
また、次のように物理ポートレベルでポリサーを適用するオプションもあります。
[edit interfaces so-0/1/0 layer2-policer] input-hierarchical-policer foo;
シングルレート2カラーポリサーの設定
シングルレート2カラーポリサーは、次のように設定できます。
[edit firewall policer foo]
if-exceeding {
bandwidth-limit 50m;
burst-size-limit 1500;
}
then {
discard;
}
ポリサーは次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-policer foo;
また、次のように物理ポートレベルでポリサーを適用するオプションもあります。
[edit interfaces so-0/1/0 layer2-policer] input-policer foo;
シングルレート色覚異常ポリサーの設定
このセクションでは、シングルレートの色覚異常ポリサーとカラー認識ポリサーについて説明します。
シングルレート色覚異常ポリサーは、次のように設定できます。
[edit firewall three-color-policer foo]
single-rate {
color-blind;
committed-information-rate 50m;
committed-burst-size 1500;
excess-burst-size 1500;
}
シングルレートカラーブラインドポリサーは、次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
シングルレートカラー対応ポリサーは、次のように設定できます。
[edit firewall three-color-policer bar]
single-rate {
color-aware;
committed-information-rate 50m;
committed-burst-size 1500;
excess-burst-size 1500;
}
シングルレートカラー認識ポリサーは、次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
また、次のように物理ポートレベルでポリサーを適用するオプションもあります。
[edit interfaces so-0/1/0 layer2-policer] input-three-color bar;
2 レート トリコロール マーカー ポリサーの設定
Ingressポリシングは、2レートトリコロールマーカー(trTCM)を使用して実装されます。これは、コミットされたレートとピークの2つのレートを維持するデュアルトークンバケット(DTB)で行われます。Egress静的ポリシングもトークンバケットを使用します。
トークンバケットは、以下のイングレスポリシング機能を実行します。
(1K) trTCM - デュアルトークンバケット(赤、黄、緑のマーキング)
ポリシングは、レイヤー 2 パケット サイズに基づきます。
+/- バイト調整オフセット後
マーキングは色覚異常と色覚異常です。
カラーアウェアでは、以下に基づいてQツリールックアップで色を設定する必要があります。
ToS
経験値
プログラム可能なマーキングアクション:
カラー(赤、黄、緑)
色と混雑プロファイルに基づくドロップ
ポリサーは、到着したチャネル番号に基づいて選択されます。
チャネル番号 LUTがポリサーインデックスとキューインデックスを生成
複数のチャネルが同じポリサーを共有できます(LUTは同じポリサーインデックスを生成します)
以下のレベルでイングレスポリシングとtrTCMをサポートします。
キュー
論理インターフェイス(ifl/DLCI)
物理インターフェイス(ifd)
物理ポート(コントローラifd)
論理インターフェイス、物理インターフェイス、ポートの任意の組み合わせ
インターフェイス速度とビット/秒のサポート割合
レート制限は、ingress時とegress時の事前定義されたキューに適用できます。トークンバケットは、色認識モードと色覚異常モード(RFC 2698で指定)で動作します。
色覚異常の trTCM の設定
[edit firewall three-color-policer foo]
two-rate {
color-blind;
committed-information-rate 50m;
committed-burst-size 1500;
peak-information-rate 100m;
peak-burst-size 3k;
}
3 色 2 レートの色覚異常ポリサーは、次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color foo;
また、次のように物理ポートレベルでポリサーを適用するオプションもあります。
[edit interfaces so-0/1/0 layer2-policer] input-three-color foo;
カラー対応trTCMの設定
[edit firewall three-color-policer bar]
two-rate {
color-aware;
committed-information-rate 50m;
committed-burst-size 1500;
peak-information-rate 100m;
peak-burst-size 3k;
}
3 色 2 レート カラー認識ポリサーは、次のように適用できます。
[edit interfaces so-0/1/0 unit 0 layer2-policer] input-three-color bar;
また、次のように物理ポートレベルでポリサーを適用するオプションもあります。
[edit interfaces so-0/1/0 layer2-policer] input-three-color bar;