JP2015521391A - 通信システムと通信方法並びにプログラム - Google Patents

通信システムと通信方法並びにプログラム Download PDF

Info

Publication number
JP2015521391A
JP2015521391A JP2014554639A JP2014554639A JP2015521391A JP 2015521391 A JP2015521391 A JP 2015521391A JP 2014554639 A JP2014554639 A JP 2014554639A JP 2014554639 A JP2014554639 A JP 2014554639A JP 2015521391 A JP2015521391 A JP 2015521391A
Authority
JP
Japan
Prior art keywords
packet
communication
node
transfer
monitoring device
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
Application number
JP2014554639A
Other languages
English (en)
Inventor
亮太 壬生
亮太 壬生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2014554639A priority Critical patent/JP2015521391A/ja
Publication of JP2015521391A publication Critical patent/JP2015521391A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】例えばオープンフロー(OpenFlow)対応又はこれに類するシステムに適用可能とされ、SPI又は等価な機能を実現可能とする通信システム、通信方法、及びプログラムの提供。【解決手段】ノード(3)にネットワークを介して接続され、前記ノード(3)の制御を行う制御装置1と、前記第1の端末(4A)と前記第2の端末(4B)間の前記ノード(3)に転送されるパケットを監視する監視装置2と、を備え、前記制御装置(1)は、新規パケットの通信可否判定を前記監視装置(2)が収集した情報と、ファイアーウォール・ルールに基づき行い、通信許可する場合に、前記パケットの第1、第2の端末のうち送信元の端末から送信先の端末への転送経路、および、送信元端末から監視装置への転送経路とする転送ルールを、経路上の前記ノードに対して設定する。【選択図】図1

Description

(関連出願についての記載)
本発明は、日本国特許出願:特願2012−107596号(2012年5月9日出願)の優先権主張に基づくものであり、同出願の全記載内容は引用をもって本書に組み込み記載されているものとする。
本発明は、通信システムと通信方法並びにプログラムに関する。
以下では、オープンフロー(OpenFlow)におけるフィルタリング機能にてSPI(Stateful Packet Inspection:ステートフル・パケット・インスペクション)を実現する通信システムについて説明する。なお、オープンフローに関して、例えば非特許文献1、非特許文献2等の記載が参照される。
よく知られているように、オープンフローは通信をエンドツーエンドのフローとして捉え、フロー単位で、例えば、
・経路制御、
・障害回復、
・負荷分散、
・最適化
等を行う技術である。転送ノードとして機能するオープンフロースイッチ(OpenFlow Switch)は、オープンフローコントローラ(OpenFlow Controller)から追加又は書き換えを指示されるフローテーブル(例えば図10の302)に従って動作する。
オープンフロースイッチのフローテーブル(図10の302)には、フロー毎に、
・ルール(例えばパケットのヘッダ情報と照合するルール)、
・アクション(ルールにマッチしたパケットに対して適用する処理を定義)と、
・フロー統計情報
の組が、一つのエントリ(タプル)として定義される。このエントリは、「フローエントリ」と呼ばれ、ノードのフローテーブルには、当該ノードを通過する各フローに対応させてフローエントリを備えている。
フロー統計情報は、アクティブエントリ数、パケットルックアップ数、パケットマッチ数、フロー単位での受信パケット、受信バイト数、フローがアクティブな期間、ポート単位での受信パケット、送信パケット、受信バイト、送信バイト、受信ドロップ、送信ドロップ、受信エラー、送信エラー、受信フレームアラインエラー、受信オーバーランエラー、受信CRC(Cyclic Redundancy Check)エラー、コリジョン数等を含む。
オープンフローネットワークにおけるパケットヘッダ(オープンフローヘッダ)は、図11に示すようなヘッダフォーマットとされる。
・MAC DA(Media Access Control Destination Address)(Ethernet(登録商標)送信先アドレス: 48ビット)、
・MAC SA(Media Access Control Source Address)(Ethernet(登録商標)送信元アドレス:48ビット)、
・TPID(Type ID)(Ethernet(登録商標)タイプ:16ビット)、
・VLAN ID(Virtual Local Area Network ID)(16ビット)、
・VLAN TYPE(16 ビット)、
・Ver(Version)(IPプロトコルのバージョン:4ビット)、
・IHL(Internet Header Length)(4ビット)、
・Tos(Type of Services)(8ビット)、
・Total Length(16ビット:パケット全体のサイズのオクテット表示)、
・Identification(16ビット)、
・Flag/Flag Offset(16ビット)、
・TTL (Time To Live:8ビット)、
・Protocol(プロトコル:8ビット)(上位レイヤのプロトコル:TCP(Transmission Control Protocol)、UDP(User Datagram Protocol)、ICMP(Internet Control Message Protocol)等)、
・CheckSum(ヘッダのチェックサム:16ビット)、
・IP SA(Internet Protocol Source Adderess)(送信元IPアドレス:例えば32ビット)、
・IP DA(Internet Protocol Destination Adderess)(送信先IPアドレス:例えば32ビット)、
・Source Port(TCP送信元ポート:16ビット)、
・Destination Port(TCP送信先ポート:16ビット)、
・Sequence Number(シーケンス番号:32ビット)、
・Acknowledgement Number(アクノリッジ番号:32ビット)、
・Offset/Flags(オフセット/フラグ:16ビット)、
・Window Size(ウインドウサイズ:16ビット)、
・CheckSum(TCPで計算するデータのチェックサム:16ビット)、
・Urgent Pointer(緊急ポインタ:16ビット)、
等の情報を備えている。ヘッダのあとにPayload(ペイロード)がつづく。これらのヘッダ情報のいくつかは、フローテーブルのルールとの照合に用いられる。
オープンフロースイッチは、パケットを受信すると、フローテーブル(図10の302)の中から、受信パケットのオープンフローヘッダ(図11参照)の情報に適合するエントリを検索する。すなわち、オープンフロースイッチは、入力した受信パケットに対して、該オープンフロースイッチ内のフローテーブルを検索し、パケットのヘッダ情報と、ルールとのマッチ(照合)を行い、マッチするルールが見つかった場合、当該ルールに対応するアクションに定義された処理(当該ルールがマッチしたときにパケットに対して実行される処理)を実行する。
フローテーブルに含まれるルールの一例として、例えば、送信先(宛先)IPアドレス、送信元IPアドレスと、送信元ポート、宛先ポートを含み、このルールのマッチしたときのアクションとして、受信パケット転送先の次のオープンフロースイッチが指定されている場合、ルールとマッチした受信パケットは、アクション欄に指定された転送先のオープンフロースイッチに転送される。一方、フローテーブルを検索した結果、マッチするルールが見つからなかった場合、オープンフロースイッチは、オープンフローコントローラへのリンクであるセキュアチャネルを通して、オープンフローコントローラに対してこの受信パケットを転送(forward)する。
オープンフロースイッチから前記受信パケットを受け取ったオープンフローコントローラでは、前記受信パケットの送信元・送信先情報に基づき、例えばオープンフローコントローラで管理するネットワークトポロジー情報から、前記受信パケットの転送経路を決定し、フローセットアップ(Flow Setup)を行う。
フローセットアップとは、決定した転送経路上の全てのオープンフロースイッチに対して、決定した転送経路を実現するためにフローテーブルを設定することである。オープンフロースイッチでは、オープンフローコントローラからら転送された転送経路情報から、ルールと、該ルールにマッチしたときの処理を規定するアクションを含む新たなフローエントリをフローテーブルに追加する。
フローセットアップを行ったオープンフローコントローラは、前記受信パケットを、例えば、フローの出口となるオープンフロースイッチ(送信先端末に接続するオープンフロースイッチ)に転送することで送信先端末に送信する。
以降、前記受信パケットと同じフローに属するパケットのヘッダ情報は、前記フローセットアップが行われたオープンフロースイッチのフローテーブル内のルールにマッチし、設定されたフローテーブル(ルールとアクション)に従って、前記パケットの転送経路上の各オープンフロースイッチを転送され、送信先端末に送られる。
このように、オープンフロースイッチでフローテーブルを検索した結果、マッチしないパケットは、あるフローの最初に転送されるパケットである場合が多い。このようなパケットは、総称して「ファーストパケット」ともいう。なお、厳密には、フローエントリの削除により、最初に転送されるパケット以外のパケットに適合するエントリが存在しないという場合が生じ、最初に転送されるパケット以外のパケットが、オープンフローコントローラに転送される場合もある。
オープンフローネットワークにおけるフィルタリング機能の実現方法として、オープンフローコントローラが、オープンフロースイッチから受け取ったパケットから、その通信の可否を判定し、許可されたフローのみをセットアップする方法がある。
また、オープンフローネットワークにおける通信の可否判定方法として、オープンフローヘッダ情報、優先度、及び、その通信可否を事前に設定しておき、パケットイン(パケットが入力された)後に、オープンフローコントローラが、優先度順に照合する方法がある。
オープンフローコントローラは、オープンフロースイッチから、統計情報(例えばフローテーブル内のフロー統計情報)を取得することができる。フロー毎に取得可能な統計情報は、例えば、受信パケット数、受信サイズ、及び、存続時間等である。
一方、ファイアーウォール(Firewall)を通過するパケットのデータを読み取り、内容を判断して動的にポートを開放・閉鎖する技術として、SPI(Stateful Packet Inspection)技術がある。SPIは、ファイアーウォールを通過するパケットデータを読み取り、通信ログに記録しておき、到着パケットが正常なものか、通信ログを参照して判断しポートの開閉を動的に行う。SPIに関して、例えば特許文献1や特許文献2の記載が参照される。
ファイアーウォールにおけるSPI処理の実現方法としては、通過パケットの読み取りから、通信状況を生成してログに保持し、新たなパケットの通過可否の判定時に、ファイアーウォール・ルール、及び通信状況のログを参照する、ことが一般的である(LINUX(登録商標) Netfilter)。
フィルタリングの条件としてパケットの接続状態が設定される。パケットの接続状態として、例えば、
・NEW(ニュー:新規接続パケット)、
・ESTABLISHED(イスタブリッシュト:継続パケット)、
・RELATED(リレイテッド:関連パケット)、
等が挙げられる。
NEWは、ACKフラグがセットされていないパケットやICMPエコー要求等の接続開始パケットの接続状態を示す。
ESTABLISHEDは、ACKフラグがセットされた既存コネクションの継続パケットの接続状態を示す。
RELATEDは、例えばICMPエラーメッセージ等、既存コネクションに関連する関連パケットの接続状態を示す。なおNEW、ESTABLISHED、RELATEDのいずれでもないパケットを指定する場合、INVALID等が設定される。
ファイアーウォールにおけるSPI処理では、例えばファイアーウォール・ルールに、上記パケット接続状態を、フィルタフィリング条件として予め指定しておき、ファイアーウォール内で生成された通信状況と合わせて判定する。
パケットから読み取られる情報は、プロトコルによって異なる。以下では、TCPとFTP(File Transfer Protocol)を例に説明する。なお、FTPは、UDPを用いたファイル転送プロトコルである。TCP、UDP、ICMP等のプロトコルはパケットヘッダのプロトコル欄に設定される。
TCP、FTPでは、例えばクライアントがサーバにSYNパケット(SYNフラグがオンのパケット)を送り、サーバで通信を許可する場合、クライアントに対してSYN・ACKパケット(SYNフラグ・ACKフラグがともにオンのパケット)を送り、SYN・ACKパケットを受け取ったクライアントは、ACKパケットをサーバに送信し、サーバとのセッションを開始する(ESTABLISHED)。したがって、クライアントが初めて通信を行うノードである場合、SYNパケットを送信するはずであるが、SYNパケット以外のパケットを送った場合、不正と判断する。通信状況NEWに対して、SYNパケットでないパケットは廃棄される。
TCPの場合、SPI処理で読み取られるパケットの情報は、例えば、
・送信元IPアドレス(図11のIP SA)、
・送信先IPアドレス(図11のIP DA)、
・TCP送信元ポート(図11のSource Port)、
・TCP送信先ポート(図11のDestination Port)、及び、
・TCPヘッダのフラグ(図11のFlags)、
である。なお、図11において、Source Port、Destination Portから、CheckSum、Urgent Pointerまでの20オクテット(バイト)がTCPヘッダである。
SPI処理では、前記パケットと、送信元及び送信先が逆である逆方向のパケットとから、SYNやACKといったTCPヘッダの制御フラグを読み取ることで、この通信におけるセッションの確立等の状況を確認できる。
なお、上記したSYNフラグ(1ビット)は、TCP接続を要求する際に送信される最初の接続要求パケットにセットされる。ACKフラグ(1ビット)がオンのとき、TCPヘッダには有効なACK番号(Acknowledgement Number)が含まれていることを示す。ACK番号(32ビット)は、TCP応答パケットにセットされ、受信したデータのシーケンス番号(送信したデータ1バイトごとに1つずつ昇順に設定される)に対応している(受信したデータの位置+シーケンス番号+1をACK番号として返す)。SYNフラグがセットされたパケットを受信した場合、ACK番号を受信したシーケンス番号に同期させる。パケットにSYNフラグが付いている(SYNフラグがオン)場合(SYNパケットの場合)、新たな通信を開始する状況にある(NEW)。当該パケットは、接続が確立していないときに送信される最初のパケットである。
そして、逆方向からSYN及びACKフラグの付いたパケット(SYN・ACKパケット)があり、さらに、始めと同じ方向からACKフラグの付いたパケットが送られれば、通信が確立された状況にある(ESTABLISHED)。
SPI処理では、このように通信状況を把握することで、確立された通信を解放するといった動作が可能になる。
FTPの場合、前記TCPの場合に加え、SPI処理では、FTPの制御用通信に属するパケットのペイロードから、FTPのデータ転送に使用するTCPポート番号を読み取る。SPI処理は、このポート情報をもって関連ポートへの通信を動的に許可する。
なお、特許文献1には、中央演算装置におけるSPI処理を軽減するパケット通過制御装置が開示されている。また、特許文献2には、サイト外ネットワークのクライアントからサイト内ネットワークのサーバへの通信に、SPIを適用できるようにした通信制御装置を備えたゲートウェイが開示されている。特許文献1、2において、SPI処理に必要な通信の監視と制御を一つの装置で行っている。さらに、読み取られるパケットとは一度通信を許可したパケットも含まれる。
特開2007−221240号公報 特開2009−272659号公報
Nick McKeown et al, "OpenFlow:Enabling Innovation in Campus Networks," ACM SIGCOMM Computer Communication Review-Volume 38, 2008, pp.69-74 OpenFlow Switch Specification Version 1.0.0 (Wire Protocol 0x01)、2009年12月31日、[2011年3月8日検索]、インターネット<URL:http://www.openflow.org/documents/openflow-spec-v1.0.0.pdf>
以下に関連技術の分析を記載する。
非特許文献1や非特許文献2で開示/規定されているオープンフローネットワークでは、フローセットアップ後のパケットを監視する構成とされていない。このため、SPIを実現することはできない。以下、この問題について説明する。
オープンフローコントローラにおいて一度許可したフローに属する後続パケットは、オープンフローコントローラで決定された経路上の1つ又は複数のオープンフロースイッチのみを経由して、通信先(送信先の端末)へと転送される。このため、オープンフローコントローラでは、関連通信(related communication)やセッションの終了等の通常の状況を補足することができない。したがって、SPIを実現できない。
オープンフローコントローラは、各オープンフロースイッチから統計情報を取得することはできる。しかしながら、上述したように、得られる情報は限られている。オープンフローコントローラは、関連パケットの通信可否を判定するためのTCPヘッダのフラグ情報や、関連ポート情報を取得することはできない。
ここで、監視対象のパケットをオープンフロースイッチからオープンフローコントローラに送るシステム(参考例)を想定し、このシステムについて検討する。一般的に、オープンフロースイッチとオープンフローコントローラ間の通信の帯域は狭い。通常、一つのオープンフローコントローラは、複数のオープンフロースイッチに接続している。監視対象のパケット全てを、オープンフロースイッチからオープンフローコントローラに転送する構成の場合、オープンフローコントローラでは、輻輳が発生する。したがって、参考例のシステム構成(監視対象のパケットをオープンフロースイッチからオープンフローコントローラに送る構成)は実用的ではない。
このため、オープンフローにSPI処理を実現することはできない。すなわち、例えば特許文献1、2等に開示された構成をオープンフロー対応の通信システムに実装することはできない。
したがって、本発明は、上記問題点に鑑み創案されたものであって、その目的は、例えばオープンフロー(OpenFlow)対応又はこれに類するシステムに適用可能とされ、SPI(Stateful Packet Inspection)又は等価な機能を実現可能とする通信システム、通信方法、及びプログラムを提供することにある。
本発明によれば、設定された転送ルールに従いパケット転送を行う少なくとも1つのノードと、
前記パケットの送信元の端末及び送信先の端末と、
前記ノードにネットワークを介して接続され前記ノードの制御を行う制御装置と、
前記ノードと前記制御装置にネットワークを介して接続され、前記端末間の前記ノードに転送されるパケットを監視する少なくとも1つの監視装置と、
を備え、
前記制御装置は、前記ノードから転送されたパケットに対して、前記監視装置がパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、通信可否の判定を行う通信可否判定手段と、
前記通信可否判定手段で通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する転送ルール設定手段と、
を備えた通信システムが提供される。
本発明の別の側面によれば、少なくとも一つの監視装置で、設定された転送ルールに従いパケット転送を行うノードであって、パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、
前記ノードから転送されたパケットに対して、前記パケットの通信可否判の判定を行う通信可否判定手段と、
前記通信可否判定手段で通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する転送ルール設定手段と、
を備えた制御装置が提供される。
本発明の別の側面によれば、パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視する監視装置であって、
前記パケットを監視し通信状況を取得するパケット解析手段、又は、
前記パケット解析手段と通信状況を保持する通信状況保持手段、
を備え、
前記監視装置は、前記監視装置で収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記ノードから送信されたパケットに対して通信可否判の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして設定する制御装置に対して、
前記通信状況を、送信する監視装置が提供される。
本発明のさらに別の側面によれば、少なくとも1つの監視装置で、設定された転送ルールに従いパケット転送を行うノードであって、前記パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視し、
前記ノードに接続される制御装置は、前記ノードから送信されたパケットを受けると、前記監視装置でパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記パケットの通信可否判の判定を行い、
通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する通信方法が提供される。
本発明のさらに別の側面によれば、転送ルールを含むルールを記憶するフローテーブルを備え、ノード装置は前記転送ルールに従いパケット転送を行い
受信パケットをフローテーブルのルールと照合し、マッチしない場合、制御装置に前記受信パケットを転送し、前記制御装置は、前記ノードから転送された前記受信パケットに対して、監視装置がパケットを監視して収集した情報と、予め定められた通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、通信可否の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして送信し、
前記制御装置から前記転送ルールを受信して前記フローテーブルに設定し、
前記受信パケット以降に受信したパケットのうち前記フローテーブルの前記転送ルールにマッチするパケットを前記送信先の端末と前記監視装置に転送する通信処理部を備えた、ノード装置が提供される。
本発明のさらに別の側面によれば、設定された転送ルールに従いパケット転送を行う少なくとも一つのノードに接続される制御装置を構成するコンピュータに、
少なくとも一つの監視装置で、前記パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、
前記ノードから送信されたパケットの通信可否判の判定を行う処理と、
通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する処理と、
を実行させるプログラムが提供される。
本発明によれば、上記プログラムを記録した、メモリ、ディスク媒体、メモリ・ディスクユニットが提供される。
本発明によれば、例えばオープンフロー(OpenFlow)対応、又はこれに類するシステムに適用可能とされ、SPI処理又は等価な機能を実現可能としている。
本発明の例示的な第1の実施形態のシステム構成を例示する図である。 本発明の例示的な第1の実施形態における制御装置の構成を例示する図である。 本発明の例示的な第1の実施形態における監視装置の構成を例示する図である。 本発明の例示的な第1の実施形態の動作例を説明するフローチャートである。 本発明の例示的な第2の実施形態における制御装置の構成を例示する図である。 本発明の例示的な第2の実施形態における監視装置の構成を例示する図である。 本発明の例示的な第3の実施形態の制御装置の構成を例示する図である。 本発明の例示的な第5の実施形態の構成を例示する図である。 本発明の例示的な第7の実施形態の構成を例示する図である。 本発明の例示的な第1の実施形態におけるノードの構成を例示する図である。 オープンフローのパケットのヘッダ情報を示す図である。
以下、本発明のいくつかの実施形態について図面を参照して詳細に説明する。
<第1の実施形態>
(システム構成)
図1は、第1の例示的な実施形態による通信システムの全体の構成を例示する図である。図1を参照すると、この通信システムは、制御装置1と、監視装置2と、ノード3と、端末4A及び4Bと、を備えている。各端末を区別する必要がない場合には、端末4A及び端末4Bを端末4あるいは単に「端末」ともいう。端末4A、4Bはノード3に接続され、ユーザパケットの転送ネットワークを形成する。
ノード3は、オープンフロースイッチ、若しくは、オープンフロースイッチに類する転送ノードである。
図1では、端末4A及び端末4Bはノード3に接続され、端末4Aと端末4Bの間の経路は、ノード3を通過する経路である。
制御装置1、監視装置2、及びノード3は相互に接続され、制御用ネットワークを形成する。制御用ネットワークは、専用のネットワークで構成されていても良い。制御用ネットワークは、例えば、上述のオープンフローネットワークにおいては、セキュアチャネルによる専用ネットワークで構成される。本実施形態では、制御装置1が、監視装置2から受け取った通信状況を保持する。
(制御装置)
図2は、第1の実施形態による制御装置1の構成の一例を示す図である。図2を参照すると、制御装置1は、通信可否判定手段101、転送ルール設定手段102、通信状況保持手段103、ファイアーウォール・ルール104を含む。
通信可否判定手段101は、ノード(図1の3)から転送された受信パケット(例えばファーストパケット)を解析し、フロー情報(パケットの送信元と送信先のフロー)、及び、通信状況に関する情報(例えばTCPヘッダのフラグ情報等)を抽出し、予め指定されたファイアーウォール・ルール104と、通信状況保持手段103に保持される通信状況(フローに関連する通信状況)を参照して、通信の可否を決定する。例えば、通信状況保持手段103に保持された当該フローに関連する通信状況がNEWであるとき、ノード(図1の3)から転送された受信パケット(ファーストパケット)のTCPヘッダのSYNフラグがオンでないパケットは、ファイアーウォール・ルール104の設定ルールに基づき、通信を許可しない。
通信可否判定手段101は、通信を許可しない場合、例えば、受信パケットを廃棄する。なお、制御装置1側で、通信を許可しないと判定したパケットを廃棄した場合、該パケットを送信した送信元の端末4では送信リトライ等の結果、例えば送信エラーとなる(この場合の対応(手順)は、実装する上位レイヤ等のプロトコルに依存する)。
通信状況保持手段103は、半導体メモリ、磁気ディスク等の記憶手段(不図示)と、該記憶手段への書き込み(更新)と読み出し(参照)を行うアクセス手段(不図示)とを備え、各フローに関連する通信状況を、フローに対応させて記憶保持する。本実施形態では、通信状況保持手段103では、監視装置2からの通信情報の書き込み(更新)と、通信可否判定手段101からの読み出し(参照)又は書き込み(更新)が行われる。
ファイアーウォール・ルール104は、制御装置1において、不図示の入力手段等から入力される予め定められた所定のコマンド等によりフィルタリング条件等が設定される。例えば、通信状況がNEWのとき、受信パケット(ファーストパケット)がSYNパケットであれば、通信許可する等、のルールが設定される。
転送ルール設定手段102は、制御装置1で管理するネットワークトポロジー情報に基づく、経路計算と、経路上のノード3への転送ルール設定を行う。本実施形態では、通信可否判定手段101において、ノード3から転送されたパケット(例えばファーストパケット)に対して通信許可と判定した場合に、転送ルール設定手段102は、
・パケットの送信元の端末(例えば図1の4A)から送信先の端末(例えば図1の4B)へのパケット転送経路、及び、
・前記送信元の端末(例えば図1の4A)から前記監視装置(図1の2)への転送経路を、それぞれの転送経路上のノード(図1の3)に対して、転送ルールとして設定する(フローセットアップ)。
該セットアップにより、制御装置1から送信された転送ルールは、当該転送経路上のノード(図1の3)のフローテーブル(図10の302)のルール・アクション欄(パケットがルールにマッチしたとき、該パケットを当該転送経路に転送するという内容のアクション)に設定され、保持される。前記パケット(ファーストパケット)以降、前記送信元の端末(例えば図1の4A)から送信されたパケットは、前記転送経路上のノード(図1の3)において、フローテーブル(図10の302)の設定内容に従い、送信先の端末(例えば図1の4B)へのパケット転送経路、及び、前記監視装置(図1の2)への転送経路に転送される。
なお、関連技術のオープンフローコントローラでは、前述したように、ノード3からの受信パケット(フォーストパケット等)に対して、受信パケットの送信元・送信先情報に基づき、ネットワークトポロジー情報から、パケットの経路を決定し、フローセットアップを行う。これに対して、本実施形態では、制御装置1は、当該受信パケットの通信可否の判定を、ファイアーウォール・ルール104と、通信状況保持手段103に保持される通信状況(履歴)とに基づき行い、通信を許可する場合、フローセットアップにおいて、パケットの転送経路情報に。送信先端末だけのなく、監視装置への転送を加えた上で、前記転送経路上のノードのフローテーブルに設定するようにしている。
(監視装置)
図3は、第1の例示的な実施形態による監視装置2の構成の一例を例示する図である。図3を参照すると、監視装置2は、パケット解析手段201を含む。監視装置2は、ノード3の監視部(あるいは、監視モジュール)としてノード3内に配置する構成としてもよい。パケット解析手段201は、制御装置1からのフローセットアップにより、転送ルールがフローテーブルに設定されたノード(図1の3)から転送されるパケットを監視する。
パケット解析手段201で監視する情報は、オープンフローヘッダ情報、及び、上位レイヤのヘッダ、あるいは、ペイロード内の関連する通信のポート番号等の少なくとも1つを含む。
(ノード)
図10は、ノード3の構成を示す図である。通信処理部301と、フローテーブル302を備える。通信処理部301は、端末4A、4Bとの間でのパケットの送受(次のオープンフロースイッチへのパケットの送信等)、制御装置1へのパケット(例えばファーストパケット)の転送、監視装置2へのパケットの転送等を行う。フローテーブル302は、フロー毎に、前述したルール、アクション、統計情報等を含む。監視装置2とノード3の接続はユーザパケットの転送用である。
(システムの動作)
図4は、第1の例示的な実施形態のシステムの動作を示したフローチャートである。なお、図1の第1の例示的な実施形態において、ノード3は、図10に示した通り、前述したオープンフロースイッチに準拠した構成・機能を有し、制御装置1は、図2を参照して説明した通り、オープンフローコンローラに準拠した構成・機能を有する。
まず、端末A(図1の4A)が端末B(図1の4B)に向けたパケットをノード(図1の3)へ送信する(ステップS1)。
ノード(図1の3)では、端末Aから受け取ったパケットの情報(例えばヘッダ情報)とマッチするルールが存在するかをノード内のフローテーブル(図10の302)から検索する(ステップS2)。特に制限されないが、フローテーブルの各エントリのルールは、例えば宛先IPアドレス、送信元IPアドレス、送信元ポート、宛先ポート情報を含み、受信パケットのヘッダ情報が、該ルールにマッチしたときのアクションは、当該受信パケットの転送先となる。受信パケットのオープンフローにおけるヘッダ情報の宛先IPアドレス、送信元IPアドレス、送信元(Source)ポート、宛先(Destination)ポートに一致するルールのフローエントリが存在する場合、当該フローエントリのアクション欄に指定されたパケット転送先(本実施形態では、当該受信パケットの次の転送先(端末4B)と監視装置2)に該受信パケットが転送される。
ノード(図1の3)において、受信パケットのヘッダ情報にマッチするフローエントリが見つからなかった場合(ステップS3のNo)、ノード(図1の3)は、当該パケットを、制御装置(図1の1:オープンフローコントローラ)へセキュアチャネルで転送する(ステップS4)。
制御装置(図1の1)の通信可否判定手段(図2の101)は、ノード(図1の3)から転送された前記パケットの属するフローを許可するか否かを判定する(ステップS5)。その際、通信可否判定手段(図2の101)は、前記パケットを解析し、フロー情報(送信元端末と送信先端末間のフローに対応する経路)、及び通信状況に関する情報(例えばTCPヘッダのフラグ(Flags)情報、図11のFlags)を得る。
通信可否判定手段(図2の101)は、設定されたファイアーウォール・ルール104、及び、通信状況保持手段(図2の103)に保持される通信状況を参照して、前記フローに関連する通信状況のログ情報を参照し、通信の可否(当該フローを転送するパケットの通過の可否)を決定する。
通信状況としては、オープンフローにおけるヘッダに準ずるフロー情報(図11のFlags情報)とともに、前述したNEW、ESTABLISHED、RELATED等が保持される。ただし、通信状況は前述したNEW、ESTABLISHED、RELATEDに限定されない。
通信可否判定手段(図2の101)で、通信を許可しない場合、前記パケットを破棄する(ステップS7)。
通信可否判定手段(図2の101)で通信を許可する場合、制御装置(図1の1)の転送ルール設定手段(図2の102)は、前記パケットを転送したノード(図1の3)に対して、前記パケットの属するフローを、端末B(図1の4B)及び監視装置(図1の2)へ転送する転送ルール(転送先)を設定する(フローセットアップ)(ステップS8)。該フローセットアップにより、転送ルールは当該フローに属するノード(図1の3)のフローテーブル(図10の302)のルール・アクション欄に設定される。
次に、制御装置(図1の1)は、前記ノード(図1の3)を介して、前記パケットを、端末B(図1の4B)に転送する(ステップS9)。なお、制御装置(図1の1)で前記パケットの解析を行っているため、前記パケットは、監視装置(図1の2)へは転送されず、以降転送されるパケットがノード(図1の3)で、フローテーブルに設定されている前記転送ルールと照合され、転送ルールにマッチした場合、アクション欄に設定された転送先の1つである監視装置(図1の2)へ転送されることになる。
制御装置(図1の1)は、前記フローの通信状況を更新する(ステップS10)。すなわち、制御装置(図1の1)において、通信状況保持手段(図2の103)の通信状況が更新される。
また、ノード(図1の3)にて、入力するパケットとマッチするルールのフローエントリが見つかった場合は、マッチしたルール(転送ルール)のアクションに従い、端末B(図1の4B)及び監視装置(図1の2)へ当該パケットを転送する(ステップS11)。
監視装置(図1の2)は、ノード(図1の3)から転送された前記パケットを、パケット解析手段(図3の201)で解析し、前記パケットから通信状況を把握するために必要な情報を抽出する(ステップS12)。パケット解析手段(図3の201)で抽出する情報は、オープンフローヘッダ情報、及び、上位レイヤのヘッダ、データ内にある関連する通信のポート番号等の少なくとも1つを含む。
監視装置(図1の2)は、パケットから抽出した情報から、制御装置(図1の1)において、通信状況の更新が必要であるパケットであるか(例えば更新が必要なプロトコルのパケットであるか)否かを判定する(ステップS13)。監視装置(図1の2)において、通信状況の更新が必要と判定した場合、該通信状況が、制御装置(図1の1)へ送られ、通信状況保持手段(図2の103)は、保持する通信状況を、監視装置(図1の2)から送信された通信状況に基づき、更新する。
更新された通信状況は、制御装置(図1の1)でノード(図1の3)からの新たな受信パケットを受け、通信拒否判定手段101で通信可否判定を行う際に参照される。
さらに、厳密なファイアーウォール動作を実現するために、通信状況の更新時に、通信許可判定を行い、既存の通信が許可されなくなった場合には、この通信(既存の通信が許可されなくなったフロー)の転送ルールを削除するようにしてもよい。
(作用効果)
例示的な第1の実施形態によれば、制御装置1の通信可否判定手段101において通信状況を参照する。このため、通信状況に応じて通信の可否を判定することができる。すなわち、SPI処理を行うことができる。
また、例示的な第1の実施形態によれば、制御装置1には、ノード3から転送されるパケットインの他に、監視装置2から通信状況の更新のみが送られる。このため、全通信のパケットを制御装置1に転送して監視する構成と比べて、制御装置1へのデータ転送量及び制御装置1でのパケット解析量が削減される。
なお、図1では、代表的な構成の一例として、1つのノード3を示しているが、端末4A、4B間に、以下の例示的な実施形態で説明するように、複数のノード3を備えた構成としてもよいことは勿論である。
なお、図2、図3に示した制御装置1、監視装置2の各手段の制御、処理は、制御装置1、監視装置2を構成するコンピュータで実行されるプログラムにより実現するようにしてもよい。この場合、該プログラムはメモリ、磁気/光ディスク等のストレッジ媒体、又は装置に記憶保持され、該コンピュータで読み出され実行される。以下の実施形態においても同様とされる。
<第2の実施形態>
例示的な第2の実施形態では、通信状況を監視装置2側で保持する。制御装置1は、監視装置2への通信状況の問合せとノード3の制御を行う。例示的な第2の実施形態のシステムの構成について、図1、図5、図6を用いて説明する。例示的な第2の実施形態のシステムの全体の構成は、図1に示す構成とされ、前記例示的な第1の実施形態と同様である。
(制御装置)
図5は、例示的な第2の実施形態の制御装置1の構成を例示する図である。図5を参照すると、制御装置1は、通信可否判定手段101と、転送ルール設定手段102と、ファイアーウォール・ルール104と、通信状況収集手段105を含む。本実施形態では、制御装置1において、図2の通信状況保持手段103を備えていない。
(監視装置)
図6は、第2の実施形態による監視装置2の構成を例示する図である。図6を参照すると、監視装置2は、パケット解析手段201と、通信状況保持手段202と、通信状況応答手段203を含む。監視装置2は、通信状況の監視と、制御装置1からの問い合わせに応答する。監視装置2は、ノード3の監視部(監視モジュール)としてノード3内に配置するようにしてもよい。
(システムの動作)
本実施形態は、図4において、通信可否判定ステップ(図4のS6)と、通信状況更新ステップ(図4のS10)が、前記例示的な第1の実施形態と相違している。図4の他のステップは、前記例示的な第1の実施形態と同様である。
本実施形態において、通信可否判定ステップ(図4のS6)では、制御装置1の通信可否判定手段101が、パケットの属するフローの通信を許可するかを判定する。このとき、通信可否判定手段101は、まず、前記パケットを解析し、フロー情報、及び通信状況に関する情報を得る。
続いて、通信可否判定手段101は、設定されたファイアーウォール・ルール104と、制御装置1の通信状況保持手段103に保持された通信状況から、当該フローに関連する通信状況を参照し、通信の可否を決定する。
前記フローに関連する通信状況は、制御装置1の通信状況収集手段105によって、通信状況を監視装置2に問い合わせる。監視装置2では、制御装置1からの前記問合せを受けて、通信状況応答手段203が通信状況保持手段202から関連する通信状況を得て制御装置1へ返す。
通信状況の更新は、監視装置2の通信状況保持手段202に対して行われる。
ノード3において、受信パケットのヘッダとマッチするフローエントリが無かった受信パケットについては、監視装置2から通信状況の更新情報を制御装置1へ転送する。ただし、ノード3から直接、監視装置2にパケットを転送し、フローエントリがあった場合と同じようにパケット解析し、通信状況を更新するようにしてもよい。
端末4A、4B間の双方向通信の状況は前記パケットと逆向きのパケットに関する通信状況を参照し、通信状況を更新・保持する。
(作用効果)
例示的な第2の実施形態によれば、通信状況は、監視装置2で更新され、通信可否判定時にのみ、監視装置2から制御装置1に送られる。例示的な第2の実施形態によれば、前記例示的な第1の実施形態と同様の効果に加えて、監視装置2から制御装置1への送信頻度と、送信データ量を削減することができる。
<第3の実施形態>
例示的な第3の実施形態では、通信状況を制御装置1と監視装置2で両方で保持するようにしたものである。本実施形態のシステムの構成は、前記第1、2の実施形態の説明で参照した図1と基本的に同一である。監視装置2の構成は、図6に示した構成と基本的に同一である。監視装置2は、通信状況保持手段202を備えている。
(制御装置)
図7は、制御装置1の構成を示す図である。図7を参照すると、制御装置1は、通信可否判定手段101と、転送ルール設定手段102と、通信状況保持手段103と、ファイアーウォール・ルール104と、通信状況収集手段105を含む。
通信状況保持手段103、202は、制御装置1と監視装置2にそれぞれ配設される。
制御装置1の通信状況保持手段103は、ファーストパケットとして、制御装置1へ転送されたパケットから抽出した通信状況を保持する。
(システムの動作)
本実施形態では、前記例示的な第1、第2の実施形態とは、通信可否判定ステップ(図4のS6)、通信状況更新(図4のS13)のステップが相違している。図4の他のステップは前記例示的な第1、第2の実施形態と同様とされる。
通信状況の更新は、制御装置1の通信状況保持手段103あるいは監視装置2の通信状況保持手段202で行われる。
ノード3において受信パケットのヘッダ情報にマッチするルールのエントリが存在しない場合(例えばファーストパケットの場合)、ノード3から制御装置1にパケットが転送され、制御装置1にて通信可否の判定をした後に、抽出した通信状況の情報を制御装置1の通信状況保持手段103に渡す。
ノード3のフローテーブルに、受信パケットとマッチしたルール(転送ルール)がある場合、ノード3から、監視装置2に該受信パケットが転送され、監視装置2のパケット解析手段201で該受信パケットを解析した後に、抽出した通信状況の情報を通信状況保持手段202に渡す。
制御装置1の通信可否判定手段101において、前記パケットが転送されるフローに関連する通信状況は、制御装置1の通信状況収集手段105に問い合わせる。
制御装置1の通信状況収集手段105は、制御装置1及び監視装置2の通信状況保持手段103、202から、前記パケット(フロー)に関連する通信状況を取得する。このとき、通信状況保持手段103、202とで異なる値が保持されている場合がある。この場合、通信状況収集手段105は、制御装置1の通信状況保持手段103と監視装置2の通信状況保持手段202から取得した通信状況に基づき、該当するパケット(フロー)に関する通信状況を新たに生成し、生成した通信状況を通信可否判定手段101に返す。通信可否判定手段101では、通信状況収集手段105で生成された通信状況と、設定されたファイアーウォール・ルール104に基づき、受信パケットの通過の可否を判定する。
例えば、端末4A、4B間の双方向通信における正方向(送信元端末から送信先端末)と逆方向(前記送信先端末から前記送信先端末)の経路が異なっている場合等(例えば、フローの集約(アグリゲーション)等により経路が変更された場合等)において、逆方向の通信状況が、別の装置の通信状況保持手段に保持され、通信状況をそのまま参照・更新することができない場合がある。端末4A、4B間の双方向通信における正方向の経路の通信状況を制御装置1の通信状況保持手段103で保持し、逆方向の経路の通信状況を監視装置2の通信状況保持手段202にて保持している場合等、例えば正方向/逆方向の経路の通信の可否判定に、逆方向/正方向の経路の通信状況を参照することはできない。あるいは、正方向/逆方向の経路の通信状況を逆方向/正方向の経路の通信状況で更新することはできない。このような場合、監視装置2の通信状況保持手段202では、通信状況は、保持せず、他の情報、例えば、パケット情報(ヘッダ情報、あるいはペイロード内のIPアドレス又はポート情報)、及び時刻(パケット受信時刻)を保持するようにしてもよい。制御装置1の通信状況収集手段105は、制御装置1の通信状況保持手段103の情報と、監視装置2の通信状況保持手段202からの情報(パケット情報、受信時刻)に基づき、該当するフローの通信状況を生成する。
(作用効果)
例示的な第3の実施形態によれば、通信状況の更新処理が、パケットの解析を行う制御装置1、監視装置2内で閉じている。例示的な第3の実施形態によれば、前記例示的な第1、2の実施形態と比べて、通信状況更新における制御装置1と監視装置2間の通信を削減することができる。
<第4の実施形態>
例示的な第4の実施形態では、制御装置1が、監視装置2に対して、監視対象とする通信(パケット)を指示する。制御装置1にて、ファイアーウォール・ルール及び通信の種類からフロー毎に監視が必要か否かを判定し、ノードに対し、このフローを監視装置へ転送するルールを設定する。
特に制限されないが、監視が必要となる条件としては、例えば
・状態(ステート)を指定したファイアーウォール・ルール104があること、
・TCP等伝送制御される通信であること、
・FTP制御等他の通信を制御する通信であること、
が挙げられる。
さらに、ノード3を、前述したオープンフローのヘッダ情報に加え、TCPフラグ等をノード3のフローテーブルに指定できるように拡張し、監視対象のパケットを絞るようにしてもよい。特に制限されないが、この動作は、例えばフローのフローセットアップ時に行うようにしてもよい。あるいは、ファイアーウォール・ルール変更時も挙げられる。
(作用効果)
本実施形態によれば、監視装置2は制御装置1から指示された通信のみを監視対象とする。このため、前記例示的な第1乃至第の3の実施形態と同様の効果に加えて、不要な通信の解析処理を削減することができる、という効果を奏する。
<第5の実施形態>
例示的な第5の実施形態は複数ノードと、一つの監視装置で構成される。図8は、第5の実施形態のシステムの全体構成を例示する図である。図8によれば、システムは、制御装置1、監視装置2、ノード3A、3B、及び端末4A、4Bを備えている。なお、監視装置2は1つであり、ノード3及び端末4は複数ある(2個に限定されない)。ノード3が複数ある場合、全てのノード3は他の1つあるいは複数のノードに接続されており、ユーザパケットの転送ネットワークを形成する。説明の上で各ノード及び各端末を区別する必要がない場合には、ノード3A及びノード3Bをノード、端末4A、端末4Bを端末という。
ノード3Aとノード3Bの間と、ノード3Aと端末4A、ノード3Bと端末4Bとの間はネットワークで接続され、ユーザパケットの転送ネットワークを形成する。
端末4Aはノード3Aに、端末4Bはノード3Bにそれぞれ接続され、端末4Aと端末4Bの間の経路は、ノード3A及びノード3Bを通過する経路である。ファーストパケットを除くユーザパケットはこの経路を辿って転送される。ノード3A、3Bは、それぞれ制御装置1及び監視装置2に接続され、前述した制御用ネットワークを形成する。なお、複数ノード3の一部のノードが、監視装置2に接続される構成としてもよい。例えば、ノード3間を中継するノードについては監視装置2に接続しない構成としてもよい。
ノード3から監視装置2へのパケット転送は、経路上のいずれかのノードから行えばよい。
したがって、ノード3から監視装置2へのパケット転送方法は、例えば以下の方法がある。例えば、端末4A又は4Bと接続されているノード3A又は3B(エッジノード)において端末4A又は4Bから受信したパケットを制御装置1に転送する。
若しくは、予め特定のノードを転送ノードとして決めておき、フローの経路上に、この転送ノードが無い場合、フロー経路上のノードからこの転送ノードまでのパケット転送ルールを設定する構成としてもよい。対象のパケットは各々のノードの転送ルールに従い、通信先の端末、及び監視装置に転送される。
本実施形態においては、複数のノードが存在する構成において、監視装置2若しくは制御装置1の通信状況保持手段202、103を用いる。さらに、制御装置1は、前記例示的な第1〜第4の実施形態と同様にして、通信状況保持手段103を参照して、通信の可否を判定する。
(作用効果)
本実施形態によれば、複数のノードが存在する構成において、前記例示的な第1乃至第4の実施形態と同様の作用効果を奏する。
<第6の実施形態>
例示的な第6の実施形態のシステム構成は、図8を参照して説明した前記例示的な第5の実施形態と同様に、複数ノードと一つの監視装置を備えている。例示的な第6の実施形態では、負荷を分散する構成とされる。
図8において、制御装置1は、フロー毎にどのノード3から監視装置2へパケットを転送するか決定する。より詳細には、本実施形態においては、制御装置1は、フローセットアップ毎に、転送経路上のノード3のフローテーブル若しくはそれに準ずる情報を基に、ノード3の負荷を考慮し、監視装置2へパケットを転送するノード3を決定し、この転送ルールを設定する。
(作用効果)
本実施形態によれば、上記の動作により、前記例示的な第1〜第5の実施形態と同様の効果に加えて、ノードにおける監視装置2へのパケット転送の負荷を分散させることができる。
<第7の実施形態>
例示的な第7の実施形態では、複数のノードと複数の監視装置を備えている。図9は、本実施形態のシステム構成を示す図である。
図9を参照すると、本実施形態のシステムは、制御装置1と、複数の監視装置2と複数のノード3A、3Bと、複数の端末4A、4Bを含む。本実施形態において、制御装置1と各監視装置2は、図6及び図7をそれぞれ参照して説明した前記第3の実施形態の制御装置1及び監視装置2と同様であるため、構成と動作の説明は省略する。
本実施形態によれば、前記例示的な第3の実施形態と同様の効果に加えて、複数の監視装置2を備え、監視装置2のパケット解析手段201と通信状況保持手段202の負荷を複数の監視装置2に分散させる。その結果、監視装置2の処理性能、及び、システム全体の処理性能を向上させることができる。
前記例示的な第3の実施形態から第7の実施形態に関して、第2の実施形態との比較を行いながら説明したが、上述の実施形態を適宜組み合わせて実施することも可能である。
また、上述の実施形態では、オープンフローを適用したネットワークについて説明したが、これに限られるものではない。オープンフロー以外であっても、制御サーバ等がネットワークの集中管理を行うようなネットワークであれば、適用可能である。
また、上記の実施形態による制御装置は、その有する機能をハードウェアで実現することも可能であるし、コンピュータと、コンピュータ上で実行されるプログラムとで実現することも可能である。プログラムは、磁気ディスクや半導体メモリ等の記録媒体に記録されて提供され、コンピュータの立ち上げ時などにコンピュータに読み取られる。このようにコンピュータの動作を制御し、コンピュータを上述の各実施形態における制御装置として機能させ、前述した処理を行わせる。
さらに、上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
設定された転送ルールに従いパケット転送を行う少なくとも1つのノードと、
前記パケットの送信元の端末及び送信先の端末と、
前記ノードにネットワークを介して接続され前記ノードの制御を行う制御装置と、
前記端末間の前記ノードに転送されるパケットを監視する少なくとも1つの監視装置と、
を備え、
前記制御装置は、前記ノードから転送されたパケットに対して、前記監視装置がパケットを監視して収集した情報と、予め定められた通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、通信可否の判定を行う通信可否判定手段と、
前記通信可否判定手段で通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、転送ルールとして設定する転送ルール設定手段と、
を備えたことする通信システム。
(付記2)
前記制御装置及び/又は前記監視装置は、通信状況を保持する通信状況保持手段を備えている、ことを特徴とする付記1に記載の通信システム。
(付記3)
前記監視装置が、前記ノードから転送されたパケットの情報を抽出し通信状況を取得するパケット解析手段と、
前記通信状況を保持する通信状況保持手段と、
を備え、
前記制御装置は、
前記監視装置が前記パケットを関して取得した通信状況を保持する通信状況保持手段、及び/又は、
前記監視装置に対して通信状況の問い合わせを行う通信状況収集手段を備え、
前記監視装置は、前記通信状況を前記制御装置に送信する、ことを特徴とする付記1又は2に記載の通信システム。
(付記4)
前記制御装置及び前記監視装置は、通信状況を保持する通信状況保持手段をそれぞれ備え、
前記通信状況収集手段は、前記制御装置及び前記監視装置の前記通信状況保持手段からの通信状況に基づき、該当するフローに関する通信状況を生成する、ことを特徴とする付記3に記載の通信システム。
(付記5)
前記監視装置は、前記ノードからのパケットに対して通信状況を取得するかわりに、前記パケットの情報と受信時刻を保持することを特徴とする付記4に記載の通信システム。
(付記6)
前記制御装置が、監視対象となる通信を、前記監視装置に指示する、ことを特徴とする付記1乃至3のいずれか一に記載の通信システム。
(付記7)
複数のノードを備え、前記複数のノードのうち、予め定められたノードが、前記監視装置へパケットを送信する、ことを特徴とする付記1乃至3のいずれか一に記載の通信システム。
(付記8)
前記制御装置が、前記複数のノードのうち、前記監視装置へパケットを送信するノードを決定する、ことを特徴とする付記1乃至7のいずれか一に記載の通信システム。
(付記9)
前記監視装置を複数備えたことを特徴とする付記1乃至8のいずれか一に記載の通信システム。
(付記10)
少なくとも一つの監視装置で、パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視して収集した情報と、通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、
前記ノードから転送されたパケットに対して、前記パケットの通信可否判の判定を行う通信可否判定手段と、
前記通信可否判定手段で通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、転送ルールとして設定する転送ルール設定手段と、
を備えた、ことを特徴とする制御装置。
(付記11)
前記監視装置で取得された通信状況を保持する通信状況保持手段を備えている、ことを特徴とする付記10に記載の制御装置。
(付記12)
前記監視装置が前記パケットを関して取得した通信状況を保持する通信状況保持手段、及び/又は、
前記監視装置に対して通信状況の問い合わせを行う通信状況収集手段を、
備えたことを特徴とする付記10又は11に記載の制御装置。
(付記13)
監視対象となる通信を、前記監視装置に指示する、ことを特徴とする付記10又は11に記載の制御装置。
(付記14)
複数のノードのうち、前記監視装置へパケットを送信するノードを決定する、ことを特徴とする付記10乃至13のいずれか一に記載の制御装置。
(付記15)
パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視する監視装置であって、
前記パケットを監視し通信状況を取得するパケット解析手段、又は、
前記パケット解析手段と通信状況を保持する通信状況保持手段、
を備え、
前記監視装置は、前記監視装置で収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記ノードから送信されたパケットに対して通信可否判の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして設定する制御装置に対して、
前記通信状況を、送信する、ことを特徴とする監視装置。
(付記16)
前記制御装置及び前記監視装置が、前記通信状況を保持する通信状況保持手段を備え、
前記ノードからのパケットに対して通信状況を取得するかわりに、前記パケットの情報と受信時刻を保持する、ことを特徴とする付記15に記載の監視装置。
(付記17)
少なくとも1つの監視装置で、設定された転送ルールに従いパケット転送を行うノードであって、前記パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視し、
前記ノードに接続される制御装置は、前記ノードから送信されたパケットを受けると、前記監視装置でパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記パケットの通信可否判の判定を行い、
通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する、ことを特徴とする通信方法。
(付記18)
前記制御装置及び/又は前記監視装置は、通信状況を保持する、ことを特徴とする付記17に記載の通信方法。
(付記19)
前記監視装置が、前記ノードから転送されたパケットの情報を抽出し通信状況を取得して通信状況を保持し、
前記制御装置は、前記監視装置に対して通信状況の問い合わせを行い、
前記監視装置は、前記制御装置からの問い合わせに対して通信状況を、前記制御装置に送信する、ことを特徴とする付記17又は18に記載の通信方法。
(付記20)
前記制御装置及び前記監視装置は通信状況をそれぞれ保持し、
前記制御装置は、前記制御装置及び前記監視装置に保持される前記通信状況に基づき、該当するフローに関する通信状況を生成する、ことを特徴とする付記17に記載の通信方法。
(付記21)
前記監視装置では、前記ノードからのパケットに対して通信状況を取得するかわりに、前記パケットの情報と受信時刻を保持することを特徴とする付記20に記載の通信方法。
(付記22)
前記制御装置が、監視対象となる通信を、前記監視装置に指示する、ことを特徴とする付記17又は18に記載の通信方法。
(付記23)
複数のノードを備え、前記複数のノードのうち、予め定められたノードが、前記監視装置へパケットを送信する、ことを特徴とする付記17乃至19のいずれか一に記載の通信方法。
(付記24)
前記制御装置が、前記複数のノードのうち、前記監視装置へパケットを送信するノードを決定する、ことを特徴とする付記17乃至23のいずれか一に記載の通信方法。
(付記25)
設定された転送ルールに従いパケット転送を行う少なくとも一つのノードに接続される制御装置を構成するコンピュータに、
少なくとも一つの監視装置で、前記パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視して収集した情報と、通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、
前記ノードから送信されたパケットの通信可否判の判定を行う処理と、
通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、転送ルールとして設定する処理と、
を実行させるプログラム。
(付記26)
前記制御装置が、監視対象となる通信を前記監視装置に指示する処理を前記コンピュータに実行させる付記25記載のプログラム。
(付記27)
転送ルールを含むルールを記憶するフローテーブルを備え、ノード装置は前記転送ルールに従いパケット転送を行い、
受信パケットを前記フローテーブルのルールと照合し、マッチしない場合、制御装置に前記受信パケットを転送し、前記制御装置は、前記ノードから転送された前記受信パケットに対して、監視装置がパケットを監視して収集した情報と、予め定められた通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、通信可否の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして送信し、
前記制御装置から前記転送ルールを受信して前記フローテーブルに設定し、
前記受信パケット以降に受信したパケットのうち前記フローテーブルの前記転送ルールにマッチするパケットを前記送信先の端末と前記監視装置に転送する通信処理部を備えた、ことを特徴とするノード装置。
(付記28)
前記監視装置を備えたことを特徴とする付記27記載のノード装置。
(付記29)
付記1乃至9の通信システムの前記ノードに接続される端末。
なお、上記の特許文献、非特許文献の各開示を、本書に引用をもって繰り込むものとする。本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各付記の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせないし選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
1、1A、1B、制御装置
2、2A、2B、監視装置
3、3A、3B ノード
4、4A、4B 端末
101 通信可否判定手段
102 転送ルール設定手段
103 通信状況保持手段
104 ファイアーウォール・ルール
105 通信状況収集手段
201 パケット解析手段
202 通信状況保持手段
203 通信状況応答手段
301 通信処理部
302 フローテーブル

Claims (10)

  1. 設定された転送ルールに従いパケット転送を行う少なくとも1つのノードと、
    前記パケットの送信元の端末及び送信先の端末と、
    前記ノードにネットワークを介して接続され前記ノードの制御を行う制御装置と、
    前記ノードと前記制御装置にネットワークを介して接続され、前記端末間の前記ノードに転送されるパケットを監視する少なくとも1つの監視装置と、
    を備え、
    前記制御装置は、前記監視装置が前記パケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記ノードから転送されたパケットに対して通信可否の判定を行う通信可否判定手段と、
    前記通信可否判定手段での通信許可の判定に応じて、前記パケットの送信元の端末から送信先の端末へのパケットの転送経路、及び、前記送信元の端末から前記監視装置へのパケットの転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する転送ルール設定手段と、
    を備えた、ことを特徴とする通信システム。
  2. 前記制御装置及び前記監視装置の少なくとも一方は、前記監視装置が前記パケットを監視して取得した通信状況を保持する通信状況保持手段を備えている、ことを特徴とする請求項1に記載の通信システム。
  3. 前記監視装置が、前記ノードから転送されたパケットの情報を抽出し通信状況を取得するパケット解析手段と、
    前記パケット解析手段で取得した通信状況を保持する通信状況保持手段と、
    を備え、
    前記制御装置は、
    前記監視装置が前記パケットを監視して取得した通信状況を保持する通信状況保持手段、及び/又は、
    前記監視装置に対して通信状況の問い合わせを行う通信状況収集手段を備え、
    前記監視装置は、前記通信状況を前記制御装置に送信する、ことを特徴とする請求項1記載の通信システム。
  4. 前記制御装置が、監視対象となる通信を前記監視装置に指示する、ことを特徴とする請求項1または2に記載の通信システム。
  5. 複数の前記ノードを備え、複数の前記ノードのうち予め定められた少なくとも1つのノードが前記監視装置へパケットを送信する、ことを特徴とする請求項1乃至3のいずれか1項に記載の通信システム。
  6. 少なくとも一つの監視装置で、設定された転送ルールに従いパケット転送を行うノードであって、パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、
    前記ノードから転送されたパケットに対して、前記パケットの通信可否判の判定を行う通信可否判定手段と、
    前記通信可否判定手段で通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する転送ルール設定手段と、
    を備えた、ことを特徴とする制御装置。
  7. パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視する監視装置であって、
    前記パケットを監視し通信状況を取得するパケット解析手段、又は、
    前記パケット解析手段と通信状況を保持する通信状況保持手段、
    を備え、
    前記監視装置は、前記監視装置で収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記ノードから送信されたパケットに対して通信可否判の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして設定する制御装置に対して、
    前記通信状況を、送信する、ことを特徴とする監視装置。
  8. 転送ルールを含むルールを記憶するフローテーブルを備え、ノード装置は、前記転送ルールに従いパケット転送を行い、
    受信パケットを前記フローテーブルのルールと照合し、マッチしない場合、制御装置に前記受信パケットを転送し、前記制御装置は、前記ノードから転送された前記受信パケットに対して、監視装置がパケットを監視して収集した情報と、予め定められた通信状況をフィルタリング条件として指定したファイアーウォール・ルールとに従って、通信可否の判定を行い、通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して転送ルールとして送信し、
    前記制御装置から前記転送ルールを受信して前記フローテーブルに設定し、
    前記受信パケット以降に受信したパケットのうち前記フローテーブルの前記転送ルールにマッチするパケットを前記送信先の端末と前記監視装置に転送する通信処理部を備えた、ことを特徴とするノード装置。
  9. 少なくとも1つの監視装置で、設定された転送ルールに従いパケット転送を行うノードであって、前記パケットの送信元の端末及び送信先の端末間の少なくとも1つのノードに転送されるパケットを監視し、
    前記ノードに接続される制御装置は、前記ノードから送信されたパケットを受けると、前記監視装置でパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、前記パケットの通信可否判の判定を行い、
    通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する、ことを特徴とする通信方法。
  10. 設定された転送ルールに従いパケット転送を行う少なくとも一つのノードに接続される制御装置を構成するコンピュータに、
    少なくとも一つの監視装置で、前記パケットの送信元の端末及び送信先の端末間の少なくとも一つのノードに転送されるパケットを監視して収集した情報と、予め定められたフィルタリング条件が設定されたファイアーウォール・ルールとに従って、
    前記ノードから送信されたパケットの通信可否判の判定を行う処理と、
    通信許可する場合に、前記パケットの送信元の端末から送信先の端末へのパケット転送経路、及び、前記送信元の端末から前記監視装置への転送経路を、それぞれの前記転送経路上の前記ノードに対して、前記転送ルールとして設定する処理と、
    を実行させるプログラム。
JP2014554639A 2012-05-09 2012-11-27 通信システムと通信方法並びにプログラム Pending JP2015521391A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014554639A JP2015521391A (ja) 2012-05-09 2012-11-27 通信システムと通信方法並びにプログラム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2012107596 2012-05-09
JP2012107596 2012-05-09
JP2014554639A JP2015521391A (ja) 2012-05-09 2012-11-27 通信システムと通信方法並びにプログラム
PCT/JP2012/007592 WO2013168207A1 (en) 2012-05-09 2012-11-27 Communication system, communication method, and program

Publications (1)

Publication Number Publication Date
JP2015521391A true JP2015521391A (ja) 2015-07-27

Family

ID=49550293

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014554639A Pending JP2015521391A (ja) 2012-05-09 2012-11-27 通信システムと通信方法並びにプログラム

Country Status (2)

Country Link
JP (1) JP2015521391A (ja)
WO (1) WO2013168207A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021229657A1 (ja) * 2020-05-11 2021-11-18 日本電信電話株式会社 パケット転送システム及び経路設定方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6200348B2 (ja) * 2014-02-25 2017-09-20 日本電信電話株式会社 アプリケーション識別システム
CN110061924B (zh) * 2019-04-18 2022-05-06 东软集团股份有限公司 一种报文转发方法、装置及相关产品

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2193630B1 (en) * 2007-09-26 2015-08-26 Nicira, Inc. Network operating system for managing and securing networks
JP5614410B2 (ja) * 2009-11-27 2014-10-29 日本電気株式会社 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム
JPWO2011155510A1 (ja) * 2010-06-08 2013-08-01 日本電気株式会社 通信システム、制御装置、パケットキャプチャ方法およびプログラム
JP5557066B2 (ja) * 2010-10-15 2014-07-23 日本電気株式会社 スイッチシステム、モニタリング集中管理方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021229657A1 (ja) * 2020-05-11 2021-11-18 日本電信電話株式会社 パケット転送システム及び経路設定方法
JP7460930B2 (ja) 2020-05-11 2024-04-03 日本電信電話株式会社 パケット転送システム及び経路設定方法

Also Published As

Publication number Publication date
WO2013168207A1 (en) 2013-11-14

Similar Documents

Publication Publication Date Title
JP5382451B2 (ja) フロントエンドシステム、フロントエンド処理方法
EP3958521A1 (en) Method and apparatus for providing service for service flow
US9215175B2 (en) Computer system including controller and plurality of switches and communication method in computer system
CN108601043B (zh) 用于控制无线接入点的方法和设备
JP5800019B2 (ja) 通信経路制御システム、経路制御装置、通信経路制御方法および経路制御プログラム
EP3593498B1 (en) Router device using flow duplication
EP3342127A1 (en) Network packet flow controller with extended session management
EP2693696A1 (en) Computer system, and communication method
WO2011087085A1 (ja) 計算機、ネットワーク接続切替え方法およびプログラム
EP2493128A1 (en) Communication system, flow control apparatus, flow table updating method and program
EP2619953B1 (en) A control apparatus, a communication system, a communication method and a recording medium having recorded thereon a communication program
EP3574617B1 (en) Method and apparatus for managing routing disruptions in a computer network
EP2833585B1 (en) Communication system, upper layer switch, control device, switch control method, and program
EP2830265A1 (en) Control device, communication device, communication system, communication method, and program
US9397937B2 (en) Computer system, server, open flow controller and communication method
JP5720340B2 (ja) 制御サーバ、通信システム、制御方法およびプログラム
JP5534033B2 (ja) 通信システム、ノード、パケット転送方法およびプログラム
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
JP2015521391A (ja) 通信システムと通信方法並びにプログラム
JP6718739B2 (ja) 通信装置および通信方法
WO2015045275A1 (ja) 制御装置、ネットワークシステム、パケット転送制御方法、制御装置用プログラム
JP2006050433A (ja) トラヒック監視装置、通信ネットワークトラヒック監視システム、および監視方法
JP4333436B2 (ja) 管理サーバ装置
JP6314970B2 (ja) 通信システム、制御装置、通信方法およびプログラム
JP5861424B2 (ja) 通信システム、制御装置、通信方法およびプログラム