JP2009049592A - Ipフロー計測回路およびipフロー計測方法 - Google Patents
Ipフロー計測回路およびipフロー計測方法 Download PDFInfo
- Publication number
- JP2009049592A JP2009049592A JP2007212203A JP2007212203A JP2009049592A JP 2009049592 A JP2009049592 A JP 2009049592A JP 2007212203 A JP2007212203 A JP 2007212203A JP 2007212203 A JP2007212203 A JP 2007212203A JP 2009049592 A JP2009049592 A JP 2009049592A
- Authority
- JP
- Japan
- Prior art keywords
- key information
- flow
- search key
- counter
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
【課題】フローテーブルを小さく保持しながら、必要な情報のみ詳細にトラヒックフローモニタリングを行うことができるIPフロー計測回路およびIPフロー計測方法を提供する。
【解決手段】到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出部と、第1検索キー情報毎に、該第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウンタと、第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウンタと、を格納するフローテーブルと、累積カウンタおよび新規フローカウンタのカウント動作を制御し、各カウント値と第1検索キー情報あるいは第2検索キー情報に基づいて異常トラヒックを検知する検索エンジンとを備える。
【選択図】図1
【解決手段】到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出部と、第1検索キー情報毎に、該第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウンタと、第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウンタと、を格納するフローテーブルと、累積カウンタおよび新規フローカウンタのカウント動作を制御し、各カウント値と第1検索キー情報あるいは第2検索キー情報に基づいて異常トラヒックを検知する検索エンジンとを備える。
【選択図】図1
Description
本発明は、IP(Internet Protocol)ネットワークのトラヒックの状況把握をリアルタイムに可能とするトラヒックフローモニタリングなどのトラヒック計測技術に関する。
IPネットワークのトラヒックを計測する技術に、流れる全てのパケットを取得し、膨大なパケットの情報をリアルタイムに解析するパケットキャプチャがある。パケットキャプチャは、到着するパケットの所属フローを識別するためのフローテーブルを備える。フローテーブルは、フロー毎に用意されたエントリとカウンタ、総パケット長からなる。
IPパケットが到着するごとに、任意の監視フィールドの組合せからなる検索キーとフローテーブルに登録された何れかのフローエントリにマッチするかを比較し、一致するものはマッチ回数、総パケット長などの統計情報が更新される。比較の結果、任意の監視フィールドの組合せからなる検索キーがフローエントリにマッチしない場合には、検索キーがフローテーブルにフローエントリとして追加される。
フローテーブルにある、情報を参照することによりフロー毎のトラヒックを計測する。
近年、上記の処理をパケットヘッダの処理に特化したハードウェア(ネットワークプロセッサ)で行い、処理性能を高めている。
また、ネットワークの高速化・大容量化に対応するため、トラヒック計測をサンプリングにより行う技術が知られている。サンプリング技術は、特定の割合で取得したサンプルパケットの情報を統計学的手法により分析を行い、トラフィック情報を生成する技術である。
フロー統計情報の収集方式として、IP Flow Information eXport(IPFIX)やPacket Sampling(Psamp)などThe Internet Engineering Task Force(IETF)のRequest For Comments(RFC)に記載されたフロー統計技術が知られている。上述の技術については、下記の非特許文献1、2を参照されたい。
http://www.ietf.org/html.charters/ipfix-charter.html http://www.ietf.org/html.charters/psamp-charter.html
http://www.ietf.org/html.charters/ipfix-charter.html http://www.ietf.org/html.charters/psamp-charter.html
このトラヒック計測技術において、従来の問題点は以下のようである。
パケットキャプチャにおいて、一般に、フロー識別を識別するには、同一コネクション上を流れるパケットの集合を1つのフローと考えるのが適当である。したがって、フロー識別情報を、送信元IPアドレス、宛先IPアドレス、プロトコル種別、送信元ポート番号、宛先ポート番号とした場合、100ビット以上となる。このような、多数ビット情報を検索キーとしてフローテーブルに全てのフローを保持すると、フロー情報の精度は高まる一方、最大フロー数×最大カウンタ長の大きなテーブルの領域を消費してしまい高価となってしまう。
さらに、近年ネットワークレイヤの情報の他に、アプリケーションレイヤの情報も識別したマルチレイヤモニタリングのトラヒック計測を求められており、ますます検索キーのビットが多くなる。このため、フローテーブルに保持するフローも増加してしまい、所要メモリ量と処理時間が線形に増加し、大容量・高速リンクでの適用が困難となる。
サンプリング技術を用いて、DoS攻撃(Denial of Service attack)など少数のフロー(エレファントフロー)が全体のトラヒック流量の大部分を占めるような異常トラヒックの原因となる端末を特定しようとした場合、サンプル数はフローレートに比例する。このため、サンプリング技術は高いレートのフローを特定する誤差が少ないため有効性を期待できる。
しかし、ワームや機械的不完了呼(ワンギリ)や電番スキャンなど、単位時間に多くの新規端末と通信をしようとする性質のものは、生成する個々のフローが小さいため、サンプリングされる確立が低く1パケットもサンプルされないフローが多数存在し、統計学に基づいた解析では精度よく攻撃端末を特定することは困難であるという問題がある。
サンプリング技術において生成する個々のフローが小さい場合においても、精度を高める方法として、フローレートが小さいパケットを特定し、特定したフローについてのみリアルタイムに収集する時間やサンプリングレートを変更することにより、この問題は回避できる。
しかしながら、フローレートが小さいものを特定するためには、フローテーブルに全てのフローを保持する必要があり、フロー数の増加に伴い所要メモリ量と処理時間が線形に増大するため、大容量リンクでの適用が困難であり、現実的でない。
本発明は、フローテーブルを小さく保持しながら、必要な情報のみ詳細にトラヒックフローモニタリングを行うことができるIPフロー計測回路およびIPフロー計測方法を提供することを目的とする。
本発明のIPフロー計測回路は、到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出部と、
前記第1検索キー情報毎に、該第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウンタと、前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウンタと、を格納するフローテーブルと、
前記累積カウンタおよび前記新規フローカウンタのカウント動作を制御し、各カウント値と前記第1検索キー情報あるいは前記第2検索キー情報に基づいて異常トラヒックを検知する検索エンジンとを備える。
前記第1検索キー情報毎に、該第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウンタと、前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウンタと、を格納するフローテーブルと、
前記累積カウンタおよび前記新規フローカウンタのカウント動作を制御し、各カウント値と前記第1検索キー情報あるいは前記第2検索キー情報に基づいて異常トラヒックを検知する検索エンジンとを備える。
この場合、検索エンジンは、第1検索キー情報を含まないパケットが到着した場合には、フローテーブルに到着したパケットの第1検索キー情報をエントリとして登録するとしてもよい。
また、検索エンジンは、累積カウンタと新規フローカウンタが保持するカウント数或いはバイト数について予め定められた閾値を超えたかを判定し、所定の時間後に閾値を超えなかった第1検索キー情報については、フローテーブルから削除するとしてもよい。
また、検索エンジンは、累積カウンタと新規フローカウンタが保持するカウンタ数或いはバイト数がフローテーブルの上位N番目以内かを判定し、上位N番目以外の第1検索キー情報については、フローテーブルから削除するとしてもよい。
また、検索エンジンは、フローテーブルから削除する第1検索キー情報についてはフラグを立て、所定時間後に、フラグが立てられたフローを削除するとしてもよい。
また、検索エンジンは、キー情報抽出部にて抽出される任意のキー情報を、適用するポリシーサービスの種類によりIPパケット中の任意データからさまざまなパラメータを指定するとしてもよい。
また、検索エンジンは、累積カウンタと新規フローカウンタのカウント結果に基づいて、前記累積カウンタの任意のキー情報や前記新規フローカウンタの任意のキー情報を変更するとしてもよい。
また、第2の検索キーを用いた新規フロー判定のための検索エンジンは、0に設定されたnビットのハッシュ空間を持つk個のハッシュ値と2nビットのビットマップを具備し、パケットが到着するごとに任意のキーを入力値としてk個の異なるハッシュ関数Hを用いたk個のハッシュ値を得、このk個のハッシュ値に対応するビットマップ上のビットを調べ、1つ以上0ビットが存在する場合に前記第2検索キー情報を含むパケットが新規に到着したと判断し、k個のハッシュ値に対応するビットマップ上のビットを1ビットを設定するとしてもよい。
また、検索エンジンは、任意のキー情報に応じてフローテーブルに保持したカウンタ値に係数を掛けるとしてもよい。
本発明のIPフロー計測方法は、到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出ステップと、
前記第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウントステップと、
前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウントステップと、
前記累積カウントステップおよび前記新規フローカウントステップにおける各カウント値に基づいて異常トラヒックを検知する検索ステップとを備える。
前記第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウントステップと、
前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウントステップと、
前記累積カウントステップおよび前記新規フローカウントステップにおける各カウント値に基づいて異常トラヒックを検知する検索ステップとを備える。
本発明によれば、フローテーブルを小さく保持しながら、ネットワークのリアルタイムの詳細なトラヒックフローモニタリングを行うことができるIPフロー計測回路および方法を提供することができる。
次に、本発明の実施例について図面を参照して説明する。
(第1実施例)
図1は、本発明による第1の実施例のIPフロー計測回路の構成を示すブロック図、図2は図1中のフローテーブル3の構成を示す図である。
図1は、本発明による第1の実施例のIPフロー計測回路の構成を示すブロック図、図2は図1中のフローテーブル3の構成を示す図である。
本実施例は、キー情報抽出部1と、検索エンジン2と、フローテーブル3から構成され、フローテーブル3は、図2に示されるように、フロー識別キーと累積カウンタと新規フローカウンタとから構成されている。
キー情報抽出部1は、到着するIPパケットから任意のキー情報を抽出し、検索エンジン2へ送出する。検索エンジン2はキー情報抽出部1から送られてきたキー情報とフローテーブル3を構成するフロー識別キー及び図7に示されるように、ビットマップと比較する。
図3は本実施例のIPフロー計測回路の動作を示すフローチャートであり、以下に、図3を参照して本実施例のIPフロー計測回路の動作について説明する。
IPパケットが到着すると、キー情報抽出部1は、到着したIPパケットから任意のキー情報を第1検索キー情報として抽出し(ステップS301)、検索エンジン2へ送出する。
検索エンジン2は、キー情報抽出部1から送られてきた第1検索キー情報とフローテーブル3を構成するフロー識別キーとを比較し、一致するものの有無を確認する(ステップS302)。
ステップS302において、一致するものが有ることが確認された場合には、これを所属フローとして累積カウンタのカウント値を1つインクリメントする(ステップS303)。ステップS302において、一致するものがないことが確認された場合には、第1検索キー情報をフロー識別キーとしてフローテーブルに登録する(ステップS305)。
検索エンジン2のステップS302における動作としては、図2に示したフローテーブル3を構成するフロー識別キーと到着したIPパケットから抽出した任意のキー情報との一致確認(exact match)を行う。例えば、フロー識別キーを送信元IPアドレスとした場合、192.168.10.1のパケットが初めて到着した場合、すなわち、テーブルに存在しないIPアドレスを持ったパケットが到着した場合には、これをフロー識別キーとしてあらたなフローテーブル3を生成し、以降、192.168.10.1が到着する度に累積カウンタをインクリメントする。また、このフローテーブル3は一定時間でリセット(クリア)される。
図2に示す例では、送信元IPアドレス192.168.10.1のパケットのある単位時間当たりのレートが100であることがわかる。
本実施例においては、上述した第1検索キー情報に基づく動作と平行して、第2検索キーに基づく動作が行われる。
IPパケットが到着すると、キー情報抽出部1は、新規フローカウンタでの識別として、第1検索キー情報と任意のキー情報を組とした第2検索キー情報として抽出し(ステップS306)、検索エンジン2へ送出する。
検索エンジン2は、キー情報抽出部1から送られてきた第2検索キー情報が、図7記載のビットマップにあるかを確認することにより新規フローであるかの判定を行い(ステップS307)、新規フローである場合は、累積カウンタで指定したキー(第1検索キー情報)に対応する新規フローカウンタのカウント値を1つインクリメントする(ステップS308)。ステップS307において、一致するものがあることが確認された場合には終了する。
検索エンジン2の具体的な動作例として、例えば、第1検索キー情報を宛先IPアドレス、第2検索キー情報を宛先IPアドレスと送信元IPアドレスの組として説明する。
宛先IPアドレスが192.168.10.1で送信元IPアドレスが10.1.1.1のパケットが初めて到着した場合、ステップS302において、フローテーブルに一致するものがないことが確認され、第1検索キー情報である192.168.10.1をフロー識別キーとしてフローテーブル3に登録し、累積カウンタの値を1とする。また、同時にステップS307において、第2検索キー情報である192.168.10.1と10.1.1.1の組からなるキーを入力値としてビットマップを用いた検索により新規フローと判定され、フローテーブルのフロー識別キーが192.168.10.1の新規フローカウンタ値を1とし、第2検索キー情報である192.168.10.1と10.1.1.1の組からなるキーを入力値としてk個の異なるハッシュ関数Hを用いたk個のハッシュ値に対応するビットマップ上にビットを1ビット設定し登録する。
以降、宛先IPアドレスが192.168.10.1で送信元IPアドレスが10.1.1.1のパケットが再び受信された場合、ステップS302において、フローテーブル3に一致するものがあることが確認され、フローテーブル3のフロー識別キーが192.168.10.1に対応する累積カウンタの値がインクリメントされる。しかし、ステップS307において、第2検索キー情報である192.168.10.1と10.1.1.1の組からなるキーを入力値としてビットマップを用いた検索により既に新規フローとして識別されているため、新規フローと判定されない。このため、フローテーブル3のフロー識別キーが192.168.10.1に対応する新規フローカウンタの値はインクリメントされない。
以降、宛先IPアドレスが192.168.10.1で送信元IPアドレスが異なる場合には、累積カウンタ、新規フローカウンタはともにインクリメントされる。
図2に示す例では、宛先IPアドレスが192.168.10.1へ通信を行っている送信元IPアドレスが100あることがわかる。また、宛先IPアドレスが192.168.255.1へ通信を行っている送信元IPアドレスが1しかなく、ある送信元から宛先IPアドレスが192.168.255.1に対して100パケット送られたことが分かる。
検索エンジン2は、異常検知を行う異常検知部(不図示)を含む。異常検知部では、フローテーブルの累積カウンタ値と、新規フローカウンタの値と、第1検索キー情報の条件、第2検索キーの条件、を参照することにより、DoS攻撃、或いはワームであるかなどの攻撃種別を判断できる。
例えば、累積カウンタの任意のキー情報として送信元IPアドレス、新規フローカウンタの任意のキー情報として送信元IPアドレスと送信先アドレスを組みとした場合、高レートトラヒックの送信元は単位時間当たりの累積カウンタの値を見ることにより検知でき、新規フローカウンタ数を見ることにより、送信元IPアドレスにおける通信先の端末数に注目した異常トラヒック検知を行うことができる。
また、フローテーブルの累積カウンタ値と、新規フローカウンタの値と、第1検索キー情報の条件、第2検索キーの条件、を参照することにより、異常トラヒックを発生させている端末がDoS攻撃を行っている端末であるのか、ワームに感染した端末であるのか識別できる。
DoS(Distributed Denial of Service)攻撃は、インターネット上で行われるサービスを妨害する攻撃であるため、あるサーバ等に対して大量のパケットを送信する。このため、第1検索キー情報を送信元IPアドレス、第2検索キー情報を送信元IPアドレスと宛先IPアドレスの組とした場合、累積カウンタ値は大きな値であるが、新規フローカウンタ値は1といったような小さい値となる。
一方、ワームはより多くの端末に感染しようとする性質を持つため多数の宛先にパケットを送信する。このため、第1検索キー情報を送信元IPアドレス、第2検索キー情報を送信元IPアドレスと宛先IPアドレスの組とした場合、累積カウンタ値も新規フローカウンタ値も大きい値となる。
図2に示した例では、第1検索キー情報にかかる送信元IPアドレス192.168.10.1の累積カウンタが100で、新規フローカウンタも100であることから、100個の宛先アドレスに対して、送信元IPアドレスが100個のパケットの送信を行っていることがわかる。ワームはより多くの端末に感染しようとするため多数の宛先IPアドレスにパケットを送信する特徴がある。このため、累積カウンタ値も新規フローカウンタ値も大きい値となる。
また、送信元IPアドレス192.168.255.1が1個の宛先IPアドレスに対して送信元IPアドレスが100個のパケットの送信を行っていることがわかる。DoS攻撃は、インターネット上のサービスを妨害するため、ある特定IPアドレスに対して大量のパケットを送信する特徴がある。このため、累積カウンタ値は大きなカウンタ値だが新規フローカウンタ値は小さい値となる。
ステップS303における累積カウンタのカウントアップ、ステップS308における新規フローカウンタのカウントアップの後には、検索エンジン2の異常検知部は各カウンタのカウント値を比較し、第1検索キー情報、第2検索キー情報の条件を参照することにより種々の攻撃を検知する。第1検索キー情報が送信元IPアドレスで第2検索キー情報が送信元IPアドレスと宛先IPアドレスである場合、累積カウンタ値が予め定められた第1の閾値以上であり、新規フローカウンタ値が予め定められた第2の閾値以下である場合にはDoS攻撃であると判断する。また、累積カウンタ値が予め定められた第3の閾値以上であり、新規フローカウンタ値が予め定められた第4の閾値以上である場合にはワームによる攻撃であると判断する。
上記はIPパケットヘッダを検索キーとした場合に、ネットワーク異常を検知する方法である。以降では、異常を検知したフローの内容に応じて、段階的にキー情報を変更して行き、より詳細なフロー情報を収集する方法について説明する。ここでは、アプリケーションレイヤの情報であるIP電話の電話番号を検索キーとした場合を説明する。
図4はIP電話で発生する機械的不完了呼(ワンギリ)を示す図である。ワンギリはより多くの電話に接続しようとするため、多数の宛先にパケットを送信する。例えば、第1検索キー情報を宛先IPアドレスとした場合、図5に示すフロー識別キー192.168.10.1について分析を行い、累積カウンタが大きい値で、新規フローカウンタが小さい値なので、192.168.10.1に対してDoS攻撃が発生していることが分かる。その後、どのようなDoS攻撃が発生しているかについてより詳細な情報を取得するために、フローの内容に応じて、段階的に送信元IPアドレスやL4ポート番号、アプリケーションレイヤの情報であるIP電話の電話番号などを追加し、キー情報を変更して行く。これによりきめ細かな情報を取得するとともにフローテーブルの増大を防ぐことができる。
以降では、第1検索キー情報を宛先IPアドレス、第2検索キー情報を宛先IPアドレス、送信元IPアドレスとした場合に、192.168.10.1に対するDoS攻撃であると判明し、該当IPアドレスはSIP(Session Initiation Protocol)サーバであったとする。
より詳細な情報を収集するために、第1検索キー情報として宛先IPアドレス192.168.10.1とIP電話の発信電話番号(From)を組とし、第2検索キー情報として宛先IPアドレス192.168.10.1とIP電話の着信電話番号(To)とIP電話の発信電話番号(From)を組として図6におけるステップS409によりキー情報を変更する。その結果、図5に示すようなフロー識別キー192.168.10.1と、0501234567の累積カウンタ値が400で、新規フローカウンタ値が400の結果が得られたとする。
第1検索キー情報は宛先IPアドレス192.168.10.1とIP電話の発信電話番号(From)が組とされているため、0501234567はIP電話の発信電話番号を指しており、0501234567の電話番号から400台の電話機に対して電話をかけているワンギリが発生していることが分かる。このことから、192.168.10.1に対するDoS攻撃検知だけでなく、0501234567の電話番号がワンギリを行っていることも検知できる。
なお、検索エンジン2に、累積カウンタと新規フローカウンタが保持するカウント数或いはバイト数について、所定の閾値を超えたかを判定し、所定の時間後に閾値を超えなかったフローについては、フローテーブル3から削除するエージング手段を備えることとしてもよい。
上記のエージング手段は、フローテーブルから削除することを、削除するフローについてはフラグを立て、所定時間後に、フラグが立てられたフローを削除することとしてもよい。
さらに、エージング手段は、累積カウンタと新規フローカウンタが保持するカウンタ数或いはバイト数がフローテーブル3の上位N番目以内かを判定し、上位N番目以外のフローについては、フローテーブル3から削除することとしてもよい。
これにより、IPフロー計測回路によってトラヒックフローモニタリングされるフローのうち、特に高レートフロー、或いはフローの異なり数が多いものに絞り込むことができ、低いフローレートのもの、或いは、フローの異なり数が少ないものをフローテーブル3から削除することができ、フローテーブル3の規模が大きくなることを防ぐことができる。
上記のように構成される本実施例においては、トラヒックフローモニタリングにおいて、累積カウンタと新規フローカウンタの2つのカウンタからなるフローテーブルを持ち、新規フローを判定するステップを具備し新規フローと判断された場合にのみ、累積カウンタで指定したキーに対応する新規フローカウンタを増加させることで、ワームや機械的不完了呼(ワンギリ)や電番スキャンなど、単位時間に多くの新規端末と通信をしようとする性質の端末や、DoS攻撃など少数のフロー(エレファントフロー)が全体のトラヒック流量の大部分を占めるような異常トラヒックの検知を行えることを特徴とする。
次に、異常検知部の結果に応じて累積カウンタの任意のキー情報や新規フローカウンタの任意のキー情報の変更を行う動作について詳細に説明する。図4は累積カウンタの任意のキー情報や新規フローカウンタの任意のキー情報の変更を行う際の検索エンジン2の動作を示すフローチャートである。
図6におけるステップS401〜S403、S405〜S408の動作は、図3に示したステップS301〜S303、S305〜S308の動作と同様である。
本実施例において、検索エンジン2の異常検知部は、ステップS404において累積カウンタのカウント値と、新規フローカウンタのカウント値と、第1検索キー情報、第2検索キー情報の条件を参照することにより、異常であるかを確認し、異常であると判断した場合にはキー情報抽出部1により抽出されるキー情報の変更を行う(ステップS409)。
これにより、任意のキー情報は、適用するポリシーサービスの種類により、IPパケット中の任意データからさまざまなパラメータを指定することができる。このため、IPパケットヘッダ(例えば、IPヘッダであれば送信元IPアドレス、宛先IPアドレス、プロトコル種別、送信元ポート番号、宛先ポート番号)、だけでなく高位レイヤの情報を解析することができる。
すなわち、フロー識別子としてSIP(Session Initiation Protocol)のMethodやSIP−URI(Uniform Resource Identifier)やSIPヘッダにあるFromやToの情報をフロー識別情報キーとしてネットワークのリアルタイムの状況把握を可能とするトラヒックフローモニタリングを行うことができる。
また、異常検知部によって得られる詳細調査対象について、任意のキー情報を変えることにより、より詳細なトラヒックフローモニタリングすることができる。
例えば累積カウンタの任意のキー情報をSIPサーバなどの宛先IPアドレス、新規フローカウンタの任意のキー情報として宛先IPアドレスと送信元IPアドレスの組からなるフロー識別情報キーが設定されていた場合、累積カウンタによりSIPサーバ向けトラヒックが多いかが検知でき、新規フローカウンタによりある一端末が大量に電話をかけているのか、多くのユーザが一斉に電話をしたためなのかが分かる。さらに、詳細に分析を行いたい場合は、新規フローカウンタの任意のキー情報を宛先IPアドレスと送信元IPアドレスとSIPヘッダにあるToの組からなるフロー識別情報キーに変更することで、多くのユーザが一斉に電話をした場合において、それがある特定の番号宛に電話をしようとしている企画型輻輳なのか、通話先の電話番号もランダムな輻輳なのかが判別できる。このように、調査対象を絞り込んでから、詳細分析を行うためフローテーブルの増大を防ぐことができる。
図5に示した例によれば、累積カウンタの任意のキー情報をSIPサーバなどの宛先IPアドレス、新規フローカウンタの任意のキー情報として宛先IPアドレスと送信元IPアドレスの組からなるフロー識別情報キーが設定されていた場合、累積カウンタによりSIPサーバ192.168.10.1向けトラヒックが500と多いものであることを検知することができ、新規フローカウンタが1であることから、ある一端末が大量に電話を掛けていることが分かる。
また、累積カウンタによりSIPサーバ192.168.255.1向けトラヒックが800と多いかが検知でき、新規フローカウンタが750であることから、多くのユーザが一斉に電話をしたことが分かる。
さらに、SIPサーバ192.168.255.1向けトラヒックについて詳細に分析を行いたい場合は、新規フローカウンタの任意のキー情報を宛先IPアドレスと送信元IPアドレスとSIPヘッダにあるToの組からなるフロー識別情報キーに変更する。
変更後、新規フローカウンタが1である場合は、ある特定の番号宛に電話をしようとしている企画型輻輳であると分かる。また、変更後、新規フローカウンタが800など大きな値である場合は、通話先の電話番号もランダムな輻輳であると判定できる。このように、トラヒック異常検知手段によって得られる詳細調査対象について、任意のキー情報を変えることにより、より詳細なトラヒックフローモニタリングすることができる。また、調査対象を絞り込んでから、新規フローカウンタの任意のキー情報を変更することで、フローテーブルの増大を防ぐことができる。
次に、検索エンジン2において、ステップS307,S407にて行われるフローが新規フローであるかの確認動作について詳細に説明する。フローが新規フローであるかの確認はハッシュ関数を用いて行われる。
検索エンジン2は、図7に示すように、0に設定されたnビットのハッシュ空間を持つk個のハッシュ値と、2nビットのビットマップを具備している。
検索エンジン2は、図8に示すように、IPパケットが到着するごとに任意のキーを入力値として、k個の異なるハッシュ関数Hを用いたk個のハッシュ値を得る。このk個のハッシュ値に対応するビットマップ上のビットを調べ、1つ以上0ビットが存在する場合には新規のフローと判断する。ビットマップ上のビットを調べ、全て1ビットが存在する場合は、既に該当フローが存在すると判断し、新規のフローであるとは判断しない。
新規のフローと判断した場合には、検索エンジン2は、図9に示すように、k個のハッシュ値に対応するビットマップ上のビットを1ビットを設定する。
上記の構成を備える本実施例においては、少ないメモリ量で、あるキーが既に存在するかを判定することが可能である。
なお、以上の説明において、任意のキー情報に応じてフローテーブルに保持した各カウンタのカウント値に係数を掛けることとしてもよい。これにより、例えば、あるキー情報が代表番号であるときは、累積カウンタと新規フローカウンタが大きな値として見えてしまう。このため、カウンタ値に0.1など係数を掛けることにより、誤検を緩和することができる。
1 キー情報抽出部
2 検索エンジン
3 フローテーブル
2 検索エンジン
3 フローテーブル
Claims (10)
- 到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出部と、
前記第1検索キー情報毎に、該第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウンタと、前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウンタと、を格納するフローテーブルと、
前記累積カウンタおよび前記新規フローカウンタのカウント動作を制御し、各カウント値と前記第1検索キー情報あるいは前記第2検索キー情報に基づいて異常トラヒックを検知する検索エンジンとを備えるIPフロー計測回路。 - 請求項1記載のIPフロー計測回路において、
検索エンジンは、第1検索キー情報を含まないパケットが到着した場合には、フローテーブルに到着したパケットの第1検索キー情報をエントリとして登録するIPフロー計測回路。 - 請求項1または請求項2記載のIPフロー計測回路において、
検索エンジンは、累積カウンタと新規フローカウンタが保持するカウント数或いはバイト数について予め定められた閾値を超えたかを判定し、所定の時間後に閾値を超えなかった第1検索キー情報については、フローテーブルから削除するIPフロー計測回路。 - 請求項1または請求項2記載のIPフロー計測回路において、
検索エンジンは、累積カウンタと新規フローカウンタが保持するカウンタ数或いはバイト数がフローテーブルの上位N番目以内かを判定し、上位N番目以外の第1検索キー情報については、フローテーブルから削除するIPフロー計測回路。 - 請求項3または請求項4記載のIPフロー計測回路において、
検索エンジンは、フローテーブルから削除する第1検索キー情報についてはフラグを立て、所定時間後に、フラグが立てられたフローを削除するIPフロー計測回路。 - 請求項1に記載のIPフロー計測回路において、
検索エンジンは、キー情報抽出部にて抽出される任意のキー情報を、適用するポリシーサービスの種類によりIPパケット中の任意データからさまざまなパラメータを指定するIPフロー計測回路。 - 請求項1に記載のIPフロー計測回路において、
検索エンジンは、累積カウンタと新規フローカウンタのカウント結果に基づいて、前記累積カウンタの任意のキー情報や前記新規フローカウンタの任意のキー情報を変更するIPフロー計測回路。 - 請求項1ないし請求項7のいずれかに記載のIPフロー計測回路において、
第2の検索キーを用いた新規フロー判定のための検索エンジンは、0に設定されたnビットのハッシュ空間を持つk個のハッシュ値と2nビットのビットマップを具備し、パケットが到着するごとに任意のキーを入力値としてk個の異なるハッシュ関数Hを用いたk個のハッシュ値を得、このk個のハッシュ値に対応するビットマップ上のビットを調べ、1つ以上0ビットが存在する場合に前記第2検索キー情報を含むパケットが新規に到着したと判断し、k個のハッシュ値に対応するビットマップ上のビットを1ビットを設定するIPフロー計測回路。 - 請求項1ないし請求項8のいずれかに記載のIPフロー計測回路において、
検索エンジンは、任意のキー情報に応じてフローテーブルに保持したカウンタ値に係数を掛けるIPフロー計測回路。 - 到着するIPパケット中の任意のデータを第1検索キー情報として抽出し、該第1検索キー情報と任意のデータを組として第2の検索キー情報を抽出するキー情報抽出ステップと、
前記第1検索キー情報を含むパケットが到着した回数を累積してカウントする累積カウントステップと、
前記第2検索キー情報を含むパケットが新規に到着した回数を累積してカウントする新規フローカウントステップと、
前記累積カウントステップおよび前記新規フローカウントステップにおける各カウント値に基づいて異常トラヒックを検知する検索ステップとを備えるIPフロー計測方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007212203A JP2009049592A (ja) | 2007-08-16 | 2007-08-16 | Ipフロー計測回路およびipフロー計測方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007212203A JP2009049592A (ja) | 2007-08-16 | 2007-08-16 | Ipフロー計測回路およびipフロー計測方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009049592A true JP2009049592A (ja) | 2009-03-05 |
Family
ID=40501403
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007212203A Pending JP2009049592A (ja) | 2007-08-16 | 2007-08-16 | Ipフロー計測回路およびipフロー計測方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009049592A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011132568A1 (ja) | 2010-04-19 | 2011-10-27 | 日本電気株式会社 | スイッチ、及びフローテーブル制御方法 |
JP2017511072A (ja) * | 2014-04-11 | 2017-04-13 | レベル スリー コミュニケーションズ,エルエルシー | ヒューリスティック及びビジネスポリシーに基づく、ネットワークトラフィックフローに対するリソースのインクリメンタルアプリケーション |
-
2007
- 2007-08-16 JP JP2007212203A patent/JP2009049592A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011132568A1 (ja) | 2010-04-19 | 2011-10-27 | 日本電気株式会社 | スイッチ、及びフローテーブル制御方法 |
US8971342B2 (en) | 2010-04-19 | 2015-03-03 | Nec Corporation | Switch and flow table controlling method |
JP2017511072A (ja) * | 2014-04-11 | 2017-04-13 | レベル スリー コミュニケーションズ,エルエルシー | ヒューリスティック及びビジネスポリシーに基づく、ネットワークトラフィックフローに対するリソースのインクリメンタルアプリケーション |
US10291534B2 (en) | 2014-04-11 | 2019-05-14 | Level 3 Communications, Llc | Incremental application of resources to network traffic flows based on heuristics and business policies |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4512196B2 (ja) | 異常トラヒックの検出方法およびパケット中継装置 | |
CN106416171B (zh) | 一种特征信息分析方法及装置 | |
Binkley et al. | An algorithm for anomaly-based botnet detection. | |
CN103795709B (zh) | 一种网络安全检测方法和系统 | |
CN106471778B (zh) | 攻击检测装置和攻击检测方法 | |
CN110166480B (zh) | 一种数据包的分析方法及装置 | |
JP5017440B2 (ja) | ネットワーク制御装置およびその制御方法 | |
JP5286018B2 (ja) | 情報処理装置、プログラム、および記録媒体 | |
CN114338120B (zh) | 一种扫段攻击检测方法、装置、介质和电子设备 | |
CN108512816B (zh) | 一种流量劫持的检测方法及装置 | |
JP5206968B2 (ja) | 推定方法、装置及びプログラムと、ネットワーク計測システム | |
CN107864110A (zh) | 僵尸网络主控端检测方法和装置 | |
JP2009049592A (ja) | Ipフロー計測回路およびipフロー計測方法 | |
JP5199224B2 (ja) | フロー通信品質推定方法と装置およびプログラム | |
Peuhkuri | Internet traffic measurements–aims, methodology, and discoveries | |
JP5180247B2 (ja) | パケットサンプリング装置と方法およびプログラム | |
JP5437194B2 (ja) | フロー通信品質推定方法及び装置及びプログラム | |
Cejka et al. | Using application-aware flow monitoring for sip fraud detection | |
KR100710047B1 (ko) | Ip 네트워크 환경에서의 트래픽 분석장치 | |
JP5328283B2 (ja) | 情報処理装置、プログラム、および記録媒体 | |
Thang et al. | Synflood spoofed source DDoS attack defense based on packet ID anomaly detection with bloom filter | |
Ohsita et al. | Detecting Distributed Denial-of-Service Attacks by analyzing TCP SYN packets statistically | |
Lee et al. | A VoIP traffic monitoring system based on NetFlow v9 | |
JP5135163B2 (ja) | 情報処理装置およびプログラム | |
WO2024013884A1 (ja) | DDoS検知装置および方法 |