(57)【要約】【課題】  トンネリング中に通信を行うことができる対象を増加できる装置や方法を提供する。【解決手段】  この装置は、ネットワーク上で仮想的に直結される２つの終端装置を制御する制御装置であり、ネットワークを構成する複数のセグメントのうちの互いに異なるセグメントに属する各終端装置のアドレス情報を記憶する記憶部３０と、各終端装置が属する各セグメント内に存在する通信装置の情報を各終端装置から取得する取得部３１と、記憶された各終端装置のアドレス情報と取得された各セグメント内に存在する通信装置の情報とを用いて、各終端装置が入力された情報を転送する処理を行うために使用する処理規則を生成する生成部３２と、生成された処理規則を各終端装置に送信する送信部３３とを含む。【選択図】  図３
2017098738.tif 000002
【特許請求の範囲】
【請求項１】
ネットワーク上で仮想的に直結される２つの終端装置を制御する制御装置であって、
前記ネットワークを構成する複数のセグメントのうちの互いに異なるセグメントに属する前記各終端装置のアドレス情報を記憶する記憶部と、
前記各終端装置が属する各セグメント内に存在する通信装置の情報を該各終端装置から取得する取得部と、
前記記憶部に記憶された前記各終端装置の前記アドレス情報と、前記取得部により取得された前記各セグメント内に存在する前記通信装置の情報とを用いて、前記各終端装置が入力された情報を転送する処理を行うために使用する処理規則を生成する生成部と、
前記生成部により生成された前記処理規則を前記各終端装置に送信する送信部とを含む、制御装置。
【請求項２】
前記アドレス情報は、前記各終端装置が備える複数のポートのうち、前記制御装置との通信に使用するポートのIPアドレスおよびMACアドレスと、前記２つの終端装置を仮想的に直結するために使用するポートのIPアドレスおよびMACアドレスとを含み、前記通信装置の情報は、該通信装置のIPアドレスおよびMACアドレスと、該通信装置との通信に使用するポートを識別するための識別情報とを含む、請求項１に記載の制御装置。
【請求項３】
前記仮想的に直結される２つの終端装置間の通信は、該２つの終端装置のIPアドレスおよびMACアドレスを付加してカプセル化した情報を送受信することにより行われ、
前記生成部は、前記各終端装置につき、情報が入力されるポートおよび該情報の宛先に応じて、カプセル化の有無、カプセル化した情報から該２つの終端装置のIPアドレスおよびMACアドレスを取り除くデカプセル化の有無、該情報を出力させるポートを定める処理規則を生成する、請求項２に記載の制御装置。
【請求項４】
前記生成部は、前記情報の宛先が前記２つの終端装置の一方が属するセグメント内に存在し、該２つの終端装置間に接続された通信装置である場合、該２つの終端装置の一方に対して、前記カプセル化した情報をデカプセル化し、前記仮想的に直結するために使用するポートから出力させるように定める処理規則を生成する、請求項３に記載の制御装置。
【請求項５】
前記生成部は、前記情報の宛先が前記２つの終端装置のどちらにも属さないセグメント内に存在する通信装置である場合、前記カプセル化した情報をデカプセル化し、前記仮想的に直結するために使用するポートから出力させるように定める処理規則を生成する、請求項３に記載の制御装置。
【請求項６】
仮想的に直結する２つの終端装置を指定する要求または仮想的な直結を解除する要求を受け付ける要求受付部をさらに含み、
前記要求受付部が前記仮想的に直結する要求を受けていない場合または前記解除する要求を受け付けた後に、前記生成部は、前記各終端装置を、情報の宛先に応じて切り替える切替装置として動作させるように定める処理規則を生成する、請求項１〜５のいずれか１項に記載の制御装置。
【請求項７】
請求項１〜６のいずれか１項に記載の制御装置と、ネットワーク上で仮想的に直結される２つの終端装置とを含む、通信システム。
【請求項８】
前記終端装置は、前記ネットワークを構成する複数のセグメントのうちの該終端装置が属するセグメント内に存在する通信装置の情報を記憶する記憶部と、前記制御装置からの要求を受けて、前記通信装置の情報を該制御装置に送信する送信部と、前記制御装置から該終端装置が入力された情報を転送する処理を行うために使用する処理規則を受信する受信部と、前記処理規則に基づき前記入力された情報を転送する処理を指示する制御部と、前記制御部からの指示に従って該情報の転送処理を行う処理部とを含む、請求項７に記載の通信システム。
【請求項９】
ネットワーク上で仮想的に直結される２つの終端装置を制御する制御装置により実行される制御方法であって、前記制御装置は、前記ネットワークを構成する複数のセグメントのうちの互いに異なるセグメントに属する前記各終端装置のアドレス情報を記憶する記憶部を含み、
前記各終端装置が属する各セグメント内に存在する通信装置の情報を該各終端装置から取得するステップと、
前記記憶部に記憶された前記各終端装置の前記アドレス情報と、取得された前記各セグメント内に存在する前記通信装置の情報とを用いて、前記各終端装置が入力された情報を転送する処理を行うために使用する処理規則を生成するステップと、
生成された前記処理規則を前記各終端装置に送信するステップとを含む、制御方法。
【請求項１０】
請求項９に記載の制御方法に含まれる各ステップをコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク上で仮想的に直結される２つの終端装置を制御する制御装置、該制御装置を含む通信システム、制御方法およびその制御をコンピュータに実行させるためのプログラムに関する。
【背景技術】
【０００２】
ネットワークを構成する複数の異なるセグメントは、ルータと呼ばれる中継装置により接続される。不特定の相手に送信するブロードキャストパケットや、特定の相手に送信するマルチキャストパケットは、ルータにおいて対応する設定を行わない限り、ルータを越えて他のセグメントへ送信することはできない。
【０００３】
ところで、パケットを同じ、もしくはOSI(Open System Interconnect)参照モデルの上位層のプロトコルでカプセル化することで、仮想的に直結したネットワークを形成するトンネリングという技術が知られている。
【０００４】
このトンネルリング技術の１つに、L2 over L3がある。このL2 over L3では、データリンク層であるL2のパケットを、ネットワーク層であるL3のパケットでカプセル化する。
【０００５】
このL2 over L3を使用し、ブロードキャストパケット等を、トンネル終端宛のユニキャストパケットとしてカプセル化し、その終端でデカプセル化することで、ルータを越えて、他のセグメント上にあるその終端の下流に位置する端末に送信する技術が提案されている（例えば、特許文献１参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上記のL2 over L3トンネリング技術では、トンネリングを行っている間に通信を行うことができる端末がトンネル終端の下流に位置する端末同士に制限されてしまうという問題があった。したがって、トンネリングを行っていない状態では、IPネットワークにより通信が可能な端末であっても、トンネリングを行っている間はトンネリングによる仮想的に直結したネットワーク外の端末となる場合、通信が遮断されてしまう。
【０００７】
そこで、トンネリング中に、トンネル終端の下流に位置する端末に制限されず、通信できる対象を増加させることを可能にする装置や方法等の提供が望まれていた。
【課題を解決するための手段】
【０００８】
本発明は、上記課題に鑑み、ネットワーク上で仮想的に直結される２つの終端装置を制御する制御装置であって、ネットワークを構成する複数のセグメントのうちの互いに異なるセグメントに属する各終端装置のアドレス情報を記憶する記憶部と、各終端装置が属する各セグメント内に存在する通信装置の情報を各終端装置から取得する取得部と、記憶部に記憶された各終端装置のアドレス情報と取得部により取得された各セグメント内に存在する通信装置の情報とを用いて、各終端装置が入力された情報を転送する処理を行うために使用する処理規則を生成する生成部と、生成部により生成された処理規則を各終端装置に送信する送信部とを含む、制御装置が提供される。
【発明の効果】
【０００９】
本発明によれば、トンネリング中に通信を行うことができる対象を増加させることが可能となる。
【図面の簡単な説明】
【００１０】
【図１】通信システムの１つの構成例を示した図。
【図２】通信システムを構成する制御装置のハードウェア構成を示した図。
【図３】制御装置の機能構成を示したブロック図。
【図４】終端装置の機能構成を示したブロック図。
【図５】制御装置が管理する終端装置のアドレス情報の一例を示した図。
【図６】終端装置が管理する自セグメント内の通信装置の情報の一例を示した図。
【図７】制御装置が管理する各終端装置の自セグメント内の通信装置の情報の一例を示した図。
【図８】トンネリングで使用するパケットの構成を示した図。
【図９】通信装置が終端装置に送信するオリジナルフレームの一例を示した図。
【図１０】終端装置においてカプセル化されたパケットの一例を示した図。
【図１１】通信システムにより実行される処理の流れを示したフローチャート。
【図１２】通信システムの別の構成例を示した図。
【発明を実施するための形態】
【００１１】
図１は、通信システムの１つの構成例を示した図である。この通信システムは、少なくとも２つの終端装置１０、１１と、各終端装置１０、１１に接続される通信装置１２、１３と、終端装置１０、１１を制御する制御装置１４とを含んで構成される。２つの終端装置１０、１１は、ネットワークを構成する複数のセグメントのうちの互いに異なるセグメント内に存在している。ネットワークは、例えばIP(Internet Protocol)を使用して情報のやりとりを行うIPネットワーク１５を含み、セグメントは、LAN(Local Area Network)等のネットワークを構成する個々のネットワークである。セグメントは、IPネットワーク１５とL2SW１６、１７というネットワークを中継する装置により接続されている。
【００１２】
終端装置１０、１１は、仮想的に直結してネットワークを形成するための、その両端に配置される装置である。終端装置１０、１１としては、例えばルータを挙げることができる。終端装置１０、１１は、各セグメント内に存在する通信装置１２、１３に、また、同じセグメント内のL2SW１６、１７に接続された通信装置１８、１９に、入力された情報を転送する処理を行う。終端装置１０、１１は、その転送処理を行うために制御装置１４との間で制御情報をやりとりする。終端装置１０、１１は、その制御情報をやりとりするための制御装置１４と接続する接続口として、制御プレーン用のポートP10、P20を備えている。制御プレーンは、上記の制御情報をやりとりする通信経路である。
【００１３】
また、終端装置１０、１１は、通信装置１２、１３と通信を行い、情報をやりとりする。このため、終端装置１０、１１は、その情報をやりとりするための通信装置１２、１３、１８、１９と接続する接続口として、データプレーン用のポートP11、P12、P21、P22を備えている。データプレーンは、上記の情報を転送する際の通信経路である。
【００１４】
終端装置１０、１１は、このように複数のポートをもち、各ポートは別個の通信モジュールとして実装されることから、個々の通信主体を識別するための識別情報であるMAC(Media Access Control)アドレスを有する。また、各ポートは、通信に使用するIPアドレスも有している。
【００１５】
通信装置１２は、該通信装置１２が存在する同じセグメント内の終端装置１０に対して、ネットワーク上に仮想的に直結して閉じられた直結回線（トンネル）を確立する（トンネルを張るともいう。）ように要求する。このようにトンネルを張ることで、２つのセグメント間で利用するパケットに手を加えることなく、それら間でそのパケットを送受信することができる。
【００１６】
終端装置１０、１１との間にトンネルを張ると、ポートP11、P21は、トンネルを張る側のデータプレーン用ポートとして扱われ、ポートP12、P22は、トンネルを張る側でないデータプレーン用ポートとして扱われる。
【００１７】
この例では、トンネルを張る側のポートとトンネルを張る側でないポートとを別個の物理ポートとして示しているが、これに限られるものではなく、１つの物理ポートを２つの論理ポートとして扱ってもよい。
【００１８】
制御装置１４は、終端装置１０、１１、その終端装置１０、１１の各ポートのIPアドレスやMACアドレス等のアドレス情報を保持し、管理する。より具体的には、制御装置１４は、アドレス情報として、終端装置１０、１１の制御プレーン用ポートのIPアドレスとMACアドレスと、終端装置１０、１１のトンネルを張る側のデータプレーン用ポートのIPアドレスとMACアドレスとの対応付けた対応関係のリストを管理する。
【００１９】
また、制御装置１４は、終端装置１０、１１と通信を行い、終端装置１０、１１が存在する各セグメント内の通信装置１２、１３、１８、１９の情報の送信を要求し、その情報を取得する。そして、制御装置１４は、制御情報として、終端装置１０、１１がどの情報をどの通信装置１２、１３、１８、１９へ転送するかを決定し、その転送処理を行うための処理規則を生成し、その処理規則を終端装置１０、１１に送信する。これにより、制御装置１４は、終端装置１０、１１の制御を実現する。
【００２０】
図１では、終端装置１０、１１は、ポートP12、P22に通信装置１２、１３がそれぞれ接続され、ポートP11、P21にL2SW１６、１７を介して通信装置１８、１９が接続されているが、これに限られるものではない。したがって、終端装置１０、１１は、トンネルを張る側にさらに１以上のポート、トンネルを張る側でない方にさらに１以上のポートを備え、それらのポートにさらに１以上の通信装置が接続されていてもよい。
【００２１】
以下、終端装置１０に対して、終端装置１０が存在するセグメントを自セグメントと呼び、自セグメント内の通信装置１２、１８を自セグメント内装置と呼ぶ。これは、終端装置１１も同様で、終端装置１１に対して、終端装置１１が存在するセグメントを自セグメントと呼び、自セグメント内の通信装置１３、１９を自セグメント内装置と呼ぶ。
【００２２】
セグメント内は、有線ネットワークにより終端装置と通信装置とを接続していてもよいし、無線ネットワークによりそれらを接続していてもよい。この例では、IPネットワーク１５を介して通信を行うため、通信装置１２、１３、１８、１９は、全てTCP/IP通信に対応した装置とされている。通信装置１２、１３、１８、１９は、互いに通信を行うことができる装置であれば、いかなる装置であってもよく、例えばPC、タブレット端末、スマートフォン、PDA(Personal Digital Assistant)、ゲーム機、MFP(Multi-Function Peripheral)、プロジェクタ、電子黒板等とすることができる。
【００２３】
図２は、通信システムを構成する制御装置１４のハードウェア構成を示した図である。なお、終端装置１０、１１や通信装置１２、１３、１８、１９も同様のハードウェア構成を採用することができる。したがって、ここでは制御装置１４についてのみ説明する。
【００２４】
制御装置１４は、ハードウェアとして、CPU(Central Processing Unit)２０と、ROM(Read Only Memory)２１と、RAM(Random Access Memory)２２、フラッシュメモリ２３と、通信I/F２４とを含んで構成される。ここでは、フラッシュメモリ２３を使用する構成を例示するが、HDD(Hard Disk Drive)やSSD(Solid State Drive)等を用いてもよい。
【００２５】
ROM２１は、読み出し専用のメモリで、CPU２０や通信I/F２４等のハードウェアの自己診断を行うプログラム、制御装置１４を起動させるためのブートプログラム等を格納する。RAM２２は、読み書き可能で、制御装置１４の電源OFFにより全ての情報が消去されるメモリである。RAM２２は、CPU２０に対して作業領域を提供する。フラッシュメモリ２３は、各終端装置１０、１１を制御するためのプログラムを格納する。この制御するためのプログラムは、各終端装置１０、１１から各セグメント内の通信装置の情報を取得し、処理規則を生成し、それを各終端装置１０、１１に送信する処理を実行するためのプログラム等である。
【００２６】
CPU２０は、制御装置１４全体を制御する。CPU２０は、上記の各種のプログラムをRAM２２に展開し、展開したプログラムを実行し、所定の処理を実現する。通信I/F２４は、IPネットワーク１５に接続し、IPネットワーク１５上の機器、例えば終端装置１０、１１との通信を可能にするインタフェースである。
【００２７】
図３を参照して、制御装置１４が備える機能について説明する。制御装置１４は、フラッシュメモリ２３やCPU２０が上記のプログラムをRAM２２に展開し、その展開したプログラムを実行することにより機能を実現する。その機能は、制御装置１４を各機能部として実現され、その機能部としては、記憶部３０、取得部３１、生成部３２、送信部３３を備えることができる。
【００２８】
記憶部３０は、上記のフラッシュメモリ２３により実現され、各終端装置１０、１１のアドレス情報を記憶する。アドレス情報は、終端装置１０、１１のIPアドレス、MACアドレスのほか、制御プレーン用ポートP10、P20のIPアドレス、MACアドレス、データプレーン用ポートP11、P12、P21、P22のIPアドレス、MACアドレスを含む。制御プレーン用ポートは、終端装置１０、１１が制御装置１４との通信に使用するポートである。データプレーン用ポートは、トンネリング用ポートを含む。これらのアドレス情報は、制御装置１４に事前に対応付けて登録され、この記憶部３０に記憶される。記憶部３０に記憶されるアドレス情報は、例えば図４に示すような対応関係をリストしたテーブルとして管理される。
【００２９】
制御装置１４は、図示しないが、通信装置の１つから要求を受け付ける要求受付部を含むことができる。要求受付部がトンネリングを確立したい終端装置を指定する要求を受け付けると、取得部３１が、指定された終端装置に制御プレーンを介して自セグメント内装置の情報を要求し、取得する。ここでは、終端装置１０、１１が指定されたものとする。なお、要求受付部は、トンネリングを解除する要求も受け付けることができる。
【００３０】
生成部３２は、記憶部３０に記憶された上記で指定された各終端装置１０、１１のアドレス情報と、取得部３１により取得された各通信装置の情報とを用いて、各終端装置１０、１１が処理規則を生成する。送信部３３は、生成部３２により生成された処理規則を、制御プレーンを介して各終端装置１０、１１に送信する。
【００３１】
処理規則は、カプセル化／デカプセル化を含むL1からL4のパケット処理方法を定めるものである。カプセル化は、パケットを構成する、転送先や経路を制御するための情報を含むヘッダと、データ本体であるペイロードとを、新たなレイヤのペイロード部分とし、別のヘッダを付与する処理である。デカプセル化は、その反対で、付与した別のヘッダを取り除き、ペイロード部分を取り出す処理である。L１やL4は、OSI(Open System Interconnection)参照モデルにおけるレイヤ（階層）を示し、L1は物理層、L2はデータリンク層、L3はネットワーク層、L4はトランスポート層である。処理規則の詳細については後述する。
【００３２】
このため、生成部３２は、指定された各終端装置１０、１１につき、パケットが入力されるポートおよびそのパケットの宛先に応じて、カプセル化の有無、デカプセル化の有無、パケットを出力させるポートを定める処理規則を生成する。
【００３３】
図５は、終端装置１０、１１の機能構成を示したブロック図である。終端装置１０、１１は同じ構成であるため、ここでは終端装置１０として説明する。終端装置１０は、機能部として、記憶部４０と、送信部４１と、制御部４２と、処理部４３と、受信部４４とを含んで構成される。これらの機能部も、制御装置１４と同様、フラッシュメモリやCPUがプログラムをRAMに展開し、その展開したプログラムを実行することにより機能を実現することができる。
【００３４】
記憶部４０は、自セグメント内装置の情報を記憶する。自セグメントは、終端装置１０が属するセグメントである。自セグメント内装置の情報は、送信元の通信装置のIPアドレス、MACアドレス、ポート番号等である。記憶部４０に記憶される自セグメント内装置の情報は、例えば図６に示すようなテーブルで管理される。
【００３５】
再び図５を参照して、送信部４１および受信部４４は、データプレーン用ポートを使用し、ARP(Address Resolution Protocol)リクエストパケットを送信し、ARPリプライパケットを受信する。ARPは、IPアドレスからMACアドレスの情報を得るためのプロトコルである。処理部４３は、受信部４４が受信したARPリプライパケットから送信元のMACアドレスの情報を取り出し、記憶部４０にIPアドレスと対応付けて記憶させる。
【００３６】
送信部４１は、記憶部４０から自セグメント内装置の情報を取得し、制御装置１４に送信する。送信部４１は、制御装置１４からの要求を受け付けた際、また、自セグメント内装置の情報が更新された際に、制御装置１４にその情報を送信する。制御装置１４は、その情報を受信し、記憶部３０にその情報を記憶し、例えば図７に示すようなテーブルでその情報を管理する。
【００３７】
再び図５を参照して、受信部４４は、制御装置１４から処理規則を受信し、制御部４２は、受信部４４が受信した処理規則に基づきパケットを転送する処理を指示することにより処理部４３を制御する。処理部４３は、制御部４２による制御の下、その指示に従ってパケットのカプセル化あるいはデカプセル化を含むL1からL4までの情報を使用したパケットの転送処理を行う。
【００３８】
処理部４３は、カプセル化する場合、ヘッダとペイロードとからなるオリジナルパケットをデータとし、送信元IPアドレス、送信元MACアドレス、送信先IPアドレス、送信先MACアドレスを新たなヘッダとして付与する。デカプセル化する場合は、付加したヘッダを取り除き、データとしたオリジナルパケットを取り出す。
【００３９】
送信元IPアドレスは、終端装置１０のデータプレーンのトンネルを張る側のポートのIPアドレスであり、送信元MACアドレスは、終端装置１０のデータプレーンのトンネルを張る側のポートのMACアドレスである。このことから、データプレーンは、ポート間を繋ぐ通信経路である。送信先IPアドレスは、宛先の終端装置１１のデータプレーンのトンネルを張る側のIPアドレスであり、送信先MACアドレスは、宛先の終端装置１１のデータプレーンのトンネルを張る側のポートのMACアドレスである。
【００４０】
図１に示す通信システムの構成を参照し、図４に示したアドレス情報、図６および図７に示した自セグメント内装置の情報を用いて生成される、終端装置１０の処理規則について説明する。ポート番号の違い等はあるが、終端装置１１の処理規則も同様であるため、ここでは終端装置１０についてのみ説明する。
【００４１】
終端装置１０は、パケットがIPネットワーク１５側から、すなわちポートP11から入ってくる場合と、通信装置１２から、すなわちポートP12から入ってくる場合がある。また、パケットには、宛先を特定しないブロードキャストパケットと、特定するが、宛先が複数のマルチキャストパケットと、宛先が特定の１つであるユニキャストパケットとがある。宛先は、通信装置１２、１３、１８、１９のほか、終端装置１０のポートP11、P12の場合もある。これらのことを考慮して、処理規則が生成される。
【００４２】
ポートP11から入ってくるパケットで、そのパケットがブロードキャストパケットまたはマルチキャストパケットである場合、カプセル化したパケットをポートP11から送信することを定める処理規則が生成される。これは、トンネルリングを確立した終端装置１１が属するセグメント内の通信装置へも送信する必要があるからである。また、オリジナルパケットをポートP12に送信することを定める処理規則も生成される。これは、終端装置１０が属するセグメント内の通信装置へもパケットを送信する必要があるからである。なお、このパケットは、トンネルを通して送信しないため、デカプセル化してオリジナルパケットに戻してから送信される。
【００４３】
ここで、パケットのフォーマットについて、図８を参照して説明する。通信装置１２、１３、１８、１９のいずれかが送信する、終端装置１０、１１でカプセル化される前のオリジナルフレームは、イーサネット（登録商標）のフレームフォーマットに従う。すなわち、図８に示すように、ヘッダに、送信先のMACアドレスと送信元のMACアドレスとを含むものである。例えば、通信装置１２から通信装置１３へパケットを送信する場合、送信先のMACアドレスは、通信装置１３のMACアドレスで、送信元のMACアドレスは、通信装置１２のMACアドレスとなる。
【００４４】
終端装置１０、１１でカプセル化する場合、オリジナルフレームを上記のペイロード（インナーパケット）とし、新たなヘッダ（トンネル用アウターヘッダ）を付加する。トンネル用アウターヘッダは、イーサネット（登録商標）ヘッダと、IPヘッダとから構成される。イーサネット（登録商標）ヘッダには、送信先および送信元のMACアドレスが、IPヘッダには、送信先および送信元のIPアドレスが含まれる。
【００４５】
トンネル用アウターヘッダに含まれる送信先MACアドレスは、宛先の終端装置のデータプレーンのトンネルを張る側のポートのMACアドレスである。送信元MACアドレスは、自終端装置のデータプレーンのトンネルを張る側のポートのMACアドレスである。トンネル用アウターヘッダに含まれる送信先IPアドレスは、宛先の終端装置のデータプレーンのトンネルを張る側のポートのIPアドレスである。送信元IPアドレスは、自終端装置のデータプレーンのトンネルを張る側のポートのIPアドレスである。
【００４６】
通信装置１２がマルチキャストパケットを送信した場合を考えてみる。通信装置１２が終端装置１０に送信するイーサネット（登録商標）フレームは、図９に示すような、マルチキャストアドレスと、通信装置１２のMACアドレスとを含むものとなる。マルチキャストアドレスは、特定の複数の通信装置をグループ化し、そのグループに対応したアドレスである。グループは、これに限られるものではないが、例えば１つのセグメントとすることができる。
【００４７】
この図９に示すオリジナルフレームをカプセル化すると、図１０に示すパケットとなる。すなわち、オリジナルフレームをインナーパケットとし、トンネル用アウターヘッダがそのインナーパケットに付加される。トンネル用アウターヘッダは、イーサネット（登録商標）ヘッダを含み、イーサネット（登録商標）ヘッダには、宛先の終端装置１１のポートP21のMACアドレスと、自終端装置１０のポートP11のMACアドレスとが付加される。トンネル用アウターヘッダは、IPヘッダも含み、IPヘッダには、宛先の終端装置１１のポートP21のIPアドレスと、自終端装置１０のポートP11のIPアドレスとが付加される。
【００４８】
このようなパケットが、IPネットワーク１５を介して終端装置１１のポートP21に届き、その後、終端装置１１でデカプセル化され、終端装置１１が属するセグメント内の通信装置１３、１９に届けられる。
【００４９】
再び図８を参照して、ポートP11から入ってくるパケットで、そのパケットがユニキャストパケットである場合について説明する。ユニキャストパケットが、終端装置１０のポートP11のアドレス宛である場合、終端装置１０でデカプセル化する。デカプセル化では、図１０に示したカプセル化したパケットから、付加したトンネル用アウターヘッダを取り除く。このデカプセル化したパケットを参照し、その宛先が、ブロードキャストまたはマルチキャストである場合、デカプセル化したパケットをポートP11、P12に送信することを定める処理規則が生成される。ポートP11には、自セグメント内装置として、L2SW１６を介して通信装置１８があり、ポートP12には、自セグメント内装置として、通信装置１２があるからである。
【００５０】
ちなみに、図１に示す構成例では、ポートP11にL2SW１６が接続され、終端装置１０、１１間のL2SW１６に通信装置１８が接続されているので、ポートP11にも送信するように処理規則が生成される。しかしながら、ポートP12にのみ通信装置が接続されている場合は、ポートP12にのみデカプセル化したパケットを送信するという処理規則が生成されることになる。
【００５１】
デカプセル化したパケットを参照し、その宛先が、ユニキャストである場合、その宛先の通信装置が接続されているポートにそのパケットを送信することを定める処理規則が生成される。例えば、通信装置１２宛てであれば、ポートP12に送信し、通信装置１８宛てであれば、ポートP11に送信することを定める処理規則となる。
【００５２】
ユニキャストパケットが、上記の終端装置１０のポートP11のアドレス宛ではなく、通信装置１２宛てである場合、終端装置１０でデカプセル化し、ポートP12から送信することを定める処理規則が生成される。通信装置１２が自セグメント内装置であるため、オリジナルパケットを送信する必要があり、通信装置１２はポートP12に接続されているからである。
【００５３】
ちなみに、ユニキャストパケットが、通信装置１８宛てである場合、終端装置１０でデカプセル化し、ポートP11から送信することを定める処理規則が生成される。通信装置１８が自セグメント内装置であるため、オリジナルパケットを送信する必要があり、通信装置１８はポートP11にL2SW１６を介して接続されているからである。
【００５４】
ユニキャストパケットが、他のセグメント内の通信装置１３または通信装置１９宛てである場合、デカプセル化せず、カプセル化したパケットのまま、ポートP11から送信することを定める処理規則が生成される。そのセグメント内の終端装置１１とはトンネルが確立されており、そのトンネルは、ポートP11に接続されているからである。
【００５５】
これまで、終端装置１０のポートP11からパケットが入ってきた場合の処理規則について説明してきたが、次に、終端装置１０のポートP12からパケットが入ってきた場合の処理規則について説明する。この場合も、パケットとしては、ブロードキャストパケット、マルチキャストパケット、ユニキャストパケットがある。
【００５６】
ポートP12にブロードキャストパケットまたはマルチキャストパケットが入ってきた場合、終端装置１０でカプセル化し、カプセル化したパケットをポートP11から送信することを定める処理規則が生成される。他のセグメントとはポートP11との間でトンネルが確立されており、そのトンネルを通して送信するために、ポートP11から送信する必要があるからである。また、オリジナルパケットをポートP11から送信することを定める処理規則も生成される。自セグメント内には、通信装置１８があり、通信装置１８は、ポートP11にL2SW１６を介して接続されているからである。
【００５７】
ポートP12にユニキャストパケットが入ってきた場合について説明する。ユニキャストパケットは、その宛先が自セグメント内の通信装置１８の場合と、他のセグメント内の通信装置１３または通信装置１９の場合とがある。自セグメント内の通信装置１８の場合、オリジナルパケットを通信装置１８が接続されているポートP11から送信することを定める処理規則が生成される。通信装置１８がポートP12に接続されていれば、ポートP12から送信することを定める処理規則が生成されることになる。
【００５８】
他のセグメント内の通信装置１３または通信装置１９の場合、トンネルを通して送信するため、終端装置１０でカプセル化し、ポートP11から送信することを定める処理規則が生成される。他のセグメントとは、トンネルが確立され、ポートP11と接続されているためである。
【００５９】
ちなみに、パケットのカプセル化では、送信先アドレスとして、ポートP21のアドレスを使用し、送信元のアドレスとして、ポートP11のアドレスを使用する。アドレスは、MACアドレスおよびIPアドレスである。
【００６０】
この処理規則を生成する処理を、図１１に示すフローチャートを参照して詳細に説明する。制御装置１４は、事前に終端装置１０、１１のアドレス情報が事前に登録され、保持しているものとする。ステップ１１００からこの処理を開始し、ステップ１１０５では、トンネルを確立する前は、パケットの宛先に応じて切り替える切替装置であるL2SWとして動作するように定める処理規則を生成する。例えば、通信装置１８宛てのパケットであれば、L2SWを通信装置１８に接続する処理規則を生成する。ステップ１１１０では、その生成した処理規則を、制御プレーンを介して処理を実行させる終端装置に送信する。上記の例では、終端装置１０に送信し、終端装置１０に処理を実行させる。
【００６１】
ステップ１１１５では、終端装置が制御プレーンを介して処理規則を受信し、その処理規則を自機に設定する。そして、終端装置は、単なるL2SWとして動作する。その後、ステップ１１２０において、トンネリングの確立要求があったかを判断する。通信装置１２、１３、１８、１９のいずれかからトンネリングの確立要求を制御装置１４が受け取ったかどうかにより判断する。この判断は、トンネリング確立要求を受け取るまで繰り返される。
【００６２】
ステップ１１２０でトンネリング確立要求を受け取ると、ステップ１１２５で、トンネリングを行うように指定された終端装置に自セグメント内装置の情報の送信を、制御プレーンを介して要求する。トンネルを張る２つの終端装置が指定され、各終端装置が属する各セグメントをそれぞれ自セグメントとし、その自セグメント内装置の情報の送信を、その指定された各終端装置に対して要求する。
【００６３】
ステップ１１３０では、自セグメント内装置の情報の送信要求を受け取った各終端装置が、自機が保持している自セグメント内装置の情報を、制御プレーンを介して制御装置１４に送信する。ステップ１１３５では、制御装置１４が、指定された各終端装置から送信された自セグメント内装置の情報を受け取る。
【００６４】
ステップ１１４０では、制御装置１４において、事前に登録された終端装置のアドレス情報と、受け取った自セグメント内装置の情報とを用いて、指定された各終端装置においてパケットを処理するための処理規則を生成する。処理規則は、上記のように生成される。ステップ１１４５では、制御装置１４は、生成した対応する処理規則を、制御プレーンを介して指定された終端装置に送信する。したがって、制御装置１４は、指定された終端装置に応じた処理規則をそれぞれ生成し、対応する終端装置に送信する。
【００６５】
ステップ１１５０では、各終端装置は、既に設定されている処理規則を、受信した処理規則により更新する。これまでの処理規則は、L2SWとして動作する処理規則であったが、この更新により、カプセル化／デカプセル化を含むL1からL4までの情報を使用したパケットの転送処理が行われるようになる。
【００６６】
終端装置がパケットの転送処理を継続している間に、その終端装置の自セグメント内装置の接続に変更があると、その自セグメント内装置からのパケットの変化が検出される。この変化が検出されると、終端装置は、自セグメント内装置の情報を更新する。ステップ１１５５では、この自セグメント内装置の情報の更新があったかどうかを判断する。更新があった場合、ステップ１１３０へ戻り、その情報を送信し、更新がない場合、ステップ１１６０へ進む。
【００６７】
ステップ１１６０では、制御装置１４がトンネリングを解消する要求を受け付けたかを判断する。受け付けていない場合、ステップ１１５５へ戻り、受け付けた場合、ステップ１１０５へ進む。トンネリングを解消する要求を受け付けた後は、指定された終端装置が再びL2SWとして動作するように定める処理規則を生成し、その指定された終端装置に、制御プレーンを介してその生成した処理規則を送信する。そして、その指定された終端装置が処理規則を受信し、その処理規則に更新する。これにより、それらの終端装置はL2SWとして動作し、この処理は、終端装置の電源がOFFにされるまで続けられる。
【００６８】
図１に示した通信システムでは、２つのセグメントを含む構成を例示したが、セグメントは、２つに限定されるものではない。例えば、図１２に示すように、終端装置１０、１１が所属するセグメント以外のセグメントを含むものであってもよい。図１２では、終端装置１０、１１が属するセグメント以外のセグメントとして通信装置５０を含む構成を示している。このセグメントは、L2SW５１によりIPネットワーク１５に接続されている。
【００６９】
このような構成のトンネリング中の処理規則は、パケットがブロードキャストパケットやマルチキャストパケットの場合は、上記で説明した処理規則と同じものとなる。また、ユニキャストでも、終端装置１０、１１のポート宛て、通信装置１２、１３、１８、１９宛ても、上記で説明した処理規則と同じものとなる。ブロードキャストパケットやマルチキャストパケットは、終端装置１０、１１が属するセグメントに対して送信され、ユニキャストパケットも、終端装置１０、１１のポートや終端装置１０、１１に接続される通信装置１２、１３、１８、１９に対して送信されるからである。
【００７０】
したがって、通信装置５０へは、ユニキャストパケットを通信装置５０宛てに送信する場合にのみ、処理規則に従って送信する必要があることになる。このことから、終端装置１０のポートP11からパケットが入ってきた場合は、オリジナルパケットを、トンネルを張る側のポートから送信することを定める処理規則が生成される。具体的には、終端装置１０でデカプセル化し、得られたオリジナルパケットを終端装置１０のポートP11から送信することを定める処理規則である。
【００７１】
また、終端装置１０のポートP12からパケットが入ってきた場合は、オリジナルパケットを、トンネルを張る側のポートから送信することを定める処理規則が生成される。具体的には、ポートP12から入ってきたオリジナルパケットをそのまま、終端装置１０のポートP11から送信することを定める処理規則である。
【００７２】
従来では、終端装置１０、１１の間でトンネリングを確立している間は、終端装置１０、１１の下流にある通信装置１２と通信装置１３との間でしか通信を行うことができなかった。しかしながら、このように処理規則を生成して更新することで、トンネリング中にそれ以外の通信装置１８や通信装置１９とも通信を行うことが可能となり、通信可能な対象を増加させ、通信の幅を広げることができる。
【００７３】
また、上記では、２つの終端装置を示し、その２つの終端装置間でトンネリングを確立することのみを説明してきた。しかしながら、４つの終端装置の２つずつの間で２つのトンネリングを確立する等、同時に複数のトンネリングを確立した場合にも、本発明は、同様に適用することができるものである。
【００７４】
本発明では、制御装置１４や終端装置１０、１１が行う処理をコンピュータに実行させるためのプログラムやそのプログラムが記録された記録媒体を提供することも可能であり、記録媒体としては、CD-ROM、DVD、SDカード等を挙げることができる。プログラムは、ネットワークに接続されたサーバ装置等が保持し、サーバ装置等がダウンロード要求を受けて提供することも可能である。
【００７５】
これまで本発明を、制御装置、通信システム、制御方法およびプログラムとして上述した実施の形態をもって説明してきた。しかしながら、本発明は上述した実施の形態に限定されるものではなく、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができるものである。また、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【符号の説明】
【００７６】
１０、１１…終端装置、１２、１３、１８、１９…通信装置、１４…制御装置、１５…ネットワーク、１６、１７…L2SW、２０…CPU、２１…ROM、２２…RAM、２３…フラッシュメモリ、２４…通信I/F、３０…記憶部、３１…取得部、３２…生成部、３３…送信部、４０…記憶部、４１…送信部、４２…制御部、４３…処理部、４４…受信部、５０…通信装置、５１…L2SW
【先行技術文献】
【特許文献】
【００７７】
【特許文献１】特開２０１５−１２２６６５号公報
【図１】
2017098738.tif 000003
【図２】
2017098738.tif 000004
【図３】
2017098738.tif 000005
【図４】
2017098738.tif 000006
【図５】
2017098738.tif 000007
【図６】
2017098738.tif 000008
【図７】
2017098738.tif 000009
【図８】
2017098738.tif 000010
【図９】
2017098738.tif 000011
【図１０】
2017098738.tif 000012
【図１１】
2017098738.tif 000013
【図１２】
2017098738.tif 000014