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の概要

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

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

インバンドフローアナライザー2.0(IFA 2.0)を使用して、次のようなフローデータ情報を収集できます。

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

IFA 2.0は、IETFドラフト「 Inband Flow Analyzer」(draft-kumar-ippm-ifa-02)で定義されています。

利点

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

モード(Junos OS Evolvedのみ)

Junos OS Evolvedリリース25.4R1以降、IFA 2.0機能の2つのモードがサポートされています。新しいモードは次のとおりです。

  • ライブモードでは、サポートするスイッチに対して、IFA 2.0は元のパケットをIFAプローブパケットとして使用します。

  • プローブモードでは、IFA 2.0 は元のパケットのコピーを IFA プローブパケットとして使用します。このモードはデフォルトであり、Junos OS Evolvedリリース25.4R1より前の機能と同じように動作します。

IFAイニシエーターノードがIFAプローブパケットを開始するように設定されている場合、以下は次のようになります。

  • ライブモードでは、イニシエーターはIFAヘッダーとメタデータをライブパケットに挿入します。

  • プローブモードでは、イニシエーターがフローをサンプリングし、そのサンプルをコピーしてプローブを作成します。

IFAターミネーターノードを設定して、パケット内のIFAヘッダーを解析して、ライブパケットかプローブパケットかを判断する場合:

  • ライブパケットの場合、ターミネーターはIFAレイヤーを削除し、変更されたライブパケットを宛先に転送します。

  • パケットがプローブパケットの場合、ターミネーターはパケットをドロップし、ミラーコピーをコレクターに送信します。

モードを指定するには、[edit services inband-flow-telemetry]階層レベルでmode (live | probe)ステートメントを設定します。デフォルトモードはprobeです。show services inband-flow-telemetry globalコマンドを使用すると、モード情報を含むプローブ結果が表示されます。

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

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

  • IFAイニシエーターノード(ingressノードとも呼ばれます)
  • 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パケットを識別し、そのメタデータをパケット内のメタデータスタックに追加します。
  • パケットにIFAヘッダーが付属する場合、ノードはメタデータをメタデータスタックに挿入して転送します。ホップ制限が 0 の場合、ノードはメタデータを挿入しません。
  • 非IFAデバイスがIFAパケットを受信すると、デバイスはIFA処理なしでそれを転送します。
  • IFAトランジットノードとしてのQFX5220は、IFAプローブパケットヘッダーのメタデータスタックにメタデータを挿入できません。代わりに、QFX5220 は、タイムスタンプやその他のメタデータを含むテールスタンプを IFA プローブパケットの末尾に追加します。

IFA終端ノード
  • 終了ノードメタデータをIFAパケットに挿入します。ライブモードを設定した場合、パケットはライブパケットです。ターミネーターは IFA 層を削除し、変更されたライブ パケットを宛先に転送します。
  • IFAパケットをIPFIX(IP Flow Information Export)形式でフォーマットし、設定されたコレクターにパケットを送信します。IPFIX形式をサポートする任意のコレクター(またはアプリケーション)を使用できます。QFX5240スイッチはIPFIXテンプレートを使用しません。代わりに、IPFIX PSAMP フォーマットを使用してコレクターに送信されるデータをフォーマットします。
注:

IFA終端機能には、有効なジュニパーアドバンスドテレメトリ機能(ATF)ライセンスが必要です。

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

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

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

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

図2:IFAイニシエーターノード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 2.0パケット形式

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

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

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

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ヘッダーからコピーされます。
フラグ

使用されていません

最大長

メタデータスタックの最大許容長(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です。

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

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

IFAメタデータスタック

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

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

IFA 2.0メタデータスタックのエグレスポート速度フィールドは、QFX5230ではサポートされていません。フィールドの値は、エグレスポート速度に関係なく常に「0」です。

図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を明示的に設定するか、 device-id auto ステートメントを設定することができます。 device-id 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ビット値からTime-of-Day(ToD)を取得するのはコレクターの責任です。20ビット秒は12日ごとにラップアラウンドされます。コレクターは、ラップアラウンド時間内に定期的にToDを同期し、メタデータからの20ビットと併用して32ビット Rx Timestamp Seconds 値を導き出す必要があります。
エグレスポート番号 ASIC(エグレスハードウェア)ポート番号。
イングレスポート番号 イングレスハードウェアポート番号
Rx タイムスタンプ ナノ秒 ナノ秒単位のタイムスタンプ値を受信しました。このタイムスタンプは、タイムスタンプの後の正確な値(秒単位)です。これを[Rx Timestamp Seconds]値に追加すると、ナノ秒精度で正確なタイムスタンプを取得します。
滞留時間ナノ秒 ナノ秒単位のホップあたりの遅延。QFX5120の場合、滞留時間は0x3B9ACA00(ナノ秒単位の1秒)+ TX_NSEC - RX_NSECとして計算されます。(ラップアラウンド処理を避けるために、パケットごとに 1 秒が追加されます)。一方、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)とマルチシャーシ LAG(MC-LAG)です。LAGエグレスの場合、元のパケットとIFAプローブコピーは同じポートを使用して終了します。
  • IRB インターフェイス。( inband-flow-telemetry-init および inband-flow-telemetry-terminate フィルターは、IRB トラフィックの基盤となるレイヤー 2 インターフェイスに適用する必要があります。)
  • ECMP トラフィック。ECMP トラフィックの場合、元のパケットと IFA プローブコピーは同じポートを使用して出力されます。
  • インターフェイス速度(10 Gbps、25 Gbps、40 Gbps、50 Gbps、100 Gbps など)。
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テンプレートを示しています。

QFX5240スイッチは、これらのIPFIXテンプレートを使用しません。代わりに、QFX5240スイッチはIFAパケットを終端し、ミラーはそれをカプセル化し、IPFIX PSAMPパケットとしてコレクターにパケットを送信します。PSAMPパケットには、IFAパケットのコレクタの宛先MACアドレス、コレクタの送信元MACアドレス、送信元IPアドレス、宛先IPアドレス、UDP送信元ポート、UDP宛先ポート、IPFIX PSAMPヘッダー、およびMAC送信元アドレスと宛先アドレスが含まれています。これらのフィールドの後には、IPレイヤーヘッダー、IFAヘッダー、L4レイヤー(UDP/TCP)ヘッダー、IFAメタデータヘッダーとスタック、ペイロードが続きます。

図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は、設定されたコレクタがIPFIX形式で受信したVXLAN IFA 2.0パケットのサンプルを示しています。

図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フローの終端ノードエグレスポート関連のメタデータは無視することをお勧めします。
    • VXLANフローの場合、コレクターに送信されたIFA終了パケットには、イニシエーターノードとすべてのトランジットノードからのメタデータのみが含まれます。これらのパケットには、ターミネーターノードからのメタデータは含まれません。

    • 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 秒 (10000000000ns) が実際の滞留時間とともに追加されます。

  • IFA終端ノード

    • 終端ノードで設定できるIPv4コレクターは1つだけです。
    • 終端ノードメタデータのキューIDは47です。このキューIDは、IFAパケットエクスポート用に予約されています。
    • 終端ノードは、ホップリミットチェックを実行しません。着信IFAパケットが0に設定され hop-limit 場合でも、終端ノードはメタデータを挿入し、ホップ制限を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アドレス、送信元ポート、宛先ポート、およびプロトコル一致修飾子を任意に組み合わせて使用できます。VXLAN終端には、外側の送信元IPアドレスと宛先IPアドレスの一致修飾子を使用します。IFA 2.0 では、他の一致修飾子はサポートされていません。

    修飾子を使用せずに終了フィルターを設定する方法もあります。この場合、ポート上のすべての着信IFAパケットが終了します。

  • IFAゾーン内の各ホップに一意のデバイスIDを設定する必要があります。デバイスIDに auto オプションを設定している場合、デバイスIDはルーター IDまたは管理IPアドレスの最後の20ビットから生成されます。
  • サンプリングレートを aggressiveとして設定している場合、IFAコピーが多くなってエグレスポートが輻輳する可能性があります。このポート輻輳により、IPFIXエクスポート用にIFAコピーがチッププロセッサーに送信されるときに、終端ノードで輻輳が発生する可能性があります。それに応じてサンプリングレートを選択することをお勧めします。
  • IFA 2.0イニシエーターを設定すると、ループバックポート用の内部ミラーセッションが作成されます。その結果、ユーザーが設定可能なミラーセッションの数は4から3に減少します。
  • 終端ノードは、最大9000バイト(IFAヘッダーを含む)のIFAパケットサイズを受け入れます。終端ノードでは、複数のIFA受信パケットが1つのIPFIXエクスポートパケットに結合されます。1つのIPFIXエクスポートパケットに最大10個のIFAレコードを結合できます。デフォルトでは、最大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またはJunos OS EvolvedデバイスでIFAロールを設定できます。サポートされているデバイスについては 、「機能エクスプローラー:インバンドフローアナライザー(IFA)2.0 」を参照してください。

以下は、IFA ロール用に Junos OS デバイスを設定するためのガイドラインの一部です。

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

図11は、Junos OSデバイスでIFAノードを設定するシナリオの例を示しています。このシナリオでは、IFA 機能をサポートするさまざまな Junos OS デバイスが、単一の 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を設定します。

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

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

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

    この例では、 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を設定します。

    この例では、 f2という名前のファイアウォールフィルターを設定し、用語名 t1 にアクション inband-flow-telemetry-terminateが含まれ、inband-flow-テレメトリ-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設定プロファイル。

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

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.0Network topology diagram showing Juniper QFX5120 switches in spine-leaf architecture with labeled connections.を使用してVXLANトラフィックフローを分析するためのトポロジー

要件

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

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

  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を設定します。

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

結果

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

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

注:

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

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

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

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

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

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

動作モードから、 show configuration servicesshow configuration interfacesshow 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 コマンドを入力します。

変更履歴テーブル

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

リリース
説明
25.4R1-EVO
QFX5240スイッチのJunos OS Evolvedにライブモードを設定するサポートを追加しました。
24.4R1-EVO
イニシエーターとターミネーターのロールのサポートをJunos OS Evolvedに拡張しました。
22.4R1-EVO
IFA 2.0トランジットノードロールのサポートをJunos OS Evolvedに拡張しました。
22.2R1
IFAパケットのMTUと最大クリップ長の設定、およびQFX5120-48YMスイッチのIFAクロックソースの設定のサポートが追加されました。
21.4R1
QFXシリーズスイッチでIFA 2.0のサポートが導入されました。IFA 2.0は、ネットワークに出入りするパケットを監視および分析します。IFA 2.0 を使用して、障害やパフォーマンスのボトルネックがないかネットワークを監視できます。IFA 2.0 は、レイヤー 3 フローと VXLAN フローの両方をサポートします。