この発明は、ネットワークにより通信されるデータを中継し、中継するデータのうち指定された条件に合致するデータをスヌープするデータ中継装置およびデータ中継方法に関し、特に、スヌープしたデータを分析するネットワーク分析装置が分析に必要な付加情報を得ることを可能とするデータ中継装置およびデータ中継方法に関するものである。
コンピュータやさまざまな情報処理機器をネットワークにより相互接続するシステムの利用拡大に伴い、ネットワークの規模拡大あるいは相互接続のために、ネットワーク間の中継、例えばLAN(Local Area Network)とLAN、LANと専用線を相互接続する必要が生じる。このネットワーク間の中継を実現するのがパケット中継装置である。LAN間を相互接続するパケット中継装置が、通信データが格納されているパケットをそのパケットのヘッダに格納されている情報に基づいて中継処理することによって端末間の通信が実現する。
すなわち、パケット中継装置は、受信パケットのパケットフォーマットをパケットのヘッダ情報等から判別(パケット分別処理)し、パケット分別結果に応じたパケットの宛先情報を格納した中継テーブルを検索し、ヘッダ書き換え処理等のパケット更新処理をパケットに対し行い、処理したパケットを送信することによってパケットを中継する。
また、パケット中継装置は、中継したパケットを、中継したパケットとは別にコピーして送信する機能を具備する。このような、パケット中継装置が具備する機能をスヌープまたはスヌープ機能をいう(例えば、特許文献1参照。)。
図19は、従来のパケット中継装置によるスヌープ機能を説明するための説明図である。同図において、パケット中継装置700は、ネットワークAとネットワークBを相互接続する。すなわち、このパケット中継装置700は、送受信ポート1よりパケット1を受信し、ネットワークBへ向けて送受信ポート2から、パケット1をパケット2として送信する。
ここで、パケット中継装置700が、結果的にパケット1を更新してパケット2とするかどうか、つまり、パケット1とパケット2の内容が異なるかどうかは、パケット中継装置700が行ったパケット分別処理によって判明するパケット中継処理種別に依存する。一般的にISO(International Organization for Standardization)のOSI(Open Systems Interconnection)モデルにおけるデータリンク層の中継処理であるブリッジ中継では、パケット1とパケット2の内容は同一であり、OSIモデルにおけるネットワーク層の中継処理であるルーティング中継では、パケット1とパケット2の内容は異なる。
さらに、パケット中継装置700は、パケット中継装置700のある特定の送受信ポートへネットワーク分析装置800を接続し、この特定送受信ポートからネットワーク分析装置800へ向けて、中継したパケットを、中継したパケットとは別にコピーして送信する。このようなパケットのコピー機能がパケット中継装置のスヌープ機能である。ネットワーク分析装置800は、パケット中継装置700がコピーしたパケットを受信することによって、パケット中継装置700が中継したパケットを分析することができる。
このようなネットワーク分析装置800としては、ネットワークに対する不正な侵入を検知する侵入検知システム(IDS; Intrusion Detective System)や、ユーザの課金等の管理を行うネットワーク管理システムがあり、その分析目的は、幅広く多様である。特に侵入検知システムにおいては、侵入手法の進化に応じて、その分析目的も進化する。このような進化する分析目的に応じて、ネットワーク分析装置800は、パケット中継装置700へコピー対象とする中継パケットの条件、すなわちスヌープ条件を設定し、パケット中継装置700は、スヌープ条件に合致する中継パケットをコピーして、ネットワーク分析装置800が設定した特定の送受信ポート、すなわちスヌーパポートから送信する。
尚、上述のようなスヌープ機能は、他にも、ミラーリング、モニタリング、キャプチャ、スニッフ、SPAN(Switched Port Analyzer)等の各装置独自の機能名称で呼称される(例えば、非特許文献1参照。)。
スヌープ機能を図19を用いて説明すると、パケット中継装置700は、パケット1をパケット2としてネットワーク中継(以降、コピーしたパケットを中継する処理と区別する用語として「ネットワーク中継」を使用する)する過程において、受信したパケット1、送信するパケット2または両方をコピーしてパケット3とし、パケット3をネットワーク分析装置800がスヌーパポートとして設定した送受信ポート3より、ネットワーク分析装置800へ向けて送信する。この時、パケット中継装置700が受信パケットであるパケット1、送信パケットであるパケット2またはその両方のパケットをコピーするかは、ネットワーク分析装置800が設定したスヌープ条件に依存する。
図20は、上述のようなスヌープ機能を実現する、従来のパケット中継装置700の構成を示す機能ブロック図である。同図に示すように、このパケット中継装置700は、パケット分別部710と、中継テーブル720と、スヌープ条件テーブル730と、制御部740と、スヌープ制御部750と、パケット交換部760と、パケット更新部770とを有する。
パケット分別部710は、受信パケットのパケットフォーマットをパケットのヘッダ情報から判別してパケットを分別し、パケット分別結果に応じたパケットの宛先情報を中継テーブル720から検索してパケットのヘッダ部、宛先情報およびネットワーク中継に即したパケット更新情報をスヌープ制御部750へ送信する処理部である。尚、このパケット分別部710は、受信パケットのヘッダ部のみを受信するが、受信パケット全部を受信することもできる。
中継テーブル720は、パケット分別部710によるパケット分別結果に応じたパケットの宛先情報を記憶したテーブルである。具体的には、この中継テーブル720として、ブリッジ中継に使用する学習テーブルやルーティング中継に使用するルーティングテーブル等がある。
スヌープ条件テーブル730は、スヌープするパケットの条件を記憶したテーブルである。このスヌープ条件テーブル730は、スヌープ制御部750によってスヌープ制御に使用される。
制御部740は、パケット中継装置700全体の制御を行う処理部であり、パケット中継装置700を一つの装置として機能させる。また、この制御部740は、ネットワーク分析装置800が設定インタフェースを介して設定するスヌープ条件情報をスヌープ条件テーブル730へ格納する。
スヌープ制御部750は、パケット分別部710からパケットのヘッダ部、宛先情報およびネットワーク中継に即したパケット更新情報を受信し、受信した情報に基づいてパケットのスヌープを制御する処理部である。すなわち、このスヌープ制御部750は、スヌープ条件テーブル730を検索し、パケットがスヌープ条件に合致したならば、パケットのコピー処理をパケット交換部760へ指示する。
また、このスヌープ制御部750は、合致したスヌープ条件が送信パケットのコピーならば、受信パケットをコピーしたパケットの更新をパケット更新部770へ指示し、合致したスヌープ条件が受信パケットのコピーならば、受信パケットをコピーしたパケットの非更新をパケット更新部770へ指示する。
尚、このスヌープ制御部750は、パケット分別部710の指示に従って、ネットワーク中継のパケットについても、ネットワーク中継に即したパケット更新をパケット更新部770へ指示する。
パケット交換部760は、受信パケットを一時的に格納するとともに、スヌープ制御部750の指示に従って受信パケットのコピーを作成して格納する処理部である。また、このパケット交換部760は、格納したパケットおよびコピーしたパケットを宛先情報に対応する送信ポートへ向けてパケット更新部770経由で送信する。
パケット更新部770は、パケット交換部760から受信したパケットをスヌープ制御部750の指示に従って更新し、送信ポートより送信する処理部である。すなわち、このパケット更新部770は、ネットワーク中継に即したパケット更新とスヌープに即したコピーパケットのパケット更新とを行う。
図20において、ネットワーク分析装置800は、パケット中継装置700によりスヌープされたパケットをスヌーパポートから受け取り分析する装置である。また、このネットワーク分析装置800は、パケット中継装置700が具備する設定インタフェースを介して、パケット中継装置700へスヌープ条件を設定する。
図21は、設定インタフェースの論理データ構造の一例を示す図である。同図において、各設定1〜設定n(nは任意)は、スヌープ条件情報のみより構成される。また、スヌープ条件情報としては、一般的に以下の二つの形式がある。
(1)(スヌープ条件種別, スヌープポート, スヌーパポート)
この時、スヌープ条件種別は、受信ポートスヌープまたは送信ポートスヌープである。(2)(スヌープ条件種別, 対象送受信パケット, スヌーパポート)
この時、スヌープ条件種別は、受信特定フロースヌープまたは送信特定フロースヌープである。
受信ポートスヌープは、スヌープポートとして指定したポートより受信したパケットをコピーしてスヌーパポートへ送信するスヌープ条件種別である。送信ポートスヌープは、スヌープポートとして指定したポートから送信するパケットをコピーしてスヌーパポートへ送信するスヌープ条件種別である。
受信特定フロースヌープは、受信パケットに対し、受信パケットが格納する各フィールド値(送受信アドレス等)の条件を設定し、条件に一致する受信パケットの、対象送受信パケットとして指定した時点、つまり、受信時または送信時でのパケットをコピーして、スヌーパポートへ送信するスヌープ条件種別である。
送信特定フロースヌープは、送信パケットに対し、送信パケットが格納する各フィールド値(送受信アドレス等)の条件を設定し、条件に一致する送信パケットの、対象送受信パケットとして指定した時点、つまり、受信時または送信時でのパケットをコピーして、スヌーパポートへ送信するスヌープ条件種別である。
尚、ネットワーク分析装置800からパケット中継装置700への設定インタフェースを実現する物理伝送媒体、ネットワーク層やアプリケーション層の通信プロトコルについては、様々な手法が存在する。
例えば、図20においては、物理伝送媒体として、ネットワーク分析装置800からパケット中継装置700の送受信ポート3へのネットワークインタフェースを使用し、ネットワーク層としてはIP(Internet Protocol)を使用し、アプリケーション層としてはtelnetプロトコルを使用して実現する手法も、一つの手法である。ただし、ここでは、設定インタフェースの実現手法に関しては問題としないので、設定インタフェースをネットワーク分析装置800からパケット中継装置700内の制御部740へ直接矢印で図示している。
また、図20に示したパケット中継装置700は、スヌープ機能を実現するパケット中継装置の一例であるが、基本的に図20に示したように、パケット中継装置のネットワーク中継機能とスヌープ機能は、論理的に独立している必要がある。これは、パケット中継装置には、一般的にネットワーク中継機能の一部として、受信パケットをコピーして複数の送信ポートから出力するマルチキャスト機能を具備しており、パケット中継装置内の中継テーブルの設定を変更すれば、マルチキャスト機能によって、パケット中継装置がパケットをコピーすること自体は実現することが出来る。
しかし、スヌープにおいては、その目的が、パケット中継装置が中継するパケットをコピーして、その後分析することなので、パケット中継装置の元々の中継機能に関する設定は保存しておく必要がある。したがって、図20のように中継テーブル720とスヌープ条件テーブル730を分けることによって、パケット中継装置700は、スヌープ機能をネットワーク中継機能とは論理的に独立して具備する必要がある。
特開2003−115860号公報
「Catalyst 6500 シリーズソフトウェアコンフィギュレーションガイド」、78-14924-01-J、シスコシステムズ
しかしながら、従来のパケット中継装置が具備するスヌープ機能では、ネットワーク分析装置が、受信したパケットと付随する形態で、パケットには含まれないパケットの中継処理に関する属性情報および、パケットをスヌープするに至ったネットワーク分析装置の分析目的に関する情報が得られないため、ネットワーク分析装置が、目的とする侵入検知やネットワーク管理に関する分析ができない可能性があるという問題点がある。以降、この問題点を具体的に説明する。
図22は、従来のパケット中継装置900におけるVLAN(Virtual LAN)設定時のスヌープ機能を説明するための説明図である。同図において、パケット中継装置900は、送受信ポート1ならびに送受信ポート2および送受信ポート21からポートVLANであるVLANabを構成し、送受信ポート4および送受信ポート5からポートVLANであるVLANcdを構成する。
ここで、VLANとは、物理的な接続形態とは独立に、端末/ネットワークの仮想的なグループをOSI基本参照モデルの第2層であるデータリンク層レベルで設定できる機能である。一般的にこの仮想的なグループの定義方法としてはいくつかあるが、図22においては、特定のポートが特定のVLANグループへ属する「ポートVLAN」という定義方法を用いている。
このようにネットワークをグループ化することによって、各VLANはデータリンク層における独立したネットワーク中継空間となるので、それぞれの空間内で送受信するパケットに関して、そのパケット内のアドレスが重複したとしても、パケット中継装置900は、ネットワーク中継を実現することができる。
したがって、図22においては、VLANabに属するネットワークAからの受信パケット1と、VLANabとは別のVLANであるVLANcdに属するネットワークCからの受信パケット4は、そのパケット内のアドレスが同一である可能性があり、パケット1をコピーしたパケット33とパケット4をコピーしたパケット34は、パケット内のアドレスが同一である可能性がある。
したがって、ネットワーク分析装置800は、パケット33がネットワークAに属するのかネットワークCに属するのか、逆にパケット34がネットワークAに属するのかネットワークCに属するのか判別することができないという問題点がある。
これは、例えば、ネットワーク分析装置800が、侵入検知装置として侵入検知を行うとして、ネットワークAに属するある端末が、侵入しようとしているのか、ネットワークCに属するある端末が、侵入しようとしているのか、検知/分析できないことになる。このような問題を招くのは、ネットワーク分析装置800が、パケットには含まれないパケットの中継処理に関する属性情報の一つである送受信ポートを得られないためである。
この問題は、上記のVLANの設定に限ったことではなく、アドレスの観点で複数の独立したネットワーク中継空間からネットワークを構成する場合、端末またはネットワークに一意なパケットは保証されないので、一般的に発生する問題である。
また、さらに一般的に言えば、上述のVLANのようなアドレスの観点で複数の独立したネットワーク中継空間からネットワークを構成する例に限らず、図22のようなネットワーク構成の場合、パケット33は、送受信ポート1から送受信ポート2へ中継されたのか、送受信ポート1から送受信ポート21へ中継されたのかパケット33内の情報からだけでは、判別することができない。
これは、ネットワークAからネットワークBとネットワークAからネットワークBaのうち、ネットワークAからネットワークBaのみを分析対象とする場合、パケット内の情報からだけでは、ネットワーク分析装置800は、対象パケットの絞込みが行えないことを意味する。これも、ネットワーク分析装置800が、パケットには含まれないパケットの中継処理に関する属性情報の一つである方路(パケットの入出力ポートのセット)を得られないためである。
上述のように、ネットワーク分析装置800が、目的とする侵入検知に関する分析ができないと、さらに分析結果をフィードバックして、ネットワーク管理者が、パケット中継装置900へ適切な設定(ここでは、不正な侵入を防ぐための適切な設定)を、パケット中継装置900へできない問題点を招く。
次に、他の課題として、パケットをスヌープするに至ったネットワーク分析装置800の分析目的に関する課題について、以降で具体的に説明する。例えば、パケット中継装置900の送受信ポートとは非依存なある特定の端末群からの攻撃を、侵入検知装置であるネットワーク分析装置800が分析するものとする。このために、ネットワーク分析装置800は、パケット中継装置900に対し、複数の受信特定フロースヌープを設定する。
すると、パケット中継装置900は、受信パケット内の各フィールド値と、受信フロースヌープの条件を比較し、両者が一致した場合は、パケットをコピーして、ネットワーク分析装置800へ送信する。そして、ネットワーク分析装置800は、受信したパケットに対し、再度、ネットワーク分析装置800がパケット中継装置900へ設定した複数の受信特定フロースヌープ条件を適用し、一致した複数のパケットを、端末群からの攻撃を分析する同一の分析モジュールで分析することになる。
このように、ネットワーク分析装置800が、パケットを受信した段階で、複数のパケット群を一意に、その分析目的と結び付けられず、それが処理負荷や無駄な処理となるのは、ネットワーク分析装置800が、パケット中継装置900からパケットと付随して、ネットワーク分析装置800が特定受信フロースヌープを設定した分析目的(ここでは、ある特定の端末群からの攻撃を指す)を示す情報が得られないためである。
上述のようにネットワーク分析装置800に無駄な処理負荷をかけることは、ネットワーク分析装置800の全体的な分析処理能力を低下させ、ネットワーク分析装置800が、別の目的とする分析をできなくする可能性がある。また、上述のようにネットワーク分析装置800が、目的とする侵入検知に関する分析ができないと、さらに分析結果をフィードバックして、ネットワーク管理者が、パケット中継装置900へ適切な設定をできないという問題点を招く。
この発明は、上述した従来技術による問題点を解消するためになされたものであり、スヌープしたデータを分析するネットワーク分析装置が分析に必要な付加情報を得ることを可能とするデータ中継装置およびデータ中継方法を提供することを目的とする。
上述した課題を解決し、目的を達成するため、本発明は、ネットワークにより通信されるデータを中継し、該中継するデータのうち指定された条件に合致するデータをスヌープするデータ中継装置であって、スヌープするデータに付加する情報の指定を付加情報指定として記憶した付加情報指定記憶手段と、前記付加情報指定で指定された情報を付加してデータをスヌープするスヌープ制御手段とを備え、前記付加情報指定には、パケット中継処理に関する情報であるパケット中継処理情報を付加する情報として指定するパケット中継処理情報付加指定を含み、前記スヌープ制御手段は、前記パケット中継処理情報付加指定が指定された場合に、パケット中継処理情報を付加してデータをスヌープすることを特徴とする。
また、本発明は、ネットワークにより通信されるデータを中継し、該中継するデータの
うち指定された条件に合致するデータをスヌープするデータ中継装置であって、スヌープするデータに付加する情報の指定を付加情報指定として記憶した付加情報指定記憶手段と、前記付加情報指定で指定された情報を付加してデータをスヌープするスヌープ制御手段とを備え、前記付加情報指定には、送受信データのセットのスヌープを指定する送受信セット指定を含み、前記スヌープ制御手段は、前記送受信セット指定が指定された場合に、送信データをスヌープするときには受信データを付加し、受信データをスヌープするときには送信データを付加することによって、送受信データのセットをスヌープすることを特徴とする。
かかる発明によれば、スヌープするデータに付加する情報の指定を付加情報指定として記憶し、記憶した付加情報指定で指定された情報を付加してデータをスヌープすることとしたので、スヌープしたデータを分析するネットワーク分析装置が分析に必要な付加情報を得ることができる。
本発明によれば、スヌープするデータに付加する情報の指定を付加情報指定として記憶し、記憶した付加情報指定で指定された情報を付加してデータをスヌープするよう構成したので、スヌープしたデータを分析するネットワーク分析装置が分析に必要な付加情報を得ることができるという効果を奏する。
以下に添付図面を参照して、この発明に係るデータ中継装置およびデータ中継方法の好適な実施例を詳細に説明する。尚、本実施例では、本発明をパケットを中継するパケット中継装置に適用した場合を中心に説明する。
まず、本実施例1に係るパケット中継装置によるスヌープ機能について説明する。図1は、本実施例1に係るパケット中継装置によるスヌープ機能を説明するための説明図である。同図において、ネットワーク分析装置200は、スヌープ条件とスヌープ付加情報のセットを、パケット中継装置100の設定インタフェースを介して設定する。
ここで、スヌープ付加情報とは、スヌープするパケットに付加する情報であり、ネットワーク分析装置200は、分析に必要な情報を付加するようにパケット中継装置100を設定することができる。このようなスヌープ付加情報としては、方路などのパケット中継処理に関する属性情報や分析目的を示す情報などがある。
また、パケット中継装置100は、パケット中継装置100の設定インタフェースよりスヌープ条件とスヌープ付加情報のセットを受信して、装置内に保持する。そして、パケット中継装置100は、パケット1を送受信ポート1から受信して、パケット2として送受信ポート2から送信して、ネットワーク中継する。
この時、パケット中継装置100は、ネットワーク分析装置200が設定したスヌープ条件に合致したパケット1またはパケット2をコピーするとともに、スヌープ条件とセットであるスヌープ付加情報を付与して、パケット31として、スヌーパポートである送受信ポート3から送信する。すなわち、パケット31は、パケット1またはパケット2をコピーした上に、図示したようにスヌープ付加情報を内包するパケットである。
また、ネットワーク分析装置200は、スヌープ付加情報を内包したパケット31を受信し、パケット31に付随するスヌープ付加情報より、パケットには含まれないパケットの中継処理に関する属性情報および、パケットをスヌープするに至ったネットワーク分析装置の分析目的に関する情報を得ることができる。
このように、本実施例1に係るパケット中継装置100は、スヌープ条件に合致したパケットをスヌープする場合に、パケットにスヌープ付加情報を付与してスヌーパポートから送信することとしたので、ネットワーク分析装置200は、パケット以外に分析に必要な情報をパケット中継装置100から得ることができる。
次に、本実施例1に係るパケット中継装置100の構成について説明する。図2は、本実施例1に係るパケット中継装置100の構成を示す機能ブロック図である。尚、ここでは説明の便宜上、図20に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。
図2に示すように、このパケット中継装置100は、パケット分別部710と、中継テーブル720と、スヌープ条件テーブル730と、スヌープ付加情報テーブル110と、制御部120と、スヌープ制御部130と、パケット交換部760と、パケット更新部140とを有する。また、このパケット中継装置100は、送受信ポート1〜送受信ポート9を有する。
図3は、スヌープ条件テーブル730の一例を示す図である。同図に示すように、このスヌープ条件テーブル730は、スヌープ条件の各設定を識別する設定番号と、スヌープ条件情報とを設定ごとに記憶している。
また、スヌープ条件情報には、スヌープ条件種別と、パケットをスヌープする送受信ポート番号を示すスヌープポートと、スヌープするパケットが受信パケットであるか送信パケットであるかを示す対象送受信パケットと、特定のパケットをスヌープする場合にスヌープするパケットについての情報を指定する特定フロー情報テーブルに定義された各フローを識別する特定フロー識別子と、スヌーパポートが含まれる。
例えば、設定番号が「1」である設定は、スヌープ条件種別は「受信ポートスヌープ」であり、スヌープポートは「1」であり、特定のパケットだけをスヌープすることはなく、スヌーパポートは「3」である。また、設定番号が「5」である設定は、スヌープ条件種別は「受信特定フロースヌープ」であり、送受信ポート番号に関係なく特定の受信パケットをスヌープし、スヌープするパケット指定する特定フロー識別子は「flow1」である。
図4は、特定フロー情報テーブルの一例を示す図である。同図に示すように、この特定フロー情報テーブルは、特定フロー識別子と、受信ポートと、送信ポートと、パケットの送信元のIPアドレスを示すIP SAと、パケットの送信先のIPアドレスを示すIP DAと、プロトコルを示すIP Protocolと、ヘッダの中の情報であるIP TOSと、IPパケットの受信ポート番号を示すIP受信ポートと、IPパケットの送信ポート番号を示すIP送信ポートとを、スヌープするフローごとに記憶している。
例えば、特定フロー識別子が「flow1」であるフローは、IP SAが「192.168.3.1」であり、IP DAが「192.168.2.3」である全てのパケットをスヌープすることを指定している。
尚、図3のセル内斜線は、未設定を示す。例えば、受信ポートスヌープは、対象送受信パケットおよび特定フロー識別子と設定上無関係なので、対象送受信パケットおよび特定フロー識別子のセル値は、未設定であり、受信特定フロースヌープは、スヌープポートと設定上無関係なので、未設定としている。また、特定フロー情報テーブル中の「*」は、値が何でもよいことを示す。
スヌープ付加情報テーブル110は、スヌープしたパケットに付加する情報の指定を記憶したテーブルである。図5は、スヌープ付加情報テーブル110の一例を示す図である。同図に示すように、このスヌープ付加情報テーブル110は、設定番号と、スヌープ付加情報とを設定ごとに対応させて記憶している。
また、スヌープ付加情報には、パケット中継処理に関する情報の付加を指定するパケット中継処理情報付加指示と、任意付与情報とが含まれる。ここで、パケット中継処理情報付加指示としては、例えば、スヌープしたパケットの入出力ポートのセットである方路の付加指示や、スヌープしたパケットと条件が一致したスヌープ条件種別(従来の技術における受信ポートスヌープ/送信ポートスヌープ/受信特定フロースヌープ/送信特定フロースヌープ)の付加指示がある。また、任意付与情報は、ネットワーク分析装置200が分析目的を示す情報を付加する場合などに利用される。
例えば、設定番号が「1」である設定に対応するスヌープ付加情報は、パケット中継処理情報付加指示は「方路」であり、任意付与情報は「100」である。また、設定番号が「3」である設定に対応するスヌープ付加情報は、パケット中継処理情報付加指示は「方路」および「スヌープ条件種別」であり、任意付与情報はない。
制御部120は、パケット中継装置100全体の制御を行う処理部である。また、この制御部120は、ネットワーク分析装置200が設定インタフェースを介して設定するスヌープ条件情報をスヌープ条件テーブル730へ格納し、スヌープ付加情報をスヌープ付加情報テーブル110に格納する。
図6は、本実施例1に係る設定インタフェースの論理データ構造の一例を示す図である。同図に示すように、各設定1〜設定n(nは任意)は、スヌープ条件情報とスヌープ付加情報のセットからなる。また、スヌープ付加情報は、パケットには含まれないパケットの中継処理に関する属性情報の付加を指示するパケット中継処理情報付加指示と、パケットをスヌープするに至ったネットワーク分析装置の分析目的に応じた任意の値である任意付与情報からなる。
スヌープ制御部130は、スヌープ条件テーブル730を検索し、パケット分別部710より受信したパケットが、スヌープ条件に合致したならば、さらに、スヌープ付加情報テーブル110を検索し、スヌープするパケットに付加すべきスヌープ付加情報を得る。そして、パケットのコピー処理をパケット交換部760へ指示し、合致した条件が送信パケットのコピーならば、受信パケットをコピーしたパケットの更新をパケット更新部140へ指示し、合致した条件が受信パケットのコピーならば、受信パケットをコピーしたパケットの非更新をパケット更新部140へ指示する。
さらに、このスヌープ制御部130は、新たにスヌープ付加情報の付与をパケット更新部140へ指示する。すなわち、このスヌープ制御部130は、パケット中継処理情報付加指示に従い、パケット分別または、スヌープ条件テーブル730の検索によって得た、パケットのパケット中継処理情報のスヌープしたパケットへの付与をパケット更新部140へ指示する。また、このスヌープ制御部130は、スヌープしたパケットへの任意付与情報の付与をパケット更新部140へ指示する。
パケット更新部140は、パケット交換部760より受信したパケットを、パケットに対する上述の更新/非更新/付与指示に従い、更新/非更新/付与し、送信ポートより送信する。
このように、スヌープ制御部130がスヌープ付加情報テーブル110で指定されたスヌープ付加情報の付与をパケット更新部140に指示し、パケット更新部140がスヌープ制御部130の指示に従ってスヌープ付加情報をスヌープしたパケットに付加することによって、ネットワーク分析装置200は、分析に必要な情報を得ることができる。
次に、本実施例1に係るパケット中継装置100の処理手順について説明する。図7は、本実施例1に係るパケット中継装置100の処理手順を示すフローチャートである。同図に示すように、このパケット中継装置100は、受信ポートからパケットを受信し(ステップS701)、受信したパケットをパケット交換部760が格納するとともに、受信したパケットのパケットフォーマットをパケットのヘッダ情報等からパケット分別部710が判別してパケットを分別する(ステップS702)。
そして、パケット分別部710がパケットの分別結果を用いて中継テーブル720を検索してパケットの宛先情報を取得し(ステップS703)、取得した宛先情報、ネットワーク中継に即した更新情報およびパケットのヘッダ部をスヌープ制御部130に送信し、スヌープ制御部130を介してネットワーク中継としてのパケットの更新をパケット更新部140に指示する(ステップS704)
また、スヌープ制御部130が、スヌープ条件テーブル730を検索し、パケットがスヌープ条件に合致するか否かを判定し(ステップS705)、スヌープ条件に合致した場合には、パケットのコピーおよびコピーパケットの格納をパケット交換部760に指示する(ステップS706)。
そして、合致したスヌープ条件が送信パケットのコピーであるか否かを判定し(ステップS707)、合致したスヌープ条件が送信パケットのコピーである場合には、受信パケットをコピーしたパケットの更新をパケット更新部140に指示し(ステップS708)、合致したスヌープ条件が受信パケットのコピーである場合には、受信パケットをコピーしたパケットの非更新をパケット更新部140に指示する(ステップS709)。
また、スヌープ制御部130が、合致したスヌープ条件に対応するスヌープ付加情報をスヌープ付加情報テーブル110を検索して特定し、特定したスヌープ付加情報の付与をパケット更新部140に指示する(ステップS710)。一方、パケットがいずれのスヌープ条件にも合致しなかった場合には、ステップS711に進む。
そして、パケット交換部760が格納しているパケットを宛先情報に対応する送信ポートへパケット更新部140を経由して送信し(ステップS711)、パケット更新部140がパケット交換部760から受信したパケットに対してスヌープ制御部130の指示を実行し(ステップS712)、送信ポートより送信する(ステップS713)。
このように、スヌープ制御部130が合致したスヌープ条件に対応するスヌープ付加情報をスヌープ付加情報テーブル110を検索して特定し、特定したスヌープ付加情報の付与をパケット更新部140に指示し、パケット更新部140がスヌープ制御部130の指示に従って付加情報を付与することによって、ネットワーク分析装置200は分析に必要な情報をパケット中継装置100から取得することができる。
次に、本実施例1に係るパケット中継装置100によるパケット中継の一例について説明する。図8は、本実施例1に係るパケット中継装置100によるパケット中継の一例を示す図である。
同図は、本実施例1に係るパケット中継装置100と、パケット中継装置100が中継するパケットと、中継するパケットをパケット中継装置100がコピーしたパケットと、パケット中継装置100が接続するネットワークおよび端末と、ネットワーク分析装置200aおよび200bとを示す。また、「(1)〜(9)」は、それぞれ、パケット中継装置100の送受信ポート1〜送受信ポート9を示す。
同図において、ネットワークAに属するある端末が、ネットワークBに属するある端末へ向けて、パケット1を送信する。このパケット1の宛先IPアドレス(DA; Destination Address)は、「192.168.0.1」である。また、ネットワークCに属するある端末が、ネットワークDのある端末へ向けて、パケット4を送信する。このパケット4の宛先IPアドレスは、「192.168.0.1」である。
そして、パケット中継装置100は、送受信ポート1からパケット1を受信し、パケット2として送受信ポート2から送信し、ネットワーク中継する。パケット2の宛先IPアドレスは、「192.168.0.1」である。
次に、ネットワークBに属し、IPアドレスが「192.168.0.1」である、ある端末がパケット2を受信する。同時に、パケット中継装置100は、ネットワーク分析装置A200aが設定インタフェースを介して設定した図3の設定番号が「1」の設定に従って、パケット1をコピーして、パケット33として、指定スヌーパポートである送受信ポート3からネットワーク分析装置A200aへ向けて送信する。
また、パケット中継装置100は、送受信ポート4からパケット4を受信し、パケット5として送受信ポート5から送信し、ネットワーク中継する。パケット5の宛先IPアドレスは、「192.168.0.1」である。
次に、ネットワークDに属し、IPアドレスが「192.168.0.1」である、ある端末がパケット5を受信する。同時に、パケット中継装置100は、ネットワーク分析装置A200aが設定インタフェースを介して、設定した図3の設定番号が「2」である設定に従って、パケット4をコピーして、パケット34として、指定スヌーパポートである送受信ポート3からネットワーク分析装置A200aへ向けて送信する。
この際、ネットワークA−送受信ポート1−送受信ポート2−ネットワークBは、VLANabを、ネットワークC−送受信ポート4−送受信ポート5−ネットワークDは、VLANcdを、パケット中継装置100のポートVLANの機能によって、構成するので、それぞれ独立したネットワーク中継空間となり、その結果、ネットワークBとネットワークDは、宛先IPアドレス「192.168.0.1」を重複して使用している。
したがって、パケット33とパケット34の宛先IPアドレスは、同じ、「192.168.0.1」となり、これだけでは、ネットワーク分析装置A200aは、パケット33とパケット34の発信元ネットワークがネットワークAなのかネットワークCなのか判別できないが、パケット中継装置100は、図5の設定番号「1」および「2」の設定のパケット中継処理情報付加指示「方路」に従い、それぞれ、方路(1)→(2)、方路(4)→(5)を、コピーしたパケットに対し、付与して送信する。
ゆえに、ネットワーク分析装置A200aは、パケット33がネットワークAを発信元ネットワークとするパケットであり、パケット34がネットワークCを発信元ネットワークとするパケットであると判別することができる。また、パケット中継装置100は、パケット33とパケット34に対して、図5の設定番号「1」および「2」の設定に従い、任意付与情報「100」を付与して送信する。つまり、ネットワーク分析装置A200aは、同じ分析目的をもって、図5の設定番号「1」および「2」の設定を行っている。
上述のようにすることによって、ネットワーク分析装置A200aは、分析目的(ここでは任意付与情報「100」)のために、パケット33がネットワークAに属し、パケット34がネットワークCに属することを判別することができ、分析目的を達することができる。そして、ネットワーク管理者が、分析結果から、再度パケット中継装置100へ適切な設定を行うことができる。
また、ネットワークEに属するある端末が、ネットワークFに属するある端末へ向けて、パケット6を送信する。パケット6の宛先IPアドレスは、「192.169.0.1」である。パケット中継装置100は、送受信ポート6からパケット6を受信し、IPルーティング処理およびNAT(Network Address Translation)処理を行い、パケット7として送受信ポート7から送信し、ネットワーク中継する。ここで、パケット7の宛先IPアドレスは、「192.168.2.2」である。
また、NAT処理とは、パケット中継装置100が、パケットの宛先または発信元アドレスを変換して、中継する処理である。すなわち、パケット中継装置100は、パケット6の宛先IPアドレス「192.169.0.1」を「192.168.2.2」へ変換する。
一般的にNAT処理は、内部ネットワークと外部ネットワークを分けて、内部ネットワークが外部へ公開するネットワークアドレスを制限するネットワーク構成をとる時に、パケット中継装置が行う処理である。図8においては、ネットワークEが外部ネットワークであり、ネットワークFが内部ネットワークであり、「192.169.0.1」が内部ネットワークFが外部ネットワークEに対して公開するアドレスである。
次に、ネットワークFに属し、IPアドレスが「192.168.2.2」である、ある端末がパケット7を受信する。同時に、パケット中継装置100は、ネットワーク分析装置B200bが設定インタフェースを介して設定した図3の設定番号が「3」の設定に従って、パケット6をコピーし、図5の設定番号「3」のパケット中継処理情報付加指示どおり、「方路(6)→(7)」とスヌープ条件種別である「受信ポートスヌープ」を付与し、パケット81として、指定スヌーパポートである送受信ポート8からネットワーク分析装置B200bへ向けて送信する。
また、同時に、パケット中継装置100は、ネットワーク分析装置B200bが設定インタフェースを介して、設定した図3の設定番号が「4」の設定に従って、パケット7をコピーし、図5の設定番号「4」のパケット中継処理情報付加指示どおり、「方路(6)→(7)」とスヌープ条件種別である「送信ポートスヌープ」を付与し、パケット82として、指定スヌーパポートである送受信ポート8からネットワーク分析装置B200bへ向けて送信する。
そして、ネットワーク分析装置B200bは、パケット81とパケット82を受信する。ここで、ネットワーク分析装置B200bは、同一の「方路(6)→(7)」をもつパケット81とパケット82に関して、パケット81のスヌープ条件種別が受信ポートスヌープであり、パケット82のスヌープ条件種別が送信ポートスヌープであることから、確かに、外部ネットワークEが、内部ネットワークFが公開しているアドレスへ向けてパケットを送信し、パケット中継装置100が、内部ネットワークのアドレスへ変換して、内部ネットワークFへ向けてパケットを送信したことを、確認できる。
上述のようにすることによって、ネットワーク分析装置B200bは、上述で確認した分析目的を達することができる。そして、ネットワーク管理者が、分析結果から、例えば、設定が間違っていた場合は、再度パケット中継装置100へ適切な設定を行うことができる。
また、ネットワークGに属する端末Gaが、ネットワークFに属するある端末へ向けて、パケット91を送信する。ここで、端末GaのIPアドレスは、「192.168.3.1」である。また、パケット91の宛先IPアドレスは、「192.168.2.3」であり、発信元IPアドレス(SA; Source Address)は、「192.168.3.1」である。
また、ネットワークGに属する端末Gbが、ネットワークFに属するある端末へ向けて、パケット92を送信する。ここで、端末GbのIPアドレスは、「192.168.3.2」である。また、パケット92の宛先IPアドレスは、「192.168.2.3」で、発信元IPアドレスは、「192.168.3.2」である。
また、ネットワークGに属する端末Gcが、ネットワークFに属するある端末へ向けて、パケット93を送信する。ここで、端末GcのIPアドレスは、「192.168.3.3」である。また、パケット93の宛先IPアドレスは、「192.168.2.3」で、発信元IPアドレスは、「192.168.3.3」である。
すると、パケット中継装置100は、送受信ポート9からパケット91を受信し、IPルーティング処理を行い、送受信ポート7から送信し、ネットワーク中継する。尚、図8において、パケット中継装置100が送受信ポート7から送信したパケットのパケットフォーマットは、省略する。
同時に、パケット中継装置100は、ネットワーク分析装置B200bが設定インタフェースを介して設定した図3の設定番号が「5」の設定に従って、パケット91をコピーし、図5の設定番号「5」のパケット中継処理情報付加指示どおり、「方路(9)→(7)」および任意付与情報「901」を付与し、パケット83として、指定スヌーパポートである送受信ポート8からネットワーク分析装置B200bへ向けて送信する。
この際、設定番号が「5」の設定は、受信特定フロースヌープなので、パケット中継装置100は、パケット内の各フィールド値を、特定フロー識別子「flow1」で表現される図4のフローと比較する。すると、パケット91の宛先IPアドレス(IP DA)は、「192.168.2.3」で、発信元IPアドレス(IP SA)は、「192.168.3.1」であるので、「flow1」と一致する。尚、本実施例1においては、図3と図4が分かれている場合について説明したが、特に設定インタフェースとしては、図3と図4が分かれている必要はない。
また、パケット中継装置100は、送受信ポート9からパケット92を受信し、IPルーティング処理を行い、送受信ポート7から送信し、ネットワーク中継する。尚、図8において、パケット中継装置100が送受信ポート7から送信したパケットのパケットフォーマットは、省略する。
同時に、パケット中継装置100は、ネットワーク分析装置B200bが設定インタフェースを介して設定した図3の設定番号が「6」の設定に従って、パケット92をコピーし、図5の設定番号「6」のパケット中継処理情報付加指示どおり、「方路(9)→(7)」および任意付与情報「901」を付与し、パケット84として、指定スヌーパポートである送受信ポート8からネットワーク分析装置B200bへ向けて送信する。
この際、設定番号が「6」の設定は、受信特定フロースヌープなので、パケット中継装置100は、パケット内の各フィールド値を、特定フロー識別子「flow2」で表現される図4のフローと比較する。すると、パケット92の宛先IPアドレス(IP DA)は、「192.168.2.3」で、発信元IPアドレス(IP SA)は、「192.168.3.2」であるので、「flow2」と一致する。
また、パケット中継装置100は、送受信ポート9からパケット93を受信し、IPルーティング処理を行い、送受信ポート7から送信し、ネットワーク中継する。尚、図8において、パケット中継装置100が送受信ポート7から送信したパケットのパケットフォーマットは、省略する。
同時に、パケット中継装置100は、ネットワーク分析装置B200bが設定インタフェースを介して設定した図3の設定番号が「7」の設定に従って、パケット93をコピーし、図5の設定番号「7」のパケット中継処理情報付加指示どおり、「方路(9)→(7)」および任意付与情報「902」を付与し、パケット85として、指定スヌーパポートである送受信ポート8からネットワーク分析装置B200bへ向けて送信する。
この際、設定番号が「7」の設定は、受信特定フロースヌープなので、パケット中継装置100は、パケット内の各フィールド値を、特定フロー識別子「flow3」で表現される図4のフローと比較する。すると、パケット93の宛先IPアドレス(IP DA)は、「192.168.2.3」で、発信元IPアドレス(IP SA)は、「192.168.3.3」であるので、「flow3」と一致する。
ネットワーク分析装置B200bは、パケット83とパケット84とパケット85を受信する。すると、ネットワーク分析装置B200bは、任意付与値「901」によって、パケット83とパケット84が同一の分析目的のためにスヌープしたものと即座に判断でき、パケット中継装置100が行ったのと同じフローの比較を行うという無駄な処理を行わずに済む。
同様に、ネットワーク分析装置B200bは、任意付与値「902」によって、パケット85がパケット83およびパケット84とは違う分析目的のためにスヌープしたものと即座に判断でき、パケット中継装置100が行ったのと同じフローの比較を行うという無駄な処理を行わずに済む。
上述のように、ネットワーク分析装置に無駄な処理負荷をかけないことによって、ネットワーク分析装置の分析能力/分析性能を、他の有益な分析へ振り分けることが可能となる。そして、ネットワーク管理者が、分析結果から、再度パケット中継装置100へ適切な設定を行うことができる。
尚、本実施例1においては、パケット33、パケット34、パケット81、パケット82、パケット83、パケット84、パケット85のスヌープ付与情報をパケットの先頭に付与する場合について説明したが、パケット中の付与位置については、特に制限はない。また、パケットに付随して付与するスヌープ付与情報は、一般的なプロトコルフォーマットで規定しているタグ/ラベルを利用してもよい。一般的なプロトコルフォーマットで規定しているタグ/ラベルとしては、例えば、VLAN-TagやMPLS Label等がある。
上述してきたように、本実施例1では、スヌープしたパケットに付与する付加情報の指定をスヌープ付加情報テーブル110が記憶し、スヌープしたパケットにスヌープ付加情報テーブル110に記憶された付加情報指定に基づいて付加情報を付与するようにスヌープ制御部130がパケット更新部140に指示し、スヌープしたパケットにスヌープ制御部130の指示に従ってパケット更新部140が付加情報を付与することとしたので、パケット中継装置100は、ネットワーク分析装置が必要とする情報を提供することができる。
次に、パケット中継装置が複数のネットワーク利用者によって共用されている場合について説明する。本実施例2に係るパケット中継装置は、「ユーザ1」または「ユーザ2」をユーザ識別子とする二つのユーザにより共用されている。
また、本実施例2に係るパケット中継装置が中継するネットワークは、タグVLANを構成する。ここでタグVLANとは、パケットの先頭にVLAN Tagと呼ぶヘッダを付与してパケットを送受信することによって、このVLAN Tag値をもとに、端末/ネットワークの仮想的なグループを設定する機能である。
まず、本実施例2に係るパケット中継装置300の構成について説明する。図9は、本実施例2に係るパケット中継装置300の構成を示す機能ブロック図である。尚、ここでは説明の便宜上、図20に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。
図9に示すように、このパケット中継装置300は、パケット分別部310と、ユーザ識別テーブル320と、中継テーブル720と、制御部330と、スヌープ条件テーブル340と、スヌープ付加情報テーブル350と、スヌープ制御部360と、パケット交換部760と、パケット更新部370とを有する。また、このパケット中継装置300は、送受信ポート10〜送受信ポート16を有する。
パケット分別部310は、受信パケットのパケットフォーマットをパケットのヘッダ情報から判別してパケットを分別し、パケット分別結果に応じたパケットの宛先情報を中継テーブル720から検索してパケットのヘッダ部、宛先情報およびネットワーク中継に即したパケット更新情報をスヌープ制御部360へ送信する処理部である。
また、このパケット分別部310は、受信したパケットからVLAN Tag値を取り出し、取り出したVLAN Tag値からパケットのユーザ識別子をユーザ識別テーブル320を検索して特定する。そして、特定したユーザ識別子をスヌープ制御部360へ送信する。
ユーザ識別テーブル320は、VLAN Tag値からユーザ識別子を検索する情報を記憶したテーブルである。図10は、ユーザ識別テーブル320の一例を示す図である。同図に示すように、このユーザ識別テーブル320は、VLAN Tag値とユーザ識別子を対応させてVLAN Tag値ごとに記憶している。
例えば、VLAN Tag値が「10」であるパケットのユーザ識別子は「ユーザ1」であり、VLAN Tag値が「11」であるパケットのユーザ識別子も「ユーザ1」であるが、VLAN Tag値が「13」であるパケットのユーザ識別子は「ユーザ2」である。
パケット分別部310が、このユーザ識別テーブル320を用いてVLAN Tag値からユーザ識別子を検索し、検索したユーザ識別子をスヌープ制御部360へ送信することによって、パケット中継装置300は、スヌープしたパケットにユーザ識別子を付与することができる。
制御部330は、パケット中継装置300全体の制御を行う処理部であり、ネットワーク分析装置400が設定インタフェースを介して設定するスヌープ条件情報をスヌープ条件テーブル340へ格納し、スヌープ付加情報をスヌープ付加情報テーブル350に格納する。
図11は、スヌープ条件テーブル340の一例を示す図である。同図に示すように、例えば、設定番号が「8」である設定は、スヌープ条件種別は「受信ポートスヌープ」であり、スヌープポートは「10」であり、特定のパケットだけをスヌープすることはなく、スヌーパポートは「16」である。
図12は、スヌープ付加情報テーブル350の一例を示す図である。同図に示すように、例えば、設定番号が「8」である設定に対応するスヌープ付加情報のパケット中継処理情報付加指示は「ユーザ識別子」である。
スヌープ制御部360は、スヌープ条件テーブル340を検索し、パケット分別部310より受信したパケットが、スヌープ条件に合致したならば、さらに、スヌープ付加情報テーブル350を検索し、パケットに付加すべきスヌープ付加情報、すなわち、ユーザ識別子を得る。
そして、パケットのコピー処理をパケット交換部760へ指示し、合致した条件が送信パケットのコピーならば、受信パケットをコピーしたパケットの更新をパケット更新部370へ指示し、合致した条件が受信パケットのコピーならば、受信パケットをコピーしたパケットの非更新をパケット更新部370へ指示する。また、このスヌープ制御部360は、スヌープ付加情報、すなわちユーザ識別子の付与をパケット更新部370へ指示する。
パケット更新部370は、パケット交換部760より受信したパケットを、パケットに対する上述の更新/非更新/付与指示に従い、更新/非更新/付与し、送信ポートより送信する。
このパケット更新部370が、スヌープ制御部360の指示に従って、スヌープしたパケットにユーザ識別子を付与することによって、ネットワーク分析装置400は、ユーザ毎のパケット従量課金処理を行うことができる。
次に、本実施例2に係るパケット中継装置300によるパケット中継の一例について説明する。図13は、本実施例2に係るパケット中継装置300によるパケット中継の一例を示す図である。
同図は、本実施例2に係るパケット中継装置300と、パケット中継装置300が中継するパケットと、中継するパケットをパケット中継装置300がコピーしたパケットと、パケット中継装置300が接続するネットワークおよび端末と、ネットワーク分析装置400とを示す。また、「(10)〜(16)」は、それぞれ、パケット中継装置300の送受信ポート10〜送受信ポート16を示す。
同図において、ネットワークH―送受信ポート10は、VLAN Tag値が「10」のタグVLANを構成し、パケット10のヘッダ部はVLAN Tag値「10」(図13中「Tag10」と付記)をもつVLAN Tagヘッダを内包する。以降、同様に、ネットワークI―送受信ポート11は、VLAN Tag値「11」、 ネットワークJ―送受信ポート12は、VLAN Tag値「12」、ネットワークK―送受信ポート13は、VLAN Tag値「13」、ネットワークL―送受信ポート14は、VLAN Tag値「14」、ネットワークM―送受信ポート15は、VLAN Tag値「15」のタグVLANを構成する。
また、パケット中継装置300は、あるネットワーク利用者であるユーザ1と、あるネットワーク利用者であるユーザ2によって、共用されている。一般的に、IDC(Internet Data Center)が、このような形態で自社のパケット中継装置を、自社のユーザ社に対して提供する。
図13において、ユーザ1は、ネットワークHとネットワークIとネットワークJによって、ユーザ1のユーザ・ネットワークを構成し、ユーザ2は、ネットワークKとネットワークLとネットワークMによって、ユーザ2のユーザ・ネットワークを構成する。ユーザへのパケット中継装置の提供者は、各ユーザへ複数のVLAN Tag値をアサインし、ユーザは、アサインVLAN Tag値を使用して、ネットワークを構成し、ユーザへのパケット中継装置の提供者は、ユーザ識別テーブル320へ、図10のような設定を行う。
図13において、パケット中継装置300は、送受信ポート10からパケット10を受信し、IPルーティング処理して、パケット120としてネットワーク中継する。同時に、パケット中継装置300は、ネットワーク分析装置400が、設定インタフェースを介して設定した図11の設定番号「8」に従い、パケット10をコピーして、図12の設定番号「8」のパケット中継処理情報付加指示どおり、ユーザ識別子「ユーザ1」を付与して、設定スヌーパポートである送受信ポート16からパケット160として送出する。
以降同様に、パケット中継装置300は、図11の設定番号「9」の設定に従ってパケット161を、設定番号「10」の設定に従ってパケット163を、設定番号「11」の設定に従ってパケット164を、送受信ポート16から送出する。
上述の際、パケット中継装置300内のパケット分別部310は、ユーザ識別テーブル320を検索し、ユーザ識別子「ユーザ1」または「ユーザ2」を得る。すなわち、ユーザ識別テーブル320は、図10のようにカラム「VLAN Tag値」とカラム「ユーザ識別子」を内包しており、本実施例2においては、パケット中継装置300は、VLAN Tag値を元にユーザ識別子を決定する。
尚、一般的にユーザ識別子は、パケット中/パケット外の様々な値の組合わせによって、決定されうる。ユーザ識別子を決定したパケット分別部320は、ユーザ識別子をスヌープ制御部360へ送信し、スヌープ制御部360は、スヌープ付加情報テーブル350のパケット中継処理情報付加指示に従い、パケット更新部370へ、パケットへのユーザ識別子付与指示を送信する。その結果、パケット中継装置300は、パケットに対し、ユーザ識別子を付与して送信する。
そして、ネットワーク分析装置400は、パケット160、パケット161、パケット163、パケット164を受信し、これらの受信パケットがもつユーザ識別子「ユーザ1」および「ユーザ2」を元に、パケット中継装置300が、ネットワーク中継したパケット量を、ユーザ毎に計数することができる。このようにして、ネットワーク分析装置400は、ネットワーク管理装置として、例えば、ユーザ毎のパケット従量課金処理を行うことができる。
上述してきたように、本実施例2では、ユーザ識別テーブル320にVLAN Tag値とユーザ識別子とを対応させて記憶し、受信したパケットのVLAN Tag値からパケット分別部310がユーザ識別テーブル320を検索してユーザ識別子を取り出し、スヌープしたパケットにスヌープ制御部360がスヌープ付加情報テーブル350に記憶された付加情報指定に基づいてユーザ識別子を付与するようにパケット更新部370に指示し、スヌープしたパケットにユーザ識別子をパケット更新部370がスヌープ制御部360の指示に従って付与することとしたので、ネットワーク分析装置400は、ユーザ毎のパケット従量課金処理を行うことができる。
次に、パケット中継装置が送受信パケットをセットにしてスヌープする場合について説明する。まず、本実施例3に係るパケット中継装置500の構成について説明する。図14は、本実施例3に係るパケット中継装置500の構成を示す機能ブロック図である。尚、ここでは説明の便宜上、図20に示した各部と同様の役割を果たす機能部については同一符号を付すこととしてその詳細な説明を省略する。
図14に示すように、このパケット中継装置500は、パケット分別部510と、フィルタリングテーブル520と、中継テーブル720と、制御部530と、スヌープ条件テーブル540と、スヌープ付加情報テーブル550と、スヌープ制御部560と、パケット交換部760と、パケット更新部570とを有する。また、このパケット中継装置500は、送受信ポート6〜送受信ポート8および送受信ポート17を有する。
パケット分別部510は、受信パケットのパケットフォーマットをパケットのヘッダ情報から判別してパケットを分別し、パケット分別結果に応じたパケットの宛先情報を中継テーブル720から検索してパケットのヘッダ部、宛先情報およびネットワーク中継に即したパケット更新情報をスヌープ制御部560へ送信する処理部である。
また、このパケット分別部510は、フィルタリングテーブル520を検索してパケットがフィルタリングテーブル520が格納するフィルタリング条件に合致した場合には、そのパケットをフィルタリングテーブル520の設定に従い、廃棄または、中継する。
フィルタリングテーブル520は、不正なパケットなどを登録したテーブルであり、設定インタフェースを介してネットワーク分析装置600によって設定される。図15は、フィルタリングテーブル520の一例を示す図である。
同図に示すように、このフィルタリングテーブル520は、フィルタリングするパケットの受信ポート、送信ポート、IP SA、IP DA、IP Protocol、IP TOS、IP受信ポート、IP送信ポート、許可/不許可をフィルタリングするパケットごとに記憶している。例えば、受信ポートが「17」であり、発信元アドレスが「192.168.1.*」であり、宛先アドレスが「192.169.0.1」であるパケットについては、中継が許可されていない。
パケット分別部510が、このフィルタリングテーブル520を用いてフィルタリング条件に合致したパケットを廃棄することによって、パケット中継装置500は、不正なパケットの侵入などを防止することができる。
制御部530は、パケット中継装置500全体の制御を行う処理部であり、ネットワーク分析装置600が設定インタフェースを介して設定するスヌープ条件情報をスヌープ条件テーブル540へ格納し、スヌープ付加情報をスヌープ付加情報テーブル550に格納し、フィルタリング条件をフィルタリングテーブル520に格納する。
図16は、スヌープ条件テーブル540の一例を示す図である。同図に示すように、例えば、設定番号が「4」である設定は、スヌープ条件種別は「送信ポートスヌープ」であり、スヌープポートは「7」であり、特定のパケットだけをスヌープすることはなく、スヌーパポートは「8」である。
図17は、スヌープ付加情報テーブル550の一例を示す図である。同図に示すように、このスヌープ付加情報テーブル550は、スヌープ付加情報として受信送信パケットセットコピーを含んでいる。例えば、設定番号が「4」である設定に対応するスヌープ付加情報は、パケット中継処理情報付加指示は「方路、スヌープ条件種別」であり、受信送信パケットをセットでコピーすることを指定している。
スヌープ制御部560は、スヌープ条件テーブル540を検索し、パケット分別部510より受信したパケットが、スヌープ条件に合致したならば、さらに、スヌープ付加情報テーブル550を検索し、パケットに付加すべきスヌープ付加情報、すなわち、方路およびスヌープ条件種別を得る。
そして、このスヌープ制御部560は、方路およびスヌープ条件種別の付加指示をパケット更新部570に行う。また、スヌープ付加情報テーブル550には、受信送信パケットセットコピーが指定されているので、受信送信パケットセットのコピー処理をパケット交換部760へ指示する。
パケット更新部570は、パケット交換部760より受信した受信送信パケットセットを、パケットに対する上述の付与指示に従い、付加情報を付与し、送信ポートより送信する。
次に、本実施例3に係るパケット中継装置500によるパケット中継の一例について説明する。図18は、本実施例3に係るパケット中継装置500によるパケット中継の一例を示す図である。
同図は、本実施例3に係るパケット中継装置500と、パケット中継装置500が中継するパケットと、中継するパケットをパケット中継装置500がコピーしたパケットと、パケット中継装置500が接続するネットワークと、ネットワーク分析装置600とを示す。また、「(6)〜(8)および(17)」は、それぞれ、パケット中継装置500の送受信ポート6〜送受信ポート8および送受信ポート17を示す。
同図において、パケット中継装置500は、実施例1のパケット中継装置100と同様に、パケット6を受信し、パケット7として送信し、ネットワーク中継を行う。同時に、パケット中継装置500は、図17の設定番号が「4」の設定に従い、パケット6およびパケット7をコピーして、方路とスヌープ条件種別を付与して、パケット81とパケット82のセットとして、設定スヌーパポートである送受信ポート8から、ネットワーク分析装置600へ向けて送信する。
実施例1のパケット中継装置100と異なる点は、パケット中継装置500が、パケット81とパケット82を一つのパケットとして送信する点である。パケット中継装置500は、図17の設定番号が「4」の設定の「受信送信パケットセットコピー」が「○」であることをもって、受信時のパケット状態と送信時のパケット状態をセットにして、設定スヌーパポートから送信する。このようにしたほうが、ネットワーク分析装置600は、同一パケットの受信時の状態と送信時の状態を、簡単に関連付けて分析することができるという効果がある。たとえば、同一パケットの受信時の状態と送信時の状態を関連付けて分析する例としては、以下がある。
図18において、パケット中継装置500は、パケット17を受信し、送受信ポート7へ送信し、ネットワーク中継を行う。このネットワーク中継において、パケット中継装置500は、パケット17の宛先IPアドレス(192.169.0.1)をネットワークFの内部アドレス(192.168.2.2)へ変換して送信する(NAT処理)。同時に、パケット中継装置500は、図17の設定番号が「4」の設定にしたがい、パケット17の受信時の状態と送信時の状態をコピーして、パケット86とパケット87のセットにして、送受信ポート8から送信する。
また、図18において、ネットワークP(192.172.1.*)のある端末は、送信元アドレスをネットワークに属するアドレスではない、192.168.1.3と偽り、ネットワークFが外部へ公開しているアドレス(192.169.0.1)を宛先IPアドレスとして、パケットを送信している。従って、パケット中継装置500が、送受信ポート17から送信元アドレス192.168.1.3を持つパケットを受信するというような、本来ありえないことが起こっている。
このような状況下において、ネットワークFは、問題となる送信パケットの情報をネットワーク分析装置600へ送る。すると、ネットワーク分析装置600は、受信した問題となる送信パケットの情報と各スヌープパケットの送信時状態コピーとを比較して、分析対象とするパケットを絞り込む。
そして、ネットワーク分析装置600は、受信した送信パケットの情報による絞込みの後、対応する受信時状態コピーを分析する。この際、1つのパケットに対する送信時の状態と受信時の状態が一連の1つのデータとして管理されているので、ネットワーク分析装置600は、送信時の状態から受信時の状態を特定することが簡単にできる。
これが、受信時と送信時で別々のパケットとして、ネットワーク分析装置600が受信したならば、ネットワーク分析装置600は、その受信―送信の関連性を、その他の情報(例えば、パケット中継装置500の中継テーブル720等)から、構築する必要が生じる。
そして、ネットワーク分析装置600は、受信時状態コピーを分析した後、ネットワークP(192.172.1.*)のある端末が、送信元アドレスをネットワークに属するアドレスではない、192.168.1.3と偽り、ネットワークFが外部へ公開しているアドレス(192.169.0.1)を宛先IPアドレスとして、パケットを送信していることを突き止める。
そして、ネットワーク分析装置600は、送信パケットとの対応関係によって判明した受信パケットの状態に応じて、図15のようにフィルタリングテーブル520へエントリを追加し、設定を修正することによって、不正パケットをパケット中継装置500において、遮断することができる。すなわち、図15においては、受信ポート17から発信元アドレス192.168.1.*をもち、かつ宛先アドレス192.169.0.1をもつパケットについては、中継を「不許可」とするように設定している。
まとめると、図18において、ネットワーク分析装置600は、パケット86とパケット87のセットをもとに、同一パケットの受信時の状態と送信時の状態を簡単に関連付けて分析し、上記事象の不正侵入の試みを検知し、防止するような設定をすることができる。
上述してきたように、本実施例3では、スヌープ付加情報テーブル550がスヌープ付加情報として受信送信パケットセットをコピーする指定を記憶し、スヌープ制御部560がスヌープ付加情報テーブル550に記憶された付加情報指定に基づいてパケット交換部760に受信送信パケットセットをコピーするように指示し、パケット交換部760がスヌープ制御部560の指示に従って受信送信パケットセットをコピーすることとしたので、ネットワーク分析装置600は、同一パケットの受信時の状態と送信時の状態を、簡単に関連付けて分析することができる。
(付記1)ネットワークにより通信されるデータを中継し、該中継するデータのうち指定された条件に合致するデータをスヌープするデータ中継装置であって、
スヌープするデータに付加する情報の指定を付加情報指定として記憶した付加情報指定記憶手段と、
前記付加情報指定で指定された情報を付加してデータをスヌープするスヌープ制御手段と
を備えたことを特徴とするデータ中継装置。
(付記2)前記付加情報指定には、パケット中継処理に関する情報であるパケット中継処理情報を付加する情報として指定するパケット中継処理情報付加指定を含み、
前記スヌープ制御手段は、前記パケット中継処理情報付加指定が指定された場合に、パケット中継処理情報を付加してデータをスヌープすることを特徴とする付記1に記載のデータ中継装置。
(付記3)前記付加情報指定には、任意の情報である任意情報を付加する情報として指定する任意情報付加指定を含み、
前記スヌープ制御手段は、前記任意情報付加指定が指定された場合に、指定された任意情報を付加してデータをスヌープすることを特徴とする付記1または2に記載のデータ中継装置。
(付記4)前記付加情報指定には、送受信データのセットのスヌープを指定する送受信セット指定を含み、
前記スヌープ制御手段は、前記送受信セット指定が指定された場合に、送信データをスヌープするときには受信データを付加し、受信データをスヌープするときには送信データを付加することによって、送受信データのセットをスヌープすることを特徴とする付記1または2に記載のデータ中継装置。
(付記5)前記パケット中継処理情報には、送受信ポートを識別する送受信ポート識別子を含み、
前記スヌープ制御手段は、前記送受信ポート識別子がパケット中継処理情報付加指定で指定された場合に、受信ポートおよび送信ポートの送受信ポート識別子を方路として付加することを特徴とする付記2に記載のデータ中継装置。
(付記6)前記パケット中継処理情報には、スヌープするパケットの条件を指定するスヌープ条件種別を含み、
前記スヌープ制御手段は、前記スヌープ条件種別がパケット中継処理情報付加指定で指定された場合に、スヌープするデータのスヌープ条件種別を付加することを特徴とする付記2に記載のデータ中継装置。
(付記7)前記パケット中継処理情報には、利用者を識別する利用者識別子を含み、
前記スヌープ制御手段は、前記利用者識別子がパケット中継処理情報付加指定で指定された場合に、スヌープするデータの利用者識別子を付加することを特徴とする付記2に記載のデータ中継装置。
(付記8)前記スヌープ制御手段は、前記利用者識別子をVLAN Tagを用いて特定することを特徴とする付記7に記載のデータ中継装置。
(付記9)ネットワークにより通信されるデータを中継し、該中継するデータのうち指定された条件に合致するデータをスヌープするデータ中継方法であって、
スヌープするデータに付加する情報の指定を付加情報指定として設定する付加情報指定設定工程と、
前記付加情報指定で指定された情報を付加してデータをスヌープするスヌープ制御工程と
を含んだことを特徴とするデータ中継方法。
(付記10)ネットワークにより通信されるデータを中継し、該中継するデータのうち指定された条件に合致するデータをスヌープするデータ中継プログラムであって、
スヌープするデータに付加する情報の指定を付加情報指定として設定する付加情報指定設定手順と、
前記付加情報指定で指定された情報を付加してデータをスヌープするスヌープ制御手順と
をコンピュータに実行させることを特徴とするデータ中継プログラム。
以上のように、本発明にかかるデータ中継装置およびデータ中継方法は、ネットワークの分析に有用であり、特に、ネットワークへの不正な侵入の検知やパケット従量課金に必要な情報を必要とするネットワーク分析装置と組み合わせて使用する場合に適している。
本実施例1に係るパケット中継装置によるスヌープ機能を説明するための説明図である。
本実施例1に係るパケット中継装置の構成を示す機能ブロック図である。
スヌープ条件テーブルの一例を示す図である。
特定フロー情報テーブルの一例を示す図である。
スヌープ付加情報テーブルの一例を示す図である。
本実施例1に係る設定インタフェースの論理データ構造の一例を示す図である。
本実施例1に係るパケット中継装置の処理手順を示すフローチャートである。
本実施例1に係るパケット中継装置によるパケット中継の一例を示す図である。
本実施例2に係るパケット中継装置の構成を示す機能ブロック図である。
ユーザ識別テーブルの一例を示す図である。
スヌープ条件テーブルの一例を示す図である。
スヌープ付加情報テーブルの一例を示す図である。
本実施例2に係るパケット中継装置によるパケット中継の一例を示す図である。
本実施例3に係るパケット中継装置の構成を示す機能ブロック図である。
フィルタリングテーブルの一例を示す図である。
スヌープ条件テーブルの一例を示す図である。
スヌープ付加情報テーブルの一例を示す図である。
本実施例3に係るパケット中継装置によるパケット中継の一例を示す図である。
従来のパケット中継装置によるスヌープ機能を説明するための説明図である。
従来のパケット中継装置の構成を示す機能ブロック図である。
設定インタフェースの論理データ構造の一例を示す図である。
従来のパケット中継装置におけるVLAN(Virtual LAN)設定時のスヌープ機能を説明するための説明図である。
符号の説明
100,300,500,700,900 パケット中継装置
110,350,550 スヌープ付加情報テーブル
120,330,530,740 制御部
130,360,560,750 スヌープ制御部
140,370,570,770 パケット更新部
200,200a,200b,400,600,800 ネットワーク分析装置
310,510,710 パケット分別部
320 ユーザ識別テーブル
340,540,730 スヌープ条件テーブル
520 フィルタリングテーブル
720 中継テーブル
760 パケット交換部