Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

インバンドフローアナライザー(IFA)2.0プローブによるリアルタイムフローモニタリング

インバンドフローアナライザー(IFA)2.0は、ネットワーク全体のホップごとにデータを収集します。このデータを外部コレクターにエクスポートして、ローカライズされた分析またはエンドツーエンドの分析を実行します。

インバンドフローアナライザー2.0

インバンドフローアナライザー2.0の概要

インバンドフローアナライザー2.0(IFA 2.0)は、ネットワークに出入りするパケットを監視および分析するために使用できる機能です。ネットワーク管理者は、この機能を使用して、パケットがネットワークを通過するパスと、各ホップでのパケットの滞在時間に関連するデータを収集できます。このデータは、過度の遅延と輻輳の可能性を示します。この機能は、データプレーンでホップごとのフローデータを収集することで、複雑なネットワークに関するインサイトを得るのに役立ちます。

IFAは、プローブパケットを使用してネットワーク全体のフローデータを収集します。IFA は目的のフローをサンプリングし、プローブパケットを生成します。これらのパケットは元のフローを表し、元のフローと同じ特性を持ちます。つまり、IFA パケットは、元のパケットと同じパスとネットワーク要素の同じキューを通過します。その結果、IFA プローブパケットは元のフローと同じネットワークパスを通過し、同様の遅延と輻輳が発生します。

Inband Flow Analyzer 2.0(IFA 2.0)を使用して、次のようなフローデータ情報を収集できます。

  • 滞留時間(レイテンシー)
  • ホップ単位の遅延
  • ホップ単位のイングレスポート番号
  • ホップ単位のエグレスポート番号
  • 受信パケットのタイムスタンプ値
  • キュー ID
  • 混雑通知
  • エグレスポート速度

IFA 2.0 は、 Inband Flow Analyzer(draft-kumar-ippm-ifa-02)というタイトルの IETF ドラフトで定義されています。

利点

  • IFAプローブパケットは、元のフローと同じネットワークパスを通過するため、ネットワークの障害やパフォーマンスの問題を監視するのに役立ちます。
  • ライブトラフィックを監視することで、パケットレベルのレイテンシ分析やキュー輻輳監視を実行し、ネットワークパフォーマンスを最適化します。

インバンドフローアナライザープロセス

IFA は、以下の処理ノード ( 図 1 を参照) を使用してフローを監視および分析します。

  • IFA イニシエータ ノード(イングレス ノードとも呼ばれる)
  • IFA トランジットノード
  • IFA 終端ノード(エグレス ノードとも呼ばれる)

IFA 2.0 は、レイヤー 3(L3)フローと VXLAN フローの両方の処理をサポートしますが、同じデバイス上で L3 フローと VXLAN フローの両方に IFA を設定することはできません。フロータイプのオプションは相互に排他的です。 flow-type 設定ステートメントを使用して、目的のフロータイプ(L3 または VXLAN)を設定します。 flow-type ステートメントは、IFA イニシエータと IFA 終端ノード(通常はリーフ ノード)にのみ設定します。IFAトランジットノード(通常はスパインノード)の場合、 flow-type ステートメントを設定する必要はありません。

図1:IFA処理 Flow diagram illustrating IFA data collection: Initiator Node, Transit Node, Terminating Node, and Collector with blue arrow for original flow and black arrow for IFA copy.

表 1 は、IFA 処理ノードが実行するさまざまな機能を要約したものです。

表1:IFAノード機能
IFAノード 機能
IFA イニシエーター・ノード 対象のフロートラフィック(L3 または VXLAN)をサンプリングし、各サンプルに IFA ヘッダーを追加して IFA コピーを作成します。
IFA トランジットノード IFA パケットを識別し、そのメタデータをパケット内のメタデータ スタックに追加します。
  • パケットにIFAヘッダーが付属している場合、ノードはメタデータをメタデータスタックに挿入し、転送します。ホップ制限が 0 の場合、ノードはメタデータを挿入しません。
  • 非 IFA デバイスが IFA パケットを受信すると、デバイスは IFA 処理を行わずにそのパケットを転送します。
  • IFA トランジットノードとしてのQFX5220は、IFA プローブパケットヘッダーのメタデータスタックにメタデータを挿入できません。代わりに、QFX5220 はタイムスタンプとその他のメタデータを含むテールスタンプを IFA プローブ パケットの末尾に追加します。

IFA 終端ノード
  • 終端ノード メタデータを IFA パケットに挿入します。
  • IFA パケットを IP Flow Information Export(IPFIX)形式にフォーマットし、設定されたコレクターにパケットを送信します。IPFIX 形式をサポートする任意のコレクター (またはアプリケーション) を使用できます。
手記:

IFA終端機能には、有効なJuniper Advanced Telemetry Feature(ATF)ライセンスが必要です。

IFA プローブ パケット ヘッダー

IFA 2.0 プローブ パケットには、次のものが含まれています。

  • IFAヘッダー
  • IFAメタデータヘッダー
  • IFAメタデータスタック

図 2 は、IFA イニシエータ ノードでの L3 IFA 2.0 パケット形式を示しています。

図 2: IFA イニシエーター ノードでのレイヤー 3 IFA 2.0 パケット形式 Diagram of network packet structure showing layers: L2 Header, L3 Header, IFA Header, L4 Header, IFA Metadata Header, IFA Metadata Stack, and Payload. IFA components are highlighted.

図 3 は、IFA イニシエータ ノードでの VXLAN IFA 2.0 パケット形式を示しています。

図 3:IFA イニシエーター ノードでの VXLAN IFA 2.0 パケット形式 Packet structure showing encapsulation layers and headers for telemetry: outer L2, L3, L4, IFA headers, VxLAN, inner L2, L3, L4, and payload.
手記:

VXLAN を使用する場合、IFA ヘッダーは VXLAN カプセル化の後に 3 パス メカニズムを使用して追加されます。

IFAヘッダー

IFA 2.0 では、TCP、UDP、GRE(Generic Routing Encapsulation)、STP(Spanning Tree Protocol)が ULH を定義するのと同様に、上位レイヤーヘッダー(ULH)が定義されます。IFA ULH は、他の IPv4 拡張ヘッダーがある場合でも、常に IP ヘッダーの後の最初のヘッダーになります。 NextHdr フィールド(つまり、IFA ヘッダーの Protocol Type フィールド)は、元の IP ヘッダー プロトコル フィールド値を伝送します。 図 4 は、IFA ヘッダー・フォーマットを示しています。

図4:IFAヘッダー IFA header format with fields: IFA Version 4 bits, GNS 4 bits, Protocol Type 8 bits, FLAGS 8 bits, MAX Length 8 bits.
表 2 では、IFA ヘッダー フィールドについて詳しく説明します。
表 2: IFA ヘッダー フィールド
IFA ヘッダー フィールド の説明
IFAバージョン IFA ヘッダーのバージョン。現在の実装では、IFA のバージョンは 2.0 です。
GNSの IFA メタデータのグローバル名前空間 (GNS)。IFA イニシエーター・ノードは、このフィールドの値を0xFとして設定します。
プロトコルタイプ IP ヘッダー プロトコル タイプ。この値は、IP ヘッダーからコピーされます。
フラグ 未使用。
最大長(MAX Length)

メタデータスタックの最大許容長(4 オクテットの倍数)。イニシエータ・ノードは、このフィールドを初期化します。パス内の各ノードは、現在の長さと最大長を比較します。現在の長さが最大長以上の場合、トランジットノードはメタデータの挿入を停止します。この最大許容長を設定できます。デフォルト値は240オクテット(30ホップの場合)です。

IFAメタデータヘッダー

IFA 2.0 では、 図 5 に示すように、コンパクトな 4 バイトのメタデータ ヘッダーが定義されています。IFA イニシエータ ノードは、このヘッダーをプローブ パケットに追加します。

図5:IFAメタデータヘッダーフォーマットData structure with four 8-bit fields: Request Vector, Action Vector, Hop Limit, and Current Length; identifier jn-000099.
表 3 では、IFA メタデータ ヘッダー フィールドの詳細について説明します。
表 3: IFA メタデータ ヘッダー フィールド
IFA メタデータ ヘッダー フィールド の説明
要求ベクトル GNS で指定されているフィールドの存在を指定します。未使用。
アクションベクトル IFA パケットのノードローカルまたはエンドツーエンドのアクションを指定します。未使用。
ホップ制限 IFA ゾーンで許可されるホップの最大数を指定します。イニシエータ・ノードは、このフィールドを初期化します。ホップ制限は、ホップごとにデクリメントされます。受信パケットのホップ制限が 0 の場合、現在のノードはメタデータを挿入しません。この制限は設定できます。デフォルト値は 250 です。

終端ノードはホップ制限チェックを実行しません。

現在の長さ(Current Length) メタデータ スタックの現在の長さを 4 オクテットの倍数で指定します。

IFAメタデータスタック

図 6 に示すように、各 IFA ホップは、ホップ固有のメタデータを IFA メタデータ スタックに挿入します。IFA イニシエータ ノードは、L4 ヘッダーの後にメタデータ ヘッダーを追加します。

トランジットノードとしてのQFX5220は、IFA プローブパケットヘッダーのメタデータスタックにメタデータを挿入できません。代わりに、QFX5220 はタイムスタンプとその他のメタデータを含むテールスタンプを IFA プローブ パケットの末尾に追加します。これらのテールスタンプの詳細については、「 IFA プローブパケットのテールスタンプ (QFX5220 のみ)」を参照してください。

図6:IFAメタデータスタックヘッダー Diagram of data packet structure with fields: LNS 4 bits, Device ID 20 bits, IP TTL 8 bits, Egress Port Speed 4 bits, Congestion 2 bits, Queue ID 6 bits, Rx Timestamp Seconds 20 bits, Egress Port Number 16 bits, Ingress Port Number 16 bits, RX Timestamp Nano Seconds 32 bits, Residence Time Nano Seconds 32 bits, Opaque Data 1 Reserved 32 bits, Opaque Data 2 Hi Reserved 16 bits, Opaque Data 2 Low Reserved 16 bits, Opaque Data 3 Reserved 32 bits.
表 4 では、IFA メタデータ スタック ヘッダー フィールドの詳細について説明します。
表 4: IFA メタデータ スタック ヘッダー フィールド
IFA メタデータ スタック ヘッダー フィールド の説明
LNSの ローカル名前空間。LNS 値を 1 に設定する必要があります。
デバイスID ユーザー設定可能なデバイスID。デバイスIDを明示的に設定するか、 auto ステートメントを設定できます。 autoを設定する場合、デバイスIDはルーターIDまたは管理IPアドレスから内部的に生成されます。
IP TTL 各ホップでの IP TTL(Time-to-live)値
エグレスポートスピード エンコーディングは、0〜10Gbps、1〜25Gbps、2〜40Gbps、3〜50Gbps、4〜100Gbps、5〜200Gbps、6〜400Gbpsです。

エグレスポート速度はIFAメタデータでマッピングされます。例えば、エグレスポート速度が10Gbpsの場合、IFAパケットの速度フィールドは0に設定されます。

渋滞 パケットで輻輳が発生しているかどうかを示します。エグレスポートで明示的な輻輳通知(ECN)を有効にする必要があります。
キュー ID エグレスポートのキューID。
Rx タイムスタンプの秒数 受信パケットのタイムスタンプ値(秒単位)。これらの 20 ビット値から時刻 (ToD) を取得するのはコレクターの責任です。20 ビット秒は 12 日ごとにラップアラウンドされます。Collector は、ラップアラウンド時間内に定期的に ToD を同期し、それを 20 ビットのメタデータとともに使用して、32 ビットの Rx Timestamp Seconds 値を導き出す必要があります。
エグレスポート番号 エグレスハードウェア(ASIC)ポート番号。
イングレスポート番号 イングレス ハードウェア ポート番号。
Rx タイムスタンプ ナノ秒 受信したタイムスタンプ値(ナノ秒単位)。
滞留時間 ナノ秒 ナノ秒単位のホップあたりの遅延。QFX5120の場合、滞留時間は0x3B9ACA00(ナノ秒単位で1秒)+ TX_NSEC - RX_NSECとして計算されます。(ラップアラウンド処理を回避するために、各パケットに秒が追加されます)。これに対し、QFX5130、QFX5220、QFX5700では、滞留時間が実際の値として更新されます。

IFAプローブパケットのテールスタンプ(QFX5220のみ)

トランジットノードとしてのQFX5220は、IFA プローブパケットヘッダーのメタデータスタックにメタデータを挿入できません。代わりに、QFX5220 はタイムスタンプとその他のメタデータを含むテールスタンプを IFA プローブ パケットの末尾に追加します。QFX5220 では、合計 28 バイトのメタデータがテールスタンプとして追加されます。IFA プローブ パケットを受信すると、IFA 終端ノードはメタデータの TTL 値を使用してテールスタンプの数(つまり、2 つの QFX5120 または QFX5130 デバイス間のパス上のQFX5220ホップ数)を識別します。次に、テールスタンプが正しいメタデータ形式に変換され、メタデータ スタック内の正しい場所に挿入されるため、メタデータはトランジット ノードが追加した順序で表示されます。完了すると、IFA 終端ノードは、設定された外部コレクタに IPFIX 形式でデータをエクスポートします。

このため、メタデータをスタックに挿入できないため、QFX5220のIFAメタデータスタックフィールド IP TTLEgress Port Speed 、および Congestion は、コレクタで値0で受信されます。QFX5220からこれらのサポートされていないフィールドを無視するようにコレクターを設定する必要があります。

テールスタンプには、14 バイトのイングレス (Rx) テールスタンプと 14 バイトのエグレス (Tx) テールスタンプが含まれます。 図 7図 8 は、これらのタイムスタンプの形式の詳細を示しています。

図 7: イングレス(Rx)テールスタンプ形式の Diagram of a network protocol data packet structure with fields: Timestamp Seconds, Timestamp Nano Seconds, Reserved, Origin_ID with Device ID and Port Number, R/T, and FCS for error-checking.
図 8: エグレス(Tx)テールスタンプ形式の Diagram of a data packet structure with fields: Timestamp Seconds, Timestamp Nano Seconds, T, R, Q, C flags, Origin_ID, R/T flag, and FCS for error detection.

IFA ノードでサポートされている機能

表 5 は、IFA ノードでサポートされる機能の一覧です。

表 5: IFA ノードでサポートされる機能
IFA ノード でサポートされる機能
IFAイニシエーター

トラフィックとインターフェイスタイプ:

  • IPv4 および IPv6 トラフィック。
  • VXLAN トラフィック。
  • UDP と TCP。
  • タグ付きパケットとタグなしタグなしパケット。
  • LAG(アグリゲーションリンク)とMC-LAG(マルチシャーシLAG)です。LAG出力の場合、元のパケットとIFAプローブのコピーは同じポートを使用して終了します。
  • IRB インターフェイス( inband-flow-telemetry-init および inband-flow-telemetry-terminate フィルターは、IRB トラフィックの基盤となるレイヤー 2 インターフェイスに適用する必要があります)。
  • ECMP トラフィック。ECMP トラフィックの場合、元のパケットと IFA プローブのコピーは、同じポートを使用して終了します。
  • 10Gbps、25Gbps、40Gbps、50Gbps、100Gbpsなどのインターフェイス速度。
IFAトランジット IFA パケットを識別し、メタデータを追加して転送します。
IFA終端
  • 設定されたIPv4コレクターにIFAデータをIPFIX形式でエクスポートするためのサポート。
  • 複数の IFA パケットを 1 つの IPFIX エクスポートに結合することをサポートします。

サポートされている IFA 2.0 IPFIX フォーマット(終端ノード)

終端ノードは、IFA 2.0 パケットを IPFIX 形式でフォーマットし、エグレス ポート情報を更新して、設定されたコレクターにパケットを送信します。IFA 2.0 IPFIX テンプレートは、L3 トラフィックと VXLAN トラフィックで同じです。 図 9 は、終端ノードが IFA 2.0 データをフォーマットしてコレクタに送信する IPFIX テンプレートを示しています。

図9:IFA 2.0 IPFIXテンプレート Decoded IPFIX packet showing protocol version 10, message length 48 bytes, timestamp Jan 11 1970, flow sequence 1128891, observation domain ID 305419896, and a data template with ID 257 and three fields with types 100, 101, and 102.

図 10 は、設定されたコレクターによって受信された VXLAN IFA 2.0 パケットのサンプルを IPFIX 形式で示しています。

図 10:VXLAN IFA 2.0 IPFIX サンプル パケット
Network flow data packet screenshot from a monitoring tool showing IPFIX protocol version 10, flow details with version, length, timestamp, flow sequence, observation domain id, set id 257, and enterprise-specific entries in hexadecimal.

IFA 2.0 設定の制限事項

Junos OS を実行しているデバイスで IFA 2.0 を設定する前に、以下の制限事項に注意する必要があります。

  • プロトコル番号:IFA 2.0 は実験プロトコル番号 253 を使用します。スイッチがプロトコル番号 253 のトラフィックを受信すると、それらのパケットは IFA トランジット フィルターにヒットします。この場合、QFX5220はこれらのパケットに 28 バイトのテールスタンプを追加します。QFX5130 および QFX5700 スイッチでは、パケットがフィルターに当たっても、IFA メタデータはパケットに追加されません。ただし、IFA トランジット統計は増加します。

  • フィルタ リソース割り当て:フィルタ ハードウェア リソースがシステム内ですでに枯渇している場合、フィルタ リソースが必要なため、IFA 機能は動作しません。システム ログ(syslog)でフィルター スペース枯渇エラーを監視できます。

  • レイヤー 2 および BUM トラフィック:IFA 2.0 は、レイヤー 2 スイッチド トラフィックとブロードキャスト、不明なユニキャスト、マルチキャスト(BUM)トラフィックではサポートされていません。

  • IFA レイヤー 3 および VXLAN フロー

    • IFA 2.0 は L3 と VXLAN の両方のフローの処理に対応していますが、同じデバイス上で L3 と VXLAN の両方のフローに対して IFA を設定することはできません。 flow-type オプションは相互に排他的です。 flow-type 設定ステートメントを使用して、対象のフロー タイプ(L3 または VXLAN)を設定します。この制限は、IFA イニシエータ ノードと終端ノード(通常はリーフ ノード)にのみ適用されます。IFA トランジット ノード(通常はスパインノード)の場合、フロー タイプを設定する必要はありません。
    • VXLAN IFA フローの場合、終端ノードのエグレス ポート関連のメタデータ(エグレス ポート番号、速度、キュー ID、輻輳など)が正しくありません。VXLAN フローの終端ノード エグレス ポート関連のメタデータは無視することを推奨します。
    • IFA フロータイプ(L3 または VXLAN)の変更には、IFA フィルターの削除と再設定が必要です。フロータイプの不一致(例えば、 flow-type VXLANとして設定されていて、受信トラフィックがL3である、またはその逆)の場合、IFAの動作は保証できません(IFAプローブパケットが無効なフィールドで開始される可能性があります)。
  • IFA イニシエーター ノード

    • IFAの開始には、L4ヘッダー(UDP/TCP)が必須です。
    • エグレスポートがリンクアグリゲーショングループ(LAG)(リーフからスパインに接続するリンク)として機能するように設定されている場合、VXLANフローのIFA開始は機能しません。
    • IFA イニシエーターのポート上のフローごとに異なるサンプルレートを設定することはできません。ポート内のすべてのフローのサンプルレートは同じである必要があります。
  • IFA トランジット ノード—Junos OS および Junos OS Evolved を実行するデバイスは、メタデータ スタックの最大長チェックをサポートしていません。hop-limit オプションを設定して、トランジットノードへのメタデータの挿入を制限します。QFX5220は、テールスタンプを挿入するためのホップ制限チェックを実行できません。また、QFX5220は、IFA プローブパケットヘッダーのメタデータスタックにメタデータを挿入することもできません。代わりに、QFX 5220 は IFA プローブ パケットの末尾にテールスタンプを付加します。

    QFX5220 は、 Rx Seconds Timestamp 値として 18 ビットのみをサポートします。QFX5130 と QFX5700 は 20 ビットの Rx Seconds Timestamp 値をサポートします。

    Residence Time Nano Seconds フィールドは、QFX5220、QFX5130、および QFX5700 トランジット ノードでは実際の値として更新されますが、QFX5120 トランジット ノードでは、実際の滞留時間とともに 1 秒(1000000000 ns)が追加されます。

  • IFA 終端ノード

    • 終端ノードで設定できるIPv4コレクターは1つだけです。
    • 終端ノード メタデータのキュー ID は 47 です。このキュー ID は、IFA パケット エクスポート用に予約されています。
    • 終端ノードはホップ制限チェックを実行しません。受信 IFA パケット hop-limit 0 に設定されていても、終端ノードはメタデータを挿入し、ホップ制限を 1 減らすことで、 hop-limit 値が 255 にリセットされます。

使用上の考慮事項

以下は、IFA 2.0 関連の使用に関する考慮事項です。

  • サンプリングされたIFAパケットは、イニシエータノードで出力されるときに、さらに40バイト(4バイトIFAヘッダー + 4バイトIFAメタデータヘッダー + 32バイトメタデータ)があります。後続の IFA ノードでは、すべてのホップに 32 バイトの IFA メタデータが挿入されます。IFA パケットにはホップ単位のメタデータが挿入されるため、パケット サイズはホップごとに大きくなります。ネットワークパスに沿って、インターフェイスの最大送信単位(MTU)を適宜設定する必要があります。多数のトランジットノードを持つIFAゾーンの場合、MTUに注意する必要があります。または、開始側ノードで hop-limit オプションを設定して、IFA パケットのサイズが指定された MTU 値を超えないようにすることもできます。
  • 目的のフローを選択するには、送信元 IP アドレス、IP アドレス、送信元ポート、宛先ポート、プロトコル一致修飾子を任意に組み合わせて使用できます。IFA 2.0 は、他の試合修飾子をサポートしていません。
  • IFA ゾーン内のホップごとに一意のデバイス ID を設定する必要があります。デバイスIDに auto オプションを設定した場合、デバイスIDはルーターIDまたは管理IPアドレスの最後の20ビットから生成されます。
  • サンプリングレートを aggressiveに設定した場合、IFAコピーが増えるため、エグレスポートで輻輳が発生する可能性があります。このポート輻輳は、IFA コピーが IPFIX エクスポートのためにチップ プロセッサに送信されるときに、終端ノードで輻輳を引き起こす可能性があります。それに応じてサンプリングレートを選択することをお勧めします。
  • IFA 2.0イニシエータを設定すると、ループバックポートに対して内部ミラーセッションが作成されます。その結果、ユーザーが設定可能なミラーセッションの数が4から3に減少します。
  • 終端ノードは、最大 9000 バイト(IFA ヘッダーを含む)の IFA パケット サイズを受け入れます。終端ノードでは、複数の IFA 受信パケットが 1 つの IPFIX エクスポート パケットに結合されます。最大 10 個の IFA レコードを 1 つの IPFIX エクスポート パケットに結合できます。デフォルトでは、最大 256 バイトの元のフロー パケットが IFA ヘッダーとともに IPFIX エクスポートの一部としてエクスポートされます。1 つの IPFIX パケットの最大サイズは 9000 バイトです。コレクター ポートで MTU を正しく設定する必要があります。1 つの IPFIX パケットの最大サイズは 9000 バイトであるため、IPFIX パケットの最大クリップ長は、9000 バイト - (IFA ヘッダー長 + IFA メタデータ ヘッダー長 + IFA メタデータ スタック長) 以下です。
  • IFA ゾーン内では、IFA 対応(サポートされている)デバイスのみを使用することをお勧めします。IFA非対応デバイスでのIFAの適切な動作を保証することはできません。

インバンドフローアナライザー2.0の設定

IFAは、データプレーンによってネットワークの状態に関する情報を収集できるインバンドネットワークテレメトリ(INT)の一種です。

ネットワークの障害やパフォーマンスの問題を監視し、分析用のデータを収集するように IFA 2.0 を設定するには、まず IFA ロールを設定する必要があります。IFA 機能をサポートする Junos OS デバイスで IFA ロールを設定できます。次の QFX スイッチは IFA 2.0 機能をサポートしています。

  • QFX5120-32C、QFX5120-48Y、QFX5120-48T、およびQFX5120-48YM、Junos OS実行中

  • QFX5130-32CD、Junos OS Evolvedを実行(トランジットノードの役割のみ)

  • QFX5220-32CDおよびQFX5220-128C、Junos OS Evolvedを実行(トランジットノードロールのみ)

  • QFX5700、Junos OS Evolved の実行(トランジットノードロールのみ)

デバイスが Junos OS で最初にサポートされた時期については、このトピックの最後にあるリリース履歴の表を参照してください。

以下に、IFA ロール用に Junos OS デバイスを設定する際のガイドラインを示します。

  • 同じモデルのスイッチまたは異なるスイッチを使用して、特定の IFA フローの IFA ロール(イニシエーター、トランジット、終端)を果たすことができます。
  • 同じデバイスを使用して、異なるフローに対して 3 つの異なる IFA ロールをすべて実行することができます。
  • IFA フローでは、トランジット IFA ロールはオプションです。

図 11 は、Junos OS デバイスで IFA ノードを設定するシナリオの例を示しています。このシナリオでは、IFA 機能をサポートする異なる Junos OS デバイスが、1 つの IFA フロー内で異なる IFA の役割を果たします。

図 11:インバンド フロー アナライザーのシナリオ例
Network flow diagram of Inband Flow Analyzer process showing data path between Host A and Host B via Juniper QFX5120 switches with IFA headers.

以下は、IFA ノードを設定するためのガイドラインの一部です。

  • インターフェイスで IFA 設定を有効にするには、ファイアウォール フィルターの設定が必要です。
  • IFAフィルターは、ポートのイングレス方向にのみ適用できます。

表 6 は、IFA イニシエータ、トランジット、および終端ノードの構成をまとめたものです。

表 6:IFA ロールの IFA 設定
IFA 設定パラメータ 設定ステートメント IFA ロール
(必須)デバイスIDの設定
user@host# set services inband-flow-telemetry device-id (<1 - 1048575> | auto)
                        
IFA イニシエータ、トランジット、および終端ノードの必須設定。
(オプション、QFX5120-48YMまたはQFX5220のみ)より正確なクロックソースを設定する
user@host# set services inband-flow-telemetry clock-source (ntp|ptp)
                        
IFA イニシエータ、トランジット、および終端ノード。
(オプション)IFA 最大メタデータスタック長
user@host# set services inband-flow-telemetry meta-data-stack-length <8 - 255>
                        

初期値 : 240 (30 ホップの場合)

IFA イニシエーター・ノード
(オプション)IFA最大ホップ制限
user@host# set services inband-flow-telemetry hop-limit <1 - 250>
                        

デフォルト値 : 250

IFA イニシエーター・ノード
(オプション)IPv6 アドレスが一致しません
user@host# set services inband-flow-telemetry no-ipv6-address-match
                        
IFA イニシエーター/終端ノード
(必須)IFA フロー タイプ
user@host# set services inband-flow-telemetry flow-type (l3 | vxlan)
                        
IFA イニシエータと終端ノードの必須設定。この設定は、IFA トランジットノードには必要ありません。
IFAサンプリング
user@host# set services inband-flow-telemetry profile ifa-profile-name sample-rate <1-16777215>
                        
IFA イニシエーター・ノード
コレクター情報
user@host# set services inband-flow-telemetry profile ifa-profile-name collector source-address IP-address
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector destination-address IP-address
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector destination-port port-number
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector maximum-clip-length length
                           
user@host# set services inband-flow-telemetry profile ifa-profile-name collector mtu size
                           
                        
IFA 終端ノード
L3フロー用IFAフィルター

例えば:

user@host# set firewall family inet filter f1 term t1 from match-condition
                           
user@host# set firewall family inet filter f1 term t1 then inband-flow-telemetry-init p1
user@host# set firewall family inet filter f1 term t2 from match-condition
                           
user@host# set firewall family inet filter f1 term t2 then inband-flow-telemetry-terminate p2
user@host# set interfaces (interface-name | wildcard) unit 0 family inet filter input f1
                        
IFA イニシエーター/終端ノード
VXLANフロー用のIFAフィルター

例えば:

user@host# set firewall family ethernet-switching filter f1 term term1 from match-condition
                           
user@host# set firewall family ethernet-switching filter f1 term t1 then inband-flow-telemetry-init p1
user@host# set firewall family ethernet-switching filter f1 term t2 from match-condition
                           
user@host# set firewall family ethernet-switching filter f1 term t2 then inband-flow-telemetry-terminate p2
user@host# set interfaces (interface-name | wildcard) unit 0 family ethernet-switching filter input f1
                        
IFA イニシエーター/終端ノード

IFAイニシエータノードの設定

デバイスを IFA 2.0 イニシエーターとして設定するには、次の手順を実行します。

  1. デバイスIDを設定します。また、device-idに値 auto を設定することもできます。device-idautoとして設定されている場合、device-idはルーターIDまたは管理IPアドレスから内部的に生成されます。

    この例では、IFA イニシエータ ノードのデバイス ID は 10000 に設定されています。

  2. フロー タイプを設定します。l3またはvxlanの 2 つのフロー タイプのいずれかを設定できます。同じデバイス内で L3 と VXLAN のフローを一緒に設定することはできません。

    この例では、フロータイプが l3として設定されています。開始側ノードで フロータイプ l3 設定した場合、終端ノード l3 フロータイプも選択する必要があります。

  3. (オプション)メタデータスタックの最大長を設定します。各 IFA ホップは、ホップ固有のメタデータを IFA メタデータ スタックに挿入します。

    この例では、メタデータ スタック長は 80 に設定されています。

  4. ホップ制限を設定します。

    この例では、 hop-limit は 10 に設定されています。ホップ制限は、ホップごとにデクリメントされます。受信ホップ制限が 0 の場合、現在のノードはメタデータを挿入しません。

  5. IFA サンプリングを構成します。サンプリングレートは、1秒間に得られるサンプルの平均数です。IFA イニシエータ ノード上の異なるフローに対して異なるサンプル レートをポートで有効にすることはできません。ポート内のすべてのフローは、同じサンプルレートである必要があります。

    この例では、サンプルレートは1000に設定されています。つまり、1000 パケットのうち、1 秒あたり 1 パケットがサンプリングされます。

  6. IFA ファイアウォール フィルターを設定します。ファイアウォールフィルターは、以下の一致条件のいずれかで設定できます。
    • 元 IP アドレス
    • IP アドレス
    • 送信元ポート
    • 宛先ポート
    • 議定書

    ファイアウォールを作成し、アクション inband-flow-telemetry-initを設定します。

    この例では、アクション inband-flow-telemetry-init を含む条件名 t1f1 という名前のファイアウォール フィルターを設定し、インバンド フロー テレメトリ イニシエーター プロファイルp1それにマッピングします:

  7. イングレス方向にアクションinband-flow-telemetry-initを適用するために、すでに設定されているインターフェイスの論理ユニットの下にある ファミリーにファイアウォールフィルターをマッピングします。

    ファイアウォールフィルターをマッピングするには:

    この例では、 f1 ファイアウォールフィルターを、物理インターフェイスet-0/0/0の論理インターフェイス0の inet ファミリーにマッピングします。

IFA トランジットノードの設定

デバイスを IFA トランジットノードとして設定するには:

デバイスIDを設定します。また、device-idに値 auto を設定することもできます。device-idautoとして設定されている場合、device-idはルーターIDまたは管理IPアドレスから内部的に生成されます。

例えば:

IFA終端ノードの設定

デバイスを IFA 終端ノードとして設定するには:

  1. デバイスIDを設定します。また、device-idに値 auto を設定することもできます。device-idautoとして設定されている場合、device-idはルーターIDまたは管理IPアドレスから内部的に生成されます。

    例えば:

  2. フロー タイプを設定します。l3またはvxlanの 2 つのフロータイプのいずれかを設定できます。同じデバイス内で L3 と VXLAN のフローを一緒に設定することはできません。

    開始側ノードでフロータイプ l3 設定した場合、終端ノード l3 フロータイプも選択する必要があります。

  3. 終端ノードのコレクター情報を使用して IFA プロファイルを設定します。

    例えば:

  4. ファイアウォールフィルターは、以下の一致条件のいずれかで設定できます。
    • 元 IP アドレス
    • IP アドレス
    • 送信元ポート
    • 宛先ポート
    • 議定書

    ファイアウォールを作成し、アクション inband-flow-telemetry-terminateを設定します。

    この例では、アクション inband-flow-telemetry-terminate を含む条件名 t1 で、f2 という名前のファイアウォール フィルターを設定し、それにマッピングされた inband-flow-telemetry-terminate プロファイル p2:

  5. ファイアウォールフィルターを、すでに設定されているインターフェイスの論理ユニットの下にある ファミリーにマッピングして、エグレス方向にinband-flow-telemetry-terminateアクションを適用します。

    ファイアウォールフィルターをマッピングするには:

    この例では、 f2 ファイアウォールフィルターを、物理インターフェイスet-0/0/0の論理インターフェイス0の inet ファミリーにマッピングします。

インバンドフローアナライザー統計の表示

以下の IFA 関連情報を表示できます。

  • show services inband-flow-telemetry stats運用モードコマンドを使用したIFA統計情報。
  • show services inband-flow-telemetry global運用モードコマンドを使用したIFAグローバルパラメータ。
  • show services inband-flow-telemetry profile運用モードコマンドを使用したIFA設定済みプロファイル。

運用モードコマンドを使用して clear inband-flow-telemetry stats IFA 統計情報をクリアできます。

IFA 統計は PFE から直接取得され、ルーティングエンジンでは維持されません。そのため、PFE プロセスを再起動しても IFA 統計情報はクリアされ、ルーティング エンジン プロセスの再起動は IFA 統計に影響を与えません。

例:トラフィック監視用のインバンドフローアナライザー2.0の設定

この例では、レイヤー 3 または VXLAN のトラフィック フローを分析できるように、QFXシリーズ スイッチ上の IFA 2.0 ノードを設定します。 図 12 は、IFA 2.0 機能をサポートする QFXシリーズ スイッチ上で IFA 2.0 が構成されているトポロジーを示しています。このトポロジーでは、イニシエータで VXLAN トラフィックを監視し、分析のために終端ノードでデータを収集します。

図 12:IFA 2.0 Network topology diagram showing Juniper QFX5120 switches in spine-leaf architecture with labeled connections.を使用して VXLAN トラフィック フローを分析するためのトポロジー

必要条件

この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。

  • スパインノードとしてのQFX5120-32Cスイッチ1台
  • リーフノードとしての 2 つの QFX5120-48Y スイッチ
  • Junos OS リリース 21.4R1

前提条件

この例では、EVPN-VXLANベースのネットワークがすでに構築されており、QFXスイッチでトラフィック監視を有効にしたいと想定しています。

始める前に

概要

この例では、QFX5120-48Yスイッチの1つ(リーフ1)をイニシエータノードとして、QFX5120-32Cスイッチをトランジットノードとして、2番目のQFX5120-48Yスイッチ(リーフ2)を終端ノードとして設定します。VXLAN トラフィックは、ホスト 1 からホスト 2 に流れます。イングレスノードとエグレスノードでIFAを設定することで、ネットワーク動作を監視し、パフォーマンスの問題を特定することができます。

QFX5120-32Cは、QFX5120-48Yリーフノードを接続するスパインとして機能します。終端ノードでは、IPv4 コレクター アプリケーションを使用して、サンプリングされたトラフィックを IPFIX 形式で収集します。

構成

この例では、スイッチで次の機能を構成します。

  1. リーフ1をイニシエータノードとして設定し、グローバルデバイス識別子やサンプリングレートなどのイニシエータ関連の属性を設定します。アクション として inband-flow-telemetry-init で IFA プロファイルとファイアウォール フィルターを設定し、IFA ファイアウォール フィルターをインターフェイスにバインドします。
  2. QFX5120-32C スパインスイッチを、グローバルデバイス識別子を持つトランジットノードとして設定します。グローバルデバイス識別子を設定すると、スパインデバイスがIFAメタデータを追加し、IFAプローブパケットを転送します。
  3. リーフ 2 を終端ノードとして設定します。コレクター情報と のアクションで inband-flow-telemetry-terminate のファイアウォール フィルターを使用して IFA プロファイルを設定し、IFA ファイアウォール フィルターをインターフェイスにバインドします。

CLIクイック構成

QFXシリーズのデバイスでこの例をすばやく設定するには、次のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、 [edit] 階層レベルのCLIにコマンドをコピー&ペーストしてください。

QFX5120-48Yスイッチの設定(リーフ1:IFAイニシエータノード)

手記:

この例では、事前設定されたEVPN-VXLANベースラインにIFAを追加することを思い出してください。ここに示す構成は、ベースラインに IFA を追加するために必要なデルタに焦点を当てています。IFA デルタがベースラインとどのように関連しているかを最もよく示すために、既存の構成をいくつか示します。

QFX5120-32C スイッチ(IFA トランジットノード)の設定

QFX5120-48Yスイッチの設定(リーフ2 - IFA終端ノード)

手順

QFX5120-48Yスイッチ(リーフ1)をイニシエータノードとして設定する

IFA イニシエータ ノードは、フローに対して次の機能を実行します。

  • 設定に基づいて、対象のフロー トラフィックをサンプリングします。
  • 各サンプルに IFA ヘッダーを追加することで、トラフィックを IFA フローに変換します。
  • パケットをイニシエータ ノードのメタデータで更新します。
  1. IFA イニシエーター ノードの属性を設定します。トラフィック フロー タイプは、イニシエータ ノードの VXLAN として設定されます。開始側と終端側ノードの両方に同じフロー タイプ(L3 または VXLAN)を設定する必要があることに注意してください。この例のように、開始側ノードに VXLAN トラフィック フロー タイプが設定されている場合は、終端ノードにも VXLAN トラフィック フロー タイプを設定してください。

    sample-rate の値を 1 に設定すると、イングレス ポートで受信されるすべてのパケットがサンプリングされます。あまり積極的でないサンプリングを使用する場合は、sample-rate 値を増やします。
  2. フィルターをイニシエーターノードのイングレスインターフェイスにバインドします。

  3. IFA サンプリングを制御するファイアウォールを作成します。まず、サンプリングするホストトラフィックのタイプを定義します。この例では、UDPおよびTCPトラフィックフローの分析を実行します。この例では、 f_initという名前のファイアウォールフィルターを、 term1という条件で設定します。

    IFA サンプリングを実行するようにフィルターを構成するには、t1条件に アクション修飾子inband-flow-telemetry-initを追加します。インバンド フロー テレメトリ プロファイル ifa_profile_host1は、フィルターにリンクされていることに注意してください。

QFX5120-32C スイッチをトランジットノードとして設定する

IFA トランジット ノードは、指定された VXLAN フローの IFA パケットにトランジット ノードのメタデータを挿入します。

トランジットノードであるQFX5120-32Cスイッチのグローバルデバイス識別子を設定します。

QFX5120-48Y スイッチ(リーフ 2)を終端ノードとして設定します

IFA 終端ノードは、フローに対して以下を実行します。

  • IFA パケットに終端ノード メタデータを挿入します。
  • メタデータの 1 つ以上のセグメントに対してローカル分析機能を実行します。たとえば、保存時間のしきい値違反、混雑通知などです。
  • クローンされたトラフィックの場合にIFAフローをフィルタリングします。
  • パケットのコピーまたはレポートをコレクターに送信します。
  • IFA ヘッダーを削除し、ライブ トラフィックの場合にパケットを転送します。
  1. グローバルデバイス識別子やフロータイプなど、終端ノード関連の属性を設定します。

    コレクター関連情報でIFAプロファイルを設定します。

  2. ノード リーフ 2 を終端するためのコレクター インターフェイスを設定します。

    ファイアウォールフィルターを事前設定済みのインターフェイスに適用して、リーフ2でインバンドフローテレメトリエグレス処理を有効にします。

    この例では、 f-term ファイアウォールフィルターを、物理インターフェイスxe-0/0/18の論理インターフェイス0の inet ファミリーにマッピングします
  3. ファイアウォールフィルターを作成し、アクション inband-flow-telemetry-terminateを設定します。

    この例では、f-termという名前のファイアウォール フィルターを、アクション inband-flow-telemetry-terminate を含む条件名 t1 で設定し、インバンド フロー テレメトリ終了プロファイル p_termをマッピングします。

業績

QFX5120-48Yスイッチ(リーフ1 - IFAイニシエータノード)の結果

動作モードから、 show configuration servicesshow configuration interfaces、および show configuration firewall コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。

手記:

出力には、IFA を追加するために必要な設定デルタのコンテキストを提供するために、既存の EVPN-VXLAN ベースラインの一部が表示されます。

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

QFX5120-32Cスイッチ(IFAトランジットノード)の結果

動作モードから、 show configuration servicesコマンドと show configuration interfaces コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。

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

QFX5120-48Yスイッチ(リーフ1 - IFA終端ノード)の結果

動作モードから、 show configuration servicesshow configuration interfaces、および show configuration firewall コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。

[edit]

user@host> show configuration interfaces

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

検証

QFX5120-48Yスイッチ(リーフ1:IFAイニシエータノード)での検証

IFA 統計の検証

Purpose

イニシエータ ノードの IFA 統計を表示します。

Action

動作モードから、 show services inband-flow-telemetry stats コマンドを入力します。

IFA グローバル設定の確認

Purpose

イニシエータノードに設定されたIFAグローバルパラメータを表示します。

Action

動作モードから、 show services inband-flow-telemetry global コマンドを入力します。

IFA プロファイルの確認

Purpose

イニシエータノードに設定されたIFAプロファイルを表示します。

Action

動作モードから、 show services inband-flow-telemetry profile コマンドを入力します。

QFX5120-32Cスイッチ(IFAトランジットノード)での検証

IFA 統計の検証

Purpose

トランジット ノードの IFA 統計を表示します。

Action

動作モードから、 show services inband-flow-telemetry stats コマンドを入力します。

IFA グローバル設定の確認

Purpose

トランジットノードに設定された IFA グローバル パラメータを表示します。

Action

動作モードから、 show services inband-flow-telemetry global コマンドを入力します。

QFX5120-48Y スイッチ(リーフ 2 — IFA 終端ノード)での検証

IFA 統計の検証

Purpose

終端ノードの IFA 統計を表示します。

Action

動作モードから、 show services inband-flow-telemetry stats コマンドを入力します。

IFA グローバル設定の確認

Purpose

終端ノードに設定された IFA グローバル パラメーターを表示します。

Action

動作モードから、 show services inband-flow-telemetry global コマンドを入力します。

IFA プロファイルの確認

Purpose

終端ノードに設定されている IFA プロファイルを表示します。

Action

動作モードから、 show services inband-flow-telemetry profile コマンドを入力します。

変更履歴

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。特定の機能がお使いのプラットフォームでサポートされているかどうかを確認するには、 Feature Explorer を使用します。

解放
形容
22.4R1-EVO
インバンドフローアナライザー(IFA)2.0トランジットノードのサポート(QFXシリーズスイッチ)—Junos OS Evolved 22.4R1では、IFA 2.0トランジットノードロールのサポートをQFX5130-32CD、QFX5220-32CD、QFX5220-128C、およびQFX5700スイッチに拡張しました。
22.2R1
インバンドフローアナライザー(IFA)2.0(QFXシリーズスイッチ)—Junos OS リリース 22.2R1では、IFA 2.0のサポートをQFX5120-48YMおよびQFX5120-48Tスイッチに拡張しました。また、IFAパケットのMTUと最大クリップ長の設定、QFX5120-48YMスイッチのIFAクロックソース設定のサポートも追加しました。
21.4R1
インバンドフローアナライザー(IFA)2.0(QFX5120-48YおよびQFX5120-32C)—Junos OS リリース21.4R1では、QFXシリーズスイッチでIFA2.0のサポートが導入されました。IFA 2.0 は、ネットワークに出入りするパケットを監視および分析します。IFA 2.0 を使用すると、ネットワークの障害やパフォーマンスのボトルネックを監視できます。IFA 2.0 は、レイヤー 3 フローと VXLAN フローの両方をサポートします。