(57)【要約】【課題】解析装置を効率的に運用するネットワークシステムを提供する。【解決手段】ネットワークシステムは、複数の転送装置と、制御装置と、を含む。複数の転送装置のそれぞれは、外部から設定された処理規則に基づいてパケットを処理する。制御装置は、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、複数の転送装置のうちミラーパケット転送経路上の転送装置に対してミラーパケット転送経路を実現する処理規則を設定する。【選択図】図１
2019176255.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と、
ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する、制御装置と、
を含む、ネットワークシステム。
【請求項２】
前記制御装置は、
前記複数の転送装置のうち前記端末に接続された第１の転送装置に対し、受信したパケットがミラーリングの対象パケットであるか否かを識別するための識別条件と、前記ミラーリングの対象パケットをミラーパケットとして前記ミラーパケット転送経路に転送するための指示と、を含む第１の処理規則を設定する、請求項１のネットワークシステム。
【請求項３】
前記第１の処理規則には、
前記ミラーリングの対象パケットを、前記ミラーリングの対象パケットの宛先にユーザパケットとして転送するための指示と、
前記ミラーパケットを前記ユーザパケットと区別可能とする処理が含まれる、請求項２のネットワークシステム。
【請求項４】
前記制御装置は、
前記複数の転送装置のうち、前記ミラーパケット転送経路上の転送装置であって前記端末及び前記解析装置に接続されていない第２の転送装置に対し、前記ミラーパケットを識別するための識別条件と、前記ミラーパケットを前記ミラーパケット転送経路に転送するための指示と、を含む第２の処理規則を設定する、請求項２又は３のネットワークシステム。
【請求項５】
前記制御装置は、
前記複数の転送装置のうち、前記解析装置に接続された第３の転送装置に対し、前記ミラーパケットを識別するための識別条件と、前記ミラーパケットを前記解析装置に出力するための指示と、を含む第３の処理規則を設定する、請求項４のネットワークシステム。
【請求項６】
前記制御装置は、
前記第３の転送装置に対し、前記第３の処理規則の識別条件により識別される第１のミラーパケットとは異なる第２のミラーパケットを識別するための識別条件と、前記第２のミラーパケットを前記第２のミラーパケットに対応したミラーパケット転送経路に転送するための指示と、を含む前記第２の処理規則を設定する、請求項５のネットワークシステム。
【請求項７】
前記制御装置は、
前記第３の転送装置に対して、前記解析装置が出力するミラーパケットを識別するための識別条件と、前記解析装置が出力するミラーパケットを前記ミラーパケットを出力する解析装置とは異なる解析装置に転送するための指示と、を含む第４の処理規則を設定する、請求項５又は６のネットワークシステム。
【請求項８】
それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続され、
ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する、制御装置。
【請求項９】
それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続された制御装置において、
ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算するステップと、
前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定するステップと、
を含む、処理規則設定方法。
【請求項１０】
それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続された制御装置に搭載されたコンピュータに、
ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算する処理と、
前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する処理と、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークシステム、制御装置、処理規則設定方法及びプログラムに関する。
【背景技術】
【０００２】
近年のネットワークシステムは重要な社会インフラとなっている。そのため、ネットワークシステムに重要なセキュリティインシデント等が発生するたびに大きな話題となるなど、ユーザはセキュリティへの対策が急務な状況に置かれている。
【０００３】
さらに、少なからずセキュリティ面に問題があるＩｏＴ（Internet of Things）端末がネットワークに接続されてくる状況ではセキュリティ上の問題を早期に検知できる手段が必要不可欠となっている。具体的には、ネットワークのトラフィックを観測、監視するトラフィックモニタリングの重要性が増している。
【０００４】
特許文献１には、パケット中継装置に複数のアナライザを接続して、ミラーパケットまたは統計パケットの負荷を複数のアナライザに分散させる、と記載されている。
【０００５】
特許文献２には、スイッチシステムは、経路制御を意識することなくモニタリングの粒度を自由に変更可能とする、と記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００９−２３１８９０号公報
【特許文献２】国際公開第２０１２／０４９９６０号
【発明の概要】
【発明が解決しようとする課題】
【０００７】
なお、上記先行技術文献の各開示を、本書に引用をもって繰り込むものとする。以下の分析は、本発明者らによってなされたものである。
【０００８】
ネットワークシステムにおいてセキュリティインシデントの監視等を目的として、ネットワーク装置（パケット転送装置、スイッチ）でパケットをミラーリングし、当該パケットを解析装置へ集め、パケット解析を行うことが実施されている。しかし、ユーザトラフィックの増加に起因し、解析する為にミラーリングするパケット量も増加の一途をたどっている。
【０００９】
解析装置は高価なものが多く、上記ユーザトラフィックの増加に合わせて解析装置をより高性能な装置に更新する等の対応が難しいこと多い。そのため、ミラーリングするパケットを出来るだけ効率的、且つ、効果的に解析装置へ集め、高価な解析装置におけるリソース消費を出来るだけ抑えたいという要望がある。
【００１０】
具体的には、高価な解析装置へミラーパケットを転送する前に、簡易の解析装置等でパケットを絞り込む、又は、必要なトラフィックに限って解析装置に転送するなどの対策が急務になっている。
【００１１】
ここで、トラフィックモニタリング用途でパケットミラーリングを実現する技術として、特許文献２にも記載されているように、ＲＳＰＡＮ（Remote Switch Port Analyzer）／ＥＲＳＰＡＮ（Encapsulated Remote Switch Port Analyzer）が使われてきた。ＲＳＰＡＮやＥＲＳＰＡＮを使用することにより、ミラーリングするネットワークノードと解析装置の間のＬ２／Ｌ３ネットワークを超えて、リモートの解析装置にミラーリングすることが可能となる。
【００１２】
しかし、ミラーパケットのうち、選択的に特定のパケットに限って解析装置に転送したり、複数の解析装置に対して指定したミラーパケットを転送したりといった、自由度のあるパケットミラーリングの配送は困難であった。
【００１３】
本発明は、解析装置を効率的に運用することに寄与する、ネットワークシステム、制御装置、処理規則設定方法及びプログラムを提供することを主たる目的とする。
【課題を解決するための手段】
【００１４】
本発明乃至開示の第１の視点によれば、それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する、制御装置と、を含む、ネットワークシステムが提供される。
【００１５】
本発明乃至開示の第２の視点によれば、それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続され、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する、制御装置が提供される。
【００１６】
本発明乃至開示の第３の視点によれば、それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続された制御装置において、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算するステップと、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定するステップと、を含む、処理規則設定方法が提供される。
【００１７】
本発明乃至開示の第４の視点によれば、それぞれが、外部から設定された処理規則に基づいてパケットを処理する、複数の転送装置と接続された制御装置に搭載されたコンピュータに、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算する処理と、前記複数の転送装置のうち前記ミラーパケット転送経路上の転送装置に対して前記ミラーパケット転送経路を実現する処理規則を設定する処理と、を実行させるプログラムが提供される。
なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。記憶媒体は、半導体メモリ、ハードディスク、磁気記録媒体、光記録媒体等の非トランジェント（non-transient）なものとすることができる。本発明は、コンピュータプログラム製品として具現することも可能である。
【発明の効果】
【００１８】
本発明乃至開示の各視点によれば、解析装置を効率的に運用することに寄与する、ネットワークシステム、制御装置、処理規則設定方法及びプログラムが、提供される。
【図面の簡単な説明】
【００１９】
【図１】一実施形態の概要を説明するための図である。
【図２】第１の実施形態に係るネットワークシステムの一構成例を示す図である。
【図３】第１の実施形態に係る論理ネットワークを説明するための図である。
【図４】第１の実施形態に係る転送装置の処理構成の一例を示す図である。
【図５】第１の実施形態に係る制御装置の処理構成の一例を示す図である。
【図６】ミラーリング情報データベースの一例を示す図である。
【図７】転送装置に設定する第１の処理規則を説明するための図である。
【図８】転送装置に設定する第２の処理規則を説明するための図である。
【図９】転送装置に設定する第３の処理規則を説明するための図である。
【図１０】第１の実施形態に係る制御装置の動作の一例を示すフローチャートである。
【図１１】第１の実施形態に係る制御装置のハードウェア構成の一例を示すブロック図である。
【図１２】第１の実施形態に係るネットワークシステムの動作を説明するための図である。
【図１３】第２の実施形態に係るネットワークシステムの動作を説明するための図である。
【図１４】制御装置が生成する第４の処理規則の一例を示す図である。
【図１５】制御装置に設定する第３、第４の処理規則の一例を示す図である。
【図１６】第２の実施形態に係る論理ネットワークを説明するための図である。
【発明を実施するための形態】
【００２０】
初めに、一実施形態の概要について説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、この概要の記載はなんらの限定を意図するものではない。また、各図におけるブロック間の接続線は、双方向及び単方向の双方を含む。一方向矢印については、主たる信号（データ）の流れを模式的に示すものであり、双方向性を排除するものではない。さらに、本願開示に示す回路図、ブロック図、内部構成図、接続図などにおいて、明示は省略するが、入力ポート及び出力ポートが各接続線の入力端及び出力端のそれぞれに存在する。入出力インターフェイスも同様である。
【００２１】
一実施形態に係るネットワークシステムは、複数の転送装置１０１と、制御装置１０２と、を含む（図１参照）。複数の転送装置１０１のそれぞれは、外部から設定された処理規則に基づいてパケットを処理する。制御装置１０２は、ミラーリングの対象である端末から解析装置までのミラーパケット転送経路を計算し、複数の転送装置１０１のうちミラーパケット転送経路上の転送装置１０１に対してミラーパケット転送経路を実現する処理規則を設定する。
【００２２】
一実施形態に係るネットワークシステムは、例えば、オープンフローを用いてミラーリング対象を指定し、端末が出力するユーザパケットをミラーリングする。ミラーリングしたパケットは、ミラーパケット転送経路上で転送され、解析装置に到着する。つまり、制御装置１０２は、複数の転送装置１０１に処理規則を設定することで、ミラーリング用仮想ネットワークを構築し、当該ネットワーク上でミラーパケットを転送する。ミラーリング用仮想ネットワークは、オープンフロー技術により、解析装置にミラートラフィックを転送し、解析の実現を行う。その結果、自由なミラーリングパケットの転送が可能になる。
【００２３】
例えば、パケットをモニタリングする転送装置（スイッチ）は、ＥＲＳＰＡＮの様にパケットを複数コピーしなくても、ミラートラフィックをミラー用仮想ネットワークに転送することで、複数の解析装置に効率的にミラーパケットの転送が可能になる。また、全てのミラーリングしたトラフィックを転送するだけでは無く、識別条件にて必要なトラフィックを指定して（例えば、ＨＴＴＰトラフィックに限り指定して）解析装置へ転送するなどして、ミラートラフィックの負荷を軽減することも可能になる。このように、オープンフローを使って、ミラーリングするパケットを指定し、ミラーリングしたパケットを転送することで、ミラーリングパケットの効率的で自由な解析が行えるトラフィックモニタリングが実現できる。
【００２４】
以下に具体的な実施の形態について、図面を参照してさらに詳しく説明する。なお、各実施形態において同一構成要素には同一の符号を付し、その説明を省略する。
【００２５】
［第１の実施形態］
第１の実施形態について、図面を用いてより詳細に説明する。
【００２６】
図２は、第１の実施形態に係るネットワークシステムの一構成例を示す図である。図２を参照すると、端末１０−１及び１０−２と、転送装置（転送ノード）２０−１〜２０−１０と、制御装置３０と、解析装置４０−１〜４０−３と、を含む構成が示されている。
【００２７】
なお、以降の説明において端末１０−１、１０−２を区別する特段の理由がない場合には、単に「端末１０」と表記する。他の構成につても同様に、ハイフンより左側の数字にて各構成を代表して表記する。
【００２８】
また、図２に示す構成は例示であって、端末１０や転送装置２０の数を限定する趣旨ではない。
【００２９】
端末１０は、パーソナルコンピュータやサーバ等の装置である。
【００３０】
複数の転送装置２０のそれぞれは、外部から設定された処理規則に基づいてパケットを処理する装置である。具体的には、転送装置２０は、端末１０から受信したパケット（ユーザパケット）を次段の転送装置２０等に転送する。転送装置２０は、端末１０−１と端末１０−２間の通信を実現する。転送装置２０は、Ｌ２（レイヤ２）フォワーディング機能、Ｌ３（レイヤ３）フォワーディング機能を備える。転送装置２０は、オープンフロースイッチとすることができる。
【００３１】
制御装置３０は、転送装置２０を制御する装置であり、オープンフローコントローラとすることができる。各転送装置２０と制御装置３０は、専用の制御チャネル（オープンフローチャネル、セキュアチャネル）を介して接続されている。制御装置３０は、転送装置２０に対して、受信パケットに対する処理を規定する処理規則を設定する。転送装置２０は、制御装置３０が設定する処理規則に従い、パケット処理（パケットの転送）を行う。
【００３２】
制御装置３０が転送装置２０に設定した処理規則は、フローテーブルにエントリとして格納される。フローテーブルには、フローごとに、パケットヘッダと照合するマッチ条件（Ｍａｔｃｈ  Ｆｉｅｌｄｓ；識別条件）と、処理内容を定義したインストラクション（Ｉｎｓｔｒｕｃｔｉｏｎｓ；動作指示）と、の組が定義される。
【００３３】
制御装置３０は、転送装置２０に処理規則を設定することにより、端末１０−１及び端末１０−２間の通信（ユーザパケットの転送）に加え、端末１０から出力される一部パケットのミラーリング（ミラーパケットの転送）を実現する。より具体的には、制御装置３０は、ミラーリングの対象である端末１０から解析装置４０までのミラーパケット転送経路を計算し、転送装置２０のうちミラーパケット転送経路上の転送装置２０に対してミラーパケット転送経路を実現する処理規則を設定する。
【００３４】
解析装置４０は、転送装置２０によりミラーリングされたパケット（ミラーパケット）を解析する。
【００３５】
解析装置４０−１は、端末１０−１が送信するＨＴＴＰ（Hypertext Transfer Protocol）パケットを解析の対象とする。
【００３６】
解析装置４０−２は、端末１０−１が送信するＵＤＰ（User Datagram Protocol）パケットを解析の対象とする。
【００３７】
解析装置４０−３は、端末１０−１によるマルチキャスト（Multicast）パケットを解析の対象とする。
【００３８】
なお、図２に示す転送装置２０の近辺にシャープ（＃）と共に記載した数字は、転送装置２０のポート番号を示す。
【００３９】
［動作概略］
初めに、図２を参照しつつ、第１の実施形態に係るネットワークシステムの動作概略を説明する。
【００４０】
第１の実施形態に係るネットワークシステムは、転送装置（ネットワークノード）２０にてユーザパケットをミラーリングし、複数の解析装置４０への転送を実現する。第１の実施形態に係るネットワークシステムでは、各解析装置４０に対象パケットを限定して転送する。
【００４１】
ユーザパケットのミラーリングを実行する転送装置２０は、オープンフローの仕組みを使い、ミラーリングする対象パケットを指定しミラーリングする（指定されたポートからミラーパケットを出力する）。ミラーパケットは、オープンフローが有効な転送装置２０により、オープンフローの仕組みにより、通常のパケットフォワーディングとは分離してフォワーディングされる。解析装置４０が接続されている転送装置２０では、オープンフローの識別条件に従って、必要なミラーパケットに限定し当該ミラーパケットを解析装置４０へ転送する。
【００４２】
上述のように、オープンフローのエントリは、オープンフローコントローラである制御装置３０から転送装置２０に設定される。より具体的には、転送装置２０−１は、端末１０−１から受信したユーザパケットのうち、条件により指定されたパケットをミラーリングし、ミラー用ネットワークを使ってミラーパケットを解析装置４０に向けて転送する。
【００４３】
当該動作を論理的に解釈すると、図３に示すように、１つのミラー用仮想ネットワークに、ミラー対象である端末１０及びミラーパケットを解析する解析装置４０が接続されている概念となる。実際には、各転送装置２０に処理規則を設定することにより、通常のユーザパケットとは分離してミラーパケットの転送が可能となる。
【００４４】
また、第１の実施形態では、上述のように、ミラーパケットのうちＨＴＴＰパケットは解析装置４０−１に転送される。ＵＤＰパケットは、解析装置４０−２に転送される。マルチキャストパケットは、解析装置４０−３に転送される。このようなミラーパケットの転送動作の実現も、制御装置３０から設定される処理規則を使って行う。
【００４５】
なお、ミラーリングするパケット（ＨＴＴＰパケット、ＵＤＰパケット、マルチキャストパケット）は例示であり、他のパケット（他のプロトコルによるパケット）をミラーリングの対象としても良いことは勿論である。
【００４６】
続いて、第１の実施形態をなす各装置の処理構成について説明する。但し、解析装置４０に関しては、既存の解析装置を用いることができるので詳細な説明を省略する。
【００４７】
［転送装置］
図４は、転送装置２０の処理構成（処理モジュール）の一例を示す図である。図４を参照すると、転送装置２０は、通信部２１と、テーブル管理部２２と、テーブルデータベース（テーブルＤＢ；Database）２３と、転送処理部２４と、を含んで構成されている。
【００４８】
通信部２１は、転送装置２０に処理規則を設定する制御装置３０との通信を実現する手段である。通信部２１は、オープンフロープロトコルを用いて制御装置３０と通信するものとする。但し、通信部２１と制御装置３０との通信プロトコルは、オープンフロープロトコルに限定されるものではない。
【００４９】
テーブル管理部２２は、テーブルＤＢ２３に保持されているフローテーブルを管理する手段である。より具体的には、テーブル管理部２２は、制御装置３０から指示された処理規則をテーブルＤＢ２３に登録する。また、テーブル管理部２２は、転送処理部２４から新規パケットを受信したことを通知されると、制御装置３０に対し、処理規則の設定を要求する。
【００５０】
テーブルＤＢ２３は、転送処理部２４が受信パケットの処理を行う際に参照するテーブルを１つ以上格納可能なデータベースによって構成される。
【００５１】
転送処理部２４は、テーブル検索部２１１と、アクション実行部２１２と、を含んで構成される。
【００５２】
テーブル検索部２１１は、テーブルＤＢ２３に格納されたテーブルから、受信パケットに適合するマッチフィールドを持つエントリを検索する手段である。
【００５３】
アクション実行部２１２は、テーブル検索部２１１にて検索されたエントリのインストラクションフィールドに示す処理内容に従ってパケット処理を行う手段である。
【００５４】
転送処理部２４は、受信パケットに適合するマッチフィールドを持つエントリが見つからなかった場合は、その旨をテーブル管理部２２に通知する。
【００５５】
［制御装置］
図５は、制御装置３０の処理構成（処理モジュール）の一例を示す図である。図５を参照すると、制御装置３０は、ネットワーク構成管理部３１と、ネットワーク構成データベース（ネットワーク構成ＤＢ）３２と、制御メッセージ処理部３３と、を含んで構成される。さらに、制御装置３０は、経路・アクション計算部３４と、ミラーリング情報データベース（ミラーリング情報ＤＢ）３５と、転送装置２０と通信を行う手段である通信部３６と、を含む。
【００５６】
ネットワーク構成管理部３１は、通信部３６を介して、制御装置３０が制御対象とするネットワークシステムのネットワーク構成を管理する。具体的には、管理者が図２に示すようなネットワークトポロジを制御装置３０に入力する。あるいは、ネットワーク構成管理部３１は、ＬＬＤＰ（Link Layer Discovery Protocol）等を用いてネットワークトポロジを生成する。
【００５７】
ネットワーク構成管理部３１は、ネットワークトポロジをネットワーク構成ＤＢ３２に登録する。ネットワーク構成ＤＢ３２を参照することで、端末１０が接続されている転送装置２０や解析装置４０が接続されている転送装置２０を含めネットワークトポロジが把握可能となる。
【００５８】
制御メッセージ処理部３３は、転送装置２０から受信した制御メッセージを解析して、制御装置３０内の該当する処理手段に制御メッセージ情報を引き渡す。
【００５９】
ミラーリング情報ＤＢ３５は、解析装置４０に関する詳細を記憶するデータベースである。具体的には、ミラーリング情報ＤＢ３５は、ミラーリングの対象とする端末１０、各解析装置４０が解析の対象とするパケットの種別に関する情報等を記憶する。
【００６０】
ミラーリング情報ＤＢ３５は、例えば、図６に示すような情報を記憶する。管理者は、図６に示すようなミラーリングに関する詳細を制御装置３０に入力する。
【００６１】
経路・アクション計算部３４は、ネットワーク構成ＤＢ３２に格納されているネットワークトポロジ、ミラーリング情報ＤＢ３５に格納されている情報に基づき、ミラーパケットの転送を実現する処理規則を生成する。また、経路・アクション計算部３４は、生成した処理規則を通信部３６を介して、各転送装置２０に設定する。
【００６２】
初めに、経路・アクション計算部３４は、ネットワーク構成ＤＢ３２及びミラーリング情報ＤＢ３５を参照し、ミラーリングを実施する転送装置２０とミラーパケットの宛先である解析装置４０に接続された転送装置２０を特定する。
【００６３】
例えば、図２及び図６を参照すると、図６の最上段に記載されたミラーリングに関し、経路・アクション計算部３４は、ミラーリングを実施する転送装置２０として、転送装置２０−１を特定する。また、経路・アクション計算部３４は、ミラーパケットの宛先となる解析装置４０−１に接続された転送装置２０として、転送装置２０−３を特定する。
【００６４】
次に、経路・アクション計算部３４は、特定した２つの転送装置２０を結ぶ転送経路（ミラーパケット転送経路）を計算する。具体的には、経路・アクション計算部３４は、ダイクストラ法等のアルゴリズムを使ってミラーパケット転送経路を計算する。
【００６５】
図２及び図６の最上段の例では、「転送装置２０−１、転送装置２０−２、転送装置２０−３」がミラーパケット転送経路として計算される。
【００６６】
経路・アクション計算部３４は、解析装置４０に向けてのミラーパケット転送を実現するために、３種類の処理規則（ミラーパケット転送用の処理規則）を生成する。
【００６７】
第１の処理規則は、ミラーリングの対象となる端末１０に接続された転送装置２０に設定される処理規則である。図２の例では、ミラーリングを実施するのは転送装置２０−１であるので、当該転送装置２０−１に設定する処理規則が第１の処理規則に該当する。
【００６８】
第２の処理規則は、ミラーパケット転送経路上の転送装置２０であって、ミラーリングを実施（ミラーリング対象の端末１０に接続されておらず）せず、且つ、解析装置４０に接続されていない転送装置２０に設定する処理規則である。図２の例では、例えば、転送装置２０−２に設定する処理規則が第２の処理規則に該当する。
【００６９】
第３の処理規則は、解析装置４０に接続された転送装置２０に設定する処理規則である。図２の例では、例えば、転送装置２０−３に設定する処理規則が第３の処理規則に該当する。
【００７０】
なお、制御装置３０は、処理規則を転送装置２０に設定して通常のユーザパケット転送も実現するが、当該パケット転送を実現するための動作は当業者にとって明らかであるため説明を省略する。
【００７１】
続いて、上記３つの処理規則に関し、順次説明する。
【００７２】
初めに、ミラーリングを実施する転送装置２０に設定する第１の処理規則について説明する。上述のように、第１の処理規則は、複数の転送装置２０のうちミラーリングの対象となるパケットを出力する端末１０に接続された転送装置２０に対して設定される。
【００７３】
経路・アクション計算部３４は、ミラーパケットを識別するための識別条件（マッチフィールド）と、当該識別条件に合致するミラーパケットをミラーパケット転送経路に転送するための指示（インストラクション）と、を含む第１の処理規則を生成する。つまり、第１の処理規則には、受信したパケットがミラーリングの対象パケットであるか否かを識別するための識別条件と、ミラーリングの対象パケットをミラーパケットとしてミラーパケット転送経路に転送するための指示と、が含まれる。
【００７４】
また、経路・アクション計算部３４は、ミラーリングを実施する転送装置２０に対し、ミラーリングの対象となったパケットに関する通常の転送動作を実現するための設定を上記第１の処理規則に含める。より具体的には、第１の処理規則には、ミラーリングの対象パケットを、その宛先にユーザパケットとしてＬ２（レイヤ２）、Ｌ３（レイヤ３）転送するための指示が含まれる。さらに、第１の処理規則には、ミラーパケットをユーザパケットと区別可能とする処理が含まれる。このように、経路・アクション計算部３４は、１つの識別条件に合致したパケットに対する複数の指示を含むマルチアクション可能な処理規則を生成する。
【００７５】
例えば、図２及び図６の最上段の例では、経路・アクション計算部３４は、図７の最上段に示すような処理規則（マッチフィールドとインストラクションの組み合わせ）を生成する。なお、図７は、転送装置２０−１に設定する処理規則（エントリ）の一例を示す図である。
【００７６】
図７の最上段のマッチフィールドは、端末１０−１から受信したパケットのうち、ＨＴＴＰパケットがミラーリングの対象となっていることを示す。また、図７の最上段に示すインストラクションフィールドを確認すると、当該識別条件に合致するパケットにはＶＬＡＮ  ＩＤ（Virtual Local Area Network Identifier）として「０１」が追加され、転送装置２０−１のポート＃２から出力されることを示す。
【００７７】
なお、マッチフィールドに合致するパケットにＶＬＡＮ  ＩＤを追加するのはミラーパケットと他のパケット（ユーザパケット）を区別可能とするためである。従って、ミラーパケットを区別可能とすることができれば、ＶＬＡＮ  ＩＤの追加に限定されず、他の方式を採用することもできる。例えば、経路・アクション計算部３４は、パケットヘッダを書き換える（例えば、宛先ＩＰ（Internet Protocol）アドレスに解析装置４０のＩＰアドレスを設定する）、特別なＶＸＬＡＮでのパケットエンキャプスレーション等を実施する。
【００７８】
また、ミラーリング対象のパケットに関する通常の転送動作（端末１０−１から端末１０−２への転送動作）を実現するため、転送装置２０−１における受信パケットを当該転送装置２０−１のポート＃３から出力する指示が処理規則には含まれる。
【００７９】
なお、図７の例では、ミラーパケットが転送されるミラーパケット転送経路と通常のパケット転送経路を別経路に設定しているが、同じ経路としても良いことは勿論である。また、図７には、解析装置４０−２に向けたミラーパケット転送を実現するための処理規則（２段目）と、解析装置４０−３に向けたミラーパケット転送を実現するための処理規則（３段目）も合わせて図示している。
【００８０】
転送装置２０−１には、本来、ミラーリング対象となっていないパケットの転送を実現するための処理規則も設定されるが図７では図示を省略している。さらに、転送装置２０−１に設定するエントリの順序も、ミラーパケット転送用のフローエントリ（処理規則）、通常のユーザパケット転送用のフローエントリとすることもできるし、その逆とすることもできる。
【００８１】
次に、ミラーパケット転送経路上の転送装置２０であって、ミラーリングを実施せず解析装置４０が接続されてもいない、転送装置２０に設定する第２の処理規則について説明する。第２の処理規則は、複数の転送装置２０のうち、ミラーパケット転送経路上の転送装置２０であってミラーリングの対象である端末１０及び解析装置４０に接続されていない転送装置２０に対して設定される。
【００８２】
経路・アクション計算部３４は、ミラーパケットを識別するための識別条件（マッチフィールド）と、当該識別条件に合致するミラーパケットをミラーパケット転送経路に転送するための指示（インストラクション）と、を含む第２の処理規則を生成する。
【００８３】
例えば、図２及び図６の最上段の例では、経路・アクション計算部３４は、転送装置２０−２に設定する処理規則として、図８の最上段に示すような識別条件及び動作指示を含む処理規則を生成する。
【００８４】
図８の最上段を確認すると、値が「０１」であるＶＬＡＮ  ＩＤを有するミラーパケットは、転送装置２０−２のポート＃２から出力されることを示す。なお、図８には、解析装置４０−２に向けたミラーパケット転送を実現するための処理規則（２段目）と、解析装置４０−３に向けたミラーパケット転送を実現するための処理規則（３段目）も合わせて図示している。
【００８５】
次に、ミラーパケットを受信する解析装置４０が接続されている転送装置２０に設定する第３の処理規則について説明する。第３の処理規則は、複数の転送装置２０のうち、解析装置４０に接続された転送装置２０に対して設定される。
【００８６】
経路・アクション計算部３４は、ミラーパケットを識別するための識別条件（マッチフィールド）と、当該識別条件に合致するミラーパケットを解析装置４０に出力（転送）するための指示（インストラクション）と、を含む第３の処理規則を生成する。
【００８７】
例えば、図２及び図６の最上段の例では、経路・アクション計算部３４は、転送装置２０−３に設定する処理規則として、図９の最上段に示すような識別条件及びインストラクションを含む処理規則を生成する。
【００８８】
図９の最上段を確認すると、値が「０１」であるＶＬＡＮ  ＩＤを有するミラーパケットは、転送装置２０−３のポート＃２から出力され、解析装置４０−１に到達する。
【００８９】
なお、図２に示す転送装置２０−３は、ＨＴＴＰパケット及び当該パケットを解析する解析装置４０−１との関係では、第３の処理規則が設定される転送装置２０である。しかし、転送装置２０−３は、ＵＤＰパケット及び当該パケットを解析する解析装置４０−２との関係では、解析装置４０が接続されていない転送装置２０となる。転送装置２０には、第２の処理規則が設定されるので、転送装置２０−３には第２の処理規則も設定される。具体的には、図９の２段目及び３段目のエントリは、第２の処理規則に対応する。
【００９０】
つまり、制御装置３０は、転送装置２０−３に対し、ＵＤＰパケットに関する第２の処理規則を設定する。当該処理規則の識別条件は、第３の処理規則の識別条件により識別される第１のミラーパケット（ＨＴＴＰパケット）とは異なる第２のミラーパケット（ＵＤＰパケット）を識別する。また、当該処理規則の指示は、第２のミラーパケット（ＵＤＰパケット）を第２のミラーパケット（ＵＤＰパケット）に対応したミラーパケット転送経路に転送するための指示である。
【００９１】
制御装置３０は、上記説明した３種類の処理規則をミラーパケット転送経路上の各転送装置２０の種別に合わせて設定し、ミラーリング対象の端末１０から解析装置４０までのミラーパケット転送を実現する。
【００９２】
上記制御装置３０の動作をまとめると、図１０に示す動作のとおりとなる。
【００９３】
初めに、制御装置３０は、ミラーパケット転送経路を計算する（ステップＳ１０１）。その後、制御装置３０は、当該ミラーパケット転送経路を実現するための第１〜第３の処理規則を生成（ステップＳ１０２）し、当該生成した処理規則を各転送装置２０に設定する（ステップＳ１０３）。
【００９４】
次に、制御装置３０のハードウェア構成について説明する。
【００９５】
図１１は、第１の実施形態に係る制御装置３０のハードウェア構成の一例を示すブロック図である。
【００９６】
制御装置３０は、情報処理装置（コンピュータ）により構成可能であり、図１１に例示する構成を備える。例えば、制御装置３０は、内部バスにより相互に接続される、ＣＰＵ（Central Processing Unit）５１、メモリ５２、入出力インターフェイス５３及び通信手段であるＮＩＣ（Network Interface Card）５４等を備える。
【００９７】
但し、図１１に示す構成は、制御装置３０のハードウェア構成を限定する趣旨ではない。制御装置３０は、図示しないハードウェアを含んでもよいし、必要に応じて入出力インターフェイス５３を備えていなくともよい。また、制御装置３０に含まれるＣＰＵ等の数も図１１の例示に限定する趣旨ではなく、例えば、複数のＣＰＵ５１が制御装置３０に含まれていてもよい。
【００９８】
メモリ５２は、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、補助記憶装置（ハードディスク等）である。
【００９９】
入出力インターフェイス５３は、図示しない表示装置や入力装置のインターフェイスとなる手段である。表示装置は、例えば、液晶ディスプレイ等である。入力装置は、例えば、キーボードやマウス等のユーザ操作を受け付ける装置である。
【０１００】
制御装置３０の機能は、上述の各種処理モジュールにより実現される。当該処理モジュールは、例えば、メモリ５２に格納されたプログラムをＣＰＵ５１が実行することで実現される。また、そのプログラムは、ネットワークを介してダウンロードするか、あるいは、プログラムを記憶した記憶媒体を用いて、更新することができる。さらに、上記処理モジュールは、半導体チップにより実現されてもよい。即ち、上記処理モジュールが行う機能を何らかのハードウェア、及び／又は、ソフトウェアで実行する手段があればよい。
【０１０１】
なお、転送装置２０の基本的なハードウェア構成は制御装置３０と同様とすることができるので説明を省略する。
【０１０２】
続いて、図１２を参照しつつ、第１の実施形態に係るネットワークシステム全体の動作を説明する。
【０１０３】
初めに、端末１０−１が、端末１０−２に向けてパケットを送信する。転送装置２０−１は、当該パケットを受信し、設定された識別条件に合致するか否かを判定する（ミラーリング対象のユーザパケットか否かを確認する）。
【０１０４】
例えば、転送装置２０−１がＨＴＴＰパケットを受信すると、図７の最上段に示すエントリにヒットする。また、転送装置２０−１がＵＤＰパケットを受信すると、図７の２段目に示すエントリにヒットする。識別条件に合致すると、当該パケットは通常のユーザパケットとして、転送装置２０−１のポート＃３から端末１０−２に向けて出力される。
【０１０５】
また、識別条件に合致したパケットにはＶＬＡＮ  ＩＤが付与され、ミラーパケットとして転送装置２０−１のポート＃２から出力される。このように、転送装置２０−１では、通常のユーザパケットの転送（図１２の下側点線の転送経路）を継続しつつ、ミラーパケットの転送（図１２の上側実線の転送経路）を行う。
【０１０６】
転送装置２０−１から出力されたミラーパケットは、ミラーリングを実施せず且つ解析装置４０も接続されていない転送装置２０−２に到着する。転送装置２０−２は、受信したパケットが設定された識別条件に合致するか否かの判定を行う。
【０１０７】
例えば、図８を参照すると、転送装置２０−２は、ミラーパケット（ＨＴＴＰパケット、ＵＤＰパケット、マルチキャストパケット）を次段の転送装置２０−３に向けて出力する（ポート＃２から出力する）。
【０１０８】
転送装置２０−２から出力されたミラーパケットは、転送装置２０−３に到着する。転送装置２０−３は、受信したパケットが設定された識別条件に合致するか否かの判定を行う。
【０１０９】
例えば、図９を参照すると、ミラーパケットがＨＴＴＰパケット（ＶＬＡＮ  ＩＤ＝０１）であれば、最上段のエントリにヒットし、当該ＨＴＴＰパケットは転送装置２０−３のポート＃２から出力される。その結果、ミラーパケット（ＨＴＴＰパケット）は、解析装置４０−１に到着する。
【０１１０】
また、ミラーパケットがＵＤＰパケット（ＶＬＡＮ  ＩＤ＝０２）であれば、２段目のエントリにヒットし、当該ＵＤＰパケットは転送装置２０−３のポート＃３から出力される。
【０１１１】
転送装置２０−４及び転送装置２０−５は、転送装置２０−３と同様に動作する。
【０１１２】
以上のように、第１の実施形態に係るネットワークシステムでは、制御装置３０が転送装置２０に処理規則を設定することにより、ミラーパケットを転送するための仮想的なネットワークを生成する。ミラーパケットは、仮想的なネットワークにより転送されるため、その宛先や経路を自由に設定することができる。
【０１１３】
上記第１の実施形態に係るネットワークシステムは、以下の３つの効果を奏する。
【０１１４】
第１の効果は、解析装置４０のリソースを抑えることができる点である。オープンフロースイッチである転送装置２０により構成される仮想ネットワーク側で、解析装置４０に送信するミラーパケットを条件に指定し、必要なパケットに限り解析装置４０に転送するためである。その結果、解析装置４０にて解析すべきパケットの数が削減され、解析装置４０のリソースを抑えることができる。
【０１１５】
第２の効果は、ミラー用ネットワークの帯域を有効活用できる点である。複数の解析装置４０にミラーリングを実施する必要がある場合でも、既存のＥＲＳＰＡＮ技術の様に、複数の解析装置４０それぞれにミラーリングするネットワークノード（転送装置）側でパケットを複製する必要がないためである。その結果、ミラー用ネットワークの帯域の効率化が実現できる。
【０１１６】
第３の効果は、ミラーリングの条件（位置、対象パケット）をオンデマンドで追加し、変更できる点である。制御装置３０で処理規則（エントリ）の操作をすることで、ミラーリングする条件、解析装置４０におくる条件をオンデマンドに自由に変更可能なためである。
【０１１７】
［第２の実施形態］
続いて、第２の実施形態について図面を参照して詳細に説明する。
【０１１８】
第２の実施形態では、ミラーパケットを複数の解析装置４０で解析する場合について説明する。第２の実施形態に係るネットワークシステムの構成や、転送装置２０、制御装置３０の構成は第１の実施形態と同様とすることができるのでこれらの説明を省略する。
【０１１９】
第２の実施形態に係るネットワークシステムは、図１３に示すように、複数の解析装置４０が同じミラーパケットを順次解析可能とする。
【０１２０】
具体的には、解析装置４０−１は、転送装置２０−３から受信したミラーパケットを解析し、解析の終了後、受信したミラーパケットを転送装置２０−３に出力する。転送装置２０−３は、解析装置４０−１から受信したパケット（ミラーパケット）に識別処理を実行し、転送装置２０−４に出力する。
【０１２１】
転送装置２０−４は、受信したミラーパケットを解析装置４０−２に出力する。解析装置４０−２は、転送装置２０−４から受信したミラーパケットを解析し、解析の終了後、受信したミラーパケットを転送装置２０−４に出力する。転送装置２０−４は、解析装置４０−２から受信したパケット（ミラーパケット）に識別処理を実行し、転送装置２０−５に出力する。
【０１２２】
転送装置２０−５は、受信したミラーパケットを解析装置４０−３に出力する。解析装置４０−３は、転送装置２０−４から受信したミラーパケットを解析する。
【０１２３】
制御装置３０は、上述のような解析装置４０によるミラーパケットの縦続的な解析処理を転送装置２０に処理規則を設定することで実現する。なお、ミラーリングを実施する転送装置２０に設定する第１の処理規則や解析装置４０が接続されていない転送装置２０に設定する第２の処理規則は、第１の実施形態にて説明した処理規則と同一とすることができるので説明を省略する。
【０１２４】
制御装置３０は、解析装置４０が出力するパケット（ミラーパケット）を識別するための識別条件（マッチフィールド）と当該パケットに対する指示（インストラクション）の組みを第４の処理規則として生成し、解析装置４０が接続された転送装置２０に設定する。
【０１２５】
図１４は、制御装置３０が生成する第４の処理規則の一例を示す図である。図１４に示す第４の処理規則は、転送装置２０−３に設定する処理規則である。
【０１２６】
図１４に示すように、制御装置３０は、解析装置４０から取得したミラーパケットと転送装置２０から取得したミラーパケットを判別可能なように、例えば、解析装置４０のＩＰアドレスを識別条件に用いる。図１４に示すエントリにヒットしたパケット（ミラーパケット）は、転送装置２０−３のポート＃３から出力され、次段の転送装置２０に渡される。
【０１２７】
このように、第４の処理規則には、解析装置４０が出力するミラーパケットを識別するための識別条件と、当該解析装置４０が出力するミラーパケットを当該解析装置４０とは異なる解析装置４０に転送するための指示と、が含まれる。
【０１２８】
なお、上記解析装置４０からのミラーパケットを識別するために、ＩＰアドレスに代えて、受信した受信ポート（物理ポート、ＬＡＧ（Link Aggregation Group）ポート等）を用いてもよい。
【０１２９】
ここで、解析装置４０に接続された転送装置２０には、１つのミラーリング対象パケットに関し、第３の処理規則と第４の処理規則が設定されることになる。例えば、転送装置２０−３には、図１５に示すような処理規則が設定される。図１５の最上段は、転送装置２０−２から取得したミラーパケットに関するエントリを示し、２段目は解析装置４０−１から取得したミラーパケットに関するエントリを示す。
【０１３０】
以上のように、第２の実施形態では、複数の解析装置４０によるミラーパケットの解析を実現する。第２の実施形態においても、ミラーリングを実施する転送装置２０において、制御装置３０から設定されたフローエントリの条件に従いユーザパケットをミラーリングし、ミラーリング用仮想ネットワークに従って転送する。
【０１３１】
図１３の例では、ミラーリングしたパケットを解析装置４０−１にて解析し、その後、解析装置４０−２で解析、最後に解析装置４０−３で解析という流れとなる。当該構成を論理的に考えると、図１６に示す構成となる。つまり、ミラー対象の端末１０−１と解析装置４０−１はミラー用仮想ネットワーク１に、解析装置４０−１と解析装置４０−２はミラー用仮想ネットワーク２に、解析装置４０−２と解析装置４０−３は、ミラー用仮想ネットワーク３にそれぞれ所属している。
【０１３２】
なお、図１３や図１６に示す構成は、例示でありネットワークシステムの構成を限定する趣旨ではない。
【０１３３】
以上、第２の実施形態によれば、転送装置２０に、解析装置４０からのミラーパケットを他の解析装置４０に転送するための第４の処理規則を設定することで、複数の解析装置４０によるミラーパケットの解析を可能となる。
【０１３４】
［変形例］
第１及び第２の実施形態にて説明したネットワークシステムや制御装置３０等の構成、動作は例示であって、システム等の構成、動作を限定する趣旨ではない。
【０１３５】
例えば、制御装置３０は、解析装置４０が接続された転送装置２０に対し、ミラーパケットを本来のユーザパケットの形式に戻して解析装置４０に出力するような指示を持つ処理規則を設定しても良い。上述の例では、制御装置３０は、転送装置２０−３に対し、ＶＬＡＮ  ＩＤを削除するような処理規則を設定してもよい。
【０１３６】
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
［付記１］
上述の第１の視点に係るネットワークシステムのとおりである。
［付記２］
前記制御装置は、
前記複数の転送装置のうち前記端末に接続された第１の転送装置に対し、受信したパケットがミラーリングの対象パケットであるか否かを識別するための識別条件と、前記ミラーリングの対象パケットをミラーパケットとして前記ミラーパケット転送経路に転送するための指示と、を含む第１の処理規則を設定する、好ましくは付記１のネットワークシステム。
［付記３］
前記第１の処理規則には、
前記ミラーリングの対象パケットを、前記ミラーリングの対象パケットの宛先にユーザパケットとして転送するための指示と、
前記ミラーパケットを前記ユーザパケットと区別可能とする処理が含まれる、好ましくは付記２のネットワークシステム。
［付記４］
前記制御装置は、
前記複数の転送装置のうち、前記ミラーパケット転送経路上の転送装置であって前記端末及び前記解析装置に接続されていない第２の転送装置に対し、前記ミラーパケットを識別するための識別条件と、前記ミラーパケットを前記ミラーパケット転送経路に転送するための指示と、を含む第２の処理規則を設定する、好ましくは付記２又は３のネットワークシステム。
［付記５］
前記制御装置は、
前記複数の転送装置のうち、前記解析装置に接続された第３の転送装置に対し、前記ミラーパケットを識別するための識別条件と、前記ミラーパケットを前記解析装置に出力するための指示と、を含む第３の処理規則を設定する、好ましくは付記４のネットワークシステム。
［付記６］
前記制御装置は、
前記第３の転送装置に対し、前記第３の処理規則の識別条件により識別される第１のミラーパケットとは異なる第２のミラーパケットを識別するための識別条件と、前記第２のミラーパケットを前記第２のミラーパケットに対応したミラーパケット転送経路に転送するための指示と、を含む前記第２の処理規則を設定する、好ましくは付記５のネットワークシステム。
［付記７］
前記制御装置は、
前記第３の転送装置に対して、前記解析装置が出力するミラーパケットを識別するための識別条件と、前記解析装置が出力するミラーパケットを前記ミラーパケットを出力する解析装置とは異なる解析装置に転送するための指示と、を含む第４の処理規則を設定する、好ましくは付記５又は６のネットワークシステム。
［付記８］
上述の第２の視点に係る制御装置のとおりである。
［付記９］
上述の第３の視点に係る処理規則設定方法のとおりである。
［付記１０］
上述の第４の視点に係るプログラムのとおりである。
なお、付記８〜付記１０の形態は、付記１の形態と同様に、付記２〜付記７の形態に展開することが可能である。
【０１３７】
なお、引用した上記の特許文献等の各開示は、本書に引用をもって繰り込むものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各請求項の各要素、各実施形態ないし実施例の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【０１３８】
１０、１０−１、１０−２  端末
２０、２０−１〜２０−１０、１０１  転送装置
２１、３６  通信部
２２  テーブル管理部
２３  テーブルデータベース
２４  転送処理部
３０、１０２  制御装置
３１  ネットワーク構成管理部
３２  ネットワーク構成データベース
３３  制御メッセージ処理部
３４  経路・アクション計算部
３５  ミラーリング情報データベース
４０、４０−１〜４０−３  解析装置
５１  ＣＰＵ（Central Processing Unit）
５２  メモリ
５３  入出力インターフェイス
５４  ＮＩＣ（Network Interface Card）
２１１  テーブル検索部
２１２  アクション実行部
【図１】
2019176255.tif 000003
【図２】
2019176255.tif 000004
【図３】
2019176255.tif 000005
【図４】
2019176255.tif 000006
【図５】
2019176255.tif 000007
【図６】
2019176255.tif 000008
【図７】
2019176255.tif 000009
【図８】
2019176255.tif 000010
【図９】
2019176255.tif 000011
【図１０】
2019176255.tif 000012
【図１１】
2019176255.tif 000013
【図１２】
2019176255.tif 000014
【図１３】
2019176255.tif 000015
【図１４】
2019176255.tif 000016
【図１５】
2019176255.tif 000017
【図１６】
2019176255.tif 000018