リアルタイムフロー監視用インバンドフローアナライザー(IFA)2.0プローブ
概要 インバンドフローアナライザー(IFA)2.0は、ネットワーク全体でホップ単位でデータを収集します。このデータを外部コレクターにエクスポートして、ローカライズされた分析またはエンドツーエンドの分析を実行します。
インバンドフローアナライザー2.0
- インバンドフローアナライザー2.0の概要
- 利点
- インバンドフローアナライザープロセス
- IFAプローブパケットヘッダー
- IFAプローブパケットのテールスタンプ(QFX5220のみ)
- IFA ノードでサポートされている機能
- IFA 2.0 設定の制限
- 使用上の考慮事項
インバンドフローアナライザー2.0の概要
インバンドフローアナライザー2.0(IFA 2.0)は、ネットワークに出入りするパケットを監視および分析するために使用できる機能です。ネットワーク管理者は、この機能を使用して、パケットがネットワークを通過するパスと、各ホップでパケットが費やす時間に関連するデータを収集できます。このデータは、過度の遅延と輻輳の可能性を示します。この機能は、データ プレーンでホップ単位のフロー データを収集することで、複雑なネットワークに関するインサイトを得るのに役立ちます。
IFAは、プローブパケットを使用してネットワーク全体のフローデータを収集します。IFAは対象のフローをサンプリングし、プローブパケットを生成します。これらのパケットは元のフローを表しており、元のフローと同じ特性を持っています。つまり、IFA パケットは、元のパケットと同じように、ネットワーク内の同じパスとネットワーク要素内の同じキューを通過します。その結果、IFA プローブパケットは元のフローと同じネットワークパスを通過し、同様のレイテンシと輻輳が発生します。
インバンドフローアナライザー2.0(IFA 2.0)を使用して、次のようなフローデータ情報を収集できます。
- 滞留時間(潜時)
- ホップ単位のレイテンシ
- ホップ単位のイングレスポート番号
- ホップ単位のegressポート番号
- 受信パケットのタイムスタンプ値
- キュー 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 処理ノードが実行するさまざまな機能を要約したものです。
IFAノード | 関数 |
---|---|
IFA イニシエーター ノード | 対象のフロー トラフィック(L3 または VXLAN)をサンプリングし、各サンプルに IFA ヘッダーを追加して IFA コピーを作成します。 |
IFA トランジットノード | IFA パケットを識別し、そのメタデータをパケット内のメタデータ スタックに追加します。
|
IFA 終端ノード |
メモ:
IFA終了機能には、有効なジュニパーアドバンストテレメトリ機能(ATF)ライセンスが必要です。 |
IFAプローブパケットヘッダー
IFA 2.0 プローブ パケットには、次のものが含まれています。
- IFAヘッダー
- IFAメタデータヘッダー
- IFAメタデータスタック
図 2 は、IFA イニシエーター ノードでの L3 IFA 2.0 パケット形式を示しています。
図 3 は、IFA イニシエーター ノードでの VXLAN IFA 2.0 パケット形式を示しています。
VXLANを使用する場合、IFAヘッダーは、VXLANカプセル化後に3パスメカニズムを使用して追加されます。
IFAヘッダー
IFA 2.0は、TCP、UDP、ジェネリックルーティングエンカプスレーション(GRE)、およびスパニングツリープロトコル(STP)がULHを定義する方法と同様に、上位層ヘッダー(ULH)を定義します。IFA ULHは、他のIPv4拡張ヘッダーがある場合でも、常にIPヘッダーの後の最初のヘッダーになります。 NextHdr
フィールド(つまり、IFAヘッダーのフィールド)は、 Protocol Type
元のIPヘッダープロトコルフィールド値を伝送します。 図 4 に、IFA ヘッダーの形式を示します。
IFA ヘッダー フィールド | の説明 |
---|---|
IFAバージョン | IFA ヘッダーのバージョン。現在の実装では、IFA バージョンは 2.0 です。 |
Gns | IFA メタデータ用のグローバル名前空間 (GNS)。IFA イニシエーター ノードは、このフィールドの値を 0xF に設定します。 |
プロトコルタイプ | IP ヘッダー プロトコル タイプ。この値は、IP ヘッダーからコピーされます。 |
フラグ | 未使用。 |
最大長さ | メタデータ スタックの最大許容長 (4 オクテットの倍数)。イニシエーター ノードはこのフィールドを初期化します。パス内の各ノードは、現在の長さと最大長を比較します。現在の長さが最大長以上の場合、トランジットノードはメタデータの挿入を停止します。この最大許容長は構成できます。デフォルト値は 240 オクテット(30 ホップ)です。 |
IFAメタデータヘッダー
IFA 2.0 では、 図 5 に示すように、コンパクトな 4 バイトのメタデータ ヘッダーが定義されています。IFA イニシエーター ノードは、このヘッダーをプローブ パケットに追加します。
IFAメタデータヘッダーフィールド | の説明 |
---|---|
リクエストベクター | GNS で指定されたフィールドの存在を指定します。未使用。 |
アクションベクトル | IFA パケットに対するノードローカルまたはエンドツーエンドのアクションを指定します。未使用。 |
ホップ制限 | IFA ゾーンで許可されるホップの最大数を指定します。イニシエーター ノードはこのフィールドを初期化します。ホップ制限はホップごとに減少します。着信パケットのホップ制限が 0 の場合、現在のノードはメタデータを挿入しません。この制限は構成できます。デフォルト値は 250 です。 終端ノードはホップ制限チェックを実行しません。 |
現在の長さ | メタデータ スタックの現在の長さを 4 オクテットの倍数で指定します。 |
IFAメタデータスタック
各 IFA ホップは、 図 6 に示すように、ホップ固有のメタデータを IFA メタデータ スタックに挿入します。IFA イニシエーター ノードは、L4 ヘッダーの後にメタデータ ヘッダーを追加します。
トランジットノードとしてのQFX5220は、IFAプローブパケットヘッダーのメタデータスタックにメタデータを挿入することはできません。その代わり、QFX5220 はタイムスタンプやその他のメタデータを含むテールスタンプを IFA プローブパケットの末尾に追加します。これらのテールスタンプの詳細については、 IFA プローブパケットのテールスタンプ(QFX5220のみ)を参照してください。
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 日ごとにラップアラウンドします。コレクターは、ラップアラウンド時間内に定期的に 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 形式のデータをエクスポートします。
このため、メタデータをスタックに挿入できないため、IFA メタデータスタックフィールド IP TTL
、 Egress Port Speed
および Congestion
のQFX5220は、コレクターで値 0 で受信されます。これらのサポートされていないフィールドをQFX5220から無視するようにコレクターを設定する必要があります。
テールスタンプには、14 バイトの入力(Rx)テールスタンプと 14 バイトの出力(Tx)テールスタンプが含まれます。図 7 と 図 8 に、これらのタイム・スタンプの形式の詳細を示します。
IFA ノードでサポートされている機能
表 5 に、IFA ノードでサポートされる機能を示します。
IFAノード | でサポートされている機能 |
---|---|
IFAイニシエーター | トラフィックとインターフェイスのタイプ:
|
IFAトランジット | IFA パケットを識別し、そのメタデータを付加して転送します。 |
IFAの終端 |
|
サポートされている IFA 2.0 IPFIX 形式(終端ノード)
終端ノードは、IFA 2.0 パケットを IPFIX フォーマットし、エグレスポート情報を更新して、設定されたコレクターにパケットを送信します。IFA 2.0 IPFIX テンプレートは、L3 トラフィックと VXLAN トラフィックで同じです。 図 9 は、終端ノードが IFA 2.0 データをフォーマットしてコレクターに送信する IPFIX テンプレートを示しています。
図 10 に、設定されたコレクターが IPFIX 形式で受信したサンプル VXLAN IFA 2.0 パケットを示します。
IFA 2.0 設定の制限
Junos OSを搭載したデバイスでIFA 2.0を設定する前に、以下の制限事項に注意する必要があります。
-
プロトコル番号 - IFA 2.0 は実験的なプロトコル番号 253 を使用します。スイッチがプロトコル番号 253 のトラフィックを受信すると、それらのパケットは IFA トランジット フィルターにヒットします。この場合、QFX5220 はこれらのパケットに 28 バイトのテールスタンプを追加します。QFX5130スイッチとQFX5700スイッチの場合、パケットがフィルターにヒットしても、IFAメタデータはパケットに追加されません。ただし、IFA の乗換統計は増加します。
-
フィルター リソースの割り当て - フィルター ハードウェア リソースがシステムで既に使い果たされている場合、フィルター リソースが必要なため、IFA 機能は機能しません。システム ログ(syslog)でフィルタ領域の枯渇エラーをモニタできます。
-
レイヤー2およびBUMトラフィック—レイヤー2スイッチトラフィックおよびブロードキャスト、不明なユニキャスト、マルチキャスト(BUM)トラフィックではIFA 2.0はサポートされません。
-
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 2.0 は L3 フローと VXLAN フローの両方の処理をサポートしていますが、同じデバイス上で L3 と VXLAN フローの両方に 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 秒 (10000000000 ns) が追加されます。 -
IFA 終端ノード
- 終端ノードで設定できる IPv4 コレクターは 1 つだけです。
- 終端ノード メタデータのキュー ID は 47 です。このキュー ID は、IFA パケットのエクスポート用に予約されています。
- 終端ノードはホップ制限チェックを実行しません。受信する IFA パケットが
hop-limit
0 に設定されている場合でも、終端ノードはメタデータを挿入し、ホップ制限を 1 減らして、値を 255 にリセットしますhop-limit
。
使用上の考慮事項
以下は、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 エクスポート パケットに結合されます。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 ロールは、IFA 機能をサポートする Junos OS デバイス上で設定できます。次の QFX スイッチは、IFA 2.0 機能をサポートしています。
-
Junos OSを搭載したQFX5120-32C、QFX5120-48Y、QFX5120-48T、QFX5120-48YM
-
Junos OS Evolvedを実行しているQFX5130-32CD(トランジットノードの役割のみ)
-
Junos OS Evolvedを実行しているQFX5220-32CDおよびQFX5220-128C(トランジットノードロールのみ)
-
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 ロールを果たします。
IFA ノードの設定に関するガイドラインの一部を次に示します。
- インターフェイスで IFA の設定は、ファイアウォール フィルターの設定を介してのみ有効にできます。
- IFA フィルターは、ポートの入力方向にのみ適用できます。
表 6 は、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 イニシエーターとして設定するには:
IFA トランジット ノードの設定
デバイスを IFA トランジットノードとして設定するには:
auto
device-id
こともできます。が device-id
として設定auto
されている場合、 device-id
はルーターIDまたは管理IPアドレスから内部的に生成されます。
user@host# set services inband-flow-telemetry device-id (id-number | auto)
例えば:
user@host# set services inband-flow-telemetry device-id 10001
IFA終端ノードの設定
デバイスを IFA 終端ノードとして設定するには:
インバンドフローアナライザーの統計情報の表示
以下の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 トラフィックはイニシエーターで監視され、分析のために終端ノードでデータが収集されます。
要件
この例では、以下のハードウェアとソフトウェアのコンポーネントを使用しています。
- スパインノードとしての1つのQFX5120-32Cスイッチ
- リーフノードとしての2つのQFX5120-48Yスイッチ
- Junos OSリリース21.4R1
前提条件
この例では、EVPN-VXLANベースのネットワークがすでにあり、QFXスイッチでトラフィック監視を有効にすることを前提としています。
始める前に
- EVPNとVXLANの仕組みを理解しておいてください。 EVPN-VXLAN の詳細については、 例:EVPN-VXLAN 環境で IRB インターフェイスを設定してデータセンター内のホストにレイヤー 3 接続を提供する、 および ブリッジド オーバーレイの設計と実装を参照してください 。
- IFA 終端ノード設定を有効にするには、有効な ATF(Advanced Telemetry Feature)ライセンスが必要です。
概要
この例では、QFX5120-48Y スイッチ(リーフ 1)の 1 つを開始ノードとして、QFX5120-32C スイッチをトランジット ノードとして、2 番目の QFX5120-48Y スイッチ(リーフ 2)を終端ノードとして設定します。VXLAN トラフィックはホスト 1 からホスト 2 に流れます。イングレスノードとエグレスノードでIFAを設定することで、ネットワークの動作を監視し、パフォーマンスの問題を特定することができます。
QFX5120-32Cは、QFX5120-48Yリーフノードを接続するためのスパインとして機能します。終端ノードでは、IPv4 コレクター アプリケーションを使用して、IPFIX 形式でサンプル トラフィックを収集します。
構成
この例では、スイッチで次の機能を構成します。
- リーフ1を開始ノードとして設定し、グローバルデバイス識別子やサンプリングレートなど、開始側関連の属性を設定します。アクションを として
inband-flow-telemetry-init
IFAプロファイルとファイアウォールフィルターを設定し、IFAファイアウォールフィルターをインターフェイスにバインドします。 - QFX5120-32Cスパインスイッチを、グローバルデバイス識別子を持つトランジットノードとして設定します。グローバル デバイス識別子を設定すると、スパイン デバイスによって IFA メタデータが追加され、IFA プローブ パケットが転送されます。
- リーフ 2 を終端ノードとして設定します。コレクタ情報を含む IFA プロファイルと、アクションを として
inband-flow-telemetry-terminate
設定したファイアウォール フィルターを設定し、IFA ファイアウォール フィルターをインターフェイスにバインドします。
CLIクイック構成
QFX シリーズ デバイスでこの例をすばやく構成するには、次のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、その 階層レベルの CLI [edit]
にコマンドをコピー&ペーストしてください。
QFX5120-48Y スイッチの設定(リーフ 1 — IFA イニシエーター ノード)
この例では、事前設定されたEVPN-VXLANベースラインにIFAを追加していることを思い出してください。ここに示す構成は、IFA をベースラインに追加するために必要なデルタに焦点を当てています。IFAデルタがベースラインにどのように関連しているかを最もよく示すために、既存の設定の一部を示します。
set services inband-flow-telemetry device-id 15000 set services inband-flow-telemetry meta-data-stack-length 100 set services inband-flow-telemetry hop-limit 4 set services inband-flow-telemetry flow-type vxlan set services inband-flow-telemetry profile ifa_profile_host1 sample-rate 1 set interfaces et-0/0/51:0 unit 0 family ethernet-switching filter input f_init set firewall family ethernet-switching filter f_init term t1 from ip-protocol udp set firewall family ethernet-switching filter f_init term t1 from ip-protocol tcp set firewall family ethernet-switching filter f_init term t1 then inband-flow-telemetry-init ifa_profile_host1 set firewall family ethernet-switching filter f_init term t1 then count ifa_stats set firewall family ethernet-switching filter f_init term t1 then accept set firewall family ethernet-switching filter f_init term t2 then count non_ifa_stats set firewall family ethernet-switching filter f_init term t2 then accept
QFX5120-32Cスイッチ(IFAトランジットノード)の設定
set services inband-flow-telemetry device-id 15001
QFX5120-48Y スイッチの設定(リーフ 2 — IFA 終端ノード)
set services inband-flow-telemetry device-id 15002 set services inband-flow-telemetry meta-data-stack-length 100 set services inband-flow-telemetry hop-limit 5 set services inband-flow-telemetry flow-type vxlan set services inband-flow-telemetry profile p_term collector source-address 172.16.3.1 set services inband-flow-telemetry profile p_term collector destination-address 172.16.3.2 set services inband-flow-telemetry profile p_term collector destination-port 3055 set interfaces xe-0/0/18 unit 0 family inet filter input f_term set interfaces xe-0/0/45 description To_Collector set interfaces xe-0/0/45 unit 0 family inet address 172.16.3.1/24 set firewall family inet filter f_term term ifa then inband-flow-telemetry-terminate p_term set firewall family inet filter f_term term ifa then count ifa_term set firewall family inet filter f_term term other then count non_ifa_term set firewall family inet filter f_term term other then accept
手順
QFX5120-48Yスイッチ(リーフ1)を開始ノードとして設定
IFA イニシエーター ノードは、フローに対して次の機能を実行します。
- 設定に基づいて目的のフロートラフィックをサンプリングします。
- 各サンプルに IFA ヘッダーを追加して、トラフィックを IFA フローに変換します。
- イニシエーター ノードのメタデータでパケットを更新します。
-
IFA イニシエーター ノードの属性を設定します。トラフィック フロー タイプは、イニシエーター ノードの VXLAN として設定されます。イニシエータと終端ノードの両方に同じフロー タイプ(L3 または VXLAN)を設定する必要があります。この例のように、イニシエーター ノードに VXLAN トラフィック フロー タイプが設定されている場合は、必ず終端ノードにも VXLAN トラフィック フロー タイプを設定してください。
[edit] user@host# set services inband-flow-telemetry device-id 15000 user@host# set services inband-flow-telemetry meta-data-stack-length 100 user@host# set services inband-flow-telemetry hop-limit 4 user@host# set services inband-flow-telemetry flow-type vxlan user@host# set services inband-flow-telemetry profile ifa_profile_host1 sample-rate 1
sample-rate
1 に設定されている場合、イングレス ポートで受信したすべてのパケットがサンプリングされます。それほど積極的でないサンプリングを希望する場合は、値を増やしますsample-rate
。 -
フィルターを開始側ノードのイングレスインターフェイスにバインドします。
[edit] user@host# set interfaces et-0/0/51:0 unit 0 family ethernet-switching filter input f_init
-
IFAサンプリングを制御するファイアウォールを作成します。まず、サンプリングするホスト トラフィックのタイプを定義します。この例では、UDP および TCP トラフィック フローの分析を実行します。この例では、 という名前の
f_init
ファイアウォールフィルターを、条件名term1
で設定します。[edit] user@host# set firewall family ethernet-switching filter f_init term t1 from ip-protocol udp user@host# set firewall family ethernet-switching filter f_init term t1 from ip-protocol tcp user@host# set firewall family ethernet-switching filter f_init term t1 then accept
IFA サンプリングを実行するようにフィルターを設定するには、 アクション修飾子
inband-flow-telemetry-init
を項に追加します t1 。インバンドフローテレメトリプロファイルifa_profile_host1
がフィルターにリンクされていることに注意してください。user@host# set firewall family ethernet-switching filter f_init term t1 then inband-flow-telemetry-init ifa_profile_host1 user@host# set firewall family ethernet-switching filter f_init term t1 then count ifa_stats user@host# set firewall family ethernet-switching filter f_init term t2 then count non_ifa_stats user@host# set firewall family ethernet-switching filter f_init term t2 then accept
QFX5120-32Cスイッチをトランジットノードとして設定
IFA トランジットノードは、指定された VXLAN フローの IFA パケットにトランジットノードのメタデータを挿入します。
トランジットノード、QFX5120-32Cスイッチのグローバルデバイス識別子を設定します。
user@host# set services inband-flow-telemetry device-id 15001
QFX5120-48Yスイッチ(リーフ2)を終端ノードとして設定
IFA 終端ノードは、フローに対して以下を実行します。
- IFA パケットに終端ノード メタデータを挿入します。
- メタデータの 1 つ以上のセグメントに対してローカル分析機能を実行します。たとえば、滞留時間のしきい値違反、輻輳通知などです。
- クローントラフィックの場合にIFAフローをフィルタリングします。
- パケットのコピーまたはレポートをコレクターに送信します。
- IFA ヘッダーを削除し、ライブ トラフィックの場合はパケットを転送します。
-
グローバルデバイス識別子やフロータイプなど、終端ノード関連の属性を設定します。
user@host# set services inband-flow-telemetry device-id 15002 user@host# set services inband-flow-telemetry meta-data-stack-length 100 user@host# set services inband-flow-telemetry hop-limit 5 user@host# set services inband-flow-telemetry flow-type vxlan
コレクター関連情報を含む IFA プロファイルを設定します。
user@host# set services inband-flow-telemetry profile p_term collector source-address 172.16.3.1 user@host# set services inband-flow-telemetry profile p_term collector destination-address 172.16.3.2 user@host# set services inband-flow-telemetry profile p_term collector destination-port 3055
-
ノードリーフ2を終端するためのコレクターインターフェイスを設定します。
user@host# set interfaces xe-0/0/45 unit 0 family inet address 172.16.3.1/24
事前設定されたインターフェイスにファイアウォールフィルターを適用して、リーフ2でインバンドフローテレメトリエグレス処理をアクティブにします。
この例では、物理インターフェイスxe-0/0/18の論理インターフェイス0のファミリーにinet
ファイアウォールフィルターをマッピングf-term
します。user@host# set interfaces xe-0/0/18 unit 0 family inet filter input f_term
-
ファイアウォールフィルターを作成し、アクション
inband-flow-telemetry-terminate
を設定します。この例では、 という名前の
f-term
ファイアウォール フィルターを設定し、条件名t1
に アクションinband-flow-telemetry-terminate
を含む を設定し、それにインバンド フロー テレメトリ終了プロファイルp_term
をマッピングします。user@host# set firewall family inet filter f_term term t1 then count ifa_term user@host# set firewall family inet filter f_term term t1 then inband-flow-telemetry-terminate p_term user@host# set firewall family inet filter f_term term t1 then accept user@host# set firewall family inet filter f_term term other then count non_ifa_term user@host# set firewall family inet filter f_term term other then accept
結果
QFX5120-48Y スイッチ(リーフ 1 — IFA イニシエーター ノード)の結果
動作モードから、、show configuration interfaces
、および show configuration firewall
のコマンドを入力してshow configuration services
設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
出力には、IFAを追加するために必要な設定デルタのコンテキストを提供するために、既存のEVPN-VXLANベースラインの一部が表示されます。
[edit] user@host> show configuration services inband-flow-telemetry { device-id { 15000; } meta-data-stack-length 100; hop-limit 4; flow-type vxlan; profile { ifa_profile_host1 { sample-rate 1; } } }
[edit] user@host> show configuration interfaces [output truncated] xe-0/0/44 { description Connected_to_Spine1; unit 0 { family inet { address 10.100.13.1/24; } } } et-0/0/51:0 { description Connected_to_Host1_vlan_101; unit 0 { family ethernet-switching { interface-mode trunk; vlan { members 101; } filter { input f_init; } } } } [output truncated]
[edit] user@host> show configuration firewall family ethernet-switching { filter f_init { term t1 { from { ip-protocol [ udp tcp ]; } then { accept; inband-flow-telemetry-init ifa_profile_host1; count ifa_stats; } } term t2 { then { accept; count non_ifa_stats; } } } }
デバイスの機能の設定が完了したら、設定モードから を入力します commit
。
QFX5120-32Cスイッチ(IFAトランジットノード)の結果
動作モードから、 および show configuration interfaces
コマンドを入力してshow configuration services
設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host> show configuration services inband-flow-telemetry { device-id { 15001; } }
デバイスの機能の設定が完了したら、設定モードから を入力します commit
。
QFX5120-48Yスイッチ(リーフ1 - IFA終端ノード)の結果
動作モードから、、show configuration interfaces
、および show configuration firewall
のコマンドを入力してshow configuration services
設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
[edit] user@host> show configuration services inband-flow-telemetry { device-id { 15002; } meta-data-stack-length 100; hop-limit 5; flow-type vxlan; profile { p_term { collector { source-address 172.16.3.1; destination-address 172.16.3.2; destination-port 3055; } } } }
[edit]
user@host> show configuration interfaces
[edit] user@host> show configuration interfaces [output truncated] xe-0/0/18 { description Connected_to_Spine1; unit 0 { family inet { filter { input f_term; } address 10.100.12.1/24; } } } xe-0/0/44 { description Connected_to_Host2_vlan_101; unit 0 { family ethernet-switching { interface-mode trunk; vlan { members 101; } } } } xe-0/0/45 { description To_Collector; mtu 9200; unit 0 { family inet { address 172.16.3.1/24; } } } [output truncated]
[edit] user@host> show configuration firewall family inet { filter f_term { term t1 { then { count ifa_term_c; inband-flow-telemetry-terminate p_term; accept; } } term other { then { count non_ifa_term; accept; } } } }
デバイスの機能の設定が完了したら、設定モードから を入力します commit
。
検証
IFA統計の確認
Purpose
イニシエータ ノードの IFA 統計情報を表示します。
Action
動作モードから コマンド show services inband-flow-telemetry stats
を入力します。
IFA Init Packets : 70989449712 IFA Transit Packets : 0 IFA Terminate Rx Packets : 0 IFA Terminate Tx Packets : 0
IFA グローバル設定の検証
Purpose
イニシエータノードに設定されているIFAグローバルパラメータを表示します。
Action
動作モードから コマンド show services inband-flow-telemetry global
を入力します。
Global Device ID : 15000 Meta-data Stack Length : 100 Hop Limit : 4 Flow Type : vxlan
IFAプロファイルの確認
Purpose
イニシエーターノードに設定されているIFAプロファイルを表示します。
Action
動作モードから コマンド show services inband-flow-telemetry profile
を入力します。
Profile Name : ifa_profile_host1 Sample rate : 1 Source Address : 0.0.0.0 Destination Address : 0.0.0.0 Destination Port : 0
IFA統計の確認
Purpose
トランジットノードのIFA統計情報を表示します。
Action
動作モードから コマンド show services inband-flow-telemetry stats
を入力します。
IFA Init Packets : 0 IFA Transit Packets : 26057387140 IFA Terminate Rx Packets : 0 IFA Terminate Tx Packets : 0
IFA グローバル設定の検証
Purpose
トランジットノードに設定されているIFAグローバルパラメータを表示します。
Action
動作モードから コマンド show services inband-flow-telemetry global
を入力します。
Global Device ID : 15001 Meta-data Stack Length : 240 Hop Limit : 250 Flow Type : NA
IFA統計の確認
Purpose
終端ノードの IFA 統計情報を表示します。
Action
動作モードから コマンド show services inband-flow-telemetry stats
を入力します。
IFA Init Packets : 0 IFA Transit Packets : 373569 IFA Terminate Rx Packets : 374448690 IFA Terminate Tx Packets : 41605188
IFA グローバル設定の検証
Purpose
終端ノードに設定されている IFA グローバル パラメータを表示します。
Action
動作モードから コマンド show services inband-flow-telemetry global
を入力します。
Global Device ID : 15002 Meta-data Stack Length : 100 Hop Limit : 5 Flow Type : vxlan
IFAプロファイルの確認
Purpose
終端ノードに設定されている IFA プロファイルを表示します。
Action
動作モードから コマンド show services inband-flow-telemetry profile
を入力します。
Profile Name : p_term Sample rate : 0 Source Address : 172.16.3.1 Destination Address : 172.16.3.2 Destination Port : 3055
関連項目
変更履歴テーブル
機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。