[go: up one dir, main page]

JP2008054214A - ネットワーク仮想化システム及びネットワーク仮想化プログラム - Google Patents

ネットワーク仮想化システム及びネットワーク仮想化プログラム Download PDF

Info

Publication number
JP2008054214A
JP2008054214A JP2006230906A JP2006230906A JP2008054214A JP 2008054214 A JP2008054214 A JP 2008054214A JP 2006230906 A JP2006230906 A JP 2006230906A JP 2006230906 A JP2006230906 A JP 2006230906A JP 2008054214 A JP2008054214 A JP 2008054214A
Authority
JP
Japan
Prior art keywords
network
virtual
terminals
network virtualization
communication
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
JP2006230906A
Other languages
English (en)
Inventor
Junichi Nakazato
淳一 中里
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.)
Toshiba Corp
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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 Toshiba Corp, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2006230906A priority Critical patent/JP2008054214A/ja
Publication of JP2008054214A publication Critical patent/JP2008054214A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

【課題】仮想ネットワーク上のトラフィックの最適化を図ること。
【解決手段】本発明のネットワーク仮想化システムは、予め構築されたアンダーレイネットワーク40(#1〜#6)の何れかに接続された複数のクライアント20と、アンダーレイネットワーク上に、ソフトウェアによって仮想的なネットワークを構築するネットワーク仮想化装置155とを備える。ネットワーク仮想化装置は更に、構築された仮想ネットワークd1〜d6における各クライアント間の通信を中継する仮想ハブ10を備える。仮想ハブは、予め定めた接続基準を考慮して、仮想ハブによって通信が中継されるクライアントのうちの何れか一対のクライアントについて、仮想ハブを中継することなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、この一対のクライアントに対して、ピアツーピアリンクS1〜S5によって直接通信するよう指示する。
【選択図】 図6

Description

本発明は、例えばTCP/IPのようなアンダーレイネットワーク上に、仮想的なイーサネット(登録商標)のようなオーバレイネットワークを構築するネットワーク仮想化システム、及びネットワーク仮想化システムに適用されるプログラムに関し、特に、オーバレイネットワークのトラフィックを最適化するネットワーク仮想化システム及びネットワーク仮想化プログラムに関する。
例えば、TCP/IPネットワークのような既存の物理的なネットワーク(以後、「アンダーレイネットワーク」と称する)上に、ソフトウェアにて構築する仮想的なネットワークをオーバレイネットワークと呼ぶ。
主なオーバレイネットワーク(以後、「仮想ネットワーク」とも称する)として、以下のように、いわゆるピアツーピア(P2P)ネットワーク(例えば、非特許文献1乃至7)と呼ばれるものや、仮想ローカルエリアネットワーク(以後、「仮想LAN」と称する)がある。
ピアツーピアネットワークは、現状、ファイル交換(Winny,BitTorrent等)、音声通信(Skype等)などに広く利用されている。その方式により、大きく以下の2つ、すなわち、(1)ホストやコンテンツの探索は特別なサーバに依存するが、最終的なデータの送受信はピアツーピアのホスト間で行なうものと、(2)データの送受信だけでなく、ホストやコンテンツの探索そのものも、特別なサーバを必要とせず、完全に対等な立場のホスト間で分散協調して行なうものとに分けられる。なお、ホスト、コンテンツの探索に、特定のサーバではないが、特別な役割を果たすホスト群を利用する、上記2つの中間的な方式を用いるものもある。
一方、仮想LANとして代表的なものに、ソフトイーサ株式会社製のSoftether(Packetix)(例えば、非特許文献8乃至9)がある。Softether(Packetix)は仮想ネットワークの一例である仮想イーサネットを構築するソフトウェア群である。Softether(Packetix)又はこれに類似したソフトウェアでの仮想イーサネットの構築方法は例えば以下の通りである。
すなわち、先ず、ある計算機上にイーサネットスイッチングハブをエミュレートするソフトウェア(以後、「仮想ハブ」と称する)を動作させる(以後、仮想ハブを動作させる計算機を「サーバ」と称する。)。
次に、仮想イーサネットに参加を希望する計算機が、ソフトウェアにて構築された仮想的なネットワークインタフェース(以後、「仮想ネットワークインタフェース」と称する)を介して、仮想ハブに接続する(以後、仮想ネットワークインタフェースを動作させる計算機を「クライアント」と称する)。
このような仮想イーサネットの一般的な構成を図15に示す。
例えばTCP/IPネットワークであるアンダーレイネットワーク150は、オーバレイネットワークである仮想イーサネット154を構築する基盤となる物理ネットワークである。アンダーレイネットワーク150は、ファイアウォール156、ルータ157、リンク層の通信装置(イーサネットならばハブやスイッチングハブ)により構成される。ルータ157は、TCP/IPネットワークを構成するネットワーク層の装置であり、一般的なものであることからここではその詳細説明を割愛する。また、ファイアウォール156は、内部ネットワーク160と外部ネットワーク161との境界に設置されるセキュリティ装置であり、一般的なものであることからここではその詳細な説明を割愛する。
クライアント153は、仮想イーサネット154を構成する仮想ハブ151に接続する計算機であり、仮想ネットワークインタフェース152を介して仮想ハブ151に接続する。仮想ハブ151は、このように複数のクライアント153とのコネクションを保持する中継ノードとして機能する。サーバ155は、このような仮想ハブ151を配置するネットワーク仮想化装置である。本明細書では、このようなネットワーク仮想化装置であるサーバ155と、ネットワーク仮想化装置によって制御される端末であるクライアント153とを合わせてネットワーク仮想化システムと称する。仮想イーサネット154は、一つ又は複数の仮想ハブ151に、それぞれ仮想ネットワークインタフェース152を持った複数のクライアント153が接続することにより構築される。
電子情報通信学会誌、2004年9月号、「P2P総論I ブローカーレスモデルの挑戦」 電子情報通信学会誌、2004年10月号、「P2P総論II P2Pテクノロジ」 電子情報通信学会誌、2004年12月号、「P2P総論III P2Pサービスとビジネス」 電子情報通信学会誌、2005年1月号、「P2P総論IV 最新動向と将来展望」 株式会社アスキー、UNIX(登録商標) MAGAZINE、2005年9月号、「P2P技術の基礎知識[1]」 株式会社アスキー、UNIX MAGAZINE、2005年10月号、「P2P技術の基礎知識[2]」 株式会社アスキー、UNIX MAGAZINE、2005年11月号、「P2P技術の基礎知識[3]」 株式会社アスキー、公式SoftEther活用ガイド http://www.softether.com、ソフトイーサ株式会社ホームページ
このような従来の仮想イーサネット154では、仮想イーサネット154に属するクライアント153間のトラフィックは全て仮想ハブ151、すなわちサーバ155を経由すること、および、仮想イーサネット154に属するクライアント153同士、或いはクライアント153とサーバ155との位置関係はアンダーレイネットワーク150のトポロジを考慮したものではない。従って、
1.仮想ハブ151のスケーラビリティ確保が困難である。
2.アンダーレイネットワーク150への負荷が増大し、設備投資コストが増大する。
3.複数の仮想ハブ151の設置や、複数の仮想ハブ151間でのクライアント153の繋ぎ替えなどの管理コストが増大する。
という問題が生じる。
本発明はこのような事情に鑑みてなされたものであり、仮想イーサネットのような仮想ネットワークを構成するクライアント同士が、それらの属するアンダーレイネットワーク上の位置関係やクライアント間のトラフィック量を考慮した上で、中継ノード、すなわちサーバを経由すること無くクライアント間で直接通信し、必要な場合には、更にそれに加えて中継ノードを経由した通信も併用することにより、仮想ネットワーク上のトラフィックの最適化を図ることが可能なネットワーク仮想化システム及びネットワーク仮想化プログラムを提供することを目的とする。
上記の目的を達成するために、本発明では、以下のような手段を講じる。
すなわち、請求項1の発明は、予め構築された複数の物理ネットワーク上の何れかに接続された複数の端末と、複数の物理ネットワーク上に、ソフトウェアによって仮想的なネットワークを構築するネットワーク仮想化装置とを備えている。そして、ネットワーク仮想化装置は更に、構築された仮想ネットワークにおける各端末間の通信を中継する中継ノードを備えている。また、中継ノードは、予め定めた接続基準を考慮して、中継ノードによって通信が中継される端末のうちの何れか一対の端末について、中継ノードを中継することなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、この一対の端末に対して、中継ノードを中継することなく、互いに直接通信するように指示する第1の指示手段を備えている。
請求項2の発明は、請求項1の発明のネットワーク仮想化システムにおいて、各端末は、中継ノードによって通信が中継されている場合、接続基準を考慮して、他の特定の端末との通信を、中継ノードを中継することなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、特定の端末との通信を、中継ノードを中継することなく、直接行うように移行する第1の移行手段を備えている。
請求項3の発明は、請求項1又は請求項2の発明のネットワーク仮想化システムにおいて、接続基準とは、一対の端末間の中継ノードを中継したトラフィックの量、一対の端末の物理ネットワーク上のトポロジにおける局在性、トラフィックのプロトコル種別、及び中継ノードの負荷状況のうちの少なくとも何れかである。
請求項4の発明は、請求項1乃至請求項3のうち何れか1項の発明のネットワーク仮想化システムにおいて、各端末は、中継ノードと通信可能となるように接続されるネットワークインタフェースと、第1の指示手段による指示に従って、直接通信する相手である端末とピアツーピアによるリンクを確立するリンク確立手段とを備えている。
請求項5の発明は、請求項1乃至4のうち何れか1項の発明のネットワーク仮想化システムにおいて、中継ノードは、予め定めた切断基準を考慮して、互いに直接通信している一対の端末の直接通信を切断するか否かを判定し、切断すると判定した場合には、一対の端末に対して、直接通信を切断し、中継ノードを中継した通信に移行するように指示する第2の指示手段を備えている。
請求項6の発明は、請求項1乃至5のうち何れか1項の発明のネットワーク仮想化システムにおいて、各端末は、他の特定の端末と直接通信している場合、切断基準を考慮して、直接通信を切断するか否かを判定し、切断すると判定した場合には、特定の端末との直接通信を切断し、中継ノードを中継した通信に移行する第2の移行手段を備えている。
請求項7の発明は、請求項5又は請求項6の発明のネットワーク仮想化システムにおいて、切断基準とは、一対の端末間の直接通信によるトラフィックの量、一対の端末の物理ネットワーク上のトポロジにおける局在性、トラフィックのプロトコル種別、及び中継ノードの負荷状況のうちの少なくとも何れかである。
請求項8の発明は、請求項1の発明のネットワーク仮想化システムに適用されるプログラムである。
請求項9の発明は、請求項3の発明のネットワーク仮想化システムに適用されるプログラムである。
請求項10の発明は、請求項5の発明のネットワーク仮想化システムに適用されるプログラムである。
請求項11の発明は、請求項7の発明のネットワーク仮想化システムに適用されるプログラムである。
本発明によれば、仮想ネットワークを構成するクライアント同士が、それらの属するアンダーレイネットワーク上の位置関係やクライアント間のトラフィック量を考慮した上で、中継ノードを経由すること無くクライアント間で直接通信し、必要な場合には、更にそれに加えて中継ノードを経由した通信も併用することにより、仮想ネットワーク上のトラフィックの最適化を図ることができるネットワーク仮想化システム及びネットワーク仮想化プログラムを実現することが可能となる。
以下に、本発明を実施するための最良の形態について図面を参照しながら説明する。
なお、以下の各実施の形態の説明に用いる図中の符号は、図15と同一部分については同一符号を付して示すことにする。
(第1の実施の形態)
図1は、本実施の形態に係るネットワーク仮想化システムを構成するサーバに備えられる仮想ハブ10の構成例を示す機能ブロック図である。
図2は、本実施の形態に係るネットワーク仮想化システムを構成するクライアント20の構成例を示す機能ブロック図である。
図3は、ピアツーピアリンクの生成処理、削除処理、及びイーサネットフレーム送信処理の流れを示すフロー図である。
図4は、本実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(初期状態)である。
図5は、本実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(トラフィック発生時)である。
図6は、本実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(ピアツーピア通信状態)である。
本実施の形態は、図6に示すように、各クライアント20(#1〜#6)が、サーバ30に備えられた仮想ハブ10への接続リンク(仮想ネットワークd1〜d6)とは別に、特定のクライアント20間に別途通信用リンク(以後、「ピアツーピアリンク」と称する)S1〜S5を生成、保持することにより、特定クライアント20間での直接通信(以後、「ピアツーピア通信」と称する)を実現する。
このような本実施の形態について、以下に詳述する。
図1に示すように、仮想ハブ10は、イーサネットスイッチングハブ11と、転送テーブル12と、接続リンク制御部13と、アンダーレイネットワークプロトコル群14と、物理ネットワークインタフェース15と、ピアツーピアリンク制御部16とを備えている。
イーサネットスイッチングハブ11は、いわゆる、一般的なイーサネットスイッチングハブと同様の処理を行なう。したがって、ここでは、更なる詳細説明を省略する。
転送テーブル12は、イーサネットフレームの宛先MACアドレスと、出力先ポートとのマッピングを保持するテーブルである。これは、イーサネットスイッチングハブ11によるイーサネットフレーム転送処理に一般的に用いられるものである。したがって、ここでは更なる詳細説明を割愛する。
接続リンク制御部13は、クライアント20、或いは他仮想ハブ10とのアンダーレイネットワーク40での接続(リンク)を保持、制御する部分であり、イーサネットスイッチングハブ11から受け取ったイーサネットフレームを適切なアンダーレイネットワーク40のリンクへ送出する。また、アンダーレイネットワーク40から受信したデータをイーサネットスイッチングハブ11へ渡す。
アンダーレイネットワークプロトコル群14は、一般的には、TCP/IP、及びHTTPのように、それらを使用する上位プロトコルである。
物理ネットワークインタフェース15は、実際の通信に使用される物理的なネットワークインタフェースである。
ピアツーピアリンク制御部16は、イーサネットスイッチングハブ11での、接続リンク間(クライアント20間)のトラフィック量、トラフィックのプロトコル、クライアント20のアンダーレイネットワーク40での位置関係情報等を元に、クライアント20へピアツーピアリンク生成、削除の指示を行なう。
具体的には、クライアント20の接続リンク制御部24(図2参照)に対して、ピアツーピアリンクの生成/ピアツーピア通信への移行、或いはピアツーピアリンクの削除/仮想ハブ10経由での通信への移行を指示する。これら移行を判断するために、イーサネットスイッチングハブ11から、クライアント20間のトラフィック量や、プロトコル種別の情報を取得し、接続リンク制御部13から、クライアント20のアンダーレイネットワーク40でのアドレス(IPアドレス、位置情報)の情報、あるいは収容しているクライアント20の数の情報を取得し、図示しないOSから、CPU使用率、メモリ使用率の情報を取得する。
図2に示すように、クライアント20は、イーサネットフレーム送受信部23と接続リンク制御部24と送信先管理テーブル25とを含む仮想ネットワークインタフェース22に加えて、アプリケーション/上位プロトコル群21と、アンダーレイネットワークプロトコル群26と、物理ネットワークインタフェース27とを備えている。
アプリケーション/上位プロトコル群21は、仮想ネットワークインタフェース22を使用するユーザアプリケーション、及び上位プロトコル(例えばTCP/IP、HTTPなど)である。
イーサネットフレーム送受信部23は、アプリケーション/上位プロトコル群21からのデータをイーサネットフレームに格納し、接続リンク制御部24へ送出する。また、接続リンク制御部24から受け取ったデータからイーサネットヘッダを除去し、アプリケーション/上位プロトコル群21に渡す。
接続リンク制御部24は、仮想ハブ10、又は他のクライアント20とのアンダーレイネットワーク40での接続(リンク)を保持、制御する部分であり、イーサネットフレームを適切なアンダーレイネットワーク40のリンクへ送出する。また、アンダーレイネットワーク40から受信したデータをイーサネットフレーム送受信部23へ渡す。
送信先管理テーブル25は、ピアツーピアリンクと、そのリンクのピアのMACアドレスとのマッピングを保持するテーブルである。後述する図9乃至図14に示す通り、送信先管理テーブル25に登録されているピア宛のイーサネットフレームは該当ピアツーピアリンクへ、それ以外の宛先のイーサネットフレーム、ブロードキャストフレーム、マルチキャストフレームは仮想ハブ10とのリンクへ出力される。
アンダーレイネットワークプロトコル群26は、一般的には、TCP/IP、及びそれらを使用する上位プロトコル(例えばHTTP)である。
物理ネットワークインタフェース27は、実際の通信に使用される物理的なネットワークインタフェースである。
次に、図3(a)、図3(b)、及び図3(c)と、図4乃至図6を用いて、ピアツーピアリンクの生成、削除などの処理フローを説明する。
図4乃至図6は、本実施の形態に係るネットワーク仮想化システムによって構成された仮想ネットワークである仮想イーサネットの一例を示す図である。本実施の形態に係るネットワーク仮想化システムは、図1に示すような構成の仮想ハブ10を持つサーバ30と、図2に示すような構成のクライアント20とを備えてなる。
このようなネットワーク仮想化システムによって構成された仮想イーサネットは、初期状態では、図4に示すように、クライアント20(#1〜#6)は仮想ハブ10に接続し、全てのクライアント20(#1〜#6)は仮想ハブ10を経由して、イーサネットフレームの送受信を行なっている。なお、アンダーレイネットワーク40のセグメント(通常、IPネットワークのセグメント)40(#1〜#6)間は通常、ルータ(図4乃至図6では図示していない)により接続されている。仮想ハブ10はセグメント40(#3)に、クライアント20(#1〜#3)はセグメント40(#1)に、クライアント20(#4〜#6)はセグメント40(#5)に、それぞれ属している。
ここで、例えば、クライアント20(#3)とクライアント20(#4)とは、仮想イーサネットの観点からは同一セグメント上に属してはいるが、アンダーレイネットワーク40の観点からは、別セグメントに属し、かつ、遠隔に位置していることになる。
ここで、図5に示すように、例えばクライアント20(#4)とクライアント20(#5)のように、特定のクライアント20間のトラフィック量が増大したり、例えばクライアント20(#3)とクライアント20(#6)のようにアンダーレイネットワーク的に遠隔に位置するクライアント20間で通信が発生したとする。
前者の場合、仮想ハブ10のピアツーピアリンク制御部16は、クライアント20(#4)とクライアント20(#5)と間のトラフィック量が、あらかじめ定義されている閾値を超えたと判断した場合、クライアント20(#4)とクライアント20(#5)に、それらの間にピアツーピアリンクを生成し、ピアツーピア通信に移行するよう、指示を出す。
上記指示を受け取ったクライアント20(#4)とクライアント20(#5)の接続リンク制御部24は、図3(a)の手順a1に示すように、アンダーレイネットワーク40の何らかの手段(例えば、TCPコネクションやSSLセッションなど)を使用して、通信路(ピアツーピアリンク)を生成し(手順a2)、クライアント20(#4)はクライアント20(#5)の仮想イーサネットのMACアドレスを、クライアント20(#5)はクライアント20(#4)の同MACアドレスを送信先管理テーブル25に登録する(手順a3)。
以後、クライアント20(#4)の接続リンク制御部24は、クライアント20(#5)向けのイーサネットフレーム(宛先MACアドレスとして、クライアント20(#5)のMACアドレスを持つもの)は前記ピアツーピアリンクに送出し(図3(c)の手順c1、c2、c3[NO]、c4[Yes]、c5)、それ以外の宛先MACアドレス(ユニキャスト)を持つイーサネットフレームは仮想ハブ10とのリンクに送出する(手順c3[No]、手順c4[No]、手順c6)。また、ブロードキャストフレーム、マルチキャストフレームも仮想ハブとのリンクに送出する(手順c3[Yes]、c6)。
同様に、クライアント20(#5)は、クライアント20(#4)向けのイーサネットフレーム(宛先MACアドレスとして、クライアント20(#4)のMACアドレスを持つもの)は前記ピアツーピアリンクに送出し、それ以外の宛先MACアドレスを持つイーサネットフレーム、及びブロードキャストフレーム、マルチキャストフレームは仮想ハブ10とのリンクに送出する。
結果として、クライアント20(#4)とクライアント20(#5)との間のトラフィックは仮想ハブ10を経由することがなくなり、仮想ハブ10への負荷、及びアンダーレイネットワーク40(#4),40(#5)の負荷が軽減される。
図5に示すように、同様の処理がクライアント20(#3)とクライアント20(#6)との間に関しても行なわれると、クライアント20(#3)、クライアント20(#6)は、仮想ハブ10を経由していたときはアンダーレイネットワーク40(#2),40(#3),40(#4)を使用していたものが、図6に示すように、アンダーレイネットワーク40(#6)のみを通過するピアツーピアリンクS5を使用してピアツーピア通信することになり、結果的に、仮想ハブ10とアンダーレイネットワーク40(#2),40(#3),40(#4)との負荷が軽減される。
さらに、仮想ハブ10のピアツーピアリンク制御部16は、クライアント20(#1)からクライアント20(#3)がアンダーレイネットワーク40(#1)のトポロジ的に近隣に位置すると判断すると、これらクライアント20(#1,#2,#3)に対してもピアツーピア通信に移行するよう指示する。その結果、クライアント20(#1)からクライアント20(#3)の間にはピアツーピアリンクS1〜S3が生成され、これらクライアント20(#1,#2,#3)間の通信はアンダーレイネットワーク40(#1)に局所化され、他のアンダーレイネットワーク40(#2〜#6)や仮想ハブ10への負荷軽減になる。
あるクライアント20群がアンダーレイネットワーク40のトポロジ的に近隣に位置するか否かの判断基準としては、以下のようなものが考えられる。
・クライアント20のアンダーレイネットワーク40のアドレス。
・クライアント20へのラウンドトリップタイム。
・クライアント20へのアンダーレイネットワーク40でのホップ数。
・クライアント20へのアンダーレイネットワーク40の経路制御上のコスト。
最終的に、上記処理により各クライアント20間のピアツーピア通信が確立された状態の一例を図6に示す。実線S1〜S5がピアツーピア通信リンクを示し、破線d1〜d6が仮想ハブ10経由の通信リンクを示す。
なお、上記では、仮想ハブ10の主導によるピアツーピアリンク生成、ピアツーピア通信への移行を説明したが、各クライアント20の接続リンク制御部24が独自の判断により、特定のクライアント20とのピアツーピアリンク生成、ピアツーピア通信への移行を実施することも可能である。この場合、該当処理を実施したクライアント20は、その後の仮想ハブ10による処理(例えば、ピアツーピアリンクの削除など)を可能とするため、自身を収容する仮想ハブ10に、特定のクライアント20との間にピアツーピアリンクを生成し、ピアツーピア通信を開始したことを通知する必要がある。
なお、クライアント20が独自にピアツーピアリンクを生成する判断としては、上記仮想ハブ10の判断基準と同様のものが考えられる。一方、特定のクライアント20間のトラフィックが、予め定義した閾値を下回った場合などに、仮想ハブ10が主導で、或いはクライアント20が自ら、特定クライアント20とのピアツーピアリンクの削除、仮想ハブ10経由での通信への移行(元の状態に戻る)を実施することも可能である。この場合、クライアント20側の処理は、図3(b)に示す手順b1から手順b3に示すように、仮想ハブ10からの指示受信、或いは自身の削除条件が満たされたことをトリガとして、ピアツーピアリンクの削除、送信先管理テーブル25からの該当クライアント20のMACアドレスの削除を行なう。仮想ハブ10が主導で行なう場合、各クライアント20は、自身のトラフィック量の情報などを定期的に仮想ハブ10に通知しておく必要がある。
上述したように、本発明の実施の形態に係るネットワーク仮想化システムにおいては、上記のような作用により、特定の仮想ハブ10へのトラフィックの集中や、高負荷を避けることができる。以上により、仮想ハブ10や、仮想ネットワーク全体のスケーラビリティを確保することが可能となる。また、トラフィックが特定の仮想ハブ10を経由しなくなることにより、アンダーレイネットワーク40への負荷を軽減することも可能となり、もってアンダーレイネットワーク40の設備投資を抑制することが可能となる。更に、クライアント20間で直接通信を行なうことにより、クライアント20間の通信スループット、応答時間などを改善することも可能となる。
(第2の実施の形態)
本実施の形態は、第1の実施の形態におけるクライアント20上の仮想ネットワークインタフェース22に、仮想ハブ10と同等の機能を持たせたものである。したがって、ここでは、第1の実施の形態と異なる点について説明する。
本実施の形態では、クライアント20は、図7に示すように、仮想ハブ10へ接続するために使用する仮想ネットワークインタフェース70内に、仮想ハブ10が保持するイーサネットスイッチングハブ11と同様の機能を持つイーサネットスイッチングハブ76を備えることにより、特定クライアント20間での直接通信を実現するものである。
図7にて、イーサネットスイッチングハブ76は、一般的な、いわゆるイーサネットスイッチングハブ11と同様に、宛先MACアドレスに基づいたイーサネットフレームの転送処理を行なう。ここで、第1の実施の形態と大きく異なる部分としては、イーサネットスイッチングハブ76からは、イーサネットフレーム送受信部73、仮想ハブ10、他クライアント20全てが、「同等の接続先」として認識されることである。
つまり、イーサネットフレーム送受信部73から送出されるイーサネットフレームは、その宛先MACアドレスに基づき、イーサネットスイッチングハブ76により仮想ハブ10向けの接続リンクAか、或いは他クライアント20向けの接続リンクBかの何れかに出力される。一方、仮想ハブ10や他クライアント20のように外部から到着した自局(該当クライアント20)宛のイーサネットフレームも、あくまで、その宛先MACアドレスに基づき、イーサネットスイッチングハブ76によりイーサネットフレーム送受信部73との接続リンクCに転送されるにすぎない。
なお、本実施の形態では有用ではないが、クライアント20間の接続状態次第では、あるクライアント20の仮想ネットワークインタフェース70のイーサネットスイッチングハブ76の機能により、そのクライアント20以外の他クライアント20間のイーサネットフレームを転送することも機能的には可能である。ここで、第1の実施の形態と同様の構成にて、同様のトラフィック状態となり、仮想ハブ10のピアツーピアリンク制御部16は同様の指示を各クライアント20に出したものとする。
その結果、各クライアント20はそれぞれ、自身の仮想ネットワークインタフェース70が保持するイーサネットスイッチングハブ76に他クライアント20からの接続を収容することとなる。その場合における全体の接続状態を図8に、それぞれのクライアント20(#1〜#6)の仮想ネットワークインタフェース70(#1〜#6)が保持するイーサネットスイッチングハブ76(#1〜#6)の転送テーブル75(#1〜#6)の内容を図9乃至図14に示す。
この場合、図8に示すように、仮想ネットワークインタフェース70間でループが構成されるため、イーサネットフレームの転送のループを回避するために、何らかの方法が必要である。そこで、本実施の形態では、図9乃至図14に示すようなデータ構成を持つ転送テーブル75を設け、転送テーブル75の設定、及び転送ポリシーを工夫することにより、転送ループを回避している。
図9はクライアント20(#1)が、図10はクライアント20(#2)が、図11はクライアント20(#3)が、図12はクライアント20(#4)が、図13はクライアント20(#5)が、図14はクライアント20(#6)がそれぞれ保持するイーサネットスイッチングハブの転送テーブル75の一例を示すデータ構成図である。
つまり、転送テーブル75には、宛先MACアドレス75b及び送信先接続リンク75cに加えて、受信元接続リンク75aも設定、或いは学習可能なようにしておく。そして、転送すべきイーサネットフレームの宛先MACアドレス75bが転送テーブル75のあるエントリの宛先MACアドレス75bのアドレスフィールドにヒットし、かつそのイーサネットフレームを受信した接続リンクがそのエントリの受信元接続リンク75aのフィールドに記述されているものに合致した場合のみ、そのイーサネットフレームをそのエントリの送信先接続リンク75cに出力し、そうでない場合はそのイーサネットフレームを破棄する、という方法をとる。
一方、別の手段として、仮想ハブ10及び、各クライアント20の仮想ネットワークインタフェース70内のイーサネットスイッチングハブ76間でスパンニングツリープロトコルを動作させることも有効なループ回避手段である。
上述したように、本発明の実施の形態に係るネットワーク仮想化システムのように、第1の実施の形態におけるクライアント20上の仮想ネットワークインタフェース22に、仮想ハブ10と同様の機能を持たせることによっても、第1の実施の形態と同様の作用効果を奏することが可能となる。
なお、上述した第1及び第2の各実施の形態では、仮想ハブ10を経由した通信から特定のクライアント20間のピアツーピア通信への移行条件として、或いは特定のクライアント20間のピアツーピア通信から仮想ハブ10を経由した通信への移行条件として、特定のクライアント20間のトラフィック量やアンダーレイネットワーク40上での各クライアント20の位置関係を考慮した例について説明した。しかしながら、移行条件は、これらに限定されるものではなく、それ以外にも、例えば、以下に説明するように、1)仮想ハブの負荷状況、2)クライアント間の通信のプロトコル種別、3)仮想ハブの障害が考えられる。
1)仮想ハブの負荷状況
仮想ハブ10は、自身の負荷があらかじめ定義された閾値を上回った場合、自身が収容しているクライアント20群から、何らかの条件に基づいて特定のクライアント20のペアを選択し、それらにピアツーピア通信への移行を指示する。
逆に、自身の負荷があらかじめ定義された閾値を下回った場合、仮想ハブ10は、自身が収容しているクライアント20群から、何らかの条件に基づいて特定のクライアント20のペアを選択し、それらに仮想ハブ10を経由した通信への移行を指示する。仮想ハブ10の負荷としては、限定される訳ではないが、例えば総トラフィック量、CPU使用率、メモリ使用率、収容クライアント数などが考えられる。
2)クライアント間の通信のプロトコル種別
仮想ハブ10は、予め定義されたプロトコルの通信が特定のクライアント20の間で開始された場合、あるいは一定時間継続された場合など、それらクライアント20へピアツーピア通信への移行を指示する。逆に、予め定義されたプロトコルの通信が特定のクライアント20との間で終了した場合、あるいは一定時間途絶えた場合など、それらクライアント20へ仮想ハブ10を経由した通信への移行を指示する。この場合、クライアント20は、自身のトラフィック内容などの情報を定期的に仮想ハブ10に通知する必要がある。あるいはクライアント20が独自に、予め定義されたプロトコルに関して、同様の処理を行なうこともできる。
3)仮想ハブの障害
仮想ハブ10は、自身に何らかの障害が発生し自ら処理を停止する場合、それらクライアント20へピアツーピア通信への移行を指示する。逆に、仮想ハブ10は、障害から復帰した場合、障害前に収容していたクライアント20に対して、仮想ハブ10を経由した通信への移行を指示する。なお、クライアント20は、キープアライブ処理(ハートビート処理)など、何らかの手段で自らを収容する仮想ハブ10の障害を検出した場合、自らピアツーピア通信への移行を行なうことができ、逆に、自らを収容していた仮想ハブ10の障害からの復旧を検出した場合、仮想ハブ10を経由した通信への移行を行なうこともできる。
以上、本発明を実施するための最良の形態について、添付図面を参照しながら説明したが、本発明はかかる構成に限定されない。特許請求の範囲の発明された技術的思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の技術的範囲に属するものと了解される。
(応用技術分野)
本発明は、仮想ネットワークだけでなく、あるノードにトラフィックが集中する仮想ネットワークを構築する技術、オーバレイネットワークを構築する技術を含む広く範囲への適用が可能である。
第1の実施の形態に係るネットワーク仮想化システムを構成するサーバに備えられる仮想ハブの構成例を示す機能ブロック図。 第1の実施の形態に係るネットワーク仮想化システムを構成するクライアントの構成例を示す機能ブロック図。 ピアツーピアリンクの生成処理の流れを示すフロー図。 ピアツーピアリンクの削除処理の流れを示すフロー図。 イーサネットフレーム送信処理の流れを示すフロー図。 第1の実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(初期状態)。 第1の実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(トラフィック発生時)。 第1の実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図(ピアツーピア通信状態)。 第2の実施の形態に係るネットワーク仮想化システムを構成するクライアントの構成例を示す機能ブロック図。 第2の実施の形態に係るネットワーク仮想化システムによって構成された仮想イーサネットの一例を示すネットワーク構成図。 クライアント20(#1)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 クライアント20(#2)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 クライアント20(#3)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 クライアント20(#4)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 クライアント20(#5)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 クライアント20(#6)が保持するイーサネットスイッチングハブの転送テーブルの一例を示すデータ構成図。 仮想イーサネットの一般的な構成例を示す図。
符号の説明
A,B,C…接続リンク、d1〜d6…仮想ネットワーク、S1〜S5…ピアツーピアリンク、10…仮想ハブ、11…イーサネットスイッチングハブ、12…転送テーブル、13…接続リンク制御部、14…アンダーレイネットワークプロトコル群、15…物理ネットワークインタフェース、16…ピアツーピアリンク制御部、20…クライアント、21…アプリケーション/上位プロトコル群、22…仮想ネットワークインタフェース、23…イーサネットフレーム送受信部、24…接続リンク制御部、25…送信先管理テーブル、26…アンダーレイネットワークプロトコル群、27…物理ネットワークインタフェース、30…サーバ、40…アンダーレイネットワーク、70…仮想ネットワークインタフェース、73…イーサネットフレーム送受信部、75…転送テーブル、76…イーサネットスイッチングハブ、150…アンダーレイネットワーク、151…仮想ハブ、152…仮想ネットワークインタフェース、153…クライアント、154…仮想イーサネット、155…サーバ、155…ネットワーク仮想化装置、156…ファイアウォール、157…ルータ、160…内部ネットワーク、161…外部ネットワーク

Claims (11)

  1. 予め構築された複数の物理ネットワーク上の何れかに接続された複数の端末と、
    前記複数の物理ネットワーク上に、ソフトウェアによって仮想的なネットワークを構築するネットワーク仮想化装置とを備え、
    前記ネットワーク仮想化装置は更に、前記構築された仮想ネットワークにおける前記各端末間の通信を中継する中継ノードを備え、
    前記中継ノードは、予め定めた接続基準を考慮して、前記中継ノードによって通信が中継される端末のうちの何れか一対の端末について、前記中継ノードを中継することなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、この一対の端末に対して、前記中継ノードを中継することなく、互いに直接通信するように指示する第1の指示手段を備えたネットワーク仮想化システム。
  2. 請求項1に記載のネットワーク仮想化システムにおいて、
    前記各端末は、前記中継ノードによって通信が中継されている場合、前記接続基準を考慮して、他の特定の端末との通信を、前記中継ノードを中継することなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、前記特定の端末との通信を、前記中継ノードを中継することなく、直接行うように移行する第1の移行手段を備えたネットワーク仮想化システム。
  3. 請求項1又は請求項2に記載のネットワーク仮想化システムにおいて、
    前記接続基準とは、一対の端末間の前記中継ノードを中継したトラフィックの量、前記一対の端末の前記物理ネットワーク上のトポロジにおける局在性、前記トラフィックのプロトコル種別、及び前記中継ノードの負荷状況のうちの少なくとも何れかであるネットワーク仮想化システム。
  4. 請求項1乃至3のうち何れか1項に記載のネットワーク仮想化システムにおいて、
    前記各端末は、前記中継ノードと通信可能となるように接続されるネットワークインタフェースと、前記第1の指示手段による指示に従って、直接通信する相手である端末とピアツーピアによるリンクを確立するリンク確立手段とを備えたネットワーク仮想化システム。
  5. 請求項1乃至4のうち何れか1項に記載のネットワーク仮想化システムにおいて、
    前記中継ノードは、予め定めた切断基準を考慮して、互いに直接通信している一対の端末の直接通信を切断するか否かを判定し、切断すると判定した場合には、前記一対の端末に対して、前記直接通信を切断し、前記中継ノードを中継した通信に移行するように指示する第2の指示手段を備えたネットワーク仮想化システム。
  6. 請求項1乃至5のうち何れか1項に記載のネットワーク仮想化システムにおいて、
    前記各端末は、他の特定の端末と前記直接通信している場合、前記切断基準を考慮して、前記直接通信を切断するか否かを判定し、切断すると判定した場合には、前記特定の端末との直接通信を切断し、前記中継ノードを中継した通信に移行する第2の移行手段を備えたネットワーク仮想化システム。
  7. 請求項5又は請求項6に記載のネットワーク仮想化システムにおいて、
    前記切断基準とは、一対の端末間の前記直接通信によるトラフィックの量、前記一対の端末の前記物理ネットワーク上のトポロジにおける局在性、前記トラフィックのプロトコル種別、及び前記中継ノードの負荷状況のうちの少なくとも何れかであるネットワーク仮想化システム。
  8. 予め構築された複数の物理ネットワーク上の何れかに接続された複数の端末と、前記複数の物理ネットワーク上に、プログラムによって仮想的なネットワークを構築するネットワーク仮想化装置とを備えてなるネットワーク仮想化システムに適用される前記プログラムであって、
    前記構築された仮想ネットワークにおける前記各端末間の通信を、前記ネットワーク仮想化装置において中継する機能、
    予め定めた接続基準を考慮して、前記通信が前記ネットワーク仮想化装置において中継される端末のうちの何れか一対の端末について、前記ネットワーク仮想化装置において中継されることなく、互いに直接通信すべきか否かを判定し、直接通信すべきと判定した場合には、この一対の端末に対して、前記ネットワーク仮想化装置において中継されることなく、互いに直接通信させる機能
    をコンピュータに実現させるためのプログラム。
  9. 前記接続基準とは、一対の端末間の前記ネットワーク仮想化装置を中継したトラフィックの量、前記一対の端末の前記物理ネットワーク上のトポロジにおける局在性、前記トラフィックのプロトコル種別、及び前記ネットワーク仮想化装置の負荷状況のうちの少なくとも何れかである請求項8に記載のプログラム。
  10. 予め定めた切断基準を考慮して、互いに直接通信している一対の端末の直接通信を切断するか否かを判定し、切断すると判定した場合には、前記一対の端末に対して、前記直接通信を切断させ、前記ネットワーク仮想化装置を中継した通信に移行させる機能を更にコンピュータに実現させる請求項8又は請求項9に記載のプログラム。
  11. 前記切断基準とは、一対の端末間の前記直接通信によるトラフィックの量、前記一対の端末の前記物理ネットワーク上のトポロジにおける局在性、前記トラフィックのプロトコル種別、及び前記ネットワーク仮想化装置の負荷状況のうちの少なくとも何れかである請求項10に記載のプログラム。
JP2006230906A 2006-08-28 2006-08-28 ネットワーク仮想化システム及びネットワーク仮想化プログラム Pending JP2008054214A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006230906A JP2008054214A (ja) 2006-08-28 2006-08-28 ネットワーク仮想化システム及びネットワーク仮想化プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006230906A JP2008054214A (ja) 2006-08-28 2006-08-28 ネットワーク仮想化システム及びネットワーク仮想化プログラム

Publications (1)

Publication Number Publication Date
JP2008054214A true JP2008054214A (ja) 2008-03-06

Family

ID=39237792

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006230906A Pending JP2008054214A (ja) 2006-08-28 2006-08-28 ネットワーク仮想化システム及びネットワーク仮想化プログラム

Country Status (1)

Country Link
JP (1) JP2008054214A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010038775A1 (ja) * 2008-10-02 2010-04-08 日本電気株式会社 ネットワークノードおよびその負荷分散方法
WO2012037520A1 (en) * 2010-09-17 2012-03-22 Oracle International Corporation System and method for providing ethernet over infiniband virtual hub scalability in a middleware machine environment
US9219718B2 (en) 2011-06-03 2015-12-22 Oracle International Corporation System and method for supporting sub-subnet in an infiniband (IB) network
US9935848B2 (en) 2011-06-03 2018-04-03 Oracle International Corporation System and method for supporting subnet manager (SM) level robust handling of unkown management key in an infiniband (IB) network

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5429179B2 (ja) * 2008-10-02 2014-02-26 日本電気株式会社 ネットワークノードおよびその負荷分散方法
WO2010038775A1 (ja) * 2008-10-02 2010-04-08 日本電気株式会社 ネットワークノードおよびその負荷分散方法
US9614746B2 (en) 2010-09-17 2017-04-04 Oracle International Corporation System and method for providing ethernet over network virtual hub scalability in a middleware machine environment
WO2012037520A1 (en) * 2010-09-17 2012-03-22 Oracle International Corporation System and method for providing ethernet over infiniband virtual hub scalability in a middleware machine environment
CN103125102A (zh) * 2010-09-17 2013-05-29 甲骨文国际公司 用于在中间件机器环境中提供基于无限带宽的以太网虚拟集线器可伸缩性的系统和方法
US10630570B2 (en) 2010-09-17 2020-04-21 Oracle International Corporation System and method for supporting well defined subnet topology in a middleware machine environment
US9906429B2 (en) 2010-09-17 2018-02-27 Oracle International Corporation Performing partial subnet initialization in a middleware machine environment
US9455898B2 (en) 2010-09-17 2016-09-27 Oracle International Corporation System and method for facilitating protection against run-away subnet manager instances in a middleware machine environment
US9270650B2 (en) 2011-06-03 2016-02-23 Oracle International Corporation System and method for providing secure subnet management agent (SMA) in an infiniband (IB) network
US9900293B2 (en) 2011-06-03 2018-02-20 Oracle International Corporation System and method for supporting automatic disabling of degraded links in an infiniband (IB) network
US9240981B2 (en) 2011-06-03 2016-01-19 Oracle International Corporation System and method for authenticating identity of discovered component in an infiniband (IB) network
US9930018B2 (en) 2011-06-03 2018-03-27 Oracle International Corporation System and method for providing source ID spoof protection in an infiniband (IB) network
US9935848B2 (en) 2011-06-03 2018-04-03 Oracle International Corporation System and method for supporting subnet manager (SM) level robust handling of unkown management key in an infiniband (IB) network
US9219718B2 (en) 2011-06-03 2015-12-22 Oracle International Corporation System and method for supporting sub-subnet in an infiniband (IB) network

Similar Documents

Publication Publication Date Title
JP4529144B2 (ja) 仮想lanシステムおよびノード装置
CN102638389B (zh) 一种trill网络的冗余备份方法及系统
US10009267B2 (en) Method and system for controlling an underlying physical network by a software defined network
CN108141376B (zh) 网络节点、通信网络及通信网络中的方法
US8817593B2 (en) Method and apparatus providing failover for a point to point tunnel for wireless local area network split-plane environments
US9071458B2 (en) Dual adjacency between edge devices at a network site
CN102035676B (zh) 基于arp协议交互的链路故障检测与恢复的方法和设备
WO2018054156A1 (zh) 一种vxlan报文的转发方法、设备及系统
JP5488979B2 (ja) コンピュータシステム、コントローラ、スイッチ、及び通信方法
JP4279300B2 (ja) ネットワーク仮想化装置及びネットワーク仮想化プログラム
CA2656660C (en) Client/bridge and method and system for using same
EP2911346B1 (en) Method and network device for establishing virtual cluster
EP2598844B1 (en) State synchronization of serial data link sessions connected across an ip network
US20160134533A1 (en) System and method for layer 3 proxy routing
US8526437B2 (en) Communication system and communication control device
JP2013545151A (ja) サーバ管理装置、サーバ管理方法およびプログラム
US20200322418A1 (en) Secure remote computer network
GB2485026A (en) Routed Split Multi-Link Trunking (RSMLT) resiliency for Wireless Local Area Network (WLAN) split-plane environments
CN112586086A (zh) 多路径接入网
CN108289044B (zh) 数据转发方法、确定静态路由的链路状态方法及网络设备
JP2008054214A (ja) ネットワーク仮想化システム及びネットワーク仮想化プログラム
CN116489075A (zh) 处理电路上执行的方法、网络设备及存储介质
JP4011528B2 (ja) ネットワーク仮想化システム
WO2021098806A1 (zh) 报文传输路径的切换方法、设备和系统
Owada et al. An Implementation of layer 2 overlay mesh network and edge computing platform for IoT

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081015

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090113

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090220

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090324

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20090410