(57)【要約】【課題】ネットワークのノードに対してアプリケーションを最適に配置することが可能なアプリケーション配置装置を提供する。【解決手段】アプリケーション配置装置１０は、リンクＬによって通信可能に接続された複数のノードＮによって構成されるネットワーク４に対して、アプリケーションをノードＮに配置する装置であって、ノードＮの計算コスト及びリンクＬの通信コストを含むコストが最小となるノードＮをアプリケーションの配置先に決定する配置決定部１４と、決定されたノードＮにアプリケーションを配信する配置実行部１５と、を備える。【選択図】図１
2020137073.tif 000002
【特許請求の範囲】
【請求項１】
リンクによって通信可能に接続された複数のノードによって構成されるネットワークに対して、アプリケーションを前記ノードに配置するアプリケーション配置装置であって、
前記ノードの計算コスト及び前記リンクの通信コストを含むコストが最小となる前記ノードを前記アプリケーションの配置先に決定する配置決定部と、
決定された前記ノードに前記アプリケーションを配信する配置実行部と、
を備えることを特徴とするアプリケーション配置装置。
【請求項２】
前記配置決定部は、制約条件として、前記アプリケーションが使用するリソースが前記ノードのリソース以下となるように、前記アプリケーションの配置先を決定する
ことを特徴とする請求項１に記載のアプリケーション配置装置。
【請求項３】
前記配置決定部は、制約条件として、前記アプリケーションが使用する帯域が前記リンクの帯域以下となるように、前記アプリケーションの配置先を決定する
ことを特徴とする請求項１又は請求項２に記載のアプリケーション配置装置。
【請求項４】
前記配置決定部は、制約条件として、前記アプリケーションを前記ノードに配置するのに要する時間と、前記ノードにおいて前記アプリケーションを実行する時間と、の和が、許容遅延時間以下となるように、前記アプリケーションの配置先を決定する
ことを特徴とする請求項１から請求項３のいずれか一項に記載のアプリケーション配置装置。
【請求項５】
前記配置決定部は、前記コストの算出結果の中から、前記制約条件を満たすように前記アプリケーションの配置先を決定する
ことを特徴とする請求項２から請求項４のいずれか一項に記載のアプリケーション配置装置。
【請求項６】
前記配置決定部は、前記制約条件を満たす前記ノードの中から、前記コストが最小となる前記ノードを前記アプリケーションの配置先に決定する
ことを特徴とする請求項２から請求項４のいずれか一項に記載のアプリケーション配置装置。
【請求項７】
リンクによって通信可能に接続された複数のノードによって構成されるネットワークに対して、アプリケーションを前記ノードに配置するためにコンピュータを、
前記ノードの計算コスト及び前記リンクの通信コストを含むコストが最小となる前記ノードを前記アプリケーションの配置先に決定する配置決定手段、
決定された前記ノードに前記アプリケーションを配信する配置実行手段、
として機能させるアプリケーション配置プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークのノードに対してアプリケーションを配置するための技術に関する。
【背景技術】
【０００２】
近年、ＩｏＴ（Internet of Things）技術が進展し、数多くのデバイスからデータを取得することが可能となってきている。現状のＩｏＴサービスでは、各自の所有するＩｏＴデバイスからデータを取得し、クラウドサーバにおいて、データ収集・解析が行われている。
【０００３】
ネットワーク上に存在するリソースの最適利用に関しては、ネットワーク上にあるサーバにVN（Virtual Network）の埋め込み位置を最適化する手法の研究が進められている。非特許文献１には、通信トラヒックを考慮してVNの最適配置を決定する手法が記載されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】河島  滉太  他，“分散型モデル予測制御にもとづくスケーラビリティを有する仮想ネットワーク埋め込み手法”  電子情報通信学会，vol. 115，pp. 19-24，2015
【発明の概要】
【発明が解決しようとする課題】
【０００５】
VNの埋め込みでは、エッジサーバの計算資源量を考慮しない。また、実際にＩｏＴデバイスからのデータを計算処理する場合には、アプリケーションに応じて要求する処理時間や必要なデータは異なると考えられる。エッジサーバは、計算リソースがクラウドサーバと比較して小規模であるため、処理可能なアプリケーション数に限りがある。
【０００６】
本発明は、前記した点に鑑みて創案されたものであり、ネットワークのノードに対してアプリケーションを最適に配置することが可能なアプリケーション配置装置及びアプリケーション配置プログラムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
前記課題を解決するため、本発明のアプリケーション配置装置は、リンクによって通信可能に接続された複数のノードによって構成されるネットワークに対して、アプリケーションを前記ノードに配置するアプリケーション配置装置であって、前記ノードの計算コスト及び前記リンクの通信コストを含むコストが最小となる前記ノードを前記アプリケーションの配置先に決定する配置決定部と、決定された前記ノードに前記アプリケーションを配信する配置実行部と、を備えることを特徴とする。
【０００８】
かかる構成によると、ネットワークにおける最適なノードにアプリケーションを配置し、計算コスト及び通信コストを抑えることができる。
【０００９】
前記配置決定部は、制約条件として、前記アプリケーションが使用するリソースが前記ノードのリソース以下となるように、前記アプリケーションの配置先を決定する構成であってもよい。
【００１０】
かかる構成によると、ノードの性能を超えない範囲で、アプリケーションを好適に配置することができる。
【００１１】
前記配置決定部は、制約条件として、前記アプリケーションが使用する帯域が前記リンクの帯域以下となるように、前記アプリケーションの配置先を決定する構成であってもよい。
【００１２】
かかる構成によると、リンクの性能を超えない範囲で、アプリケーションを好適に配置することができる。
【００１３】
前記配置決定部は、制約条件として、前記アプリケーションを前記ノードに配置するのに要する時間と、前記ノードにおいて前記アプリケーションを実行する時間と、の和が、許容遅延時間以下となるように、前記アプリケーションの配置先を決定する構成であってもよい。
【００１４】
かかる構成によると、例えばユーザによって指定された遅延許容時間を超えない範囲で、アプリケーションを好適に配置することができる。
【００１５】
前記配置決定部は、前記コストの算出結果の中から、前記制約条件を満たすように前記アプリケーションの配置先を決定する構成であってもよい。
【００１６】
かかる構成によると、配置の全パターンに関してコストの目的関数を計算してから制約条件によって解を絞り込むため、制約条件の変更に対して好適に対応することができる。
【００１７】
前記配置決定部は、前記制約条件を満たす前記ノードの中から、前記コストが最小となる前記ノードを前記アプリケーションの配置先に決定する構成であってもよい。
【００１８】
かかる構成によると、制約条件によって限られた配置のパターンの範囲内においてコストの目的関数を計算するため、短時間で解を導出することができる。
【００１９】
また、本発明は、コンピュータを前記アプリケーション配置装置として機能させるアプリケーション配置プログラムとしても具現化可能である。
【発明の効果】
【００２０】
本発明によれば、計算コスト及び通信コストを抑えることによって、ネットワークにおける最適なノードにアプリケーションを配置することができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係るアプリケーション配置システムを模式的に示すブロック図である。
【図２】ネットワーク内におけるノードの位置と計算コスト及び通信コストとの関係の例を模式的に示すグラフである。
【図３】本発明の実施形態に係るアプリケーション配置システムの動作例を模式的に示すシーケンス図である。
【発明を実施するための形態】
【００２２】
本願の発明者は、将来的に多彩なＩｏＴサービスを低コストで開発、運用するために、ＩｏＴデバイスとサービスとを分離し、水平分離的にＩｏＴデバイス及びサービスを相互に利用可能にすることが必要になると考えている。しかし、この場合には、相互利用可能なＩｏＴデバイスの増加に伴い、通信トラヒック量の増大が懸念される。
【００２３】
そのため、ＩｏＴデバイスに近いエッジ側リソースでアプリケーションを実行することによって、ＩｏＴデバイスからのデータをエッジ側で処理しきることが求められる。しかし、エッジ側リソースはクラウド側リソースに比べて小規模であるため、処理可能なアプリケーション数及びＩｏＴデバイスからのデータ量は限られている。したがって、本発明では、リソースへの負荷を抑えるために計算リソース使用コストと通信コストの和の最小化を行い、さらにＩｏＴアプリケーションの要件（ＣＰＵ（Central Processing Unit）やＧＰＵ（Graphic Processor Unit）のリソース、通信帯域、許容しうる遅延時間）を満たすことを行う。
【００２４】
これは、トラヒック量の増加に応じて通信コストは増大するためである。また、計算リソース使用コストと通信コストとの和の最小化を目的とするのは、通信コストの低減のみを行った場合、エッジ側リソースにアプリの処理が集中し、小規模なエッジ側リソースの負荷が大きくなり、計算リソースの使用コスト増大が懸念されるためである。
【００２５】
すなわち、本発明は、全てのＩｏＴデバイスの全てのデータをクラウドサーバに保存するのではなく、ＩｏＴデバイスに近いサーバ（ネットワーク内のノード）でデータ解析又はデータ前処理を行うアプリケーションを配信する。すなわち、ＩｏＴデバイスから取得されるデータの計算処理を行うアプリケーションをネットワーク上に存在するリソース（ノード）に最適配置することによって、データ量を少なくし、全体のトラヒック量を低減する。
【００２６】
本発明の実施形態について、適宜図面を参照しながら詳細に説明する。図１に示すように、本発明の実施形態に係るアプリケーション配置システム１は、端末２から取得されるデータをアプリケーションによって処理してクラウドサーバ３に記憶させるためのシステムであり、ネットワーク４と、アプリケーション配置装置１０と、を備える。ここで、端末２は、アプリケーションによって処理されるデータを取得してネットワーク４へ送信するＩｏＴ（Internet of Things）デバイスであり、例えば、ＩＰ（Internet Protocol）カメラである。
【００２７】
＜ネットワーク＞
ネットワーク４は、端末２とクラウド３とを通信可能に接続しており、本実施形態では、複数のノードＮ（Ｎ１〜Ｎ７）がリンクＬ（Ｌ１〜Ｌ６）によってツリー型に接続されている。ノードＮは、端末２によって送信されたデータをクラウドサーバ３側へ転送するとともに、当該ノードＮに配置されたアプリケーションによって、当該データを処理し、処理されたデータをクラウドサーバ３側へ転送する。
【００２８】
図２に示すように、ノードＮによるデータ処理のコストとして、計算コストは、ノードＮがクラウドサーバ３に近いほど小さくなる（端末２に近いほど大きくなる）。なぜなら、クラウドサーバ３に近いノードＮの方が、性能が良いためである。これは、クラウドサーバ３に近いノードＮほど、統計多重効果による遊休時間の減少及び高い設備稼働率が期待されるので、クラウドサーバ３に近い場所に高性能なノードＮを配備することによって得られる効果が大きいためである。一方、通信コストは、ノードＮが端末２に近いほど大きくなる（クラウドサーバ３に近いほど小さくなる）。なぜなら、処理済みのデータが転送される区間が長いほど、リンクＬの負荷が小さくなるためである。
【００２９】
＜アプリケーション配置装置＞
図１に示すように、アプリケーション配置装置１０は、クラウドサーバ３に転送すべきデータの前処理を行うアプリケーションを、ネットワーク４における複数のノードＮのいずれかに配置する装置である。アプリケーション配置装置１０は、ＣＰＵ（Central Processing Unit）、ＲＯＭ（Read-Only Memory）、ＲＡＭ（Random Access Memory）、入出力回路等によって構成されている。アプリケーション配置装置１０は、機能部として、記憶部１１と、設備情報管理部１２と、アプリ情報管理部１３と、配置決定部１４と、配置実行部１５と、を備える。
【００３０】
≪記憶部≫
記憶部１１は、設備情報データベース１１ａと、アプリ情報データベース１１ｂと、を備える。設備情報データベース１１ａには、ネットワーク４の設備（ノードＮ、リンクＬ）ごとに、当該設備に関する情報（設備情報、例えば、後記するαi，βj，Ｃni，Ｂlk，Ｃlj等）が記憶されている。アプリ情報データベース１１ｂには、アプリケーションと、当該アプリケーションに関する情報（アプリ情報、例えば、後記するＢnk，Ｃk，Ｂak等）と、が関連付けて記憶されている。アプリ情報は、例えば、検証用装置で性能測定を行うことによって得られたものであってもよい。
【００３１】
≪設備情報管理部≫
設備情報管理部１２は、設備情報データベース１１ａに記憶された設備情報を管理（追加、更新、修正、削除等）する。設備情報管理部１２は、ネットワーク４のノードＮから当該ネットワーク４の設備情報を取得し、取得された設備情報を設備情報データベース１１ａに記憶させる。
【００３２】
≪アプリ情報管理部≫
アプリ情報管理部１３は、アプリ情報データベース１１ｂに記憶されたアプリ情報を管理（追加、更新、修正、削除等）する。アプリ情報管理部１３は、アプリケーションの制作会社のサーバ５等からアプリケーション及び当該アプリケーションのアプリ情報を取得し、取得されたアプリケーション及びアプリ情報をアプリ情報データベース１１ｂに記憶させる。
【００３３】
≪配置決定部≫
配置決定部１４は、設備情報データベース１１ａに記憶された設備情報と、アプリ情報データベース１１ｂに記憶されたアプリ情報と、端末２から取得された情報（端末２に関する情報、遅延許容時間等）と、に基づいて、アプリケーションをネットワーク４内の複数のノードNのいずれかに配置する。
【００３４】
（第一の制約条件）
ここで、配置決定部１４は、下記式（第一の制約条件）に基づいて、ノードＮの計算リソースの上限を超えないように、アプリケーション配置を制限する。
【００３５】
【数１】
2020137073.tif 000003
【００３６】
Ａni,k：ｉ番目のノードＮにおけるｋ番目のアプリケーションの動作の有無（動作有で「１」、動作無で「０」）
Ｂnk：ｋ番目のアプリケーションがノードＮにおいて使用するリソース量
Ｃni：物理空間におけるｉ番目のノードＮのリソース上限
Ｍni：物理空間におけるｉ番目のノードＮの使用有無（使用有で「１」、使用無で「０」）
本実施形態において、Ｂnkは、アプリケーションをノードＮに記憶させる場合に、ノードＮ内のアプリケーション記憶領域において当該アプリケーションが占める量である。
また、Ｃniは、ノードＮに配置（収容）して実行可能なアプリケーションの数を決める指標であり、例えば、ノードＮとしてのコンピュータのストレージ、メモリ等の記憶容量である。
【００３７】
第一の制約条件を示す式において、左辺は、アプリケーションを仮に配置した組み合わせにおいて、ｉ番目のノードＮに配置されたアプリケーションの数（又は量）を表す。右辺は、ネットワーク４内のｉ番目のノードＮが配置可能なアプリケーションの数（又は量）を表す。
【００３８】
（第二の制約条件）
また、配置決定部１４は、下記式（第二の制約条件）に基づいて、リンクＬの帯域の上限を超えないように、アプリケーション配置を制限する。
【００３９】
【数２】
2020137073.tif 000004
【００４０】
Ａlj,k：ｊ番目のリンクＬにおけるｋ番目のアプリケーションの使用の有無（使用有で「１」、使用無で「０」）
Ｂlk：ｋ番目のアプリケーションがリンクＬにおいて使用する帯域
Ｃlj：物理空間におけるｊ番目のリンクＬの帯域上限
Ｍlj：物理空間におけるｊ番目のリンクＬの使用有無（使用有で「１」、使用無で「０」）
本実施形態において、Ｂlkは、リンクＬで通信可能な最大量であり、例えば、通信事業者が定める通信帯域幅、通信速度等の最大値である。
【００４１】
第二の制約条件を示す式において、左辺は、アプリケーションを仮に配置した組み合わせにおいて、ｊ番目のリンクＬにトラヒックを流すアプリケーションの数（又は量）を表す。
右辺は、ネットワーク４内のｊ番目のリンクＬにトラヒックを流すアプリケーションの数（又は量）を表す。
【００４２】
（第三の制約条件）
また、配置決定部１４は、下記式（第三の制約条件）に基づいて、処理時間の上限（TIMEk）を超えないように、アプリケーション配置を制限する。
【００４３】
【数３】
2020137073.tif 000005
【００４４】
Ｃk：ｋ番目のアプリケーションの容量
Ｂak：ｋ番目のアプリケーションがデータ処理に要する時間
本実施形態において、Ｂakは、ノードＮがアプリケーションを用いてデータを処理する際に、データを取得してから（アプリケーションが処理を開始してから）処理されたデータが出力されるまでの時間である。
【００４５】
第三の制約条件を示す式において、左辺第一項は、アプリケーションを、リンクＬを介してノードＮに配置するのに要する時間を表す。
左辺第二項は、アプリケーションの実行に要する時間を表す。
右辺は、ユーザによって要求される処理時間の上限、すなわち、遅延許容時間を表す。遅延許容時間は、アプリケーションをリクエストしてから当該アプリケーションによる処理結果が出力されるまでの時間に関して、ユーザが許容する遅延時間である。
【００４６】
（コストに関する目的関数）
配置決定部１４は、ノードＮの計算コスト及びリンクＬの通信コストを含むコストが最小となるノードＮを、アプリケーションの配置先に決定する。本実施形態において、配置決定部１４は、第一ないし第三の制約条件を満たした範囲において、下記式（目的関数）に基づいてコスト（COST）を算出し、コストが最小となるアプリケーションの配置を決定する。
【００４７】
【数４】
2020137073.tif 000006
【００４８】
αi：ｉ番目のノードＮを使用する際のコスト
βj：ｊ番目のリンクＬを使用する際のコスト
本実施形態において、αiは、ｉ番目のノードＮを使用する際に生じる費用であり、例えば、ノードＮとしてのコンピュータを使用する際の料金である。
また、βjは、ノードＮをつなぐ回線を最大限使用した場合に生じる費用であり、例えば、通信事業者が定める通信料金である。
【００４９】
目的関数を示す式において、右辺第一項は、ｋ個のアプリケーションを仮に配置した組み合わせにおいて、ノードＮの計算コストの総和を表す。換言すると、右辺第一項は、ノードＮ使用コストとノードＮ使用有無の積の全てのノードＮ分の和である。
右辺第二項は、ｋ個のアプリケーションを仮に配置した組み合わせにおいて、リンクＬの通信コストの総和を表す。換言すると、右辺第二項は、リンクＬ使用コストとリンクＬ使用有無及びリンクＬ使用帯域率の積の全てのリンクＬ分の和である。ここで、リンクＬ使用帯域率は、対象とするリンクＬの帯域上限を分母とし、当該リンクＬを使用する全てのアプリケーションが占める帯域を分子とする。
【００５０】
なお、第一ないし第三の制約条件と、目的関数との適用順序は、どちらが先であってもよい。すなわち、配置決定部１４は、アプリケーションの配置先として、目的関数が最小になるノードから３つの制約条件を満たすノードを選択してもよく、３つの制約条件を満たすノードから目的関数が最小となるノードを選択してもよい。
【００５１】
≪配置実行部≫
配置実行部１５は、配置決定部１４によって決定された、各種制約条件を満たしつつコストが最小となるアプリケーションの配置を取得し、取得された内容に基づいて、アプリ情報データベース１１ｂに記憶されたアプリケーションを、対応するノードＮへ配信する。
【００５２】
＜動作例＞
続いて、本発明の実施形態に係るアプリケーション配置システム１の動作例について、図３を参照して説明する（適宜図１参照）。
【００５３】
まず、アプリケーション配置装置１０のアプリ情報管理部１３が、アプリケーションの制作会社等のサーバ５から、アプリケーション及びアプリ情報を取得する（アプリ情報通知、ステップＳ１）。続いて、アプリ情報管理部１３が、取得されたアプリケーション及びアプリ情報をアプリ情報データベース１１ｂに記憶させる。
【００５４】
また、アプリケーション配置装置１０の設備情報管理部１２が、ネットワーク４の各ノードＮに対して設備情報要求を送信する（設備情報要求、ステップＳ２）。続いて、ネットワーク４の各ノードＮが、設備情報要求を受信すると、設備情報管理部１２に対して設備情報を送信する（設備情報通知、ステップS３）。続いて、設備情報管理部１２が、設備情報を受信すると、受信された設備情報を設備情報データベース１１ａに記憶させる。
【００５５】
なお、サーバ５及びアプリ情報管理部１３によるステップＳ１と、設備情報管理部１２及びネットワーク４によるステップＳ２，Ｓ３との順番は、どちらが先であってもよい。
【００５６】
続いて、ユーザが所有する端末２が、遅延許容時間を含むアプリケーション配置要求を送信する（アプリ配置要求、ステップＳ４）。続いて、配置決定部１４が、アプリケーション配置要求を受信すると、アプリ情報管理部１３に対してアプリ情報要求を送信する（アプリ情報要求、ステップＳ５）。続いて、アプリ情報管理部１３が、アプリ情報要求を受信すると、アプリ情報データベース１１ｂから対応するアプリ情報を読み出し、読み出されたアプリ情報を配置決定部１４へ出力する（アプリ情報通知、ステップＳ６）。
【００５７】
また、配置決定部１４が、設備情報管理部１２に対して設備情報要求を送信する（設備情報要求、ステップＳ７）。続いて、設備情報管理部１２が、設備情報要求を受信すると、設備情報データベース１１ａから対応する設備情報を読み出し、読み出された設備情報を配置決定部１４へ出力する（設備情報通知、ステップＳ８）。
【００５８】
なお、配置決定部１４及びアプリ情報管理部１３によるステップＳ５，Ｓ６と、配置決定部１４及び設備情報管理部１２によるステップＳ７，Ｓ８との順番は、どちらが先であってもよい。
【００５９】
続いて、配置決定部１４が、取得されたアプリケーション配置要求、アプリ情報及び設備情報に基づいて、アプリケーションをネットワーク４のどのノードＮに配置するかを決定する（配置決定、ステップＳ９）。続いて、配置決定部１４が、ステップＳ９の決定結果を配置実行部１５へ出力する（決定結果通知、ステップＳ１０）。
【００６０】
続いて、配置実行部１５が、決定結果を取得すると、取得された決定結果に基づいて、アプリ情報データベース１１ｂから対応するアプリケーションを読み出し、読み出されたアプリケーションを対応するノードＮへ配信する（配置実行、ステップＳ１１）。
【００６１】
続いて、ネットワーク４のノードＮが、アプリケーションが配置されると、配置結果を設備情報管理部１２へ送信する（配信結果通知、ステップＳ１２）。続いて、設備情報管理部１２が、配置結果を受信すると、受信された配置結果を設備情報データベース１１ａに記憶させる。
【００６２】
＜アプリケーションの配置例＞
本発明の一例として、3つのノードＮを有する完全二分木構造を呈するネットワーク４（図１のノードＮ１，Ｎ２，Ｎ５参照。ただし、Ｎ５をＮ３に読み替える）に対して、２つのアプリケーションの最適配置を算出する手法について説明する。
【００６３】
各種パラメータは、以下のように設定されているものとする（単位に関しては省略）。
・ノードの容量Ｃniは、全てのノードで１０（すなわち、Ｃn1＝Ｃn2＝Ｃn3＝１０）
・ノード使用コストαi：α1＝１，α2＝２，α3＝３
・リンクの帯域上限Ｃljは、全てのリンクで１０００（すなわち、Ｃl1＝Ｃl2＝１０００）
・アプリケーション情報：２つのアプリケーションともに、遅延許容時間＝５０，容量＝１５，処理時間＝１０，使用する帯域＝１５）
・リンク使用コストβjは、全てのリンクで１０００（すなわち、β1＝β2＝１０００）
なお、２つのアプリケーションによって処理されるデータをネットワーク４へ送信する端末２は、ノードＮ１に接続されているものとする。
【００６４】
ここで、第一の制約条件を示す式を用いると、１０＜１５×２であるため、ノードＮ１〜Ｎ３の１つに２つのアプリケーションを配置することはできないことが分かる。
また、第二の制約条件を示す式を用いると、１０００＞max（１５×２，１５×１）であるため、第二の制約条件によってアプリケーションの配置が制約されることはないことが分かる。
また、第三の制約条件を示す式を用いると、５０＞max（１０，１０＋１５／１５×１，１０＋１５／１５×２）であるため。第三の制約条件によってアプリケーションの配置が制約されることはないことが分かる。
【００６５】
かかる事項に鑑みて、２つのアプリケーションを３つのノードＮ１〜Ｎ３の２つに配置することを試行する。
・ノードN１，N２のそれぞれに、２つのアプリケーションの１つを配置する場合
COST＝（１＋２）＋（０＋１０００×１５／１０００＋１０００×１５／１０００）＝３３
・ノードＮ２，Ｎ３のそれぞれに、２つのアプリケーションの１つを配置する場合
COST＝（２＋３）＋（１０００×１５／１０００＋１０００×１５／１０００）＝３５
・ノードＮ１，Ｎ３のそれぞれに、２つのアプリケーションの１つを配置する場合
COST＝（１＋３）＋（０＋１０００×１５／１０００）＝１９
したがって、この例では、リンクＬ１によって接続されたノードＮ１，Ｎ３のうち、ノードＮ１に対して２つのアプリケーションの一方が配置され、ノードＮ３に対して２つのアプリケーションの他方が配置される。ここで、２つのアプリケーションをそれぞれノードＮ１，Ｎ３のどちらに配置するかは、適宜設定可能である。
【００６６】
本発明の実施形態に係るアプリケーション配置システム１は、コストに関する目的関数を用いて、コストが最小となるようにアプリケーションを配置するノードＮを決定するので、ネットワーク４における最適なノードＮにアプリケーションを配置し、計算コスト及び通信コストを抑えることができる。
【００６７】
また、アプリケーション配置システム１は、第一の制約条件を用いてアプリケーションの配置先を決定するので、ノードＮの性能を超えない範囲で、アプリケーションを好適に配置することができる。
また、アプリケーション配置システム１は、第二の制約条件を用いてアプリケーションの配置先を決定するので、リンクＬの性能を超えない範囲で、アプリケーションを好適に配置することができる。
また、アプリケーション配置システム１は、第三の制約条件を用いてアプリケーションの配置先を決定するので、ユーザによる遅延許容時間を超えない範囲で、アプリケーションを好適に配置することができる。
【００６８】
なお、アプリケーション配置システム１は、コストの目的関数→制約条件の順に計算を行う場合には、配置の全パターンに関してコストの目的関数を計算してから制約条件によって解を絞り込むため、制約条件の変更に対して好適に対応することができる。
また、アプリケーション配置システム１は、制約条件→コストの目的関数の順に計算を行う場合には、制約条件によって限られた配置のパターンの範囲内においてコストの目的関数を計算するため、短時間で解を導出することができる。
【００６９】
以上、本発明の実施形態について説明したが、本発明は前記実施形態に限定されず、本発明の要旨を逸脱しない範囲で適宜変更可能である。例えば、本発明は、コンピュータを前記アプリケーション配置装置１０として機能させるアプリケーション配置プログラムとしても具現化可能である。また、第一ないし第三の制約条件の少なくとも一つは、省略可能である。また、コストの目的関数及び制約条件は、前記した各式に限定されない。
【符号の説明】
【００７０】
１      アプリケーション配置システム
２      端末
３      クラウドサーバ
４      ネットワーク
１０    アプリケーション配置装置
１４    配置決定部
１５    配置実行部
Ｌ      リンク
Ｎ      ノード
【図１】
2020137073.tif 000007
【図２】
2020137073.tif 000008
【図３】
2020137073.tif 000009