Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
このページで
 

例:イングレスシングルレート2カラーポリサーを設定し、マルチフィールド分類子を設定することで、ネットワーク内のインバウンドトラフィックを制限する

この例では、シングルレートの 2 カラー ポリサーを使用して、ネットワーク内の顧客トラフィックを制限する方法を示します。ポリサーはトークン バケットと呼ばれる概念を使用して、ドロップするトラフィックを識別します。ポリサーは、イン契約トラフィックと契約外トラフィックのサービスクラス(CoS)戦略をインターフェイスレベルで適用します。単一レートの 2 カラー ポリサーを受信パケット、発信パケット、またはその両方に適用できます。この例では、ポリサーを受信トラフィックの入力(イングレス)ポリサーとして適用します。マルチフィールド分類子CoSキューイングオプションは、割り当てられたキューにトラフィックを配置します。これは、後でスケジューリングとシェーピングを適用することで、出力インターフェイスレベルでリソース使用率を管理するのに役立ちます。

トークン バケットの概念とその基盤となるアルゴリズムの徹底的な説明は、このドキュメントの範囲外です。トラフィックポリシングとCoSの一般的な詳細については、 QoS-Enabled Networks— Miguel BarreirosとPeter Lundqvistの「Tools and Foundations」を参照してください。このガイドは、多くのオンライン書籍販売業者や www.juniper.net/books で利用できます。

要件

この手順を確認するために、この例ではトラフィック ジェネレータを使用します。トラフィック ジェネレータは、ハードウェアベースで実行することも、サーバーまたはホスト マシン上で実行するソフトウェアにすることもできます。

この手順の機能は、Junos OS を実行するデバイスで幅広くサポートされています。ここに示す例は、Junos OSリリース10.4を実行しているMXシリーズルーターでテストと検証を行いました。

概要

ポリシング

シングルレートの2カラーポリシーは、制限に準拠しないトラフィックに暗示的または設定されたアクションを適用することで、特定のサービスレベルに設定されたトラフィックフローのレートを適用します。インターフェイスの入力または出力トラフィックに単一レートの 2 カラー ポリサーを適用すると、ポリサーはトラフィック フローを次のコンポーネントで定義されたレート制限まで計ります。

  • 帯域幅制限—インターフェイスで受信または送信されたパケットで許可される1秒あたりのビット数の平均。帯域幅制限は、1秒あたりのビット数の絶対数として、または1~100の割合値として指定できます。パーセンテージ値を指定した場合、有効帯域幅制限は、物理インターフェイスメディアレートまたは論理インターフェイス設定シェーピングレートのいずれかの割合として計算されます。

  • バーストサイズ制限 — データのバーストで許可される最大サイズ。バースト サイズはバイト単位で測定されます。バースト サイズの計算には、2 つの公式が推奨されます。

    バースト サイズ = 帯域幅 x バースト トラフィックの許容時間 / 8

    または

    バースト サイズ = インターフェイス mtu x 10

    バースト サイズの設定については、 トラフィック ポリサーの適切なバースト サイズの決定を参照してください。

    メモ:

    インターフェイスにはバッファ空間が有限です。一般に、インターフェイスの推定総バッファ深さは約125ミリ秒です。

設定された制限(緑のトラフィックに分類)に準拠したトラフィックフローの場合、パケットは暗黙的にPLP(パケット損失優先度)レベルが低くマークされ、無制限にインターフェイスを通過できます。

設定された制限(赤色のトラフィック)を超えるトラフィックフローの場合、パケットはポリサーに設定されたトラフィックポリシングアクションに従って処理されます。この例では、15 KBps 制限を超えるバーストパケットを破棄します。

レイヤー 3 トラフィックをレート制限するために、次の方法で 2 カラー ポリサーを適用できます。

  • 特定のプロトコルレベルで、論理インターフェイスに直接。

  • 論理インターフェイスに適用される標準ステートレスファイアウォールフィルターのアクションとして、特定のプロトコルレベルで実行されます。これは、この例で使用される技術です。

レイヤー 2 トラフィックをレート制限するために、2 色のポリサーを論理インターフェイス ポリサーとしてのみ適用できます。ファイアウォール フィルターを介してレイヤー 2 トラフィックに 2 カラー ポリサーを適用することはできません。

注意:

ポリサーは相互に排他的であるため、帯域幅制限または帯域幅パーセントのいずれかを選択できます。ポリサーがアグリゲート インターフェイス、トンネル インターフェイス、またはソフトウェア インターフェイスに帯域幅パーセントを使用するように設定することはできません。

この例では、ホストは Web サーバーをエミュレートするトラフィック ジェネレータです。デバイスR1およびR2はサービスプロバイダが所有しています。Webサーバーは、デバイスR2の背後にあるユーザーによってアクセスされます。ホストは、送信元ポートTCP HTTPポート80とソースポート12345を持つトラフィックをユーザーに送信します。シングルレートの2カラーポリサーは、ホストをデバイスR1に接続するデバイスR1のインターフェイスに設定および適用されます。ポリサーは、Webサーバーの所有者(この場合はホストでエミュレート)と、ホストとデバイスR1を接続するリンクを介して流れるWebトラフィック用にデバイスR1を所有するサービスプロバイダとの間で行われる帯域幅の可用性を強制します。

Web サーバーの所有者とデバイス R1 と R2 を所有するサービス プロバイダ間の契約帯域幅の可用性に従い、ポリサーは、ホストから発信される HTTP ポート 80 トラフィックとポート 12345 トラフィックを、利用可能な帯域幅の 700 Mbps(70%)を使用するように制限し、ホストとデバイス R1 の間でギガビット イーサネット インターフェースの MTU サイズ 10 x の許容バースト レートを使用します。

メモ:

実際のシナリオでは、FTP、SFTP、SSH、TELNET、SMTP、IMAP、POP3 などのその他のさまざまなポートのトラフィックをレート制限することになるでしょう。これは、Web ホスティング サービスの追加サービスとして含まれることが多いためです。

メモ:

ルーティング プロトコル、DNS、ネットワーク接続の運用を維持するために必要なその他のプロトコルなど、ネットワーク制御プロトコルにレート制限されない追加の帯域幅を残す必要があります。これが、ファイアウォールフィルターが最終的な受け入れ条件を持っている理由です。

トポロジ

この例では、 図 1 のトポロジーを使用しています。

図 1:シングルレート 2 カラー ポリサー シナリオ Single-Rate Two-Color Policer Scenario

図 2 は、ポリシングの動作を示しています。

図 2:シングルレート 2 カラー ポリサー シナリオ Traffic Limiting in a Single-Rate Two-Color Policer Scenarioでのトラフィック制限

マルチフィールド分類

分類子とは、ポリシー実行が設定されている場合、ルーターまたはスイッチがパケットの検出と分類に使用するソフトウェア操作です。分類中に、パケット ヘッダーの内容が検査され、この検査によって、アウトバウンド インターフェースが忙しくなり、すべてのパケットを処理するためにあまりにも忙しくなり、デバイスがパケットを無差別に破棄するのではなく、インテリジェントにパケットをドロップしたい場合に、パケットがどのように処理されるかが決定されます。関心のあるパケットを検出する一般的な方法の 1 つは、送信元ポート番号です。この例では、TCP 送信元ポート番号 80 と 12345 を使用していますが、ファイアウォール フィルターの一致条件を使用して、パケット検出の他の多くの一致条件をマルチフィールドの分類子で使用できます。この例の設定では、送信元ポート80を持つTCPパケットは、BEデータ転送クラスとキュー番号0に分類され、送信元ポート12345を持つTCPパケットはプレミアムデータ転送クラスとキュー番号1に分類されることを指定しています。両方のポート番号からのトラフィックは、まずポリサーによって監視されます。トラフィックがポリサーを通過すると、割り当てられたキューのアウトバウンドインターフェイスに送信が渡されます。

通常、マルチフィールドの分類子は、パケットが自律システム(AS)に入る際に、ネットワークエッジで使用されます。

この例では、ファイアウォールフィルターmfの分類子を設定し、デバイスR1にいくつかのカスタム転送クラスを指定します。カスタム転送クラスを指定する際には、各クラスをキューに関連付けます。

分類子演算を 図 3 に示します。

図 3:TCP ソース ポート Multifield Classifier Based on TCP Source Portsに基づくマルチフィールド分類子

マルチフィールド分類子のファイアウォールフィルターを、フィルターを必要とする各顧客対応またはホスト対応インターフェイスの入力フィルターとして適用します。この例では、デバイスR1の受信インターフェイスge-2/0/5が使用されています。トラフィックが送信されるインターフェイス上のキューの動作を監視します。この例では、 コマンドの オプションを使用して extensive 、キューのサービスを提供する方法を決定するために、インターフェイスge-2/0/8でトラフィック統計を show interfaces 調べます。

構成

手順

CLI クイックコンフィギュレーション

この例を迅速に設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に合わせて必要な詳細を変更してから、 階層レベルの CLI にコマンドを [edit] コピー アンド ペーストします。

デバイス R1

デバイスR2

手順

次の例では、設定階層内のさまざまなレベルに移動する必要があります。その方法の詳細については、 Junos OS CLIユーザーガイドの 設定モードでのCLIエディターの使用を参照してください。

デバイスR1を設定するには:

  1. デバイス インターフェイスを設定します。

  2. ポリサーを、700 Mbps の帯域幅と 15 KBps のバースト サイズにレート制限するように設定します。

  3. 赤色のトラフィック フローでパケットを破棄するようにポリサーを設定します。

  4. カスタム転送クラスと関連するキュー番号を設定します。

  5. 送信元ポート80(HTTPトラフィック)を持つTCPトラフィックを、キュー0に関連付けられた BE データ転送クラスに配置するファイアウォールフィルター条件を設定します。

  6. 送信元ポートが12345のTCPトラフィックを、キュー1に関連付けられたプレミアムデータ転送クラスに配置するファイアウォールフィルター条件を設定します。

  7. ファイアウォールフィルターの最後に、他のすべてのトラフィックを受け入れるデフォルト条件を設定します。

    それ以外の場合、インターフェイスに到着し、ファイアウォールフィルターによって明示的に受け入れられないすべてのトラフィックは破棄されます。

  8. ファイアウォールフィルターを、入力フィルターとしてge-2/0/5インターフェイスに適用します。

  9. OSPFを設定します。

手順

デバイスR2を設定するには:

  1. デバイス インターフェイスを設定します。

  2. OSPFを設定します。

結果

設定モードから、 、show firewallshow class-of-serviceおよび のコマンドをshow interfaces入力して設定をshow protocols ospf 確認します。出力結果に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

デバイスR1の設定が完了したら、設定モードから を入力します commit

デバイスR2の設定が完了したら、設定モードから を入力します commit

検証

設定が正しく機能していることを確認します。

CoS 設定の確認

目的

転送クラスが正しく設定されていることを確認します。

アクション

デバイスR1から、 コマンドを show class-of-service forwarding-class 実行します。

意味

出力には、構成済みのカスタム分類子設定が表示されます。

カウンターのクリア

目的

ファイアウォールとインターフェイスカウンターがクリアされていることを確認します。

アクション

  • デバイスR1で、 コマンドを clear firewall all 実行して、ファイアウォールカウンターを0にリセットします。

  • デバイスR1で、 コマンドを clear interface statistics ge-2/0/5 実行して、インターフェイスカウンターを0にリセットします。

TCP HTTP ポート 80 からネットワークにトラフィックを送信し、結果を監視する

目的

ポリサーおよびカスタム キュー レベルで監視できるトラフィックを送信します。

アクション

  1. トラフィック ジェネレータを使用して、送信元ポートが 80 の 20 個の TCP パケットをネットワークに送信します。

    s フラグは、送信元ポートを設定します。k フラグは、ソース ポートがインクリメントされるのではなく、80 で安定した状態を維持します。c フラグは、パケット数を 20 に設定します。d フラグは、パケットサイズを設定します。

    メモ:

    この例では、ポリサー数は帯域幅制限の 8 Kbps に、バースト サイズ制限は 1500 KBps に減り、一部のパケットがドロップされることを確認しています。

  2. デバイスR1で、 コマンドを使用してファイアウォールカウンターを show firewall 確認します。

    hping の出力では、 コマンドの出力に示すように、パケットロスが 20%(20 のうち 4 パケット)であり、同じ数の show firewall パケットがポリサーによってドロップされたことを示しています。また、ドロップは、ファイアウォール設定の mf 分類子で指定されたキュー BE データに関連付けられていることに注意してください。

  3. デバイスR1で、 コマンドを使用してキューカウンターを show interfaces extensive ge-2/0/8| find "Queue counters" 確認します。

    ファイアウォール設定の mf 分類子で指定されたとおり、キュー BE データを使用して 16 個のパケットがインターフェイス 2/0/8 から送信されました。残りの 4 つのパケットは、前述のようにポリサーによってドロップされました。キュー 3 に送信された 4 つのパケットは、ネットワーク制御トラフィックです。ルーティング プロトコルの更新である可能性があります。

意味

両方のデバイスからの出力は、4 つのパケットが破棄されたことを示しています。これは、少なくとも 8 Kbps の緑(契約内 HTTP ポート 80)トラフィックが存在し、赤い契約外 HTTP ポート 80 トラフィックの 1500 KBps バースト オプションを超えていたことを示しています。ステップ2および3では、正しいキューを使用して、残りのトラフィックをインターフェイス2/0/8に送信していることがわかります。

TCPポート12345からネットワークにトラフィックを送信し、結果を監視

目的

ポリサーおよびカスタム キュー レベルで監視できるトラフィックを送信します。

アクション

  1. セクション「カウンターをクリアする」に示すように、 カウンタをもう一度クリアします

  2. トラフィック ジェネレータを使用して、送信元ポートが 12345 の 20 個の TCP パケットをネットワークに送信します。

    s フラグは、送信元ポートを設定します。k フラグを指定すると、ソース ポートは増加する代わりに 12345 で安定した状態を維持します。c フラグは、パケット数を 20 に設定します。d フラグは、パケットサイズを設定します。

  3. デバイスR1で、 コマンドを使用してファイアウォールカウンターを show firewall 確認します。

    hping の出力では、 コマンドの出力に示すように、パケットロスが 20%(20 のうち 4 パケット)であり、同じ数の show firewall パケットがポリサーによってドロップされたことを示しています。また、ドロップは、ファイアウォール設定の mf 分類子で指定されているように、キューのプレミアムデータに関連付けられていることに注意してください。

  4. デバイスR1で、 コマンドを使用してキューカウンターを show interfaces extensive ge-2/0/8| find "Queue counters" 確認します。

    mf-分類子ファイアウォール設定で指定されたとおり、プレミアムデータ キューを使用して 16 個のパケットがインターフェイス 2/0/8 で送信されたことがわかります。残りの 4 つのパケットは、前述のようにポリサーによってドロップされました。キュー 3 に送信された 19 個のパケットは、ネットワーク制御トラフィックです。ルーティング プロトコルの更新である可能性があります。

意味

両方のデバイスからの出力は、4つのパケットが破棄されたことを示しています。これは、緑(契約内 HTTP ポート 80)トラフィックが少なくとも 8 Kbps あり、赤い契約外 HTTP ポート 80 トラフィックの 1500 KBps バースト オプションを超えていたことを意味します。手順 3 と 4 では、正しいキューを使用して、残りのトラフィックをインターフェイス 2/0/8 に送信していることがわかります。