(57)【要約】【課題】複数のドメインに跨るネットワークにおいて仮想ネットワークを構成する場合に、ブロードキャストおよびマルチキャストを効率良く転送すること。【解決手段】データ転送システムは第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバと第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバとを備え、第１のデータ転送サーバは第１のドメインに属するトンネル終端ポイントからパケットを受信すると、第２のデータ転送サーバ、および、第１のドメインに属するトンネル終端ポイントのうちのパケットの転送元以外のトンネル終端ポイントに対して、パケットを転送し、第２のデータ転送サーバは第１のデータ転送サーバからパケットを受信すると、第２のドメインに属するトンネル終端ポイントに対して、パケットを転送する。【選択図】図１
2015231212.tif 000002
【特許請求の範囲】
【請求項１】
第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバと、
第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバと、を備え、
前記第１のデータ転送サーバは、前記第１のドメインに属するトンネル終端ポイントからパケットを受信すると、前記第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する第１の転送部を有し、
前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する第２の転送部を有する、
ことを特徴とするデータ転送システム。
【請求項２】
前記第１の転送部は、前記パケットの送信元ポート番号を所定の番号に変更して、前記第２のデータ転送サーバに転送する、
請求項１に記載のデータ転送システム。
【請求項３】
前記第１のデータ転送サーバは、前記第２のデータ転送サーバと前記所定の番号を関連付けて保持する第１の記憶部を有し、
前記第１の転送部は、前記第１の記憶部を参照して、前記パケットの送信元ポート番号を前記所定の番号に変更する、
請求項２に記載のデータ転送システム。
【請求項４】
前記第１の記憶部は、前記第１のドメインに属するトンネル終端ポイントおよび前記第２のデータ転送サーバの各装置と、該各装置のＩＰ（Internet Protocol）アドレスとを関連付けて保持する、
請求項３に記載のデータ転送システム。
【請求項５】
前記第２の転送部は、前記パケットの送信元ポート番号に基づいて、前記パケットの転送元のデータ転送サーバを識別する、
請求項２ないし４のいずれか１項に記載のデータ転送システム。
【請求項６】
前記第２のデータ転送サーバは、前記第１のデータ転送サーバと前記所定の番号を関連付けて保持する第２の記憶部を有し、
前記第２の転送部は、前記第２の記憶部を参照して、前記パケットの転送元のデータ転送サーバを識別する、
請求項５に記載のデータ転送システム。
【請求項７】
前記第２の記憶部は、前記第２のドメインに属するトンネル終端ポイントおよび前記第１のデータ転送サーバの各装置と、該各装置のＩＰアドレスとを関連付けて保持する、
請求項６に記載のデータ転送システム。
【請求項８】
第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバであって、
前記第１のドメインに属するトンネル終端ポイントからパケットを受信すると、第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する第１の転送部を備え、
前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する、
ことを特徴とするデータ転送サーバ。
【請求項９】
第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバが、前記第１のドメインに属するトンネル終端ポイントからパケットを受信するステップと、
第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送するステップと、
前記第２のデータ転送サーバが、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送するステップと、を含む、
ことを特徴とするデータ転送方法。
【請求項１０】
第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバに設けられたコンピュータに対して、
前記第１のドメインに属するトンネル終端ポイントからパケットを受信する処理と、
第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する処理と、を実行させ、
前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ転送システム、データ転送サーバ、データ転送方法、および、プログラムに関し、特に、トンネリング技術を用いて通信を行う場合のブロードキャストおよびマルチキャストを転送するデータ通信システム、データ転送サーバ、データ転送方法、および、プログラムに関する。
【背景技術】
【０００２】
近年、大規模なデータセンターにおいて仮想計算機環境の利用が増大している。また、仮想計算機環境上では、ソフトウェアによりネットワーク機器を制御するＳＤＮ（Software-Defined Network）が構築されている。ＳＤＮに基づいて構築されたＶＬＡＮ（Virtual Local Area Network）においては、ネットワーク装置の区画資源が少ないという問題や、ネットワーク機器の設定が複雑となるという問題を回避するため、エッジオーバレイを構築するためのオーバレイネットワーク技術が使用される。
【０００３】
エッジオーバレイネットワーク技術として、ＶＸＬＡＮ（Virtual Extensible Local Area Network）やＮＶＧＲＥ（Network Virtualization using Generic Routing Encapsulation）などのトンネリング技術が知られている（非特許文献１、２）。これらの技術は、仮想計算機上に構築される仮想ネットワークの通信をカプセル化して、仮想計算機環境を構成するネットワーク機器から成る基盤ネットワーク（Substrate Network、物理ネットワーク）に対して通信を流す。これらのトンネリング技術では、カプセリングの際に、仮想ネットワークＩＤ（Identifier）を付加することで、仮想ネットワークの区画資源を仮想的に増やすことが可能となる。また、これらのトンネリング技術では、基盤ネットワークの通信を用いることで、ネットワーク機器に対する設定の負担が軽減される。
【０００４】
しかしながら、これらのトンネリング技術では、ブロードキャスト、マルチキャスト、Unknownユニキャストに関しては、処理内容が詳細に規定されておらず、単に、基盤ネットワークのＩＰ（Internet Protocol）マルチキャスト技術を用いることが定められているに過ぎない。ＩＰマルチキャストアドレスは共有されることもあるが、通常、仮想ネットワークＩＤごとに設定される。したがって、マルチキャストは、構築された仮想計算機環境のネットワーク、すなわち、対象となる仮想ネットワークの全域に届けられる（非特許文献１の「4.2. Broadcast Communication and Mapping to Multicast」、非特許文献２の「4.1. Broadcast and Multicast Traffic」参照）。
【０００５】
また、特許文献１には、ＴＲＩＬＬ（Transparent Interconnection of Lots of Links）ヘッダと呼ばれるヘッダにより、パケットをカプセル化する技術に適用されるスイッチが開示されている。特許文献１に記載されたスイッチは、マルチキャストパケットと関連付けられるソースアドレス、マルチキャストアドレス、および、マルチキャストツリー識別子フィールドに基づいて、内部マルチキャストグループ識別子を判定する手段と、内部マルチキャストグループ識別子に基づいてマルチキャストパケットを転送する手段とを備えている。
【０００６】
さらに、非特許文献３には、オープンフロー（OpenFlow）と呼ばれるネットワーク制御技術が記載されている。オープンフローを用いることにより、オープンフロースイッチをトンネリング技術のＴＥＰ装置（Tunnel End Point、トンネル終端ポイント）として機能させることが可能となる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２０１３−５２８３４０号公報
【非特許文献】
【０００８】
【非特許文献１】M.Mahalingamほか7名、“VXLAN: A Framework for Overlaying Virtualized Layer 2 Networks over Layer 3 Network”、[online]、[平成２６（２０１４）年５月１９日検索]、インターネット<URL:http://tools.ietf.org/pdf/draft-mahalingam-dutt-dcops-vxlan-02.pdf>
【非特許文献２】M.Sridharanほか9名、“NVGRE: Network Virtualization using Generic Routing Encapsulation”、[online]、[平成２６（２０１４）年５月１９日検索]、インターネット<URL:http://tools.ietf.org/pdf/draft-sridharan-virtualization-nvgre-01.pdf>
【非特許文献３】Nick McKeownほか7名、“OpenFlow: Enabling Innovation in Campus Networks”、[online]、[平成２６（２０１４）年５月１９日検索]、インターネット<URL: http://www.openflow.org/documents/openflow-wp-latest.pdf>
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。以下の分析は、本発明者によってなされたものである。
【００１０】
ＶＸＬＡＮ（Virtual Extensible Local Area Network）にはさまざまなメリットがあるものの、マルチキャストに対応した物理ネットワークが必要とされる点が導入の障壁となるおそれがある。一方、マルチキャストを使用する代わりに、代替の装置にブロードキャストを送信する宛先を学習させ、当該代替の装置がすべての宛先に対してパケットをコピーして送信する方法を使用することが考えられる。かかる方法によると、前述のマルチキャストに対応したネットワークが不要となり、ネットワーク構築が簡便になるというメリットがある。しかしながら、かかる方法によると、マルチキャストとは異なり、代替の装置から宛先に転送する際に、パケットがコピーされて転送される。したがって、ドメインを跨る転送が行われる場合には、コピーされたパケットが同一の経路を通過するため、ネットワークの効率が悪化するという問題がある。
【００１１】
そこで、複数のドメイン（ないしは、グループ、拠点）に跨るネットワークにおいて、ＶＸＬＡＮを用いて仮想ネットワークを構成する場合に、マルチキャストを使用せず、かつ、ブロードキャストパケットを拠点間の複数の宛先に効率良く転送する技術が望まれる。
【００１２】
特に、複数のドメインに跨るネットワークにおいて仮想ネットワークを構成する場合に、ブロードキャストおよびマルチキャストを効率良く転送することが課題となる。本発明の目的は、かかる課題の解決に寄与するデータ転送システム、データ転送サーバ、データ転送方法、および、プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
本発明の第１の態様に係るデータ転送システムは、第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバと、第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバと、を備え、前記第１のデータ転送サーバは、前記第１のドメインに属するトンネル終端ポイントからパケットを受信すると、前記第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する第１の転送部を有し、前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する第２の転送部を有する。
【００１４】
本発明の第２の態様に係るデータ転送サーバは、第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバであって、前記第１のドメインに属するトンネル終端ポイントからパケットを受信すると、第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する第１の転送部を備え、前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する。
【００１５】
本発明の第３の態様に係るデータ転送方法は、第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバが、前記第１のドメインに属するトンネル終端ポイントからパケットを受信するステップと、第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送するステップと、前記第２のデータ転送サーバが、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送するステップと、を含む。
【００１６】
本発明の第４の態様に係るプログラムは、第１のドメインに属するトンネル終端ポイントに対して設けられた第１のデータ転送サーバに設けられたコンピュータに対して、前記第１のドメインに属するトンネル終端ポイントからパケットを受信する処理と、第２のドメインに属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ、および、前記第１のドメインに属するトンネル終端ポイントのうちの前記パケットの転送元以外のトンネル終端ポイントに対して、前記パケットを転送する処理と、を実行させ、前記第２のデータ転送サーバは、前記第１のデータ転送サーバから前記パケットを受信すると、前記第２のドメインに属するトンネル終端ポイントに対して、前記パケットを転送する。なお、プログラムは、非一時的なコンピュータ可読記録媒体（non-transitory computer-readable storage medium）に記録されたプログラム製品として提供することもできる。
【発明の効果】
【００１７】
本発明に係るデータ転送システム、データ転送サーバ、データ転送方法、および、プログラムによると、複数のドメインに跨るネットワークにおいて仮想ネットワークを構成する場合に、ブロードキャストおよびマルチキャストを効率良く転送することが可能となる。
【図面の簡単な説明】
【００１８】
【図１】一実施形態に係るデータ転送システムの構成を例示するブロック図である。
【図２】第１の実施形態に係るデータ転送システムの構成を例示するブロック図である。
【図３】第１の実施形態に係るデータ転送システムにおいて、ＢＣＭＣ転送サーバの送信先記憶部が保持するテーブルを例示する図である。
【図４】第１の比較例に係るデータ転送システムの構成を例示するブロック図である。
【図５】第１の実施形態に係るデータ転送システムの他の構成を例示するブロック図である。
【図６】第１の実施形態に係るデータ転送システムにおいて、第１のＢＣＭＣ転送サーバ１０−１の送信先記憶部１４−１が保持するテーブルを例示する図である。
【図７】第１の実施形態に係るデータ転送システムにおいて、第２のＢＣＭＣ転送サーバ１０−２の送信先記憶部１４−２が保持するテーブルを例示する図である。
【図８】第１の実施形態に係るデータ転送システムの動作を例示するブロック図である。
【図９】第１の比較例に係るデータ転送システムにおいて、ＢＣＭＣ転送サーバの送信先記憶部が保持するテーブルを例示する図である。
【図１０】第１の実施形態に係るデータ転送システムの他の構成の動作を例示するブロック図である。
【発明を実施するための形態】
【００１９】
はじめに、一実施形態の概要について説明する。なお、この概要に付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
【００２０】
図１は、一実施形態に係るデータ転送システムの構成を例示するブロック図である。図１を参照すると、データ転送システムは、第１のドメイン４０−１に属するトンネル終端ポイント６０−１、６０−２に対して設けられた第１のデータ転送サーバ５０−１と、第２のドメイン４０−２に属するトンネル終端ポイントに対して設けられた第２のデータ転送サーバ５０−２とを備えている。第１のデータ転送サーバ５０−１は、第１のドメイン４０−１に属するトンネル終端ポイント６０−１からパケットを受信すると、第２のデータ転送サーバ５０−２、および、第１のドメイン４０−１に属するトンネル終端ポイントのうちのパケットの転送元以外のトンネル終端ポイント６０−２に対して、パケットを転送する第１の転送部１２−１を有する。一方、第２のデータ転送サーバ５０−２は、第１のデータ転送サーバ５０−１からパケットを受信すると、第２のドメイン４０−２に属するトンネル終端ポイント６０−３、６０−４に対して、パケットを転送する第２の転送部１２−２を有する。
【００２１】
かかるデータ転送システムによると、トンネル終端ポイント６０−１が収容する仮想サーバからトンネル終端ポイント６０−２〜６０−４が収容する仮想サーバに向けて送出されるマルチキャストまたはブロードキャストは、トンネル終端ポイント６０−１からデータ転送サーバ５０−１、データ転送サーバ５０−１からトンネル終端ポイント６０−２、データ転送サーバ５０−１からデータ転送サーバ５０−２、データ転送サーバ５０−２からトンネル終端ポイント６０−３、６０−４へのユニキャストとして転送される。かかるデータ転送システムによると、データ転送サーバ５０−１からトンネル終端ポイント６０−３、６０−４に対して直接データを転送した場合と比較して、ドメイン４０−１とドメイン４０−２を接続する通信路Ａにおけるトラフィックを削減することができる。すなわち、一実施形態のデータ転送システムによると、複数のドメインに跨るネットワークにおいて仮想ネットワークを構成する場合に、ブロードキャストおよびマルチキャストを効率良く転送することが可能となる。
【００２２】
ここで、第１の転送部１２−１はパケットの送信元ポート番号を所定の番号に変更して、第２のデータ転送サーバ５０−２に転送し、第２の転送部１２−２はパケットの送信元ポート番号に基づいて、パケットの転送元のデータ転送サーバを識別することが好ましい。かかるデータ転送システムによると、データ転送サーバ５０−１、５０−２の間でパケットが往復する現象を回避することが可能となる。
【００２３】
＜実施形態１＞
次に、第１の実施形態に係るデータ転送システムについて、図面を参照して詳細に説明する。
【００２４】
図２は、本実施形態に係るデータ転送システムの構成を例示するブロック図である。図２を参照すると、本実施形態のデータ転送システムは、ブロードキャストおよびマルチキャスト（以下、ＢＣＭＣ：Broadcast Multicast）を転送するためのＢＣＭＣ転送サーバ１０と、ＶＸＬＡＮ（Virtual Extensible Local Area Network） Tunnel End Point（ＶＴＥＰ、トンネル終端ポイント）２０−１、２０−２と、仮想サーバ３０−１、３０−２とを備えている。
【００２５】
ＢＣＭＣ転送サーバ１０は、転送部１２および送信先記憶部１４を備えている。一方、ＶＴＥＰ２０−１は転送部２２−１、送信先記憶部２４−１、カプセル化部２６−１、および、パケット送受信部２８−１を備え、ＶＴＥＰ２０−２は転送部２２−２、送信先記憶部２４−２、カプセル化部２６−２、および、パケット送受信部２８−２を備えている。仮想サーバ３０−１、３０−２は、パケットを送受信する。ＢＣＭＣサーバ１０の転送部１２とＶＴＥＰ２０−１、２０−２の転送部２２−１、２２−２は、ＴＣＰ（Transmission Control Protocol）／ＩＰ（Internet Protocol）通信が可能なネットワークで接続されており、それぞれお互いに通信可能なＩＰアドレスを有する。
【００２６】
ＶＴＥＰ２０−１は、仮想サーバ３０−１から送信されたパケットをカプセル化して、ＢＣＭＣ転送サーバ１０に送信する。図３は、ＢＣＭＣ転送サーバ１０の送信先記憶部１４が保持するテーブルを例示する。ＢＣＭＣ転送サーバ１０は、送信先記憶部１４が保持する図３のテーブルに従って、送信元のＶＴＥＰ２０−１を除き、ＶＴＥＰ２０−２に対してパケットを送信する。ＶＴＥＰ２０−２は、パケットを受信すると、カプセル化を解除して、仮想サーバ３０−２に転送する。
【００２７】
次に、図２に示す方式において、ＶＴＥＰの台数が増えた場合を考える。図４は、第１の比較例として、ＶＴＥＰの台数を増やしたときの構成を例示するブロック図である。
【００２８】
ここでは、図４に示す構成において、仮想サーバ３０−１〜３０−４がすべて同一ＶＮＩ（VXLAN Network Identifier）での通信が可能であるとする。このとき、仮想サーバ３０−１がブロードキャストパケットを送信すると、パケットは通信路Ａを経由する。ここで、ＢＣＭＣ転送サーバ１０でパケットがコピーされるため、通信路ＡにはＶＴＥＰ２０−３およびＶＴＥＰ２０−４宛の２つのパケットが通過する。また、通信路Ａが切断された場合、ＶＴＥＰ２０−３とＶＴＥＰ２０−４は、ブロードキャストを送信できなくなる。通信路Ａがネットワーク全体に影響を及ぼす問題を解決するため、本実施形態では、図４の構成の代わりに、以下に詳述する図５の構成を採用する。
【００２９】
図５は、本実施形態のデータ転送システムにおいて、ＶＴＥＰの台数を増やしたときの構成を例示するブロック図である。
【００３０】
図５を参照すると、本実施形態のデータ転送システムでは、ＢＣＭＣ転送サーバはＶＴＥＰのドメイン（ないしグループ）ごとに配置される。図５の場合、ＢＣＭＣ転送サーバ１０−１はＶＴＥＰ２０−１およびＶＴＥＰ２０−２と接続され、ＢＣＭＣサーバ１０−２はＶＴＥＰ２０−３およびＶＴＥＰ２０−４と接続される。また、送信先記憶部１４−１、１４−２が保持するテーブルに対して、送信ＩＤと受信ＩＤの欄を追加する。図６は、ＢＣＭＣ転送サーバ１０−１の送信先記憶部１４−１が保持するテーブルを例示する。一方、図７は、ＢＣＭＣ転送サーバ１０−２の送信先記憶部１４−２が保持するテーブルを例示する。
【００３１】
ＢＣＭＣ転送サーバ１０−１およびＢＣＭＣ転送サーバ１０−２が、それぞれ、図６および図７のテーブルを用いて図２の場合と同様の処理を行う場合を考える。まず、ＶＴＥＰ２０−１は仮想サーバ３０−１から送信されたパケットをカプセル化してＢＣＭＣ転送サーバ１０−１に送信する。次に、ＢＣＭＣ転送サーバ１０−１は、図６のテーブルに従って、ＶＴＥＰ２０−１を除いて、ＶＴＥＰ２０−２およびＢＣＭＣ転送サーバ１０−２にパケットを送信する。次に、ＢＣＭＣ転送サーバ１０−２は、図７のテーブルに従って処理を行う。ここで、送信元のＩＰアドレスはＶＴＥＰ２０−１であるため、ＢＣＭＣ転送サーバ１０−２はＢＣＭＣ転送サーバ１０−１は送信元ではないと判断し、ＢＣＭＣ転送サーバ１０−１に対しても、コピーしたパケットを転送する。すると、パケットを受信したＢＣＭＣ転送サーバ１０−１は、さらにパケットをコピーしてＢＣＭＣ転送サーバ１０−２に送信する。
【００３２】
このように、ＢＣＭＣ転送サーバ１０−１とＢＣＭＣ転送サーバ１０−２の間で、無限に送受信が繰り返されてしまう。これを回避するために、本実施形態では、送信先記憶部１４−１、１４−２が保持するテーブルとして、図６および図７に示すように、送信ＩＤおよび受信ＩＤの欄を追加する。また、ＢＣＭＣ転送サーバ１０−１、１０−２は、送信ＩＤおよび受信ＩＤを用いた処理を追加的に実施する。なお、追加的に実施する処理の内容については、以下の動作の説明において詳述する。
【００３３】
次に、図面を参照しつつ、本実施形態のデータ転送システム（図２または図５）の動作、および、第１の比較例（図４）の動作について説明する。
【００３４】
図８は、本実施形態のデータ転送システム（図２の構成の場合）の動作を説明するための図である。図８を参照すると、ＶＴＥＰ２０−１のパケット送受信部２８−１は、仮想サーバ３０−１からＶＴＥＰ２０−１にブロードキャスト送信されたメッセージを受信し、カプセル化部２６−１に送信する（ステップＡ１）。
【００３５】
ＶＴＥＰ２０−１のカプセル化部２６−１は、受信したメッセージについてＶＸＬＡＮのカプセル化を施し、転送部２２−１に送出する（ステップＡ２）。
【００３６】
ＶＴＥＰ２０−１の転送部２２−１は、標準のＶＸＬＡＮプロトコルとは異なり、カプセル化したパケットの宛先をＶＸＬＡＮ用のマルチキャストＩＰアドレスではなく、ＢＣＭＣ転送サーバ１０のユニキャストＩＰアドレスに設定する。転送部２２−１は、生成したユニキャストパケットを、ＢＣＭＣ転送サーバ１０宛に送信する（ステップＡ３）。
【００３７】
ＢＣＭＣ転送サーバ１０の転送部１２は、パケットを受信し、受信パケットのＶＮＩ（VXLAN Network Identifier）をキーとして、ＶＮＩに属するＩＰアドレスを送信先記憶部１４に問い合わせる（ステップＡ４）。図３は、送信先記憶部１４が保持するテーブルを例示する。
【００３８】
転送部１２は、問い合わせによって得られたすべての外部ノードのＩＰアドレス宛にパケットを送信するため、パケットをコピーして、個別にユニキャストパケットを送信する（ステップＡ５）。ただし、転送部１２は、送信元のＩＰアドレスと同一のＩＰアドレスにはパケットを送信しない。また、転送部１２は、送信する際に、送信元のＩＰアドレスを変更しない。
【００３９】
メッセージを届けられる側のＶＴＥＰ２０−２において、転送部２２−２は、上記ユニキャストパケットを受信し、カプセル化部２６−２に送信する（ステップＡ６）。
【００４０】
ＶＴＥＰ２０−２のカプセル化部２６−２は、受信したパケットのカプセル化を解除して、パケット送受信部２８−２に送信する（ステップＡ７）。
【００４１】
ＶＴＥＰ２０−２のパケット送受信部２８−２は、仮想サーバ３０−２にパケットを送信する（ステップＡ８）。
【００４２】
次に、図４に示した第１の比較例の動作について説明する。図４において、仮想サーバ３０−１〜３０−４がすべて同一のＶＮＩでの通信が可能であるとする。このとき、仮想サーバ３０−１がブロードキャストパケットを送信すると、図２の場合と同様の処理が発生する。
【００４３】
図９は、図４に示した第１の比較例において、ＢＣＭＣ転送サーバ１０の送信先記憶部１４が保持するテーブルを例示する。ここで、上記ステップＡ５の処理を行うと、通信路Ａには、ＶＴＥＰ３０−３およびＶＴＥＰ３０−４宛の２つのパケットが通過する。また、通信路Ａが切断された場合、ＶＴＥＰ３０−３とＶＴＥＰ３０−４はブロードキャストを送信できなくなる。かかる問題を解決するため、本実施形態では、ＶＴＥＰが複数のドメイン（ないしグループ）に跨る場合、図５に示す構成を採用する。
【００４４】
図１０は、本実施形態のデータ転送システム（図５に示す構成の場合）における動作例を説明するための図である。図１０を参照すると、ＶＴＥＰ２０−１のパケット送受信部２８−１は、仮想サーバ３０−１からＶＴＥＰ２０−１にブロードキャスト送信されたメッセージを受信し、カプセル化部２６−１に送信する（ステップＢ１）。
【００４５】
ＶＴＥＰ２０−１のカプセル化部２６−１は、受信したメッセージに対してＶＸＬＡＮのカプセル化を施し、転送部２２−１に送出する（ステップＢ２）。
【００４６】
ＶＴＥＰ２０−１の転送部２２−１は、標準のＶＸＬＡＮプロトコルとは異なり、カプセル化したパケットの宛先をＶＸＬＡＮ用のマルチキャストＩＰアドレスではなく、ＢＣＭＣ転送サーバ１０−１のユニキャストＩＰアドレスに設定する。転送部２２−１は、生成したユニキャストパケットをＢＣＭＣ転送サーバ１０−１宛に送信する（ステップＢ３）。
【００４７】
ＢＣＭＣ転送サーバ１０−１の転送部１２−１は、パケットを受信し、受信パケットのＶＮＩ（VXLAN Network Identifier）をキーとして、ＶＮＩに属するＩＰアドレスを送信先記憶部１４−１に問い合わせる（ステップＢ４）。図６は、送信先記憶部１４−１が保持するテーブルを例示する。
【００４８】
転送部１２−１は、問い合わせによって得られたすべての外部ノードのＩＰアドレス宛にパケットを送信するため、パケットをコピーして、個別にユニキャストパケットを送信する（ステップＢ５）。ただし、転送部１２−１は、送信元のＩＰアドレスと同一のＩＰアドレス、または、送信元のポート番号が受信ＩＤと一致した場合、そのＩＰアドレスにはパケットを送信しない。また、転送部１２−１は、送信する際に、送信元のＩＰアドレスを変更しない。さらに、転送部１２−１は、送信する場合に、送信ＩＤに値が含まれている宛先に対しては、送信元ポート番号を送信ＩＤに変更して送信する。
【００４９】
図６を参照すると、ＢＣＭＣ転送サーバ１０−２のＩＰアドレステーブルには送信ＩＤが含まれている。そこで、転送部１２−１は、ＢＣＭＣ転送サーバ１０−２宛のパケットの送信元ポート番号を「５１１１１」に変更し、変更後のパケットをＢＣＭＣ転送サーバ１０−２に送信する。
【００５０】
ＢＣＭＣ転送サーバ１０−２の転送部１２−２は、ＢＣＭＣ転送サーバ１０−１からのパケットを受信し、受信パケットのＶＮＩ（VXLAN Network Identifier）をキーとして、ＶＮＩに属するＩＰアドレスを送信先記憶部１４−２に問い合わせる（ステップＢ６）。図７は、送信先記憶部１４−２が保持するテーブルを例示する。
【００５１】
転送部１２−２は、問い合わせによって得られたすべての外部ノードのＩＰアドレス宛にパケットを送信するため、パケットをコピーし、個別にユニキャストパケットを送信する（ステップＢ７）。ただし、転送部１２−２は、送信元のＩＰアドレスと同一のＩＰアドレス、または、送信元のポート番号が受信ＩＤと一致した場合、そのＩＰアドレスにはパケットを送信しない。また、転送部１２−２は、送信する際に、送信元のＩＰアドレスを変更しない。さらに、転送部１２−２は、送信する場合に送信ＩＤに値が含まれている宛先に対して、送信元ポート番号を「５２２２２」に変更して送信する。
【００５２】
図７を参照すると、パケットの送信元ポート番号は「５１１１１」であるため、転送部１２−２は、ＢＣＭＣ転送サーバ１０−１宛にはパケットを転送しない。
【００５３】
メッセージが届けられる側のＶＴＥＰ２０−３において、転送部２２−３は、ユニキャストパケットを受信し、カプセル化部２６−３に送信する（ステップＢ８）。
【００５４】
ＶＴＥＰ２０−３のカプセル化部２６−３は、カプセル化を解除してパケット送受信部２８−３に送信する（ステップＢ９）。
【００５５】
ＶＴＥＰ２０−３のパケット送受信部２８−３は、仮想サーバ３０−３にパケットを送信する（ステップＢ１０）。
【００５６】
本実施形態のデータ転送システムによると、ＶＸＬＡＮにおいてマルチキャストが不要となり、かつ、通信路Ａを経由するパケット数を第１の比較例よりも削減することができる。
【００５７】
また、本実施形態のデータ転送システムによると、通信路Ａの障害時に、ＢＣＭＣ転送サーバ毎のドメイン（ないしグループ）においてブロードキャスト送受信を継続することができる。
【００５８】
さらに、本実施形態のデータ転送システムによると、パケットに対して別途新たなパラメータを追加する必要がないため、関連技術の方式と比較してパケットサイズが増大するおそれもない。
【００５９】
また、本実施形態のデータ転送システムによると、ＢＣＭＣ転送サーバが連携する上で、ＢＣＭＣサーバとＶＴＥＰに対してパケット通信に基づいて情報をやりとりする新たな処理を追加する必要もない。したがって、本実施形態に係るデータ転送システムは、関連技術に対して僅かな変更を施すことにより、実現することができる。
【００６０】
＜他の実施形態＞
第１の実施形態では、簡単のため、ＢＣＭＣ転送サーバが２台の場合について説明した。ただし、３台目以降のＢＣＭＣ転送サーバも同様の方式で追加することができる。また、第１の実施形態では、プロトコルとしてＶＸＬＡＮを用いた場合について説明したが、本発明はこれに限定されない。すなわち、本発明は、仮想ネットワークを生成するために用いられるオーバレイを構成するトンネリングプロトコルにおけるブロードキャストおよびマルチキャストの転送方式に適用することができる。
【００６１】
なお、本発明において、さらに下記の形態が可能である。
［形態１］
上記第１の態様に係るデータ転送システムのとおりである。
［形態２］
前記第１の転送部は、前記パケットの送信元ポート番号を所定の番号に変更して、前記第２のデータ転送サーバに転送する、
形態１に記載のデータ転送システム。
［形態３］
前記第１のデータ転送サーバは、前記第２のデータ転送サーバと前記所定の番号を関連付けて保持する第１の記憶部を有し、
前記第１の転送部は、前記第１の記憶部を参照して、前記パケットの送信元ポート番号を前記所定の番号に変更する、
形態２に記載のデータ転送システム。
［形態４］
前記第１の記憶部は、前記第１のドメインに属するトンネル終端ポイントおよび前記第２のデータ転送サーバの各装置と、該各装置のＩＰ（Internet Protocol）アドレスとを関連付けて保持する、
形態３に記載のデータ転送システム。
［形態５］
前記第２の転送部は、前記パケットの送信元ポート番号に基づいて、前記パケットの転送元のデータ転送サーバを識別する、
形態２ないし４のいずれか一に記載のデータ転送システム。
［形態６］
前記第２のデータ転送サーバは、前記第１のデータ転送サーバと前記所定の番号を関連付けて保持する第２の記憶部を有し、
前記第２の転送部は、前記第２の記憶部を参照して、前記パケットの転送元のデータ転送サーバを識別する、
形態５に記載のデータ転送システム。
［形態７］
前記第２の記憶部は、前記第２のドメインに属するトンネル終端ポイントおよび前記第１のデータ転送サーバの各装置と、該各装置のＩＰアドレスとを関連付けて保持する、
形態６に記載のデータ転送システム。
［形態８］
上記第２の態様に係るデータ転送サーバのとおりである。
［形態９］
前記第１の転送部は、前記パケットの送信元ポート番号を所定の番号に変更して、前記第２のデータ転送サーバに転送する、
形態８に記載のデータ転送サーバ。
［形態１０］
前記第２のデータ転送サーバと前記所定の番号を関連付けて保持する第１の記憶部を備え、
前記第１の転送部は、前記第１の記憶部を参照して、前記パケットの送信元ポート番号を前記所定の番号に変更する、
形態９に記載のデータ転送サーバ。
［形態１１］
前記第１の記憶部は、前記第１のドメインに属するトンネル終端ポイントおよび前記第２のデータ転送サーバの各装置と、該各装置のＩＰ（Internet Protocol）アドレスとを関連付けて保持する、
形態１０に記載のデータ転送サーバ。
［形態１２］
上記第３の態様に係るデータ転送方法のとおりである。
［形態１３］
前記第１のデータ転送サーバが、前記パケットの送信元ポート番号を所定の番号に変更するステップを含む、
形態１２に記載のデータ転送方法。
［形態１４］
前記第２のデータ転送サーバが、前記パケットの送信元ポート番号に基づいて、前記パケットの転送元のデータ転送サーバを識別するステップを含む、
形態１３に記載のデータ転送方法。
［形態１５］
上記第４の態様に係るプログラムのとおりである。
［形態１６］
前記パケットの送信元ポート番号を所定の番号に変更する処理を前記コンピュータに実行させる、
形態１５に記載のプログラム。
【００６２】
なお、上記特許文献および非特許文献の全開示内容は、本書に引用をもって繰り込み記載されているものとする。本発明の全開示（請求の範囲を含む）の枠内において、さらにその基本的技術思想に基づいて、実施形態の変更・調整が可能である。また、本発明の全開示の枠内において種々の開示要素（各形態の各要素、各実施形態の各要素、各図面の各要素等を含む）の多様な組み合わせ、ないし、選択が可能である。すなわち、本発明は、請求の範囲を含む全開示、技術的思想にしたがって当業者であればなし得るであろう各種変形、修正を含むことは勿論である。特に、本書に記載した数値範囲については、当該範囲内に含まれる任意の数値ないし小範囲が、別段の記載のない場合でも具体的に記載されているものと解釈されるべきである。
【符号の説明】
【００６３】
１０、１０−１、１０−２    ＢＣＭＣ転送サーバ
１２、１２−１、１２−２    転送部
１４、１４−１、１４−２    送信先記憶部
２０−１〜２０−４    ＶＴＥＰ
２２−１〜２２−４    転送部
２４−１〜２４−４    送信先記憶部
２６−１〜２６−４    カプセル化部
２８−１〜２８−４    パケット送受信部
３０−１〜３０−４    仮想サーバ
４０−１、４０−２    ドメイン
５０−１、５０−２    データ転送サーバ
６０−１〜６０−４    トンネル終端ポイント
Ａ    通信路
【図１】
2015231212.tif 000003
【図２】
2015231212.tif 000004
【図３】
2015231212.tif 000005
【図４】
2015231212.tif 000006
【図５】
2015231212.tif 000007
【図６】
2015231212.tif 000008
【図７】
2015231212.tif 000009
【図８】
2015231212.tif 000010
【図９】
2015231212.tif 000011
【図１０】
2015231212.tif 000012