(57)【特許請求の範囲】
【請求項１】
拠点内の端末に対してＭＡＣ（Media  Access  Control）アドレスを割り当てる割当装置であって、
２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、２拠点毎に構築された通信路を識別する通信路識別子を、通信路が設定されたスイッチ毎に収集する収集部と、
前記収集部によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する分類部と、
前記分類部によって分類されたグループ毎に、該グループ内の複数の端末にＭＡＣアドレスの重複が生じているか否かを判定する判定部と、
前記拠点ごとに、当該拠点の端末に割り当てるＭＡＣアドレスのプリフィックス部を示した再割当ＭＡＣアドレスプリフィックスリストと、
前記判定部によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、前記再割当ＭＡＣアドレスプリフィックスリストから取得した前記端末の属する拠点に対応するプレフィックス部を含み、かつ、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当てる割当部と
を備えたことを特徴とする割当装置。
【請求項２】
前記分類部は、異なる通信路識別子によって識別される複数の通信路が同一のスイッチに設定されている場合に、該複数の通信路を同一のネットワークであると判定し、該複数の通信路を用いて通信を行う全ての端末を、同一のグループに分類することを特徴とする請求項１に記載の割当装置。
【請求項３】
前記分類部は、同一の通信路識別子によって識別される通信路を同一のネットワークであると判定し、該通信路を用いて通信を行う全ての端末を、同一のグループに分類することを特徴とする請求項１又は２に記載の割当装置。
【請求項４】
コンピュータを請求項１〜３のいずれか一つに記載の割当装置として機能させるための割当プログラム。
【請求項５】
拠点内の端末に対してＭＡＣアドレスを割り当てる割当装置で実行される割当方法であって、
２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、２拠点毎に構築された通信路を識別する通信路識別子を、通信路が設定されたスイッチ毎に収集する収集工程と、
前記収集工程によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する分類工程と、
前記分類工程によって分類されたグループ毎に、該グループ内の複数の端末にＭＡＣアドレスの重複が生じているか否かを判定する判定工程と、
前記判定工程によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、前記拠点ごとに、当該拠点の端末に割り当てるＭＡＣアドレスのプリフィックス部を示した再割当ＭＡＣアドレスプリフィックスリストから取得した前記端末の属する拠点に対応するプレフィックス部を含み、かつ、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当てる割当工程と
を含んだことを特徴とする割当方法。
【請求項６】
端末及びスイッチが動作する各拠点に設置された管理装置と、拠点内の端末に対してＭＡＣアドレスを割り当てる割当装置とを含む割当システムであって、
前記割当装置は、
２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、各拠点に設置された前記管理装置に対して、２拠点毎に構築された通信路を識別する通信路識別子、及び、各拠点内の端末に割り当てられているＭＡＣアドレスを問合せ、前記管理装置から、該通信路識別子及び該ＭＡＣアドレスを、通信路が設定されたスイッチ毎に収集する収集部と、
前記収集部によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する分類部と、
前記収集部によってスイッチ毎に収集されたＭＡＣアドレスに基づいて、前記分類部によって分類されたグループ毎に、該グループ内の複数の端末にＭＡＣアドレスの重複が生じているか否かを判定する判定部と、
前記拠点ごとに、当該拠点の端末に割り当てるＭＡＣアドレスのプリフィックス部を示した再割当ＭＡＣアドレスプリフィックスリストと、
前記判定部によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、前記再割当ＭＡＣアドレスプリフィックスリストから取得した前記端末の属する拠点に対応するプレフィックス部を含み、かつ、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当て、割り当てたＭＡＣアドレスを、該当する拠点に設置された管理装置に送信する割当部と、を備え、
前記管理装置は、
前記割当装置からの問合せに応じて、前記通信路識別子及び前記ＭＡＣアドレスを送信する送信部と、
前記割当部からＭＡＣアドレスを受信すると、受信したＭＡＣアドレスを、ＭＡＣアドレスの重複が生じている複数の端末の少なくとも一方に設定する設定部と
を備えたことを特徴とする割当システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、割当装置、割当プログラム、割当方法、及び割当システムに関する。
【背景技術】
【０００２】
近年、複数の拠点間を相互に接続する技術（例えば、次世代企業網連携技術）が提案されている。この技術によれば、例えば、各企業のＶＰＮ（Virtual  Private  Network）同士が相互に接続され、異なる企業間に協働空間が形成される。また、近年、クラウドコンピューティング（cloud  computing）と呼ばれる技術が登場している。クラウドコンピューティングによれば、ハードウェアやソフトウェア、データなどが別拠点に保管され、利用者は、この別拠点にアクセスすることでサービスの提供を受ける。なお、クラウドコンピューティングにおいてハードウェアやソフトウェア、データなどを保管するサーバ側の拠点のことを、以下「クラウド拠点」と呼ぶ。
【０００３】
クラウド拠点においては、仮想マシン技術が用いられることが多い。仮想マシン技術とは、物理的なハードウェアを論理的に分割し、分割したハードウェア毎にＯＳ（Operating  System）を動作させることで、１台のマシンをあたかも複数台のマシンであるかの如く動作させる技術である。例えば、クラウド拠点に設置された１台のサーバにこの技術を適用することで、あたかも複数のサーバであるかの如く動作させ、複数の企業に個別にサービスを提供することができる。
【０００４】
ここで、仮想マシン技術を用いた場合、仮想マシンのＭＡＣ（Media  Access  Control）アドレスが重複することがある。このような場合、従来の技術によれば、例えば、重複するＭＡＣアドレス、及び、未使用（すなわち未重複）のＭＡＣアドレスを調査し、調査した未使用のＭＡＣアドレスを該当する仮想マシンに再設定する必要がある。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】VMware、"VMware  vCenter  Server4.1  Update1  リリースノート"、「仮想マシンのＭＡＣアドレスが競合する」、［online］、［平成23年5月31日検索］、インターネット〈URL：http://www.vmware.com/jp/support/vsphere4/doc/vsp_vc41_u1_rel_notes.html〉
【非特許文献２】今田隆秀、"複雑なネットワークも柔軟に構成"、［online］、［平成23年5月31日検索］、インターネット〈URL：http://itpro.nikkeibp.co.jp/article/COLUMN/20061019/251211/〉
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、上述した従来の技術では、ＭＡＣアドレスの重複を適切に解決することができない。
【課題を解決するための手段】
【０００７】
実施形態に係る割当装置は、拠点内の端末に対してＭＡＣアドレスを割り当てる。実施形態に係る割当装置は、収集部と、分類部と、判定部と、割当部とを備える。前記収集部は、２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、２拠点毎に構築された通信路を識別する通信路識別子を、通信路が設定されたスイッチ毎に収集する。前記分類部は、前記収集部によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する。前記判定部は、前記分類部によって分類されたグループ毎に、該グループ内の複数の端末にＭＡＣアドレスの重複が生じているか否かを判定する。前記割当部は、前記判定部によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当てる。
【０００８】
また、実施形態に係る割当プログラムは、コンピュータを割当装置として機能させる。
【０００９】
また、実施形態に係る割当方法は、拠点内の端末に対してＭＡＣアドレスを割り当てる割当装置で実行される。実施形態に係る割当方法は、収集工程と、分類工程と、判定工程と、割当工程とを含む。前記収集工程は、２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、２拠点毎に構築された通信路を識別する通信路識別子を、通信路が設定されたスイッチ毎に収集する。前記分類工程は、前記収集工程によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する。前記判定工程は、前記分類工程によって分類されたグループ毎に、該グループ内の複数の端末にＭＡＣアドレスの重複が生じているか否かを判定する。前記割当工程は、前記判定工程によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当てる。
【００１０】
また、実施形態に係る割当システムは、端末及びスイッチが動作する各拠点に設置された管理装置と、拠点内の端末に対してＭＡＣアドレスを割り当てる割当装置とを含む。前記割当装置は、収集部と、分類部と、判定部と、割当部とを備える。前記収集部は、２拠点毎に構築された通信路同士を拠点内のスイッチを介して相互に接続することで、ＭＡＣアドレスによる通信を行うネットワークを複数の拠点間に構築する場合に、各拠点に設置された前記管理装置に対して、２拠点毎に構築された通信路を識別する通信路識別子、及び、各拠点内の端末に割り当てられているＭＡＣアドレスを問合せ、前記管理装置から、該通信路識別子及び該ＭＡＣアドレスを、通信路が設定されたスイッチ毎に収集する。前記分類部は、前記収集部によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、同一のネットワークに属するグループに分類する。前記判定部は、前記収集部によってスイッチ毎に収集されたＭＡＣアドレスに基づいて、前記分類部によって分類されたグループ毎に、該グループ内の端末にＭＡＣアドレスの重複が生じているか否かを判定する。前記割当部は、前記判定部によってＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている前記複数の端末の少なくとも一方に、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスを割り当て、割り当てたＭＡＣアドレスを、該当する拠点に設置された管理装置に送信する。また、前記管理装置は、送信部と、設定部とを備える。前記送信部は、前記割当装置からの問合せに応じて、前記通信路識別子及び前記ＭＡＣアドレスを送信する。前記設定部は、前記割当部からＭＡＣアドレスを受信すると、受信したＭＡＣアドレスを、ＭＡＣアドレスの重複が生じている複数の端末の少なくとも一方に設定する。
【発明の効果】
【００１１】
実施形態に係る割当装置、割当プログラム、割当方法、及び割当システムによれば、ＭＡＣアドレスの重複を適切に解決することができるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、第１の実施形態に係る割当装置の構成例を示す図である。
【図２】図２は、仮想マシンのＭＡＣアドレスの重複を説明するための図である。
【図３Ａ】図３Ａは、第２の実施形態における協働空間を説明するための図である。
【図３Ｂ】図３Ｂは、第２の実施形態における協働空間を説明するための図である。
【図４】図４は、第２の実施形態に係るネットワークオペレーションシステムの構成例を示す図である。
【図５】図５は、第２の実施形態に係るネットワーク情報収集部による処理手順を示すフローチャートである。
【図６Ａ】図６Ａは、第２の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【図６Ｂ】図６Ｂは、第２の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【図７】図７は、第２の実施形態に係るＭＡＣアドレス情報収集部による処理手順を示すフローチャートである。
【図８】図８は、第２の実施形態に係る使用中ＭＡＣアドレスデータベースを説明するための図である。
【図９】図９は、第２の実施形態に係る重複ＭＡＣアドレス判定部による処理手順を示すフローチャートである。
【図１０】図１０は、第２の実施形態に係る重複ＭＡＣアドレスデータベースを説明するための図である。
【図１１】図１１は、第２の実施形態に係る再割当ＭＡＣアドレスプリフィックスリストを説明するための図である。
【図１２】図１２は、第２の実施形態に係る再割当ＭＡＣアドレスデータベースを説明するための図である。
【図１３Ａ】図１３Ａは、その他の実施形態における協働空間を説明するための図である。
【図１３Ｂ】図１３Ｂは、その他の実施形態における協働空間を説明するための図である。
【図１４】図１４は、その他の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【図１５Ａ】図１５Ａは、その他の実施形態における協働空間を説明するための図である。
【図１５Ｂ】図１５Ｂは、その他の実施形態における協働空間を説明するための図である。
【図１６】図１６は、その他の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【図１７】図１７は、ＭＡＣアドレスを割り当てるコンピュータを示す図である。
【発明を実施するための形態】
【００１３】
以下、本発明に係る割当装置、割当プログラム、割当方法、及び割当システムの実施形態を説明する。なお、以下の実施形態により本発明が限定されるものではない。
【００１４】
（第１の実施形態）
図１は、第１の実施形態に係る割当装置１０の構成例を示す図である。図１に示すように、第１の実施形態においては、２拠点毎に通信路が構築され、この通信路同士が各拠点内のスイッチを介して相互に接続されることで、複数の拠点間が接続される。第１の実施形態に係る割当装置１０は、このような拠点間接続を行う各拠点から情報を収集し、収集した情報に基づいてＭＡＣアドレスの重複を判定し、ＭＡＣアドレスの重複が生じている端末に、適切なＭＡＣアドレスを割り当てる。具体的には、割当装置１０は、収集部１１と、分類部１２と、判定部１３と、割当部１４とを備える。
【００１５】
収集部１１は、２拠点毎に構築された通信路を識別する通信路識別子を、通信路が設定されたスイッチ毎に収集する。例えば、収集部１１は、拠点Ａから、スイッチＡ１に設定された通信路識別子を収集し、スイッチＡ２に設定された通信路識別子を収集する。
【００１６】
分類部１２は、収集部１１によってスイッチ毎に収集された通信路識別子に基づいて、通信路同士の接続関係を判定し、判定した接続関係に基づいて、各通信路を用いて通信を行う各拠点内の端末を、ＭＡＣアドレスによる通信を行うネットワークに属するグループに分類する。
【００１７】
例えば、分類部１２は、同一の通信路識別子によって識別される通信路を同一のネットワークであると判定する。例えば、図１に示すように、スイッチＡ２とスイッチＣ１との間には、同一の通信路識別子によって識別される１つの通信路が構築されている。このような場合、分類部１２は、スイッチＡ２とスイッチＣ１との間に構築された通信路が同一のネットワークであると判定する。また、例えば、分類部１２は、異なる通信路識別子によって識別される複数の通信路が同一のスイッチに設定されている場合に、これらの複数の通信路を同一のネットワークであると判定する。例えば、図１に示すように、スイッチＢ１には、異なる通信路識別子によって識別される複数の通信路が設定されている。このような場合、分類部１２は、これらの複数の通信路（スイッチＡ１とスイッチＢ１との間に構築された通信路、及び、スイッチＢ１とスイッチＤ１との間に構築された通信路）が同一のネットワークであると判定する。また、同様に、スイッチＤ１にも、異なる通信路識別子によって識別される複数の通信路が設定されている。このような場合、分類部１２は、これらの複数の通信路（スイッチＤ１とスイッチＢ１との間に構築された通信路、及び、スイッチＤ１とスイッチＣ２との間に構築された通信路）が同一のネットワークであると判定する。
【００１８】
結局、図１に示す例の場合、実線で示す３つの通信路（スイッチＡ１とスイッチＢ１との間に構築された通信路、スイッチＢ１とスイッチＤ１との間に構築された通信路、及び、スイッチＤ１とスイッチＣ２との間に構築された通信路）が、ある１つのネットワークに分類され、点線で示す１つの通信路（スイッチＡ２とスイッチＣ１との間に構築された通信路）が、他の１つのネットワークに分類される。そこで、分類部１２は、この分類に基づいて、各通信路を用いて通信を行う各拠点内の端末を、各ネットワークに属するグループに分類する。
【００１９】
すなわち、分類部１２は、分類の対象となる拠点が２拠点であり、この２拠点間に１つの通信路が構築された場合、この通信路は同一の通信路識別子によって識別される通信路であるので、同一のネットワークであると判定する。また、分類部１２は、分類の対象となる拠点が３拠点以上であり、３拠点以上の拠点間でスター型やフルメッシュ型の通信路が２拠点毎に構築された場合、同一の通信路識別子によって識別される通信路が同一のネットワークであると判定する。また、分類部１２は、異なる通信路識別子によって識別される複数の通信路が同一のスイッチに設定されている場合に、これらの複数の通信路を同一のネットワークであると判定する。このように、分類部１２は、同一の通信路識別子による判定と、異なる通信路識別子による判定とを、適宜選択したり、組み合わせることで、分類を行う。
【００２０】
判定部１３は、分類部１２によって分類されたグループ毎に、グループ内の端末にＭＡＣアドレスの重複が生じているか否かを判定する。割当部１４は、判定部１３によってＭＡＣアドレスの重複が生じていると判定された場合に、ＭＡＣアドレスの重複が生じている複数の端末の少なくとも一方に、グループ内で未使用のＭＡＣアドレスを割り当てる。
【００２１】
このように、第１の実施形態によれば、ＭＡＣアドレスの重複を適切に解決することができる。すなわち、第１の実施形態に係る割当装置１０は、ＭＡＣアドレスの重複を調査する調査対象を、ＭＡＣアドレスの重複が問題となり得るネットワーク単位に絞り込むことで、調査の手間及びＭＡＣアドレスの再割当の手間を軽減する。
【００２２】
なお、第１の実施形態においては、スイッチとスイッチとの間に通信路が構築される場合を説明したが、実施形態はこれに限られるものではなく、スイッチに接続される端末と端末との間に、スイッチを通過する通信路が構築される場合にも、同様に適用することができる。
【００２３】
（第２の実施形態）
次に、第２の実施形態を説明する。第２の実施形態においては、複数のクラウド拠点間が接続され、クラウド拠点にて仮想化技術が用いられる場合を例に挙げて説明する。このような場合、仮想マシンのＭＡＣアドレスがクラウド拠点間で重複することがある。このため、第２の実施形態においては、ネットワークオペレーションシステム（Network  Operation  System）１００が、各クラウド拠点から情報を収集し、収集した情報に基づいてＭＡＣアドレスの重複を判定し、ＭＡＣアドレスの重複が生じている仮想マシンに、適切なＭＡＣアドレスを割り当てる。
【００２４】
ここで、第２の実施形態に係るネットワークオペレーションシステム１００を説明する前に、第２の実施形態に係るネットワークオペレーションシステム１００が適用されない場合の課題について説明する。図２は、仮想マシンのＭＡＣアドレスの重複を説明するための図である。図２において、実線矢印は、既に構築済みのクラウド拠点間接続を示し、点線矢印は、新規に構築されるクラウド拠点間接続を示す。仮想マシンのＭＡＣアドレスは、各クラウド拠点内において一意に割り当てられたとしても、図２に示すように、例えば、クラウド拠点Ａの仮想マシンＡ−２と、クラウド拠点Ｂの仮想マシンＢ−２との間のクラウド拠点間接続が新規に構築されると、例えば、クラウド拠点Ａの仮想マシンＡ−２のＭＡＣアドレスと、クラウド拠点Ｂの仮想マシンＢ−１のＭＡＣアドレスとが重複してしまう。
【００２５】
第２の実施形態に係るネットワークオペレーションシステム１００が適用されない場合、例えば、複数のクラウド拠点間において重複するＭＡＣアドレス、及び、未使用のＭＡＣアドレスを調査し、調査した未使用のＭＡＣアドレスを各クラウド拠点の該当する仮想マシンに再設定する必要がある。調査の対象となるクラウド拠点は、申請された１クラウド拠点間接続に属するクラウド拠点に限られず、各クラウド拠点にて既に構築済みの別のクラウド拠点間接続に属するクラウド拠点にまで及ぶ可能性があった。
【００２６】
この点、第２の実施形態に係るネットワークオペレーションシステム１００によれば、以下に説明するように、ＭＡＣアドレスの重複を調査する調査対象を、ＭＡＣアドレスの重複が問題となり得るネットワーク単位に絞り込み、絞り込んだ範囲内でＭＡＣアドレスの重複が生じているか否かを自動的に判定するので、ＭＡＣアドレスの重複を適切に解決することができる。以下、第２の実施形態に係るネットワークオペレーションシステム１００を説明する。
【００２７】
図３Ａ及び図３Ｂは、第２の実施形態における協働空間を説明するための図である。なお、第２の実施形態においては、クラウド拠点Ａ、クラウド拠点Ｂ、クラウド拠点Ｃ、及びクラウド拠点Ｄの４拠点間に構築された協働空間を例に挙げて説明するが、一例に過ぎず、実施形態はこれに限られるものではない。
【００２８】
まず、図３Ａに示すように、各クラウド拠点には、ハイパーバイザ（hypervisor）と、仮想スイッチ管理部と、クラウド管理部とが備えられる。また、各クラウド拠点には、仮想スイッチ及び仮想マシンが動作する。例えば、クラウド拠点Ａには、ハイパーバイザＡと、仮想スイッチ管理部Ａと、クラウド管理部Ａとが備えられ、仮想スイッチＡ１及び仮想スイッチＡ２、並びに、仮想マシンＡ−１及び仮想マシンＡ−２が動作する。
【００２９】
ハイパーバイザＡは、仮想化技術を実現するソフトウェアであり、仮想スイッチ管理部Ａやクラウド管理部Ａとの間で情報のやり取りを行う。仮想スイッチ管理部Ａは、クラウド拠点Ａ内に仮想的に構築された仮想スイッチに関する情報を管理する。例えば、仮想スイッチ管理部Ａは、クラウド拠点を識別する識別子（以下、クラウド拠点識別子）や、仮想スイッチを識別する識別子（以下、仮想スイッチ識別子）を管理する。第２の実施形態において、これらの識別子は、他のクラウド拠点と競合しないように規定される。また、仮想スイッチ管理部Ａは、仮想スイッチ毎に、クラウド拠点側ではない外部側に設定されている仮想的な通信路（以下、外部ＶＰＮ）の数や、外部ＶＰＮを識別する識別子（以下、外部ＶＰＮ識別子）などを管理する。
【００３０】
クラウド管理部Ａは、クラウド拠点Ａ内に仮想的に構築された仮想マシンに関する情報を管理する。例えば、クラウド管理部Ａは、クラウド拠点識別子や、仮想スイッチ識別子を管理する。また、クラウド管理部Ａは、仮想スイッチ毎に、仮想スイッチに仮想的に接続されている仮想マシンの識別子（以下、仮想マシン識別子）や、仮想マシンのＮＩＣ（Network  Interface  Card）の識別子(以下、ＮＩＣ識別子)、仮想マシンのＭＡＣアドレスなどを管理する。なお、説明を割愛するが、他のクラウド拠点も、クラウド拠点Ａと同様に構成される。また、仮想マシンと仮想スイッチとは、必ずしも１対１で構築されるものではなく、その対応関係は任意である。例えばクラウド拠点Ｂのように、２台の仮想マシンと１台の仮想スイッチとが対応するように構築されてもよい。
【００３１】
第２の実施形態において想定する具体的なネットワーク構成を説明する。図３Ａに示すように、クラウド拠点Ａ内の仮想スイッチＡ１には、外部ＶＰＮ識別子「ＶＬＡＮ（Virtual  Local  Area  Network）２０００」によって識別される外部ＶＰＮが設定される。クラウド拠点Ａ内の仮想マシンＡ−１及びクラウド拠点Ｂ内の仮想マシンＢ−１が、この外部ＶＰＮを用いて通信を行う。また、仮想マシンＡ−２には、外部ＶＰＮ識別子「ＶＬＡＮ２０１０」によって識別される外部ＶＰＮが設定される。クラウド拠点Ａ内の仮想マシンＡ−２及びクラウド拠点Ｃ内の仮想マシンＣ−１が、この外部ＶＰＮを用いて通信を行う。
【００３２】
また、クラウド拠点Ｂ内の仮想スイッチＢ１には、外部ＶＰＮ識別子「ＶＬＡＮ２０００」及び「ＶＬＡＮ２０２０」によって識別される外部ＶＰＮが設定される。クラウド拠点Ｂ内の仮想マシンＢ−１及びクラウド拠点Ａ内の仮想マシンＡ−１が、「ＶＬＡＮ２０００」によって識別される外部ＶＰＮを用いて通信を行う。また、クラウド拠点Ｂ内の仮想マシンＢ−２及びクラウド拠点Ｄ内の仮想マシンＤ−１が、「ＶＬＡＮ２０２０」によって識別される外部ＶＰＮを用いて通信を行う。
【００３３】
また、クラウド拠点Ｃ内の仮想スイッチＣ１には、外部ＶＰＮ識別子「ＶＬＡＮ２０１０」によって識別される外部ＶＰＮが設定される。クラウド拠点Ｃ内の仮想マシンＣ−１及びクラウド拠点Ａ内の仮想マシンＡ−２が、この外部ＶＰＮを用いて通信を行う。また、仮想スイッチＣ２には、外部ＶＰＮ識別子「ＶＬＡＮ２０３０」によって識別される外部ＶＰＮが設定される。クラウド拠点Ｃ内の仮想マシンＣ−２及びクラウド拠点Ｄ内の仮想マシンＤ−２が、この外部ＶＰＮを用いて通信を行う。
【００３４】
また、クラウド拠点Ｄ内の仮想スイッチＤ１には、外部ＶＰＮ識別子「ＶＬＡＮ２０２０」及び「ＶＬＡＮ２０３０」によって識別される外部ＶＰＮが設定される。クラウド拠点Ｄ内の仮想マシンＤ−１及びクラウド拠点Ｂ内の仮想マシンＢ−２が、「ＶＬＡＮ２０２０」によって識別される外部ＶＰＮを用いて通信を行う。また、クラウド拠点Ｃ内の仮想マシンＣ−２及びクラウド拠点Ｄ内の仮想マシンＤ−２が、「ＶＬＡＮ２０３０」によって識別される外部ＶＰＮを用いて通信を行う。
【００３５】
ここで、図３Ａに示すネットワーク構成は、例えば仮想マシンＡ−１と仮想マシンＢ−１との間の外部ＶＰＮのように、仮想マシンと仮想マシンとの間に、例えば仮想スイッチＡ１と仮想スイッチＢ１とを通過する外部ＶＰＮが構築されることを想定するものであるが、実施形態はこれに限られるものではない。例えば、図３Ｂに示すネットワーク構成のように、外部ＶＰＮは、仮想スイッチと仮想スイッチとの間に構築されてもよい。すなわち、図３Ｂにおいて、実線の矢印部分は、仮想スイッチ間に構築された外部ＶＰＮを示し、点線の矢印部分は、仮想スイッチと仮想マシンとが仮想ケーブル（例えば、仮想Ethernet（登録商標）ケーブル）で接続されることを示す。この仮想ケーブルは、例えば上述したハイパーバイザによって実現され、管理される。以下に説明するネットワークオペレーションシステム１００は、この図３Ａに示すネットワーク構成においても、あるいは、図３Ｂに示すネットワーク構成においても、適用が可能である。
【００３６】
図４は、第２の実施形態に係るネットワークオペレーションシステム１００の構成例を示す図である。図４に示すように、ネットワークオペレーションシステム１００は、調査指示受付部１１１と、ネットワーク情報収集部１１２と、ＭＡＣアドレス情報収集部１１３と、重複ＭＡＣアドレス判定部１１４と、ＭＡＣアドレス再割当部１１５と、設定送信部１１６とを有する。
【００３７】
また、ネットワークオペレーションシステム１００は、調査対象仮想スイッチデータベース１２１と、使用中ＭＡＣアドレスデータベース１２２と、重複ＭＡＣアドレスデータベース１２３と、再割当ＭＡＣアドレスプリフィックスリスト１２４と、再割当ＭＡＣアドレスデータベース１２５とを有する。なお、第２の実施形態において、再割当ＭＡＣアドレスプリフィックスリスト１２４は、後述するように、予め格納された情報を記憶し、他のデータベースは、ネットワークオペレーションシステム１００による処理の途中で一時的に格納される情報を記憶する。
【００３８】
調査指示受付部１１１は、ＭＡＣアドレスの重複を調査する調査指示を受け付ける。例えば、調査指示受付部１１１は、図示しない入力部を介して操作者による調査指示を受け付け、調査指示を受け付けた旨の通知をネットワーク情報収集部１１２に送る。ネットワークオペレーションシステム１００の操作者は、例えば、新たなクラウド拠点間接続の申請を受け付けた場合に、ネットワークオペレーションシステム１００に対して調査指示を入力する。また、操作者は、例えば、あるクラウド拠点から正常に通信を行うことができないといった通知を受け付けた場合に、ネットワークオペレーションシステム１００に対して調査指示を入力する。
【００３９】
ネットワーク情報収集部１１２は、各クラウド拠点内の仮想スイッチ管理部から、仮想スイッチ管理部が管理する情報（以下、ネットワーク情報）を収集する。また、ネットワーク情報収集部１１２は、ネットワーク情報に含まれる外部ＶＰＮ識別子に基づいて、各クラウド拠点内の仮想スイッチを、ＭＡＣアドレスによる通信を行うネットワークに属するグループに分類する。
【００４０】
例えば、ネットワーク情報収集部１１２は、各クラウド拠点内の仮想スイッチ管理部に対して、仮想スイッチ毎にネットワーク情報を送信するように問い合わせる。仮想スイッチ管理部は、この問合せに応じてネットワーク情報を送信する。すると、ネットワーク情報収集部１１２は、仮想スイッチ管理部から送信されたネットワーク情報を、調査対象仮想スイッチデータベース１２１に格納する。
【００４１】
図５は、第２の実施形態に係るネットワーク情報収集部１１２による処理手順を示すフローチャートであり、図６Ａ及び図６Ｂは、第２の実施形態に係る調査対象仮想スイッチデータベース１２１を説明するための図である。
【００４２】
ここで、図６Ａに示すように、調査対象仮想スイッチデータベース１２１には、仮想スイッチ毎に、１エントリずつ、ネットワーク情報が記述される。例えば、調査対象仮想スイッチデータベース１２１は、ネットワーク情報として、クラウド拠点識別子、仮想スイッチ識別子、外部ＶＰＮの数（以下、外部ＶＰＮ数）、及び、外部ＶＰＮ識別子を対応付けて記憶する。また、調査対象仮想スイッチデータベース１２１は、ネットワーク情報に対応付けて、調査対象の範囲を画するグループを識別する識別子（以下、調査対象グループ識別子）を記憶する。すなわち、ネットワーク情報収集部１１２は、ネットワーク情報を格納する際に、この調査対象グループ識別子を対応付けて格納することで、各クラウド拠点の仮想スイッチを、ＭＡＣアドレスによる通信を行うネットワークに属するグループに分類する。
【００４３】
図５に示すように、ネットワーク情報収集部１１２は、調査指示を受け付けた旨の通知を調査指示受付部１１１から受け取ると（ステップＳ１０１肯定）、各クラウド拠点内の仮想スイッチ管理部からネットワーク情報を収集する（ステップＳ１０２）。
【００４４】
次に、ネットワーク情報収集部１１２は、収集したネットワーク情報を、調査対象仮想スイッチデータベース１２１に格納する。
【００４５】
例えば、ネットワーク情報収集部１１２は、まず、クラウド拠点識別子、仮想スイッチ識別子、外部ＶＰＮ数、及び外部ＶＰＮ識別子を対応付けて格納する（ステップＳ１０３）。例えば、ネットワーク情報収集部１１２は、図６Ａに示すように、「Ａ」、「Ａ１」、「１」、及び「ＶＬＡＮ２０００」を対応付けて格納する。なお、図６Ａに示す調査対象仮想スイッチデータベース１２１には、上から順に１エントリずつ情報が格納される。
【００４６】
次に、ネットワーク情報収集部１１２は、調査対象仮想スイッチデータベース１２１に格納済みの外部ＶＰＮ識別子を検索し、一致する外部ＶＰＮ識別子が格納されているか否かを判定する（ステップＳ１０４）。
【００４７】
一致する外部ＶＰＮ識別子が検索された場合（ステップＳ１０４肯定）、ネットワーク情報収集部１１２は、その検索された外部ＶＰＮ識別子に対応付けて格納されている調査対象グループ識別子を対応付けて格納する（ステップＳ１０５）。一方、一致する外部ＶＰＮ識別子が検索されない場合（ステップＳ１０４否定）、ネットワーク情報収集部１１２は、新たな調査対象グループ識別子を対応付けて格納する（ステップＳ１０６）。
【００４８】
例えば、図６Ａにおいて、仮想スイッチ「Ａ１」で識別されるエントリを格納する際、２行目以降のエントリは未だ格納されておらず、「ＶＬＡＮ２０００」と一致する外部ＶＰＮ識別子は検索されないので、ネットワーク情報収集部１１２は、新たな調査対象グループ識別子「１」を対応付けて格納する。一方、例えば、仮想スイッチ「Ｂ１」で識別されるエントリを格納する際、「ＶＬＡＮ２０００」と一致する外部ＶＰＮ識別子が検索されるので、ネットワーク情報収集部１１２は、「ＶＬＡＮ２０００」に対応付けて格納されている調査対象グループ識別子「１」を対応付けて格納する。
【００４９】
続いて、ネットワーク情報収集部１１２は、各クラウド拠点内の仮想スイッチ管理部から収集したネットワーク情報で、調査対象仮想スイッチデータベース１２１に格納していないネットワーク情報が残っているか否かを判定し（ステップＳ１０７）、残っている場合には（ステップＳ１０７肯定）、再び、ステップＳ１０３の処理に戻る。
【００５０】
一方、残っていない場合には（ステップＳ１０７否定）、ネットワーク情報収集部１１２は、調査対象仮想スイッチデータベース１２１に格納されたネットワーク情報全体に対して、外部ＶＰＮ識別子が一致し、且つ、調査対象グループ識別子が異なる仮想スイッチ識別子の組が、調査対象仮想スイッチデータベース１２１に格納されているか否かを判定する（ステップＳ１０８）。
【００５１】
そして、そのような仮想スイッチ識別子の組が格納されている場合には（ステップＳ１０８肯定）、ネットワーク情報収集部１１２は、一方の調査対象グループ識別子を、後から格納された調査対象グループ識別子に書き換えて（ステップＳ１０９）、処理を終了する。仮想スイッチ識別子の組が格納されていない場合には（ステップＳ１０８否定）、ネットワーク情報収集部１１２は、ステップＳ１０９の処理を行うことなく、処理を終了する。
【００５２】
例えば、図６Ａにおいて、仮想スイッチ識別子「Ｃ２」で識別されるエントリには、外部ＶＰＮ識別子「ＶＬＡＮ２０３０」と、調査対象グループ識別子「３」とが対応付けて格納されている。また、仮想スイッチ識別子「Ｄ１」で識別されるエントリには、外部ＶＰＮ識別子「ＶＬＡＮ２０２０」及び「ＶＬＡＮ２０３０」と、調査対象グループ識別子「１」とが対応付けて格納されている。このように、仮想スイッチ識別子「Ｃ２」で識別されるエントリと、仮想スイッチ識別子「Ｄ１」で識別されるエントリとは、外部ＶＰＮ識別子「ＶＬＡＮ２０３０」が一致し、且つ、調査対象グループ識別子が「１」と「３」とで異なる。このような事態は、エントリが格納される順番によって生じ得る。
【００５３】
このような場合、ネットワーク情報収集部１１２は、一方の調査対象グループ識別子を、後から格納された調査対象グループ識別子に書き換える。例えば、ネットワーク情報収集部１１２は、仮想スイッチ識別子「Ｄ１」で識別されるエントリの方が後から格納されたエントリであるので、図６Ｂの丸印に示すように、このエントリの調査対象グループ識別子「１」によって、仮想スイッチ識別子「Ｃ２」で識別されるエントリの調査対象グループ識別子「３」を書き換える。
【００５４】
なお、ネットワーク情報収集部１１２は、分類の対象となるクラウド拠点が２拠点であり、この２拠点間に１つの外部ＶＰＮが構築された場合、この外部ＶＰＮは同一の外部ＶＰＮ識別子によって識別される外部ＶＰＮであるので、同一のネットワークであると判定する。また、ネットワーク情報収集部１１２は、分類の対象となるクラウド拠点が３拠点以上であり、３拠点以上のクラウド拠点間でスター型やフルメッシュ型の外部ＶＰＮが２拠点毎に構築された場合、同一の外部ＶＰＮ識別子によって識別される外部ＶＰＮが同一のネットワークであると判定する。また、ネットワーク情報収集部１１２は、異なる外部ＶＰＮ識別子によって識別される複数の外部ＶＰＮが同一の仮想スイッチに設定されている場合に、これらの複数の外部ＶＰＮを同一のネットワークであると判定する。このように、ネットワーク情報収集部１１２は、同一の通信路識別子による判定と、異なる通信路識別子による判定とを、適宜選択したり、組み合わせることで、分類を行う。
【００５５】
ＭＡＣアドレス情報収集部１１３は、各クラウド拠点内のクラウド管理部から、クラウド管理部が管理する情報（以下、ＭＡＣアドレス情報）を収集する。また、ＭＡＣアドレス情報収集部１１３は、ＭＡＣアドレス情報に基づいて、各クラウド拠点の仮想スイッチに接続さえた仮想マシンを、ＭＡＣアドレスによる通信を行うネットワークに属するグループに分類する。
【００５６】
例えば、ＭＡＣアドレス情報収集部１１３は、各クラウド拠点内のクラウド管理部に対して、仮想スイッチ毎にＭＡＣアドレス情報を送信するように問い合わせる。クラウド管理部は、この問合せに応じてＭＡＣアドレス情報を送信する。すると、ＭＡＣアドレス情報収集部１１３は、クラウド管理部から送信されたＭＡＣアドレス情報を、使用中ＭＡＣアドレスデータベース１２２に格納する。なお、ＭＡＣアドレス情報収集部１１３は、この格納の際に、調査対象仮想スイッチデータベース１２１を参照する。
【００５７】
図７は、第２の実施形態に係るＭＡＣアドレス情報収集部１１３による処理手順を示すフローチャートであり、図８は、第２の実施形態に係る使用中ＭＡＣアドレスデータベース１２２を説明するための図である。
【００５８】
ここで、図８に示すように、使用中ＭＡＣアドレスデータベース１２２には、仮想マシン毎に、１エントリずつ、ＭＡＣアドレス情報が記述される。例えば、使用中ＭＡＣアドレスデータベース１２２は、クラウド拠点識別子、仮想スイッチ識別子、仮想マシンのＭＡＣアドレス、仮想マシン識別子、及び、ＮＩＣ識別子を対応付けて記憶する。また、使用中ＭＡＣアドレスデータベース１２２は、ＭＡＣアドレス情報に対応付けて、調査対象グループ識別子を記憶する。すなわち、使用中ＭＡＣアドレスデータベース１２２は、ＭＡＣアドレス情報を格納する際に、この調査対象グループ識別子を対応付けて格納することで、各クラウド拠点内の仮想マシンを、ＭＡＣアドレスによる通信を行うネットワークに属するグループ毎に分類する。
【００５９】
ネットワーク情報収集部１１２による処理に続き、ＭＡＣアドレス情報収集部１１３は、図７に示すように、各クラウド拠点内のクラウド管理部からＭＡＣアドレス情報を収集する（ステップＳ２０１）。
【００６０】
次に、ＭＡＣアドレス情報収集部１１３は、調査対象仮想スイッチデータベース１２１を参照して該当する調査対象識別子を取得し、取得した調査対象識別子に対応付けて、収集したＭＡＣアドレス情報を、使用中ＭＡＣアドレスデータベース１２２に格納する（ステップＳ２０２）。例えば、ＭＡＣアドレス情報収集部１１３は、調査対象グループ識別子の昇順に、調査対象識別子と、仮想マシン毎のＭＡＣアドレス情報とを対応付けて、使用中ＭＡＣアドレスデータベース１２２に格納する。なお、図８に示す使用中ＭＡＣアドレスデータベース１２２には、上から順に１エントリずつ情報が格納される。そして、ＭＡＣアドレス情報収集部１１３は、未格納のＭＡＣアドレス情報の有無を判定し（ステップＳ２０３）、未格納のＭＡＣアドレス情報がある場合には（ステップＳ２０３肯定）、ステップＳ２０２の処理に戻る。
【００６１】
重複ＭＡＣアドレス判定部１１４は、ＭＡＣアドレス情報収集部１１３によって分類されたグループ毎に、グループ内の仮想マシンにＭＡＣアドレスの重複が生じているか否かを判定する。
【００６２】
図９は、第２の実施形態に係る重複ＭＡＣアドレス判定部１１４による処理手順を示すフローチャートであり、図１０は、第２の実施形態に係る重複ＭＡＣアドレスデータベース１２３を説明するための図である。
【００６３】
ＭＡＣアドレス情報収集部１１３による処理に続き、重複ＭＡＣアドレス判定部１１４は、図９に示すように、使用中ＭＡＣアドレスデータベース１２２を参照し、調査対象グループ識別子が一致し、且つ、ＭＡＣアドレスが一致するエントリを抽出する（ステップＳ３０１）。なお、第２の実施形態において、重複ＭＡＣアドレス判定部１１４は、該当するエントリがひとつである場合も、このひとつのエントリを抽出する。
【００６４】
そして、重複ＭＡＣアドレス判定部１１４は、使用中ＭＡＣアドレスデータベース１２２から抽出したエントリを、重複ＭＡＣアドレスデータベース１２３に格納する（ステップＳ３０２）。図１０に示すように、重複ＭＡＣアドレスデータベース１２３は、調査対象グループ識別子、ＭＡＣアドレス、利用数、クラウド拠点識別子、仮想マシン識別子、及び、ＮＩＣ識別子を対応付けて記憶する。ここで、利用数は、調査対象グループ識別子が一致し、且つ、ＭＡＣアドレスが一致するとして抽出されたエントリの数である。また、この利用数が「２」以上の場合、「クラウド拠点識別子、仮想マシン識別子、及び、ＮＩＣ識別子」の組が、同一のエントリに繰り返し記述される。なお、図１０に示す重複ＭＡＣアドレスデータベース１２３には、上から順に１エントリずつ情報が格納される。そして、重複ＭＡＣアドレス判定部１１４は、未格納のエントリの有無を判定し（ステップＳ３０３）、未格納のエントリがある場合には（ステップＳ３０３肯定）、ステップＳ３０１の処理に戻る。
【００６５】
例えば、重複ＭＡＣアドレス判定部１１４は、使用中ＭＡＣアドレスデータベース１２２を参照し、調査対象グループ識別子が一致し、且つ、ＭＡＣアドレスが一致するエントリとして、仮想マシン識別子「Ａ−１」で識別されるエントリと、仮想マシン識別子「Ｂ−１」で識別されるエントリとを抽出する。そして、重複ＭＡＣアドレス判定部１１４は、調査対象グループ識別子「１」と、ＭＡＣアドレス「00:11:22:33:44:55」と、利用数「２」と、クラウド識別子「Ａ」、仮想マシン識別子「Ａ−１」、及びＮＩＣ識別子「ｅｔｈ０」の組と、クラウド識別子「Ｂ」、仮想マシン識別子「Ｂ−１」、及びＮＩＣ識別子「ｅｔｈ１」の組とを対応付けて、重複ＭＡＣアドレスデータベース１２３に格納する。
【００６６】
ＭＡＣアドレス再割当部１１５は、重複ＭＡＣアドレス判定部１１４によって、ＭＡＣアドレスの重複が生じていると判定された場合には、ＭＡＣアドレスの重複が生じている複数の仮想マシンのうち少なくとも一方の仮想マシンに、ＭＡＣアドレスの重複が生じているグループ内で未使用のＭＡＣアドレスで、且つ、この仮想マシンが設定されているクラウド拠点と同一のクラウド拠点内で未使用のＭＡＣアドレスを割り当てる。
【００６７】
例えば、ＭＡＣアドレス再割当部１１５は、重複ＭＡＣアドレスデータベース１２３を１エントリ毎に参照し、ＭＡＣアドレスの重複が生じている仮想マシンを特定する。次に、ＭＡＣアドレス再割当部１１５は、再割当ＭＡＣアドレスプリフィックスリスト１２４を参照し、ＭＡＣアドレスのプリフィックス部用に割り当てられたＭＡＣアドレスの上位３バイト（２４ビット）の情報を取得する。そして、ＭＡＣアドレス再割当部１１５は、下位３バイト（２４ビット）の情報をランダムに決定し、取得した上位３バイトの情報に、ランダムに決定した下位３バイトを結合することで、再割り当ての候補となるＭＡＣアドレス（以下、再割当候補ＭＡＣアドレス）を新たに生成する。
【００６８】
なお、ＭＡＣアドレスは、一般に６バイトの情報を有する。上位３バイトは、ベンダーを識別するベンダーＩＤであり、下位３バイトは、各ベンダーによって任意に割り当てられる。このように、上位３バイトは予め固定的に割り当てられるので、「プリフィックス部」という。
【００６９】
図１１は、第２の実施形態に係る再割当ＭＡＣアドレスプリフィックスリスト１２４を説明するための図である。図１１に示すように、再割当ＭＡＣアドレスプリフィックスリスト１２４は、プリフィックス部と、クラウド拠点識別子とを対応付けて記憶する。
【００７０】
例えば、再割当ＭＡＣアドレスプリフィックスリスト１２４は、「11:22:33」と、「Ａ」とを対応付けて記憶する。これは、クラウド拠点識別子「Ａ」で識別されるクラウド拠点内の仮想マシンにＭＡＣアドレスを再割り当てする場合には、上位３バイトに「11:22:33」を用いることが予め割り当てられていることを示す。すなわち、該当するクラウド拠点にて割り当て可能な範囲を示す。なお、図１１に示すように、再割当ＭＡＣアドレスプリフィックスリスト１２４は、「33:44:55」と、「Ｃ」及び「Ｄ」とを対応付けて記憶する。これは、クラウド拠点識別子「Ｃ」又は「Ｄ」で識別されるクラウド拠点内の仮想マシンにＭＡＣアドレスを再割り当てする場合には、上位３バイトに「33:44:55」を用いることが予め割り当てられていることを示す。このように、予め割り当てられる上位３バイトとクラウド拠点とは、１対１である必要はない。
【００７１】
続いて、ＭＡＣアドレス再割当部１１５は、使用中ＭＡＣアドレスデータベース１２２を参照し、同一の調査対象グループ識別子で識別されるグループ内に、再割当候補ＭＡＣアドレスと重複するＭＡＣアドレスが利用されていないか、判定する。利用されていた場合には、ＭＡＣアドレス再割当部１１５は、再び、下位３バイトの情報をランダムに決定し、次の再割当候補ＭＡＣアドレスを新たに生成する。一方、利用されていない場合には、ＭＡＣアドレス再割当部１１５は、使用中ＭＡＣアドレスデータベース１２２のエントリを修正する。すなわち、ＭＡＣアドレス再割当部１１５は、重複していたＭＡＣアドレスを、再割当候補ＭＡＣアドレスに書き換える。なお、ＭＡＣアドレス再割当部１１５は、重複していた複数のＭＡＣアドレスのうち、少なくとも一方のＭＡＣアドレスを、再割当候補ＭＡＣアドレスに書き換える。
【００７２】
その後、ＭＡＣアドレス再割当部１１５は、重複ＭＡＣアドレスデータベース１２３のエントリも修正する。例えば、ＭＡＣアドレス再割当部１１５は、利用数「２」のエントリを削除する。また、ＭＡＣアドレス再割当部１１５は、再割当ＭＡＣアドレスデータベース１２５に、仮想マシンに再割り当てを行ったＭＡＣアドレスを格納する。なお、実施形態は上述した例に限られるものではなく、ＭＡＣアドレスに含まれる６バイトの情報全てをランダムに決定してもよい。あるいは、このような方法で決定するのではなく、ＭＡＣアドレス再割当部１１５は、同一の調査対象グループ識別子で識別されるグループ内で未使用（すなわち未重複）のＭＡＣアドレスであれば、どのような方法によってＭＡＣアドレスを割り当ててもよい。
【００７３】
図１２は、第２の実施形態に係る再割当ＭＡＣアドレスデータベース１２５を説明するための図である。例えば、ＭＡＣアドレス再割当部１１５は、図１２に示すように、クラウド拠点識別子、仮想マシン識別子、ＮＩＣ識別子、及び、再割り当てされたＭＡＣアドレスを対応付けて、再割当ＭＡＣアドレスデータベース１２５に格納する。なお、図１２に示す再割当ＭＡＣアドレスデータベース１２５には、上から順に１エントリずつ情報が格納される。
【００７４】
設定送信部１１６は、ＭＡＣアドレス再割当部１１５によって割り当てられたＭＡＣアドレスを、該当するクラウド拠点に設置されたクラウド管理部に送信する。ここで、設定送信部１１６は、例えば、各クラウド拠点に設置された管理部毎のアタッチメントを予め記憶する。アタッチメントとは、ＭＡＣアドレスなどの設定情報を各クラウド拠点に設置された管理部に対して反映・削除するためのプログラムである。アタッチメントには、各クラウド拠点に設置されたネットワーク機器と、ネットワークオペレーションシステム１００との間で用いられる通信プロトコルなどが規定される。なお、一般に、この通信プロトコルには、ネットワーク機器のベンダーによって規定される独自仕様の通信プロトコルが用いられる。設定送信部１１６は、該当するアタッチメントを用いて、ＭＡＣアドレスを、該当するクラウド拠点に設置されたクラウド管理部に送信する。なお、各拠点のクラウド管理部は、設定送信部１１６からＭＡＣアドレスを受信すると、受信したＭＡＣアドレスを、ＭＡＣアドレスの重複が生じている複数の仮想マシンの少なくとも一方に設定する。
【００７５】
（第２の実施形態の効果）
このように、第２の実施形態によれば、ＭＡＣアドレスの重複を適切に解決することができる。すなわち、第２の実施形態に係るネットワークオペレーションシステム１００は、ＭＡＣアドレスの重複を調査する調査対象を、ＭＡＣアドレスの重複が問題となり得るネットワーク単位に絞り込むことで、調査の手間及びＭＡＣアドレスの再割当の手間を軽減する。
【００７６】
すなわち、第２の実施形態において、同一の調査対象グループ識別子で識別される仮想スイッチ同士は、直接（例えばクラウド拠点Ａの仮想スイッチＡ１とクラウド拠点Ｂの仮想スイッチＢ１）又は間接（例えばクラウド拠点Ａの仮想スイッチＡ１とクラウド拠点Ｄの仮想スイッチＤ１）に接続しているものである。言い換えると、同一の調査対象グループ識別子で識別される仮想スイッチのみが、同一のネットワークに属する。同一のネットワークは、同一のＩＰ（Internet  Protocol）セグメントであるので、ＭＡＣアドレスによる通信を行う。このため、同一の調査対象グループ識別子で識別される仮想スイッチと接続された仮想マシンのＭＡＣアドレスのみを重複調査の調査対象とすればよい。異なる調査対象グループ識別子で識別される仮想スイッチと接続された仮想マシンのＭＡＣアドレスとの重複は問題とならず、無視することができる。
【００７７】
また、第２の実施形態に係るネットワークオペレーションシステム１００は、調査対象の絞り込みからＭＡＣアドレスの再割り当て、再割り当てされたＭＡＣアドレスの仮想マシンへの反映まで、自動的に行うことができるので、手間を更に軽減する。
【００７８】
（他の実施形態）
ところで、上述した割当装置１０又はネットワークオペレーションシステム１００は、上述した実施形態以外にも、種々の異なる形態にて実施されてよい。
【００７９】
（協働空間）
図１３Ａ及び図１３Ｂは、その他の実施形態における協働空間を説明するための図である。図１３Ａに示すネットワーク構成は、図３Ａに示すネットワーク構成と比較すると、外部ＶＰＮ識別子「ＶＬＡＮ２０２０」によって識別される外部ＶＰＮが存在しない点が異なる。また、図１３Ｂは、図３Ｂと同様、外部ＶＰＮが、仮想スイッチと仮想スイッチとの間に構築された場合である。図１３Ａ及び図１３Ｂに示すネットワーク構成の場合、調査対象仮想スイッチデータベース１２１には、例えば図１４に示すネットワーク情報が記述されることになる。図１４は、その他の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【００８０】
すなわち、図１３Ａの場合、仮想マシンＡ−１と仮想マシンＢ−１との間に構築される、仮想スイッチＡ１と仮想スイッチＢ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０００」が、同一の調査対象グループ識別子「１」で識別される同一のネットワークに属する。また、仮想マシンＡ−２と仮想マシンＣ−１との間に構築される、仮想スイッチＡ２と仮想スイッチＣ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０１０」が、同一の調査対象グループ識別子「２」で識別される同一のネットワークに属する。また、仮想マシンＣ−２と仮想マシンＤ−２との間に構築される、仮想スイッチＣ２と仮想スイッチＤ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０３０」が、同一の調査対象グループ識別子「３」で識別される同一のネットワークに属する。すなわち、仮想スイッチＡ１と仮想スイッチＢ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−１及び仮想マシンＢ−１も、同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−２及び仮想マシンＣ−１も、同一のネットワークに属する。また、仮想スイッチＣ２と仮想スイッチＤ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＣ−２及び仮想マシンＤ−２も、同一のネットワークに属する。
【００８１】
また、図１３Ｂの場合、仮想スイッチＡ１と仮想スイッチＢ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０００」が、同一の調査対象グループ識別子「１」で識別される同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０１０」が、同一の調査対象グループ識別子「２」で識別される同一のネットワークに属する。また、仮想スイッチＣ２と仮想スイッチＤ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０３０」が、同一の調査対象グループ識別子「３」で識別される同一のネットワークに属する。この結果、仮想スイッチＡ１と仮想スイッチＢ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−１及び仮想マシンＢ−１も、同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−２及び仮想マシンＣ−１も、同一のネットワークに属する。また、仮想スイッチＣ２と仮想スイッチＤ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＣ−２及び仮想マシンＤ−２も、同一のネットワークに属する。
【００８２】
更に、図１５Ａ及び図１５Ｂは、その他の実施形態における協働空間を説明するための図である。図１５Ａに示すネットワーク構成は、図３Ａに示すネットワーク構成と比較すると、外部ＶＰＮ識別子「ＶＬＡＮ２０３０」によって識別される外部ＶＰＮが存在しない点が異なる。また、図１５Ｂは、図３Ｂと同様、外部ＶＰＮが、仮想スイッチと仮想スイッチとの間に構築された場合である。図１５Ａ及び図１５Ｂに示すネットワーク構成の場合、調査対象仮想スイッチデータベース１２１には、例えば図１６に示すネットワーク情報が記述されることになる。図１６は、その他の実施形態に係る調査対象仮想スイッチデータベースを説明するための図である。
【００８３】
すなわち、図１５Ａの場合、仮想マシンＡ−１と仮想マシンＢ−１との間に構築される、仮想スイッチＡ１と仮想スイッチＢ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０００」と、仮想マシンＢ−２と仮想マシンＤ−１との間に構築される、仮想スイッチＢ１と仮想スイッチＤ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０２０」とが、同一の調査対象グループ識別子「１」で識別される同一のネットワークに属する。また、仮想マシンＡ−２と仮想マシンＣ−１との間に構築される、仮想スイッチＡ２と仮想スイッチＣ１とを通過する外部ＶＰＮ「ＶＬＡＮ２０１０」が、同一の調査対象グループ識別子「２」で識別される同一のネットワークに属する。すなわち、仮想スイッチＡ１、仮想スイッチＢ１及び仮想スイッチＤ１が同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−１、仮想マシンＢ−１、仮想マシンＢ−２、及び仮想マシンＤ−１も、同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−２及び仮想マシンＣ−１も、同一のネットワークに属する。
【００８４】
また、図１５Ｂの場合、仮想スイッチＡ１と仮想スイッチＢ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０００」と、仮想スイッチＢ１と仮想スイッチＤ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０２０」とが、同一の調査対象グループ識別子「１」で識別される同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１との間に構築される外部ＶＰＮ「ＶＬＡＮ２０１０」が、同一の調査対象グループ識別子「２」で識別される同一のネットワークに属する。この結果、仮想スイッチＡ１、仮想スイッチＢ１及び仮想スイッチＤ１が同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−１、仮想マシンＢ−１、仮想マシンＢ−２、及び仮想マシンＤ−１も、同一のネットワークに属する。また、仮想スイッチＡ２と仮想スイッチＣ１とが同一のネットワークに属することから、同一のネットワークに属するこれらの仮想スイッチに接続された仮想マシンＡ−２及び仮想マシンＣ−１も、同一のネットワークに属する。
【００８５】
上述した第２の実施形態においては、通信路識別子としてＶＬＡＮの識別子を用いる例を説明したが、実施形態はこれに限られるものではなく、例えば、ＧＲＥ（Generic  Routing  Encapsulation）の識別子など、２拠点間に構築された通信路を識別するものであれば、任意である。
【００８６】
また、図１を用いて示した割当装置１０の構成や、図４を用いて示したネットワークオペレーションシステム１００の構成は、機能概念的な構成を示すものであり、必ずしも、物理的な構成を示すものではない。すなわち、割当装置１０やネットワークオペレーションシステム１００の分散・統合の具体的形態は、図１や図４に図示した形態に限られず、その全部又は一部を、負荷や使用状況などに応じて、任意の単位で、機能的又は物理的に分散・統合して構成することができる。
【００８７】
例えば、図４に示した、調査対象仮想スイッチデータベース１２１、使用中ＭＡＣアドレスデータベース１２２、重複ＭＡＣアドレスデータベース１２３、再割当ＭＡＣアドレスプリフィックスリスト１２４、再割当ＭＡＣアドレスデータベース１２５は、その全部又は一部を、分散・統合して構成することができる。また、各データベースやリストに記憶する情報も、上述した実施形態に限られるものではなく、適宜、特に必要な情報のみに集約したり、更に他の情報を追加してもよい。例えば、使用中ＭＡＣアドレスデータベース１２２（図８を参照）は、クラウド拠点識別子や仮想スイッチ識別子を記憶しない構成とすることもできる。また、例えば、重複ＭＡＣアドレスデータベース１２３（図１０を参照）は、利用数が「１」のエントリを記憶しない構成とすることもできる。また、上述した実施形態において、図５、図７、及び図９を用いて説明した処理手順は、任意に変更することができる。
【００８８】
［プログラム］
また、上述した実施形態に係る割当装置１０又はネットワークオペレーションシステム１００が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。この場合、コンピュータがプログラムを実行することにより、上述した実施形態と同様の効果を得ることができる。さらに、かかるプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータに読み込ませて実行することにより上述の実施形態と同様の処理を実現してもよい。以下に、図１に示した割当装置１０又は図４に示したネットワークオペレーションシステム１００と同様の機能を実現するプログラムを実行するコンピュータの一例を説明する。
【００８９】
図１７は、ＭＡＣアドレスを割り当てるコンピュータを示す図である。図１７に示すように、コンピュータは、例えば、メモリと、ＣＰＵ（Central  Processing  Unit）と、ハードディスクドライブインタフェースと、ディスクドライブインタフェースと、シリアルポートインタフェースと、ビデオアダプタと、ネットワークインタフェースとを有し、これらの各部はバスによって接続される。
【００９０】
メモリは、図１７に示すように、ＲＯＭ（Read  Only  Memory）及びＲＡＭ（Random  Access  Memory）を含む。ＲＯＭは、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェースは、図１７に示すように、ハードディスクドライブに接続される。ディスクドライブインタフェースは、図１７に示すように、ディスクドライブに接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブに挿入される。シリアルポートインタフェースは、図１７に示すように、例えばマウス、キーボードに接続される。ビデオアダプタは、図１７に示すように、例えばディスプレイに接続される。
【００９１】
ここで、図１７に示すように、ハードディスクドライブは、例えば、ＯＳ（Operating  System）、アプリケーションプログラム、プログラムモジュール、プログラムデータを記憶する。すなわち、上述のプログラムは、コンピュータによって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブに記憶される。例えば、図１に示した収集部１１と同様の情報処理を実行する手順と、分類部１２と同様の情報処理を実行する手順と、判定部１３と同様の情報処理を実行する手順と、割当部１４と同様の情報処理を実行する手順と、が記述されたプログラムモジュールが、ハードディスクドライブに記憶される。
【００９２】
また、上述した実施形態で説明した割当装置１０又はネットワークオペレーションシステム１００が保持する各種データは、プログラムデータとして、例えばメモリやハードディスクドライブに記憶される。そして、ＣＰＵが、メモリやハードディスクドライブに記憶されたプログラムモジュールやプログラムデータを必要に応じてＲＡＭに読み出し、各手順を実行する。
【００９３】
なお、上述のプログラムに係るプログラムモジュールやプログラムデータは、ハードディスクドライブに記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブなどを介してＣＰＵによって読み出されてもよい。あるいは、上述のプログラムに係るプログラムモジュールやプログラムデータは、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）など）を介して接続された他のコンピュータに記憶され、ネットワークインタフェースを介してＣＰＵによって読み出されてもよい。
【符号の説明】
【００９４】
１０  割当装置
１１  収集部
１２  分類部
１３  判定部
１４  割当部
【図１】
0005587254.tif 000002
【図２】
0005587254.tif 000003
【図３Ａ】
0005587254.tif 000004
【図３Ｂ】
0005587254.tif 000005
【図４】
0005587254.tif 000006
【図５】
0005587254.tif 000007
【図６Ａ】
0005587254.tif 000008
【図６Ｂ】
0005587254.tif 000009
【図７】
0005587254.tif 000010
【図８】
0005587254.tif 000011
【図９】
0005587254.tif 000012
【図１０】
0005587254.tif 000013
【図１１】
0005587254.tif 000014
【図１２】
0005587254.tif 000015
【図１３Ａ】
0005587254.tif 000016
【図１３Ｂ】
0005587254.tif 000017
【図１４】
0005587254.tif 000018
【図１５Ａ】
0005587254.tif 000019
【図１５Ｂ】
0005587254.tif 000020
【図１６】
0005587254.tif 000021
【図１７】
0005587254.tif 000022