インターネットプロトコルフロー情報エクスポート(IPFIX)は、 IETFプロトコルであり、プロトコルを定義するIETFワーキンググループの名称でもあります。これは、ルータ、プローブ、その他のデバイスからインターネットプロトコルフロー情報をエクスポートするための、共通のユニバーサル標準の必要性に基づいて作成されました。これらのデバイスは、メディエーションシステム、アカウンティング/課金システム、ネットワーク管理システムによって、測定、アカウンティング、課金などのサービスを容易にするために使用されています。IPFIX標準は、IPフロー情報がどのようにフォーマットされ、エクスポーターからコレクターに転送されるかを定義しています。[1]以前は、多くのデータネットワーク事業者がトラフィックフロー情報のエクスポートにシスコシステムズ独自のNetFlow技術に依存していました。
IPFIX標準の要件は、オリジナルのRFC 3917で概説されています。Cisco NetFlowバージョン9がIPFIXの基盤となりました。IPFIXの基本仕様は、RFC 7011からRFC 7015、およびRFC 5103に文書化されています。
建築
次の図は、IPFIX アーキテクチャにおける情報フローの典型的なアーキテクチャを示しています。
エクスポーター IPFIX コレクター
------------------------->O
|
| 観察
| ドメイン
|
測光 #1 | 測光 #2
O----------------O----------------O メーター #3
| | |
| 観察 | 観察 | 観察
| ポイント #1 | ポイント #2 | ポイント #3
v | |
---- IP トラフィック ---> | |
v |
--------------- 追加の IP トラフィック ---> |
v
---------------------------------- 追加の IP トラフィック --->
メータリングプロセスのプールは、 1つ以上の観測ポイントでデータパケットを収集し、必要に応じてフィルタリングして、これらのパケットに関する情報を集約します。エクスポーターは、各観測ポイントを観測ドメインにまとめ、この情報をIPFIXプロトコルを介してコレクターに送信します。エクスポーターとコレクターは多対多の関係にあります。つまり、1つのエクスポーターは複数のコレクターにデータを送信でき、1つのコレクターは複数のエクスポーターからデータを受信できます。 [2]
プロトコル
NetFlowプロトコルと同様に、IPFIXでは、フローとは特定のタイムスロットで観測され、複数の特性(例えば「同じ送信元、同じ宛先、同じプロトコル」)を共有するパケット群とみなされます。IPFIXを使用することで、ルーターなどのデバイスは、潜在的に大規模なネットワークの状況を中央監視ステーションに通知することができます。
IPFIX はプッシュ プロトコルです。つまり、各送信者は、受信者による操作なしに、構成された受信者に IPFIX メッセージを定期的に送信します。
IPFIX メッセージ内のデータ構成は、送信者によって大きく左右されます。IPFIX は、特別なテンプレートを用いて、受信者にメッセージの構成を伝えます。送信者はメッセージ内でユーザー定義のデータ型を自由に使用できるため、プロトコルは自由に拡張でき、さまざまなシナリオに適応できます。
IPFIX は、トランスポート層プロトコルとしてストリーム制御伝送プロトコル (SCTP)を優先しますが、伝送制御プロトコル (TCP)またはユーザー データグラム プロトコル (UDP)の使用も許可します。
例
IPFIX 経由で送信される単純な情報セットは次のようになります。
送信元宛先パケット ------------------------------------------ 192.168.0.201 192.168.0.1 235 192.168.0.202 192.168.0.1 42
この情報セットは次の IPFIX メッセージで送信されます。
| ビット0..15 | ビット16~31 |
|---|---|
| バージョン = 0x000a | メッセージ長 = 64バイト |
| エクスポートタイムスタンプ = 2005-12-31 23:59:60 | |
| シーケンス番号 = 0 | |
| 観測ドメインID = 12345678 | |
| セットID = 2 (テンプレート) | 長さを20バイトに設定 |
| テンプレートID = 256 | フィールド数 = 3 |
| タイプ = ソースIPv4アドレス | フィールド長 = 4バイト |
| タイプ = 宛先IPv4アドレス | フィールド長 = 4バイト |
| タイプ = packetDeltaCount | フィールド長 = 4バイト |
| セットID = 256 ( テンプレート256を使用したデータセット) |
長さを28バイトに設定 |
| レコード1、フィールド1 = 192.168.0.201 | |
| レコード1、フィールド2 = 192.168.0.1 | |
| レコード1、フィールド3 = 235 パケット | |
| レコード2、フィールド1 = 192.168.0.202 | |
| レコード2、フィールド2 = 192.168.0.1 | |
| レコード2、フィールド3 = 42 パケット | |
ご覧のとおり、メッセージにはIPFIXヘッダーと2つのIPFIXセットが含まれています。1つは使用されるデータセットの構築を導入するテンプレートセット、もう1つは実際のデータを含むデータセットです。IPFIXがセッション状態を保持するプロトコル(TCPまたはSCTP)経由で送信される場合、テンプレートセットはコレクターにバッファリングされるため、再送する必要はありません。テンプレートセットは時間の経過とともに変化する可能性があるため、新しいセッション状態が確立された場合、またはIPFIXがセッションレスプロトコルであるUDP経由で送信される場合は、再送する必要があります。
参照
参考文献
- ^ Hofstede, Rick; Celeda, Pavel; Trammell, Brian; Drago, Idilio; Sadre, Ramin; Sperotto, Anna; Pras, Aiko (2014). 「フローモニタリングの説明:パケットキャプチャからNetFlowとIPFIXによるデータ分析まで」IEEE Communications Surveys & Tutorials . 16 (4): 2037– 2064. doi :10.1109/COMST.2014.2321898. S2CID 14042725.
- ^ IEEEコミュニケーションズマガジン[1] [リンク切れ]
外部リンク
- IPFIXステータスページ
- IETF IPFIX憲章
- ネットワークワールド IPFIX の紹介
- RFC3954 - NetFlow バージョン 9
- RFC3955 - IPフロー情報エクスポート候補プロトコル(IPFIX)
- RFC5103 - IPフロー情報エクスポートを使用した双方向フローエクスポート
- RFC5153 - IPFIX実装ガイドライン
- RFC5470 - IPフロー情報エクスポートのアーキテクチャ
- RFC5471 - IPフロー情報エクスポート(IPFIX)テストのガイドライン
- RFC5472 - IPフロー情報エクスポート(IPFIX)の適用性
- RFC5473 - IPフロー情報エクスポート(IPFIX)およびパケットサンプリング(PSAMP)レポートにおける冗長性の削減
- RFC7011 - IP トラフィック フロー情報 (IPFIX) の交換のための IP フロー情報エクスポート (IPFIX) プロトコルの仕様
- RFC7012 - IPフロー情報エクスポートのための情報モデル
- RFC7013 - IPフロー情報エクスポート(IPFIX)情報要素の作成者およびレビュー担当者向けガイドライン
- RFC7014 - フロー選択技術
- RFC7015 - IPフロー情報エクスポート(IPFIX)プロトコルのフロー集約
- IPFIX メッセージを解析、収集、エクスポートするためのライブラリ
- エンタープライズオープンソースIPFIXコレクター
- NetFlow/IPFIXの原理を理解するアニメーション
- IPFIXとは何か、Netflowとの違いは何か