(57)【要約】【課題】マルチクラウド環境において、仮想ファンクションを利用するための煩雑な対応を回避する。【解決手段】記憶部４３が、仮想的な実行環境である仮想ファンクションが配置される複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶する。クラウド指示部２２が、クライアント端末１０から接続要求があったときに、接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点３０に起動要求を送信する。仮想ファンクションオブジェクト送受信部２８が、前記起動要求により起動された前記仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、前記クライアント端末１０に通知する。【選択図】図１
2018137622.tif 000002
【特許請求の範囲】
【請求項１】
仮想的な実行環境である仮想ファンクションが配置される複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶する記憶部と、
前記仮想ファンクションオブジェクトに対して、クライアント端末から前記仮想ファンクションへの接続要求があったときに、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点に起動要求を送信し、前記起動要求により起動された前記仮想ファンクションの接続のための情報を、前記クライアント端末に通知する起動制御部と、
を含む仮想ファンクション配置管理装置。
【請求項２】
前記接続要求に基づいて、前記クライアント端末の位置情報を解析するクライアント位置情報解析部と、
前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点と、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを決定する仮想ファンクション配置最適化部とを更に含み、
前記起動制御部は、前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合、前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションの起動要求を、前記決定された前記クラウド拠点に送信し、前記起動要求により起動された前記仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、前記クライアント端末に通知する請求項１に記載の仮想ファンクション配置管理装置。
【請求項３】
前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合には、前記仮想ファンクション、前記仮想ファンクションが現在配置されているクラウド拠点、前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレス、及び前記仮想ファンクションオブジェクトのＩＰアドレスを対応付けて格納した仮想ファンクション位置情報テーブルにおける、前記仮想ファンクションが現在配置されているクラウド拠点、及び前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレスを書き換えるクラウド情報管理部を更に含み、
前記仮想ファンクション配置最適化部は、前記仮想ファンクション位置情報テーブルと、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを決定する請求項２に記載の仮想ファンクション配置管理装置。
【請求項４】
記憶部が、仮想的な実行環境である仮想ファンクションが配置される複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶し、
起動制御部が、前記仮想ファンクションオブジェクトに対して、クライアント端末から前記仮想ファンクションへの接続要求があったときに、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点に起動要求を送信し、前記起動要求により起動された前記仮想ファンクションの接続のための情報を、前記クライアント端末に通知する、
ことを含む処理をコンピュータが実行することを特徴とする仮想ファンクション配置管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、仮想ファンクション配置管理装置、及び方法に関する。
【背景技術】
【０００２】
近年、多くの企業において、個人用ＰＣの盗難、紛失による情報漏洩が問題となっている。これらＰＣの盗難、紛失に対して今まで個人用ＰＣで管理していたデスクトップ環境のデータをクラウド上に移すことによるセキュリティ対策が進みつつある。クラウド上に移行した多数の仮想ファンクションを集中管理する技術として、ＶＤＩ(Virtual Desktop Infrastructure)などの仮想デスクトップ管理ソフトウェアが注目されている。仮想デスクトップ管理ソフトウェアでは、ユーザーはまずクライアント端末を通して、クラウド拠点上などに設置されたコネクションブローカへ、仮想ファンクションへの接続要求を送信する。コネクションブローカはクライアント端末からの接続要求を受信すると、クラウドに設置されているハイパーバイザ上に、ＯＳブート、アプリケーションサーバ、及びファイルサーバを通して仮想ファンクションを配備し、起動する。その後、コネクションブローカはクライアント端末に対し、起動した仮想ファンクションのＩＰアドレスとポート番号を通知する。クライアント端末は通知されたＩＰアドレスとポート番号でクラウド上に配備された仮想ファンクションへとアクセスすることができる。クライアント端末にはデータは保存されないため、情報漏洩に対するリスクが小さくなる。一方で、クラウド拠点は企業拠点の遠方に設置されているケースが多い。このため、クライアント端末からクラウド拠点上の仮想ファンクションへとアクセスすると、ユーザーの操作を画面に反映するまでの操作遅延が発生し、対策すべき課題の１つとなっている。
【０００３】
このような課題に対して、クラウド上のＶＭ(Virtual Machine)に対する操作で発生するネットワーク遅延の影響を抑制する技術が研究されている。シンクライアント端末やストレージなど、ＶＭとデータ送受信を行う機器の位置や、送受信するデータ量を考慮して、ＶＭを適切なクラウド拠点へと移動させる、ＶＭ配置手法が知られている。この手法ではＶＭを起動させる位置によって、ＶＭの性能を変化させることができ、クラウドを利用するユーザーにとっては、クラウド上のＶＭを用途に応じて使い分けることが可能となる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Berryman,A.,Calyam,P.,Lai,A.,and Honigford,M.,Vdbench: A benchmarking toolkit for thinclient based virtual desktop environments.2010
【非特許文献２】Sato,K.,Sato,H., and Matsuoka,S.,A model-based algorithm for optimizing i/o intensive applications in clouds using vm-based migration.2009
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ここで、既存のＶＤＩシステムに対し、ＶＭ配置手法を適用する場合というのは、マルチクラウド環境下でシンクライアント端末の位置に応じてＶＭを動かし、操作遅延を改善させるケースとなる。しかし、ＶＤＩ自体はマルチクラウドに非対応であり、クラウド拠点を跨いだＶＭの管理及び移動機能や、配置拠点の決定機能についての実装手法が確立されていない。コネクションブローカに、これらのＶＭの管理・移動機能や、配置拠点の決定機能を実装させることで、ＶＤＩをマルチクラウドに対応させる方法が考えられるが、カスタマイズが必要になり、ＶＤＩの汎用性が失われてしまうことになる。
【０００６】
例えば、ＶＤＩにＶＭの配置決定・移動機能を実装してマルチクラウド環境下で利用するには、コネクションブローカにハイパーバイザが存在する各クラウド拠点の情報を登録し、各クラウド拠点のＡＰＩに対応させる必要性がある。この登録作業はオペレーターの手で実行しなければならず、各クラウド拠点が異なるベンダーのものであれば、ＶＭ配置・起動を行うために必要なＲＥＳＴ ＡＰＩも異なってくる。このように、ＶＤＩをマルチクラウド環境に対応させるためには煩雑な作業が発生してしまう。また、マルチクラウド環境の運用開始後、新たにクラウド拠点を追加する場合も同様の問題が発生する。
【０００７】
本発明は、一つの側面として、マルチクラウド環境において、仮想ファンクションを利用するための煩雑な対応を回避することを目的とする。
【課題を解決するための手段】
【０００８】
一つの態様として、仮想的な実行環境である仮想ファンクションが配置される複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶する。クライアント端末から前記仮想ファンクションオブジェクトに対して前記仮想ファンクションへの接続要求がある。前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点に起動要求を送信する。前記起動要求により起動された前記仮想ファンクションの接続のための情報を、前記クライアント端末に通知する。
【発明の効果】
【０００９】
一つの側面として、マルチクラウド環境において、仮想ファンクションを利用するための煩雑な対応を回避することができる、という効果を有する。
【図面の簡単な説明】
【００１０】
【図１】第１実施形態に係る仮想ファンクション配置管理システムの概略構成を示すブロック図である。
【図２】抽象レイヤの及び仮想ファンクションオブジェクトのイメージを示す図である。
【図３】クラウド拠点の構成の一例を示す図である。
【図４】第１実施形態のオーケストレータの機能ブロック図である。
【図５】仮想ファンクション位置情報テーブルの一例を示す図である。
【図６】クラウド拠点位置情報テーブルの一例を示す図である。
【図７】更新後の仮想ファンクション位置情報テーブルの一例を示す図である。
【図８】更新後のクラウド拠点位置情報テーブルの一例を示す図である。
【図９】クライアント情報テーブルの一例を示す図である。
【図１０】オーケストレータとして機能するコンピュータの概略構成を示すブロック図である。
【図１１】第１実施形態の各装置及び処理部間での情報のやり取りを示すシーケンス図である。
【図１２】抽象レイヤ処理、及び起動処理の一例を示すフローチャートである。
【図１３】第２実施形態に係る仮想ファンクション配置管理システムの概略構成を示すブロック図である。
【図１４】第２実施形態のオーケストレータの機能ブロック図である。
【図１５】第２実施形態の各装置及び処理部間での情報のやり取りを示すシーケンス図である。
【発明を実施するための形態】
【００１１】
以下、図面を参照して本発明に係る実施形態の一例を詳細に説明する。
【００１２】
マルチクラウド環境下において、上記の問題を回避してVirtual Desktop Infrastructure（ＶＤＩ）を利用するために、ＶＤＩを単一のサブネット内で扱うことができる汎用プラットフォームを構築することが考えられる。そこで、本実施形態では、汎用プラットフォームの一例として、複数のクラウド拠点を抽象化した論理的な抽象レイヤを作成し、各クラウド拠点に配置されるVirtual Machine（ＶＭ）に対応するオブジェクトを作成する。抽象レイヤにＶＭに対応するオブジェクトを配置することで、コネクションブローカから見て、全てのＶＭが単一のサブネット内に存在するように扱うことができる。
【００１３】
より具体的には、本実施形態では、コネクションブローカとクラウド拠点との間に、クラウド拠点と仮想ファンクションを単一サブネットにまとめた抽象レイヤと仮想ファンクションオブジェクトを作成する場合について説明する。以下、本実施形態では、仮想的なコンピュータや機器の実行環境である仮想ファンクション（仮想ＦＣ）がＶＭである場合を例として記載する。
【００１４】
また、本実施形態では、クライアント端末からの接続要求のパケットを受信すると、接続要求の対象である仮想ファンクションを配置する最適なクラウド拠点を求める。また、本実施形態では、必要に応じて仮想ファンクションのクラウド拠点を移動して起動し、クライアント端末からの仮想ファンクションに対する操作遅延を軽減する。
【００１５】
［第１実施形態］
【００１６】
図１に示すように、本実施形態に係る仮想ファンクション配置管理システム１００は、複数のクライアント端末１０と、Packet Probe１２と、コネクションブローカ１４と、外部データベース１６と、オーケストレータ２０と、を備えている。また、仮想ファンクション配置管理システム１００は、クラウド拠点３０Ａと、クラウド拠点３０Ｂと、クラウド拠点３０Ｃとを備えている。クライアント端末１０と、Packet Probe１２と、コネクションブローカ１４と、外部データベース１６と、オーケストレータ２０と、クラウド拠点３０Ａ〜クラウド拠点３０Ｃとは、インターネット等のネットワーク１９を介して接続される。なお、オーケストレータ２０が仮想ファンクション配置管理装置の一例である。また、クラウド拠点３０Ａ〜クラウド拠点３０Ｃとしたが、クラウドの数は図１の例に限定されない。また、以下の説明において、クラウド拠点３０Ａ〜クラウド拠点３０Ｃを特に区別しない場合には、クラウド拠点３０と記載する。
【００１７】
クライアント端末１０は、クラウド上の仮想ファンクションを利用する端末である。クライアント端末１０は、例えば、ノート型ＰＣ、タブレット端末、スマートフォン等で実現することができる。
【００１８】
Packet Probe１２は、クライアント端末１０からコネクションブローカ１４に向けて送信される仮想ファンクションへの接続要求のパケットを監視する。接続要求があると、オーケストレータ２０に対し、クライアント端末１０からの接続要求のパケットと共にクライアント情報作成要求を送信する。
【００１９】
コネクションブローカ１４は、クライアント端末１０から仮想ファンクションへの接続要求を受信する。コネクションブローカ１４は、接続要求を受信すると、オーケストレータ２０上に仮想的に作成された抽象レイヤ１７上に配置された仮想ファンクションに対応する仮想ファンクションオブジェクト１８に対して、起動要求を送信する。このように、コネクションブローカ１４では、仮想ファンクションへの接続要求があった場合、抽象レイヤ１７上の仮想ファンクションオブジェクト１８に対して接続要求があったものとして処理を行う。仮想ファンクションオブジェクト１８のＩＰアドレスは抽象レイヤ１７上の単一サブネット内に存在するため、単一のクラウド拠点に仮想ファンクションが存在するかのように通信することができる。また、コネクションブローカ１４は、起動された仮想ファンクションのＩＰアドレスを仮想ファンクションオブジェクト１８から受信し、クライアント端末１０に送信する。
【００２０】
外部データベース１６は、オーケストレータ２０から、クライアント端末１０から送信されたパケットを受信すると、例えばIP Geolocationの技術により、パケットに含まれるＩＰアドレスに対応する位置情報をオーケストレータ２０に返却する。
【００２１】
オーケストレータ２０は、抽象レイヤ１７の作成及び更新、仮想ファンクションオブジェクト１８の作成及び更新、仮想ファンクションの位置情報取得、起動クラウド拠点の最適化、並びに仮想ファンクションの移動の制御を行う機構である。抽象レイヤ１７及び仮想ファンクションオブジェクト１８のイメージを図２に示す。図２は、クラウド拠点３０Ａ〜クラウド拠点３０Ｃに配置されている仮想ファンクションＶＭ ａ〜ＶＭ ｃに対応する仮想ファンクションオブジェクト１８を、抽象レイヤ１７上に配置した場合の例である。
【００２２】
クラウド拠点３０Ａ〜クラウド拠点３０Ｃは、仮想ファンクションが配置されるクラウド拠点である。クラウド拠点３０Ａ〜クラウド拠点３０Ｃはそれぞれ、ハイパーバイザ上で仮想ファンクションを稼動させる。例えば、図３に示すように、クラウド拠点３０ＡにはハイパーバイザＡ１及びＡ２が稼動しており、ハイパーバイザＡ１に仮想ファンクションのＶＭ ａが配置されている。クラウド拠点３０ＢにはハイパーバイザＢ１が稼動しており、ハイパーバイザＢ１に仮想ファンクションのＶＭ ｂが配置されている。クラウド拠点３０Ｃには、ハイパーバイザＣ１が稼動しており、ハイパーバイザＣ１に仮想ファンクションのＶＭ ｃが配置されている。なお、クラウド上のハイパーバイザ及び仮想ファンクションの構成は一例であり、図３の例に限定されない。
【００２３】
オーケストレータ２０は、図４に示すように、機能的には、クラウド指示部２２と、クラウド情報管理部２３と、抽象レイヤ作成部２４とを含む。また、オーケストレータ２０は、リクエスト解析部２５と、クライアント位置情報解析部２６と、仮想ファンクション配置最適化部２７と、仮想ファンクションオブジェクト送受信部２８とを含む。なお、クラウド指示部２２及び仮想ファンクションオブジェクト送受信部２８が起動制御部の一例である。
【００２４】
クラウド指示部２２は、クラウド拠点３０の仮想ファンクションの起動や移動、情報の取得といった処理を行う。クラウド指示部２２は、クラウド情報管理部２３から仮想ファンクション位置情報、クラウド拠点位置情報の取得要求を受信すると、クラウド拠点３０のＡＰＩを用いて仮想ファンクション位置情報、クラウド拠点位置情報を取得する。取得した仮想ファンクション位置情報、クラウド拠点位置情報は、クラウド情報管理部２３へ送信する。また、クラウド指示部２２は、仮想ファンクション配置最適化部２７から、仮想ファンクションの移動指示を受信すると、クラウド拠点３０のＡＰＩを用いて仮想ファンクションの移動を実行する。また、クラウド指示部２２は、仮想ファンクションオブジェクト送受信部２８から仮想ファンクションの起動要求を受信する。受信した起動要求に基づいて、仮想ファンクションオブジェクト１８に対応した仮想ファンクションが配置されているクラウド拠点３０Ａ〜クラウド拠点３０Ｃの何れかのＡＰＩを用いて該当する仮想ファンクションを起動する。そして、クラウド指示部２２は、起動した仮想ファンクションのＩＰアドレスを仮想ファンクションオブジェクト送受信部２８へ送信する。
【００２５】
クラウド情報管理部２３は、クラウド指示部２２へ、仮想ファンクション位置情報及びクラウド拠点位置情報の取得要求を送信する。クラウド指示部２２から受信した仮想ファンクション位置情報及びクラウド拠点位置情報は、図５及び図６に示すテーブルの形式で保存される。図５に示すように、仮想ファンクション位置情報テーブル３２Ａは、仮想ファンクション名、現在位置、ハイパーバイザ、仮想ファンクションのＩＰアドレス、及び仮想ファンクションオブジェクトＩＰアドレスが格納されている。図５の例では、仮想ファンクションのＶＭ ａは、現在、クラウド拠点３０Ａ上のハイパーバイザＡに配置されており、ＩＰアドレスはａ.ａ.ａ.ａである。ＶＭ ａに対応する抽象レイヤ１７上の仮想ファンクションオブジェクト１８のＩＰアドレスはｘ.ｘ.ｘ.ｘである。また、仮想ファンクションのＶＭ ｂは、現在、クラウド拠点３０Ｂ上のハイパーバイザＢ１に配置されており、ＩＰアドレスはｂ.ｂ.ｂ.ｂである。ＶＭ ｂに対応する抽象レイヤ１７上の仮想ファンクションオブジェクト１８のＩＰアドレスはｘ.ｘ.ｘ.ｙである。また、仮想ファンクションのＶＭ ｃは、現在、クラウド拠点３０Ｃ上のハイパーバイザＣ１に配置されており、ＩＰアドレスはｃ.ｃ.ｃ.ｃである。ＶＭ ｃに対応する抽象レイヤ１７上の仮想ファンクションオブジェクト１８のＩＰアドレスはｘ.ｘ.ｘ.ｚである。このように、仮想ファンクションのＩＰアドレスには、現在位置のクラウド拠点３０に対応したサブネットのＩＰアドレスが割り当てられている。また、ＩＰアドレスの第１オクテット〜第３オクテットまでの「ｘ.ｘ.ｘ.」は、同一サブネット内のＩＰアドレスであることを表している。
【００２６】
また、図６に示すように、クラウド拠点位置情報テーブル３４Ａは、拠点名、ハイパーバイザ、位置情報（座標）、ＩＰアドレスが格納されている。図６の例では、クラウド拠点３０Ａの拠点名はクラウドＡであり、クラウドＡにはハイパーバイザＡ１及びＡ２があり、Ａ１の位置情報は（Ａ１，Ａ１）であり、ＩＰアドレスはａ.ａ.ａ.１である。Ａ２の位置情報は（Ａ２，Ａ２）であり、ＩＰアドレスはａ.ａ.ａ.２である。また、クラウド拠点３０Ｂの拠点名はクラウドＢであり、クラウドＢにはハイパーバイザＢ１があり、Ｂ１の位置情報は（Ｂ１，Ｂ１）であり、ＩＰアドレスはｂ.ｂ.ｂ.１である。また、クラウド拠点３０Ｃの拠点名はクラウドＣでありには、クラウドＣにはハイパーバイザＣ１があり、Ｃ１の位置情報は（Ｃ１，Ｃ１）であり、ＩＰアドレスはｃ.ｃ.ｃ.１である。このように、クラウド拠点３０Ａ〜クラウド拠点３０Ｃには、それぞれで異なるサブネットのＩＰアドレスが割り当てられている。
【００２７】
クラウド情報管理部２３は、上記のように仮想ファンクション位置情報を格納した仮想ファンクション位置情報テーブル３２Ａ、及びクラウド拠点位置情報を格納したクラウド拠点位置情報テーブル３４Ａを保持している。クラウド情報管理部２３は、抽象レイヤ作成部２４に対し、抽象レイヤ作成要求と共に仮想ファンクション位置情報及びクラウド拠点位置情報を送信する。
【００２８】
また、クラウド情報管理部２３は、仮想ファンクション配置最適化部２７から、仮想ファンクション位置情報、及びクラウド拠点位置情報の取得要求を受信すると、テーブルに格納されている仮想ファンクション位置情報、及びクラウド拠点位置情報を送信する。
【００２９】
また、クラウド情報管理部２３は、クラウド拠点３０の構成や仮想ファンクションの配置に変更が生じると、仮想ファンクション位置情報テーブル３２Ａ、及びクラウド拠点位置情報テーブル３４Ａを更新する。例えば、仮想ファンクションが現在配置されているクラウド拠点とは異なるクラウド拠点に移動された場合には、仮想ファンクション位置情報における現在位置、ハイパーバイザ、及び仮想ファンクションのＩＰアドレスを書き換える。図７は書き換えた仮想ファンクション位置情報テーブル３２Ｂの例である。図７に示すように、仮想ファンクションのＶＭ ａがクラウド拠点３０Ａからクラウド拠点３０Ｂに移動した場合、ＶＭ ａの現在位置をクラウドＢに、ハイパーバイザをＢ１に、ＩＰアドレスをｂ.ｂ.ｂ.ｂ２といった内容に書き換える。また、例えば、クラウド拠点にハイパーバイザを追加したり、クラウド拠点自体を追加した場合には、クラウド拠点位置情報テーブルを更新する。図８は、クラウド拠点３０ＢにハイパーバイザＢ２を追加し、クラウド拠点３０Ｄを追加した場合のクラウド拠点位置情報テーブル３４Ｂの更新例である。
【００３０】
このように、仮想ファンクション位置情報、及びクラウド拠点位置情報を管理することによって、マルチクラウド環境において、仮想ファンクションを最適な配置に変更することができる。
【００３１】
抽象レイヤ作成部２４は、クラウド情報管理部２３から、抽象レイヤ作成要求と共に仮想ファンクション位置情報、クラウド拠点位置情報を受信すると、仮想ファンクションを単一のクラウド拠点内に配置されているものとして扱うための抽象レイヤを作成する。具体的には、抽象レイヤ作成部２４は、クラウド拠点位置情報に基づいて、クラウド拠点３０を単一サブネット内にまとめた抽象レイヤ１７を作成する。抽象レイヤは、上記図６に示すクラウド拠点位置情報テーブルに基づいて、クラウド拠点３０でそれぞれ異なるサブネットのＩＰアドレスを、単一のサブネットのＩＰアドレスに対応付けた変換テーブルを設けることにより作成する。変換テーブルは、例えば、クラウド拠点３０ＡのハイパーバイザＡ１のＩＰアドレス「ａ.ａ.ａ.１」を、単一サブネットに変換した「ｘ．ｘ．ｘ．ａ１」といったＩＰアドレスに対応付けたものである。抽象レイヤ１７は、コネクションブローカ１４とクラウド拠点３０との間に介在する論理層としてオーケストレータ２０内に作成される。また、抽象レイヤ作成部２４は、作成した抽象レイヤ１７上に、仮想ファンクション位置情報に基づいて、クラウド拠点３０に配置されている仮想ファンクションに対応する仮想ファンクションオブジェクト１８を作成する。仮想ファンクションオブジェクトは抽象レイヤ１７の単一サブネット内に作成される。仮想ファンクションオブジェクトは、上記図５に示す仮想ファンクション位置情報テーブルに基づいて、配置場所がそれぞれ異なるサブネットのＩＰアドレスを、単一のサブネットのＩＰアドレスに対応付けた変換テーブルを設けることにより作成する。変換テーブルは、例えば、クラウド拠点３０Ａに配置されている仮想ファンクションのＩＰアドレス「ａ.ａ.ａ.ａ」を、単一サブネットに変換した「ｘ．ｘ．ｘ．ｘ」といったＩＰアドレスに対応付けたものである。
【００３２】
リクエスト解析部２５は、Packet Probe１２から、クライアント端末１０の接続要求のパケットと共にクライアント情報作成要求を受信すると、クライアント位置情報解析部２６へ、クライアントの位置情報解析要求を送信する。リクエスト解析部２５は、クライアント位置情報解析部２６から、解析結果の座標情報を受け取ると、クライアント情報を図９に示すテーブルの形式で保存する。図９に示すように、クライアント情報は、起動要求仮想ファンクション、及びクライアント位置（座標情報）が格納されている。図９の例では、起動要求仮想ファンクションはＶＭ ａであり、クライアント位置は拠点Ａである。リクエスト解析部２５は、クライアント情報テーブル３６Ａを作成すると、仮想ファンクション配置最適化部２７に、クライアント情報と共に仮想ファンクションの配置拠点決定要求を送信する。
【００３３】
クライアント位置情報解析部２６は、リクエスト解析部２５からクライアント端末１０の位置情報解析要求を受信すると、外部データベース１６を用いてクライアント端末１０の位置情報を解析する。そして、解析の結果得られたクライアント端末１０の座標情報をリクエスト解析部２５へと送信する。
【００３４】
仮想ファンクション配置最適化部２７は、リクエスト解析部２５からクライアント情報と共に仮想ファンクションの配置拠点決定要求を受信すると、クラウド情報管理部２３に仮想ファンクション位置情報とクラウド拠点位置情報の取得要求を送信する。仮想ファンクション配置最適化部２７は、クラウド情報管理部２３から仮想ファンクション位置情報とクラウド拠点位置情報を取得する。仮想ファンクション配置最適化部２７は、クライアント情報に含まれる起動要求のあった仮想ファンクションと仮想ファンクション位置情報とを比較して、仮想ファンクションの現在位置探索を行う。そして、クライアント位置とクラウド拠点３０の位置とを比較して、仮想ファンクションを配置するクラウド拠点３０を決定する。仮想ファンクションを移動する場合には、仮想ファンクションの移動指示をクラウド指示部２２へ送信する。
【００３５】
仮想ファンクションを移動する場合の例を説明する。例えば、クライアント情報において、起動要求仮想ファンクションはＶＭ ａであり、クライアント位置は拠点Ａであったとする。ここで拠点Ａは、各クラウドとの位置関係において、クラウド拠点３０Ｂ、クラウド拠点３０Ｃ、クラウド拠点３０Ａの順に近く、クラウド拠点３０Ａからは遠距離の関係にあったとする。取得した仮想ファンクション位置情報において、ＶＭ ａの現在位置がクラウド拠点３０Ａであったとする。この場合、クラウド拠点３０Ａは、クライアント端末１０が存在する拠点Ａの位置から遠く、仮想ファンクションの利用において操作遅延が生じる可能性があるため、ＶＭ ａをクラウド拠点３０Ｂに移動することを決定する。このようにクライアント端末１０と各クラウド拠点との位置関係において、仮想ファンクションを最適な配置に移動することによって、仮想ファンクションの利用における操作遅延が発生することを防ぐことができる。
【００３６】
仮想ファンクションオブジェクト送受信部２８は、抽象レイヤ１７上の仮想ファンクションオブジェクト１８から仮想ファンクションの起動要求を受信すると、クラウド指示部２２へ、仮想ファンクションの起動要求を転送する。仮想ファンクションオブジェクト送受信部２８は、クラウド指示部２２から、起動要求により起動された仮想ファンクションのＩＰアドレスを受信する。仮想ファンクションオブジェクト送受信部２８は、受信したＩＰアドレスを仮想ファンクションオブジェクト１８へ転送し、仮想ファンクションオブジェクト１８を介してＩＰアドレスをクライアント端末１０に通知する。
【００３７】
オーケストレータ２０は、例えば図１０に示すコンピュータ４０で実現することができる。コンピュータ４０は、Central Processing Unit（ＣＰＵ）４１と、一時記憶領域としてのメモリ４２と、不揮発性の記憶部４３とを備える。また、コンピュータ４０は、入出力装置４４と、記憶媒体４９に対するデータの読み込み及び書き込みを制御するRead/Write（Ｒ／Ｗ）部４５と、インターネット等のネットワーク１９に接続される通信インターフェース（Ｉ／Ｆ）４６とを備える。ＣＰＵ４１、メモリ４２、記憶部４３、入出力装置４４、Ｒ／Ｗ部４５、及び通信Ｉ／Ｆ４６は、バス４７を介して互いに接続される。
【００３８】
記憶部４３は、Hard Disk Drive（ＨＤＤ）、Solid State Drive（ＳＳＤ）、フラッシュメモリ等によって実現できる。記憶媒体としての記憶部４３には、コンピュータ４０をオーケストレータ２０として機能させるための抽象レイヤ処理プログラム５０及び起動プログラム６０が記憶される。抽象レイヤ処理プログラム５０は、抽象レイヤ作成プロセス５２と、抽象レイヤ更新プロセス５４とを有する。起動プログラム６０は、起動プロセス６２と、配置プロセス６４とを有する。また、記憶部４３は、テーブル情報や抽象レイヤ１７及び仮想ファンクションオブジェクト１８が保持される情報記憶領域７０を有する。
【００３９】
ＣＰＵ４１は、抽象レイヤ処理プログラム５０を記憶部４３から読み出してメモリ４２に展開し、抽象レイヤ処理プログラム５０が有するプロセスを順次実行する。ＣＰＵ４１は、抽象レイヤ作成プロセス５２を実行することで、図４に示すクラウド指示部２２、クラウド情報管理部２３、及び抽象レイヤ作成部２４として動作する。また、ＣＰＵ４１は、抽象レイヤ更新プロセス５４を実行することで、図４に示すクラウド指示部２２、クラウド情報管理部２３、及び抽象レイヤ作成部２４として動作する。また、ＣＰＵ４１は、情報記憶領域７０から情報を読み出して、仮想ファンクション位置情報、及びクラウド拠点位置情報をメモリ４２に展開する。これにより、抽象レイヤ処理プログラム５０を実行したコンピュータ４０が、オーケストレータ２０として機能することになる。
【００４０】
また、ＣＰＵ４１は、起動プログラム６０を記憶部４３から読み出してメモリ４２に展開し、起動プログラム６０が有するプロセスを順次実行する。ＣＰＵ４１は、起動プロセス６２を実行することで、図４に示すクラウド指示部２２、及び仮想ファンクションオブジェクト送受信部２８として動作する。また、ＣＰＵ４１は、配置プロセス６４を実行することで、図４に示すリクエスト解析部２５、クライアント位置情報解析部２６、及び仮想ファンクション配置最適化部２７として動作する。また、ＣＰＵ４１は、情報記憶領域７０から情報を読み出して、クライアント情報、仮想ファンクション位置情報、及びクラウド拠点位置情報をメモリ４２に展開する。これにより、起動プログラム６０を実行したコンピュータ４０が、オーケストレータ２０として機能することになる。なお、プログラムを実行するＣＰＵ４１はハードウェアである。
【００４１】
なお、抽象レイヤ処理プログラム５０及び起動プログラム６０により実現される機能は、例えば半導体集積回路、より詳しくはApplication Specific Integrated Circuit（ＡＳＩＣ）等で実現することも可能である。
【００４２】
次に、本実施形態に係る仮想ファンクション配置管理システム１００の作用について説明する。まず、図１１のシーケンス図を参照して、各装置及び処理部間での情報のやり取りについて説明する。
【００４３】
まず抽象レイヤ１７を作成するため、クラウド情報管理部２３がクラウド指示部２２へと仮想ファンクション位置情報、及びクラウド拠点位置情報の取得要求を送信する（ステップS1A）。クラウド指示部２２はＡＰＩを用いてクラウド拠点３０から仮想ファンクション位置情報、及びクラウド拠点位置情報を取得し、クラウド情報管理部２３へと取得結果を送信する(ステップS1B〜S1D)。クラウド情報管理部２３は、クラウド指示部２２から受信した仮想ファンクション位置情報、及びクラウド拠点位置情報をそれぞれ上記図５、及び図６のテーブル形式で保存する(ステップS1E)。抽象レイヤ作成部２４は、クラウド情報管理部２３から抽象レイヤ作成要求と共に仮想ファンクション位置情報、及びクラウド拠点位置情報を受信する（ステップS2A）。抽象レイヤ作成部２４は、受信した情報に基づいて、抽象レイヤ１７、及び仮想ファンクションオブジェクト１８の作成又は更新を行う（ステップS2B）。以下は、抽象レイヤ１７、及び仮想ファンクションオブジェクト１８が作成された後に、クライアント端末１０からの接続要求があった場合の説明である。
【００４４】
クライアント端末１０からコネクションブローカ１４に仮想ファンクションの接続要求が送信されると、Packet Probe１２は接続要求があったパケットを探知する（ステップS3A、S3B）。Packet Probe１２は、リクエスト解析部２５にクライアント情報作成要求を送信する（ステップS3C）。リクエスト解析部２５はクライアント位置情報解析部２６にクライアント位置情報の探索要求を送信し、接続要求のあった仮想ファンクションをパケット内から探索して特定する（ステップS4A、S4B）。クライアント位置情報解析部２６は、パケットからクライアント位置情報を探索し、探索結果をリクエスト解析部２５に送信する（ステップS4C）。リクエスト解析部２５は、クライアント位置情報の探索結果を受信すると、上記図９のテーブル形式でクライアント情報を作成して保存する（ステップS4D、S4E）。
【００４５】
リクエスト解析部２５は、仮想ファンクション配置最適化部２７へ、クライアント情報と共に最適配置要求を送信する（ステップS4F）。仮想ファンクション配置最適化部２７は、クラウド情報管理部２３から仮想ファンクション位置情報、及びクラウド拠点位置情報を取得する（ステップS5A、S5B）。仮想ファンクション配置最適化部２７は、クライアント情報に含まれる起動要求があった仮想ファンクションと仮想ファンクション位置情報とを比較して、仮想ファンクションの現在位置を探索する（ステップS5C）。仮想ファンクション配置最適化部２７は、クライアント情報と、仮想ファンクション位置情報と、クラウド拠点位置情報とに基づいて、最適な配置となるクラウド拠点３０を探索し、仮想ファンクションの配置位置を決定する（ステップS5D）。ここで、仮想ファンクションの配置位置決定結果が仮想ファンクションの現在位置と異なれば、仮想ファンクションの移動要求をクラウド指示部２２に送信し、仮想ファンクションの移動を行う（ステップS5E〜S5G）。
【００４６】
次に、コネクションブローカ１４により抽象レイヤ１７上の仮想ファンクションオブジェクト１８に対し、仮想ファンクションの起動要求が送信される（ステップS6A）。ここでコネクションブローカ１４は、抽象レイヤ１７上の起動要求があった仮想ファンクションに対応する仮想ファンクションオブジェクト１８のＩＰアドレスに起動要求を送信するように設定されている。仮想ファンクションオブジェクト１８から、仮想ファンクションオブジェクト送受信部２８を通してクラウド指示部２２まで起動要求が転送される（ステップS6B）。クラウド指示部２２は、クライアント情報の起動要求仮想ファンクションと配置位置決定結果とを比較し、起動要求仮想ファンクションがクラウド拠点３０のいずれにあるかを特定する。そして、クラウド拠点３０上の起動要求仮想ファンクションに対応する仮想ファンクションに起動要求が転送され、仮想ファンクションが起動される（ステップS6C）。クラウド拠点３０において起動された仮想ファンクションのＩＰアドレスがクラウド指示部２２に通知される（ステップS6D）。クラウド指示部２２に通知された仮想ファンクションのＩＰアドレスは、仮想ファンクションオブジェクト送受信部２８、仮想ファンクションオブジェクト１８、コネクションブローカ１４の順に転送され、クライアント端末１０に通知される（ステップS6E〜S6G）。また、ＩＰアドレスがクラウド指示部２２に通知されると、クラウド指示部２２はクラウド情報管理部２３に、移動を行った仮想ファンクションの仮想ファンクション位置情報を送信する（ステップS7A）。クラウド情報管理部２３は、仮想ファンクション位置情報のテーブルのうち移動した仮想ファンクションの情報を更新する（ステップS7B）。その後、抽象レイヤ作成部２４を通して、抽象レイヤ１７、及び仮想ファンクションオブジェクト１８を更新する（ステップS7C、S7D）。最後に、通知されたＩＰアドレスに従って、クライアント端末１０からクラウド拠点３０の仮想ファンクションへ接続が行われる（ステップS8）。
【００４７】
次に、オーケストレータ２０で実行される抽象レイヤ処理、及び起動処理について説明する。
【００４８】
図１２に本実施形態における全体のフローチャートを示す。
【００４９】
まずステップS-1で、クラウド指示部２２が、クラウド拠点３０から仮想ファンクション位置情報及びクラウド拠点位置情報を取得する。そして、クラウド情報管理部２３が、取得した仮想ファンクション位置情報、クラウド拠点位置情報を上記図５、及び図６のテーブル形式で保存する。ステップS-2で、抽象レイヤ作成部２４が、ステップS-1で保存した情報に基づいて、抽象レイヤと仮想ファンクションオブジェクト１８を作成する。
【００５０】
その後、ステップS-3にて、コネクションブローカ１４が、クライアント端末１０からの接続要求の待機を行い、接続要求を受信しなければ、抽象レイヤ作成部２４が定期的に抽象レイヤ１７の更新を行うことを繰り返す（ステップS-3、NO）。クライアント端末１０からの接続要求を受信すると（ステップS-3、YES）、リクエスト解析部２５が、接続要求のパケットに基づいて、起動要求のあった仮想ファンクションを探索する（ステップS-4）。クライアント位置情報解析部２６が、クライアント端末１０の接続要求のパケットに含まれるＩＰアドレスに基づいて、クライアント位置情報探索を行う（ステップS-5）。クライアント位置情報解析部２６が、仮想ファンクション及び位置情報の探索結果よりクライアント情報を上記図９のテーブル形式で作成する（ステップS-6）。次に、仮想ファンクション配置最適化部２７が、クライアント情報に含まれる起動要求があった仮想ファンクションと仮想ファンクション位置情報とを比較して仮想ファンクションの現在位置の探索する（ステップS-7）。
【００５１】
仮想ファンクション配置最適化部２７が、クライアント情報と、仮想ファンクション位置情報と、クラウド拠点位置情報とに基づいて、最適な配置となるクラウド拠点３０を探索し、仮想ファンクションの配置位置を決定する（ステップS-8）。ステップS-9では、決定された仮想ファンクションの配置位置が現在位置と同じかを判定する。現在位置と異なれば（ステップS-9、NO）ステップS-10へ移行し、現在位置と同じであれば（ステップS-9、YES）ステップS-11へ移行する。ステップS-10では、仮想ファンクションの移動を行い、ステップS-11へ移行する。ステップS-11では、クラウド指示部２２が、起動要求を受信したかを判定し、起動要求を受信しない間は待機し（ステップS-12）、受信した場合は、ステップS-13へ移行する。クラウド指示部２２が、仮想ファンクションオブジェクト１８から起動要求を受信すると（ステップS-11のYES）、クラウド拠点３０の仮想ファンクションを起動して、ＩＰアドレスを取得する（ステップS-13）。そして、仮想ファンクションオブジェクト送受信部２８が、仮想ファンクションオブジェクト１８へとＩＰアドレスを通知する（ステップS-14）。その後、抽象レイヤ作成部２４が、抽象レイヤ１７、及び仮想ファンクションオブジェクト１８の更新を行う（ステップS-15）。
【００５２】
以上説明したように、第１実施形態に係る仮想ファンクション配置管理システムによれば、複数のクラウド拠点の情報に基づいて、仮想ファンクションを単一サブネット内に配置されているものとして扱うための抽象レイヤを作成する。抽象レイヤ上に仮想ファンクションに対応する仮想ファンクションオブジェクトを配置する。クライアント端末から仮想ファンクションオブジェクトに対して接続要求があったときに、接続要求があった仮想ファンクションオブジェクトに対応する仮想ファンクションが配置されているクラウド拠点に起動要求を送信する。起動要求により起動された仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、クライアント端末に通知する。このため、マルチクラウド環境において、仮想ファンクションを利用するための煩雑な対応を回避することができる。
【００５３】
また、クライアント端末からの接続要求について、コネクションブローカによる振り分け先を、単一サブネットの抽象レイヤ上の仮想ファンクションオブジェクトに設定すればよい。これにより、コネクションブローカの汎用性が保持され、それぞれのクラウド拠点のサブネットに応じた設定をコネクションブローカに行う必要がないため、煩雑な対応を回避できる。
【００５４】
［第２実施形態］
【００５５】
次に本発明の第２実施形態について説明する。なお、第１実施形態と同一の部分には同一の符号を付し、説明を省略する。
【００５６】
第２実施形態では、クライアント端末からの接続要求のパケットの取得にPacket Probeを用いず、仮想ファンクションオブジェクトを利用する点が第１実施形態と異なる。
【００５７】
図１３に示すように、本実施形態に係る仮想ファンクション配置管理システム２００は、クライアント端末１０と、コネクションブローカ１４と、外部データベース１６と、オーケストレータ２２０と、を備えている。また、仮想ファンクション配置管理システム２００は、クラウド拠点３０Ａと、クラウド拠点３０Ｂと、クラウド拠点３０Ｃとを備えている。クライアント端末１０と、コネクションブローカ１４と、外部データベース１６と、オーケストレータ２２０と、クラウド拠点３０Ａ〜クラウド拠点３０Ｃとは、インターネット等のネットワーク１９を介して接続される。
【００５８】
オーケストレータ２２０は、図１４に示すように、機能的には、クラウド指示部２２と、クラウド情報管理部２３と、抽象レイヤ作成部２４と、クライアント位置情報解析部２６とを含む。また、オーケストレータ２２０は、仮想ファンクション配置最適化部２７と、仮想ファンクションオブジェクト送受信部２２８とを含む。なお、クラウド指示部２２及び仮想ファンクションオブジェクト送受信部２２８が起動制御部の一例である。
【００５９】
仮想ファンクションオブジェクト送受信部２２８は、抽象レイヤ１７上の仮想ファンクションオブジェクト１８から仮想ファンクションの起動要求を受信すると、クライアント位置情報解析部２６へ、クライアント端末１０の位置情報解析要求を送信する。また、クラウド指示部２２へと仮想ファンクションの起動要求の転送を行う。クライアント位置情報解析部２６から、解析結果の座標情報を受け取ると、クライアント情報を図９に示すテーブルの形式で保存する。仮想ファンクションオブジェクト送受信部２２８は、クライアント情報テーブル３６Ａを作成すると、仮想ファンクション配置最適化部２７に、クライアント情報と共に仮想ファンクションの配置拠点決定要求を送信する。クラウド指示部２２から、起動要求により起動された仮想ファンクションのＩＰアドレスを受信すると、ＩＰアドレスを仮想ファンクションオブジェクト１８へ転送し、クライアント端末１０に通知する。
【００６０】
クライアント位置情報解析部２６は、仮想ファンクションオブジェクト送受信部２２８からクライアント端末１０の位置情報解析要求を受信する。クライアント位置情報解析部２６は、位置情報解析要求を受信すると、外部データベース１６を用いてクライアントの位置情報を解析し、クライアント端末１０の座標情報を仮想ファンクションオブジェクト送受信部２２８へと送信する。
【００６１】
次に、本実施形態に係る仮想ファンクション配置管理システム２００の作用について説明する。なお、第１実施形態と同一の部分は説明を省略する。
【００６２】
図１５のシーケンス図を参照して、各装置及び処理部間での情報のやり取りについて説明する。
【００６３】
クライアント端末１０からコネクションブローカ１４に接続要求が送信される（ステップS3A）。コネクションブローカ１４は仮想ファンクションオブジェクト１８の中から、起動要求のあった仮想ファンクションのアカウントを所持する仮想ファンクションオブジェクトへ起動要求を送信する（ステップS3B）。仮想ファンクションオブジェクト１８は仮想ファンクションオブジェクト送受信部２２８へと起動要求を転送する（ステップS3C）。仮想ファンクションオブジェクト送受信部２２８はクライアント位置情報解析部２６にクライアント位置情報の探索要求を送信し、接続要求のあった仮想ファンクションをパケット内から探索して特定する（ステップS4A、S4B）。クライアント位置情報解析部２６は、パケットからクライアント位置情報を探索し、探索結果を仮想ファンクションオブジェクト送受信部２２８に送信する（ステップS4C）。仮想ファンクションオブジェクト送受信部２２８は、クライアント位置情報の探索結果を受信すると、上記図９のテーブル形式でクライアント情報を作成して保存する（ステップS4D、S4E）。
【００６４】
仮想ファンクションの配置が完了すると、仮想ファンクション配置最適化部２７より、クラウド指示部２２を通してクラウド拠点３０上の仮想ファンクションに起動要求が転送され、仮想ファンクションが起動される（ステップS6A、S6B）。仮想ファンクションの起動後、クラウド拠点３０より、起動された仮想ファンクションのＩＰアドレスがクラウド指示部２２に通知される（ステップS6C）。クラウド指示部２２に通知された仮想ファンクションのＩＰアドレスは、仮想ファンクションオブジェクト送受信部２２８、仮想ファンクションオブジェクト１８、コネクションブローカ１４の順に転送され、クライアント端末１０に通知される（ステップS6D〜S6F）。
【００６５】
以上説明したように、第２実施形態に係る仮想ファンクション配置管理システムによれば、複数のクラウド拠点の情報に基づいて、仮想ファンクションを単一のクラウド拠点内に配置されているものとして扱うための抽象レイヤを作成する。抽象レイヤ上に仮想ファンクションに対応する仮想ファンクションオブジェクトを配置する。クライアント端末から仮想ファンクションオブジェクトに対して接続要求があったときに、接続要求があった仮想ファンクションオブジェクトに対応する仮想ファンクションが配置されているクラウド拠点に起動要求を送信する。起動要求により起動された仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、クライアント端末に通知する。このため、マルチクラウド環境において、仮想ファンクションを利用するための煩雑な対応を回避することができる。
【００６６】
また、上記第１及び第２実施形態において、仮想ファンクションが配置されているクラウド拠点と、クライアント端末の位置情報と、クラウド拠点の各々の位置情報とに基づいて、仮想ファンクションを複数のクラウド拠点のいずれに配置するかを決定する。これにより、マルチクラウド環境において、仮想ファンクションを利用する際の操作遅延を防止することができる。
【００６７】
また、上述した実施形態では、仮想ファンクションがＶＭである場合について説明したが、これに限定されるものではなく、仮想ファンクションは仮想化したネットワーク機器や仮想化された他のハードウェアであってもよい。
【００６８】
以上の各実施形態に関し、更に以下の付記を開示する。
【００６９】
（付記１）
仮想的な実行環境である仮想ファンクションが配置される複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶する記憶部と、
前記仮想ファンクションオブジェクトに対して、クライアント端末から前記仮想ファンクションへの接続要求があったときに、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点に起動要求を送信し、前記起動要求により起動された前記仮想ファンクションの接続のための情報を、前記クライアント端末に通知する起動制御部と、
を含む仮想ファンクション配置管理装置。
【００７０】
（付記２）
前記接続要求に基づいて、前記クライアント端末の位置情報を解析するクライアント位置情報解析部と、
前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点と、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを決定する仮想ファンクション配置最適化部とを更に含み、
前記起動制御部は、前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合、前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションの起動要求を、前記決定された前記クラウド拠点に送信し、前記起動要求により起動された前記仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、前記クライアント端末に通知する付記１に記載の仮想ファンクション配置管理装置。
【００７１】
（付記３）
前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合には、前記仮想ファンクション、前記仮想ファンクションが現在配置されているクラウド拠点、前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレス、及び前記仮想ファンクションオブジェクトのＩＰアドレスを対応付けて格納した仮想ファンクション位置情報テーブルにおける、前記仮想ファンクションが現在配置されているクラウド拠点、及び前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレスを書き換えるクラウド情報管理部を更に含み、
前記仮想ファンクション配置最適化部は、前記仮想ファンクション位置情報テーブルと、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを決定する付記２に記載の仮想ファンクション配置管理装置。
【００７２】
（付記４）
記憶部が、仮想的な実行環境である仮想ファンクションが配置される前記複数のクラウド拠点の情報に基づいて、前記仮想ファンクションに対応する仮想ファンクションオブジェクトを記憶し、
起動制御部が、前記仮想ファンクションオブジェクトに対して、クライアント端末から前記仮想ファンクションへの接続要求があったときに、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点に起動要求を送信し、前記起動要求により起動された前記仮想ファンクションの接続のための情報を、前記クライアント端末に通知する
処理をコンピュータに実行させることを特徴とする仮想ファンクション配置管理方法。
【００７３】
（付記５）
前記接続要求に基づいて、前記クライアント端末の位置情報を解析するクライアント位置情報解析部と、
仮想ファンクション配置最適化部は、前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されている前記クラウド拠点と、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを更に決定し、
前記起動制御部は、前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合、前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションの起動要求を、前記決定された前記クラウド拠点に送信し、前記起動要求により起動された前記仮想ファンクションのＩＰアドレスを、接続先のＩＰアドレスとして、前記クライアント端末に通知する付記４に記載の仮想ファンクション配置管理方法。
【００７４】
（付記６）
クラウド情報管理部は、前記仮想ファンクション配置最適化部によって決定された前記クラウド拠点が、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションが配置されているクラウド拠点と異なる場合には、前記仮想ファンクション、前記仮想ファンクションが現在配置されているクラウド拠点、前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレス、及び前記仮想ファンクションオブジェクトのＩＰアドレスを対応付けて格納した仮想ファンクション位置情報テーブルにおける、前記仮想ファンクションが現在配置されているクラウド拠点、及び前記現在配置されているクラウド拠点における前記仮想ファンクションのＩＰアドレスを更に書き換え、
前記仮想ファンクション配置最適化部は、前記仮想ファンクション位置情報テーブルと、前記解析された前記クライアント端末の位置情報と、前記クラウド拠点の各々の位置情報とに基づいて、前記接続要求があった前記仮想ファンクションオブジェクトに対応する前記仮想ファンクションを前記複数のクラウド拠点のいずれに配置するかを決定する付記５に記載の仮想ファンクション配置管理方法。
【符号の説明】
【００７５】
１０   クライアント端末
１４   コネクションブローカ
１６   外部データベース
１７   抽象レイヤ
１８   仮想ファンクションオブジェクト
１９   ネットワーク
２０，２２０  オーケストレータ
２２   クラウド指示部
２３   クラウド情報管理部
２４   抽象レイヤ作成部
２５   リクエスト解析部
２６   クライアント位置情報解析部
２７   仮想ファンクション配置最適化部
２８，２２８  仮想ファンクションオブジェクト送受信部
３０Ａ〜３０Ｄ       クラウド拠点
３２Ａ、３２Ｂ       仮想ファンクション位置情報テーブル
３４Ａ、３４Ｂ       クラウド拠点位置情報テーブル
３６Ａ クライアント情報テーブル
４０   コンピュータ
４１   ＣＰＵ
４２   メモリ
４３   記憶部
４９   記憶媒体
５０   抽象レイヤ処理プログラム
６０   起動プログラム
１００，２００       仮想ファンクション配置管理システム
【図１】
2018137622.tif 000003
【図２】
2018137622.tif 000004
【図３】
2018137622.tif 000005
【図４】
2018137622.tif 000006
【図５】
2018137622.tif 000007
【図６】
2018137622.tif 000008
【図７】
2018137622.tif 000009
【図８】
2018137622.tif 000010
【図９】
2018137622.tif 000011
【図１０】
2018137622.tif 000012
【図１１】
2018137622.tif 000013
【図１２】
2018137622.tif 000014
【図１３】
2018137622.tif 000015
【図１４】
2018137622.tif 000016
【図１５】
2018137622.tif 000017