[go: up one dir, main page]

JP5861424B2 - 通信システム、制御装置、通信方法およびプログラム - Google Patents

通信システム、制御装置、通信方法およびプログラム Download PDF

Info

Publication number
JP5861424B2
JP5861424B2 JP2011266872A JP2011266872A JP5861424B2 JP 5861424 B2 JP5861424 B2 JP 5861424B2 JP 2011266872 A JP2011266872 A JP 2011266872A JP 2011266872 A JP2011266872 A JP 2011266872A JP 5861424 B2 JP5861424 B2 JP 5861424B2
Authority
JP
Japan
Prior art keywords
address
communication
node
request message
address resolution
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.)
Active
Application number
JP2011266872A
Other languages
English (en)
Other versions
JP2013120982A (ja
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 JP2011266872A priority Critical patent/JP5861424B2/ja
Publication of JP2013120982A publication Critical patent/JP2013120982A/ja
Application granted granted Critical
Publication of JP5861424B2 publication Critical patent/JP5861424B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、通信システム、制御装置、通信方法およびプログラムに関し、特に、スイッチ等の通信ノードを集中制御する制御装置を含む通信システム、制御装置、通信方法およびプログラムに関する。
近年、オープンフロー(OpenFlow)という技術が提案されている(特許文献1、非特許文献1、2参照)。オープンフローは、通信をエンドツーエンドのフローとして捉え、フロー単位で経路制御、障害回復、負荷分散、最適化を行うものである。非特許文献2に仕様化されているオープンフロースイッチは、オープンフローコントローラとの通信用のセキュアチャネルを備え、オープンフローコントローラから適宜追加または書き換え指示されるフローテーブルに従って動作する。フローテーブルには、フロー毎に、パケットヘッダと照合する内容が定められたマッチフィールド(Match Fields)と、フロー統計情報(Counters)と、処理内容を定義したインストラクション(Instructions)と、の組が定義される(図16参照)。
例えば、オープンフロースイッチは、パケットを受信すると、フローテーブルから、受信パケットのヘッダ情報に適合するマッチフィールド(図16参照)を持つエントリを検索する。検索の結果、受信パケットに適合するエントリが見つかった場合、オープンフロースイッチは、フロー統計情報(カウンタ)を更新するとともに、受信パケットに対して、当該エントリのインストラクションフィールドに記述された処理内容(指定ポートからのパケット送信、フラッディング、廃棄等)を実施する。一方、検索の結果、受信パケットに適合するエントリが見つからなかった場合、オープンフロースイッチは、セキュアチャネルを介して、オープンフローコントローラに対してエントリ設定の要求、即ち、受信パケットの処理内容の決定の要求を送信する。オープンフロースイッチは、要求に対応するフローエントリを受け取ってフローテーブルを更新する。このように、オープンフロースイッチは、フローテーブルに格納されたエントリを処理規則として用いてパケット転送を行う。
また、非特許文献3には、上記したオープンフローを使用したシステムにおいてユーザ認証を用いてアクセスを制限する方法が提案されている。
特許文献2には、アクセスポリシーに基づき情報処理端末間の通信の可否を制御するネットワークセキュリティ監視システムが開示されている。同公報によると、ネットワークセキュリティ監視システムは、ネットワーク上に接続された情報処理端末間の通信許可/不許可をアクセスポリシーに基づき判断し、不許可と判断された情報処理端末のアクセスポリシーが不許可から許可に更新されるまで、不許可と判断された情報処理端末間の通信を遮断するための情報を一定時間間隔毎に繰返して送信することで、前記アクセスポリシーで不許可と定義された情報処理端末間の通信を迅速かつ確実に遮断し、許可と定義された情報処理端末間の通信可能状態を保持する、記載されている。
国際公開第2008/095010号 再表2009/031453号公報
Nick McKeownほか7名、"OpenFlow: Enabling Innovation in Campus Networks"、[online]、[平成23(2011)年9月1日検索]、インターネット〈URL: http://www.openflow.org/documents/openflow-wp-latest.pdf〉 "OpenFlow Switch Specification" Version 1.1.0 Implemented (Wire Protocol 0x02)、[online]、[平成23(2011)年9月1日検索]、インターネット〈URL:http://www.openflow.org/documents/openflow-spec-v1.1.0.pdf〉 山崎康広、大和純一、宮本善則、後藤英昭、曽根秀昭、"OpenFlowによるCampus VLANシステム"、信学技報、電子情報通信学会、2011年7月、信学技報 CQ2011−26、43〜48頁
以下の分析は、本発明によって与えられたものである。ある相手と通信を行う際に、当該通信相手に対するフレームやパケットを正しい相手に転送するため、下位レイヤのアドレスを解決しておく必要がある。このために、例えば、IPv4(Internet Protocol Version 4)では、ARP(Address Resolution Protocol)が用意され、IPv6(Internet Protocol Version 6)では、NDP(Neighbor Discovery Protocol)が用意されている。以下、ARPやNDPにおいて、上位アドレスに対応するMAC(Media Access Control)アドレス等のアドレスの解決を要求するメッセージを、「アドレス解決要求メッセージ」という。
上記したオープンフローに代表される集中制御型の通信システムにおいては、外部ノードから新規のアドレス解決要求メッセージを受信すると、通信ノード(特許文献1、非特許文献1、2の「オープンフロースイッチ」に相当。)は、制御装置(特許文献1、非特許文献1、2の「オープンフローコントローラ」に相当。)に対し、アドレス解決要求メッセージに対する処理を問い合わせてしまう。これを受けた制御装置は、必要に応じてアドレス解決要求メッセージの転送経路を決定し、宛先の外部ノードにアドレス解決要求メッセージを送信する制御を行ってしまう。また、前記宛先の外部ノードから応答があった場合も同様の手順で、送信元の外部ノードに対し、アドレスを含んだ応答メッセージを送信する制御が行われる。
前記応答メッセージには、当該外部ノードの下位アドレスが含まれている。このため、集中制御型の通信システムにおいても、アドレス解決要求メッセージを利用して、本来アクセスが許可されていない相手の下位アドレスを入手できてしまうという問題点がある。また、外部ノード同士が本来アクセスが許可されていない関係にある場合、上記したアドレス解決要求メッセージとその応答メッセージの転送は結果的に不必要なトラヒックを発生させていることになる。
なお、特許文献2のネットワークセキュリティ監視システムは、特許文献1、非特許文献1、2のような集中制御型の通信システムではない。このため、各情報処理端末同士は必要に応じてARP要求パケットとその応答を授受してしまう。そこで、ネットワークセキュリティ監視システムは、ARP要求パケットを傍受して、通信許可/不許可を判断し、通信不許可と判断した端末間の通信を遮断するための情報を一定時間繰り返して送信する処理を行っている。
本発明は、上記した事情に鑑みてなされたものであって、その目的とするところは、上記したオープンフローに代表される集中制御型の通信システムにおいて、禁止すべきあるいは不必要なアドレス解決要求メッセージとその応答メッセージの授受を抑制することのできる通信システム、制御装置、通信方法およびプログラムを提供することにある。
本発明の第1の視点によれば、少なくとも1つ以上の通信ノードと、前記通信ノードを制御し、複数の外部ノード間の通信を制御する制御装置と、前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、を含み、前記制御装置は、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する通信システムが提供される。
本発明の第2の視点によれば、複数の外部ノード間に配置された少なくとも1つ以上の通信ノードと、前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、に接続され、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する制御装置が提供される。
本発明の第3の視点によれば、少なくとも1つ以上の通信ノードと、前記通信ノードを制御し、複数の外部ノード間の通信を制御する制御装置と、前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、を含む通信システムにおいて、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージであるか否かを確認するステップと、前記アドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止するステップとを含む通信方法が提供される。本方法は、通信ノードを制御する制御装置という、特定の機械に結びつけられている。
本発明の第4の視点によれば、少なくとも1つ以上の通信ノードと、前記通信ノードを制御し、複数の外部ノード間の通信を制御する制御装置と、前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、を含む通信システムにおいて、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと接続が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージであるか否かを確認する処理と、前記アドレス解決要求メッセージが、一の外部ノードから当該外部ノードと接続が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する処理とを、前記制御装置を構成するコンピュータに実行させるプログラムが提供される。なお、このプログラムは、コンピュータが読み取り可能な記憶媒体に記録することができる。即ち、本発明は、コンピュータプログラム製品として具現することも可能である。
本発明によれば、集中制御型の通信システムにおいて、禁止すべきあるいは不必要なアドレス解決要求メッセージとその応答メッセージの授受を抑制することが可能となる。
本発明の一実施形態の構成を表わした図である。 本発明の一実施形態の動作概要を説明するための図である。 本発明の一実施形態の動作概要を説明するための別の図である。 本発明の第1の実施形態の構成を表わした図である。 本発明の第1の実施形態のOFCおよびOFSの詳細構成を表した図である。 ARPテーブルのエントリの例である。 ARP要求パケットに含まれる情報を説明するための図である。 ARP応答パケットに含まれる情報を説明するための図である。 本発明の第1の実施形態のOFCのアクセス制御DBに保持されるエントリの例である。 本発明の第1の実施形態のOFCの動作を表したフローチャートである。 本発明の第1の実施形態の動作(アクセス可判定時)を表したシーケンス図である。 本発明の第1の実施形態の動作(アクセス不可判定時)を表したシーケンス図である。 本発明の第2の実施形態の構成を表わした図である。 本発明の第3の実施形態の構成を表わした図である。 本発明の第4の実施形態のアクセス制御DBに保持されるエントリの例である。 非特許文献2に記載のフローエントリの構成を表した図である。
はじめに本発明の一実施形態の概要について図面を参照して説明する。なお、この概要に付記した図面参照符号は、理解を助けるための一例として各要素に便宜上付記したものであり、本発明を図示の態様に限定することを意図するものではない。
本発明は、図1に示すように、その一実施形態において、少なくとも1つ以上の通信ノード200と、通信ノード200を制御し、複数の外部ノード間の通信を制御する制御装置100と、通信可否記憶装置300と、を含む構成にて実現できる。通信可否記憶装置300は、前記複数の外部ノード間の接続可否を定義した接続可否情報を記憶する。例えば、図1の例では、外部ノードA−外部ノードB間および外部ノードB−外部ノードC間は接続可(OK)であるが、外部ノードA−外部ノードC間は接続不可(NG)との接続可否情報が設定されているものとする。
制御装置100は、通信ノード200を介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと接続が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、即ち、接続が禁止されている外部ノード間のアドレスを解決を要求するメッセージである場合、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する。
例えば、図1の外部ノードAと外部ノードBとの通信に先立って、外部ノードAは外部ノードBのアドレスを解決する必要がある。そこで、外部ノードAは、外部ノードB宛てのアドレス解決要求メッセージを送信する(図2の「外部ノードBのアドレス解決要求メッセージ」)。
前記アドレス解決メッセージを受信した通信ノード200は、制御装置100に対し、アドレス解決要求メッセージを受信したことを報告する(図2の「アドレス解決要求メッセージ受信報告」)。制御装置100は、通信可否記憶装置300に保持されている接続可否情報を参照して、外部ノードA−外部ノードB間が接続可であることを確認する。この場合、制御装置100は、通信ノード200に対し、前記アドレス解決要求メッセージを外部ノードBに送信するよう指示する(図2の「アドレス解決要求メッセージの処理内容指示」)。
通信ノード200は、外部ノードBに、アドレス解決要求メッセージを転送する。その後、図3に示すように、外部ノードBからアドレス解決要求メッセージに対する応答(アドレス解決応答メッセージ)が送信されると、通信ノード200は、制御装置100に対し、アドレス解決応答メッセージを受信したことを報告する(図3の「アドレス解決応答メッセージ受信報告」)。
制御装置100は、通信可否記憶装置300に保持されている接続可否情報を参照して、外部ノードA−外部ノードB間が接続可であることを確認する。この場合、制御装置100は、通信ノード200に対し、前記アドレス解決応答メッセージを外部ノードAに送信するよう指示する(図3の「アドレス解決応答メッセージの処理内容指示」)。
通信ノード200は、外部ノードBに、アドレス解決応答メッセージを転送する(図3の「外部ノードBのアドレス解決メッセージ」)。これにより、外部ノードAに外部ノードBのアドレスが通知される。その後、外部ノードAは、通知された外部ノードBのアドレスを用いて外部ノードBとの通信を開始する。
一方、外部ノードAが外部ノードCのアドレス解決要求メッセージを送信した場合、制御装置100は、次のように動作する。外部ノードAから外部ノードC宛てのアドレス解決メッセージを受信した通信ノード200は、制御装置100に対し、アドレス解決要求メッセージを受信したことを報告する(図2の「アドレス解決要求メッセージ受信報告」)。制御装置100は、通信可否記憶装置300に保持されている接続可否情報を参照して、外部ノードA−外部ノードC間が接続不可であることを確認する。この場合、制御装置100は、通信ノード200に対し、前記アドレス解決要求メッセージを破棄するよう指示する(図2の「アドレス解決要求メッセージの処理内容指示」)。
この結果、禁止すべきあるいは不必要なアドレス解決要求メッセージとその応答メッセージの授受が抑制される。なお、通信ノード200が複数ある場合には、制御装置100は、通信ノード200によって構成されるネットワークトポロジーを参照して、アドレス解決要求メッセージが最短経路で転送されるよう経路の計算等を行うようにしてもよい。
なお、図2の例では、アドレス解決要求メッセージを破棄することによって、アドレス解決要求メッセージの送信元(外部ノードA)へのアドレスの応答を抑止するものとしたが、前記アドレスの応答を抑止する態様としては、種々の態様を採ることができる。例えば、上記したアドレス解決要求メッセージを応答ノード(外部ノードや制御装置)に送信しないようにする方法のほか、応答ノードでアドレス解決要求メッセージを破棄する方法、図3に示すように、アドレス解決要求メッセージの送信元に応答ノード(外部ノードC)からの応答を送信しないように制御する方法等が考えられる。
また、制御装置100に、アドレス解決要求メッセージまたはアドレス解決応答メッセージに基づいて、各外部ノードのアドレスを記憶するアドレスキャッシュ部を備えておき、制御装置100が、アドレス解決要求メッセージの転送を行う前に、前記アドレスキャッシュ部を参照して、前記アドレス解決要求メッセージの送信元へアドレスを応答するようにしてもよい。
[第1の実施形態]
続いて、上記した制御装置に相当するOFC(オープンフローコントローラ)にアドレス解決機能を持たせた本発明の第1の実施形態について図面を参照して詳細に説明する。
図4は、本発明の第1の実施形態の構成を表わした図である。図4を参照すると、OFC10と、OFC10によって制御されるk台のOFS(オープンフロースイッチ)20a〜20kと、OFS20aに接続するm台の外部ノード9a1〜9amと、OFS20kに接続するn台の外部ノード9k1〜9knと、を含む構成が示されている。なお、図4に示したネットワークトポロジーは、本発明の理解を助けるために作成した一例であり、実際には種々の変形を加えることができる。
OFC10は、OFS20a〜20k(以下、OFSを特に区別しない場合、「OFS20」と記す。)を制御するコンピュータであり、上述した制御装置に相当する。OFC10は、OFS20とセキュアチャネルで接続され、非特許文献2のオープンフロープロトコルを用いてOFS20と必要な通信を行う。なお、図4の例では、1台をOFCを示しているが、複数のOFCからクラスタを構成してもよい。このようにすることで処理可能なOFS20の数を増大させるとともに、耐障害性を向上させることができる。
OFS20は、上記した通信ノード200に相当するパケットを処理する通信装置である。外部ノード9a1〜9am、9k1〜9kn(以下、外部ノードを特に区別しない場合、「外部ノード900」と記す。)は、ユーザが使用する各種のホスト装置やサーバ装置である。このほか、外部ノードとして、携帯端末等と無線接続する無線基地局装置等が含まれていてもよい。
図5は、本発明の第1の実施形態のOFCおよびOFSの詳細構成を表した図である。図5を参照すると、OFC10と、OFS20とが示されている。はじめに、OFC10の構成について説明する。OFC10は、ARP処理部11と、アクセス制御データベース(アクセス制御DB)12とを備えている。OFC10は、その他経路計算機能やOFS管理機能、フローエントリの設定機能等を備えているが、これらの処理ブロックは省略している。
ARP処理部11は、図6に示すようなIPアドレスとMACアドレスとを対応付けたエントリを格納したARP(Address Resolution Protocol)テーブル(アドレス記憶部として機能する。)を保持している。ARPテーブルのエントリの登録はユーザ(ネットワーク管理者)が行うこととしてもよいし、OFC10が、受信したパケットからIPアドレスとMACアドレスの組合せを取得してARPテーブルに登録し、アドレスキャッシュ部として機能するようにしてもよい。
ARP処理部11は、OFS20を介してARP要求パケットを受信すると、アクセス制御DB12にアクセスして、ARP要求パケットの送信元のIPアドレスと宛先(ARP要求先)IPアドレスの組合せが、通信が許可されている外部のノードの組合せであるか否かを確認する。前記確認の結果、通信が許可されている外部ノード同士の通信に先立って行われるMACアドレスの解決であることが判明した場合、ARP処理部11は、ARPテーブルから、ARP要求パケットにて指定されたIPアドレスに対応するMACアドレスを検索し、その結果を用いてARP応答パケットを生成する。さらに、ARP処理部11は、OFS20を制御して、ARP要求パケットの送信元に前記生成したARP応答パケットを転送させる。一方、前記確認の結果、通信が許可されていない外部ノード同士の通信に先立って行われるMACアドレスの解決であることが判明した場合、ARP処理部11は、ARP要求パケットを破棄する。
図7は、ARP要求パケットのヘッダ情報に含まれる情報を説明するための図である。上述した外部ノード同士の通信が許可されているか否かは、アクセス制御DB12からARP要求パケットの発信元/宛先IPアドレスの組合せを持つエントリの通信可否フラグ(図9参照)を読み出すことで判別できる。通信可否フラグが肯定的な値であった場合、ARP処理部11は、図6に示すエントリを格納するARPテーブルから、ARP要求パケットの宛先(ARP要求先)IPアドレスに適合するIPアドレスを持つエントリのMACアドレスを検索する。なお、この時点では、宛先(ARP要求先)MACアドレスは不知であるので、MACアドレスフィールドには0値が設定される。
図8は、ARP応答パケットのヘッダ情報に含まれる情報を説明するための図である。ARP処理部11は、図6に示すエントリを格納するARPテーブルから、ARP要求パケットの宛先(ARP要求先)IPアドレスに適合するIPアドレスを持つエントリが見つかった場合、図8の検索結果(ARP要求受信側情報)のMACフィールドに当該エントリのMACアドレスを格納したARP応答パケットを生成する。
アクセス制御DB12は、上述した通信可否記憶装置300に相当し、外部ノードにそれぞれ付与されたIPアドレスを用いて外部ノード同士の通信可否情報を定義したエントリを保持する。図9は、アクセス制御DB12に保持されるエントリの例である。なお、図9の例では、通信可否フラグフィールドを設け、各エントリ毎に通信可否状態を定義可能となっているが、通信が許可されている組合せのみをエントリとして保持し、該当する組合せが見つからなければ、通信が禁止されていると判定する構成も採用可能である。同様に、通信が禁止されている組合せのみをエントリとして保持し、該当する組合せが見つからなければ、通信が許可されていると判定する構成も採用可能である。また、図9のようにIPアドレスを用いる場合、ネットマスクと組み合わせることでアドレスの範囲として扱うことが可能である。
続いて、図5のOFS20の構成について説明する。OFS20は、パケット処理部21と、フローエントリ記憶部22とを備えている。このようなOFS20としては、非特許文献1、2に記載のオープンフロースイッチを用いることができる。
フローエントリ記憶部22は、テーブル等を用いて図16に示すようなフローエントリを記憶している。
パケット処理部21は、外部ノード900からパケットを受信すると、フローエントリ記憶部22から、そのパケットヘッダ等の受信パケットの特徴に適合するマッチフィールドを持つエントリを検索する。前記検索の結果、受信パケットの特徴に適合するマッチフィールドを持つエントリが見つかった場合、パケット処理部21は、当該エントリのインストラクションフィールドの記述された処理内容を実行する。一方、前記検索の結果、受信パケットの特徴に適合するマッチフィールドを持つエントリが見つからなかった場合、パケット処理部21は、OFC10に対して、受信パケットまたは受信パケットに含まれる情報を送信し、フローエントリの設定を要求する。
OFC10は、ARP要求パケットに対応するフローエントリを作成しないため、フローエントリ記憶部22には、ARP要求パケットに対応するフローエントリは存在しない。このため、OFS20は、ARP要求パケットを受信すると、OFC10に対して、ARP要求パケットまたはARP要求パケットに含まれる情報を送信し、フローエントリの設定を要求する。本実施形態では、この仕組みを用いて、OFS20からOFC10へのARP要求パケットの送信を実現している。
なお、図5に示したOFC10の各部(処理手段)は、OFC10を構成するコンピュータに、そのハードウェアを用いて、上記した各処理を実行させるコンピュータプログラムにより実現することもできる。
続いて、本実施形態の動作について図面を参照して詳細に説明する。図10は、本発明の第1の実施形態のOFCの動作を表したフローチャートである。図10を参照すると、まず、OFC10は、OFS20からのパケット(またはパケットに含まれる情報)の受信を待ち(ステップS001)、OFS20からパケット(またはパケットに含まれる情報)を受信すると、OFS20が受信したパケットがARP要求パケットであるか否かを判別する(ステップS002)。
OFS20がARP要求パケットを受信したか否かは、例えば、イーサネット(登録商標)フレームのタイプフィールドに0x0806が設定されているか否かにより判別することができる。ここで、ユーザパケット等のARP要求パケット以外のパケットであると判断された場合(ステップS002のNo)、OFC10は、OFS20にて構成されるネットワークトポロジーを参照して、当該パケット(またはパケットに含まれる情報)の送信元のOFSから出口側のOFSまでのパケットの転送経路を計算し、計算した経路に沿ってパケットを転送するよう各OFSにフローエントリを設定する(ステップS007)。
一方、ステップS002で、OFS20がARP要求パケットを受信したと判定した場合(ステップS002のYes)、OFC10は、アクセス制御DB12にアクセスし、OFS20から受信したパケット(またはパケットに含まれる情報)に含まれる送信元IPアドレスおよび送信先(宛先)IPアドレスに対応するエントリを検索する(ステップS003)。前記検索の結果、通信可否フラグフィールドに通信可のフラグが設定されているエントリが見つからなかった場合、OFC10は、ARP要求パケットへの応答を行うことなく処理を終了する(ステップS004のNo)。
一方、前記検索の結果、通信可否フラグフィールドに通信可のフラグが設定されているエントリが見つかった場合、OFC10は、図6に示すエントリ群を格納したARPテーブルから、ARP要求パケットにて照会を受けたIPアドレスに対応するMACアドレスを検索する(ステップS005)。そして、OFC10は、前記検索されたMACアドレスを用いて、ARP応答パケットを生成し、OFS20に送信する(ステップS006)。さらに、OFC10は、OFS20に対し、ARP要求パケットの送信元の外部ノードに前記ARP応答パケットを転送するようOFSを制御する。このARP応答パケットの転送指示には、非特許文献2のオープンフロープロトコルのPacket−Outメッセージを用いることができる。
続いて、外部ノード900からARP要求パケットが送信された場合の全体の動作について図11、図12を用いて説明する。
外部ノード900が、ARP要求パケットを送信すると(図11、図12のS101)、OFS20は、OFC10にARP要求パケット(またはARP要求パケットに含まれる情報)を転送する(図11、図12のS102)。
OFC10は、OFS20から受信したARP要求パケット(またはARP要求パケットに含まれる情報)を元に、アクセス制御DB12を参照し、ARP要求パケットの送信元の外部ノードと、アドレス解決を要求されている外部ノードとが、通信可能であるか否かを確認する(図11、図12のS103、S104)。
前記確認の結果、ARP要求パケットの送信元の外部ノードと、アドレス解決を要求されている外部ノードとが、通信不可であることが判明した場合、OFC10は、以後の処理を終了する(図12参照)。
一方、前記確認の結果、ARP要求パケットの送信元の外部ノードと、アドレス解決を要求されている外部ノードとが、通信可であることが判明した場合、OFC10は、図6に示すエントリが格納されたARPテーブルから、アドレス解決を要求されている外部ノードのIPアドレスに対応するMACアドレスを検索する(図11のS105、S106)。
前記検索の結果、アドレス解決を要求されている外部ノードのIPアドレスに対応するMACアドレスが見つかった場合、OFC10は、発見されたMACアドレスを含んだARP応答パケットを生成し、OFS20に送信するとともに、ARP要求パケットの送信元の外部ノード900への前記ARP応答パケットの転送を指示する(図11のS107)。
OFS20は、OFC10からの指示に従い、外部ノード900に対し、ARP応答パケットを転送する(図11のS108)。なお、図11のS105、S106の検索の結果、MACアドレスが見つからなかった場合、OFC10が自らARP要求パケットを転送してMACアドレスを解決してもよいし、あるいは、OFS20のARP要求パケットの転送を指示してもよい。
以上のようにすることで、ある外部ノードから見て通信が禁止されている外部ノードにMACアドレスが知られることを防止することが可能となる。このようなMACアドレスの秘匿化はセキュリティの向上にも役立っている。
また、本実施形態では、上記通信可否の確認によるMACアドレスの払い出し制御に加えて、ARP要求パケットのブロードキャストをしないようにしているため、MACアドレスの解決のための不必要なトラヒックも大幅に低減される。このようにネットワークを流れるパケット量を減少させることができるため、ネットワークの利用効率も向上する。
[第2の実施形態]
続いて、上記した第1の実施形態に変更を加えた本発明の第2の実施形態について説明する。本実施形態は、第1の実施形態の構成に変更を加えたものであるが、機能および動作はほぼ同様であるので、以下その相違点を中心に説明する。
図13は、本発明の第2の実施形態の構成を表わした図である。図5に示した第1の実施形態との相違点は、OFC10Bが、外部のアクセス制御DB12にアクセスして外部ノード900から送信されたARP要求パケットに応答するか否かを判断する点である。
このようなアクセス制御DB12としては、ACL(Access Control List)を管理するポリシーサーバ等と呼ばれるサーバと同等の装置等を用いることができる。
従って、本実施形態によれば、第1の実施形態の効果に加えて、アクセス制御DB12の設置コスト及び管理コストを低減することが可能となる。
[第3の実施形態]
続いて、上記した第2の実施形態に変更を加えた本発明の第3の実施形態について説明する。本実施形態は、第1、第2の実施形態の構成に変更を加えたものであるが、機能および動作はほぼ同様であるので、以下その相違点を中心に説明する。
図14は、本発明の第3の実施形態の構成を表わした図である。図13に示した第2の実施形態との相違点は、OFC10BのARP処理部11が省略され、代わりに、外部のARP処理装置13を用いてアドレス解決を行う点である。
ARP処理装置13は、第1、第2の実施形態のARP処理部11と同様に、ARPテーブル(アドレス記憶部)を保持し、ARP要求パケットに対して、ARP応答パケットを生成するアドレス記憶装置として機能する装置である。
本実施形態では、OFC10Cは、ARP要求パケットの送信元の外部ノードと、アドレス解決を要求されている外部ノードとが、通信可能であると判断すると、OFS20経由でARP要求パケットをARP処理装置13に転送する。また、OFC10は、OFS20に、ARP要求パケットの送信元の外部ノード900に、ARP処理装置13から出力されるARP応答パケットを転送させるフローエントリを設定する。
以上により、ARP処理装置13から出力されたARP応答パケットは、ARP要求パケットの送信元の外部ノード900に転送される。
以上のように本実施形態によれば、第1、第2の実施形態の効果に加えて、OFC10の負荷を低減することができる。その理由は、外部のリソースを用いてARP応答処理を行うよう構成したことにある。
また、上記した実施形態では、ARP要求パケットをARP処理装置13に転送するか否かで制御を行うものとして説明したが、原則としてARP処理装置13にARP要求パケットを転送することとし、ARP処理装置13からのARP応答パケットを転送するか否かにより制御を行ってもよい。
[第4の実施形態]
続いて、上記した第1〜第3の実施形態のアクセス制御DB12に変更を加えた本発明の第4の実施形態について説明する。本実施形態は、第1〜第3の実施形態のアクセス制御DB12のエントリに変更を加えたものであり、構成、機能および動作はほぼ同様であるので、以下その相違点を中心に説明する。
図15は、本発明の第4の実施形態のアクセス制御DBに保持されるエントリの例である。図9に示したエントリとの相違点は、プロトコルフィールド、発信元と、宛先にそれぞれポート番号フィールドが追加されている点である。
プロトコルフィールドは、TCP/UDP等のプロトコルを指定する値が設定されるフィールドである。ポート番号フィールドは、TCP/UDPの発信元ポート番号と、TCP/UDPの宛先ポート番号が設定される。
なお、プロトコル、ポート番号に、ANYを示す値を登録することでポート番号やプロトコルの指定を外すことも可能である。また、ポート番号については、特定の番号だけでなく、任意の範囲を指定できるようにしてもよい。また、IPアドレスは、ネットマスクと組み合わせることでアドレスの範囲として扱うことも可能である。
以上のように、本実施形態によれば、ポート番号単位でアクセスの可否、即ち、ARP応答の要否を制御することが可能となる。もちろん、本実施形態においても、通信が許可されている組合せのみをエントリとして保持し、該当する組合せが見つからなければ、通信が禁止されていると判定する構成としてもよい。同様に、通信が禁止されている組合せのみをエントリとして保持し、該当する組合せが見つからなければ、通信が許可されていると判定する構成とすることもできる。
以上、本発明の各実施形態を説明したが、本発明は、上記した実施形態に限定されるものではなく、本発明の基本的技術的思想を逸脱しない範囲で、更なる変形・置換・調整を加えることができる。例えば、上記した実施形態の説明で例示したOFC、OFS、外部ノードの数やそのトポロジー構成は、本発明の理解を助けるために簡略化したものであり、より多くの要素で構成された複雑なネットワークにも適用することが可能である。
また、上記した各実施形態では、アドレス解決要求メッセージとしてARP要求パケットを用いた例を挙げて説明したが、本発明は、IPv6のNDPにおける近隣者要請(Neighbor Solicitation)メッセージとその応答の授受にも適用可能である。
また、上記した各実施形態では、ARP要求パケットに対してOFCまたはARP処理装置が応答するものとして説明したが、OFCがOFSを制御して、宛先の外部ノードにARP要求パケットを転送し、その応答を返させるようにしてもよい。また、この場合において、OFCが、ARP要求パケットの転送経路を計算してユニキャストを行ってもよいし、転送経路の計算は行わずブロードキャストするようにしてもよい。
最後に、本発明の好ましい形態を要約する。
[第1の形態]
(上記第1の視点による通信システム参照)
[第2の形態]
第1の形態の通信システムにおいて、
前記アドレス解決要求メッセージまたはアドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する通信システム。
[第3の形態]
第1または第2の形態の通信システムにおいて、
前記制御装置は、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージである場合、前記アドレス解決要求メッセージのユニキャストまたはブロードキャストを行うよう前記通信ノードを制御する通信システム。
[第4の形態]
第3の形態の通信システムにおいて、
前記制御装置は、前記通信ノードによって構成されるネットワークトポロジを参照して、前記アドレス解決要求メッセージが最短経路で転送されるよう前記通信ノードを制御する通信システム。
[第5の形態]
第1〜第4いずれか一の形態の通信システムにおいて、
前記制御装置は、さらに、前記アドレス解決要求メッセージまたはアドレス解決応答メッセージに基づいて、各外部ノードのアドレスを記憶するアドレスキャッシュ部を備え、
前記アドレスキャッシュ部を参照して、前記アドレス解決要求メッセージの送信元へアドレスを応答する通信システム。
[第6の形態]
第1の形態の通信システムにおいて、
前記制御装置は、さらに、各外部ノードのアドレスを記憶するアドレス記憶部を備え、
前記アドレス記憶部を参照して、前記アドレス解決要求メッセージの送信元へアドレスを応答する通信システム。
[第7の形態]
第1の形態の通信システムにおいて、
前記制御装置は、さらに、各外部ノードのアドレスを記憶するアドレス記憶装置と接続され、
前記アドレス記憶装置へのアドレス解決要求メッセージの転送または前記アドレス記憶装置からのアドレス解決応答メッセージの転送を抑止することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する通信システム。
[第8の形態]
第1〜第7いずれか一の形態の通信システムにおいて、
前記通信可否記憶装置には、前記外部ノードの前記アドレスよりも上位のアドレスを用いて前記外部ノード間の通信可否が定義されており、
前記制御装置は、アドレス解決要求メッセージに含まれる前記上位のアドレスの組を用いて、通信可否を判定する通信システム。
[第9の形態]
第1〜第8いずれか一の形態の通信システムにおいて、
前記アドレスはMACアドレスであり、
前記アドレス解決要求メッセージは、IPv4またはIPv6のアドレス解決メッセージである通信システム。
[第10の形態]
(上記第2の視点による制御装置参照)
[第11の形態]
(上記第3の視点による通信方法参照)
[第12の形態]
(上記第4の視点によるプログラム参照)
本発明の全開示(請求の範囲を含む)の枠内において、さらにその基本的技術思想に基づいて、実施形態ないし実施例の変更・調整が可能である。また、本発明の請求の範囲の枠内において種々の開示要素(各請求項の各要素、各実施例の各要素、各図面の各要素等を含む)の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。
10、10B、10C OFC
11 ARP処理部
12、12B アクセス制御データベース(アクセス制御DB)
13 ARP処理装置
20、20a〜20k OFS
21 パケット処理部
22 フローエントリ記憶部
100 制御装置
200 通信ノード
300 通信可否記憶装置
9a1〜9am、9k1〜9kn、900 外部ノード

Claims (10)

  1. 少なくとも1つ以上の通信ノードと、
    前記通信ノードを制御し、複数の外部ノード間の通信を制御する制御装置と、
    前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、を含み、
    前記制御装置は、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する通信システム。
  2. 前記アドレス解決要求メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する請求項1の通信システム。
  3. 前記制御装置は、前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージである場合、前記アドレス解決要求メッセージのユニキャストまたはブロードキャストを行うよう前記通信ノードを制御する請求項1または2の通信システム。
  4. 前記制御装置は、前記通信ノードによって構成されるネットワークトポロジを参照して、前記アドレス解決要求メッセージが最短経路で転送されるよう前記通信ノードを制御する請求項3の通信システム。
  5. 前記制御装置は、さらに、前記アドレス解決要求メッセージまたはアドレス解決応答メッセージに基づいて、各外部ノードのアドレスを記憶するアドレスキャッシュ部を備え、
    前記アドレスキャッシュ部を参照して、前記アドレス解決要求メッセージの送信元へアドレスを応答する請求項1から4いずれか一の通信システム。
  6. 前記制御装置は、さらに、各外部ノードのアドレスを記憶するアドレス記憶部を備え、
    前記アドレス記憶部を参照して、前記アドレス解決要求メッセージの送信元へアドレスを応答する請求項1の通信システム。
  7. 前記通信可否記憶装置には、前記外部ノードの前記アドレスよりも上位のアドレスを用いて前記外部ノード間の通信可否が定義されており、
    前記制御装置は、アドレス解決要求メッセージに含まれる前記上位のアドレスの組を用いて、通信可否を判定する請求項1から6いずれか一の通信システム。
  8. 前記アドレスはMACアドレスであり、
    前記アドレス解決要求メッセージは、IPv4またはIPv6のアドレス解決メッセージである請求項1から7いずれか一の通信システム。
  9. 複数の外部ノード間に配置された少なくとも1つ以上の通信ノードと、
    前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、に接続され、
    前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止する制御装置。
  10. 少なくとも1つ以上の通信ノードと、
    前記通信ノードを制御し、複数の外部ノード間の通信を制御する制御装置と、
    前記複数の外部ノード間の通信可否を定義した通信可否情報を記憶する通信可否記憶装置と、を含む通信システムにおいて、
    前記通信ノードを介して受信したアドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージであるか否かを確認するステップと、
    前記アドレス解決要求メッセージが、一の外部ノードから当該外部ノードと通信が許可されている他の外部ノードのアドレスの解決を要求するアドレス解決要求メッセージでない場合、前記アドレス解決応答メッセージの転送を抑止するよう前記通信ノードを制御することにより、前記アドレス解決要求メッセージの送信元へのアドレスの応答を抑止するステップとを含む通信方法。
JP2011266872A 2011-12-06 2011-12-06 通信システム、制御装置、通信方法およびプログラム Active JP5861424B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011266872A JP5861424B2 (ja) 2011-12-06 2011-12-06 通信システム、制御装置、通信方法およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011266872A JP5861424B2 (ja) 2011-12-06 2011-12-06 通信システム、制御装置、通信方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2013120982A JP2013120982A (ja) 2013-06-17
JP5861424B2 true JP5861424B2 (ja) 2016-02-16

Family

ID=48773451

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011266872A Active JP5861424B2 (ja) 2011-12-06 2011-12-06 通信システム、制御装置、通信方法およびプログラム

Country Status (1)

Country Link
JP (1) JP5861424B2 (ja)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0106919D0 (en) * 2001-03-20 2001-05-09 Marconi Comm Ltd Access networks
WO2011065227A1 (ja) * 2009-11-27 2011-06-03 日本電気株式会社 フロー制御装置、ネットワークシステム、ネットワーク制御方法およびプログラム

Also Published As

Publication number Publication date
JP2013120982A (ja) 2013-06-17

Similar Documents

Publication Publication Date Title
JP6508256B2 (ja) 通信システム、通信装置、制御装置、パケットフローの転送経路の制御方法及びプログラム
JP5716741B2 (ja) 通信システム、論理チャネル制御装置、制御装置、通信方法およびプログラム
JP5880560B2 (ja) 通信システム、転送ノード、受信パケット処理方法およびプログラム
US8837286B2 (en) Communication system, flow control device, flow table updating method, and program
JP5994851B2 (ja) 転送装置の制御装置、転送装置の制御方法、通信システムおよびプログラム
JP5825351B2 (ja) 通信システム、制御装置、通信方法及びプログラム
US9060322B2 (en) Method and system for preventing loops in mesh networks
WO2013128513A1 (en) Communication system, gateway control apparatus, path control apparatus, communication method and program
WO2012086816A1 (ja) 通信システム、制御装置、ポリシ管理装置、通信方法およびプログラム
JP5858141B2 (ja) 制御装置、通信装置、通信システム、通信方法及びプログラム
JP2014516215A (ja) 通信システム、制御装置、処理規則設定方法およびプログラム
JP2013070325A (ja) 通信システム、通信装置、サーバ、通信方法
US20150256455A1 (en) Communication system, path information exchange apparatus, communication node, forwarding method for path information and program
JP5991427B2 (ja) 制御装置、通信システム、制御情報の送信方法及びプログラム
JP5861424B2 (ja) 通信システム、制御装置、通信方法およびプログラム
WO2014119602A1 (ja) 制御装置、スイッチ、通信システム、スイッチの制御方法及びプログラム
JP6213028B2 (ja) 通信システム、通信方法、通信プログラムおよび通信装置
JP5768600B2 (ja) 通信システム、制御装置、パケット転送方法およびプログラム
JP6314970B2 (ja) 通信システム、制御装置、通信方法およびプログラム
JP2016139908A (ja) 通信システム、通信ノード、制御装置、通信制御方法、及び、プログラム
JP2011151718A (ja) ネットワークシステム、通信方法、装置およびプログラム
WO2015087947A1 (ja) 通信システム、通信ノード、制御装置、通信制御方法及びプログラム
JP2015128213A (ja) 通信ノード、制御装置、通信システム、通信方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141110

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150714

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150914

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20151124

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151207

R150 Certificate of patent or registration of utility model

Ref document number: 5861424

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150