(57)【要約】【課題】仮想マシンを実装するための資源の量を低減させる。【解決手段】通信装置は、情報処理部と制御部とを有し、情報処理部は、不揮発性メモリと揮発性メモリとを有し、制御部は、通信装置が起動した場合、ブートイメージを不揮発性メモリから揮発性メモリに読み出し、読み出されたブートイメージに含まれる仮想マシンテンプレートを、揮発性メモリにおいて起動し、起動された仮想マシンテンプレートの設定を、仮想マシンを実行するために最低限変更した後、仮想マシンテンプレートを停止させ、通信サービスの追加要求を受信した場合、停止された仮想マシンテンプレートを複製し、複製仮想マシンテンプレートを起動し、起動された複製仮想マシンテンプレートの設定を、通信サービスの追加要求に従った設定に変更し、設定が変更された複製仮想マシンテンプレートを、仮想マシンとして実行することによって、通信サービスを提供する。【選択図】図９
2014096675.tif 000002
【特許請求の範囲】
【請求項１】
物理ネットワークを介してイーサフレームを送信するサーバとクライアントとの通信路上に接続される通信装置であって、
前記通信装置は、
前記イーサフレームに、通信サービスを実行する少なくとも一つの仮想マシンを有する情報処理部と、
前記通信装置を制御する制御部と、を有し、
前記情報処理部は、
前記仮想マシンを実行するためのプログラムである仮想マシンテンプレートを含むブートイメージを保持する不揮発性メモリと、
前記通信サービスを実行するための揮発性メモリと、を有し、
前記制御部は、
前記通信装置が起動した場合、前記ブートイメージを前記不揮発性メモリから前記揮発性メモリに読み出し、
前記読み出されたブートイメージに含まれる前記仮想マシンテンプレートを、前記揮発性メモリにおいて起動し、
前記起動された仮想マシンテンプレートの設定を、前記仮想マシンを実行するために最低限必要な設定に変更した後、前記起動された仮想マシンテンプレートを停止させ、
前記通信サービスの追加要求を受信した場合、前記停止された仮想マシンテンプレートを複製することによって、複製仮想マシンテンプレートを生成し、
前記複製仮想マシンテンプレートを起動し、
前記起動された複製仮想マシンテンプレートの設定を、前記通信サービスの追加要求に従った設定に変更し、
前記設定が変更された複製仮想マシンテンプレートを、前記仮想マシンとして実行することによって、前記通信サービスを提供することを特徴とする通信装置。
【請求項２】
請求項１に記載の通信装置であって、
前記ブートイメージは、仮想スイッチを実行するためのプログラムを含み、
前記仮想マシンテンプレートは、前記仮想マシンを前記情報処理部において実行するためのオペレーティングシステムと、前記少なくとも一つの通信サービスと、前記仮想スイッチと接続するための少なくとも一つの仮想ネットワークインタフェースとを、実行するためのプログラムを含み、
前記制御部は、前記起動された仮想マシンテンプレートに含まれる前記少なくとも一つの仮想ネットワークインタフェースに、前記イーサフレームを受信するためのパラメータを割り当てることによって、前記起動された仮想マシンテンプレートの設定を、前記仮想マシンを実行するために最低限必要な設定に変更することを特徴とする通信装置。
【請求項３】
請求項２に記載の通信装置であって、
前記制御部は、前記起動された仮想マシンテンプレートに含まれる前記仮想ネットワークインタフェースに、前記仮想マシンの設定を変更するための指示を受信するためのパラメータを割り当てることによって、前記起動された仮想マシンテンプレートの設定を、前記仮想マシンを実行するために最低限必要な設定に変更することを特徴とする通信装置。
【請求項４】
請求項２又は３に記載の通信装置であって、
前記情報処理部は、少なくとも一つのプロセッサコアを有し、
前記制御部は、
前記通信サービスの追加要求に従って、前記情報処理部が有するプロセッサコア及び前記揮発性メモリ、並びに、前記仮想ネットワークインタフェースにおいて用いられる仮想ＭＡＣアドレスを、前記起動された複製仮想マシンテンプレートに割り当てることによって、前記起動された複製仮想マシンテンプレートの設定を、前記通信サービスの追加要求に従った設定に変更し、
前記通信サービスの追加要求によって追加を要求されていない前記通信サービスが前記起動された複製仮想マシンテンプレートに含まれる場合、前記起動された複製仮想マシンテンプレートに含まれる前記追加を要求されていない通信サービスを、停止することを特徴とする通信装置。
【請求項５】
請求項４に記載の通信装置であって、
前記制御部は、
前記起動された仮想マシンテンプレートを停止させた後、前記停止された仮想マシンテンプレートを前記不揮発性メモリに移動し、
前記通信サービスの追加要求を受信した場合、前記複製仮想マシンテンプレートを、前記揮発性メモリに読み出し、
前記複製仮想マシンテンプレートを、前記揮発性メモリにおいて起動することを特徴とする通信装置。
【請求項６】
請求項５に記載の通信装置であって、
前記制御部は、前記通信サービスの追加要求によって、複数の通信サービスの追加を要求された場合、前記通信サービスの追加要求が示す複数の通信サービスの数分、前記仮想マシンテンプレートを複製することを特徴とする通信装置。
【請求項７】
請求項６に記載の通信装置であって、
前記制御部は、
前記通信サービスの更新要求を受信した場合、前記通信サービスの更新要求が示す前記通信サービスを実行するための仮想マシンを停止し、
前記停止された仮想マシンの設定を、前記通信サービスの更新要求に従って変更し、
前記設定が変更された仮想マシンを起動することを特徴とする通信装置。
【請求項８】
請求項７に記載の通信装置であって、
前記制御部は、
前記通信サービスの削除要求を受信した場合、削除が要求された前記通信サービスを提供する仮想マシンを停止し、
前記停止された仮想マシンを削除し、
前記停止された仮想マシンに割り当てられていた前記情報処理部の資源を解放することを特徴とする通信装置。
【請求項９】
請求項８に記載の通信装置であって、
前記制御部は、
ユーザからの入力を受け付ける管理端末と接続され、
前記管理端末から、前記通信サービスの追加要求を受信することを特徴とする通信装置。
【請求項１０】
物理ネットワークを介してイーサフレームを送信するサーバとクライアントとの通信路上に接続される通信装置への設定方法であって、
前記通信装置は、
前記イーサフレームに、通信サービスを実行する少なくとも一つの仮想マシンを有する情報処理部と、
前記通信装置を制御する制御部と、を有し、
前記情報処理部は、
前記仮想マシンを実行するためのプログラムである仮想マシンテンプレートを含むブートイメージを保持する不揮発性メモリと、
前記通信サービスを実行するための揮発性メモリと、を有し、
前記設定方法は、
前記制御部が、前記通信装置が起動した場合、前記ブートイメージを前記不揮発性メモリから前記揮発性メモリに読み出す手順と、
前記制御部が、前記読み出されたブートイメージに含まれる前記仮想マシンテンプレートを、前記揮発性メモリにおいて起動する手順と、
前記制御部が、前記起動された仮想マシンテンプレートの設定を、前記仮想マシンを実行するために最低限必要な設定に変更した後、前記起動された仮想マシンテンプレートを停止させる手順と、
前記制御部が、前記通信サービスの追加要求を受信した場合、前記停止された仮想マシンテンプレートを複製することによって、複製仮想マシンテンプレートを生成する手順と、
前記制御部が、前記複製仮想マシンテンプレートを起動する手順と、
前記制御部が、前記起動された複製仮想マシンテンプレートの設定を前記通信サービスの追加要求に従った設定に変更する手順と、
前記制御部が、前記設定が変更された複製仮想マシンテンプレートを、前記仮想マシンとして実行することによって、前記通信サービスを提供する手順と、を含むことを特徴とする設定方法。
【請求項１１】
請求項１０に記載の設定方法であって、
前記ブートイメージは、仮想スイッチを実行するためのプログラムを含み、
前記仮想マシンテンプレートは、前記仮想マシンを前記情報処理部において実行するためのオペレーティングシステムと、前記少なくとも一つの通信サービスと、前記仮想スイッチと接続するための少なくとも一つの仮想ネットワークインタフェースとを、実行するためのプログラムを含み、
前記方法は、
前記制御部が、前記起動された仮想マシンテンプレートに含まれる前記少なくとも一つの仮想ネットワークインタフェースに、前記イーサフレームを受信するためのパラメータを割り当てることによって、前記起動された仮想マシンテンプレートの設定を、仮想マシンを実行するために最低限必要な設定に変更する手順を含むことを特徴とする設定方法。
【請求項１２】
請求項１１に記載の設定方法であって、
前記制御部が、前記起動された仮想マシンテンプレートに含まれる前記仮想ネットワークインタフェースに、前記仮想マシンの設定を変更するための指示を受信するためのパラメータを割り当てることによって、前記起動された仮想マシンテンプレートの設定を、仮想マシンを実行するために最低限必要な設定に変更する手順を含むことを特徴とする設定方法。
【請求項１３】
請求項１１又は１２に記載の設定方法であって、
前記情報処理部は、少なくとも一つのプロセッサコアを有し、
前記起動された複製仮想マシンテンプレートの設定を通信サービスの追加要求に従った設定に変更する手順は、前記制御部が、前記通信サービスの追加要求に従って、前記情報処理部が有するプロセッサコア及び前記揮発性メモリ、並びに、前記仮想ネットワークインタフェースにおいて用いられる仮想ＭＡＣアドレスを、前記起動された複製仮想マシンテンプレートに割り当てる手順を含み、
前記方法は、前記制御部が、前記通信サービスの追加要求によって追加を要求されていない前記通信サービスが前記起動された複製仮想マシンテンプレートに含まれる場合、前記起動された複製仮想マシンテンプレートに含まれる前記追加を要求されていない通信サービスを、停止する手順を含むことを特徴とする設定方法。
【請求項１４】
請求項１３に記載の設定方法であって、
前記起動された仮想マシンテンプレートを停止させる手順は、前記制御部が、前記起動された仮想マシンテンプレートを停止させた後、前記停止された仮想マシンテンプレートを前記不揮発性メモリに移動する手順を含み、
前記複製仮想マシンテンプレートを生成する手順は、前記制御部が、前記通信サービスの追加要求を受信した場合、前記複製仮想マシンテンプレートを、前記揮発性メモリに読み出す手順を含み、
前記複製仮想マシンテンプレートを起動する手順は、前記制御部が、前記複製仮想マシンテンプレートを、前記揮発性メモリにおいて起動する手順を含むことを特徴とする設定方法。
【請求項１５】
請求項１４に記載の設定方法であって、
前記複製仮想マシンテンプレートを生成する手順は、前記制御部が、前記通信サービスの追加要求によって、複数の通信サービスの追加を要求された場合、前記通信サービスの追加要求が示す複数の通信サービスの数分、前記仮想マシンテンプレートを複製する手順を含むことを特徴とする設定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置に関する。
【背景技術】
【０００２】
クラウドコンピューティング（以下、クラウドと省略）では、拠点からデータセンタのサーバを用いるため、必然的に拠点とデータセンタとの間のネットワークを利用する。コンシューマが利用するクラウドにおいて用いられるネットワークは、インターネットである場合が多い。一方で、企業が利用するクラウドにおいて用いられるネットワークは、セキュリティの観点及びネットワーク性能の観点から、ＶＰＮ（Ｖｉｒｔｕａｌ  Ｐｒｉｖａｔｅ  Ｎｅｔｗｏｒｋ）などの仮想ネットワークであることが多い。
【０００３】
複数の仮想ネットワークが物理的な一つのネットワークにおいて共存するため、各仮想ネットワークには独立性が確保される仕組みが必要である。
【０００４】
通信事業者は、仮想ネットワークの独立性を実現するため、ＩＥＥＥ８０２.１ａｄによって標準化された拡張タグＶＬＡＮ（Ｖｉｒｔｕａｌ  Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）（例えば、非特許文献１参照）、又は、プロバイダブリッジ（８０２.１Ｑ−ＩＮ−８０２.１Ｑ、Ｑ−ｉｎ―Ｑ、二重タグ）と呼ばれる技術を用いた広域イーサネット（登録商標、以下同じ）を利用する。
【０００５】
拡張タグＶＬＡＮは、ＶＬＡＮタグ付きのイーサフレームにさらにＶＬＡＮタグを付加し、ＶＬＡＮタグを複数付加されたイーサフレームによって通信する技術である。
【０００６】
イーサフレームのうち、外部に付加されたＶＬＡＮタグは、ＳＴＡＧ(Ｓｅｒｖｉｃｅ  ＴＡＧ)と呼ばれる。拡張タグＶＬＡＮにおけるネットワーク装置は、ＳＴＡＧによって識別されるＳ−ＶＬＡＮによって、企業間（テナント間）の仮想ネットワークを識別し、イーサフレームを各仮想ネットワークに振り分ける。
【０００７】
また、イーサフレームのうち、ＳＴＡＧより内部（イーサフレームにおけるペイロード側）に付加されたＶＬＡＮタグは、ＣＴＡＧ（Ｃｕｓｔｏｍｅｒ  ＴＡＧ）と呼ばれる。拡張タグＶＬＡＮにおけるネットワーク装置は、ＣＴＡＧによって識別されるＣ−ＶＬＡＮによって、企業内（テナント内）の複数のネットワークを識別し、イーサフレームを企業内の各ネットワークに振り分ける。
【０００８】
前述のように、ＳＴＡＧ及びＣＴＡＧを用いることによって、拡張タグＶＬＡＮは、テナント間、及び、テナント内のネットワークの独立性を確保することができる。
【０００９】
さらに、通信事業者は、特定の機能に特化した"アプライアンス（ネットワークアプライアンス）"と呼ばれるシステムを利用して、クラウド向け通信サービスを各テナントに提供する。アプライアンスの例としては、データセンタ間又は拠点間の通信を高速化するＷＡＮ最適化装置（ＷＯＣ：Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ  Ｏｐｔｉｍｉｚａｔｉｏｎ  Ｃｏｎｔｒｏｌｌｅｒ、ＷＡＮ高速化装置）、異常通信を検出したりブロックしたりする侵入検知／侵入防御システム（ＩＤＳ：Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ／Ｉｎｔｒｕｓｉｏｎ  Ｐｒｏｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ、ＦＷ：Ｆｉｒｅ  Ｗａｌｌ）、及び、セッション負荷分散装置などを用いたシステムが挙げられる。これらのシステムの機能は、クラウドの通信機能及び通信性能を向上させることができる。このため、以下において、便宜上これらの機能を持つクラウド向け通信サービスを総称して通信サービスと呼ぶ。
【００１０】
通信サービスを提供するためのアプライアンスには、ネットワークの仮想化に対応していないアプライアンスも少なくない。このため、こうしたアプライアンスは、一般的に、各企業の拠点、又は、各企業において論理的にプライベートにされたデータセンタ内に配置されることが多い。
【００１１】
しかし、通信事業者が、通信サービスをクラウドの機能のひとつとして複数の企業（テナント）に提供する場合、アプライアンスは、通信事業者が有する通信局舎内、又は、通信事業者が有するデータセンタにおいてゲートウェイの機能を有する共有装置等に配置されることが想定される。そして、通信事業者は、アプライアンスを、企業（テナント）に対応する仮想ネットワーク毎に設定する必要がある。
【００１２】
通信事業者が複数の利用企業（マルチテナント）に対し、クラウドサービスの一つとしてＷＡＮ最適化などの通信サービスを提供するためには、広域イーサネットなどの仮想ネットワークの通信と通信サービスとの双方に関してテナント間の独立性を保証しつつ、かつ、複数の通信サービスを提供できる、少なくとも一つの通信装置を用いることが望ましい。
【００１３】
前述の通り、ネットワークの通信のテナント間の独立性を保証するためには、拡張タグＶＬＡＮ通信が用いられる。また、一つの通信装置が複数の通信サービスを提供するためには、通信装置は複数の仮想マシンを実行することが必要である。このため、拡張タグＶＬＡＮ通信と、仮想マシンにおいて実行される通信サービスとは、相互に連携されることが望ましい。
【００１４】
拡張タグＶＬＡＮ通信と仮想マシンとを、通信サービスの実行の再に連携して利用するためには、通信装置に、テナントごと、及び、通信サービスごとの仮想マシンを実装する必要がある。
【００１５】
従来の技術には、「ネットワークブートするＰＣのハードウェア構成に応じた適切な起動イメージを提供できるようにする。」という課題がある（例えば、特許文献１参照）。
【００１６】
そして特許文献１には、課題の解決手段として、「ブートノード２００から送られてきたハードウェア構成情報に基づいて、ブートサーバ１００の起動イメージ選択部１０１は、起動イメージ保存部２００に保存された起動イメージの中から、そのハードウェア構成情報に合致する起動イメージを選択し、起動イメージ選択部１０３に渡す。起動イメージ選択部１０３は選択された起動イメージをブートノード２００に送り返す。このようにすることで、ブートノード２００のハードウェア構成に適合した起動イメージを提供することができる。」が記載されている。
【００１７】
また、従来の技術には、「テンプレート１つから複数のＶＭをデプロイする際に、高速なデプロイ処理を可能にする。」という課題がある（例えば、特許文献２参照）。
【００１８】
そして特許文献２には、課題の解決手段として、「仮想マシン１３２を有するサーバ１００と、仮想マシン１３２の実体を仮想ディスク３０２として格納するストレージ３００〜３６０と、サーバ１００及びストレージ３００〜３６０を制御する管理サーバ２００と、を備え、ストレージ３００は、仮想ディスクに使用するＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）及びアプリケーションを集約したテンプレート３０１を有し、テンプレート３０１の複製を複数個作成し、該複製されたテンプレートを他のストレージに分散させ、他のストレージは、複製されたテンプレートに、ＩＰアドレス及びコンピュータの名称を含む前記仮想マシンの個別情報をインストールするＶＭ（Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）デプロイを行い、管理サーバ２００は、ＶＭデプロイのすべての回数とテンプレートのすべての複製回数とが最小になるように各ストレージを制御する。」が記載されている。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００６−０１１５０６号公報
【特許文献２】特開２００９−２３０６５５号公報
【非特許文献】
【００２０】
【非特許文献１】Ｔｈｅ  Ｅｖｏｌｕｔｉｏｎ  ｏｆ  Ｃａｒｒｉｅｒ  Ｅｔｈｅｒｎｅｔ  Ｓｅｒｖｉｃｅｓ−Ｒｅｑｕｉｒｅｍｅｎｔｓ  ａｎｄ  Ｄｅｐｌｏｙｍｅｎｔ  Ｃａｓｅ  Ｓｔｕｄｉｅｓ：出典  IEEE Communications Magazine, March 2008号、PP69-76
【発明の概要】
【発明が解決しようとする課題】
【００２１】
特許文献１に記載された技術を用い、通信装置に接続される計算機を利用して、通信装置をネットワークブートする場合、通信遅延の大きいネットワークをコマンドとレスポンスとの通信の往復が何度も必要である。このため、ネットワークブートによって仮想マシンを実装する方法は、通信装置にブートイメージを直接入力する場合と比べ、ネットワークの輻輳の影響を受けやすく、特に、複数のテナントのサービスを起動するために時間がかかるという問題が生じる。
【００２２】
一方で、特許文献２に記載された技術を用い、複数のテナントの各々に通信サービスを提供する仮想マシンを速やかに起動するためには、通信装置が複数のストレージ（不揮発性メモリ）を有することが前提となる。しかし、通信事業者の通信装置が配置される場所の物理的な面積、通信装置に許容される消費電力、及び通信装置の発熱量等の都合により、通信装置は、一般的に複数のストレージを搭載できない。特にブートイメージを格納するために一般的に利用されるハードディスクドライブ等の不揮発性磁気メモリを通信装置が搭載するケースはほとんどない。
【００２３】
このため、通信装置は、ブートイメージをフラッシュカード等の小容量の不揮発性半導体メモリに保持する必要がある。しかし、通信装置が提供する通信サービスと通信サービスを提供するテナントとが多い場合、ブートイメージの容量は大きいため、通信装置は、ブートイメージを小容量の不揮発性半導体メモリに保持することができない。このため、特許文献２に記載された技術を用いた場合、テナント毎の通信サービスのブートイメージを通信装置が保持できない問題が生じる。
【００２４】
そこで、本発明は、複数の仮想ネットワークを収容するネットワークにおいて、仮想ネットワーク毎に通信サービスを提供する仮想マシンが実装される場合に、仮想マシンを実装するためのネットワーク及び不揮発性半導体メモリ等の資源の量を低減させつつ、通信装置に仮想マシンを適切に実装することを目的とする。
【課題を解決するための手段】
【００２５】
本発明の解決手段は、設定された仮想マシンテンプレートを無効化しておき、サービス追加要求の度に仮想マシンテンプレートを複製、設定して有効化する。
【００２６】
本発明の代表的な一例を示せば以下の通りである。すなわち、物理ネットワークを介してイーサフレームを送信するサーバとクライアントとの通信路上に接続される通信装置であって、前記通信装置は、前記イーサフレームに、通信サービスを実行する少なくとも一つの仮想マシンを有する情報処理部と、前記通信装置を制御する制御部と、を有し、前記情報処理部は、前記仮想マシンを実行するためのプログラムである仮想マシンテンプレートを含むブートイメージを保持する不揮発性メモリと、前記通信サービスを実行するための揮発性メモリと、を有し、前記制御部は、前記通信装置が起動した場合、前記ブートイメージを前記不揮発性メモリから前記揮発性メモリに読み出し、前記読み出されたブートイメージに含まれる前記仮想マシンテンプレートを、前記揮発性メモリにおいて起動し、前記起動された仮想マシンテンプレートの設定を、前記仮想マシンを実行するために最低限必要な設定に変更した後、前記起動された仮想マシンテンプレートを停止させ、前記通信サービスの追加要求を受信した場合、前記停止された仮想マシンテンプレートを複製することによって、複製仮想マシンテンプレートを生成し、前記複製仮想マシンテンプレートを起動し、前記起動された複製仮想マシンテンプレートの設定を、前記通信サービスの追加要求に従った設定に変更し、前記設定が変更された複製仮想マシンテンプレートを、前記仮想マシンとして実行することによって、前記通信サービスを提供する。
【発明の効果】
【００２７】
本発明の代表的な一形態によると、通信サービスを提供する装置における資源の消費を低減しつつ、通信サービスを提供する装置に仮想マシンを実装する。
【００２８】
上記した以外の課題、構成及び効果は、以下の実施例の説明により明らかにされる。
【図面の簡単な説明】
【００２９】
【図１】本実施例の通信サービスを提供するためのシステム構成を示すブロック図である。
【図２】本実施例の通信ノード装置の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。
【図３】本実施例の広域イーサネットのイーサフレームの変化の流れを示す説明図である。
【図４】本実施例のイーサフレームのフォーマットを示す説明図である。
【図５】本実施例のイーサフレームの例を示す説明図である。
【図６】本実施例のサービステーブルを示す説明図である。
【図７】本実施例の資源管理テーブルを示す説明図である。
【図８】本実施例の変換テーブルを示す説明図である。
【図９】本実施例の通信サービスを追加、更新、又は削除する処理を示すフローチャートである。
【図１０】本実施例のブートイメージを示すブロック図である。
【図１１】本実施例の通信サービスを追加する処理を示すフローチャートである。
【図１２】本実施例の通信サービスを更新する処理を示すフローチャートである。
【図１３】本実施例の通信サービスを削除する処理を示すフローチャートである。
【図１４】本実施例の管理端末画面の例を示す説明図である。
【図１５】本実施例の通信ノード装置におけるタグ変換処理を示すフローチャートである。
【図１６】本実施例のタグ変換処理の具体例を示す説明図である。
【図１７】本実施例のタグ変換されるイーサフレームの具体例を示す説明図である。
【図１８】本実施例のイーサフレームの複製を伴うタグ変換処理の具体例を示す説明図である。
【図１９】本実施例のタグ変換処理時に複製されるイーサフレームの具体例を示す説明図である。
【図２０】本実施例の通信サービスを連続して実行する場合のタグ変換処理を示す説明図である。
【図２１】本実施例の通信サービスを提供するためのシステム構成との比較例を示すブロック図である。
【図２２】本実施例のＭＡＣｉｎＭＡＣのイーサフレームを示す説明図である。
【図２３】本実施例のＶＸＬＡＮのイーサフレームを示す説明図である。
【発明を実施するための形態】
【００３０】
以下、実施例を添付図面に基づき説明する。各図における同一符号は同一の構成又は相当する構成を示す。説明の都合上、符号に添え字を追加して識別することがある。
【００３１】
以下の実施例では、顧客（例えば、企業。以下、テナントと記載）毎にＷＡＮ最適化、及び、ファイアウォールなどの複数の通信サービス（クラウド向け通信サービス）を、仮想ネットワークにおいて組合せて提供するための通信ノード装置に対して、本発明の設定方法を適用する例に関して説明する。
【００３２】
仮想ネットワークを利用した通信サービスの一例として、広域イーサネットがある。広域イーサネット（イーサネットは、登録商標、以下同じ）は、テナントのイーサネットフレーム（以下、イーサフレーム）を通信事業者のネットワーク上で透過的に転送して遠隔地の拠点を接続するサービスである。広域イーサネットは、ＶＬＡＮ技術を使ってレイヤ２によってＶＰＮを提供する。
【００３３】
広域イーサネットは、例えば、国内外各地に事業所を持つ複数の企業（テナントに相当）が物理的に同じネットワークを共有している状態において、各企業における事業所が、他の企業の事業所と通信することなく、自企業における一つの論理的なＬＡＮ内で通信するように、自企業の他の事業所と通信できるサービスである。
【００３４】
広域イーサネットの実現形態には、ＩＥＥＥ８０２．１ａｄによって標準化された拡張タグＶＬＡＮと、ＩＥＥＥ８０２．１ａｈによって標準化されたＥｔｈｅｒ  ｏｖｅｒ  Ｅｔｈｅｒがある。前者の拡張タグＶＬＡＮは、テナントに含まれる複数のネットワークを識別するためのＶＬＡＮタグの、イーサフレームの先頭方向の隣に、通信事業者がテナントを識別するためのＶＬＡＮタグを付加する方法である。拡張タグＶＬＡＮは、ＱｉｎＱ、又は、プロバイダブリッジとも呼ばれる。
【００３５】
後者のＥｔｈｅｒ  ｏｖｅｒ  Ｅｔｈｅｒは、テナント（顧客）のイーサフレームを通信事業者のイーサフレームによってカプセル化する方法である。Ｅｔｈｅｒ  ｏｖｅｒ  Ｅｔｈｅｒは、ＭＡＣｉｎＭＡＣ、又は、プロバイダバックボーンブリッジとも呼ばれる。
【００３６】
図１は、本実施例の通信サービスを提供するためのシステム構成を示すブロック図である。
【００３７】
図１に示すシステム構成は、通信サービスを提供するネットワークシステムの構成を示す。実施例のネットワークシステムは、Ａ社拠点２−１、Ｂ社拠点２−２、通信局舎３、通信事業者網（ＷＡＮ）４、及び、データセンタ１を有する。
【００３８】
図１におけるシステム構成におけるテナントは、Ａ社、及びＢ社に対応する二つのテナントである。各テナントには、各仮想ネットワークによって相互に通信する複数のサーバ１３及びクライアント２０が含まれる。本実施例においてテナントとは、少なくとも一つのクライアント及び少なくとも一つのサーバを含むグループであり、かつ、仮想ネットワークを割り当てられたグループを示す。
【００３９】
Ａ社は、Ａ社拠点２−１を有し、Ｂ社は、Ｂ社拠点２−２を有する。Ａ社拠点２−１は、Ａ社のＬＡＮスイッチ２１−１及び複数のクライアント２０（２０−１〜２０−３）を有し、Ｂ社拠点２−２は、Ｂ社のＬＡＮスイッチ２１−２及び複数のクライアント２０（２０−４、２０−５）を有する。
【００４０】
データセンタ１は、通信ノード装置１０−１、エッジスイッチ１１−１、複数のＬＡＮスイッチ２１（２１−１、２１−２）、及び、複数のサーバ１３（１３−１〜１３−５）を有する。Ａ社は、ＬＡＮスイッチ１２−１及びサーバ１３−１〜３を有し、Ｂ社は、ＬＡＮスイッチ１２−２及びサーバ１３−４、５を有する。
【００４１】
Ａ社及びＢ社の各テナントには、異なる仮想ネットワークが割り当てられる。Ａ社は、自らに設定された仮想ネットワークによって、Ａ社間の通信を実現する。また、一つのテナント内においても、ＶＬＡＮ等の仮想ネットワークが割り当てられる。
【００４２】
通信局舎３は、通信ノード装置１０−２、及び、エッジスイッチ１１−２を有する。通信局舎３、ＷＡＮ４、データセンタ１が有する通信ノード装置１０−１、及び、データセンタ１が有するエッジスイッチ１１−１は、通信事業者によって提供されるシステムである。
【００４３】
通信ノード装置１０は、本実施例の通信サービスを、各テナントに提供するための装置である。通信ノード装置１０（１０−１、１０−２）は、受信するイーサフレームに従って、テナントごと（すなわち、仮想ネットワークごと）に通信サービスを提供する。
【００４４】
なお、通信ノード装置１０は、エッジスイッチ１１の機能を有してもよい。この場合、図１に示すエッジスイッチ１１は設置される必要がない。また、図１に示すデータセンタ１は、通信ノード装置１０−１を１台のみしか持たないが、データセンタ１は、複数の通信ノード装置１０を有してもよい。データセンタ１が複数の通信ノード装置１０を有する場合、図１に示す通信ノード装置１０−１を中心に複数の通信ノード装置１０がスター型に接続されてもよいし、図１に示す通信ノード装置１０−１と複数の通信ノード装置１０とが数珠つなぎに接続されてもよい。
【００４５】
さらに、データセンタ１における通信ノード装置１０−１と同じく、通信局舎３も、複数の通信ノード装置１０を有してもよい。
【００４６】
図２は、本実施例の通信ノード装置１０の物理的な構成と、物理的な構成によって実装される論理的な構成とを示すブロック図である。
【００４７】
通信ノード装置１０は、少なくとも一つの転送カード４００、少なくとも一つの情報処理カード１００、制御カード２００、及び、内部スイッチ３００を備える。ただし、図２の例では、転送カード４００は２枚である。なお、図２に示すＬＡＮ５は、ＷＡＮ４を介さずに、エッジスイッチ１１に直接接続するためのネットワークを示す。
【００４８】
また、通信ノード装置１０は、管理端末９００に接続され、特に、制御カード２００のチップセット２１１に接続される。
【００４９】
転送カード４００は、イーサフレームを転送するための処理部である。なお、本実施例ではＶＬＡＮを利用するレイヤ２に関する説明を主としているため、イーサフレームという用語を用いて説明を進めるが、パケットという用語に読み替えてもよい。
【００５０】
情報処理カード１００は、ＷＡＮ最適化などの通信サービスを行う処理部である。制御カード２００は、通信ノード装置１０の各種設定及び各種制御を行う処理部である。内部スイッチ３００は、通信ノード装置１０に備わるカードを接続するための処理部である。
【００５１】
なお、図２に示す情報処理カード１００、転送カード４００、及び制御カード２００は、通信ノード装置１０の構成要素であるが、これらの構成要素の一部、又は、すべてが一体となった装置を構成することも可能である。その場合、以降の説明において、制御カード２００は制御部、情報処理カード１００は情報処理部、転送カード４００は転送部を意味する。
【００５２】
転送カード４００は、バックプレーンインタフェース４１６、ＮＰ・チップセット４１０、揮発性メモリ４１２、及び、不揮発性メモリ４１３を備える。また、図２に示す転送カード４００−１は、ネットワークインタフェース４１５によって、ＷＡＮ４と通信するための処理部であり、転送カード４００−２は、ネットワークインタフェース４１１によって、ＬＡＮスイッチ１２又はＬＡＮスイッチ２１と通信するための処理部である。
【００５３】
バックプレーンインタフェース４１６は、内部スイッチ３００と接続するためのインタフェースである。
【００５４】
ＮＰ・チップセット４１０は、イーサフレーム処理を行うための演算装置である。ＮＰ・チップセット４１０は、ＮＰ（Ｎｅｔｗｏｒｋ  Ｐｒｏｃｅｓｓｏｒ）及びチップセットを備える。ＮＰ・チップセット４１０は、タグ変換部４１７を有する。
【００５５】
ＮＰ・チップセット４１０は、ＷＡＮ４又はＬＡＮ５から受信したイーサフレームの宛先を抽出したのち、抽出された宛先に従って、イーサフレームをＬＡＮ５又はＷＡＮ４へ送信する。本実施例のＮＰ・チップセット４１０は、イーサフレームをＬＡＮ５又はＷＡＮ４に送信する前に、イーサフレームを横取り（インタセプト）し、横取りされたイーサフレームをタグ変換部４１７に処理させる。
【００５６】
タグ変換部４１７は、変換テーブル７０３に従って、拡張タグＶＬＡＮにおけるイーサフレームのタグを変換し、タグを変換されたイーサフレームを情報処理カード１００へ転送する。
【００５７】
揮発性メモリ４１２は、イーサフレームを一時的に保持したり、後述する変換テーブル、及び、フォワーディングテーブル等の各種のテーブル情報を保持したりする記憶装置である。ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）やＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等が揮発性メモリ４１２の例として挙げられるが、多くの場合は大容量性を重視してＤＲＡＭが利用される。揮発性メモリ４１２には、不揮発性メモリ４１３から変換テーブル７０３が読み出される。
【００５８】
不揮発性メモリ４１３に格納されるプログラム及びデータ等は、必要に応じて、ＮＰ・チップセット４１０によって、揮発性メモリ４１２に読み出される。
【００５９】
不揮発性メモリ４１３は、プログラム、データ、及び、設定情報等を保持する記憶装置である。ＨＤＤ（Ｈａｒｄ  Ｄｉｓｃ  Ｄｒｉｖｅ）やＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、フラッシュメモリ等が不揮発性メモリ４１３の例として挙げられるが、多くの場合は安価で故障しにくく発熱量が少ないフラッシュメモリが利用される。よって、本実施例の中では、不揮発性メモリは、不揮発性半導体メモリである前提で説明を行う。
【００６０】
情報処理カード１００は、バックプレーンインタフェース１１６、プロセッサ１１０、チップセット１１１、揮発性メモリ１１２、及び、不揮発性メモリ１１３を備える。バックプレーンインタフェース１１６は、チップセット１１１が内部スイッチ３００と接続するためのインタフェースである。
【００６１】
プロセッサ１１０は、例えば、ＣＰＵ等であり、通信サービスのプログラムを実行する演算装置である。チップセット１１１は、演算装置を備え、タグ変換部１１７を有する。タグ変換部１１７は、タグ変換部４１７と同じ機能を有し、イーサフレームのタグ変換処理を行う。
【００６２】
揮発性メモリ１１２は、イーサフレームを一時的に保持したり、変換テーブル７０３等の各種のテーブル情報を保持したり、プロセッサ１１０又はチップセット１１１によってプログラムを展開されたりする記憶領域である。プロセッサ１１０は、揮発性メモリ１１２において、複数の仮想マシン、及び、仮想スイッチ１９０を実行する。
【００６３】
不揮発性メモリ１１３は、プログラム、データ、及び、設定情報等を保持する記憶領域である。不揮発性メモリ１１３に格納されたデータ等を揮発性メモリ１１２に読み出すことによって、プロセッサ１１０及びチップセット１１１は、プログラムを実行する。不揮発性メモリ１１３は、仮想環境を実現するためのプログラムである仮想化ソフトを保持する。
【００６４】
不揮発性メモリ１１３は、ブートイメージ７０４を有する。ブートイメージ７０４は、情報処理カード１００に仮想マシンを実装するためのプログラムである。
【００６５】
情報処理カード１００のプロセッサ１１０は、マルチテナント対応の通信サービスを提供するため、不揮発性メモリ１１３が保持する仮想化ソフトを実行する。そして、その結果、プロセッサ１１０は、複数の仮想マシンとそれらを接続する仮想スイッチ１９０を含む仮想環境を実行することができる。
【００６６】
図２に示す仮想環境は、四つの仮想マシン（仮想マシン１２０、仮想マシン１３０、仮想マシン１４０、仮想マシン１５０）と、一つの仮想スイッチ１９０を含む。仮想マシンは、物理的な計算機と同様に処理を実行する。プロセッサ１１０は、通信サービス毎の仮想マシンを、仮想ネットワーク毎に実行する。
【００６７】
仮想マシン１２０は、ゲストＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）１２２を有し、ゲストＯＳ１２２の上で、Ａ社用の通信サービスであるＡ社ファイアウォールサービスプログラム１２１を実行する。また、仮想マシン１２０は、仮想ＮＩＣ（ＶＮＩＣ）１２３及びＶＮＩＣ１２４を有する。ＶＮＩＣ１２３は、ＷＡＮ４側の通信ポートを有するインタフェースである、ＶＮＩＣ１２４は、ＬＡＮ５側の通信ポートを有するインタフェースである。
【００６８】
仮想マシン１３０は、ゲストＯＳ１３２を有し、ゲストＯＳ１３２の上で、Ａ社用の通信サービスであるＡ社ＷＡＮ最適化サービスプログラム１３１を実行する。また、仮想マシン１３０は、ＶＮＩＣ１３３及びＶＮＩＣ１３４を有する。ＶＮＩＣ１３３は、ＷＡＮ４側の通信ポートを有するインタフェースである、ＶＮＩＣ１３４は、ＬＡＮ５側の通信ポートを有するインタフェースである。
【００６９】
仮想マシン１４０は、ゲストＯＳ１４２を有し、ゲストＯＳ１４２の上で、Ｂ社用の通信サービスであるＢ社ＷＡＮ最適化サービスプログラム１４１を実行する。また、仮想マシン１４０は、ＶＮＩＣ１４３及びＶＮＩＣ１４４を有する。ＶＮＩＣ１４３は、ＷＡＮ４側の通信ポートを有するインタフェースである、ＶＮＩＣ１４４は、ＬＡＮ５側の通信ポートを有するインタフェースである。
【００７０】
仮想マシン１５０は、ゲストＯＳ１５２を有し、ゲストＯＳ１５２の上で、Ｂ社用の通信サービスであるＢ社侵入検知システム（ＩＤＳ：Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ）サービスプログラム１５１を実行する。図２に示すＢ社ＩＤＳサービスプログラム１５１は、ＷＡＮ４側の通信のみの侵入検知を行う。このため、仮想マシン１５０は、ＷＡＮ４側の通信ポートであるＶＮＩＣ１５３のみを有する。
【００７１】
本実施例において、仮想マシンが、データを転送する通信サービスを提供する仮想マシンである場合、ＷＡＮ４側及びＬＡＮ５側に相当する二つの通信ポートが実装される。このため、このような仮想マシンには、一つの仮想マシンに二つのＶＮＩＣが割り当てられる。
【００７２】
データを転送する通信サービスには、例えば、ＷＡＮ最適化、ファイアウォール、ＩＰＳ（Ｉｎｔｒｕｓｉｏｎ  Ｐｒｏｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ）、及び、セッション負荷分散などの通信サービス（クラウド向け通信サービス）が含まれる。
【００７３】
また、仮想マシンが、データ受信のみを行い、かつ、データを転送しない通信サービスを提供する仮想マシンである場合、仮想マシンには、一つのＶＮＩＣをデータ転送用に割り当てられる。データを転送しない通信サービスには、例えば、ＷＡＮ４側からＬＡＮ５側へ送信されるイーサフレームだけを処理するＩＤＳ（Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｓｉｏｎ  Ｓｙｓｔｅｍ）サービスがある。
【００７４】
なお、図示はしないが、通信事業者の管理者等は、データ転送とは別に仮想マシンと制御系の通信を行うために専用のＶＮＩＣを、各仮想マシンに割り当ててもよい。
【００７５】
仮想スイッチ１９０は、ＶＮＩＣ（１２３、１２４、１３３、１３４、１４３、１４４、１５３）、又は、転送カード４００のＮＰ・チップセット４１０に備わる物理ＮＩＣなどのインタフェースからイーサフレームを受信した場合、揮発性メモリ１１２に格納されるフォワーディングテーブルを参照する。そして、仮想スイッチ１９０は、フォワーディングテーブルに従って、イーサフレームを転送したり、ＶＬＡＮタグの付加又は削除をしたりする。
【００７６】
制御カード２００は、バックプレーンインタフェース２１６、プロセッサ２１０、チップセット２１１、揮発性メモリ２１２、及び、不揮発性メモリ２１３を有する。バックプレーンインタフェース２１６は、内部スイッチ３００と接続するためのインタフェースである。
【００７７】
チップセット２１１は、演算装置を含み、イーサフレームへの転送処理等を行う。プロセッサ２１０は、例えば、ＣＰＵ等の演算装置であり、制御プログラム７０２を実行する。
【００７８】
揮発性メモリ２１２は、プログラム、データ及びテーブル等を保持するための記憶領域である。また、揮発性メモリ２１２は、プロセッサ２１０又はチップセット２１１によって、不揮発性メモリ２１３から読み出されたプログラム及びデータ等を展開される記憶領域である。揮発性メモリ２１２は、制御プログラム７０２、サービステーブル７００、及び、資源管理テーブル７０１を保持する。
【００７９】
不揮発性メモリ２１３は、データ、テーブル、プログラム、及び、設定情報等を保持する記憶領域である。
【００８０】
管理端末９００は、制御カード２００のチップセット２１１を介して、通信ノード装置１０とのデータの入出力を行うための装置である。また、管理端末９００は、通信ノード装置１０の起動の指示及び停止の指示、並びに、通信ノード装置１０によって提供される通信サービスの追加要求、更新要求、及び削除要求を、通信ノード装置１０に入力するための装置である。
【００８１】
管理端末９００は、ディスプレイ、キーボード、及び、マウス等を備えるユーザインタフェースである。管理端末９００は、ネットワークを介して通信ノード装置１０と接続されてもよい。
【００８２】
なお、前述の通信ノード装置１０が有する各テーブル（サービステーブル７００、資源管理テーブル７０１、変換テーブル７０３）は、テーブルのフォーマットによって情報を保持する。しかし、本実施例における通信ノード装置１０は、各テーブルの情報を保持できれば、いかなる方法を用いてもよく、例えば、ＣＳＶ形式等の方法によって情報を保持してもよい。
【００８３】
また、タグ変換部１１７及びタグ変換部４１７は、各チップセットに含まれる処理部として実装されてもよいし、プログラムによって実装されてもよい。
【００８４】
図１に示すネットワークシステムにおける仮想ネットワーク、すなわち、拡張タグＶＬＡＮによる広域イーサネットにおける、イーサフレームの流れについて図３を用いて示す。
【００８５】
図３は、本実施例の広域イーサネットのイーサフレームの変化の流れを示す説明図である。
【００８６】
図３は、本実施例の広域イーサネットによってイーサフレームに付加されるＶＬＡＮタグの変化を模式的に示した図である。通信事業者区間７は、通信局舎３、ＷＡＮ４、及び、データセンタ１が有するエッジスイッチ１１−１間のネットワークを示す。ユーザ区間６−１は、クライアント２０及びエッジスイッチ１１−２間のネットワークを示し、ユーザ区間６−２は、サーバ１３及びエッジスイッチ１１−１間のネットワークを示す。
【００８７】
図４は、本実施例のイーサフレームのフォーマットを示す説明図である。
【００８８】
本実施例のネットワークシステムにおいて送受信されるイーサフレームは、図４に示すイーサフレーム８０、イーサフレーム８１、及び、イーサフレーム８２である。
【００８９】
イーサフレーム８０は、ＭＡＣ  ＤＡ（Ｄｅｓｔｉｎａｔｉｏｎ  Ａｄｄｒｅｓｓ）９０、ＭＡＣ  ＳＡ（Ｓｏｕｒｃｅ  Ａｄｄｒｅｓｓ）９１、タイプ９２、Ｌａｙｅｒ２ペイロード（Ｌ２ペイロード）９３、及び、ＦＣＳ（Ｆｒａｍｅ  Ｃｈｅｃｋ  Ｓｅｑｕｅｎｃｅ）９４を含む。
【００９０】
ＭＡＣ  ＤＡ９０は、イーサフレームの宛先を示すＭＡＣアドレスを含む。ＭＡＣ  ＳＡ９１は、イーサフレームの送信元を示すＭＡＣアドレスを含む。タイプ９２は、Ｌ２ペイロードの種類、又は、Ｌ２ペイロードの長さを示す。
【００９１】
Ｌ２ペイロード９３は、イーサフレームのデータ部である。ＦＣＳ９４には、フレームのエラーを検出するため値が格納される。拡張タグＶＬＡＮによる広域イーサネットの場合、ＭＡＣ  ＳＡ９１とタイプ９２の間にＳＴＡＧ９６とＣＴＡＧ９５とが挿入される。
【００９２】
図１において、Ａ社拠点２−１が有する各クライアント２０は、データセンタ１のＡ社の各サーバ１３（サーバ１３−１〜３）とそれぞれ異なる仮想ネットワークを利用して通信する。具体例として、図１において、クライアント２０−１とサーバ１３−１とは、Ａ社内における同一のＶＬＡＮに所属する。クライアント２０−１とサーバ１３−１とが通信する例を以下に説明する。
【００９３】
まず、クライアント２０−１は、サーバ１３−１に向けてイーサフレーム８０を送信する。Ａ社のＬＡＮスイッチ２１−１は、クライアント２０−１及びサーバ１３−１間のＶＬＡＮを一意に示す識別子を含むＶＬＡＮタグをイーサフレーム８０に挿入することによって、図４に示すイーサフレーム８１を生成する。このＶＬＡＮタグはＣＴＡＧと呼ばれる。
【００９４】
ここで、イーサフレーム８１のＶＬＡＮタグは、図３に示すイーサフレーム８１である。そして、Ａ社のＬＡＮスイッチ２１−１は、生成されたイーサフレーム８１を通信局舎３へ送信する。
【００９５】
広域イーサネットにおいて、拠点側のスイッチ（前述においてＡ社のＬＡＮスイッチ２１−１）において挿入されたＶＬＡＮタグは、ＣＴＡＧと呼ばれる。Ａ社のＬＡＮスイッチ２１−１は、図４に示すように、イーサフレーム８０のＭＡＣ  ＳＡ９１とタイプ９２との間にＣＴＡＧ９５を挿入する。
【００９６】
ＶＬＡＮタグ（ＣＴＡＧ）は、図４に示すように、１６ビットのＴＰＩＤ（Ｔａｇ  Ｐｒｏｔｏｃｏｌ  ＩＤｅｎｔｉｆｉｅｒ）３０と１６ビットのＴＣＩ（Ｔａｇ  Ｃｏｎｔｒｏｌ  Ｉｄｅｎｔｉｆｉｅｒ）３１とを含む。ＴＣＩ３１は、３ビットの優先度３２、１ビットのＣＦＩ３３、及び、１２ビットのＶＩＤ（ＶＬＡＮ  ＩＤｅｎｔｉｆｉｅｒ）３４を含む。
【００９７】
ＴＰＩＤ３０には、自らが含まれるタグがＶＬＡＮタグであることを示す識別子（例えば、０ｘ８１００）が含まれる。すなわち、ＣＴＡＧ９５に含まれるＴＰＩＤ３０は、ＣＴＡＧであることを示す。
【００９８】
ＶＩＤ３４は、自らが含まれるイーサフレーム８１が送受信されるＶＬＡＮのＶＬＡＮ（仮想ネットワーク）番号を示す。一般的に、ＶＩＤ＝０とＶＩＤ＝４０９５とは予約されているため、ＶＩＤ３４は、４０９４個のＶＬＡＮを示す識別子が含まれる。図３に示す例ではＣＴＡＧ９５のＶＩＤ３４を"Ｚ"としている。
【００９９】
通信局舎３がＡ社拠点２−１からイーサフレーム８１を受信した場合、エッジスイッチ１１−２は、テナントであるＡ社とＢ社とを識別するＶＬＡＮタグ（ＳＴＡＧ９６）を、イーサフレーム８１に挿入する。これによって、図４に示すイーサフレーム８２が生成される。図３に示すイーサフレーム８２は、イーサフレーム８２のＶＬＡＮタグである。エッジスイッチ１１−２は、生成されたイーサフレーム８２を、通信ノード装置１０−２を介してＷＡＮ４へ送信する。
【０１００】
広域イーサネットにおいて、通信局舎３において挿入されたＶＬＡＮタグはＳＴＡＧと呼ばれる。エッジスイッチ１１−２は、図４に示すように、イーサフレーム８１のＭＡＣ  ＳＡ９１とＣＴＡＧ９５との間にＳＴＡＧ９６を挿入する。
【０１０１】
ＳＴＡＧ９６は、前述のＣＴＡＧ９５と同様に、１６ビットのＴＰＩＤ３０と１６ビットのＴＣＩ３１とを含む。ＳＴＡＧ９６のＴＰＩＤ３０は、ＳＴＡＧを示す値であり、ＩＥＥＥ８０２．１ａｄの規定では、０ｘ８８ａ８である。ＳＴＡＧ９６のＴＰＩＤ３０は、ベンダによって、０ｘ９１００、０ｘ９２００、又は、０ｘ９３００を含んでもよい。図３に示すＳＴＡＧ９６の例では、ＶＩＤ３４を"Ａ"としている。
【０１０２】
なお、以下に記載される"ＳＴＡＧの値"は、ＳＴＡＧ９６のＶＩＤ３４の値を示す。
【０１０３】
データセンタ１がＷＡＮ４を介してイーサフレーム８２を受信し、通信事業者がイーサフレーム８２の宛先のテナントに通信サービスを提供しない場合、通信ノード装置１０−１は、受信したイーサフレーム８２をエッジスイッチ１１−１に転送する。
【０１０４】
なお、データセンタ１がＷＡＮ４を介してイーサフレーム８２を受信し、通信事業者がイーサフレーム８２の宛先のテナントにクラウド通信サービスを提供する場合の通信ノード装置１０の処理については後述する。
【０１０５】
エッジスイッチ１１−１は、イーサフレーム８２を受信した場合、テナント（顧客）であるＡ社とＢ社とを識別するため、ＳＴＡＧ９６によってイーサフレーム８２を送信するべきテナントを識別する。そして、エッジスイッチ１１−１は、イーサフレーム８２からＳＴＡＧ９６を削除することによって、図４に示すイーサフレーム８１を生成する。そして、ＳＴＡＧ９６によって識別されたテナント（顧客）のＬＡＮスイッチ１２に、生成されたイーサフレーム８１を送信する。
【０１０６】
ＬＡＮスイッチ１２−１は、エッジスイッチ１１−１からイーサフレーム８１を受信した場合、ＣＴＡＧ９５によって仮想ネットワークを識別する。そして、ＬＡＮスイッチ１２−１は、ＣＴＡＧ９５を削除することによって、図４に示すイーサフレーム８０を生成する。そして、ＬＡＮスイッチ１２−１は、ＣＴＡＧ９５によって識別された仮想ネットワークに対応するＡ社のサーバ１３−１へ、生成されたイーサフレーム８０を送信する。
【０１０７】
このように、テナント（顧客）間又はテナント内の仮想ネットワークを識別する必要がある装置（ＬＡＮスイッチ２１、ＬＡＮスイッチ１２、及び、エッジスイッチ１１−１、１１−２）は、ＣＴＡＧ９５及びＳＴＡＧ９６の付加及び削除を行うことによって各テナント間、又は、テナント内の仮想ネットワークを識別し、広域イーサネットの通信を実現することができる。
【０１０８】
次に、データセンタ１がＷＡＮ４を介してイーサフレーム８２を受信し、通信事業者がイーサフレーム８２の宛先のテナントにクラウド通信サービスを提供する場合の通信ノード装置１０−１の処理について記載する。
【０１０９】
通信ノード装置１０−１は、受信したイーサフレームに対して通信サービスを各テナントに提供する場合、イーサフレーム８２にタグ変換処理を実行し、タグ変換されたイーサフレームに対して通信サービスを各テナントに提供する。
【０１１０】
通信ノード装置１０−１は、仮想マシンが有する通信ポート（ＶＮＩＣ１２３、ＶＮＩＣ１３３）にイーサフレームを適切に送信するため、各仮想マシンが実行する通信サービスと、仮想マシンの各通信ポートとの組合せを一意に示す識別子を、イーサフレームに付加する。
【０１１１】
具体的には、図２及び図３に示す通信ノード装置１０−１は、Ａ社ファイアウォールサービスプログラム１２１とＶＮＩＣ１２３との組合せに一つの識別子、Ａ社ファイアウォールサービスプログラム１２１とＶＮＩＣ１２４との組合せに一つの識別子、Ａ社ＷＡＮ最適化サービスプログラム１３１とＶＮＩＣ１３３との組合せに一つの識別子、及び、Ａ社ＷＡＮ最適化サービスプログラム１３１とＶＮＩＣ１３４との組合せに一つの識別子の、合計四つの識別子を有する。
【０１１２】
本実施例において、通信ノード装置１０におけるこれらの識別子を含むタグを、ＬＴＡＧ（Ｌｏｃａｌ  ＴＡＧ：図３に示すＬＴＡＧ９７）と呼ぶ。ＬＴＡＧ９７は、異なる通信サービス、及び、異なる通信ポートとの間で重複しない識別子を含む。また、仮想ネットワーク毎に、イーサフレームに対して一連の通信サービスを提供するため、通信ノード装置１０は、ＳＴＡＧ９６を、ＬＴＡＧ９７に変換するための変換テーブル７０３を有する。
【０１１３】
ＬＴＡＧ９７を含むイーサフレームの形式を図４のイーサフレーム８３として示す。イーサフレーム８３は、イーサフレーム８２のＳＴＡＧ９６をＬＴＡＧ９７へ変換（置換）した形式である。ＬＴＡＧ９７は、通常のＶＬＡＮタグと同じフォーマットを有し、ＴＰＩＤ３０とＴＣＩ３１とのフィールドを含む。ＬＴＡＧ９７がＶＬＡＮタグと同じフォーマットであることによって、本実施例のネットワークシステムは、通信ノード装置１０、並びに、通信ノード装置１０に備わる内部スイッチ３００及び仮想スイッチ１９０に、特殊な技術を導入されることなく、通信ノード装置１０、内部スイッチ３００及び仮想スイッチ１９０によって、ＬＴＡＧ９７を含むイーサフレームを転送できる。
【０１１４】
なお、以下において記載される"ＬＴＡＧの値"は、ＬＴＡＧ９７のＶＩＤ３４の値を示す。
【０１１５】
ＬＴＡＧ９７のＴＰＩＤ３０の値は、各システムによってあらかじめ定められる。ＬＴＡＧ９７のＴＰＩＤ３０の値は、ＬＴＡＧ９７とＳＴＡＧ９６とを識別するため、ＳＴＡＧ９６のＴＰＩＤ３０の値とは異なる値が少なくとも定められる。
【０１１６】
また、ＬＴＡＧ９７のＴＰＩＤ３０の値は、ＩＰｖ４（ＴＰＩＤ＝０ｘ０８００）、ＩＰｖ６（ＴＰＩＤ＝０ｘ８６ＤＤ）、又は、ＡＲＰ（ＴＰＩＤ＝０ｘ０８０６）などの標準的なプロトコルによって利用されるＴＰＩＤとも異なる値が定められる。このため、従来規定されるＴＰＩＤ以外の値であれば、ＬＴＡＧ９７のＴＰＩＤ３０の値にはいかなる値が定められてもよい。例えば、ＬＴＡＧ９７のＴＰＩＤ３０の値は、ＴＰＩＤ＝０ｘ８１００でもよいし、ＳＴＡＧ９６として利用されていなければ０ｘ９１００又は０ｘ９２００などでもよいし、システムによって定められた特別な値でもよい。
【０１１７】
本実施例における通信ノード装置１０は、各仮想ネットワークにおいてイーサフレームが送受信される際、拡張タグＶＬＡＮ通信のイーサフレーム８２を横取りする。そして、通信ノード装置１０は、横取りしたイーサフレーム８２に、タグ変換処理を行い、タグ変換処理されたイーサフレームに対して、仮想マシンによって通信サービスを実行することによって、通信サービスを各テナントに提供する。
【０１１８】
通信ノード装置１０は、タグ変換処理において、前述の変換テーブル７０３を参照し、インタセプトされたイーサフレーム８２のＳＴＡＧ９６をＬＴＡＧ９７に変換（又は、置換）した後、仮想スイッチ１９０へイーサフレームを送信する。
【０１１９】
通信ノード装置１０の仮想スイッチ１９０がイーサフレームを受信した場合、イーサフレームを受信した仮想スイッチ１９０は、イーサフレームのＬＴＡＧ９７に対応する仮想マシンの通信ポート（ＶＮＩＣ）へ、イーサフレームを送る。通信ポートへイーサフレームを送る際、仮想スイッチ１９０は、イーサフレームのＬＴＡＧ９７を削除する。
【０１２０】
また、仮想マシン１２０がイーサフレームに対して通信サービスを実行した後、仮想マシン１２０の通信ポート（ＶＮＩＣ）は、イーサフレームを出力する。仮想スイッチ１９０は、仮想マシンから出力されたイーサフレームに、実行された通信サービスとその通信サービスが出力された通信ポートに対応するＬＴＡＧ９７を付加する。
【０１２１】
転送カード４００は、各仮想マシンによって通信サービスを実行されたイーサフレームを受信した場合、イーサフレームに付加されたＬＴＡＧ９７と、変換テーブルとに基づいて、イーサフレームのＬＴＡＧ９７をＳＴＡＧ９６に変換する。これによって、通信ノード装置１０は、仮想マシン１２０によって処理されたイーサフレームをイーサフレーム８２に変換し、イーサフレーム８２の宛先へ送信する。
【０１２２】
前述の流れによって、通信ノード装置１０は、イーサフレームが処理されるべき通信サービスを実行する仮想マシンの通信ポートに、インタセプトされたイーサフレームを転送できる。そして、通信ノード装置１０は、仮想ネットワークと通信サービスとを連携させることができる。
【０１２３】
具体的なタグの変換処理の例を、図３を用いて説明する。例における変換テーブル７０３は、以下の通りである。
【０１２４】
図３における変換テーブル７０３は、ＶＮＩＣ１２３に、ＶＩＤ３４を"Ｓ"としたＬＴＡＧ９７が割り当てられ、ＶＮＩＣ１２４に、ＶＩＤ３４を"Ｔ"としたＬＴＡＧ９７が割り当てられることを示す。また、変換テーブル７０３は、ＶＮＩＣ１３３に、ＶＩＤ３４を"Ｕ"としたＬＴＡＧ９７が割り当てられ、ＶＮＩＣ１３４に、ＶＩＤ３４を"Ｖ"としたＬＴＡＧ９７が割り当てられることを示す。また、変換テーブル７０３は、ＷＡＮ側から入力されたイーサフレーム８２が、ＶＩＤ３４が"Ａ"であるＳＴＡＧ９６を含む場合、ＳＴＡＧ９６をＶＩＤ３４が"Ｓ"であるＬＴＡＧ９７に変換することを示す。
【０１２５】
このような変換テーブル７０３は、前述のような値を含むことによって、ＷＡＮ側からＬＡＮ側へ送信されるイーサフレーム８２がインタセプトされ、かつ、イーサフレーム８２のＳＴＡＧ９６が"Ａ"を示す場合、インタセプトされたイーサフレーム８２に対して、Ａ社ファイアウォールサービスプログラム１２１、及び、Ａ社ＷＡＮ最適化サービスプログラム１３１の順番に、通信サービスが実行されることを示す。
【０１２６】
また、前述のような変換テーブル７０３である場合、図３に示す通信ノード装置１０−１において、イーサフレーム８２のＳＴＡＧ９６が、ＶＩＤ３４が"Ｓ"であるＬＴＡＧ９７に変換された結果であるイーサフレーム８３が生成される。イーサフレーム８３は、ＬＴＡＧ９７の値に従って仮想マシン１２０に送信され、仮想マシン１２０は、イーサフレーム８３に対して、Ａ社ファイアウォールサービスプログラム１２１を実行する。
【０１２７】
その後、仮想スイッチ１９０は、イーサフレーム８３に対してＶＩＤ３４が"Ｔ"であるＬＴＡＧを付加したイーサフレーム８４を出力する。出力されたイーサフレーム８４は、変換テーブル７０３に基づいて、ＬＴＡＧ９７のＶＩＤ３４が"Ｔ"から"Ｕ"に変換される。これによってイーサフレーム８５が生成される。
【０１２８】
そして、イーサフレーム８５は、ＶＩＤ３４として"Ｕ"が割り当てられたＶＮＩＣ１３３に送信される。イーサフレーム８５が仮想マシン１３０のＶＮＩＣ１３３に入力され、仮想マシン１３０がイーサフレーム８５の内容にＡ社ＷＡＮ最適化サービスプログラム１３１を実行した後、仮想マシン１２０−２は、イーサフレーム８５に対してＶＩＤ３４が"Ｖ"であるＬＴＡＧを付加したイーサフレーム８６を出力する。そして、イーサフレーム８６は、ＬＴＡＧ９７をＳＴＡＧ９６に変換されることによって、インタセプトされる前の拡張タグＶＬＡＮのイーサフレーム８２に変換される。
【０１２９】
その後、通信ノード装置１０−１は、イーサフレーム８２を、本来の宛先であるエッジスイッチ１１（ユーザ区間６−２）へ向けて送信する。前述の処理によって、通信ノード装置１０−１は、イーサフレーム８２の宛先であるテナントに通信サービスを提供する。
【０１３０】
ユーザ区間６−２から通信事業者区間７へイーサフレーム８２が送信される場合、通信ノード装置１０−１において、前述の変換処理の例と逆方向の処理が行われる。また、通信事業者区間７からユーザ区間６−１へイーサフレーム８２が送信される場合、通信ノード装置１０−２において、前述の変換処理と同じ方向の処理が行われる。
【０１３１】
また、ユーザ区間６−１から通信事業者区間７へイーサフレーム８２が送信される場合、通信ノード装置１０−２において、前述の変換処理と逆方向の処理が行われる。すなわち、通信ノード装置１０−１と通信ノード装置１０−２とは同じ機能を有する。
【０１３２】
また、Ａ社内の他のＶＬＡＮ（仮想ネットワーク）における通信、及び、Ｂ社内のＶＬＡＮ（仮想ネットワーク）における通信においても、前述の変換処理と同じ処理が行われる。
【０１３３】
なお、前述の変換処理において、ＳＴＡＧ９６をＬＴＡＧ９７に変換（又は、置換）する例を説明したが、図５に示すように、ＳＴＡＧ９６の外側にＬＴＡＧ９７を付加してもよい。
【０１３４】
図５は、本実施例のイーサフレーム８７の例を示す説明図である。
【０１３５】
通信ノード装置１０は、タグ変換処理において、イーサフレーム８２にＬＴＡＧ９７を挿入することによって、イーサフレーム８７を生成してもよい。この場合、変換テーブル７０３は、拡張ＶＬＡＮタグの先頭がＳＴＡＧ９６である場合、ＳＴＡＧ９６の隣にＬＴＡＧ９７を付加することを示す情報、又は、拡張ＶＬＡＮタグの先頭がＬＴＡＧ９７である場合、ＬＴＡＧ９７を別のＬＴＡＧ９７に置換するか又は削除することを示す情報を含む。
【０１３６】
図６は、本実施例のサービステーブル７００を示す説明図である。
【０１３７】
制御カード２００内のサービステーブル７００は、仮想ネットワーク毎に適用する通信サービス、及び、通信サービスに利用する通信ノード装置１０内の資源（例えば、仮想マシン等）を管理するためのテーブルである。サービステーブル７００は、テナントとの契約に従い通信事業者の管理者によって値が設定されるフィールドと、制御プログラム７０２によって値が設定されるフィールドとを含む。
【０１３８】
サービステーブル７００は、管理者によって値が設定されるフィールドに、例えば、テナント７１０、帯域７１１、サービス７１２、サービス品質（遅延度）７１３、割当コア７１４、及び、割当メモリ７１５を含む。
【０１３９】
テナント７１０には、各テナントを一意に識別する識別子が含まれる。テナント７１０には、各テナントの名称が含まれてもよい。帯域７１１は、各テナントが契約する通信帯域を示す。
【０１４０】
サービス７１２は、各テナントが利用する通信サービスを示す。サービス品質７１３は、各テナントが要求するサービス品質を示す。図６に示すサービス品質７１３は、遅延度がどの程度許容されるか否かを示す値を含む。
【０１４１】
割当コア７１４は、通信サービスを実行するためにプロセッサコア又はスレッドを割り当てる方法、及び、割り当てられるプロセッサコア又はスレッドの数を示す。割当メモリ７１５は、各テナントに割り当てられるメモリのサイズを示す。
【０１４２】
さらに、サービステーブル７００は、制御プログラム７０２によって値が設定されるフィールドに、例えば、ＳＴＡＧ７１６、ＬＴＡＧ７１７、ポート７１８、装置番号７１９、情報処理カード番号７２０、仮想マシン番号７２１、及び、ＶＮＩＣ情報７２２を含む。
【０１４３】
ＳＴＡＧ７１６は、各テナントに割り当てられたＳＴＡＧの識別子（ＳＴＡＧ９６のＶＩＤ３４の値に相当）を含む。ＳＴＡＧ７１６の値には、例えば、図１に示すエッジスイッチ１１においてテナントを識別するために用いられるＳＴＡＧ９６の値が含まれる。
【０１４４】
ＬＴＡＧ７１７は、通信サービス毎、かつ、通信ポート（ＶＮＩＣ）毎に割り当てられた識別子（ＬＴＡＧ９７のＶＩＤ３４の値に相当）を含む。
【０１４５】
ポート７１８は、ＬＴＡＧ７１７が示す値に割り当てられたＶＮＩＣの通信ポートを示す。図６に示すポート７１８は、ＶＮＩＣがＷＡＮ４に接続されるか、又は、ＬＡＮ５に接続されるかを示す値を含む。
【０１４６】
装置番号７１９は、通信ノード装置１０の識別子を含む。図６の例では、通信ノード装置１０を１台だけとしているため、装置番号７１９の識別子は１しか記載していないが、Ｎ台の通信ノード装置１０を利用する場合には、１〜Ｎの識別子が利用される。
【０１４７】
情報処理カード番号７２０は、各テナントに通信サービスを提供する仮想マシンを有する情報処理カード１００の識別子を含む。図６の例では、情報処理カード１００を１枚だけとしているため、情報処理カード番号７２０の識別子は１しか記載していないが、Ｎ枚の情報処理カード１００を利用する場合には、１〜Ｎの識別子が利用される。ＶＭ番号７２１は、各テナントに通信サービスを提供する仮想マシンの識別子を含む。
【０１４８】
ＶＮＩＣ情報７２２は、ＶＮＩＣの識別番号、仮想ＭＡＣアドレス、ＶＬＡＮモード、ＶＩＤ（ＶＬＡＮ番号）、及び、ゲストＯＳ用の仮想ＩＰアドレスなどを示す情報を含む。
【０１４９】
ＶＮＩＣ情報７２２におけるＶＬＡＮモードは、ＶＬＡＮタグを利用するか否かを示す値である。ＶＮＩＣ情報７２２におけるＶＬＡＮ番号は、ＶＬＡＮタグ用ポートとしてＶＮＩＣを利用する場合のＶＩＤを示す。
【０１５０】
本実施例の情報処理カード１００は、ＶＮＩＣをＶＬＡＮモードによって用いる。これによって、ＶＮＩＣとＶＬＡＮタグの識別子とが一意に対応付けられるため、本実施例の制御プログラム７０２は、ＶＮＩＣのＶＬＡＮ番号を、ＬＴＡＧのＶＩＤ３４と一致させることによって、サービステーブル７００のＬＴＡＧフィールド７１７のＶＩＤ３４の値とＶＮＩＣを示す識別子とを一意に対応付けることができる。
【０１５１】
また、これによって、内部スイッチ３００及び仮想スイッチ１９０は、ＶＬＡＮ番号によってイーサフレームを識別し、また、イーサフレームの送信先を特定する処理部は、イーサフレームのＬＴＡＧ９７を参照することによって、ＬＴＡＧ９７のＶＩＤ３４に対応するＶＮＩＣに、イーサフレームを送信できる。同様に、内部スイッチ３００及び仮想スイッチ１９０は、イーサフレームのＬＴＡＧ９７を参照することによって、ＶＮＩＣ情報７２２が示すＶＮＩＣを経由して仮想マシンにイーサフレームを送信することができ、ゲストＯＳ上で動く通信サービスで該当イーサフレームに対する処理を実行することができる。
【０１５２】
なお、サービステーブル７００は、各テナント内で同じ通信サービスを適用することを示す値を必ずしも保持する必要はない。例えば、サービステーブル７００は、利用部署毎に、又は、利用者毎に、異なる数又は異なる種類の通信サービスを保持してもよい。この場合、サービステーブル７００は、図６に示すＳＴＡＧ７１６の他に、ＣＴＡＧ、送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート、宛先ポート、及び、プロトコルなどをテナント内の通信の識別子の一部として保持してもよい。ＣＴＡＧとは、ＣＴＡＧ９５のＶＩＤ３４の値であり、テナント内で利用するＣ−ＶＬＡＮを特定する識別子である。
【０１５３】
情報処理カード１００のプロセッサ１１０は、一般的な方法として、通信サービスのプログラムによって、受信したイーサフレームがいずれのテナントのいずれの利用者によって送信されたイーサフレームかを判定し、判定の結果に従って、いずれの通信サービスをイーサフレームに適用するか否かを判定してもよい。このような方法を用いた場合、転送カード４００は、イーサフレームを送信する必要がない通信サービスのプログラムに向けてイーサフレームを送信する可能性があり、通信サービスのプログラムにおける負荷も高くなっていた。
【０１５４】
しかし、本実施例の転送カード４００におけるタグ変換部４１７は、サービステーブル７００に基づいて生成された変換テーブル７０３を用い、いずれの通信サービスをイーサフレームに適用するかを示す情報をイーサフレームに付加する。このため、転送カード４００は、通信サービスを実行するプロセッサ１１０上の仮想マシンに対して必要最小限のイーサフレームだけを転送すればよい。そして、これによって、仮想マシンの負荷が低減される。
【０１５５】
図７は、本実施例の資源管理テーブル７０１を示す説明図である。
【０１５６】
制御カード２００内の資源管理テーブル７０１は、通信ノード装置１０において利用される各種の資源の搭載量、及び、割り当てられていない資源量（割当残量）を管理するためのフィールドと、各ＶＮＩＣに割当て済みのＬＴＡＧ９７のＶＩＤ３４を管理するためのフィールドとを含むテーブルである。
【０１５７】
資源管理テーブル７０１は、資源を管理するためのフィールドに、情報処理カード番号７４０、搭載コア数（搭載スレッド数）７４１、搭載メモリ量７４２、割当済み専有コア数７４３、割当済み共有コア数７４４、及び、割当済みメモリ量７４５を含む。
【０１５８】
情報処理カード番号７４０は、情報処理カード１００の識別子を含む。搭載コア数７４１は、各情報処理カード１００のプロセッサ１１０が、仮想マシンに割り当てるために有するプロセッサコアの数又はスレッドの数を示す。
【０１５９】
搭載メモリ量７４２は、各情報処理カード１００の揮発性メモリ１１２が、仮想マシンに割り当てるために有する記憶領域のサイズを示す。
【０１６０】
割当済み専有コア数７４３は、仮想マシンに専有状態で既に割り当てられたプロセッサコアの数又はスレッドの数を示す。割当済み共有コア数７４４は、複数の仮想マシンによって共有して使用される状態（共有状態）で既に割り当てられたプロセッサコアの数又はスレッドの数を示す。割当済みメモリ量７４５は、仮想マシンに割当て済みの記憶領域のサイズを示す。
【０１６１】
このため、割当済み専有コア数７４３の値と割当済み共有コア数７４４の値との和を、搭載コア数７４１から減算した値が、プロセッサコア（又はスレッド）の残量である。また、割当済みメモリ量７４５の値を、搭載メモリ量７４２から減算した値が、メモリの残量である。
【０１６２】
また、資源管理テーブル７０１は、ＶＮＩＣに割当て済みのＬＴＡＧ９７のＶＩＤ３４を管理するためのフィールドとして、通信ノード装置番号７５０、未使用ＬＴＡＧ７５１、及び、未使用ＬＴＡＧ数７５２を含む。通信ノード装置番号７５０は、通信ノード装置１０を一意に示す識別子である。
【０１６３】
未使用ＬＴＡＧ７５１は、通信ノード装置番号７５０が保持するＬＴＡＧ９７のＶＩＤ３４の候補のうち未割当てのＶＩＤ３４の値を保持する。未使用ＬＴＡＧ数７５２は、未割当てのＬＴＡＧ９７のＶＩＤ３４の候補の数（すなわち、ＬＴＡＧの残り数）を示す。
【０１６４】
図３に示すタグ変換処理を行う場合、制御プログラム７０２は、１個のＳＴＡＧに対して、２個以上のＬＴＡＧを割り当てることが必要である。このため、ＬＴＡＧの総数をＳＴＡＧの総数と同じ数（例えば、約４０００）にした場合、すべてのＳＴＡＧのパターンに割り当てるべきＬＴＡＧの数は不足する。
【０１６５】
一方で、１台の通信ノード装置１０が有する物理的な資源量を考慮した場合、ＳＴＡＧの総数と同じ数（例えば、約４０００）のＬＴＡＧを１台の通信ノード装置１０が収容できれば十分な場合が多い。また、例えば、資源管理テーブル７０１がＳＴＡＧの総数の４倍などのＬＴＡＧを保持した場合、無駄なＬＴＡＧ９７のＶＩＤ３４の候補を保持することになる場合が多い。
【０１６６】
そこで、資源管理テーブル７０１が通信ノード装置１０毎に、ＳＴＡＧ９６の数と同じ数、例えば約４０００の、ＬＴＡＧ９７のＶＩＤ３４の候補を保持することによって、本実施例の制御プログラム７０２は、ＳＴＡＧすべてにＬＴＡＧを割り当てることが可能である。
【０１６７】
なお、一つの通信ノード装置１０が有する複数の情報処理カード１００を少なくとも一つのブロックに分割し、資源管理テーブル７０１がブロック毎にＳＴＡＧ９６の数と同じ数、例えば約４０００の、ＬＴＡＧ９７のＶＩＤ３４の候補を保持してもよい。
【０１６８】
また、本実施例の通信ノード装置１０は、複数の情報処理カード１００を備えてもよく、複数の通信ノード装置１０と相互に接続されてもよい。これによって、管理者は、仮想マシンを実行するための情報処理カード１００を容易に増減できる。
【０１６９】
図８は、本実施例の変換テーブル７０３を示す説明図である。
【０１７０】
変換テーブル７０３は、サービステーブル７００の内容に基づいて生成され、通信サービスの適用順番、相互に変換されるＬＴＡＧ及びＳＴＡＧの値、イーサフレームを転送すべきＶＮＩＣを示す値（すなわち、ＬＴＡＧの値）、並びに、通信サービスの種類を示すテーブルである。変換テーブル７０３は、制御プログラム７０２によって、揮発性メモリ４１２、及び、揮発性メモリ１１２に格納される。これによって、転送カード４００上のタグ変換部４１７、及び、情報処理カード１００上のタグ変換部１１７は、イーサフレームにタグ変換処理等を実行できる。
【０１７１】
変換テーブル７０３は、入力されたイーサフレームを検索するためのフィールドとして、ＩＮ  ＴＡＧ４０、及び、ＩＮ  ＰＯＲＴ４１を含む。また、変換テーブル７０３は、ＯＵＴ  ＴＡＧ５０、ＯＵＴ  ＰＯＲＴ５１、及び、ＳＥＲＶＩＣＥ５２を含む。
【０１７２】
ＩＮ  ＴＡＧ４０は、拡張タグＶＬＡＮのイーサフレームに付加されたタグのうち最も先頭方向に付加されたタグを示す値（ＴＰＩＤ３０及びＶＩＤ３４の値）を含む。
【０１７３】
ＩＮ  ＰＯＲＴ４１は、イーサフレームの入力元を示す。図８に示す変換テーブル７０３において、"ＷＡＮ"はＷＡＮ４を示し、"ＬＡＮ"はＬＡＮ５を示し、"ＣＡＲＤ"は情報処理カード１００を示す。
【０１７４】
ＩＮ  ＴＡＧ４０が示すイーサフレームがＩＮ  ＰＯＲＴ４１が示す入力元から入力された場合、タグ変換部４１７及びタグ変換部１１７は、ＯＵＴ  ＴＡＧ５０に示すタグにイーサフレームのタグを変換し、ＯＵＴ  ＰＯＲＴ５１が示す出力先にイーサフレームを出力する。これによって、タグ変換部４１７及びタグ変換部１１７は、イーサフレームに、ＳＥＲＶＩＣＥ５２が示す通信サービスを実行させる。
【０１７５】
なお、ＳＥＲＶＩＣＥ５２が"ＮＯＮＥ"を示す変換テーブル７０３のエントリは、通信サービスを適用せずにタグ変換部４１７が通信ノード装置１０からイーサフレームを出力することを示す。
【０１７６】
図８に示す変換テーブル７０３は、Ａ社（テナントＡ）用のタグ変換ルール６０、Ｂ社（テナントＢ）用のタグ変換ルール６１を含む。また、エントリ７６２〜７６６を含む。
【０１７７】
例えば、ＳＴＡＧ９６のＶＩＤ３４が"０ｘ０００Ａ"であるイーサフレームがＷＡＮ４に接続された通信ポートから入力された場合、タグ変換部４１７は、変換テーブル７０３のエントリ７６２に従って、イーサフレームのＳＴＡＧ９６をＶＩＤ３４が"０ｘ００１Ａ"であるＬＴＡＧ９７に変換する。
【０１７８】
そして、タグ変換部４１７は、タグを変換されたイーサフレームを、本来の拡張タグＶＬＡＮ通信の出力先ではなく、ＣＡＲＤ＃１が示す出力先に向けて転送する。ここで、イーサフレームを転送される情報処理カード１００は、通信サービスとしてファイアウォール（ＦＷ）を提供する。
【０１７９】
なお、変形例として、変換テーブル７０３は、テナント毎に通信サービスの値を保持しなくてもよく、利用部署毎、又は、利用者毎に、異なる数又は異なる種類の通信サービスの値を保持してもよい。その場合、変換テーブル７０３は、ＩＮ  ＴＡＧ４０のフィールドに、ＳＴＡＧ及びＬＴＡＧの他に、ＣＴＡＧ、送信元ＩＰアドレス、宛先ＩＰアドレス、送信元ポート、宛先ポート、又は、プロトコルなどを示す値を含んでもよい。そして、変換テーブル７０３は、ＩＮ  ＴＡＧ４０がＣＴＡＧ等であるエントリのＯＵＴ  ＴＡＧ５０にＬＴＡＧを示す値を保持してもよい。
【０１８０】
このような変換テーブル７０３の変形例を用いることによって、通信事業者は、例えば、Ａ社（テナントＡ）における特定のＶＬＡＮ内の通信のみにファイアウォールのサービスとＷＡＮ最適化サービスとを提供し、Ａ社における残りのＶＬＡＮにおける通信にはファイアウォールの通信サービスのみを提供することができる。
【０１８１】
図９は、本実施例の通信サービスを追加、更新、又は削除する処理を示すフローチャートである。
【０１８２】
制御プログラム７０２は、通信事業者の管理者等から管理端末９００を介して、通信サービスの追加要求、更新要求及び削除要求を入力された場合、サービステーブル７００及び変換テーブル７０３を更新する。図９は、通信ノード装置１０が起動してから、通信ノード装置１０に通信サービスが追加され、通信サービスが更新され、さらに、通信ノード装置１０から通信サービスが削除される処理を示す。
【０１８３】
通信事業者の管理者等は、通信ノード装置１０の外部に置かれる管理端末９００を利用して通信ノード装置１０を起動する。通信ノード装置１０が起動された場合（Ｓ６０１）、制御カード２００の制御プログラム７０２は、情報処理カード１００のプロセッサ１１０へ、不揮発性メモリ１１３から揮発性メモリ１１２上へブートイメージ７０４を読み出すよう、指示する（Ｓ６０２）。
【０１８４】
なお、Ｓ６０２における情報処理カード１００には、仮想マシン１２０、仮想マシン１３０、仮想マシン１４０、仮想マシン１５０、及び、仮想スイッチ１９０は実装されていない。
【０１８５】
図１０は、本実施例のブートイメージ７０４を示すブロック図である。
【０１８６】
ブートイメージ７０４は、情報処理カード１００に仮想マシン及び仮想スイッチ等を実装するためのプログラムである。
【０１８７】
本実施例において不揮発性メモリ１１３は、ブートイメージ７０４をあらかじめ含む。しかし、不揮発性メモリ１１３は、通信ノード装置１０に接続される、例えば、管理端末９００等のシステムから送信されたブートイメージ７０４を、保持してもよい。
【０１８８】
また、管理者が、ブートイメージ７０４を格納された記憶媒体（例えば、フラッシュメモリ、又は、ＳＤカード）を通信ノード装置１０に認識させ、認識された記憶媒体から不揮発性メモリ１１３へブートイメージ７０４を移動させてもよい。また、通信ノード装置１０は、認識された記憶媒体を不揮発性メモリ１１３として用いてもよい。
【０１８９】
ブートイメージ７０４は、仮想化ソフトウェア７０５、ＯＳ７０６、及び、デバイスドライバ７０７を含む。
【０１９０】
ＯＳ７０６は、仮想化ソフトウェア７０５によって仮想マシン等を実装する処理を、プロセッサ１１０及びチップセット１１１等の情報処理カード１００の物理的なデバイスに実行させるためのオペレーティングシステムである。デバイスドライバ７０７は、仮想化ソフトウェア７０５によって実装される仮想マシンが、通信サービスを実行するために揮発性メモリ１１２及びネットワークインタフェース等のデバイスを用いるための各デバイスに対応するデバイスドライバである。
【０１９１】
仮想化ソフトウェア７０５は、仮想マシン及び仮想スイッチを情報処理カード１００に実装するためのプログラムである。仮想化ソフトウェア７０５は、仮想スイッチ１９０と仮想マシンテンプレート１８０とを含む。
【０１９２】
仮想マシンテンプレート１８０は、仮想マシンを実装するためのプログラムを含む。ただし、仮想マシンテンプレート１８０には、仮想マシン１２０、仮想マシン１３０、仮想マシン１４０、及び仮想マシン１５０等の、テナントごとに設定された仮想マシンをそのまま実装するためのプログラムは含まれず、各仮想マシンを実装するために共通して用いられる通信サービスのサービスプログラムが含まれる。
【０１９３】
仮想マシンテンプレート１８０は、少なくとも一つのサービスプログラム１８１、ゲストＯＳ１８２、ＶＮＩＣ１８３、ＶＮＩＣ１８４、及びＶＮＩＣ１８５を含む。図１０に示す仮想マシンテンプレート１８０は、サービスプログラム１８１−１〜サービスプログラム１８１−Ｎ（Ｎは任意の正数）を含む。
【０１９４】
サービスプログラム１８１は、通信サービスを実行するためのアプリケーションプログラムである。例えば、サービスプログラム１８１は、ファイアウォールサービス、ＷＡＮ最適化サービス、及び、ＩＤＳサービス等の複数の通信サービスのうち、いずれか一つの通信サービスを実行するためのプログラムであってもよい。
【０１９５】
ゲストＯＳ１８２は、プロセッサ１１０及びチップセット１１１等の情報処理カード１００の物理的なデバイスに、仮想マシンによる処理を実行させるためのオペレーティングシステムである。
【０１９６】
ＶＮＩＣ１８５は、制御用の仮想ネットワークインタフェースを実装するためのプログラムである。ＶＮＩＣ１８３及びＶＮＩＣ１８４は、通信サービス用の仮想ネットワークインタフェースを実装するためのプログラムである。
【０１９７】
通信サービス用の仮想ネットワークインタフェースは、通信サービスを提供するサービスプログラムに仮想スイッチから送信されたイーサフレームを入力し、かつ、通信サービスを提供するサービスプログラムから出力されるイーサフレームを仮想スイッチへ転送する仮想ネットワークインタフェースである。ここで、通信サービス用の仮想ネットワークインタフェースは、図２に示すＶＮＩＣ１２３、１２４、１３３、１３４、１４３、１４４、及び１５３に相当する。
【０１９８】
このため、例えば、ＶＮＩＣ１８３は、ＬＡＮ５側の仮想ネットワークインタフェースとしてあらかじめ設定され、かつ、ＶＮＩＣ１８４は、ＷＡＮ４側の仮想ネットワークインタフェースとしてあらかじめ設定されてもよい。また、管理者は、ＶＮＩＣ１８３及びＶＮＩＣ１８４を、双方向通信における仮想ネットワークインタフェースとして、あらかじめ設定してもよい。
【０１９９】
また、片方向の通信（例えば、ＷＡＮ４側からＬＡＮ５側への方向のみの通信）のみに実行される通信サービスを実装するため、管理者等は、ＶＮＩＣ１８３及びＶＮＩＣ１８４を、片方向の通信サービス用の仮想ネットワークインタフェースとしてあらかじめ設定してもよい。
【０２００】
なお、本実施例において実装される仮想マシンは、処理するイーサフレームのヘッダが示す属性に従って仮想マシンからの出力を分割するため、三つ以上の仮想ネットワークインタフェースを含んでもよい。
【０２０１】
例えば、テナントＡにおいて適用される運用が、設計部署に所属するユーザに送信されるイーサフレームには、ファイアウォールサービスが提供された後、ＷＡＮ最適化サービスが提供される運用であり、かつ、設計部署以外の部署のユーザに送信されるイーサフレームには、ファイアウォールサービスのみが提供され、ファイアウォール以外の通信サービスは提供されない運用である場合を示す。
【０２０２】
この運用における、テナントＡのファイアウォールサービスを提供する仮想マシンには、通信サービス用の三つの仮想ネットワークインタフェースが含まれる。具体的には、この運用における、テナントＡのファイアウォールサービスを実行する仮想マシンは、ＷＡＮ４側の通信サービス用の仮想ネットワークインタフェースである一つのＶＮＩＣ１８４を含み、かつ、ＬＡＮ５側の通信サービス用の仮想ネットワークインタフェースである二つのＶＮＩＣ１８３を含んでもよい。そして、この運用における、テナントＡのファイアウォールサービスは、宛先のユーザに従って、出力する先のＶＮＩＣを決定するように設定されてもよい。
【０２０３】
このような、イーサフレームのヘッダの属性に従った、仮想ネットワークインタフェースの設定は、通信サービスの追加要求を受信した際の処理（後述する図１１のＳ６１５）において、実行される。
【０２０４】
制御用の仮想ネットワークインタフェースは、仮想マシンが実装された後、仮想マシンに含まれるゲストＯＳ、及び、通信サービスのサービスプログラムの設定を、管理者等が変更するためのインタフェースである。このため、一つの仮想マシンには、一般的に制御用の一つ仮想ネットワークインタフェースが含まれる。ただし、通信サービス用の仮想ネットワークインタフェースによって、仮想マシンの設定を変更できる場合、仮想マシンは、制御用の仮想ネットワークインタフェースを含まなくてもよい。
【０２０５】
なお、図２に示す仮想マシン１２０、仮想マシン１３０、仮想マシン１４０、及び、仮想マシン１５０には、制御用の仮想ネットワークインタフェースは図示されない。
【０２０６】
ブートイメージ７０４の仮想マシンテンプレート１８０には、テナントごとに通信サービスを提供するためのテナントごとに設定されたプログラムは含まれない。このため、テナントごとに設定されたプログラムを含むブートイメージの容量よりも、本実施例のブートイメージ７０４の容量は少ない。これによって、本実施例のブートイメージ７０４は、不揮発性メモリ１１３に格納されることができる。
【０２０７】
Ｓ６０２においてブートイメージ７０４が揮発性メモリ１１２に読み出された後、制御プログラム７０２は、仮想化ソフトウェア７０５を起動する。これによって、仮想マシンテンプレート１８０及び仮想スイッチ１９０が起動される（Ｓ６０３）。
【０２０８】
Ｓ６０３の後、制御プログラム７０２は、起動された仮想マシンテンプレート１８０及び仮想スイッチ１９０に、情報処理カード１００の資源を割り当てる（Ｓ６０４）。ここで割り当てられる資源は、仮想マシンに最低限必要な資源である。
【０２０９】
具体的には、制御プログラム７０２は、Ｓ６０４において、仮想マシンテンプレート１８０を仮想マシンとして起動させるために最低限必要なメモリ及びプロセッサコアを、仮想マシンテンプレート１８０及び仮想スイッチ１９０に割り当てる。また、制御プログラム７０２は、最低限必要な、仮想ＭＡＣアドレス及び仮想ＩＰアドレス、並びに、ＶＬＡＮ等のネットワークに関するパラメータをＶＮＩＣ１８３〜１８５及び仮想スイッチ１９０の各々に設定する。
【０２１０】
Ｓ６０４において、ＶＮＩＣ１８３及び１８４は、通信サービス用の仮想ネットワークインタフェースとして設定され、また、ＶＮＩＣ１８５は、制御用の仮想ネットワークインタフェースとして設定される。
【０２１１】
また、制御プログラム７０２は、Ｓ６０４において、サービスプログラム１８１の内容に従って、資源を設定してもよい。例えば、制御プログラム７０２は、仮想マシンテンプレート１８０にＷＡＮ最適化サービスのサービスプログラム１８１が含まれる場合、仮想マシンテンプレート１８０に最低限のセッション数を設定してもよい。また、例えば、制御プログラム７０２は、仮想マシンテンプレート１８０にファイアウォールサービスのサービスプログラム１８１が含まれる場合、仮想マシンテンプレート１８０に、ファイアウォールによって通過させないメールの最低限の条件等を設定してもよい。
【０２１２】
なお、制御プログラム７０２は、後述する通信サービスの追加要求時に仮想マシンテンプレート１８０に十分に資源を割り当てれば、Ｓ６０４において仮想マシンテンプレート１８０及び仮想スイッチ１９０にすべての資源を割り当てなくてもよい。ただし、制御プログラム７０２は、Ｓ６０４において、仮想マシンテンプレート１８０及び仮想スイッチ１９０に、相互に通信するためのパラメータを最低限設定する。
【０２１３】
Ｓ６０４によって、通信サービスの追加要求を受信した際の処理において、制御プログラム７０２は、同じ設定がなされた仮想マシンテンプレートを複製することができる。そして、制御プログラム７０２は、複製された仮想マシンテンプレートを仮想マシンとして設定する処理の負荷を、低減することができる。
【０２１４】
また、Ｓ６０４において複製元の仮想マシンテンプレートに仮想ネットワークインタフェース等が設定されているため、複製された複数の仮想マシンテンプレート１８０には、ネットワークに関する情報がすべて同じく設定される。このため、仮想マシンテンプレート１８０を、後述のＳ６０５において停止（無効）状態にした後においても、制御プログラム７０２は、複製された複数の仮想マシンテンプレート１８０のすべてと通信できる。
【０２１５】
Ｓ６０４の後、制御プログラム７０２は、仮想マシンテンプレート１８０を無効化する（Ｓ６０５）。本実施例における、仮想マシンテンプレート１８０の無効化とは、通信サービスを提供しない状態である。より具体的には、仮想マシンテンプレート１８０の無効化とは、仮想マシンテンプレート１８０の稼働が停止された状態を示す。
【０２１６】
Ｓ６０５の後、制御プログラム７０２は、通信サービスの追加要求、更新要求、又は、削除要求を示す通信サービスに関する要求が、管理端末９００から入力されるか否かを判定する（Ｓ６０６）。通信サービスに関する要求を受信しない場合、制御プログラム７０２は、あらかじめ定められた十分に短い時間間隔でＳ６０６を繰り返すことによって、通信サービスに関する要求を受信するまで待つ。
【０２１７】
ここで、揮発性メモリ１１２は、Ｓ６０６が繰り返される間、停止された仮想マシンテンプレート１８０を保持する。これは、制御プログラム７０２が、通信サービスに関する要求を受信し、テナントに新規の通信サービスを提供する場合、揮発性メモリ１１２に保持される仮想マシンテンプレート１８０を高速に複製するためである。
【０２１８】
また、揮発性メモリ１１２において、一つの仮想マシンテンプレート１８０を保持するための容量は、テナントごとに設定された仮想マシンを保持するための容量よりも少ない。このため、仮想マシンテンプレート１８０を用いて仮想マシンを実装する方法は、揮発性メモリ１１２において使用される容量を低減できる。
【０２１９】
なお、前述の通り、仮想マシンテンプレート１８０を揮発性メモリ１１２が保持することによって、制御プログラム７０２は、通信サービスを追加する際、すなわち、通信サービスを提供する仮想マシンを実装する際に、仮想マシンテンプレート１８０を高速に複製できる。一方で、揮発性メモリ１１２は、仮想マシンテンプレート１８０を保持するためのメモリ資源を、他のデータの記憶、及び、他の処理に用いることができない。
【０２２０】
このため、揮発性メモリ１１２のメモリ資源を少しでも多く、稼働している仮想マシンの処理、又は、その他の処理のために利用させたい場合、制御プログラム７０２は、Ｓ６０５の後、停止させた仮想マシンテンプレート１８０を不揮発性メモリ１１３へ格納してもよい。そして、制御プログラム７０２は、揮発性メモリ１１２に保持されていた仮想マシンテンプレート１８０を削除してもよい。この場合、通信サービスの追加要求を受信した後、制御プログラム７０２は、不揮発性メモリ１１３から仮想マシンテンプレート１８０を複製する。
【０２２１】
通信事業者の管理者等によって、通信ノード装置１０に接続される管理端末９００を介して、テナントに提供する通信サービスの追加、更新、又は、削除を示す通信サービスに関する要求が、Ｓ６０６において入力されたと判定される場合、通信ノード装置１０は、Ｓ６１０を実行する。
【０２２２】
図１１は、本実施例の通信サービスを追加する処理を示すフローチャートである。
【０２２３】
制御カード２００の制御プログラム７０２は、管理端末９００から入力された要求が通信サービスの追加要求であるか否かを判定する（Ｓ６１１）。管理端末９００から入力された要求が通信サービスの追加要求ではない場合、制御プログラム７０２は、図１１に示す処理を終了する。
【０２２４】
管理端末９００から入力された要求が通信サービスの追加要求であると判定された場合、制御カード２００の制御プログラム７０２は、資源管理テーブル７０１を参照して、追加要求が示す通信サービスを実行する仮想マシンに割り当てる資源（プロセッサコア数、メモリ量、及び、ＬＴＡＧ７１７の値）を、確保できるか否か判定する（Ｓ６１２）。
【０２２５】
また、制御プログラム７０２は、転送カード４００（４００−１、４００−２）から通信帯域に関する情報を取得し、通信サービスの追加要求が示す帯域７１１の値の通信帯域を新たに確保できるか否かを、取得された情報に基づいて判定してもよい。また、資源管理テーブル７０１が、通信ノード装置１０の通信帯域に関する値を保持する場合、制御プログラム７０２は、仮想マシンに割り当てる資源として、追加要求が示す通信帯域を確保できるか否かを資源管理テーブル７０１に基づいて判定してもよい。
【０２２６】
なお、ここで、管理端末９００から入力された追加要求には、追加する通信サービスを利用するテナントの識別子（テナント７１０の値）と、追加する通信サービスの識別子（サービス７１２の値）とが含まれる。さらに、管理端末９００から入力された追加要求には、追加する通信サービスに対応する、帯域７１１、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５の値が含まれる。
【０２２７】
資源を確保できないとＳ６１２において判定された場合、制御プログラム７０２は、管理端末９００へ資源が不足していることを通知し（Ｓ６２０）、図１１に示す通信サービスを追加する処理を終了する。
【０２２８】
資源を確保できるとＳ６１２において判定された場合、制御プログラム７０２は、揮発性メモリ１１２に保持された（または、不揮発性メモリ１１３に保持された）仮想マシンテンプレート１８０を、揮発性メモリ１１２において一つ複製する（Ｓ６１３）。
【０２２９】
Ｓ６１３の後、制御プログラム７０２は、仮想マシンテンプレート１８０から複製された仮想マシンテンプレートを起動する（Ｓ６１４）。ここで、複製元の仮想マシンテンプレート１８０は、揮発性メモリ１１２又は不揮発性メモリ１１３に保持される。これによって、制御プログラム７０２は、通信サービスの追加要求を受信する毎に、複製元の仮想マシンテンプレート１８０から、仮想マシンテンプレートを複製できる。
【０２３０】
Ｓ６１４の後、制御プログラム７０２は、起動された仮想マシンテンプレートに、追加要求が示す通信サービスを実行するための仮想マシンとしてのパラメータ等を設定する（Ｓ６１５）。具体的には、制御プログラム７０２は、Ｓ６１２において確保された資源を用いて、複製された仮想マシンテンプレートに、追加要求が示すプロセッサのコア、及び、メモリを割り当てる。
【０２３１】
さらに、制御プログラム７０２は、Ｓ６１５において、複製された仮想マシンテンプレートにおいて、必要なＶＮＩＣを追加し、必要のないＶＮＩＣを削除する。例えば、追加要求が示すテナントに提供する通信サービスが、通信サービス用の三つの仮想ネットワークインタフェースが必要であり、かつ、仮想マシンテンプレートには通信サービス用の二つの仮想ネットワークインタフェースのみが含まれる場合、制御プログラム７０２は、通信サービス用の仮想ネットワークインタフェースを、複製された仮想マシンテンプレートに追加する。
【０２３２】
また、制御プログラム７０２は、Ｓ６１５において、複製された仮想マシンテンプレートのＶＮＩＣ１８３及び１８４（通信サービス用の仮想ネットワークインタフェース）に、Ｓ６１２において確保されたＬＴＡＧ用の値をＶＬＡＮ番号として設定したり、仮想ＭＡＣアドレス及び仮想ＩＰアドレスを設定したりする。
【０２３３】
また、例えば、制御プログラム７０２は、複製された仮想マシンテンプレートに含まれるＶＮＩＣ１８５（制御用の仮想ネットワークインタフェース）に、あらかじめ定められた制御用の仮想ＭＡＣアドレスを設定する。これによって、実装された後の仮想マシンの設定を管理者が変更することができる。
【０２３４】
なお、制御用の仮想ネットワークインタフェースが複製された仮想マシンテンプレートに含まれていない場合、制御プログラム７０２は、複製された仮想マシンテンプレートに制御用の仮想ネットワークインタフェースを追加する。
【０２３５】
また、制御プログラム７０２は、Ｓ６１５において、情報処理カード１００のチップセット１１１、転送カード４００のＮＰ・チップセット４１０に、Ｓ６１２において確保された通信帯域を設定する。また、制御プログラム７０２は、追加要求が示す通信サービスに対応するサービスプログラム１８１に、追加要求が示すテナントに従ったパラメータを設定してもよい。
【０２３６】
Ｓ６１５によって、複製された仮想マシンテンプレートに含まれるプログラムが、追加要求が示す通信サービスを提供するための仮想マシンとして設定される。
【０２３７】
Ｓ６１５の後、制御プログラム７０２は、資源管理テーブル７０１及びサービステーブル７００を更新する（Ｓ６１６）。
【０２３８】
具体的には、制御プログラム７０２は、Ｓ６１６において、通信サービスを提供する仮想マシンに割り当てられた資源（プロセッサコア数、及び、メモリ量）の数を、仮想マシンが起動された情報処理カード１００を示す資源管理テーブル７０１のエントリの、割当済み専有コア数７４３、割当済み共有コア数７４４、及び、割当済みメモリ量７４５に加算する。
【０２３９】
そして、制御プログラム７０２は、Ｓ６１６において、Ｓ６１２において確保されたＬＴＡＧの値を、資源管理テーブル７０１の未使用ＬＴＡＧ７５１（Ｓ５０１において起動された通信ノード装置１０を示すエントリの未使用ＬＴＡＧ７５１）から削除する。
【０２４０】
さらに、制御プログラム７０２は、Ｓ６１６において、サービステーブル７００の新たなエントリにおいて、テナント７１０、帯域７１１、サービス７１２、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５に、管理端末９００から入力された追加要求が示す値を格納する。
【０２４１】
また、制御プログラム７０２は、Ｓ６１６において、通信サービスの追加要求が示すテナント７１０の値に基づいて、ＳＴＡＧの値を取得する。なお、制御プログラム７０２は、テナント７１０の値に基づいて、エッジスイッチ１１からＳＴＡＧの値を取得してもよい。
【０２４２】
そして、制御プログラム７０２は、Ｓ６１６において、取得されたＳＴＡＧの値、確保されたＬＴＡＧの値、及び、Ｓ６１５において設定された仮想マシンに関する値を、サービステーブル７００の新たなエントリのＳＴＡＧ７１６、ＬＴＡＧ７１７、ポート７１８、装置番号７１９、情報処理カード番号７２０、仮想マシン番号７２１、及び、ＶＮＩＣ情報７２２に格納する。以上によって、サービステーブル７００、及び、資源管理テーブル７０１の更新が完了する。
【０２４３】
Ｓ６１６の後、制御プログラム７０２は、設定された仮想マシンに含まれる一つ以上のサービスプログラム１８１の中から、受信した追加要求が示す通信サービス（サービス７１２に相当）に相当するサービスプログラム１８１のみを有効化する（Ｓ６１７）。具体的には、制御プログラム７０２は、追加要求が示す通信サービスに相当するサービスプログラム１８１以外のサービスプログラム１８１を停止させる。
【０２４４】
Ｓ６１７によって、複製された仮想マシンテンプレートは、追加要求が示す通信サービスを提供するための仮想マシンとして設定される。
【０２４５】
Ｓ６１７の後、制御プログラム７０２は、通信サービスを実行するためのあらかじめ定められた順番（ＦＷの次はＷＯＣを実行するなどの順番）と、サービステーブル７００が示す各テナントに提供される通信サービスとを参照し、追加要求が示す通信サービスを示すエントリを、転送カード４００の揮発性メモリ４１２が有する変換テーブル７０３と、情報処理カード１００の揮発性メモリ１１２が有する変換テーブル７０３とに挿入する（Ｓ６１８）。
【０２４６】
その後、制御プログラム７０２は、追加要求が示す通信サービスを実行する仮想マシンを開始し、追加要求が示す通信サービスを開始する（Ｓ６１９）。Ｓ６１９の後、制御プログラム７０２は、図１１に示す処理を終了する。
【０２４７】
なお、Ｓ６０６において、通信サービスの追加要求を複数受信した場合、制御プログラム７０２は、Ｓ６０６及びＳ６１０を繰り返すことによって、受信した追加要求の数分、仮想マシンテンプレート１８０を複製する。そして、受信した追加要求の数の仮想マシンをＳ６１０において生成する。
【０２４８】
図９及び図１１に示す処理によって、本実施例の制御プログラム７０２は、通信サービスの追加要求を受信してから、仮想マシンテンプレート１８０を複製し、複製された仮想マシンテンプレートを用いて、通信サービスを提供する仮想マシンを適切に実装する。このため、仮想マシンを実装するためにネットワークを介して仮想マシンのイメージを受信する必要がなく、ネットワークの資源を消費しない。また、不揮発性メモリ１１３は、仮想マシンを実装するために、より容量が少ないブートイメージ７０４を保持するため、不揮発性メモリ等の資源の消費を低減することができる。
【０２４９】
また、通信事業者の管理者等によって、管理端末９００から通信ノード装置１０に、テナントに提供する通信サービスを更新する要求（更新要求）が入力された場合、通信ノード装置１０の制御プログラム７０２は、図９に示すＳ６１０を実行後、Ｓ６３０を実行する。
【０２５０】
図１２は、本実施例の通信サービスを更新する処理を示すフローチャートである。
【０２５１】
本実施例の通信サービスの更新とは、通信サービスを実行するための資源をスケールダウンさせたり、スケールアップさせたりすることに相当する。
【０２５２】
通信サービスの更新要求には、割り当てる資源を更新するテナントの識別子（テナント７１０の値）と、割り当てる資源を更新する通信サービスの識別子（サービス７１２の値）とが含まれる。さらに、更新要求には、更新後の資源の値として、帯域７１１、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５に相当する値が含まれる。
【０２５３】
制御プログラム７０２は、管理端末９００からＳ６０６において入力された要求が通信サービスの更新要求であるか否かを判定する（Ｓ６３１）。管理端末９００から入力された要求が通信サービスの更新要求ではない場合、制御プログラム７０２は、図１２に示す処理を終了する。
【０２５４】
管理端末９００から入力された要求が通信サービスの更新要求である場合、制御プログラム７０２は、通信サービスの更新要求が通信サービスをスケールダウンさせる要求であるか否かを判定する（Ｓ６３２）。具体的には、制御プログラム７０２は、更新要求が示すテナント７１０及びサービス７１２の値を含むサービステーブル７００のエントリを抽出する。そして、制御プログラム７０２は、抽出されたエントリが示す資源の値が、更新要求が示す更新後の資源の値よりも小さい場合、更新要求が通信サービスをスケールダウンさせる要求であると判定する。
【０２５５】
スケールダウンさせる要求であると判定された場合、制御プログラム７０２は、更新要求が示す通信サービスを提供する仮想マシンに割り当てられる、プロセッサコア又はメモリ等の資源を削減するため、更新要求が示す通信サービスの提供を停止する（Ｓ６３４）。通信サービスの提供を停止、すなわち、通信サービスを提供するサービスプログラムを停止することによって、制御プログラム７０２は、仮想マシンの設定を変更する際の、通信サービスの提供に関する不具合の発生を防ぐことができる。
【０２５６】
Ｓ６３４の後、制御プログラム７０２は、更新要求が示す通信サービスを実行する仮想マシンに割り当てられる資源（プロセッサコア又はメモリ等）の量を、あらかじめ定められた量、又は、更新要求に従って削減する。そして、制御プログラム７０２は、これによって仮想マシンの資源を再設定する（Ｓ６３５）。
【０２５７】
Ｓ６３５の後、制御プログラム７０２は、資源を削減された仮想マシンが含まれる情報処理カード１００を示す資源管理テーブル７０１のエントリの、割当済み専有コア数７４３、割当済み共有コア数７４４、及び、割当済みメモリ量７４５から、Ｓ６３５において削減された資源の量を示す値を減算した結果によって、資源管理テーブル７０１を更新する。また、制御プログラム７０２は、サービステーブル７００において、更新要求が示す通信サービスのエントリの値を更新する（Ｓ６３６）。
【０２５８】
Ｓ６３６の後、制御プログラム７０２は、更新要求が示す通信サービスを再開し（Ｓ６３７）、図１２に示す処理を終了する。
【０２５９】
Ｓ６３２において、通信サービスの更新要求が通信サービスをスケールダウンさせる要求ではないと判定された場合、すなわち、通信サービスをスケールアップさせる要求であると判定された場合、制御プログラム７０２は、更新要求が示す資源を確保できるか否かを判定する（Ｓ６３３）。具体的には、制御プログラム７０２は、図１１に示すＳ６１２と同じく、資源管理テーブル７０１等を参照し、更新要求が示す資源を確保できるか否かを判定する。
【０２６０】
Ｓ６３３において、更新要求が示す資源を確保できないと判定された場合、制御プログラム７０２は、管理端末９００へ資源不足を通知し（Ｓ６３８）、図１２に示す処理を終了する。
【０２６１】
Ｓ６３３において、更新要求が示す資源を確保できると判定された場合、制御プログラム７０２は、更新要求が示す通信サービスの提供を停止する（Ｓ６３４）。
【０２６２】
Ｓ６３４の後、制御プログラム７０２は、更新要求が示す通信サービスを実行する仮想マシンに割り当てられる資源（プロセッサコア又はメモリ）の量を増加させ、更新要求が示す通信サービスの仮想マシンの資源を再設定する（Ｓ６３５）。
【０２６３】
Ｓ６３５の後、制御プログラム７０２は、資源を増加された仮想マシンが含まれる情報処理カード１００を示す資源管理テーブル７０１のエントリの、割当済み専有コア数７４３、割当済み共有コア数７４４、及び、割当済みメモリ量７４５に、増加させた資源量を示す値を加算した結果によって、資源管理テーブル７０１を更新する。また、制御プログラム７０２は、サービステーブル７００において、更新要求が示す通信サービスのエントリの値を、更新要求に従って更新する（Ｓ６３６）。
【０２６４】
Ｓ６３６の後、制御プログラム７０２は、更新要求が示す通信サービスを再開し（Ｓ６３７）、図１２に示す処理を終了する。
【０２６５】
また、通信事業者の管理者等によって、管理端末９００から通信ノード装置１０に、通信サービスを削除する要求（削除要求）が入力された場合、通信ノード装置１０の制御プログラム７０２は、図９に示すＳ６１０及びＳ６３０を実行後、Ｓ６４０を実行する。
【０２６６】
図１３は、本実施例の通信サービスを削除する処理を示すフローチャートである。
【０２６７】
制御カード２００の制御プログラム７０２は、管理端末９００からＳ６０６において入力された要求が通信サービスの削除要求であるか否かを判定する（Ｓ６４１）。入力された要求が通信サービスの削除要求でない場合、制御プログラム７０２は、図１３に示す処理を終了する。
【０２６８】
通信サービスの削除要求は、更新要求によって通信サービスを削除するテナントを示す識別子（テナント７１０の値）と、削除する通信サービスを示す識別子（サービス７１２の値）とを少なくとも含む。
【０２６９】
サービス削除要求が入力されたと判定された場合、制御プログラム７０２は、削除要求が示す通信サービスを情報処理カード１００において実行するための、情報処理カード１００におけるサービスプログラム（仮想マシンにおけるサービスプログラム）を停止する（Ｓ６４２）。通信サービスの提供を停止、すなわち、サービスプログラムを停止することによって、制御プログラム７０２は、仮想マシンの設定を削除する際の、通信サービスの提供に関する不具合の発生を防ぐことができる。
【０２７０】
Ｓ６４２の後、制御プログラム７０２は、通信サービスの削除要求が示すテナントにおいて送受信されるイーサフレームに通信サービスの削除要求が示す通信サービスを実行しないように、転送カード４００及び情報処理カード１００が有する変換テーブル７０３のエントリを削除する（Ｓ６４３）。
【０２７１】
具体的には、制御プログラム７０２は、Ｓ６４３において、通信サービスの削除要求が示すテナントの変換テーブル７０３のエントリのうち、削除要求が示す通信サービスの識別子をＳＥＲＶＩＣＥ５２に含むエントリを特定する。そして、制御プログラム７０２は、特定されたエントリを削除する。
【０２７２】
Ｓ６４３の後、制御プログラム７０２は、通信サービスの削除要求が示す通信サービスを提供する仮想マシンを停止し、さらに、停止された仮想マシンを揮発性メモリ１１２から削除する（Ｓ６４４）。そして、制御プログラム７０２は、Ｓ６４４において削除された仮想マシンに割り当てられていた資源（通信帯域、プロセッサコア、メモリ、及びＬＴＡＧ等）を解放する（Ｓ６４５）。
【０２７３】
そして、制御プログラム７０２は、仮想マシンがＳ６４４において削除された仮想マシンを有していた情報処理カード１００を示す資源管理テーブル７０１のエントリの、割当済み専有コア数７４３、割当済み共有コア数７４４、及び、割当済みメモリ量７４５から、Ｓ６４５において解放された資源量を示す値を減算する。また、制御プログラム７０２は、通信サービスの削除要求に従って、サービステーブル７００からエントリを削除する。制御プログラム７０２は、以上によってサービステーブル７００と資源管理テーブル７０１とを更新し（Ｓ６４６）、図１３に示す処理を終了する。
【０２７４】
図９に示す処理によって、通信ノード装置１０に通信サービスが追加、又は、削除された場合、通信ノード装置１０において、転送カード４００のタグ変換部４１７及び情報処理カード１００のタグ変換部１１７は、新たな変換テーブル７０３に従ったタグ変換処理を開始する。
【０２７５】
通信ノード装置１０に、通信サービスの追加要求、更新要求、又は削除要求を通信事業者の管理者等が管理端末９００を利用して通信ノード装置１０に入力する場合、管理端末９００に表示される画面例を、管理端末画面８００として、図１４に示す。
【０２７６】
図１４は、本実施例の管理端末画面８００の例を示す説明図である。
【０２７７】
管理者は、管理端末９００のディスプレイに表示された管理端末画面８００を介して、通信サービスに関する要求を、通信ノード装置１０に入力する。
【０２７８】
管理端末画面８００は、選択エントリ有効化ボタン８０１、ファイル反映ボタン８０２、ファイル名入力欄８０３、選択エントリ無効化ボタン８０４、選択エントリ削除ボタン８０５、及び、サービステーブル８０６を含む。
【０２７９】
選択エントリ有効化ボタン８０１は、サービステーブル８０６に設定された情報を、通信ノード装置１０に入力するためのボタンである。ファイル反映ボタン８０２は、ファイル名入力欄８０３に入力されたファイルの内容を、サービステーブル８０６に展開するためのボタンである。
【０２８０】
選択エントリ無効化ボタン８０４は、サービステーブル８０６において選択された通信サービスを停止可能な状態にさせるためのボタンである。選択エントリ削除ボタン８０５は、サービステーブル８０６において選択された通信サービスを削除するためのボタンである。
【０２８１】
サービステーブル８０６は、図６に示すサービステーブル７００に対応する内容を表示する領域である。サービステーブル８０６は、領域８０７及び領域８０８を含む。
【０２８２】
領域８０７は、管理者が顧客からの注文に応じて設定した値を含む。領域８０７は、サービステーブル７００のテナント７１０、帯域７１１、サービス７１２、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５の値を表示する領域である。
【０２８３】
領域８０８は、通信ノード装置１０の制御プログラム７０２によって自動的に設定された値を表示する領域である。領域８０８は、ＳＴＡＧ７１６、ＬＴＡＧ７１７、ポート７１８、装置番号７１９、情報処理カード番号７２０、ＶＭ番号７２１、及び、ＶＮＩＣ情報７２２の値を表示する領域である。
【０２８４】
管理者は、顧客からの注文に応じて、通信サービスに関するパラメータを、サービステーブル８０６に設定する。例えば、顧客からの注文がテナントに通信サービスを追加することである場合、管理者は、サービステーブル８０６の空欄のエントリを選択する。管理者は、選択されたエントリに、テナント７１０、帯域７１１、サービス７１２、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５の値を設定する。
【０２８５】
設定後、管理者は、選択エントリ有効化ボタン８０１をクリックすることにより、設定した値を、通信ノード装置１０に入力する。この入力は、具体的には、図９における通信サービスの追加要求に相当する。
【０２８６】
管理者が、サービステーブル８０６のエントリの各々に手動で設定しなくてもよい。具体的には、管理者は、あらかじめサービステーブル８０６の内容が格納されたファイルを、管理端末９００のメモリに読み出し、さらに、ファイルの内容をサービステーブル８０６に展開してもよい。この場合、管理者は、ファイル名入力欄８０３に、サービステーブル８０６の内容が格納されたファイルの名称を入力し、ファイル反映ボタン８０２をクリックすることによって、ファイルの内容をサービステーブル８０６に展開する。
【０２８７】
また、顧客の注文がテナントの通信サービスの更新（すなわち、スケールアップ又はスケールダウン）を示す場合、管理者は、サービステーブル８０６の中から、更新する通信サービスを示すエントリを選択する。管理者は、エントリが選択された状態において、選択エントリ無効化ボタン８０４をクリックすることによって、選択された通信サービスを停止可能な状態にする。
【０２８８】
そして、管理者は、帯域７１１、サービス品質７１３、割当コア７１４、及び、割当メモリ７１５などの中から更新したい情報を再設定する。入力後、選択エントリ有効化ボタン８０１をクリックすることにより、設定された内容を通信ノード装置１０に入力する。この入力は、図９における通信サービスの更新要求に相当する。
【０２８９】
また、顧客の注文が、テナントの通信サービスの削除を示す場合、管理者は、サービステーブル８０６の中から、削除する通信サービスを示すエントリを選択する。そして、管理者は、エントリが選択された状態において、選択エントリ無効化ボタン８０４をクリックすることにより、選択されたエントリが示す通信サービスを停止可能な状態にする。その後、管理者は、選択エントリ削除ボタン８０５をクリックすることにより、削除する通信サービスを通信ノード装置１０に入力する。これは、図９における通信サービスの削除要求に相当する。
【０２９０】
以上の管理端末画面８００は、ユーザインタフェースの一例である。管理者は、通信サービスに関する要求を入力できるインタフェースであれば、どのようなインタフェースによって管理端末９００に情報を入力してもよい。
【０２９１】
以下では通信ノード装置１０の利用例に関して説明する。
【０２９２】
図１５は、本実施例の通信ノード装置１０におけるタグ変換処理を示すフローチャートである。
【０２９３】
以下に、タグ変換部４１７におけるタグ変換処理を、図１５を用いて説明する。なお、タグ変換部１１７におけるタグ変換処理とタグ変換部４１７におけるタグ変換処理とは、図１５に示す同じフローによって説明される。
【０２９４】
通信ノード装置１０の転送カード４００がイーサフレームを受信した場合、ＮＰ・チップセット４１０は、イーサフレームをタグ変換部４１７に入力する（Ｓ５５０）。Ｓ５５０の後、タグ変換部４１７は、揮発性メモリ４１２に保持された変換テーブル７０３を参照する（Ｓ５５１）。
【０２９５】
Ｓ５５０及びＳ５５１の処理は、通信ノード装置１０外のＷＡＮ４又はＬＡＮ５からイーサフレーム８２を受信した場合、通信ノード装置１０内の他の転送カード４００からイーサフレーム８２を受信した場合、又は、通信ノード装置１０内の情報処理カード１００からイーサフレーム８６を入力された場合等に行われる処理である。
【０２９６】
タグ変換部４１７は、入力されたイーサフレームのＶＬＡＮタグのうち先頭に付加されたタグと、イーサフレームの入力元とを示す値とが、変換テーブル７０３のＩＮ  ＴＡＧ４０及びＩＮ  ＰＯＲＴ４１に含むエントリと、それぞれ一致するか否かを判定する（Ｓ５５２）。
【０２９７】
変換テーブル７０３からエントリに一致するとＳ５５２において判定された場合、タグ変換部４１７は、一致したエントリに複製の指示を示す情報が含まれるか否かを判定する。以下に示す実施例において、タグ変換部４１７は、Ｓ５５２において一致したエントリのＯＵＴ  ＴＡＧ５０に二つ以上の値が含まれる場合、複製の指示を示す情報が含まれると判定する。しかし、タグ変換部４１７は、複製の指示を示す情報が含まれるか否かを判定できれば、いかなる方法によって判定してもよい。
【０２９８】
一致したエントリに複製の指示を示す情報が含まれない場合、タグ変換部４１７は、Ｓ５５４を実行する。一致したエントリに複製の指示を示す情報が含まれる場合、タグ変換部４１７は、入力されたイーサフレームを複製の指示に従って複製する（Ｓ５５３）。
【０２９９】
Ｓ５５３の後、タグ変換部４１７は、拡張タグＶＬＡＮ通信におけるイーサフレームの一番外側のタグを、一致したエントリのＯＵＴ  ＴＡＧ４２の値に従って変換する（Ｓ５５４）。そして、一致したエントリのＯＵＴ  ＰＯＲＴ４３の値に従って、タグを変換されたイーサフレームを出力する（Ｓ５５５）。
【０３００】
変換テーブル７０３に一致するエントリが無いとＳ５５２において判定された場合、タグ変換部４１７は、ＮＰ・チップセット４１０があらかじめ保持する通常のフォワーディングテーブル（ＭＡＣアドレステーブル又は転送データベース（ＦＤＢ：Ｆｏｒｗａｒｄｉｎｇ  Ｄａｔａ  Ｂａｓｅ）等と呼ばれる）を参照し、入力されたイーサフレームに対応する宛先へ送信する（Ｓ５５６）。
【０３０１】
次に、タグ変換部１１７におけるタグ変換処理を、図１５を用いて説明する。ただし、タグ変換部１１７は、仮想スイッチ１９０から送信されたイーサフレームにタグ変換処理を実行する。
【０３０２】
情報処理カード１００が内部スイッチ３００側からイーサフレームを受信した場合、プロセッサ１１０は、受信したイーサフレームを仮想スイッチ１９０に処理させる。仮想スイッチ１９０は、イーサフレームを受信した場合、イーサフレームの一番外側のＶＬＡＮタグを削除する。そして、仮想スイッチ１９０は、揮発性メモリ１１２にあらかじめ保持されたフォワーディングテーブルに従って、一番外側のＶＬＡＮタグが削除されたイーサフレームを、仮想マシンへ転送する。
【０３０３】
また、仮想スイッチ１９０が、仮想マシンからイーサフレームを受信した場合、仮想スイッチ１９０は、イーサフレームにＶＬＡＮタグ（本例ではＬＴＡＧに相当する）を付加する。そして、ＶＬＡＮタグを付加されたイーサフレームを、揮発性メモリ１１２にあらかじめ保持されたフォワーディングテーブルに従って、チップセット１１１に転送する。
【０３０４】
チップセット１１１のタグ変換部１１７は、仮想スイッチ１９０からイーサフレームを入力された場合（Ｓ５５０）、揮発性メモリ１１２に保持された変換テーブル７０３を参照する（Ｓ５５１）。そして、タグ変換部１１７は、タグ変換部４１７によるＳ５５２〜Ｓ５５５の処理と同じ処理を実行する。
【０３０５】
なお、タグ変換部１１７によるＳ５５２において、エントリが一致しない場合とは、変換テーブル７０３の生成が失敗であった等の場合のみである。正常に変換テーブル７０３が生成されている場合、タグ変換部１１７は、Ｓ５５２において一致するエントリをみつけることができる。
【０３０６】
タグ変換部１１７は、Ｓ５５５において、当該タグ変換部１１７を有する情報処理カード１００（すなわち、タグ変換処理中の情報処理カード１００上の仮想スイッチ１９０）、又は、当該タグ変換部１１７を有する情報処理カード１００とは別の情報処理カード１００（すなわち、タグ変換処理中の情報処理カード１００とは別の情報処理カード１００上の仮想スイッチ１９０）、又は、転送カード４００に、イーサフレームを出力する。
【０３０７】
図１５に示すフローチャートの具体例を以下に示す。
【０３０８】
図１６は、本実施例のタグ変換処理の具体例を示す説明図である。
【０３０９】
図１６に示す処理は、Ａ社の仮想ネットワーク通信（拡張タグＶＬＡＮ通信を用いた広域イーサネット）に通信サービスとしてファイアウォール（ＦＷ）とＷＡＮ最適化（ＷＯＣ）とを適用する場合の、通信ノード装置１０における処理である。
【０３１０】
図１６に示す通信ノード装置１０は、ＷＡＮ４からイーサフレーム８２−１を入力され、ＬＡＮ５へイーサフレーム８２−２を出力する。
【０３１１】
図１７は、本実施例のタグ変換されるイーサフレームの具体例を示す説明図である。
【０３１２】
図１６に示すイーサフレーム８２−１は、図４に示すイーサフレーム８２と同じく、ＭＡＣ  ＤＡ９０、ＭＡＣ  ＳＡ９１、ＳＴＡＧ９６、ＣＴＡＧ９５、タイプ９２、Ｌ２ペイロード９３、及び、ＦＣＳ９４を含む。図１６に示すＳＴＡＧ９６のＶＩＤ３４は"０ｘ０００Ａ"であり、"０ｘ０００Ａ"はＡ社を示すＶＩＤ３４の識別子である。
【０３１３】
転送カード４００−１のＮＰ・チップセット４１０が図１７に示す拡張タグＶＬＡＮのイーサフレーム８２−１をＷＡＮ４から入力された場合（Ｓ５５０）、タグ変換部４１７−１は、揮発性メモリ４１２に保持される図８に示す変換テーブル７０３を参照する（Ｓ５５１）。
【０３１４】
Ｓ５５１の後、タグ変換部４１７−１は、イーサフレーム８２−１が変換テーブル７０３のエントリ７６２（ＩＮ  ＴＡＧ４０がＶＩＤ＝"０ｘ０００Ａ"のＳＴＡＧ９６、かつ、ＩＮ  ＰＯＲＴ４１がＷＡＮ４）に一致すると判定する（Ｓ５５２）。エントリ７６２のＯＵＴ  ＴＡＧ５０の値は一つであるため（Ｓ５５３）、タグ変換部４１７−１は、イーサフレーム８２−１のＳＴＡＧ９６を、ＶＩＤ３４が"０ｘ００１Ａ"であるＬＴＡＧ９７に、エントリ７６２に従って変換する。この変換によって、図１７に示すイーサフレーム８３が生成される（Ｓ５５４）。
【０３１５】
Ｓ５５４の後、タグ変換部４１７−１は、エントリ７６２のＯＵＴ  ＰＯＲＴ５１に従って、イーサフレーム８３を内部スイッチ３００に出力する（Ｓ５５５）。内部スイッチ３００は、イーサフレーム８３を入力された場合、イーサフレーム８３のＬＴＡＧ９７のＶＩＤ３４が"０ｘ００１Ａ"に相当する仮想マシンのＶＮＩＣ（すなわち、ＶＮＩＣ１２３）が割り当てられた情報処理カード１００を特定し、特定された情報処理カード１００に向けて、イーサフレーム８３を転送する。
【０３１６】
情報処理カード１００は、イーサフレーム８３を入力された場合、仮想スイッチ１９０によって一番外側のＶＬＡＮタグ（図１６におけるＬＴＡＧ９７）を削除してイーサフレーム８１−１とし、削除したＶＬＡＮタグ（この場合はＬＴＡＧ９７）のＶＩＤ３４の値である"０ｘ００１Ａ"に相当するＶＮＩＣ１２３へイーサフレーム８１−１を入力する。このときイーサフレーム８１−１は、ＣＴＡＧ９５のみが付与された形式となっている。
【０３１７】
こうして、仮想マシン１２０のゲストＯＳ１２２上のＡ社ファイアウォールサービスプログラム１２１は、ＶＮＩＣ１２３から入力されたイーサフレーム８１−１に対してファイアウォールサービスを実行することができる。ここまでの操作によって、Ａ社ファイアウォールサービスプログラム１２１に入力されるイーサフレームは、Ａ社内で用いられるＣＴＡＧ９５のみが付与された形式となっている。このため、Ａ社のイーサフレーム、かつ、該当サービス（この場合はファイアウォールサービス）を適用すべきイーサフレームのみとなっていることが保証されており、他社のイーサフレームが混ざったり、該当サービスを適用すべきでないイーサフレームが混ざったりする心配はない。他の仮想マシンも、この点において仮想マシン１２０と同じであり、ＣＴＡＧ９５のみを付加されたイーサフレーム８１に対して通信サービスを実行する。
【０３１８】
イーサフレーム８１−１がＡ社ファイアウォールサービスプログラム１２１を通過できるイーサフレームであった場合（すなわち、ファイアウォールによってブロックされなかった場合）、仮想マシン１２０は、ＶＮＩＣ１２４から仮想スイッチ１９０にイーサフレーム８１−１を出力する。
【０３１９】
仮想スイッチ１９０は、ＶＮＩＣ１２４からイーサフレーム８１−１を受信した場合、ＶＮＩＣ１２４に対応するＬＴＡＧ９７（ＶＩＤ３４が"０ｘ００２Ａ"）を、イーサフレーム８１−１に付加する。これによって、図１７に示すイーサフレーム８４が生成される。そして、仮想マシン１２０は、イーサフレーム８４をチップセット１１１に送信する。チップセット１１１は、イーサフレーム８４をタグ変換部１１７に入力する。
【０３２０】
タグ変換部１１７がイーサフレーム８４を入力された場合（Ｓ５５０）、タグ変換部１１７は、図１５のＳ５５１〜Ｓ５５５の処理を実行する。タグ変換部１１７は、Ｓ５５２において、イーサフレーム８４が変換テーブル７０３のエントリ７６３（ＩＮ  ＴＡＧ４０がＶＩＤ＝"０ｘ００２Ａ"のＬＴＡＧ９７、かつ、ＩＮ  ＰＯＲＴ４１がＣＡＲＤ＃１（同じ情報処理カード１００））に一致すると判定する。  そして、エントリ７６３のＯＵＴ  ＴＡＧ５０の値は一つであるため（Ｓ５５３）、タグ変換部１１７は、エントリ７６３のＯＵＴ  ＴＡＧ５０に従ってＬＴＡＧ９７をＶＩＤ３４が"０ｘ００３Ａ"であるＬＴＡＧ９７に変換する。この変換によって、図１７に示すイーサフレーム８５が生成される（Ｓ５５４）。
【０３２１】
タグ変換部１１７は、エントリ７６３のＯＵＴ  ＰＯＲＴ５１に従って、イーサフレーム８５を内部スイッチ３００へ送信する。
【０３２２】
内部スイッチ３００は、イーサフレーム８５を受信した場合、イーサフレーム８５の入力元（情報処理カード１００）とＬＴＡＧ９７のＶＩＤ３４が"０ｘ００３Ａ"に該当する仮想マシンのＶＮＩＣ（すなわち、ＶＮＩＣ１３３）が割り当てられた宛先を情報処理カード１００であると特定し、特定された情報処理カード１００へ向けてイーサフレーム８５を転送する。
【０３２３】
情報処理カード１００は、イーサフレーム８５を受信すると、仮想スイッチ１９０によって一番外側のＶＬＡＮタグを削除してイーサフレーム８１−２とし、削除したＶＬＡＮタグのＶＩＤ３４の値である"０ｘ００３Ａ"に相当するＶＮＩＣ１３３へイーサフレームを入力する。このときイーサフレーム８１−２は、ＣＴＡＧ９５のみが付与された形式となっている。
【０３２４】
こうして、仮想マシン１３０のゲストＯＳ１３２上のＡ社ＷＡＮ最適化サービスプログラム１３１は、ＶＮＩＣ１３３から入力されたイーサフレーム８１−２に対してＷＡＮ最適化サービスを実行することができる。
【０３２５】
Ａ社ＷＡＮ最適化サービスプログラム１３１において、イーサフレーム８１−２がＬＡＮ方向に通過するイーサフレームとして処理された場合、イーサフレーム８１−２は、ＶＮＩＣ１３４から仮想スイッチ１９０に出力される。そして、仮想スイッチ１９０は、入力元であるＶＮＩＣ１３４に対応するＬＴＡＧ９７（ＶＩＤ３４が"０ｘ００４Ａ"）を、イーサフレーム８１−２に付加する。これによって、図１７に示すイーサフレーム８６が生成される。そして、仮想スイッチ１９０は、イーサフレーム８６をチップセット１１１に入力する。
【０３２６】
チップセット１１１のタグ変換部１１７は、イーサフレーム８６が入力された場合（Ｓ５５０）、図１５に示す処理を実行する。しかし、Ｓ５５２において、タグ変換部１１７は、変換テーブル７０３に一致するエントリが存在しないと判定する。このため、タグ変換部１１７は、あらかじめ保持されたフォワーディングテーブルに従い、内部スイッチ３００にイーサフレーム８６を出力する（Ｓ５５６）。
【０３２７】
内部スイッチ３００は、イーサフレーム８６の入力元（情報処理カード１００）とＬＴＡＧのＶＩＤ３４が"０ｘ００４Ａ"とに対応する出力先を転送カード４００−２である特定し、特定された出力先にイーサフレーム８６を出力する。
【０３２８】
転送カード４００−２のＮＰ・チップセット４１０がイーサフレーム８６を入力された場合（Ｓ５５０）、タグ変換部４１７−２は、図１５に示す処理を開始する。タグ変換部４１７−２は、イーサフレーム８６が変換テーブル７０３のエントリ７６４（ＩＮ  ＴＡＧ４０がＶＩＤ３４＝"０ｘ００４Ａ"のＬＴＡＧ９７、かつ、ＩＮ  ＰＯＲＴ４１がＣＡＲＤ＃１（情報処理カード１００））に一致すると判定する（Ｓ５５２）。
【０３２９】
エントリ７６４のＯＵＴ  ＴＡＧ５０の値は一つであるため（Ｓ５５３）、タグ変換部４１７−２は、イーサフレーム８６のＬＴＡＧ９７を、ＶＩＤ３４が"０ｘ０００Ａ"であるＳＴＡＧ９６に、エントリ７６４に従って変換する。この変換によって、イーサフレーム８２−２が生成される（Ｓ５５４）。
【０３３０】
タグ変換部４１７−２は、エントリ７６４のＯＵＴ  ＰＯＲＴ５１に従って、イーサフレーム８２−２を、転送カード４００−２からＬＡＮ５へ出力する（Ｓ５５５）。
【０３３１】
以上の処理により、Ａ社の仮想ネットワークサービス（拡張タグＶＬＡＮを利用した広域イーサネット）に、通信サービスを適用することが可能である。
【０３３２】
図１５に示す処理の別の具体例を以下に示す。
【０３３３】
図１８は、本実施例のイーサフレームの複製を伴うタグ変換処理の具体例を示す説明図である。
【０３３４】
図１８に示す処理は、Ｂ社の仮想ネットワーク通信（拡張タグＶＬＡＮ通信を用いた広域イーサネット）に通信サービスとして侵入検知（ＩＤＳ：Ｉｎｔｒｕｓｉｏｎ  Ｄｅｔｅｃｔｉｏｎ  Ｓｙｓｔｅｍ）とＷＡＮ最適化とを適用する場合の、通信ノード装置１０における処理である。
【０３３５】
図１８に示す通信ノード装置１０は、ＷＡＮ４からイーサフレーム７２を入力され、ＬＡＮ５へイーサフレーム７２を出力する。
【０３３６】
図１９は、本実施例のタグ変換処理時に複製されるイーサフレームの具体例を示す説明図である。
【０３３７】
図１９に示すイーサフレーム７２−１は、図４に示すイーサフレーム８２と同じく、ＭＡＣ  ＤＡ９０、ＭＡＣ  ＳＡ９１、ＳＴＡＧ９６、ＣＴＡＧ９５、タイプ９２、Ｌ２ペイロード９３、及び、ＦＣＳ９４を含む。図１９に示すＳＴＡＧ９６のＶＩＤ３４は、"０ｘ０００Ｂ"であり、"０ｘ０００Ｂ"はＢ社を示すＶＩＤ３４の識別子である。
【０３３８】
転送カード４００−１のＮＰ・チップセット４１０が図１８に示す拡張タグＶＬＡＮのイーサフレーム７２をＷＡＮ４から入力された場合、タグ変換部４１７−１は、揮発性メモリ４１２に保持される図８に示す変換テーブル７０３を参照する（Ｓ５５１）。
【０３３９】
Ｓ５５１の後、タグ変換部４１７−１は、イーサフレーム７２が変換テーブル７０３のエントリ７６５（ＩＮ  ＴＡＧ４０がＶＩＤ＝"０ｘ０００Ｂ"のＳＴＡＧ９６、かつ、ＩＮ  ＰＯＲＴ４１がＷＡＮ４）に一致すると判定する（Ｓ５５２）。Ｓ５５２の後、タグ変換部４１７−１は、エントリ７６５のＯＵＴ  ＴＡＧ５０に二つの値が格納されているため、エントリ７６５に従って、イーサフレーム７２を二つに複製する（Ｓ５５３）。
【０３４０】
Ｓ５５３の後、タグ変換部４１７−１は、複製されたうちの一つのイーサフレーム７２のＳＴＡＧ９６を、ＶＩＤ３４が"０ｘ００５Ｂ"であるＬＴＡＧ９７に変換する。この変換によって、図１９に示すイーサフレーム７３が生成される。
【０３４１】
また、タグ変換部４１７−１は、複製されたうちの別のイーサフレーム７２のＳＴＡＧ９６を、ＶＩＤ３４が"０ｘ００７Ｂ"であるＬＴＡＧ９７に変換する。この変換によって、図１９に示すイーサフレーム７５が生成される（Ｓ５５４）。
【０３４２】
Ｓ５５４の後、タグ変換部４１７−１は、エントリ７６５のＯＵＴ  ＰＯＲＴ５１に従って、イーサフレーム７３及びイーサフレーム７５を内部スイッチ３００に出力する（Ｓ５５５）。
【０３４３】
内部スイッチ３００は、イーサフレーム７５を受信した場合、イーサフレーム７５の入力元とＬＴＡＧ９７のＶＩＤ３４の値である"０ｘ００７Ｂ"に該当する仮想マシンのＶＮＩＣ１５３が割り当てられた宛先を情報処理カード１００であると特定し、特定された情報処理カード１００に向けてイーサフレーム７５を転送する。
【０３４４】
情報処理カード１００は、イーサフレーム７５を受信すると、仮想スイッチ１９０によって一番外側のＶＬＡＮタグを削除してイーサフレーム７１とし、削除したＶＬＡＮタグのＶＩＤ３４の値である"０ｘ００７Ｂ"に相当するＶＮＩＣ１５３へイーサフレーム７１を転送する。このときイーサフレーム７１は、ＣＴＡＧ９５のみが付与された形式となっている。
【０３４５】
こうして、仮想マシン１５０のゲストＯＳ１５２上のＢ社ＩＤＳサービスプログラム１５１は、ＶＮＩＣ１５３から入力されたイーサフレーム７１に対してＩＤＳサービスを実行することができる。
【０３４６】
なお、Ｂ社ＩＤＳサービスプログラム１５１による処理の結果は、イーサフレームとしてＬＡＮ５に送信されず、仮想マシン１５０（実際には情報処理カード１００）に蓄積される。このため、管理者等は、Ｂ社ＩＤＳサービスプログラム１５１による処理の結果を、ＶＮＩＣ１５３経由で収集してもよく、また、別のＶＮＩＣポートを設定することによって収集してもよい。
【０３４７】
また、内部スイッチ３００は、イーサフレーム７３を入力された場合、イーサフレーム７３の入力元とＬＴＡＧ９７のＶＩＤ３４の値である"０ｘ００５Ｂ"に該当する仮想マシンのＶＮＩＣが割り当てられた宛先を情報処理カード１００であると特定し、特定された情報処理カード１００へイーサフレーム７３を転送する。
【０３４８】
情報処理カード１００は、イーサフレーム７３を受信すると、仮想スイッチ１９０によって一番外側のＶＬＡＮタグを削除してイーサフレーム７１とし、削除したＶＬＡＮタグのＶＩＤ３４の値である"０ｘ００５Ｂ"に相当するＶＮＩＣ１５３へイーサフレーム７１を転送する。このときイーサフレーム７１は、ＣＴＡＧ９５のみが付与された形式となっている。
【０３４９】
こうして、仮想マシン１４０のゲストＯＳ１４２上のＢ社ＷＡＮ最適化サービスプログラム１４１は、ＶＮＩＣ１５３から入力されたイーサフレーム７１に対してＷＡＮ最適化サービスを実行することができる。
【０３５０】
Ｂ社ＷＡＮ最適化サービスプログラム１４１において、イーサフレーム７１がＬＡＮ方向に通過するイーサフレームとして処理された場合、イーサフレーム７１は、ＶＮＩＣ１４４から仮想スイッチ１９０に出力される。そして、仮想スイッチ１９０は、入力元であるＶＮＩＣ１４４に対応するＬＴＡＧ９７（ＶＩＤ３４が"０ｘ００６Ｂ"）を、イーサフレーム７１に付加する。これによって、図１９に示すイーサフレーム７４が生成される。そして、仮想スイッチ１９０は、イーサフレーム７４をチップセット１１１に入力する。
【０３５１】
チップセット１１１のタグ変換部１１７は、イーサフレーム７４が入力された場合（Ｓ５５０）、図１５に示す処理を実行する。しかし、Ｓ５５２において、タグ変換部１１７は、変換テーブル７０３に一致するエントリが存在しないと判定する。このため、タグ変換部１１７は、あらかじめ保持されたフォワーディングテーブルに従い、内部スイッチ３００にイーサフレーム７４を出力する（Ｓ５５６）。
【０３５２】
内部スイッチ３００は、イーサフレーム７４が入力された場合、入力元の情報とＬＴＡＧ９７のＶＩＤ３４"０ｘ００６Ｂ"とに相当する出力先を転送カード４００−２であると特定し、特定された出力先にイーサフレーム７４を出力する。
【０３５３】
転送カード４００−２のＮＰ・チップセット４１０がイーサフレーム７４を受信した場合（Ｓ５５０）、タグ変換部４１７−２は、図１５に示す処理を開始する。タグ変換部４１７−２は、イーサフレーム７４が変換テーブル７０３のエントリ７６６（ＩＮ  ＴＡＧ４０がＶＩＤ３４＝"０ｘ００６Ｂ"のＬＴＡＧ９７、かつ、ＩＮ  ＰＯＲＴ４１がＣＡＲＤ＃１（情報処理カード１００））に一致すると判定する（Ｓ５５２）。
【０３５４】
エントリ７６６のＯＵＴ  ＴＡＧ５０の値は一つであるため（Ｓ５５３）、タグ変換部４１７−２は、イーサフレーム７４のＬＴＡＧ９７を、ＶＩＤ３４が"０ｘ０００Ｂ"であるＳＴＡＧ９６に、エントリ７６６に従って変換する。この変換によって、イーサフレーム７２が生成される。
【０３５５】
タグ変換部４１７−２は、エントリ７６６のＯＵＴ  ＰＯＲＴ５１に従って、イーサフレーム７２を、転送カード４００−２からＬＡＮ５へ出力する（Ｓ５５５）。
【０３５６】
以上の処理により、Ｂ社の仮想ネットワークサービス（拡張タグＶＬＡＮを利用した広域イーサネット）に、通信サービスを適用することが可能である。
【０３５７】
図１６に示す処理の変形例を以下に記載する。
【０３５８】
図２０は、本実施例の通信サービスを連続して実行する場合のタグ変換処理を示す説明図である。
【０３５９】
図１６に示すＡ社向けの通信サービス（仮想マシン１２０におけるＦＷ及び仮想マシン１３０におけるＷＯＣ）のように、同一の情報処理カード１００の同一のプロセッサ１１０が複数の通信サービスを連続的に実行する場合、管理者は、二つの通信サービス間（すなわち、二つの仮想マシン間）で、仮想スイッチ１９０がＬＴＡＧ９７を付加する処理を削除してもよい。
【０３６０】
そして、管理者は、二つの通信サービスの出力のＶＮＩＣと入力のＶＮＩＣとを共通の仮想スイッチによって接続するように設定し、一つの通信サービスによる処理が終了したイーサフレーム（ＣＴＡＧ９５のみが付加されたイーサフレーム）を、別の通信サービスによる処理を実行する仮想マシンに直接送信するようにしてもよい。これによって、タグ変換部１１７によるタグ変換処理が削減され、迅速な処理が可能となる。
【０３６１】
例えば、図２０に示すように、管理者が、Ａ社ファイアウォールサービスプログラム１２１のＶＮＩＣ１２４とＡ社ＷＡＮ最適化サービスプログラム１３１のＶＮＩＣ１３３との間においてのみイーサフレームが通信されるように、仮想スイッチ１９０を設定する。これによって、タグ変換部１１７においてＬＴＡＧ４７は付加されないため、二つの仮想マシンはＣＴＡＧ９５のみが付加されたイーサフレーム８１を利用することができる。
【０３６２】
図２０に示す処理は、例えば、管理者が、仮想スイッチ１９０に、ＶＮＩＣ１２４の出力がＶＮＩＣ１３３の入力となるように、ＶＮＩＣ１３３の出力がＶＮＩＣ１２４の入力となるように設定することによって実装可能である。ここで実装される仮想スイッチ１９０は、ＶＮＩＣ１２４又は物理ＮＩＣなどのインタフェースからイーサフレームを受信した場合、揮発性メモリ１１２に格納されるフォワーディングテーブルを参照しイーサフレームを転送したり、ＶＬＡＮタグの付加及び削除をしたりする。それ以外の処理は、図１６に示す処理と同じである。
【０３６３】
前述の本実施例のシステムと比較するためのシステム構成を、図２１に示す。
【０３６４】
図２１は、本実施例の通信サービスを提供するためのシステム構成との比較例を示すブロック図である。
【０３６５】
図２１が示すシステム構成は、通信事業者が広域イーサネット上でＷＡＮ最適化及びファイアウォールなどの通信サービスを提供する形態を示す。
【０３６６】
図１に示すシステム構成と図２１に示すシステム構成との相違点を以下に示す。相違点の一つ目は、図２１に示す通信局舎３が通信ノード装置１０−２を有さず、データセンタ１が通信ノード装置１０−１を有さない点である。また、相違点の二つ目は、エッジスイッチ１１−２と各社のＬＡＮスイッチ２１との間にテナント（顧客）毎に独立したアプライアンス９５０（９５０−３、９５０−４）が接続される点である。また、相違点の三つ目は、エッジスイッチ１１−１と各社のＬＡＮスイッチ１２との間にテナント（顧客）毎に独立したアプライアンス９５０（９５０−１、９５０−２）が接続される点である。
【０３６７】
図２１に示すアプライアンス９５０を通信事業者が提供した場合、各アプライアンス９５０はテナント間で独立しているため、Ａ社もＢ社も、自社向けの通信サービスを通信事業者から提供される広域イーサネットにおいて利用することができる。
【０３６８】
通信サービスを提供されるテナント（顧客）が少数である場合、通信事業者は、図２１に示すシステム構成を用いることによって、各テナント独自の通信サービスを提供することができる。しかし、テナントが多数である場合、図２１に示すシステムでは、必要とするアプライアンス９５０の数が多数となり、設備コスト及び運用コストの増大を招くことになる。
【０３６９】
一方、本実施例の図１に示すシステム構成は、通信サービスを提供するための仮想マシンが通信ノード装置１０（１０−１、１０−２）に備わるため、必要な通信ノード装置１０（アプライアンスに相当）の数を低減できる。このため、本実施例によれば、通信事業者は、通信サービスを提供するための設備を構築するためのコストを低減できる。
【０３７０】
前述のとおり、本実施例によれば、通信ノード装置１０において、テナント、及びＶＬＡＮ等の複数の仮想ネットワークを識別するＳＴＡＧを、通信ノード装置１０における処理のためのＬＴＡＧに変換することによって、複数の仮想ネットワークを収容するネットワークにおいて、通信サービスを仮想ネットワーク毎に提供することができる。
【０３７１】
また、通信サービスを実行する装置を、各テナント間で共有の通信ノード装置１０の仮想マシンによって実行することによって、通信事業者の設備コスト及び運用コストを低減することができる。
【０３７２】
なお、以上の実施例に示す通信ノード装置１０において、仮想ネットワークの識別子として、拡張タグＶＬＡＮ以外を利用してもよい。以下に、拡張タグＶＬＡＮ以外のイーサフレームを用いる例を記載する。
【０３７３】
本実施例において説明された広域イーサネットを実現する技術には、拡張タグＶＬＡＮ以外に、ＩＥＥＥ８０２．１ａｈにおいて定義されるＭＡＣｉｎＭＡＣを利用する方法がある。ＭＡＣｉｎＭＡＣは、イーサフレーム（ＭＡＣフレーム）をイーサフレーム（ＭＡＣフレーム）によってカプセル化して通信する技術である。
【０３７４】
ＭＡＣｉｎＭＡＣには、二つの方法がある。一つ目の方法は、イーサフレームをイーサフレーム（ＭＡＣフレーム）によってカプセル化する際に、ＳＴＡＧ及びＣＴＡＧ付きの拡張タグＶＬＡＮ通信用のイーサフレームを、ＭＡＣフレームによってカプセル化する方法である。二つ目の方法は、ＣＴＡＧ付きのイーサフレームを、ＭＡＣフレームによってカプセル化する方法である。
【０３７５】
一つ目の方法によるＭＡＣｉｎＭＡＣのイーサフレームは、本実施例の通信ノード装置１０によって、拡張タグＶＬＡＮ通信用のイーサフレーム８２として受信される。このため、本実施例の通信ノード装置１０は、受信するイーサフレームをＭＡＣｉｎＭＡＣによるイーサフレームとして特別に処理する必要はない。
【０３７６】
二つ目の方法によるＭＡＣｉｎＭＡＣのイーサフレームを、図２２に示す。
【０３７７】
図２２は、本実施例２のＭＡＣｉｎＭＡＣのイーサフレームを示す説明図である。
【０３７８】
二つ目の方法によるＭＡＣｉｎＭＡＣのイーサフレーム８２０は、イーサフレーム８２と、イーサフレーム８２の外側に付加されたヘッダとを含む。イーサフレーム８２の外側に付加されたヘッダには、ＭＡＣ  ＤＡ６９、ＭＡＣ  ＳＡ６８、ＢＴＡＧ６７、及び、ＩＴＡＧ６６が含まれる。
【０３７９】
ＩＴＡＧ６６は、テナントを識別する６バイトの値を含む。イーサフレーム８２のＭＡＣ  ＤＡ９０、及び、ＭＡＣ  ＳＡ９１と、ＩＴＡＧ６６とを含めた１８バイト部分をＩＴＡＧとして規定されてもよい。ＩＴＡＧ６６はＩＳＩＤ（Ｓｅｒｖｉｃｅ  Ｉｎｓｔａｎｃｅ  ＩＤ）と呼ぶ２４ビットの識別子（ＩＳＩＤ６３）を備えているため、ＩＴＡＧ６６は、１２ビットのＶＩＤを備えるＳＴＡＧよりも多数のテナントを識別できる。
【０３８０】
本発明に二つ目の方法によるＭＡＣｉｎＭＡＣを利用する場合、タグ変換部４１７は、イーサフレーム８２のＳＴＡＧ９６の代わりに、ＩＴＡＧ６６をＬＴＡＧ９７に変換する。また、制御プログラム７０２は、サービステーブル７００及び変換テーブル７０３に、ＳＴＡＧ９６を示す値の代わりに、ＩＴＡＧ６６を示す値を格納する。
【０３８１】
ＩＴＡＧ６６を変換することによって生成されるＬＴＡＧ９７は、ＩＴＡＧ６６と同じフォーマットでもよいし、ＭＡＣｉｎＭＡＣがオプションで含むＢＴＡＧ６７のＶＬＡＮタグと同じフォーマットでもよい。
【０３８２】
さらに、本実施例の変形例としてＶＬＡＮを利用した拡張タグＶＬＡＮ以外に、ＩＥＴＦ（Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）において審議されているＶＸＬＡＮを利用する方法がある。
【０３８３】
図２３は、本実施例２のＶＸＬＡＮのイーサフレーム９１０を示す説明図である。
【０３８４】
ＶＸＬＡＮは、ＵＤＰ／ＩＰのイーサフレームによって、イーサフレーム８２をカプセル化し、カプセル化されたイーサフレームによって通信する技術である。ＶＸＬＡＮにおけるＵＤＰ／ＩＰのイーサフレームは、図２３に示すように、２４ビットの識別子を含む８バイトのＶＸＬＡＮヘッダ９０６をペイロードの先頭に持つ。
【０３８５】
ＶＸＬＡＮは、大規模マルチテナントにおけるクラウド構築、及び、複数拠点間の透過的なディザスタリカバリなどを実現する狙いで、審議される技術である。
【０３８６】
本実施例にＶＸＬＡＮを適用する場合、タグ変換部４１７は、イーサフレーム８２のＳＴＡＧ９６の代わりに、ＶＸＬＡＮヘッダ９０６をＬＴＡＧ９７に変換する。また、制御プログラム７０２は、サービステーブル７００及び変換テーブル７０３に、ＳＴＡＧ９６を示す値の代わりに、ＶＸＬＡＮヘッダ９０６を示す値を格納する。
【０３８７】
ＶＸＬＡＮヘッダ９０６を変換することによって生成されるＬＴＡＧ９７は、ＶＸＬＡＮヘッダ９０６と同じフォーマットでもよいし、ＶＸＬＡＮにオプションで規定されるＣＴＡＧ９０２（ＶＬＡＮタグと同じ）と同じフォーマットでもよい。
【０３８８】
前述の通り、ＭＡＣｉｎＭＡＣ、及び、ＶＸＬＡＮのいずれを用いた場合も、イーサフレームに含まれる識別子をＬＴＡＧに変換する方法、及び、ＷＡＮ最適化などの通信サービスを実行するための仮想マシンとの組合せ方法は、実施例に示す通信ノード装置１０と同じ方法によって実装できる。
【０３８９】
このため、本実施例は、イーサフレームのフォーマットを規定する多様な方法に適用することが可能であり、多くのネットワークシステムにおいて柔軟に適用可能な通信方法を提供する。
【０３９０】
なお、前述の実施例において、一つの情報処理カード１００における複数の仮想マシンが、連続して通信サービスを実行する方法、及び、並行して通信サービスを実行する方法とそのための通信ノード装置の設定方法が記載された。前述に記載されたこれらの方法は、最も単純な例であり、例えば、タグ変換部４１７がイーサフレームを複数に複製し、その後複製された各イーサフレームに、連続して通信サービスが実行されてもよい。
【０３９１】
以上の通り、本実施例によれば、複数の仮想ネットワークを収容するネットワークにおいて、仮想ネットワーク毎にＷＡＮ最適化、及び、ファイアウォールなど、少なくとも一つの通信サービスを通信ノード装置１０上の仮想マシンを利用して提供するためのブートイメージを、通信ノード装置１０が備える小容量の不揮発性半導体メモリで提供することができる。そして、これによって、通信サービスを提供する仮想マシンを実装するための、ネットワーク及び不揮発性半導体メモリ等の資源の消費を低減させることができる。
【符号の説明】
【０３９２】
１  データセンタ
２  拠点
３  通信局舎
４  通信事業者網（ＷＡＮ：広域網）
５  ＬＡＮ
１０  通信ノード装置
１１  エッジスイッチ
１２、２１  ＬＡＮスイッチ
１３  サーバ
２０  クライアント
１００  情報処理カード
１８０  仮想マシンテンプレート
１８１  サービスプログラム
２００  制御カード
３００  内部スイッチ
４００  転送カード
４１０  ＮＰ・チップセット
７００  サービステーブル
７０１  資源管理テーブル
７０２  制御プログラム
７０３  変換テーブル
９００  管理端末
【図１】
2014096675.tif 000003
【図２】
2014096675.tif 000004
【図３】
2014096675.tif 000005
【図４】
2014096675.tif 000006
【図５】
2014096675.tif 000007
【図６】
2014096675.tif 000008
【図７】
2014096675.tif 000009
【図８】
2014096675.tif 000010
【図９】
2014096675.tif 000011
【図１０】
2014096675.tif 000012
【図１１】
2014096675.tif 000013
【図１２】
2014096675.tif 000014
【図１３】
2014096675.tif 000015
【図１４】
2014096675.tif 000016
【図１５】
2014096675.tif 000017
【図１６】
2014096675.tif 000018
【図１７】
2014096675.tif 000019
【図１８】
2014096675.tif 000020
【図１９】
2014096675.tif 000021
【図２０】
2014096675.tif 000022
【図２１】
2014096675.tif 000023
【図２２】
2014096675.tif 000024
【図２３】
2014096675.tif 000025