JP4279300B2 - ネットワーク仮想化装置及びネットワーク仮想化プログラム - Google Patents
ネットワーク仮想化装置及びネットワーク仮想化プログラム Download PDFInfo
- Publication number
- JP4279300B2 JP4279300B2 JP2006216107A JP2006216107A JP4279300B2 JP 4279300 B2 JP4279300 B2 JP 4279300B2 JP 2006216107 A JP2006216107 A JP 2006216107A JP 2006216107 A JP2006216107 A JP 2006216107A JP 4279300 B2 JP4279300 B2 JP 4279300B2
- Authority
- JP
- Japan
- Prior art keywords
- network
- virtual
- connection
- data exchange
- virtualization apparatus
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Description
1)仮想ハブ1907の配置場所が固定である(管理者により移動は可能)。
2)仮想ハブ1907の配置個数が固定である(管理者により追加・削除は可能)
3)仮想ネットワーク1901に属するホスト1906間のトラフィックは全て固定の仮想ハブ1907を経由する(管理者又は利用者により変更可能)
4)仮想ネットワーク1901に属するホスト1906と仮想ハブ1907との位置関係はアンダーレイネットワーク1900のトポロジを考慮していない。
電子情報通信学会誌、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、ソフトイーサ株式会社ホームページ
図1は、本発明の実施の形態に係るネットワーク仮想化装置によって構築される仮想ネットワークの一般的な構成を示す概念図である。なお、以後の説明では、物理ネットワーク(アンダーレイネットワーク)11はTCP/IPネットワークであることを前提として説明する。現在、企業や通信事業者では、ほぼこのTCP/IPネットワークが使用されているといっても差し支えない。TCP/IPネットワークは、後述するルータ12、ファイアウォール13、リンク層の通信装置(イーサネットならばイーサネットスイッチングハブ14等)により構成される。ルータ12は、TCP/IPネットワークを構成するネットワーク層の装置であり、一般的なものであることから、ここではその詳細な説明を割愛する。また、ファイアウォール13は、企業ネットワーク等の内部ネットワーク15と、インターネット等の外部ネットワーク16との境界に設置されるセキュリティ装置であり、一般的なものであることからここではその詳細な説明は割愛する。
ホスト17及びネットワーク仮想化装置21の詳細な機能ブロック図を図2に示す。以下、ホスト17及びネットワーク仮想化装置21に配置される仮想ハブ18の詳細をそれぞれ記す。
ホスト17は、TCP/IPネットワークにて通信を行なうためのネットワークインタフェースである物理ネットワークインタフェース23だけでなく、仮想ハブ18に接続するため(仮想ネットワーク10にて通信を行なうため)のネットワークインタフェースである仮想ネットワークインタフェース19、及びそれを制御するための仮想ネットワークインタフェース制御モジュール24を持つ。
ネットワーク仮想化装置21は、システム制御モジュール201、システム情報テーブル202、及び仮想ハブ18を備えている。以下に、システム制御モジュール201及びシステム情報テーブル202の処理内容、及び、テーブルのデータ構成例を記す。なお、仮想ハブについては、次項にて説明する。
・自装置21、自装置21が収容する仮想ハブ18、及びホスト17に関する情報の収集を行う。すなわち、自装置21に収容する仮想ハブ18の情報は、後述の通り、各仮想ハブ18が収集し、ホスト情報テーブル183に保持する。更にその情報をシステム制御モジュール201が各仮想ハブ18から収集し、集中管理する。
・同一管理ドメイン内の他ネットワーク仮想化装置21aとの情報交換を行う。すなわち、システム情報交換メッセージの交換により、自装置21が収集した情報を他装置21aに通知し、他装置21aが収集した情報を獲得する。
・上記収集した自装置21、並びに同一管理ドメイン内の他装置21aの情報をシステム情報テーブル202にて管理する。
・仮想ハブ18の生成、削除などを行う。
図2に示すように、仮想ハブ18は、複数の仮想イーサネットポート187を有する仮想イーサネットポート制御モジュール186と、仮想イーサネットスイッチモジュール185と、仮想ハブ制御モジュール181と、MACアドレス学習テーブル182と、ホスト情報テーブル183と、ポート間トラフィックテーブル184とを含んでいる。
以下、仮想イーサネットコネクションAの生成(仮想ネットワークインタフェース19による仮想ハブ18への接続)、仮想ハブ18による分割・移動処理のための情報収集、仮想ハブ18の分割・移動処理に関し、順に詳細を述べ、最後に、具体的なネットワーク構成に基づいて、仮想ハブ18の分割・移動処理の例を記す。
仮想イーサネットコネクションAは、ホスト17と仮想ハブ18との間、仮想ハブ18と仮想ハブ18との間で生成、保持されるものであるが、ここでは、前者の場合のみについて述べる。
・ホスト17のユーザが、仮想ネットワークインタフェース制御モジュール24を使用して仮想ハブ18への接続要求を手動で出す場合。
・ホスト17のOS起動時の一連の処理の中で、コンフィグレーションに基づいて仮想ネットワークインタフェース制御モジュール24が呼び出され、接続要求を自動で出す場合。
・ホスト17の仮想ハブ18間の移動処理(繋ぎ替え処理)時、移動元の仮想ハブ18の仮想ハブ制御モジュール181がホスト17へ移動要求を出す場合。
・物理ネットワーク11での仮想ハブ18のIPアドレスである接続先IPアドレス(接続先仮想ハブ18のIPアドレス)。
・認証方法、及び、認証パラメータ(ユーザ名、パスワードなど)
・物理ネットワーク11でのホスト自身のIPアドレス/ネットマスクであるホスト自身のIPアドレス/ネットマスク情報。
・その他、通信路暗号化プロトコルやキープアライブ時間(無通信時の接続切断などに使用)等。
仮想ハブ18の仮想ハブ制御モジュール181、及び仮想イーサネットスイッチモジュール185は、分割や移動処理のための以下に示す各種情報(ラウンドトリップタイム、ホップ数、仮想イーサネットポート間トラフィック)を収集、保存する。また、収集した情報を自身が属するネットワーク仮想化装置21のシステム制御モジュール201に通知する。以下、各種情報について補足する。
仮想ハブ制御モジュール181は、各仮想イーサネットポート187(仮想イーサネットコネクションA)に対して、定期的に、又は分割や移動先の決定時に、ラウンドトリップタイム計測パケットを送出し、規定回数分の平均値(例えば10回分の平均値)をホスト情報テーブル183に保存する。
仮想ハブ制御モジュール181は、各仮想イーサネットポート187(仮想イーサネットコネクションA)のアンダーレイネットワークのIPアドレスに対して、定期的に、又は分割や移動先の決定時に、ホップ数計測パケットを送出し、得られたホップ数(ホスト17−仮想ハブ18間のルータ数)をホスト情報テーブル183に保存する。
仮想ハブ18の仮想イーサネットスイッチモジュール185は、イーサネットフレームのスイッチングの際、該当仮想イーサネットポート187間のトラフィックを計測し、単位時間当たりの値(イーサネットフレーム数、バイト数など)をポート間トラフィックテーブル184に保存する。
仮想ハブ18の分割及び移動処理は、本実施の形態におけるネットワーク仮想化装置21における動作の中でも、最も特徴的な部分である。この処理の一例を図5に示すフローチャートを用いて説明する。
次に、図5に示す処理フロー中の各種判定基準、判定処理の処理詳細について記載する。処理によっては複数基準が存在するが、いずれの基準を使用するか、基準値をどのように設定するかなどは仮想ネットワークを運用するサイトのポリシーにより設定される事項であるので、以下に示す記載に限定されるものではない。
・上記ホスト群が、物理ネットワーク11にて同一ネットワークアドレスを持ち、かつ、そのネットワークアドレスが、自身が属するネットワーク仮想化装置21とは異なる場合。
・上記ホスト群への物理ネットワーク11のIPパケット送信処理にて、次ホップが同一で、かつ、それらホスト17が、自身が属するネットワーク仮想化装置21と物理ネットワーク11の同一LANセグメントに存在しない場合。
・自身が属するネットワーク仮想化装置21と移動対象ホスト間のコスト。
・同一管理ドメイン内の、自身が属するネットワーク仮想化装置21以外のネットワーク仮想化装置21と移動対象ホスト間のコスト。
・ホップ数(アンダーレイネットワークのホップ数)。
・移動対象ホストの物理ネットワーク11上でのトポロジ情報。
・同一管理ドメイン内の、自身が属するネットワーク仮想化装置21以外のネットワーク仮想化装置21の物理ネットワーク11上でのトポロジ情報。
・物理ネットワーク11のフォワーディング情報。
・物理ネットワーク11の経路制御情報。
・移動先ネットワーク仮想化装置21のCPU利用率50%。
・移動先ネットワーク仮想化装置21の仮想ハブ収容数が10。
・移動先ネットワーク仮想化装置21のホスト収容数が100。
・移動先仮想ハブ18のホスト収容数が20。
・移動先仮想ハブ18の単位時間当たりのトラフィックが10MBytes。
・移動先ネットワーク仮想化装置21の仮想ハブ収容数が10。
・移動先ネットワーク仮想化装置21のホスト収容数が100。
・移動先仮想ハブ18のホスト収容数が20。
・移動先仮想ハブ18の単位時間当たりのトラフィックが10MBytes。
物理ネットワーク11、及び仮想ネットワーク10を構成するネットワーク仮想化装置21、仮想ハブ18、ホスト17が、図6のような状態の場合に関し、仮想ハブ18の分割・移動処理の詳細を記す。本例はフロードリブンによる分割・移動処理開始の例である。
アンダーレイネットワーク及び、仮想ネットワーク10を構成するネットワーク仮想化装置21、仮想ハブ18、ホスト17が、図9のような状態の場合に関し、仮想ハブの分割・移動処理の詳細を記す。本例はトポロジドリブンによる分割・移動処理開始の例である。
本実施の形態の特徴的な部分である仮想ハブ18の分割、移動の機能は、仮想イーサネットコネクションA、仮想ネットワークインタフェース19、仮想ハブ18の実装方法に依存しないが、参考のため、これらの機能モジュールの、一般的なUNIXにおけるいくつかの実装方法を以下に述べる。
仮想ネットワークインタフェース1300,1400の実装例として、仮想イーサネットコネクションAの実現方法に着目した、一般的なUNIXにおける実装方法を図13,図14に示す。
図13は、一般的なIPトンネリングの仕組みを利用したものであり、仮想ネットワークインタフェース層1308はOSのカーネル1302の内部に実装される。ユーザプロセス1301内には、例えばシステム制御モジュール201である制御アプリケーションプログラム1303、及びその他のアプリケーションプログラム1304が存在する。仮想ネットワークインタフェース層1308は、上位層であるイーサネット層1307からは単なるネットワークインタフェースとして見えるが、一方、下位層であるIP(アウターIP)層1309からは、TCP/UDP層1305と同様のトランスポート層として見える。本実装方法では、仮想イーサネットコネクションAはホスト17と仮想ハブ18間のIPトンネルとなる。
図14(a)及び図14(b)は、一般的なトンネルインタフェースの仕組みを利用したものであり、仮想ネットワークインタフェースプログラム1403はユーザプロセス1401として実装される。OSのカーネル1402内の通信プロトコルとのデータのやりとりは、トンネルインタフェース1411を介して行なう。
以下に、上記2つの実装例について、それぞれ処理内容を記す。
IPトンネリングで構成されるホスト17と仮想ハブ18間の仮想イーサネットコネクションAを使用し、仮想ネットワーク10のイーサネットフレームの送受信を行なう。
(a)ホスト(以後、送信元ホスト)17上のアプリケーションプログラム1304は、宛先ホストへデータを送信しようとする。
(b)アプリケーションプログラム1304からの送信データを受け取ったTCP/UDP層1305、及びIP(インナーIP)層1306は、仮想イーサネットコネクションA上での宛先ホストのIPアドレスを元に、出力ネットワークインタフェースとして仮想ネットワークインタフェース19を選択し、IPパケットをイーサネット層1307に渡す。
(a)物理ネットワークインタフェース層1311、その上位のイーサネット層1310の処理は一般的なものにより、ここでは、その詳細説明を割愛する。
(b)イーサネット層1310からイーサネットフレームを受け取ったIP(アウターIP)層1309は、IPヘッダのプロトコルフィールドを元に、該当IPパケットが仮想ネットワークインタフェース層1308宛(IP(アウターIP)層1309から見ると、仮想ネットワークインタフェース層1308は単なる一トランスポート層に見える)であると判断し、それを仮想ネットワークインタフェース層1308へ渡す。
(c)IP(アウターIP)層1309からIPパケットを受け取った仮想ネットワークインタフェース層1308は、該当IPパケットからイーサネットフレームを取り出し、それを上位層であるイーサネット層1307へ渡す。
(d)以降、イーサネット層1307以上のプロトコルは、通常の処理を行ない、該当データをアプリケーションプログラムへ渡す。
TCPソケット、UDPソケット、或いはRaw IPソケットなどで構成されるホスト17と仮想ハブ18間の仮想イーサネットコネクションAを使用し、仮想ネットワークのイーサネットフレームの送受信を行なう。
(a)ホスト(以後、送信元ホスト)上のアプリケーションプログラム1407は、宛先ホストへデータを送信しようとする。
(b)アプリケーションプログラム1407からの送信データを受け取ったTCP/UDP層1409、及びIP層1410は、仮想イーサネット上での宛先ホストのIPアドレスを元に、出力ネットワークインタフェースとしてトンネルインタフェースを選択し、IPパケットをトンネルインタフェース1411に渡す。
(c)IP1410層からIPパケットを受け取ったトンネルインタフェース1411は、IPパケットを、readシステムコール経由でユーザランドの仮想ネットワークインタフェースプログラム1403に渡す。
(d)トンネルインタフェース1411からIPパケットを受け取った仮想ネットワークインタフェースプログラム1403は、送信元ホストが接続している仮想ハブのIPアドレスをパラメータとして生成されたソケットに対し、該当IPパケットをイーサネットフレームに格納して書き込む。
(e)以下のプロトコルスタックは、通常の処理を行ない、該当データを仮想ハブ18へ送信する。
(a)物理ネットワークインタフェース層1413から上位のTCP/UDP層1409の処理は一般的なものにより、ここではその詳細説明を割愛する。
(b)仮想ハブ18とのソケットからデータ(イーサネットフレーム)を受け取った仮想ネットワークインタフェースプログラム1403は、イーサネットフレームからIPパケットを取り出し、writeシステムコール経由でトンネルインタフェース1411へ該当IPパケットを渡す。
(c)仮想ネットワークインタフェースプログラム1403からIPパケットを受け取ったトンネルインタフェース1411は、該当IPパケットを上位層であるIP層1410へ渡す。
(d)以降、IP層1410以上のプロトコルは、通常の処理を行ない、該当データをアプリケーションプログラム1407へ渡す。
TCPソケット、UDPソケット、或いはRaw IPソケットなどで構成されるホストと仮想ハブ間の仮想ネットワークコネクションを使用し、仮想ネットワークのイーサネットフレームの送受信を行なう。
(a)ホスト(以後、送信元ホスト)上のアプリケーションプログラム1407は、宛先ホストへデータを送信しようとする。
(b)アプリケーションプログラム1407からの送信データを受け取ったTCP/UDP層1409、IP層1410、及びイーサネット層1412は、仮想イーサネット上での宛先ホストのIPアドレスを元に、出力ネットワークインタフェースとしてトンネルインタフェース1411を選択し、イーサネットフレームをトンネルインタフェース1411に渡す。
(c)イーサネット層1412からイーサネットフレームを受け取ったトンネルインタフェース1411は、イーサネットフレームを、readシステムコール経由でユーザランドの仮想ネットワークインタフェースプログラム1403に渡す。
(d)トンネルインタフェース1411からイーサネットフレームを受け取った仮想ネットワークインタフェースプログラム1403は、送信元ホストが接続している仮想ハブのIPアドレスをパラメータとして生成されたソケットに対し、該当イーサネットフレームを書き込む。
(e)以下のプロトコルスタックは、通常の処理を行ない、該当データを仮想ハブへ送信する。
(a)物理ネットワークインタフェース層1413から上位のTCP/UDP層1409の処理は一般的なものにより、ここではその詳細説明を割愛する。
(b)仮想ハブとのソケットからデータ(イーサネットフレーム)を受け取った仮想ネットワークインタフェースプログラム1403は、writeシステムコール経由でトンネルインタフェース1411へ該当イーサネットフレームを渡す。
(c)仮想ネットワークインタフェースプログラム1403からイーサネットフレームを受け取ったトンネルインタフェース1411は、該当イーサネットフレームを上位層であるイーサネット層1412へ渡す。
(d)以降、イーサネット層1412以上のプロトコルは、通常の処理を行ない、該当データをアプリケーションプログラム1407へ渡す。
以下、仮想ハブの実装例について説明するが、先ず、ネットワーク仮想化装置の概念的なプロトコルスタック1500を図15に示す。この図から以下のようなことが言える。すなわち、仮想ハブ1503〜1505は、様々なプロトコル上で動作させることが可能である。一例として、図15において一番左側に示す仮想ハブ1503では、HTTPなどのより上位層プロトコル1506上で動作し、一番右側の仮想ハブ1505では、IP層1508及びイーサネット層1509のすぐ上位で動作する。後者は、例えば、仮想ネットワークインタフェース未対応ホスト20を収容する場合に使用する。図15に示す仮想ハブのうち、真ん中の仮想ハブ1504では、HTTP/他プロトコル1506、TCP/UDP層1507、及びIP層1508のすぐ上位で動作する。また、これら仮想ハブ1503〜1505より上位に、仮想NAP(NAPT)1502、或いは仮想ルータ1501などの機能を搭載することにより、仮想ネットワークの実現だけでなく、本実施の形態の特徴を持つ様々な仮想ネットワークを構築することが可能となる。
上述の通り、前記3つの実装例において仮想イーサネットポート制御モジュールと仮想イーサネットスイッチモジュールの実装場所、及びそれによるデータの受渡し方法は異なるが、仮想イーサネットポート制御モジュールによるイーサネットフレーム送受信処理、仮想イーサネットスイッチモジュールによるイーサネットフレームのスイッチング処理に関しては一般的なものにより、ここではその詳細説明を省略する。
仮想ハブの自律分割・移動によるトラフィックの局所化、最適化以外に、以下のような応用例が考えられる。
例えば、新規に仮想ネットワークを作成する場合、ネットワーク管理者は、単に、あるネットワーク仮想化装置21上に仮想ハブ18を1つ作成し、その情報であるIPアドレスなどを、その仮想イーサネットに参加を希望するホスト17に通知するだけでよい。あとは、上記仮想ハブ18が、ホスト17間のトラフィックや物理ネットワーク11でのトポロジを考慮して、自律的に分割、移動することで、最適なネットワーク構成を構築する。
例えば、IDS(Intrusion Detection System)やウィルスチェックプログラムなどのセキュリティシステムと連携することにより、トラフィック量、トラフィック内容に基づき、特定のホストを物理ネットワーク11上の特定のエリアに局所化することで、セキュリティの脅威を最小限に押えることが可能である。
Claims (10)
- 予め構築され、それぞれ一つ以上の端末が接続された複数の物理ネットワーク上に、ソフトウェアによって仮想的にネットワークを構築するネットワーク仮想化装置であって、
前記構築された仮想ネットワークに対する前記各端末の接続を管理するデータ交換ノードを備え、前記データ交換ノードは更に、
前記各端末それぞれに対して予め割り当てられ、前記物理ネットワーク上において前記各端末をそれぞれ特定するための物理ネットワークアドレスが指定されると、前記指定された物理ネットワークアドレスによって特定された端末との前記物理ネットワークを介したコネクションを確立し、保持する手段と、
前記コネクションと、前記仮想ネットワーク上において前記各端末をそれぞれ特定するための仮想ネットワークアドレスとのマッピング情報を記憶する手段と、
他ネットワーク仮想化装置に含まれる他データ交換ノードとの前記物理ネットワークを介したコネクションを確立し、保持する手段と、
前記仮想ネットワークアドレスが指定されると、前記マッピング情報に基づいて、前記指定された仮想ネットワークアドレスにマップされたコネクションを特定し、この特定されたコネクションによって接続された端末と、前記仮想ネットワークを介して通信する手段と、
予め定めた解除基準を超えた場合には、保持している前記物理ネットワークを介したコネクションのうちの何れかを解除し、前記解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させる手段と
を備えたネットワーク仮想化装置。 - 前記予め定めた解除基準を超えた場合とは、
前記保持している物理ネットワークを介したコネクションのうち、単位時間当たりのトラフィック量が、予め定めた量を超えた場合、
同一の物理ネットワークに属する端末の数が、予め定めた数を超えた場合、
前記データ交換ノードの負荷が、予め定めた基準値を超えた場合
のうちの何れかの場合である請求項1に記載のネットワーク仮想化装置。 - 前記データ交換ノードは更に、
前記他ネットワーク仮想化装置が複数存在する場合、前記解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させる手段は更に、前記複数存在する他ネットワーク仮想化装置のうち、前記保持させる他データ交換ノードを含む他ネットワーク仮想化装置を、予め定めた選択基準に基づいて選択する手段を備え、
前記予め定めた選択基準とは、
前記他データ交換ノードが、前記解除されたコネクションを保持した場合、前記解除されたコネクションによって接続された端末との間のデータ転送コストが最小になるようなデータ交換ノードを含むネットワーク仮想化装置を選択するか、又は、前記解除されたコネクションによって接続された端末との前記物理ネットワークにおける距離が最小になるようなネットワーク仮想化装置を選択する
請求項1又は請求項2に記載のネットワーク仮想化装置。 - 前記データ交換ノードは更に、
前記解除されたコネクションが、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持された後、前記解除されたコネクション以外のコネクションの保持を継続するか、又は前記解除されたコネクション以外のコネクションを全て解除し、これら解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させるか否かを、予め定めた判定基準に基づいて判定する手段を備え、
前記判定基準は、
前記解除されたコネクションの解除される前におけるトラフィック量の、前記データ交換ノードによって保持されていた仮想ネットワークを介した全てのコネクションによる合計トラフィック量に対する割合が、予め定めた値を超えた場合に全て解除し、超えない場合に継続する第1の判定基準、
前記解除されたコネクションに接続された端末数の、解除される前に前記データ交換ノードによって保持されていた仮想ネットワークに接続されていた合計端末数に対する割合が、予め定めた値を超えた場合に全て解除し、超えない場合に継続する第2の判定基準、
前記解除されたコネクションの、解除される前における負荷が、予め定めた基準値を超えている場合に全て解除し、超えていない場合に継続する第3の判定基準
のうちの何れかである請求項1乃至3のうち何れか1項に記載のネットワーク仮想化装置。 - 前記データ交換ノードは更に、
前記予め定めた解除基準を超えた場合であっても、前記保持させる手段が解除すべきコネクションを、前記他データ交換ノードに保持させることによって、
前記他データ交換ノードを含む前記他ネットワーク仮想化装置の負荷が、予め定めた基準値を超えることになる第1の場合、
前記他データ交換ノードを含む前記他ネットワーク仮想化装置が保持する仮想化ネットワークに接続された端末の合計数、又は前記他ネットワーク仮想化装置が含む他データ交換ノード数が、予め定めた基準値を超えることになる第2の場合、
前記他データ交換ノードが保持する仮想化ネットワークに接続された端末の合計数が、予め定めた基準値を超えることになる第3の場合
のうちの何れかの場合には、前記保持させる手段に対して前記コネクションを解除させない手段を備えた請求項1乃至4のうち何れか1項に記載のネットワーク仮想化装置。 - 予め構築され、それぞれ一つ以上の端末が接続された複数の物理ネットワーク上に、プログラムによって仮想的にネットワークを構築する、ネットワーク仮想化装置に含まれるデータ交換ノードに適用される前記プログラムであって、
前記各端末それぞれに対して予め割り当てられ、前記物理ネットワーク上において前記各端末をそれぞれ特定するための物理ネットワークアドレスが指定されると、前記指定された物理ネットワークアドレスによって特定された端末との前記物理ネットワークを介したコネクションを確立し、保持する機能、
前記コネクションと、前記仮想ネットワーク上において前記各端末をそれぞれ特定するための仮想ネットワークアドレスとのマッピング情報を記憶する機能、
他ネットワーク仮想化装置に含まれる他データ交換ノードとの前記物理ネットワークを介したコネクションを確立し、保持する機能、
前記仮想ネットワークアドレスが指定されると、前記マッピング情報に基づいて、前記指定された仮想ネットワークアドレスにマップされたコネクションを特定し、この特定されたコネクションによって接続された端末と、前記仮想ネットワークを介して通信する機能、
予め定めた解除基準を超えた場合には、保持している前記物理ネットワークを介したコネクションのうちの何れかを解除し、前記解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させる機能
をコンピュータに実現させるためのプログラム。 - 前記予め定めた解除基準を超えた場合とは、
前記保持している物理ネットワークを介したコネクションのうち、単位時間当たりのトラフィック量が、予め定めた量を超えた場合、
同一の物理ネットワークに属する端末の数が、予め定めた数を超えた場合、
前記データ交換ノードの負荷が、予め定めた基準値を超えた場合
のうちの何れかの場合である請求項6に記載のプログラム。 - 前記他ネットワーク仮想化装置が複数存在する場合、前記解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させる機能は更に、前記複数存在する他ネットワーク仮想化装置のうち、前記保持させる他データ交換ノードを含む他ネットワーク仮想化装置を、予め定めた選択基準に基づいて選択する機能をコンピュータに実現させ、
前記予め定めた選択基準とは、
前記他データ交換ノードが、前記解除されたコネクションを保持した場合、前記解除されたコネクションによって接続された端末との間のデータ転送コストが最小になるようなデータ交換ノードを含むネットワーク仮想化装置を選択するか、又は、前記解除されたコネクションによって接続された端末との前記物理ネットワークにおける距離が最小になるようなネットワーク仮想化装置を選択する
請求項6又は請求項7に記載のプログラム。 - 前記解除されたコネクションが、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持された後、前記解除されたコネクション以外のコネクションの保持を継続するか、又は前記解除されたコネクション以外のコネクションを全て解除し、これら解除したコネクションを、他ネットワーク仮想化装置に含まれる他データ交換ノードに保持させるか否かを、予め定めた判定基準に基づいて判定する機能を更にコンピュータに実現させ、
前記判定基準は、
前記解除されたコネクションの解除される前におけるトラフィック量の、前記データ交換ノードによって保持されていた仮想ネットワークを介した全てのコネクションによる合計トラフィック量に対する割合が、予め定めた値を超えた場合に全て解除し、超えない場合に継続する第1の判定基準、
前記解除されたコネクションに接続された端末数の、解除される前に前記データ交換ノードによって保持されていた仮想ネットワークに接続されていた合計端末数に対する割合が、予め定めた値を超えた場合に全て解除し、超えない場合に継続する第2の判定基準、
前記解除されたコネクションの、解除される前における負荷が、予め定めた基準値を超えている場合に全て解除し、超えていない場合に継続する第3の判定基準
のうちの何れかである請求項6乃至8のうち何れか1項に記載のプログラム。 - 前記予め定めた解除基準を超えた場合であっても、前記保持させる機能が解除すべきコネクションを、前記他ネットワーク仮想化装置に保持させることによって、
前記他データ交換ノードを含む前記他ネットワーク仮想化装置の負荷が、予め定めた基準値を超えることになる第1の場合、
前記他データ交換ノードを含む前記他ネットワーク仮想化装置が保持する仮想化ネットワークに接続された端末の合計数、又は前記他ネットワーク仮想化装置が含む他データ交換ノード数が、予め定めた基準値を超えることになる第2の場合、
前記他データ交換ノードが保持する仮想化ネットワークに接続された端末の合計数が、予め定めた基準値を超えることになる第3の場合
のうちの何れかの場合には、前記保持させる機能に対して、前記コネクションを解除させない機能をコンピュータに実現させるための請求項6乃至9のうち何れか1項に記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006216107A JP4279300B2 (ja) | 2006-08-08 | 2006-08-08 | ネットワーク仮想化装置及びネットワーク仮想化プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006216107A JP4279300B2 (ja) | 2006-08-08 | 2006-08-08 | ネットワーク仮想化装置及びネットワーク仮想化プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008042665A JP2008042665A (ja) | 2008-02-21 |
JP4279300B2 true JP4279300B2 (ja) | 2009-06-17 |
Family
ID=39177183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006216107A Expired - Fee Related JP4279300B2 (ja) | 2006-08-08 | 2006-08-08 | ネットワーク仮想化装置及びネットワーク仮想化プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4279300B2 (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5102689B2 (ja) * | 2008-04-23 | 2012-12-19 | 株式会社エヌ・ティ・ティ・ドコモ | 仮想ネットワークシステム、仮想ネットワーク構築方法 |
JP4703689B2 (ja) * | 2008-06-12 | 2011-06-15 | 株式会社東芝 | ネットワーク仮想化システムおよびプログラム |
JP4751436B2 (ja) * | 2008-10-21 | 2011-08-17 | 株式会社東芝 | 通信装置 |
WO2010066430A1 (en) | 2008-12-10 | 2010-06-17 | Nec Europe Ltd. | A method for operating at least one virtual network on a substrate network and a virtual network environment |
JP5201046B2 (ja) * | 2009-03-25 | 2013-06-05 | 日本電気株式会社 | ネットワークノード、ネットワーク及びそれらに用いるトンネルスイッチング方法 |
US9106540B2 (en) * | 2009-03-30 | 2015-08-11 | Amazon Technologies, Inc. | Providing logical networking functionality for managed computer networks |
CA3081255C (en) | 2009-04-01 | 2023-08-22 | Nicira, Inc. | Method and apparatus for implementing and managing virtual switches |
JP5408359B2 (ja) * | 2010-09-01 | 2014-02-05 | 富士通株式会社 | 管理装置、管理プログラムおよび管理方法 |
WO2013038547A1 (ja) | 2011-09-15 | 2013-03-21 | 富士通株式会社 | 仮想マシン管理装置、仮想マシン移動制御プログラムおよび仮想マシン移動制御方法 |
JP2014039097A (ja) * | 2012-08-13 | 2014-02-27 | Nippon Telegr & Teleph Corp <Ntt> | ネットワーク構成システム、ネットワーク構成装置、ネットワーク構成方法、及びネットワーク構成プログラム |
CN106559451B (zh) | 2015-09-29 | 2020-09-08 | 新华三技术有限公司 | 用户迁移方法和装置 |
-
2006
- 2006-08-08 JP JP2006216107A patent/JP4279300B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2008042665A (ja) | 2008-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4279300B2 (ja) | ネットワーク仮想化装置及びネットワーク仮想化プログラム | |
US8549120B2 (en) | System and method for location based address assignment in the distribution of traffic in a virtual gateway | |
CN104580024B (zh) | 扩展的以太网互联结构交换机 | |
US9391886B2 (en) | Identification of the paths taken through a network of interconnected devices | |
US20070195794A1 (en) | Virtual lan system and node device | |
EP2619953B1 (en) | A control apparatus, a communication system, a communication method and a recording medium having recorded thereon a communication program | |
CN107770062A (zh) | 一种数据包发送方法、装置及网络架构 | |
CN101521895A (zh) | 无线自组织网络中用于构建多跳路由转发的方法 | |
US9515927B2 (en) | System and method for layer 3 proxy routing | |
EP2748992A2 (en) | System and methods for managing network hardware address requests with a controller | |
WO2019080592A1 (zh) | 一种发送报文的方法和设备 | |
US11923963B2 (en) | Managing satellite devices within a branch network | |
CN105245632A (zh) | 一种sdn网络中不同网段主机间通信方法 | |
JP2022044029A (ja) | データ伝送方法、装置、およびネットワークデバイス | |
WO2019240158A1 (ja) | 通信システム及び通信方法 | |
JP2006262193A (ja) | 制御装置、パケット転送方法およびパケット処理装置 | |
US7796614B1 (en) | Systems and methods for message proxying | |
JP4011528B2 (ja) | ネットワーク仮想化システム | |
JP4490990B2 (ja) | ピアツーピア通信確立装置及びプログラム | |
EP3562101A1 (en) | Bras management method, packet forwarding method, packet forwarding controller, and bras | |
CN101552714A (zh) | 一种多归属多地址空间网络中实现流量工程的方法和设备 | |
JP2008054214A (ja) | ネットワーク仮想化システム及びネットワーク仮想化プログラム | |
EP2553907A1 (en) | A method and network node for use in link level communication in a data communications network | |
CN113518104A (zh) | 一种数据报文的处理方法、中转设备及系统 | |
CN108259292B (zh) | 建立隧道的方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081212 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090120 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090130 |
|
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: 20090224 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090311 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120319 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130319 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140319 Year of fee payment: 5 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |