(57)【特許請求の範囲】
【請求項１】
パケットを取り込んで受信するパケット受信装置と、取り込んだパケットのパケットヘッダー及び上位のヘッダーのアドレス情報を抽出するヘッダー抽出部と、抽出したアドレス情報とタイムスタンプとを用いて、アドレス情報が同一のパケットで隣り合うパケット間の間隔が一定値以下の一連のパケットとして定義されるフローを計測するフローレート計測部とを備えるフロー測定装置であって、前記フローレート計測部は、先に取り込まれた複数のパケットのアドレス情報のレコードをタイムスタンプの順にキューに並べる手段と、次に取り込まれるパケットのヘッダー及び上位のヘッダーのアドレス情報が前記レコードのアドレス情報と同一である場合はタイムスタンプを更新する手段と、タイムアウト用時計が前記キューの先頭レコードに対応するフローのタイムアウトを管理し、タイムアウトした場合はフローカウンタを加算して該レコードを削除する手段とを備えることを特徴とするフロー測定装置。
【請求項２】
パケットを取り込んで受信するステップと、取り込んだパケットのパケットヘッダー及び上位のヘッダーのアドレス情報を抽出するステップと、抽出したアドレス情報とタイムスタンプとを用いて、アドレス情報が同一のパケットで隣り合うパケット間の間隔が一定値以下の一連のパケットとして定義されるフローを計測するステップとを備えるフロー測定方法であって、前記フローを計測するステップは、先に取り込まれた複数のパケットのアドレス情報のレコードをタイムスタンプの順にキューに並べるステップと、次に取り込まれるパケットのヘッダー及び上位のヘッダーのアドレス情報が前記レコードのアドレス情報と同一である場合はタイムスタンプを更新するステップと、タイムアウト用時計が前記キューの先頭レコードに対応するフローのタイムアウトを管理し、タイムアウトした場合はフローカウンタを加算して該レコードを削除するステップとを備えることを特徴とするフロー測定方法。
【請求項３】
請求項２に記載の各ステップを実行させるためのコンピュータプログラムを記録したコンピュータ読取り可能の記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は高速通信網におけるフロー計測に関する。
【０００２】
【従来の技術】
インターネットにおける一連の通信をフローと呼ぶ。フロー特性は、ルータの性能及びインターネットの品質に係わるため、フローを計測しようとする試みがなされている。例えばK.C.Claffyらによる論文"A parameterizable methodology for internet traffic flow profiling"(IEEE Journal on Selected Areas in Communications, 13, 8, pp.1481-1494(1995))により報告された研究は、その端緒となった研究の一つである。
【０００３】
この論文ではフローの定義について述べられているが、具体的な定義の例として、(1)発ホストアドレス、着ホストアドレス、発ポート番号及び着ポート番号の四つが同一のパケットで、隣り合うパケット間の間隔が一定値以下の一連のパケット、(2)「ＳＹＮ」と「ＦＩＮ」で確立及び解放される一つのＴＣＰコネクションに含まれる一連のパケット、等が挙げられている。(1)のタイプの定義例では、上記四つのパラメータの代わりに発着ホストアドレスを用いる例、ホストアドレスの代わりにネットワークアドレスを用いる例、発側又は着側のみで決まるパラメータで定義する例等の多くのバリエーションが考えられる。
【０００４】
これらのフローに関する様々なパラメータを計測する場合、いずれの定義よる場合であっても、測定装置内において各フローが継続中であることを状態として保持することが必要である。そのため、多くのフローが存在する高速通信網において、フロー関連の測定を効率的に行うことは困難である。
【０００５】
【発明が解決しようとする課題】
本発明の目的は、高速通信網でも効率的にフローに関するパラメータを測定することができるフロー測定装置、フロー測定方法及び記録媒体を提供することにある。
【０００６】
【課題を解決するための手段】
本発明のフロー測定装置は、パケットを取り込んで受信するパケット受信装置と、取り込んだパケットのパケットヘッダー及び上位のヘッダーのアドレス情報を抽出するヘッダー抽出部と、抽出したアドレス情報とタイムスタンプとを用いて、アドレス情報が同一のパケットで隣り合うパケット間の間隔が一定値以下の一連のパケットとして定義されるフローを計測するフローレート計測部とを備えるフロー測定装置であって、前記フローレート計測部は、先に取り込まれた複数のパケットのアドレス情報のレコードをタイムスタンプの順にキューに並べる手段と、次に取り込まれるパケットのヘッダー及び上位のヘッダーのアドレス情報が前記レコードのアドレス情報と同一である場合はタイムスタンプを更新する手段と、タイムアウト用時計が前記キューの先頭レコードに対応するフローのタイムアウトを管理し、タイムアウトした場合はフローカウンタを加算して該レコードを削除する手段とを備えることを特徴とする。
【０００７】
本発明のフロー測定方法は、パケットを取り込んで受信するステップと、取り込んだパケットのパケットヘッダー及び上位のヘッダーのアドレス情報を抽出するステップと、抽出したアドレス情報とタイムスタンプとを用いて、アドレス情報が同一のパケットで隣り合うパケット間の間隔が一定値以下の一連のパケットとして定義されるフローを計測するステップとを備えるフロー測定方法であって、前記フローを計測するステップは、先に取り込まれた複数のパケットのアドレス情報のレコードをタイムスタンプの順にキューに並べるステップと、次に取り込まれるパケットのヘッダー及び上位のヘッダーのアドレス情報が前記レコードのアドレス情報と同一である場合はタイムスタンプを更新するステップと、タイムアウト用時計が前記キューの先頭レコードに対応するフローのタイムアウトを管理し、タイムアウトした場合はフローカウンタを加算して該レコードを削除するステップとを備えることを特徴とする。
【０００８】
本発明のコンピュータ読取り可能の記録媒体は、上記のフロー測定方法の各ステップを実行させるためのプログラムが記録されていることを特徴とする。
【００１０】
【発明の実施の形態】
図１は本発明のフロー測定装置の実施例の構成を示すブロック図である。図中、11はパケット受信装置、12はヘッダー情報抽出部、13はフローレート計測部、14はフロートラヒック計測部、15は表示処理部、16は表示装置インターフェース部、17は表示装置である。
【００１１】
［実施例１］
この実施例では、フローの定義として、前記の「発ホストアドレス、着ホストアドレス、発ポート番号及び着ポート番号の四つが同一のパケットで、隣り合うパケット間の間隔が一定値以下の一連のパケット」を用いる。図１の測定装置においては、(1)回線分岐装置によって回線上を流れるパケットを分岐して測定装置内に取込むか、又は(2)ルータ又は交換機等のコピー機能を用いて、特定の出力回線へ出るか又は入力回線から入るパケットを全てコピーし、測定装置を取り付けた出力部へこれらのコピーされたパケットを出力し、出力されたパケットを測定装置内に取込む。
【００１２】
取込まれたパケットは、パケット受信装置11で受信され、ヘッダー情報抽出部12へ送られる。ヘッダー情報抽出部12では、ＩＰヘッダーから発着ホストアドレス及びパケット長を抽出し、ＴＣＰ／ＵＤＰヘッダーから発着ポート番号を抽出する。フローの発生消滅レートを計測する場合は、発着ホストアドレスと発着ポート番号とをフローレート計測部13へ送る。フローレート計測部13には、図２に示す五つのフィールドからなるレコード21を並べた、図３に示すようなキュー31がある。
【００１３】
次に、図４の流れ図を用いて手順を説明する。パケットを受信し（ステップ41）、図３に示すようなキュー31内の各レコードの発着ホストアドレス及び発着ポート番号と、フローレート計測部13に送られてきた発着ホストアドレス及び発着ポート番号とを比較する（ステップ42）。四つの値が全て一致するレコードがあれば、そのレコードがキューの先頭であるか否かを判定し（ステップ43）、先頭ではない場合はそのレコードのタイムスタンプを現在時刻に更新し（ステップ44）、キューの最後尾（Tailの直前）に付け直す（ステップ46）。
【００１４】
フローを定義する四つのパラメータが全て一致するレコードがキュー内にない場合は、送られてきた発着ホストアドレス及び発着ポート番号並びに現在時刻をタイムスタンプ値とするレコードを新たに作成する（ステップ45）。この場合、発着ホストアドレス及び発着ポート番号にはヘッダー情報抽出部12から送られた値を入れ、タイムスタンプには現在の値を入れる。このレコードをキューの最後尾（Tailの直前）に付け直す（ステップ46）。
【００１５】
更に、フローレート計測部13には、タイムアウト用時計及びフローカウンターがある。フローカウンターは計測を開始する時に０に初期化される。タイムアウト用時計はキュー内の先頭レコードで表されるフローが消滅する時刻を管理し、同一レコードのタイムスタンプ値＋フロー定義の一定値の時刻になるまでの残り時間を保持している。これが０になる（タイムアウトする）と（ステップ47）、フローレート計測部13はフローカウンターを１加算し（ステップ48）、先頭レコードをキューから外して消去する（ステップ49）。
【００１６】
キューにレコードがあるかないかを判定し（ステップ50）、キューにレコードがある場合は、タイムアウト用時計の値を、新たに先頭になったレコードのタイムスタンプ値＋フロー定義の一定値−現在時刻に設定して保持する（ステップ51）。キューにレコードがない場合は、タイムアウト用時計を停止する（ステップ52）。なお、タイムアウト用時計の値の変更は、新たにヘッダー情報抽出部12から送られた情報によって更新されるレコードがキューの先頭にある場合にも生じる。一定時間（計測時間）経過後、表示処理部15は、フローレート計測部13のフローカウンター値を読み取り、表示装置インターフェース部16を介して表示装置17により、同値を計測時間当たりのフロー数として表示する。
【００１７】
フロー当たりのトラヒック、回線容量又はアクティブフロー数を測定する場合は、ヘッダー情報抽出部12で得た発着ホストアドレス、パケット長及び発着ポート番号を、フロートラヒック計測部14へ送る。フロートラヒック計測部14は、図５に示すように、それらの値を並べたテーブルを具えている。これは一定時間毎にクリアされる。ヘッダー情報抽出部12から得た発着ホストアドレスと発着ポート番号の四つが全て一致するエントリーがテーブル上にあるかチェックする。全て一致するエントリーがテーブル上にある場合は、同一バイト数の欄のバイト数の値をヘッダー情報抽出部12から得たパケット長分だけ増加させる。全て一致するエントリーがテーブル上にない場合は、新たにエントリーを作成する。発着ホストアドレス及び発着ポート番号は、ヘッダー情報抽出部12から得たものを書込み、バイト数は、ヘッダー情報抽出部12のパケット長を書込む。
【００１８】
一定時間後、 表示処理部15が前記のテーブルを読み取り、このテーブルはクリアされる。 表示処理部15は、テーブルのエントリー数をアクティブフロー数として表示装置インターフェース部を経て表示装置17に表示する。フロー当たりのトラヒックの平均値を［バイト数の欄の総和／アクティブフロー数］によって求め、フロー当たりの通信速度の平均値を［通信速度／アクティブフロー数］によって求め、同様に表示する。
【００１９】
［実施例２］
この実施例では、ＩＥＴＦ  ＲＦＣ2661"Layer Two Tunneling Protocol:L2TP"(1999)に定められたＬ２ＴＰプロトコルを用いる。Ｌ２ＴＰは図６に示すようなネットワークにおいて、エンドホスト61が、加入者ルータ62、集約ルータ63、64、中継ルータ65を介して、ダイヤルアップによって選択したＩＳＰ66にアクセスするため等に用いられる。その時のパケットフォーマットは図７に示すようなものである。加入者ルータ62及び中継ルータ65のＩＰアドレスがカプセル化用ＩＰヘッダーの発着ホストアドレスに使用される。Ｌ２ＴＰヘッダー内にはトンネルＩＤ及びセッションＩＤと呼ばれるＩＤがあり、加入者ルータ62及び中継ルータ65の各対の上で一つのセッションを特定するために用いられる。
【００２０】
フローの定義としては、Ｌ２ＴＰセッションの確立及び解放を検出し、一つのセッション内の一連のパケットをフローとしてもよいが、この実施例では、確立及び解放を検出しないフロー定義として「隣り合うパケットの間隔が一定時間以内であり、同一のカプセル化用ＩＰヘッダー内発着ホストアドレス、トンネルＩＤ及びセッションＩＤを有する一連のパケット」を用いる。この時、実施例１において、発着ホストアドレスをカプセル化用ＩＰヘッダー内発着ホストアドレスで置き換え、発着ポート番号をトンネルＩＤ及びセッションＩＤで置き換えることにより、フロー計測を行うことができる。
【００２１】
以上の説明においては、専らハードウェアの構成及び動作ステップについて説明したが、これらをソフトウェアによって実現できることは明らかであり、本発明はそのようなソフトウェアを記録した記録媒体をも含むものである。
【００２２】
【発明の効果】
以上説明したように、本発明のフロー測定装置によれば、高速通信網においても、効率的にフローに関するパラメータの測定を行うことができる。
【図面の簡単な説明】
【図１】  本発明のフロー測定装置の実施例の構成を示すブロック図である。
【図２】  レコードを構成する五つのフィールドを示す図である。
【図３】  キューの構成を示す図である。
【図４】  処理手順を説明するための流れ図である。
【図５】  フロートラヒック計測部が具えるテーブルの構成例を示す図である。
【図６】  Ｌ２ＴＰプロトコルを用いるネットワークの構成例を示す図である。
【図７】  Ｌ２ＴＰプロトコルを用いるパケットのフォーマットを示す図である。
【符号の説明】
１１  パケット受信装置
１２  ヘッダー情報抽出部
１３  フローレート計測部
１４  フロートラヒック計測部
１５  表示処理部
１６  表示装置インターフェース部
１７  表示装置
２１  レコード
３１  キュー
６１  エンドホスト
６２  加入者ルータ
６３、６４  集約ルータ
６５  中継ルータ
６６  ＩＳＰ
【図１】
0003669683.tif 000002
【図２】
0003669683.tif 000003
【図３】
0003669683.tif 000004
【図４】
0003669683.tif 000005
【図５】
0003669683.tif 000006
【図６】
0003669683.tif 000007
【図７】
0003669683.tif 000008