例:複雑なマルチフィールドフィルターの設定と検証
この例では、SIP シグナリング(VoIP)メッセージは TCP/UDP、ポート 5060、RTP メディア チャネルで UDP を使用し、ポート割り当ては 16,384~32,767 です。以下のセクションを参照してください。
複雑なマルチフィールド フィルターの設定
マルチフィールドフィルターを設定するには、以下のアクションを実行します。
SIP シグナリング メッセージ(VoIP ネットワーク制御トラフィック)をファイアウォール フィルターを使用して NC として分類します。
VoIP トラフィックを同じファイアウォール フィルターを使用して EF として分類します。
残りのトラフィックすべてを IP 優先度
0
でポリシー設定し、BE に設定します。PLP の高いマークが付いた過剰なデータで、BE トラフィックを 1 Mbps にポリシングします。
インターフェイスにポリサーを使用してファイアウォールフィルターを適用します。
と呼ばれる classify
ファイアウォールフィルターは、受信パケットで識別されたトランスポートプロトコルとポートで一致し、基準で指定された転送クラスにパケットを分類します。
最初の条件、 、 は、 sip
SIP シグナリング メッセージをネットワーク制御メッセージとして分類します。ステートメントは port
、5060 にコード化された送信元ポートまたは宛先ポート(または両方)に一致します。
SIP シグナリング メッセージの分類
firewall { family inet { filter classify { interface-specific; term sip { from { protocol [ udp tcp ]; port 5060; } then { forwarding-class network-control; accept; } } } } }
2 つ目の用語である、 は、 rtp
UDP ベースのトランスポートを使用する VoIP メディア チャネルを分類します。
UDP を使用する VoIP チャネルの分類
term rtp { from { protocol udp; port 16384-32767; } then { forwarding-class expedited-forwarding; accept; } }
ポリサーのバーストトレランスは、インターフェイスMTUの10倍である低速インターフェイスの推奨値に設定されています。高速インターフェイスの場合、推奨されるバースト サイズはインターフェイス時間 3~5 ミリ秒の送信レートです。
ポリサーの設定
policer be-policer { if-exceeding { bandwidth-limit 1m; burst-size-limit 15k; } then loss-priority high; }
3 つ目の条件である、 be
は、残りのトラフィックすべてを帯域幅制限に従って規制することを保証します。
残りのトラフィックすべてをポリシー設定
term be { then policer be-policer; }
この条件には be
、アクション修飾子は forwarding-class
含まれません。さらに、フィルターに提供される classify
ネットワーク制御(NC)トラフィックの明示的な処理はありません。NC トラフィックと残りのすべての IP トラフィックの明示的な分類を設定できますが、デフォルトの IP 優先度分類子が残りのトラフィックを正しく分類するため、必要はありません。
インターフェイスに classify
分類子を fe-0/0/2
適用します。
分類子の適用
interfaces { fe-0/0/2 { unit 0 { family inet { filter { input classify; } address 10.12.0.13/30; } } } }
複雑なマルチフィールド フィルターの検証
設定がコミットされる前に、 コマンドを使用してインターフェイスに有効なデフォルトの分類子を show class-of-service interface interface-name
表示します。この表示は、分類子がデフォルトで有効であることを ipprec-compatibility
確認します。
デフォルト分類の検証
user@host> show class-of-service fe-0/0/2 Physical interface: fe-0/0/2, Index: 135 Queues supported: 8, Queues in use: 4 Scheduler map: <default>, Index: 2032638653 Logical interface: fe-0/0/2.0, Index: 68 Shaping rate: 32000 Object Name Type Index Scheduler-map <default> 27 Rewrite exp-default exp 21 Classifier exp-default exp 5 Classifier ipprec-compatibility ip 8
デフォルトの分類子マッピングを表示するには、 コマンドを show class-of-service classifier name name
使用します。ハイライトされた出力は、IP 優先度設定が 0 のトラフィックが BE に正しく分類され、NC トラフィック(優先度値が 6 または 7)が NC に正しく分類されていることを確認します。
デフォルトの分類子マッピングの表示
user@host> show class-of-service classifier name ipprec-compatibility Classifier: ipprec-compatibility, Code point type: inet-precedence, Index: 12 Code point Forwarding class Loss priority 000 best-effort low 001 best-effort high 010 best-effort low 011 best-effort high 100 best-effort low 101 best-effort high 110 network-control low 111 network-control high
設定がコミットされた後、マルチフィールドの分類子が正しく動作していることを確認します。ピアから受信したトラフィックを転送する際に使用されるルーターデバイスのインターフェイスの egress
キューカウンターを監視できます。キューイングは通常、Junos OSのエグレスでのみ発生するため、イングレスインターフェイス(fe-0/0/2
)のキューカウンターを表示しても、イングレス分類を確認できません。(イングレスキューイングはギガビットイーサネットIQ2 PICと拡張IQ2 PICでのみサポートされています)。
マルチフィールド フィルターの動作を検証するには、以下の手順にしたがっています。
トラフィックに使用するエグレスインターフェイスを決定するには、 コマンドを
traceroute
使用します。エグレス インターフェイスを識別した後、 コマンドを発行して、関連するキュー カウンターを
clear interfaces statistics interface-name
クリアします。デフォルトの転送クラスからキューへの番号の割り当てを確認します。これにより、VoIP、NC、およびその他のトラフィックが使用するキューを予測できます。これを行うには、 コマンドを
show class-of-service forwarding-class
発行します。コマンドを発行して、インターフェイス上のキュー数を
show interfaces queue
表示します。