トラフィック ポリシングを使用したネットワーク アクセスの制御の概要
IP トラフィック フローの輻輳管理
トラフィックポリシーは、 レート制限とも呼ばれ、サービス拒否(DoS)攻撃を阻止するために設計されたネットワークアクセスセキュリティの不可欠なコンポーネントです。トラフィックポリシングにより、インターフェイス上で送受信されるIPトラフィックの最大レートを制御し、ネットワークトラフィックを サービスクラスとも呼ばれる複数の優先度レベルに分割することができます。ポリサーは、一連のトラフィック レート制限を定義し、設定された制限に準拠しないトラフィックに結果を設定します。トラフィック制限に準拠しないトラフィックフローのパケットは、破棄されるか、異なる転送クラスまたはPLP(パケット損失優先度)レベルでマークされます。
集約トラフィックをレート制限するように設定されたポリサー(物理インターフェイスに設定されたすべてのプロトコル ファミリーと論理インターフェイス)を除き、 論理インターフェイスのレイヤー 2 またはレイヤー 3 トラフィック フロー内のすべての IP パケットにポリサーを適用できます。
物理インターフェイスのメディアレートに基づいてレート制限するように設定されたポリサーを除き、ステートレス ファイアウォールフィルターを使用して、論理インターフェイスのレイヤー3トラフィックフロー内の特定のIPパケットにポリサーを適用できます。
ポリサーは、インバウンドまたはアウトバウンドのインターフェイス トラフィックに適用できます。インバウンド トラフィックに適用されるポリサーは、ネットワークを介してルーティングされる必要がないトラフィックをドロップすることで、リソースを節約するのに役立ちます。インバウンド トラフィックのドロップは、サービス拒否(DoS)攻撃の阻止にも役立ちます。アウトバウンドトラフィックに適用されたポリサーは、使用される帯域幅を制御します。
トラフィック ポリサーは、PIC 単位でインスタンス化されます。1つのローカルポリシー決定機能(L-PDF)加入者のトラフィックが、AMSグループ内の複数のマルチサービスPICを介して分散されている場合、トラフィックポリシーは機能しません。
トラフィック制限
Junos OSポリサーは 、トークンバケットアルゴリズム を使用して、インターフェイスでのトラフィックの平均送受信レートに制限を適用すると同時に、構成された帯域幅制限と構成されたバーストサイズに基づいてトラフィックのバーストを最大値まで許可します。トークンバケットアルゴリズムは、パケットの廃棄を開始する前に、またはパケット出力キューイングの優先度やパケットドロップの優先度などのペナルティを適用する前に、指定されたトラフィックバーストを許可できるという点で、 リーキーバケットアルゴリズム よりも柔軟性を提供します。
トークンバケットモデルでは、バケットはポリサーのレート制限機能を表します。トークンは一定のレートでバケットに追加されますが、バケットの指定された深さに達すると、その後に割り当てられたトークンを保存して使用することはできません。各トークンは、ビット数の「クレジット」を表し、バケット内のトークンは、インターフェイスでトラフィックを送受信する機能を「現金化」されます。バケット内に十分なトークンが存在する場合、トラフィック フローは無制限に続行されます。そうしないと、パケットがドロップされたり、転送クラスが低い、PLP(パケット損失の優先度)レベルが高い、またはその両方で再マークされたりする可能性があります。
トークンがバケットに追加されるレートは、特定のサービスレベルで許可されたビット/秒で最も高い平均送信または受信レートを表しています。この最大平均トラフィック レートをポリサーの 帯域幅制限 として指定します。トラフィック到着レート(または固定ビット/秒)が非常に高く、ある時点でバケットに十分なトークンが存在しない場合、トラフィックフローはもはやトラフィック制限に準拠しません。比較的低いトラフィック(トークン到着レートを下回る平均レートでインターフェイスに到着または出発するトラフィック)の間、未使用のトークンはバケットに蓄積されます。
バケットの深さ(バイト単位)は、許可されるバックツーバックバーストの量を制御します。この係数をポリサーの バーストサイズ制限 として指定します。この 2 番目の制限は、一定時間の送信バーストで許可されるバイト数を制限することにより、平均送信または受信レートに影響します。バーストサイズ制限を超えるバーストは、バーストの実行を可能にする十分なトークンが利用可能になるまで破棄されます。
図 1:ネットワーク トラフィックとバースト レート
上の図に示すように、UPC バーコードは、回線上のトラフィックの良いファクシミリです。インターフェイスが送信中(フルレートでのバースト)か、送信されていないかのいずれかです。黒い線はデータ転送の期間を表し、空白はトークン バケットが補充できる場合の無音期間を表します。
使用するポリサーのタイプに応じて、定義された制限を超えるポリシングされたトラフィックフローのパケットは、暗黙的に高いPLPレベルに設定され、設定された転送クラスに割り当てられるか、設定されたPLPレベルに設定されるか(またはその両方)、または単に破棄される場合があります。パケットがダウンストリームの輻輳に遭遇した場合、PLP レベルのlowパケットは、 、medium-highまたは high PLP レベルのパケットよりもmedium-low破棄される可能性が低くなります。
トラフィック カラー マーキング
ポリサーは、設定された特定のトラフィック制限に基づいて、自動車のトラフィックを制御するために使用されるトラフィック ライトの色に似た 2 つまたは 3 つのカテゴリーのいずれかに属するトラフィック フローを識別します。
シングルレート2カラー—2カラーマーキングポリサー(または条件なしで使用する場合は「ポリサー」)は、設定された帯域幅とバーストサイズ制限に応じて、トラフィックストリームをメートルし、パケット損失優先度(PLP)の2つのカテゴリーに分類します。帯域幅とバーストサイズの制限を超えるパケットを何らかの形でマークすることも、破棄することもできます。
ポリサーは、ポート(物理インターフェイス)レベルでトラフィックを測定するのに最も便利です。
シングルレート3カラー—このタイプのポリサーは、RFC 2697、 単一レート3カラーマーカーで定義されています。これは、DiffServ(差別化サービス)環境向けのAF(アシュアランスフォワーディング)PHB(ホップごとの動作)分類システムの一部として定義されています。このタイプのポリサーは、設定されたCIR(コミットされた情報レート)、CBS(コミットされたバーストサイズ)、および余分なバーストサイズ(EBS)に基づいてトラフィックをメートルします。到着するパケットがCBS(緑)の下にあるか、CBS(黄色)を超えているがEBSを超えないか、EBS(赤)を超えているかどうかに基づいて、トラフィックは3つのカテゴリー(緑、黄色、赤)のいずれかに属しているとマークされます。
シングルレートスリーカラーポリサーは、ピーク到着レートではなく、パケット長に応じてサービスを構成する場合に最も便利です。
2 レートスリーカラー—このタイプのポリサーは、RFC 2698 A Two Rate 3 Color Markerで定義されています。これは、DiffServ(差別化サービス)環境向けのアシュアランスフォワーディング(AF)ごとのホップ動作(PHB)分類システムの一部として定義されています。このタイプのポリサーは、設定されたCIRとPIR(ピーク情報レート)に基づいて、関連するバーストサイズ、CBS、 ピークバーストサイズ (PBS)に基づいてトラフィックをメートルします。トラフィックは、到着するパケットがCIR(緑)未満、CIR(黄色)を超えているがPIRを超えないかどうか、またはPIR(赤)を超えているかどうかに基づいて、3つのカテゴリー(緑、黄色、赤)のいずれかに属しているとマークされます。
2 レートスリーカラーポリサーは、サービスが到着レートに従って構成されており、必ずしもパケット長とは限らない場合に最も便利です。
ポリサーアクションは暗黙的または明示的であり、ポリサータイプによって異なります。 暗黙的 という用語は、Junosが損失優先度を自動的に割り当てることを意味します。 表 1 は、ポリサーのアクションを示しています。
ポリサー |
マーキング |
暗示的なアクション |
設定可能なアクション |
|---|---|---|---|
シングルレート 2 カラー |
グリーン(準拠) |
低損失優先度の割り当て |
なし |
赤(不適合) |
なし |
損失の優先度を低くまたは高く割り当てる、転送クラスを割り当てる、または破棄する 一部のプラットフォームでは、中低または中高の損失優先度を割り当てることができます。 |
|
シングルレートスリーカラー |
グリーン(準拠) |
低損失優先度の割り当て |
なし |
黄色(CIR および CBS の上) |
中高損失優先度の割り当て |
なし |
|
赤(EBS より上) |
高損失優先度の割り当て |
破棄 |
|
ツーレート スリー カラー |
グリーン(準拠) |
低損失優先度の割り当て |
なし |
黄色(CIR および CBS の上) |
中高損失優先度の割り当て |
なし |
|
赤色(PIR および PBS より上) |
高損失優先度の割り当て |
破棄 |
転送クラスと PLP レベル
パケットの転送クラスの割り当てとPLPレベルは、Junos OSサービスクラス(CoS)機能によって使用されます。Junos OS CoS 機能には、ベストエフォート型のトラフィック配信が不十分な場合に、差別化されたサービスを提供するために使用できる一連のメカニズムが含まれています。IPv4、IPv6、MPLSトラフィックを伝送するルーター(およびスイッチ)インターフェイスでは、CoS機能を設定して、ネットワークのエッジに入る単一のトラフィックフローを取り込み、ネットワーク全体で異なるレベルのサービスを提供できます。これは、転送クラスの割り当てと個々のパケットのPLPレベルに基づいて、出力用の内部転送とスケジューリング(キューイング)です。
ポリサーまたはステートレスファイアウォールフィルターが実行する転送クラスまたは損失優先度の割り当ては、すべての論理インターフェイスでCoSデフォルトIP優先度分類、または論理インターフェイスに明示的にマッピングされた設定された動作集約(BA)分類子によって、イングレスで実行されたこのような割り当てを上書きします。
CoS設定に基づいて、特定の転送クラスのパケットが特定の出力キューを介して送信され、各出力キューはスケジューラで定義された送信サービスレベルに関連付 けられます。
他のCoS設定に基づいて、出力キュー内のパケットが輻輳に遭遇すると、損失優先度の高い値を持つパケットは、ランダム早期検出(RED)アルゴリズムによって破棄される可能性が高くなります。パケット損失の優先度値は、トラフィック フロー内のパケットの相対的な順序に影響を与えることなく、パケットのスケジューリングに影響を与えます。
トラフィックへのポリサーアプリケーション
ポリサーを定義して名前を付けた後、ポリサーはテンプレートとして保存されます。後で同じポリサー名を使用して、使用するたびに同じポリサー設定を提供することができます。これにより、同じポリサー値を複数回定義する必要がなくなります。
ポリサーは、次の 2 つの方法のいずれかでトラフィック フローに適用できます。
非終了アクションまたは
three-color-policer (single-rate | two-rate) policer-name非終了アクションをpolicer policer-name指定する標準ステートレスファイアウォールフィルターを設定できます。論理インターフェイスの入力または出力に標準フィルターを適用すると、フィルター設定で指定された条件に一致するフィルター固有のプロトコルファミリーのすべてのパケットにポリサーが適用されます。ポリサーを適用するこの方法では、インターフェイス上の特定のトラフィッククラスを定義し、各クラスにトラフィックレート制限を適用できます。
プロトコルファミリーや一致条件に関係なく、そのインターフェイス上のすべてのトラフィックにトラフィックレート制限が適用されるように、インターフェイスに直接ポリサーを適用できます。
ポリサーは、キュー、論理インターフェイス、またはレイヤー 2(MAC)レベルで設定できます。エグレス キューのパケットには単一のポリサーのみが適用され、ポリサーの検索は次の順序で行われます。
キュー レベル
論理インターフェイス レベル
レイヤー 2(MAC)レベル