資源予約装置及び方法及びプログラム
【課題】 クライアントが予約すべき資源の場所を明示的に指定しなくても、適切な資源を自動的に予約可能とする。
【解決手段】 本発明は、サービスに対応する計算機、ストレージ、ノード、パスなどのオブジェクト等の構成資源と資源の性能条件を管理したデータベースを有し、クライアントからアプリケーションを動作させるための要求メッセージを受信し、要求メッセージ含まれるオブジェクトとコネクションに対し、欠損しているオブジェクト、コネクションを生成し、それらの内容を補完し、データベースと既存の組み合わせアルゴリズムに基づいて必要な資源を検索し、クライアントに代わって必要な資源を予約するための予約メッセージを補完し、当該予約メッセージに基づいて資源を予約する。
【解決手段】 本発明は、サービスに対応する計算機、ストレージ、ノード、パスなどのオブジェクト等の構成資源と資源の性能条件を管理したデータベースを有し、クライアントからアプリケーションを動作させるための要求メッセージを受信し、要求メッセージ含まれるオブジェクトとコネクションに対し、欠損しているオブジェクト、コネクションを生成し、それらの内容を補完し、データベースと既存の組み合わせアルゴリズムに基づいて必要な資源を検索し、クライアントに代わって必要な資源を予約するための予約メッセージを補完し、当該予約メッセージに基づいて資源を予約する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、資源予約装置及び方法及びプログラムに係り、特に、アプリケーション、データ、計算機、ストレージ及びネットワークなどの資源を管理し、クライアントからの予約要求に応じて資源を予約して提供するための資源予約装置及び方法及びプログラムに関する。
【背景技術】
【0002】
2006年前後までに計算機やネットワーク、ストレージなどの異種資源の予約技術は考案されていたが、それらは予約可能な計算機やストレージを決定した後、それらの間を接続するネットワークを決定していた(例えば、非特許文献1参照)。このような仕組みが考えられた要因として、計算機資源やストレージ資源を提供する事業者(主にデータセンタ)と、ネットワーク資源を提供する事業者(主に通信事業者)と、が異なっていたためである。
【0003】
しかしながら、大手の通信事業者はデータセンタ事業も手掛けている場合がある。そのような大手通信事業者から見て、既存の資源予約技術では計算機資源やネットワーク資源、ストレージ資源からなるインフラ全体での資源予約の最適化を実現できていなかった。
【0004】
インフラ全体での資源予約の最適化を図るためには、予約可能な計算機資源、ストレージ資源、ネットワーク資源を総合的に考えてから資源予約を実行する必要がある。
【0005】
複数の異なる資源を予約する際、資源の組み合わせパターンを検討するアルゴリズムはこれまでも多く存在する。例えば、力任せ探索/しらみつぶし探索や、バックトラック法、ミニマックス法など原理的な方法がある。
【0006】
さらには、線形計画法を利用して、組み合わせパターンの最適なものを求める技術も報告されている(例えば、非特許文献2参照)。
【0007】
上記のような組み合わせアルゴリズムは、事前に予約可能な異種資源の情報を収集し、異種資源を統合的に並べた情報、すなわち、テーブルが必要である。しかしながら、これまで異種資源を予約する技術や異種資源の組み合わせを計算する技術は存在していても、その間に存在する計算テーブルを生成する技術は報告されていなかった。
【0008】
近年、クライアントからの予約要求に応じ、サービスプロバイダが多種多様な資源を予約して提供するため、アプリケーション、データ、計算機、ストレージ、ネットワーク等のICT(Information and Communication Technology)資源について資源の物理特性(例えば、種別/状態/環境)を隠蔽し、その属性を変換して同資源を異なるものしてみせるまたは使わせるための仮想化技術が研究開発され、多くの研究成果が既に報告されている(例えば、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、非特許文献10、非特許文献11、非特許文献12、非特許文献13、特許文献1、特許文献2、特許文献3、特許文献4を参照)。
【0009】
上記の先行技術文献で述べられているグリッド・リソース・スケジューラや資源管理装置は、本発明の資源予約装置の従来技術の一例であり、また、先行文献内の、コンピューティング・リソース・マネージャや端末管理装置は、本発明の計算機データベース管理部の従来の一例であり、ストレージ・リソース・マネージャは、本発明のストレージデータベース管理部の従前の一例である。同様に、ネットワーク・リソース・マネージャや通信管理装置、経路探索装置は、本発明のネットワークデータベース管理部の従前の一例である。
【0010】
上記の先行文献でも示されている通り、サービスプロバイダがクライアントからの予約要求に応じて動的に計算機資源、ストレージ資源、ネットワーク資源を予約して提供するための基盤技術は既に確立されている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特許公開2010-068140号公報
【特許文献2】特許公開2008-301225号公報
【特許文献3】特許公開2008-131247号公報
【特許文献4】特許公開2008-158844号公報
【非特許文献】
【0012】
【非特許文献1】G.Lambda: coordination of a grid scheduler and lambda path service over GMPLS, Future Generation Computer Systems, Volume 22 Issue 8, October 2006.
【非特許文献2】竹房あつ子、中田秀基、工藤知宏、田中良夫、"高品質分散実行環境のための計算・ネットワーク資源のグローバルスケジューリング手法"情報処理学会研究報告 2008-HPC-1'19, 2009-02, pp.55-60.
【非特許文献3】竹房あつ子、他「グリッドにおける計算資源と光パスネットワーク資源のコアロケーション実験」SACSIS(Symposium on Advanced Computing systems and Infrastructures) 2006
【非特許文献4】竹房あつ子、他「計算資源とネットワーク資源を同時確保する予約ベースグリッドスケジューリングシステム」SACSIS(Symposium on Advanced Computing systems and Infrastructures) 2006
【非特許文献5】竹房あつ子、他「ミドルウェア連携による計算・ネットワーク資源の日米間グリッドコアロケーション実験」第164回計算機アーキテクチャ・第109回ハイパフォーマンスコンピューティング合同研究発表会
【非特許文献6】竹房あつ子、他「多様な資源を事前予約で同時確保するためのグリッドコアロケーションシステムフレームワークGridARS」情報処理学会論文誌 コンピューティングシステム、 48(SIG18)、pp. 32-42、2007
【非特許文献7】竹房あつ子、他「異種の複数スケジューラで管理される資源を事前同時予約するグリッド高性能計算の実行環境」HPCS 2007、2007年ハイパフォーマンスコンピューティングと計算科学シンポジウム論文集
【非特許文献8】竹房あつ子、他「高品質分散実行環境のための計算・ネットワーク資源のグローバルスケジューリング手法」情報処理学会研究報告2008-HPC-119、2009
【非特許文献9】林通秋、他「グリッドアプリケーションのためのGMPLSネットワーク資源の管理制御」電子情報通信学会技術研究報告PN2006-8、2006
【非特許文献10】松田秀雄「次世代研究環境を目指すNAREGIデータグリッド」NAREGIシンポジウム2007
【非特許文献11】谷村勇輔、他「予約利用可能なオブジェクトベース・ストレージの設計」情報処理学会研究報告(HOKKE 2009)、2009-14、pp.79-84、2009
【非特許文献12】谷村勇輔、他「アクセス性能を保証する並列ファイルシステムの提案とストレージサーバの設計」、情報処理学会研究報告(SWoPP 2009)、2009-HPC-121-33、2009
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、上記の仮想化技術を適用されたサービスプラットフォームの上で既存のネットワーク上のアプリケーションを動作させる場合、クライアントに対して次のような変化を与えてしまい、結果的にクライアントが該アプリケーションを動作させることを困難にさせてしまう可能性がある。
【0014】
まず、クライアントが該アプリケーションを動作させるための要求メッセージの内容と、クライアントが該アプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージの内容とが大きく異なる。
【0015】
それゆえ、クライアントは、該アプリケーションを動作させるために上記の2種類の要求メッセージを使わなければならず、複雑な作業を強いられることとなる。
【0016】
また、前述の特許文献4に示されるとおり、クライアントがアプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージについて、予約される計算機資源や、ストレージ資源、ネットワーク資源の特徴に関してのみ、クライアントがアプリケーションを動作させるための要求メッセージの内容に基づいて自動的にパラメータを補完する方法が提案されている。
【0017】
しかしながら、クライアントが計算機資源、ストレージ資源、ネットワーク資源の内のどの資源を予約したいのか、というオブジェクト自体を補完する方法は提案されていない。
【0018】
本発明は、上記の点に鑑みなされたもので、クライアントが予約すべき資源群の種別や、それぞれの資源の場所を明示的に指定しなくても、適切な資源を自動的に予約することが可能な資源予約装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0019】
上記の課題を解決するために、本発明(請求項1)は、アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約装置であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続され、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換手段と、
前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段と、
前記資源予約メッセージに基づいて、前記サービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認手段と、
前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段の結果に基づいて、欠損しているオブジェクトを生成すると共に、前記メッセージ交換手段を介して前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段と前記オブジェクト変更手段の結果に基づいて、欠損しているコネクションを生成すると共に、前記メッセージ交換手段を介して、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更手段と、
前記オブジェクト変更手段と前記コネクション変更手段で探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約手段と、を有する。
【0020】
また、本発明(請求項2)は、請求項1の前記オブジェクト変更手段に、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う手段を含む。
【0021】
また、本発明(請求項3)は、請求項1または2の前記サービス確認手段に、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する手段を含む。
【0022】
本発明(請求項4)は、アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約方法であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続される資源予約装置において、
メッセージ交換手段が、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換ステップと、
サービス確認手段が、前記資源予約メッセージに基づいて、前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認ステップと、
オブジェクト・コネクション解析手段が、前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析ステップと、
オブジェクト変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップの結果に基づいて、欠損しているオブジェクトを生成すると共に、前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更ステップと、
コネクション変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップと前記オブジェクト変更ステップを実行した結果に基づいて、欠損しているコネクションを生成すると共に、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更ステップと、
資源管理手段が、前記オブジェクト変更ステップと前記コネクション変更ステップで探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約ステップと、を実行する。
【0023】
また、本発明(請求項5)は、請求項4の前記オブジェクト変更において、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う。
【0024】
また、本発明(請求項6)は、請求項4または5の前記サービス確認ステップにおいて、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する。
【0025】
本発明(請求項7)は、請求項1乃至3のいずれか1項に記載の資源予約装置を構成する各手段としてコンピュータを機能させるための資源予約プログラムである。
【発明の効果】
【0026】
上記のように本発明によれば、既存のアプリケーションを動作させるためのクライアントからの要求メッセージの内容に基づいて、同アプリケーションを動作させるための計算機資源やストレージ資源、ネットワーク資源を予約するための要求メッセージの内容を容易に生成することができる。
【0027】
さらに、予約可能な資源群を抽出し、その資源群の中から予約する資源を選択するため、高い予約成功確率を維持できる。
【0028】
また、予約できない資源があった場合に、サービスを変更することで、資源予約メッセージ受信時における各資源の配置モデルに制限されて資源予約に失敗するケースを削減できる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1の実施の形態における資源予約装置の構成図である。
【図2】本発明の第1の実施の形態における各データベース管理棒の管理方法の例である。
【図3】本発明の第1の実施の形態における動作のフローチャートである。
【図4】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その1)である。
【図5】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その2)である。
【図6】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その3)である。
【図7】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その4)である。
【図8】本発明の第1の実施の形態におけるデータベース管理部と管理対象のドメイン、及びドメインの関係である。
【図9】本発明の第1の実施の形態におけるデータベース管理部と管理対象のドメイン、及びドメイン間野関係である。
【図10】本発明の第1の実施の形態におけるドメインとそのドメインを管理するサービスデータベース管理部との対応テーブルの一例である。
【図11】本発明の第1の実施の形態におけるドメイン間や各ドメインと外部ネットワークとの間のエンドポイントの対応テーブルの一例である。
【図12】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービス確認ステップに関するサービスと提供されるオブジェクトやコネクションとの関係を示すテーブルである。
【図13】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するユーザから提供されない場合に補完もされないオブジェクトやコネクションである。
【図14】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと補完対象となる可能性があるオブジェクトやコネクションの関係のテーブルである。
【図15】本発明の第1の実施の形態におけるユーザから提供されながら補完対象となる可能性があるオブジェクトやコネクションのテーブルである。
【図16】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと計算機オブジェクトごとの計算機資源の所要台数の対応テーブルの例である。
【図17】本発明の第1の実施の形態におけるサービスと各計算機資源に求められる特徴の対応テーブルの例である。
【図18】本発明の第1の実施の形態におけるサービスとストレージオブジェクト毎のストレージ資源の所要台数の対応テーブルの例である。
【図19】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと各ストレージ資源に求められる特徴の対応テーブルの例である。
【図20】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスとコネクション毎のエレメントの所要特徴の対応テーブルの例である。
【図21】本発明の第1の実施の形態におけるコネクションの資源予約の必要性を判断する方法の例である。
【図22】本発明の第1の実施の形態におけるサービス確認ステップの一例である。
【図23】本発明の第1の実施の形態におけるメソッドによってサービスや性能保証の種別を選択する方法の一例である。
【図24】本発明の第1の実施の形態におけるインタフェースによってサービスや性能保証の種別を選択する方法の一例である。
【図25】本発明の第1の実施の形態における通信メッセージ内のあるフィールドにあるパラメータの値によってサービスや性能保証の種別を選択する方法の一例である。
【図26】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するアプリケーション種別に基づいて判断するためのテーブルの一例である。
【図27】本発明の第1の実施の形態におけるデータ種別に基づいて判断するためのテーブルの一例である。
【図28】本発明の第1の実施の形態におけるアプリケーション種別とデータ種別の組み合わせに基づいて判断するためのテーブルの一例である。
【図29】本発明の第1の実施の形態におけるサービスや性能保証種別に基づいて判断するためのテーブルの一例である。
【図30】本発明の第1の実施の形態におけるオブジェクト変更ステップの詳細な動作のフローチャートである。
【図31】本発明の第1の実施の形態における各オブジェクト編集ステップにおける動作の例である。
【図32】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて利用可能な計算機を限定する方法の例である。
【図33】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて利用可能な計算機を限定する方法の例である。
【図34】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて最寄のドメインとの間のエンドポイントを限定する方法の例である。
【図35】本発明の第1の実施の形態におけるデータデータベース管理部のデータの種別と識別子との対応付け方法の例である。
【図36】本発明の第1の実施の形態におけるデータデータベース管理部のデータ情報に基づいて利用可能な計算機を限定する方法の例である。
【図37】本発明の第1の実施の形態におけるデータデータベース管理部のデータ情報に基づいて利用可能なストレージを限定する方法の例である。
【図38】本発明の第1の実施の形態におけるアプリケーションデータベース管理部のアプリケーションの種別と識別子との対応付け方法の例である。
【図39】本発明の第1の実施の形態におけるアプリケーションデータベース管理部のアプリケーション情報に基づいて利用可能な計算機を限定する方法の例である。
【図40】本発明の第1の実施の形態におけるアプリケーションデータベース管理のアプリケーション情報に基づいて利用可能なストレージを限定する方法の例である。
【図41】本発明の第1の実施の形態における計算機データベース管理部の計算機資源と該計算機資源のエンドポイントの対応テーブルである。
【図42】本発明の第1の実施の形態におけるストレージ資源と該ストレージ資源のエンドポイントの対応テーブルである。
【図43】本発明の第1の実施の形態におけるコネクション編集ステップにおける動作の例である。
【図44】本発明の第1の実施の形態におけるコネクション群計算の例(その1)である。
【図45】特許文献2に基づくマルチドメインにわたるコネクション群の探索方法の例である。
【図46】本発明の第1の実施の形態におけるコネクション群計算の例(その2)である。
【図47】本発明の第1の実施の形態におけるコネクション群計算の例(その3)である。
【図48】本発明の第1の実施の形態におけるコネクション群計算の例(その4)である。
【図49】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスを実現するオブジェクト群とコネクション群の組み合わせパターンである。
【図50】本発明の第1の実施の形態におけるパターンと利用料金の対応テーブルである。
【図51】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するpターンとしよう頻度の対応テーブルである。
【図52】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するパターンと消費電力の対応テーブルである。
【図53】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するパターンと稼働率の対応テーブルである。
【図54】本発明の第2の実施の形態における全体構成のイメージである。
【図55】本発明の第2の実施の形態におけるTV会議サービスを要求されるばあいのオブジェクトとコネクションの編集例(編集前)である。
【図56】本発明の第2の実施の形態におけるTV会議のサービスを要求される場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図57】本発明の第2の実施の形態における資源予約の候補の例(その1)である。
【図58】本発明の第2の実施の形態における資源予約の候補の例(その2)である。
【図59】本発明の第2の実施の形態における資源予約の候補の例(その3)である。
【図60】本発明の第3の実施の形態における全体構成のイメージである。
【図61】本発明の第3の実施の形態におけるファイルダウンロードのサービスの場合のオブジェクトとコネクションの編集例(編集前)である。
【図62】本発明の第3の実施の形態におけるファイルダウンロードのサービスの倍あのオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図63】本発明の第3の実施の形態における資源予約の候補の例(その1)である。
【図64】本発明の第3の実施の形態における資源予約の候補の例(その2)である。
【図65】本発明の第4の実施の形態におけるサービスシナリオ変更ステップのフローチャートである。
【図66】本発明の第4の実施の形態におけるドメインの構成例である。
【図67】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集前)である。
【図68】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図69】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図70】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更前)である。
【図71】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更後)である。
【図72】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更前)である。
【図73】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更後)である。
【図74】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更に合せて全体サービスの設計)である。
【図75】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更に合せて全体サービスの設計)である。
【発明を実施するための形態】
【0030】
以下、図面と共に本発明の実施の形態を説明する。
【0031】
図1は、本発明の第1の実施の形態における資源予約装置の構成を示す。
【0032】
資源予約装置100は、コア部110、サービスデータベース管理部120、サービス確認部130、オブジェクト・コネクション解析部140、オブジェクト変更部150、コネクション変更部160から構成され、コア部110は、ユーザデータベース管理部1、データデータベース管理部2、アプリケーションデータベース管理部3、計算機データベース管理部4、ストレージデータベース管理部5、ネットワークデータベース管理部6に接続されている。図1では、各データベース管理部10〜60とコア部110とが直接接続されている例を示しているが、ネットワークを介して接続されていてもよい。
【0033】
基本的に、サービスデータベース管理部120は、図3のように各種データベース管理部1〜6と、それらのデータベース管理部へアクセスをするためのIPアドレスやポート番号などのアクセス方法の対応テーブルを記憶している必要がある。但し、サービスデータベース管理部120は、コア部110がネットワークを介して通信する場合、コア部110を実現するソフトウェアのソースコード、もしくはソフトウェアの設定データに予めサービスデータベース管理部120の宛先を記入しておく必要がある。
【0034】
資源予約装置100は、クライアント装置(図示せず)からの資源予約メッセージに応じて前記の各データベース管理部10〜60の一部もしくは全部とメッセージを交換し、所要のアプリケーション資源と、データ資源と、計算機資源と、ストレージ資源と、ノード資源と、それらの間を結ぶ機能を有する通信路資源と、を予約する機能を有する。
【0035】
資源予約メッセージは、所要のアプリケーションと、データと、計算機と、ストレージと、ノードと、についてそれぞれを表現するオブジェクトと、オブジェクト間のそれぞれの通信路を表現するコネクションを含む。
【0036】
オブジェクトは、前記資源予約メッセージ内で交換される他のオブジェクト群との間で識別されるための識別子、オブジェクトを構成する資源の種別、その資源を特定する識別子、その資源の使用時間、その資源の性能を示す特徴、およびそのオブジェクトの個数、についての一部もしくは全部の情報を有する。
【0037】
コネクションは、コネクションの端点、コネクションを構成する資源を特定する識別子、資源の使用時間、その資源の性能を示す特徴、についての一部もしくは全部の情報を有する。
【0038】
ユーザデータベース管理部10は、ユーザの識別子や所在を管理するとともに、資源予約装置100からの指示に応じてユーザが最寄りのネットワークエッジにアクセスするエンドポイント、使用可能な計算機やストレージ、ネットワークの制約条件、もしくはそれらの一部を探索して応答する機能を有する。
【0039】
データデータベース管理部20は、データ資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理するとともに、資源予約装置100からの指示に応じて使用可能なデータの識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0040】
アプリケーションデータベース管理部30は、アプリケーション資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なアプリケーションの識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0041】
計算機データベース管理部40は、計算機資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能な計算機資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0042】
ストレージデータベース管理部50は、ストレージ資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なストレージ資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0043】
ネットワークデータベース管理部60は、ノードや通信路のネットワーク資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なネットワーク資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0044】
上記の構成における資源予約方法の流れ概要を下記に示す。
【0045】
図3は、本発明の第1の実施の形態における概要動作のフローチャートである。
【0046】
ステップ110) コア部110は、クライアントと資源予約メッセージを交換する(資源予約メッセージ交換ステップ)。
【0047】
ステップ120) サービス確認部130は、資源予約メッセージに基づいて、サービスデータベース管理部120を参照して、サービスの内容と、性能保証の種別と、サービスのために必要となるオブジェクトとコネクションと、アプリケーションとデータの配置方法と、図21で示されるネットワークインフラ(基盤構造)条件に基づくコネクションの資源予約の必要性と、の一部もしくは全部について決定する(サービス確認ステップ)。
【0048】
ステップ130) オブジェクト・コネクション解析部140が、資源予約メッセージを通じ、クライアントから提供されたオブジェクト群とコネクション群の存在や内容を確認する(オブジェクト・コネクション解析ステップ)。
【0049】
ステップ140) オブジェクト変更部150が、サービス確認ステップ(ステップ120)とオブジェクト・コネクション解析ステップ(ステップ130)の結果を通じ、欠損しているオブジェクトを生成し、尚且つ各データベース管理部10〜60とのデータ交換を通じてオブジェクトの内容を補完し、サービスデータベース管理部120に格納する。オブジェクト変更部150は、コア部110を介して各データベース管理部10〜60と通信する(オブジェクト変更ステップ)。
【0050】
ステップ150) コネクション変更部160が、サービス確認ステップ(ステップ120)とオブジェクト・コネクション解析ステップ(ステップ130)とオブジェクト変更ステップ(ステップ140)との結果を通じ、欠損しているコネクションを生成し、尚且つネットワークデータベース管理部6とのデータ交換を通じてコネクションの内容を補完し、サービスデータベース管理部120に格納する。コネクション変更部160はコア部110を介して各データベース管理部10〜60と通信する(コネクション変更ステップ)。
【0051】
ステップ160) コア部110が、サービスデータベース管理部120に格納されている探索されたオブジェクト群とコネクション群の組合せから成るサービスパターンの中から実際に資源予約するひとつのサービスパターンを選択し、選択されたオブジェクトやコネクションを構成する資源を管理しているそれぞれのデータベース管理部10〜60と連携して資源予約を実行する(資源予約ステップ)。
【0052】
以下、詳細に説明する。
【0053】
本実施の形態における資源予約装置100は、非特許文献3〜非特許文献9までに示されるグリッド・リソース・スケジューラを機能拡張したものである。また本実施の形態における計算機データベース管理部4は、非特許文献3〜非特許文献9までに示されるコンピュータ・リソース・マネージャと同等のものであり、本実施の形態のストレージデータベース管理部5は、非特許文献10〜非特許文献12までに示されているストレージ・リソース・マネージャと同等のものである。同様、ネットワークデータベース管理部6は、非特許文献3〜非特許文献9までに示されているネットワーク・リソース・マネージャと同等のものである。
【0054】
コア部110と各データベース管理部10〜60とのメッセージシーケンスの例を図4〜図7に示す。メッセージシーケンスは図4〜図7のいずれかでも良い。
【0055】
図4のシーケンスにおいて、コア部110は各データベース管理部10〜60とひとつずつ順番に通信でき、コア部119からの処理要求メッセージに応じて各データベース管理部10〜60は処理応答メッセージを返す。これにより、単純なメッセージ処理を実現できる。
【0056】
図5において、コア部110は複数のデータベース管理部10〜60と並列に通信でき、コア部110からの処理要求メッセージに応じて各データベース管理部10〜60は処理応答メッセージを返す。これにより、図4よりも迅速なメッセージ処理を実現できる。
【0057】
図6において、コア部110は複数のデータベース管理部10〜60と並列に通信でき、コア部110からの仮処理要求メッセージに応じて各データベース管理部10〜60は仮処理応答メッセージを返す。仮処理応答メッセージを受信したコア部110は、仮処理応答メッセージの内容に基づいて本処理要求メッセージを送信する。コア部110は仮処理応答メッセージの内容に基づいて本処理要求メッセージを送信しないと判断した場合、仮処理中止メッセージを送信する。これにより、図5よりもメッセージ処理の迅速性を失っている一方、2フェーズコミットプロトコルを採用しており、トランザクションのアトミック性を高めることができる。
【0058】
図7において、図6のメッセージシーケンスに基づき、コア部110と各データベース管理部10〜60とのメッセージ交換の間にトランザクションマネージャ70を配置する。トランザクションマネージャ70は図6においてコア部110が実行していた仮処理要求と本処理要求を代行して行う。これにより、図6のコア部110と比べ、図7のコア部110のメッセージ処理は簡単となり、コア部110の実装が容易となる。
【0059】
クライアントとコア部110との間のメッセージシーケンスも図4〜図7のいずれかで良い。
【0060】
本実施の形態では、非特許文献3〜非特許文献9までを参考にして図6に示されるメッセージシーケンスに基づいて説明する。
【0061】
各資源を提供するインフラ全体は複数のドメインから構成され、各ドメインは資源種別や、地域別、管理者別などの要因に基づいて分割される。各データベース管理部10〜60は、自ドメイン内の資源を管理する。なお、インフラ全体の中で、データデータベース管理部が複数存在してもよく、サービスデータベース管理部120や、ユーザデータベース管理部10、アプリケーションデータベース管理部50、計算機データベース管理部50、ストレージデータベース管理部50、ネットワークデータベース管理部60も同様である。
【0062】
資源予約装置100のサービスデータ管理部120では図8や図9に示されるような、データベース管理部10〜60と管理対象のドメイン、及びドメイン間の関係を管理する。その管理のため、サービスデータベース管理部120では、図10や図11に示されるようなテーブルを記憶する。図10のドメインの識別子とデータベース管理部の識別子からなるテーブルを記憶することにより、資源予約装置100は各ドメインと、そのドメインを管理するデータベース管理部10〜60との対応関係を把握できる。また、各ドメインにどのような資源が管理されているか、ということも把握できる。一方、複数のドメインを横断する通信路を予約する際に通信路はドメイン単位に分割されてドメイン単位のコネクションに基づいて予約されるが、図11に示すように、サービスデータ管理部120において、対象ドメインの識別子、隣接ドメインの識別子、対象ドメインのエンドポイントの識別子、隣接ドメイン側のエンドポイントの識別子からなるテーブルを記憶することにより、コネクションの端点を確定できる。
【0063】
資源予約メッセージを通じてクライアント装置と交換される情報はオブジェクトとコネクションという単位で分離できる。
【0064】
オブジェクトの一例を下記に示す。
オブジェクト <識別子>{
<種別>
<個数>
エレメント{
<識別子>
<使用時間>
<特徴>
}
}
「オブジェクト」の識別子は、例えば数字や文字列などで表現されてもよい。この識別子は、資源予約メッセージを通じて、クライアント装置から資源予約装置に送付されたオブジェクト群やコネクション群の中で特定のオブジェクトを指し示すための値である。それゆえクライアントが指定しなくてもよく、資源予約装置が自動的に付与してもよい。
【0065】
「種別」は、例えばユーザ、アプリケーション、データ、計算機、ストレージ、ノードである。それぞれのオブジェクトの呼称をユーザオブジェクト、アプリケーションオブジェクト、データオブジェクト、計算機オブジェクト、ストレージオブジェクト、ノードオブジェクトとする。ただし、種別をさらに詳細に分類してもよい。例えばアプリケーションについて、映像配信、(多地点)ビデオ会議、(多地点)音声会議、シンクライアント、ファイルアップロード、ファイルダウンロード、データ編集/データ演算、などのようなアプリケーション名に細分化してもよい。データの詳細な種別は例えばデータ名である。ノードの場合の例は、ルータ、イーサネットスイッチ、ファイヤーウォールである。但し、これら以外の種別が存在してもよい。
【0066】
「個数は」、オブジェクトで指定された資源を複数欲しい場合に指定される値である。個数は例えば数字で表現されてもよい。クライアントはこの値を指定しなくてもよく、その場合の個数のデフォルトの値は1となる。
【0067】
本発明の特徴として、クライアントは計算機資源やストレージ資源、ネットワーク資源などのエレメントの識別子や使用時間、特徴を指定する必要はない。なぜならば資源予約装置100がクライアントの条件に該当する資源や使用時間、特徴を探索するからである。但し、エレメントの識別子はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された識別子に該当する資源を資源予約する必要がある。同様に、エレメントの使用時間はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された使用時間に該当する資源を資源予約する必要がある。同様に、エレメントの特徴はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された特徴を満足する資源を資源予約する必要がある。
【0068】
エレメントの特徴の例を下記に示す。
【0069】
アプリケーションの場合の例は、所要の計算機仕様、所要のストレージ仕様、所要のネットワーク仕様、もしくはそれらの一部であってもよい。データの場合もアプリケーションの場合と同様である。計算機の場合の一例は、所要のCPUや、メモリ、ハードディスク、ネットワークインターフェースカード、オペレーティングシステム、マネージメントプロトコルである。例えばCPUをブランド名や型番、もしくは動作周波数やキャッシュサイズで指定してもよい。また、例えばメモリを記憶サイズやデータ転送速度で指定してもよい。同様、ストレージを記憶サイズや、データ転送速度、秒間I/O数、平均シークタイムで指定してもよい。ノードの場合の例は、所要の装置のスイッチング容量やポート数、ポート当たりの伝送速度、ポートの媒体種別、マネージメントプロトコル、もしくはそれらの一部であってもよい。
【0070】
次にコネクションの一例を下記に示す。
コネクション <識別子>{
エレメント{
<コネクションの端点>
<上記端点の反対側の端点>
<識別子>
<使用時間>
<特徴>
}
}
コネクションの識別子は例えば数字や文字列などで表現されてもよい。この識別子は、資源予約メッセージを通じて、クライアント装置から資源予約装置100に送付されたオブジェクト群やコネクション群の中で特定のコネクションを指し示すための値である。それゆえクライアントが指定しなくてもよく、資源予約装置が自動的に付与してもよい。
【0071】
コネクションの端点、ならびに反対側の端点は図9で示されたエンドポイント、もしくは計算機資源やストレージ資源のエレメントの識別子となる。
【0072】
本発明の特徴として、クライアントはネットワーク資源のエレメントの識別子や使用時間、コネクションの端点ならびに反対側の端点、特徴を指定する必要はない。なぜならば資源予約装置100がクライアントの条件に該当する資源や使用時間、コネクションの端点、特徴を探索するからである。但し、エレメントの識別子はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された識別子に該当する資源を資源予約する必要がある。同様に、エレメントの使用時間はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された使用時間に該当する資源を資源予約する必要がある。同様にエレメントのコネクションの端点ならびに反対側の端点はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定されたコネクションの端点ならびに反対側の端点に該当する資源を資源予約する必要がある。同様にエレメントの特徴はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された特徴を満足する資源を資源予約する必要がある。
【0073】
エレメントの特徴の例を下記に示す。
【0074】
例えば、媒体種別、伝送速度もしくは通信容量、伝搬遅延時間であってもよい。
【0075】
但し、上記において、オブジェクトやコネクションというものは資源予約メッセージの中で情報を分類してまとめるための概念であり、明示的にオブジェクトやコネクションというものを作成する必要はない。
【0076】
サービスデータベース管理部120は、図12、図13、図14、図15、図16、図17、図18、図19、および図20に示される情報を記憶する。図12はサービス確認ステップ(ステップ120)に関するサービスと提供されるオブジェクトやコネクションとの関係を示すテーブルを示す。図13と図14はそれぞれ、ユーザから提供されない場合に補完もされないオブジェクトやコネクションの関係図と、サービスと補完対象となる可能性があるオブジェクトやコネクションの関係と、を示す。また、図15はユーザから提供されながら補助対象となる可能性があるオブジェクトやコネクションの関係を示すテーブルである。図16はサービスと計算機オブジェクト毎の計算機の所要台数の対応表の例であり、図17はサービスと各計算機資源に求められる特徴の対応を示すテーブルの例である。また、図18はサービスとストレージオブジェクト毎のストレージの所要台数の対応を示すテーブルの例であり、図19はサービスと各ストレージ資源に求められる特徴の対応を示すテーブルの例である。
【0077】
<資源予約メッセージ交換ステップ(ステップ110)>
クライアントが所要のサービスを実現できるように資源予約メッセージを送信する際、資源予約メッセージは図12と図13の内容を満足するように所要サービスに対応したオブジェクトやコネクションを含む必要がある。
【0078】
本発明の資源予約装置100は、クライアントの所望サービスに基づいて図14に示されるオブジェクトやコネクションを自動的に生成する。各サービスのすべてのオブジェクトとコネクションは図12と図14とによって示す通りである。
【0079】
また、本発明の資源予約装置100は、クライアントの所望サービスと、図16、図17、図18、図19、及び図20の内容に基づいてオブジェクトの個数や、オブジェクトやコネクションのエレメント部分の特徴を自動的に補完できる。
【0080】
本発明では、オブジェクトやコネクションを利用した資源予約を通じ、サービスの性能保証を図っている。
【0081】
性能保証の形態を下記に示す。
種別1: 計算機
種別2: ストレージ
種別3: ネットワーク(=コネクション+ノード)
種別4: 計算機とストレージ
種別5: 計算機とネットワーク(=コネクション+ノード)
種別6: ストレージとネットワーク(=コネクション+ノード)
種別7: 計算機とストレージとネットワーク(=コネクション+ノード)
種別8: なし(どの資源も性能保証をしない)
しかしながら、図21に示されるとおり、サービスの種別や性能保証の有無に関わらずコネクションの補完が必要となる場合がある。図21の判断の分岐条件2に示されるとおり、ネットワークのインフラがコネクション型網である場合、資源予約装置100は性能保証の要求の有無にかかわらず、コネクションに基づいてネットワーク資源を予約し、通信路を確立する必要がある(ステップ201,202、Yes)。一方、コネクションレス型網であり、尚且つクライアントから性能保証の要求がない場合、資源予約装置100はネットワーク資源を予約しない(ステップ201,No、202,No,203、Yes/No)。その場合、性能保証された通信路を確立できないが、オブジェクトに該当する資源と、他の資源との間の通信自体は確立できる。それゆえまず、図21の判断の分岐条件1で示されるとおりに資源予約装置100のサービス確認部130は、クライアントがコネクションの資源予約の要否を確認する。資源予約装置100のサービス確認部130はクライアントとの間でサービス確認ステップより前、もしくは同時にコネクションの資源予約の要否についてのメッセージを交換する。具体的なメッセージ交換は、図23や、図24、図25を用い、後述する。但し、サービスとして常にコネクションの資源を予約するものとして規定してもよく、その場合は資源予約の要否を確認する必要もない。
【0082】
図21の判断の分岐条件2に関し、資源予約装置100のサービス確認部130は、下記の方法のいずれかによってネットワークがコネクション型網であるのか、コネクションレス型網であるのか、というタイプを把握できる。
【0083】
<方法1>
方法1を下記に示す。
【0084】
図10のようなサービスデータベース管理部120のドメイン関係のデータベースのテーブルについて、各ドメインのタイプも記憶する。
【0085】
<方法2>
方法2を下記に示す。
【0086】
資源予約装置100を実現するソフトウェアのソースコードに物理的に記載される場合である。
【0087】
本発明ではどちらの実現方法でもよい。本実施の形態では方法1に基づいて説明する。
【0088】
資源予約メッセージを通じたクライアントからコア部110へのオブジェクト群やコネクション群の伝達方法を下記に例示する。伝達方法は下記のいずれでもよい。
・伝達方法1: サービス(複数のオブジェクトやコネクション)の単位での交換;
・伝達方法2: オブジェクトやコネクションの単位での交換;
・伝達方法3: オブジェクトやコネクションを構成する情報単位での交換;
上記の伝達方法2を実現するための実装条件としては、交換されるメッセージは、交換された情報がどの資源予約要求の一部であるのか、を識別するための識別子を含む。
【0089】
また、伝達方法3を実現するための実装条件としては、交換されるメッセージは、交換された情報がどの資源予約要求の一部であるのか、を識別するための識別子や、どのオブジェクトやコネクションの一部であるのか、を識別するための識別子を含む。
【0090】
上記の内容に基づき、資源予約メッセージ交換ステップ(ステップ110)において、クライアント装置とコア部110との間で資源予約メッセージの交換を行う。
【0091】
<サービス確認ステップ(ステップ120)>
次にサービス確認ステップ(ステップ120)において、コア部110はサービス確認部130と連携してサービスの内容を確認する。図22はサービス確認ステップ(ステップ120)の詳細な流れの一例である。
【0092】
ステップ121) まず、サービス確認部130は、クライアントがどのようなサービスや、性能保証を求めているのか、ということを確認する。実現手段は、例えば、図23に示すメソッドによってサービスや性能保証の種別を選択する方法、図24に示すインタフェースによってサービスや性能保証の種別を選択する方法、もしくは図25に示す通信メッセージ内のあるフィールドにあるパラメータの値によってサービスや性能保証の種別を選択する方法のいずれでもよく、また別の手段でもよい。
【0093】
クライアント装置から資源予約装置100への資源予約メッセージの交換方法は、例えば下記のような階層構造のインタフェースを介して実現できる。この場合、フィールドのところでオブジェクトやコネクションに該当する情報が記載される。
インタフェース <インタフェース名>{
メソッド <メソッド名>{
フィールド <フィールド名>{
<値>
}
}
}
図23に示す方法はインタフェース名の違いを利用して実現する例である。一方、図24はメソッド名の違いを利用して実現する例である。また、図25では、サービスや性能保証を区分するためのフィールドを設け、そのフィールドのパラメータの値の違いを利用して実現する例である。図23もしくは図24の実現手段を採用した資源予約装置100は、サービス確認部130が不要となり、コア部110が資源予約メッセージ交換ステップ110を行うことによりサービスや性能保証種別を確認する。
【0094】
上記の実現手段を介し、補完すべきオブジェクトやコネクションを確認できる。
【0095】
ステップ122) 所要のアプリケーションとデータを同じ計算機もしくはストレージに集めて実行することの必要性を判断する。判断基準を設定する上での選択肢は下記のいずれでもよく、また下記以外でもよい。
・選択肢1: 装置仕様に基づいて判断ならびに確定
・選択肢2: アプリケーション種別に基づいて判断
・選択肢3: データ種別に基づいて判断
・選択肢4: アプリケーション種別とデータ種別の組合せに基づいて判断
・選択肢5: サービス、性能保証の種別、もしくはその両方に基づいて判断
選択肢1の実現方法は、資源予約装置のソフトウェアのソースコードに明記する方法である。もしくはサービスデータベース管理部120において、アプリケーションとデータを常に同じ計算機もしくはストレージに集める、もしくは常に分離しておく、ということを識別するための値を記憶しておき、サービス確認部130がサービスデータベース管理部120を参照することによって確定する方法である。この場合、アプリケーション種別やデータ種別に関係なく、アプリケーションとデータとを同じ計算機もしくはストレージに集める、もしくは分離する、ということを常に実行する。
【0096】
選択肢2の実現方法は、サービスデータベース管理部120が図26に例示されたアプリケーション種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0097】
選択肢3の実現方法は、サービスデータベース管理部120が図27に例示されたデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、データ種別に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0098】
選択肢4の実現方法は、サービスデータベース管理部120が図28に例示されたアプリケーション種別とデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別とデータ種別の関係に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0099】
選択肢5の実現方法は、サービスデータベース管理部120が図29に例示されたアプリケーション種別とデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別とデータ種別の関係に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0100】
本実施の形態では選択肢5に基づいて説明する。
【0101】
ステップ123) サービスに関係しない、もしくは性能保証外のオブジェクトやコネクションを指定された場合の対処方法を判断する。すなわち、上記で述べたネットワークがコネクション型ネットワークとコネクションレス型ネットワークのいずれであるのか、ということを判断する。
【0102】
本発明では上記のサービス確認ステップ120のステップ122とステップ123の処理の順番を入れ替えてもよい。本実施の形態では図22に従って説明する。
【0103】
もし、資源予約メッセージに含まれるオブジェクトやコネクションが不足している場合、サービス確認部130はサービスを特定できないために次のように動作することを決定する。以下のどちらか一方だけでよい。また、下記動作と異なる動作を実行しても良い。
・選択肢1: クライアントに資源予約失敗を応答し、尚且つ資源予約メッセージを廃棄
・選択肢2: 資源予約メッセージを廃棄
また、もし資源予約メッセージの中にサービスに関係しない、もしくは性能保証外のオブジェクトやコネクションが含まれる場合、サービス確認部130は次のように動作することを決定する。以下のいずれかだけでよい。また、下記動作と異なる動作を実行しても良い。
・選択肢1: エラーで応答
・選択肢2: 該オブジェクトを無視して資源予約
・選択肢3: 必要に応じて内容を補完しながら該オブジェクトに従って資源予約
本実施の形態では選択肢1に基づいて説明する。
【0104】
以上により、所要のサービスを提供するために必要なオブジェクトやコネクションの確認方法を示した。
【0105】
<オブジェクト・コネクション解析ステップ(ステップ130)>
次に、オブジェクト・コネクション解析部は資源予約メッセージの交換を通じて提供されるオブジェクト群やコネクション群を確認し、さらにサービス確認ステップの結果に基づいて情報の欠損しているオブジェクトやコネクションを確認する。
【0106】
本ステップでは、サービス確認ステップにおいて図12や図13の内容を確認しており、資源予約メッセージによって交換されると可能性のあるオブジェクト群やコネクション群を確認できている。さらに、図14や図15に示されるとおり、補完される可能性あるオブジェクト群とコネクション群も確認できている。
本ステップでは、上記のとおり、資源予約メッセージで交換されるオブジェクト群とコネクション群と、図12から図13の差異にもとづき、図14および図15にしたがってオブジェクト群とコネクション群の欠損状況を確認できる。
【0107】
<オブジェクト変更ステップ(ステップ140)>
次にオブジェクト変更ステップの内容を説明する。
【0108】
オブジェクト変更ステップでは、図30に示されるとおり、ユーザオブジェクト編集ステップ(ステップ141)と、データオブジェクト編集ステップ(ステップ142)と、アプリケーションオブジェクト編集ステップ(ステップ143)と、計算機オブジェクト編集ステップ(ステップ144)と、ストレージオブジェクト編集ステップ(ステップ145)と、ノードオブジェクト編集ステップ(ステップ146)と、から成る。ただし、それぞれのオブジェクト編集ステップの順番を入れ替えてもよい。本実施の形態では図30の内容に従って説明する。
【0109】
次に各オブジェクト編集ステップ(ステップ141〜146)は、図31に示されるとおり、オブジェクト問合せステップ(ステップ301,302)と、オブジェクト編集ステップと(ステップ303,304)、によって構成される。各オブジェクト編集ステップ(ステップ141〜146)では、各オブジェクト問合せステップ(ステップ301、302)とサービス確認ステップ(ステップ120)との結果に基づいてオブジェクトの内容を編集ならびに補完する。各オブジェクト編集ステップ(ステップ303、304)において、オブジェクト問合せステップ(ステップ301,302)以降は該当オブジェクトの内容が十分に揃っている場合や、該当するオブジェクト自体がない場合には省略される。また、オブジェクト問合せステップ(ステップ301,302)で該当オブジェクトの条件を満足する資源が存在しない場合、資源予約処理に失敗したこととなり、資源予約処理が終了される。
【0110】
下記にオブジェクト編集ステップ(ステップ140)の実現方法の例について説明する。
【0111】
プラットフォーム上では複数のドメインが存在し、尚且つ同じ種別の資源を管理しているドメインも複数存在する可能性がある。それゆえ、オブジェクト変更部150はオブジェクト問合せステップ(ステップ302)を通じて問い合わせるドメインを適切に選択する必要がある。下記では、オブジェクト変更部150が問合せ先のドメイン、ならびにそのデータベース管理部10〜60を選択する方法の例を示す。選択方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、資源予約装置100に設定される。
・選択肢1: 対象の種別の資源を管理している全ドメインを選択;
・選択肢2: 対象の種別の資源を管理し、尚且つユーザとオブジェクト群との間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢3: 対象の種別の資源を管理し、尚且つオブジェクト間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢4: 対象の種別の資源を管理し、尚且つユーザ及び各オブジェクトの間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢5: 対象の種別の資源を管理し、尚且つオブジェクト間の中継ドメイン数が多くなるようなドメインを優先的にN個選択;
・選択肢6: 対象の種別の資源を管理し、尚且つ利用頻度の高いドメインを優先的にN個選択;
・選択肢7: 対象の種別の資源を管理し、尚且つ利用頻度の低いドメインを優先的にN個選択;
・選択肢8: ランダムに対象の種別の資源を管理しているドメインをN個選択;
・選択肢9: 上記の選択肢1から選択肢8までのうちの一部の組合せ;
選択肢2は選択肢1と比べ、予約される資源がユーザの近くに集まり易いためにユーザと各資源との間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0112】
選択肢3は選択肢1と比べ、予約される資源同士が近くに集まり易いために資源間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0113】
選択肢4は選択肢2や選択肢3と比べ、予約される資源同士やユーザが近くに集まり易いために各資源の間やユーザと資源の間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0114】
選択肢5は選択肢1と比べ、予約される資源同士が遠くに離れ易いために地震などの天災に対してひとつのサービスにおける全壊を防ぎ易い。結果的に高信頼のサービスを提供しやすい。
【0115】
選択肢6は選択肢1と比べ、クライアントへの提供サービスを一部のドメインに集中させ易い。結果的にサービスの運用管理が容易となる。
【0116】
選択肢7は選択肢5と比べ、各サービスが遠くに分散され易いためにサービスプラットフォームの全壊を防ぎ易い。結果的に高信頼のサービスを提供しやすい。
【0117】
次に、オブジェクト変更部150は上記で選択された各ドメインについて対象のオブジェクトを問い合わせる(ステップ302)。
【0118】
該当の種別の資源を管理するドメインが複数存在する場合も考慮すると、オブジェクト変更部150から同ドメイン群への問合せ方法は下記の通りである。但し、問合せ方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 該当のデータベース管理部群のそれぞれに並列的に問合せ
・選択肢2: 該当しているデータベース管理部群のそれぞれに順番に問合せ
本実施の形態では選択肢1に従って説明する。
【0119】
また、オブジェクト変更部150から各ドメインのデータベース管理部120への問合せ方法の例を下記に示す。問合せ方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: オブジェクト毎に問合せ;
・選択肢2: 複数のオブジェクトを一括で、もしくは並列して問合せ;
本実施の形態では選択肢2に従って説明する。
【0120】
次に、オブジェクト問合せステップ(ステップ302)においてオブジェクト変更部150からの問合せに応じて該当のデータベース管理部がオブジェクト変更部150に応答する。問い合わされたオブジェクトに該当する資源が複数存在する場合を考慮すると、データベース管理部10〜60からオブジェクト変更部150への応答方法は下記とおりである。ただし、応答方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: ひとつのオブジェクトに対して該当候補のすべてを応答;
・選択肢2: ひとつのオブジェクトに対して該当候補のうちのNコに限定して応答;
本実施の形態では選択肢1に従って説明する。
【0121】
また、上記の選択肢2において各データベース管理部10〜60が下記のように該当候補を限定する。ただし、限定する方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 利用料金が低い候補を優先的に選択;
・選択肢2: 使用頻度の高い資源を優先的に選択;
・選択肢3: 使用頻度の低い資源を優先的に選択;
・選択肢4: 消費電力の低い資源を優先的に選択;
・選択肢5: 稼働率の高い資源を優先的に選択;
・選択肢6: ランダム;
本実施の形態では選択肢2に従って説明する。
【0122】
最後に、オブジェクト問合せステップ(ステップ302)においてオブジェクト変更部150は各データベース管理部10〜60から応答されたオブジェクト候補を限定してもよい。下記に限定方法の例を示す。本発明では下記のいずれでもよい。また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: 限定しない;
・選択肢2: 応答された候補のうちのNコに限定;
本実施の形態では選択肢1に従って説明する。
【0123】
以上により、オブジェクト変更部150は各データベース管理部10〜60との連携を通じてオブジェクトに該当する資源候補を探索して選定し、さらに必要に応じて補完できる。
【0124】
以上で得られた情報に基づき、オブジェクト編集ステップを通じて問い合わされたオブジェクトの内容が補完される。
【0125】
上記のオブジェクト編集ステップ(ステップ304)について、より詳細な例を下記に示す。
【0126】
第1のステップについて説明する。
【0127】
オブジェクト変更部150がユーザオブジェクトのユーザの識別子に従ってユーザデータベース管理部10に問い合わせる例であり、同ユーザが使用できる計算機資源と、ストレージ資源についての問合せである。また、同ユーザが最寄りのドメインにアクセスするためのエンドポイントについての問合せである。ユーザデータベース管理部10は、例えば、図32や、図33、図34に示されるテーブルを記憶している。コア部110からの問合せに対し、ユーザデータベース管理部10は、そのユーザが使用することを許可されている計算機資源や、ストレージ資源の候補、エンドポイントを応答する。その結果、オブジェクト変更部150は使用可能な計算機資源やストレージ資源、エンドポイントを確認できる。もし、サービスプラットフォームにおいてユーザ毎にネットワーク資源を限定して提供する場合、本実施の形態のようにユーザデータベース管理部10はユーザ識別子とネットワーク資源との対応テーブルを記憶しておく。
【0128】
第2のステップについて説明する。
【0129】
オブジェクト変更部150がデータ種別に従ってデータデータベース管理部20に問い合わせる例であり、指定されたデータ種別のデータを保有する計算機資源やストレージ資源についての問合せである。データデータベース管理部20は、例えば、図35、図36、及び図37に示されるテーブルを記憶している。オブジェクト変更部150からの問合せに対し、データデータベース管理部20は、図35のテーブルに従ってデータの識別子を限定する。さらにデータの識別子と図36及び図37の各テーブルに基づいて指定のデータを保有する計算機資源やストレージ資源を限定する。但し、データ名の同じデータがコピーなどの操作を通じて複数存在している可能性があり、該当のデータの識別子は複数存在する可能性がある。それゆえ、該当の識別子のデータを保有する計算機資源やストレージ資源も複数存在する可能性がある。
【0130】
第3のステップについて説明する。
【0131】
オブジェクト変更部150がアプリケーション種別に従ってアプリケーションデータベース管理部30に問い合わせる例であり、指定されたアプリケーション種別のアプリケーションを保有する計算機資源やストレージ資源についての問合せである。アプリケーションデータベース管理部30は、例えば、図38、図39、及び図40に示されるテーブルを記憶している。オブジェクト変更部150からの問合せに対し、アプリケーションデータベース管理部30は図38のテーブルに従ってアプリケーションの識別子を限定する。さらにアプリケーションの識別子と図39及び図40の各テーブルに基づいて指定のアプリケーションを保有する計算機資源やストレージ資源を限定する。但し、アプリケーション名の同じアプリケーションがコピーなどの操作を通じて複数存在している可能性があり、該当のアプリケーションの識別子は複数存在する可能性がある。それゆえ、該当の識別子のアプリケーションを保有する計算機資源やストレージ資源も複数存在する可能性がある。
【0132】
上記の第1、第2、及び第3のステップに基づいて使用できる計算機資源や、ストレージ資源、エンドポイントを限定する例を示した。
【0133】
上記に基づき、クライアントの要求に該当する計算機資源の識別子をさらに限定する例は、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8に示されている。この場合、オブジェクト変更部150は、計算機データベース管理部40に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能な計算機資源を限定する。また、計算機データベース管理部40は図41のような計算機資源と該計算機資源のエンドポイントの対応テーブルを記憶しており、同計算機資源とコネクションとを関連付けるためのエンドポイントを応答する。
【0134】
同様、クライアントの要求に該当するストレージ資源の識別子をさらに限定する例は、非特許文献11、非特許文献12に示されている。この場合、オブジェクト変更部150はストレージデータベース管理部50に対して、ResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能なストレージ資源を限定する。また、ストレージデータベース管理部50は、図42のようなストレージ資源と該ストレージ資源のエンドポイントの対応テーブルを記憶しており、同ストレージ資源とコネクションとを関連付けるためのエンドポイントを応答する。
【0135】
次に、クライアントの要求に該当するノード資源の識別子を限定する例は、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、特許文献1、特許文献2、特許文献3に示されている。この場合、オブジェクト変更部150はネットワークデータベース管理部60に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能なノード資源を限定する。
【0136】
以上により、クライアントの要求に該当するデータ資源や、アプリケーション資源、計算機資源、ストレージ資源、ノード資源を限定できる。但しこの時点において、該当する資源が複数存在している可能性がある。その場合、後述される資源予約ステップにおいて該当の各種資源の識別子や使用時間をひとつに特定する。
【0137】
<コネクション変更ステップ(ステップ150)>
次に、コネクション変更部160における、図43の例に従ってコネクション変更ステップ(ステップ150)を説明する。
【0138】
コネクション変更ステップ(ステップ150)は、コネクション問合せステップ(ステップ151,152)とコネクション編集ステップ(ステップ153,154)からなる。上記のオブジェクト変更ステップ140を通じ、各コネクション候補のエンドポイントが既に明らかになっている。そこで、各コネクション候補のエレメント部分に求まったエンドポイントを補完する。
【0139】
例えば、図44に示されるとおり、計算機ドメイン1においてオブジェクト候補1が存在し、同様に計算機ドメイン2においてオブジェクト候補2、および計算機ドメイン3においてオブジェクト候補3がそれぞれ存在する例を考える。この例において、クライアントから要求されたサービスを実現する方法として、次の3パターンを考える。パターン1は、オブジェクト候補1とオブジェクト候補2とそれらの間を結ぶコネクション群である。パターン2は、オブジェクト候補2とオブジェクト候補3とそれらの間を結ぶコネクション群である。パターン3は、オブジェクト候補1とオブジェクト候補3とそれらの間を結ぶコネクション群である。
【0140】
本実施の形態では、コネクション群を計算する例としてパターン1に注目して説明する。コネクション変更部160は、オブジェクト候補1に基づくコネクション候補のエンドポイントを決定する。同様、オブジェクト候補2に基づくコネクション候補のエンドポイントを決定する。次にコネクション変更部160は、特許文献2に基づく経路探索技術により、ドメイン間の接続関係を計算する。特許文献2の経路探索技術は、始点から終点までのすべての経路を探索することができる。特許文献2に示される経路探索技術の簡略図を図45に示す。これにより、図46や、図47、図48に示されるとおり、コネクション候補1からコネクション候補6までを求めることができ、同時に各コネクションのエンドポイントを求めることができる。同様、パターン2とパターン3についても同じことを実行することにより、エンドポイントの定まったコネクション候補群を求めることができる。これにより、コネクション変更部160はコネクション候補と、それらについて問い合わせるべき各ネットワークデータベース管理部60を明らかにできる。但しコネクション変更部160は、特許文献2と異なる経路探索技術を用いても良い。
【0141】
次に、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、特許文献1、特許文献2、特許文献3の内容に従ってコネクションの条件を満足するネットワーク資源についてネットワークデータベース管理部60に問い合わせる。この場合、コネクション変更部160はネットワークデータベース管理部60に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能な通信路資源を限定する。
【0142】
上記のコネクション問合せステップ(ステップ152)において、エンドポイントに基づいてコネクション変更部160から問い合わせるネットワークデータベース管理部60は決定している。
【0143】
次に、コネクション変更部160は各コネクションについて該当のドメインに問い合わせる。
【0144】
コネクションの数が複数存在し、尚且つ複数のドメインにわたって存在する場合、コネクション変更部160は次のいずれかの方法に従って問い合わせる。本実施の形態では非特許文献3から非特許文献9までに倣って、以下の選択肢1に従って説明する。
・選択肢1: 該当のデータベース管理部群のそれぞれに並列的に問合せ;
・選択肢2: 該当しているデータベース管理部群のそれぞれに順番に問合せ;
また、ひとつのドメインに複数のコネクションが存在する可能性がある。それゆえ、コネクション変更部160から各データベース管理部10〜60への問合せ方法は一般的に下記のいずれかに従って実現される。但し、下記以外の方法でもよい。
・選択肢1: コネクション毎に問合せ;
・選択肢2: 複数のコネクションを一括で、もしくは並列して問合せ;
本実施の形態では、上記の選択肢2に従って説明する。
【0145】
次に、コネクション問合せステップにおいてコネクション変更部160からの問合せに応じて該当のデータベース管理部がコネクション変更部160に応答する。問い合わされたコネクションに該当する通信路資源が複数存在する場合を考慮すると、データベース管理部10〜60からコネクション変更部160への応答方法は下記とおりである。但し、応答方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: ひとつのコネクションに対して該当候補のすべてを応答;
・選択肢2: ひとつのコネクションに対して該当候補のうちのN個に限定して応答;
本実施の形態では上記の選択肢1に従って説明する。
【0146】
また、上記の選択肢2において各データベース管理部10〜60が下記のように該当候補を限定する。但し、限定する方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 利用料金が低い候補を優先的に選択
・選択肢2: 使用頻度の高い資源を優先的に選択
・選択肢3: 使用頻度の低い資源を優先的に選択
・選択肢4: 消費電力の低い資源を優先的に選択
・選択肢5: 稼働率の高い資源を優先的に選択
・選択肢6: ランダム
本実施の形態では選択肢2に従って説明する。
【0147】
最後に、コネクション問合せステップにおいてコネクション変更部150は各データベース管理部10〜60から応答されたコネクション候補を限定してもよい。下記に限定方法の例を示す。本発明では下記のいずれでもよい。また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: 限定しない
・選択肢2: 応答された候補のうちのN個に限定
本実施の形態では選択肢1に従って説明する。
【0148】
以上により、クライアントの要求に該当する通信路資源を限定できる(ステップ154)。但し、この時点において、該当する資源が複数存在している可能性がある。その場合、後述される資源予約ステップ(ステップ160)において該当の各種資源の識別子や使用時間をひとつに特定する。
【0149】
<資源予約ステップ(ステップ160)>
最後に、図3の資源予約ステップ(ステップ160)について説明する。
【0150】
上記で述べたオブジェクト変更ステップ(ステップ140)とコネクション変更ステップ(ステップ150)を通じ、それぞれのオブジェクトやコネクションについて1つ以上の資源候補が探索され、サービスデータベース管理部120に例えば、図49に示されるようなテーブルがされる。資源予約ステップ(ステップ160)では、コア部110がサービスデータデータベース管理部120の図49のテーブルを参照し、適当なパターンを選択する。次に、コア部110は選択されたパターンに基づき、エレメントの識別子まで補完されたオブジェクトやコネクションを使って各データベース管理部と連携して資源を予約する。
【0151】
上記において、1つ以上のパターンの中から適当なものを選択する方法を下記に示す。但し、下記のいずれでもよく、また下記以外でもよい。
・選択肢1: トータルでの利用料金が低いパターンを優先的に選択;
・選択肢2: トータルでの使用頻度の高いパターンを優先的に選択;
・選択肢3: トータルでの使用頻度の低いパターンを優先的に選択;
・選択肢4: トータルでの消費電力の低いパターンを優先的に選択;
・選択肢5: トータルでの稼働率の高いパターンを優先的に選択;
・選択肢6: コネクション群だけについて利用料金が低いパターンを優先的に選択;
・選択肢7: コネクション群だけについて使用頻度の高いパターンを優先的に選択;
・選択肢8: コネクション群だけについて使用頻度の低いパターンを優先的に選択;
・選択肢9: コネクション群だけについて消費電力の低いパターンを優先的に選択;
・選択肢10: コネクション群だけについて稼働率の高いパターンを優先的に選択;
・選択肢11: オブジェクト群だけについて利用料金が低いパターンを優先的に選択;
・選択肢12: オブジェクト群だけについて使用頻度の高いパターンを優先的に選択;
・選択肢13: オブジェクト群だけについて使用頻度の低いパターンを優先的に選択;
・選択肢14: オブジェクト群だけについて消費電力の低いパターンを優先的に選択;
・選択肢15: オブジェクト群だけについて稼働率の高いパターンを優先的に選択;
・選択肢16: パターンの識別子の若番から優先的に選択;
・選択肢17: パターンの識別子の老番から優先的に選択;
・選択肢18: ランダム;
・選択枝19: 上記のうちの一部の組合せ;
選択肢1を実現する場合、サービスデータベース管理部120は、図50に示されるようなテーブルを保有し、尚且つコア部120は同テーブルを参照して適当なパターンを選択する。
【0152】
上記の選択肢2や選択肢3を実現する場合、サービスデータベース管理部120は図51に示されるようなテーブルを保有し、尚且つコア部110は、同テーブルを参照して適当なパターンを選択する。
【0153】
上記の選択肢4を実現する場合、サービスデータベース管理部120は図52に示されるようなテーブルを保有し、尚且つコア部110同テーブルを参照して適当なパターンを選択する。
【0154】
上記の選択肢5を実現する場合、サービスデータベース管理部120は図53に示されるようなテーブルを保有し、尚且つコア部110は同テーブルを参照して適当なパターンを選択する。
【0155】
それ以外の選択肢の場合、上記のデータベースのいずれかを参照することで実現できる。
【0156】
以上により、請求項1に対応する資源予約方法を実現できる。
【0157】
これにより、既存のアプリケーションを動作させるための要求メッセージの内容にもとづき、同アプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージの内容をできるだけ自動的に生成できる。
【0158】
[第2の実施の形態]
本実施の形態は、第1の実施の形態に基づいた、TV会議サービスの例であり、図54に示されるドメイン構成を例として説明する。便宜上、計算機ドメイン"1"に計算機データベース管理部"1"とアプリケーションデータベース管理部"1"が配備され、計算機ドメイン"2"に計算機データベース管理部"2"とアプリケーションデータベース管理部"2"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0159】
クライアントは、図55に示されるようなユーザ"1"についてのユーザオブジェクト"1"と、ユーザ"2"についてのユーザオブジェクト"2"と、ユーザ"3"についてのユーザオブジェクト"3"と、種別が「TV会議アプリケーション」のアプリケーションオブジェクトと、を含む資源予約メッセージをコア部110と交換する。
【0160】
サービス確認ステップ(ステップ120)を通じて、サービス確認部130は図56に示されるようなオブジェクトやコネクションが必要であると判断する。同様に、オブジェクト・コネクション解析ステップ(ステップ130)を通じて、オブジェクト・コネクション解析部140は計算機オブジェクトと、同計算機資源と各ユーザの間を結ぶコネクションが不足していると判断する。
【0161】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザ"1"のエンドポイントと、ユーザ"2"のエンドポイントと、ユーザ"3"のエンドポイントと、を確認する。
【0162】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するために計算機ドメイン"1"に存在するアプリケーションデータベース管理部301と、計算機ドメイン"2"に存在するアプリケーションデータベース管理部302と、に問い合わせる。
【0163】
その結果、オブジェクト変更部150は各計算機ドメインに対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有する計算機資源の識別子も確認する。本実施の形態では計算機"1"と計算機"2"が対象のアプリケーションを保有している。
【0164】
次に、コネクション変更部160は、ユーザの最寄りのエンドポイントや、ドメイン間の境界のエンドポイントに基づき、コネクションを補完する。
【0165】
以上により、図57に示される組合せパターンと、図58に示される組合せパターンと、及び図59に示される組合せパターンと、が抽出される。
【0166】
資源予約ステップ(ステップ160)において、コア部110は上記の3つの内のいずれかを一つ選択して予約する。
【0167】
[第3の実施の形態]
本実施の形態は、第1の実施の形態に基づいたファイルダウンロードサービスの例であり、図60に示されるドメイン構成を例として説明する。便宜上、ストレージドメイン"1"にストレージデータベース管理部"1"とアプリケーションデータベース管理部"1"とデータデータベース管理部"1"が配備され、ストレージドメイン"2"にストレージデータベース管理部"2"とアプリケーションデータベース管理部"2"とデータデータベース管理部"2"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0168】
クライアント装置は、図61に示されるようなユーザオブジェクトと、種別がファイルダウンロードのアプリケーションオブジェクトと、種別が対象のデータ名のデータオブジェクトを含む資源予約メッセージをコア部110と交換する。
【0169】
サービス確認ステップ(ステップ120)において、サービス確認部130は図62に示されるようなオブジェクトやコネクションが必要であると判断する。同様、オブジェクト・コネクション解析ステップ(ステップ130)において、オブジェクト・コネクション解析部140はストレージオブジェクトと、同ストレージ資源とユーザとの間を結ぶコネクションが不足していると判断する。
【0170】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザのエンドポイントを確認する。
【0171】
次に、オブジェクト変更部150は、対象のデータの所在を確認するためにストレージドメイン"1"に存在するストレージデータベース管理部501と、ストレージドメイン"2"に存在するストレージデータベース管理部502と、ストレージドメイン"3"に存在するストレージデータベース管理部503と、に問い合わせる。
【0172】
その結果、オブジェクト変更部150は各ストレージドメインに対象のデータが存在することを確認するとともに、同データを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"1"とストレージ"2"とストレージ"3"が対象のデータを保有している。
【0173】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するためにストレージドメイン"1"に存在するアプリケーションデータベース管理部301と、ストレージドメイン"2"に存在するアプリケーションデータベース管理部302と、ストレージドメイン"3"に存在するアプリケーションデータベース管理部303と、に問い合わせる。
【0174】
その結果、オブジェクト変更部150はストレージ"2"とストレージ"3"に対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"2"とストレージ"3"が対象のアプリケーションを保有している。
【0175】
次に、コネクション変更部160は、ユーザの最寄りのエンドポイントや、ドメイン間の境界のエンドポイントに基づき、コネクションを補完する。
【0176】
以上により、図63に示される組合せパターンと、図64に示される組合せパターンと、が抽出される。
【0177】
資源予約ステップ(ステップ160)において、コア部110は上記の2つの内のいずれかを一つ選択して予約する。
〔第4の実施の形態〕
【0178】
本実施の形態は、第1の実施の形態に基づいた映像配信サービスの例であり、請求項2請求項5に相当する。
【0179】
本実施の形態では、オブジェクト変更ステップ(ステップ140)において、予約可能なオブジェクト候補がない場合にオブジェクト変更ステップを再試行するため、コア部110がサービスの内容を変更する。サービスの内容を変更したものに基づいて、オブジェクト変更ステップを再試行する。
【0180】
例えば、所望のアプリケーション資源やデータ資源を保有している全ての計算機資源やストレージ資源が資源予約メッセージの指定された所望の使用時間に予約できないという状況が発生する可能性がある。この時点でオブジェクト変更ステップ(ステップ140)は資源予約失敗で終了してしまう。その場合、コア部110において、同使用時間に空いている計算機資源やストレージ資源に同アプリケーションや同データをコピーもしくは移動することにより、オブジェクト変更部150は、オブジェクト変更ステップにおいて資源予約成功で完了できる。
【0181】
図65は、請求項2に対応するサービスシナリオ変更ステップのフローであり、図3のフローと同一動作には同一符号を付与する。本実施の形態では、オブジェクト変更ステップ140において、他に予約可能なオブジェクト候補がないと判定された場合に、当該サービスについて他のサーバについて検索した履歴が1回以上あるか否かを判定し(ステップ510)、ある場合には資源予約失敗とし、ない場合(他のサーバについて検索を行っていない場合)は、再度オブジェクト変更ステップ140を行うものである。
【0182】
また、図66は本実施の形態におけるドメイン構成例である。便宜上、計算機ドメイン"1"に計算機データベース管理部"1"とアプリケーションデータベース管理部"1"とデータデータベース管理部"1"が配備され、計算機ドメイン"2"に計算機データベース管理部"2"とアプリケーションデータベース管理部"2"とデータデータベース管理部"2"が配備され、計算機ドメイン"3"に計算機データベース管理部"3"とアプリケーションデータベース管理部"3"とデータデータベース管理部"3"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0183】
クライアント装置は、図67に示されるようなユーザオブジェクトと、種別が映像配信のアプリケーションオブジェクトと、種別が対象のデータ名のデータオブジェクトを含む資源予約メッセージをコア部110と交換する。
【0184】
サービス確認ステップ(ステップ120)において、サービス確認部130は図68に示されるようなオブジェクトやコネクションが必要であると判断する。同様に、オブジェクト・コネクション解析ステップ(ステップ130)において、オブジェクト・コネクション解析部140は、同データを保有するストレージオブジェクトと、同アプリケーションを保有する計算機オブジェクトと、同ストレージ資源と同計算機資源との間のコネクションと、同計算機資源とユーザとの間を結ぶコネクションが不足していると判断する。本実施の形態において、データとアプリケーションは別の場所、すなわち上記のストレージ資源と計算機資源とに分かれて実行してもよい。
【0185】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザのエンドポイントを確認する。
【0186】
次に、オブジェクト変更部150は、対象のデータの所在を確認するために計算機ドメイン"1"に存在するデータデータベース管理部"1"と、計算機ドメイン"2"に存在するデータデータベース管理部"2"と、計算機ドメイン"3"に存在するデータデータベース管理部"3"と、に問い合わせる。
【0187】
その結果、オブジェクト変更部150は計算機ドメイン"1"のみに対象のデータが存在することを確認すると共に、同データを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"1"が対象のアプリケーションを保有していると仮定する。
【0188】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するために計算機ドメイン"1"に存在するアプリケーションデータベース管理部"1"と、計算機ドメイン"2"に存在するアプリケーションデータベース管理部"2"と、計算機ドメイン"3"に存在するアプリケーションデータベース管理部"3"と、に問い合わせる。
【0189】
その結果、オブジェクト変更部150は計算機ドメイン"1"と計算機ドメイン"2"に対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有する計算機資源の識別子も確認する。本実施の形態では計算機"1"と計算機"2"が対象のアプリケーションを保有していると仮定する。
【0190】
但し、このときストレージ"1"がエレメントの使用時間もしくは特徴を満足できないと仮定する。
【0191】
この場合、ストレージ"1"に存在する対象データを他の使用可能なストレージ資源にコピーすることにより、問題が解決する。それゆえ、サービス内容変更ステップ(ステップ510)において、オブジェクト変更部150は映像配信のサービスに加え、事前に『"データ転送1"のサービスを実施する』というサービス内容に変更する。
【0192】
これにより、サービスに必要となる資源は図69に示されるようなオブジェクトとコネクションで表わされる。
【0193】
このとき、オブジェクト変更部150は新たに追加されたコネクション"3"とストレージオブジェクトのエレメントを自動的に補完しなければならない。
【0194】
移動先のストレージオブジェクトのエレメントは移動元のストレージオブジェクトに求められたエレメントの内容と同じである。同様に、コネクション"2"は移動前と移動先で同じである。但し、データのコピー作業はクライアントの所望の使用時間よりも前に完了している必要がある。
【0195】
それゆえ移動先と移動元のストレージオブジェクト、およびコネクション"3"には次のような条件のすべてを満たすようにエレメントを変更する必要がある。
・条件1:クライアントの所望の使用時間よりも以前にデータのコピー作業を実行できるために、同使用時間以前にも対象のストレージ資源が予約可能であること。
・条件2:コネクション"3"のエレメントの特徴となる帯域は、予約されるストレージ資源の有するネットワークインターフェースカードの物理帯域とする。もしくは、サービスデータベース管理部120に予め規定の帯域が設定されており、オブジェクト変更部150やコネクション変更部160がその値を参照する。
・条件3:条件2に基づき、新たに追加される使用時間は次のように設定される。
【0196】
"データ転送1"の実行所要時間=データサイズ÷条件2でのコネクション帯域
新たに追加される使用時間は次の時間よりも以前になることを満たす必要がある。
【0197】
新たに追加される使用時間<=
当初のクライアントの所望の開始時刻−"データ転送1"の実行所要時間
なお、上記において"<="とは"以前"を表現する記号とし、"−"とは"時間を遡ること"を表現する記号とする。
【0198】
新たに追加されたストレージオブジェクトと、コネクション"3"は上記の条件1〜3を満足するように予約される必要がある。
【0199】
上記のように"データ転送1"のサービスを追加した結果、データ資源の状態は図70から図71に示されるように移動する仮定する。もしくは図72から図73に示されるように移動すると仮定する。
【0200】
上記の前者の仮定に基づく場合、映像配信サービスの予約自体は図74示された内容となる。一方、後者の仮定に基づく場合、映像配信サービスの予約自体は図75に示される内容となる。具体的な資源予約処理の内容は第2の実施の形態や第3の実施の形態と同じである。
【0201】
以上により、請求項2、5に示されるサービス変更ステップを実現できる。
【0202】
上記のように、例えばアプリケーション資源やデータ資源などをコピーしたり、移動したりすることにより、資源予約メッセージの受信時における各資源の配置モデルに制限されて資源予約に失敗するケースを削減できる。
【0203】
上記の第1〜第4の実施の形態における資源予約装置100の構成要素の動作をプログラムとして構築し、資源予約装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【0204】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【0205】
10 ユーザデータベース管理部
20 データデータベース管理部
30 アプリケーションデータベース管理部
40 計算機データベース管理部
50 ストレージデータベース管理部
60 ネットワークデータベース管理部
70 トランザクションマネージャ
100 資源予約装置
110 コア部
120 サービスデータベース管理部
130 サービス確認部
140 オブジェクト・コネクション解析部
150 オブジェクト変更部
160 コネクション変更部
【技術分野】
【0001】
本発明は、資源予約装置及び方法及びプログラムに係り、特に、アプリケーション、データ、計算機、ストレージ及びネットワークなどの資源を管理し、クライアントからの予約要求に応じて資源を予約して提供するための資源予約装置及び方法及びプログラムに関する。
【背景技術】
【0002】
2006年前後までに計算機やネットワーク、ストレージなどの異種資源の予約技術は考案されていたが、それらは予約可能な計算機やストレージを決定した後、それらの間を接続するネットワークを決定していた(例えば、非特許文献1参照)。このような仕組みが考えられた要因として、計算機資源やストレージ資源を提供する事業者(主にデータセンタ)と、ネットワーク資源を提供する事業者(主に通信事業者)と、が異なっていたためである。
【0003】
しかしながら、大手の通信事業者はデータセンタ事業も手掛けている場合がある。そのような大手通信事業者から見て、既存の資源予約技術では計算機資源やネットワーク資源、ストレージ資源からなるインフラ全体での資源予約の最適化を実現できていなかった。
【0004】
インフラ全体での資源予約の最適化を図るためには、予約可能な計算機資源、ストレージ資源、ネットワーク資源を総合的に考えてから資源予約を実行する必要がある。
【0005】
複数の異なる資源を予約する際、資源の組み合わせパターンを検討するアルゴリズムはこれまでも多く存在する。例えば、力任せ探索/しらみつぶし探索や、バックトラック法、ミニマックス法など原理的な方法がある。
【0006】
さらには、線形計画法を利用して、組み合わせパターンの最適なものを求める技術も報告されている(例えば、非特許文献2参照)。
【0007】
上記のような組み合わせアルゴリズムは、事前に予約可能な異種資源の情報を収集し、異種資源を統合的に並べた情報、すなわち、テーブルが必要である。しかしながら、これまで異種資源を予約する技術や異種資源の組み合わせを計算する技術は存在していても、その間に存在する計算テーブルを生成する技術は報告されていなかった。
【0008】
近年、クライアントからの予約要求に応じ、サービスプロバイダが多種多様な資源を予約して提供するため、アプリケーション、データ、計算機、ストレージ、ネットワーク等のICT(Information and Communication Technology)資源について資源の物理特性(例えば、種別/状態/環境)を隠蔽し、その属性を変換して同資源を異なるものしてみせるまたは使わせるための仮想化技術が研究開発され、多くの研究成果が既に報告されている(例えば、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、非特許文献10、非特許文献11、非特許文献12、非特許文献13、特許文献1、特許文献2、特許文献3、特許文献4を参照)。
【0009】
上記の先行技術文献で述べられているグリッド・リソース・スケジューラや資源管理装置は、本発明の資源予約装置の従来技術の一例であり、また、先行文献内の、コンピューティング・リソース・マネージャや端末管理装置は、本発明の計算機データベース管理部の従来の一例であり、ストレージ・リソース・マネージャは、本発明のストレージデータベース管理部の従前の一例である。同様に、ネットワーク・リソース・マネージャや通信管理装置、経路探索装置は、本発明のネットワークデータベース管理部の従前の一例である。
【0010】
上記の先行文献でも示されている通り、サービスプロバイダがクライアントからの予約要求に応じて動的に計算機資源、ストレージ資源、ネットワーク資源を予約して提供するための基盤技術は既に確立されている。
【先行技術文献】
【特許文献】
【0011】
【特許文献1】特許公開2010-068140号公報
【特許文献2】特許公開2008-301225号公報
【特許文献3】特許公開2008-131247号公報
【特許文献4】特許公開2008-158844号公報
【非特許文献】
【0012】
【非特許文献1】G.Lambda: coordination of a grid scheduler and lambda path service over GMPLS, Future Generation Computer Systems, Volume 22 Issue 8, October 2006.
【非特許文献2】竹房あつ子、中田秀基、工藤知宏、田中良夫、"高品質分散実行環境のための計算・ネットワーク資源のグローバルスケジューリング手法"情報処理学会研究報告 2008-HPC-1'19, 2009-02, pp.55-60.
【非特許文献3】竹房あつ子、他「グリッドにおける計算資源と光パスネットワーク資源のコアロケーション実験」SACSIS(Symposium on Advanced Computing systems and Infrastructures) 2006
【非特許文献4】竹房あつ子、他「計算資源とネットワーク資源を同時確保する予約ベースグリッドスケジューリングシステム」SACSIS(Symposium on Advanced Computing systems and Infrastructures) 2006
【非特許文献5】竹房あつ子、他「ミドルウェア連携による計算・ネットワーク資源の日米間グリッドコアロケーション実験」第164回計算機アーキテクチャ・第109回ハイパフォーマンスコンピューティング合同研究発表会
【非特許文献6】竹房あつ子、他「多様な資源を事前予約で同時確保するためのグリッドコアロケーションシステムフレームワークGridARS」情報処理学会論文誌 コンピューティングシステム、 48(SIG18)、pp. 32-42、2007
【非特許文献7】竹房あつ子、他「異種の複数スケジューラで管理される資源を事前同時予約するグリッド高性能計算の実行環境」HPCS 2007、2007年ハイパフォーマンスコンピューティングと計算科学シンポジウム論文集
【非特許文献8】竹房あつ子、他「高品質分散実行環境のための計算・ネットワーク資源のグローバルスケジューリング手法」情報処理学会研究報告2008-HPC-119、2009
【非特許文献9】林通秋、他「グリッドアプリケーションのためのGMPLSネットワーク資源の管理制御」電子情報通信学会技術研究報告PN2006-8、2006
【非特許文献10】松田秀雄「次世代研究環境を目指すNAREGIデータグリッド」NAREGIシンポジウム2007
【非特許文献11】谷村勇輔、他「予約利用可能なオブジェクトベース・ストレージの設計」情報処理学会研究報告(HOKKE 2009)、2009-14、pp.79-84、2009
【非特許文献12】谷村勇輔、他「アクセス性能を保証する並列ファイルシステムの提案とストレージサーバの設計」、情報処理学会研究報告(SWoPP 2009)、2009-HPC-121-33、2009
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、上記の仮想化技術を適用されたサービスプラットフォームの上で既存のネットワーク上のアプリケーションを動作させる場合、クライアントに対して次のような変化を与えてしまい、結果的にクライアントが該アプリケーションを動作させることを困難にさせてしまう可能性がある。
【0014】
まず、クライアントが該アプリケーションを動作させるための要求メッセージの内容と、クライアントが該アプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージの内容とが大きく異なる。
【0015】
それゆえ、クライアントは、該アプリケーションを動作させるために上記の2種類の要求メッセージを使わなければならず、複雑な作業を強いられることとなる。
【0016】
また、前述の特許文献4に示されるとおり、クライアントがアプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージについて、予約される計算機資源や、ストレージ資源、ネットワーク資源の特徴に関してのみ、クライアントがアプリケーションを動作させるための要求メッセージの内容に基づいて自動的にパラメータを補完する方法が提案されている。
【0017】
しかしながら、クライアントが計算機資源、ストレージ資源、ネットワーク資源の内のどの資源を予約したいのか、というオブジェクト自体を補完する方法は提案されていない。
【0018】
本発明は、上記の点に鑑みなされたもので、クライアントが予約すべき資源群の種別や、それぞれの資源の場所を明示的に指定しなくても、適切な資源を自動的に予約することが可能な資源予約装置及び方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0019】
上記の課題を解決するために、本発明(請求項1)は、アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約装置であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続され、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換手段と、
前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段と、
前記資源予約メッセージに基づいて、前記サービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認手段と、
前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段の結果に基づいて、欠損しているオブジェクトを生成すると共に、前記メッセージ交換手段を介して前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段と前記オブジェクト変更手段の結果に基づいて、欠損しているコネクションを生成すると共に、前記メッセージ交換手段を介して、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更手段と、
前記オブジェクト変更手段と前記コネクション変更手段で探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約手段と、を有する。
【0020】
また、本発明(請求項2)は、請求項1の前記オブジェクト変更手段に、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う手段を含む。
【0021】
また、本発明(請求項3)は、請求項1または2の前記サービス確認手段に、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する手段を含む。
【0022】
本発明(請求項4)は、アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約方法であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続される資源予約装置において、
メッセージ交換手段が、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換ステップと、
サービス確認手段が、前記資源予約メッセージに基づいて、前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認ステップと、
オブジェクト・コネクション解析手段が、前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析ステップと、
オブジェクト変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップの結果に基づいて、欠損しているオブジェクトを生成すると共に、前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更ステップと、
コネクション変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップと前記オブジェクト変更ステップを実行した結果に基づいて、欠損しているコネクションを生成すると共に、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更ステップと、
資源管理手段が、前記オブジェクト変更ステップと前記コネクション変更ステップで探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約ステップと、を実行する。
【0023】
また、本発明(請求項5)は、請求項4の前記オブジェクト変更において、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う。
【0024】
また、本発明(請求項6)は、請求項4または5の前記サービス確認ステップにおいて、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する。
【0025】
本発明(請求項7)は、請求項1乃至3のいずれか1項に記載の資源予約装置を構成する各手段としてコンピュータを機能させるための資源予約プログラムである。
【発明の効果】
【0026】
上記のように本発明によれば、既存のアプリケーションを動作させるためのクライアントからの要求メッセージの内容に基づいて、同アプリケーションを動作させるための計算機資源やストレージ資源、ネットワーク資源を予約するための要求メッセージの内容を容易に生成することができる。
【0027】
さらに、予約可能な資源群を抽出し、その資源群の中から予約する資源を選択するため、高い予約成功確率を維持できる。
【0028】
また、予約できない資源があった場合に、サービスを変更することで、資源予約メッセージ受信時における各資源の配置モデルに制限されて資源予約に失敗するケースを削減できる。
【図面の簡単な説明】
【0029】
【図1】本発明の第1の実施の形態における資源予約装置の構成図である。
【図2】本発明の第1の実施の形態における各データベース管理棒の管理方法の例である。
【図3】本発明の第1の実施の形態における動作のフローチャートである。
【図4】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その1)である。
【図5】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その2)である。
【図6】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その3)である。
【図7】本発明の第1の実施の形態におけるコア部と各データベース管理部との通信方法の一例(その4)である。
【図8】本発明の第1の実施の形態におけるデータベース管理部と管理対象のドメイン、及びドメインの関係である。
【図9】本発明の第1の実施の形態におけるデータベース管理部と管理対象のドメイン、及びドメイン間野関係である。
【図10】本発明の第1の実施の形態におけるドメインとそのドメインを管理するサービスデータベース管理部との対応テーブルの一例である。
【図11】本発明の第1の実施の形態におけるドメイン間や各ドメインと外部ネットワークとの間のエンドポイントの対応テーブルの一例である。
【図12】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービス確認ステップに関するサービスと提供されるオブジェクトやコネクションとの関係を示すテーブルである。
【図13】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するユーザから提供されない場合に補完もされないオブジェクトやコネクションである。
【図14】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと補完対象となる可能性があるオブジェクトやコネクションの関係のテーブルである。
【図15】本発明の第1の実施の形態におけるユーザから提供されながら補完対象となる可能性があるオブジェクトやコネクションのテーブルである。
【図16】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと計算機オブジェクトごとの計算機資源の所要台数の対応テーブルの例である。
【図17】本発明の第1の実施の形態におけるサービスと各計算機資源に求められる特徴の対応テーブルの例である。
【図18】本発明の第1の実施の形態におけるサービスとストレージオブジェクト毎のストレージ資源の所要台数の対応テーブルの例である。
【図19】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスと各ストレージ資源に求められる特徴の対応テーブルの例である。
【図20】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスとコネクション毎のエレメントの所要特徴の対応テーブルの例である。
【図21】本発明の第1の実施の形態におけるコネクションの資源予約の必要性を判断する方法の例である。
【図22】本発明の第1の実施の形態におけるサービス確認ステップの一例である。
【図23】本発明の第1の実施の形態におけるメソッドによってサービスや性能保証の種別を選択する方法の一例である。
【図24】本発明の第1の実施の形態におけるインタフェースによってサービスや性能保証の種別を選択する方法の一例である。
【図25】本発明の第1の実施の形態における通信メッセージ内のあるフィールドにあるパラメータの値によってサービスや性能保証の種別を選択する方法の一例である。
【図26】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するアプリケーション種別に基づいて判断するためのテーブルの一例である。
【図27】本発明の第1の実施の形態におけるデータ種別に基づいて判断するためのテーブルの一例である。
【図28】本発明の第1の実施の形態におけるアプリケーション種別とデータ種別の組み合わせに基づいて判断するためのテーブルの一例である。
【図29】本発明の第1の実施の形態におけるサービスや性能保証種別に基づいて判断するためのテーブルの一例である。
【図30】本発明の第1の実施の形態におけるオブジェクト変更ステップの詳細な動作のフローチャートである。
【図31】本発明の第1の実施の形態における各オブジェクト編集ステップにおける動作の例である。
【図32】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて利用可能な計算機を限定する方法の例である。
【図33】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて利用可能な計算機を限定する方法の例である。
【図34】本発明の第1の実施の形態におけるユーザデータベース管理部のユーザ情報に基づいて最寄のドメインとの間のエンドポイントを限定する方法の例である。
【図35】本発明の第1の実施の形態におけるデータデータベース管理部のデータの種別と識別子との対応付け方法の例である。
【図36】本発明の第1の実施の形態におけるデータデータベース管理部のデータ情報に基づいて利用可能な計算機を限定する方法の例である。
【図37】本発明の第1の実施の形態におけるデータデータベース管理部のデータ情報に基づいて利用可能なストレージを限定する方法の例である。
【図38】本発明の第1の実施の形態におけるアプリケーションデータベース管理部のアプリケーションの種別と識別子との対応付け方法の例である。
【図39】本発明の第1の実施の形態におけるアプリケーションデータベース管理部のアプリケーション情報に基づいて利用可能な計算機を限定する方法の例である。
【図40】本発明の第1の実施の形態におけるアプリケーションデータベース管理のアプリケーション情報に基づいて利用可能なストレージを限定する方法の例である。
【図41】本発明の第1の実施の形態における計算機データベース管理部の計算機資源と該計算機資源のエンドポイントの対応テーブルである。
【図42】本発明の第1の実施の形態におけるストレージ資源と該ストレージ資源のエンドポイントの対応テーブルである。
【図43】本発明の第1の実施の形態におけるコネクション編集ステップにおける動作の例である。
【図44】本発明の第1の実施の形態におけるコネクション群計算の例(その1)である。
【図45】特許文献2に基づくマルチドメインにわたるコネクション群の探索方法の例である。
【図46】本発明の第1の実施の形態におけるコネクション群計算の例(その2)である。
【図47】本発明の第1の実施の形態におけるコネクション群計算の例(その3)である。
【図48】本発明の第1の実施の形態におけるコネクション群計算の例(その4)である。
【図49】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するサービスを実現するオブジェクト群とコネクション群の組み合わせパターンである。
【図50】本発明の第1の実施の形態におけるパターンと利用料金の対応テーブルである。
【図51】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するpターンとしよう頻度の対応テーブルである。
【図52】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するパターンと消費電力の対応テーブルである。
【図53】本発明の第1の実施の形態におけるサービスデータベース管理部が保持するパターンと稼働率の対応テーブルである。
【図54】本発明の第2の実施の形態における全体構成のイメージである。
【図55】本発明の第2の実施の形態におけるTV会議サービスを要求されるばあいのオブジェクトとコネクションの編集例(編集前)である。
【図56】本発明の第2の実施の形態におけるTV会議のサービスを要求される場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図57】本発明の第2の実施の形態における資源予約の候補の例(その1)である。
【図58】本発明の第2の実施の形態における資源予約の候補の例(その2)である。
【図59】本発明の第2の実施の形態における資源予約の候補の例(その3)である。
【図60】本発明の第3の実施の形態における全体構成のイメージである。
【図61】本発明の第3の実施の形態におけるファイルダウンロードのサービスの場合のオブジェクトとコネクションの編集例(編集前)である。
【図62】本発明の第3の実施の形態におけるファイルダウンロードのサービスの倍あのオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図63】本発明の第3の実施の形態における資源予約の候補の例(その1)である。
【図64】本発明の第3の実施の形態における資源予約の候補の例(その2)である。
【図65】本発明の第4の実施の形態におけるサービスシナリオ変更ステップのフローチャートである。
【図66】本発明の第4の実施の形態におけるドメインの構成例である。
【図67】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集前)である。
【図68】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図69】本発明の第4の実施の形態における映像配信の場合のオブジェクトとコネクションの編集例(編集後のイメージ)である。
【図70】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更前)である。
【図71】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更後)である。
【図72】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更前)である。
【図73】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更後)である。
【図74】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その1)(変更に合せて全体サービスの設計)である。
【図75】本発明の第4の実施の形態におけるサービスシナリオ変更の候補の例(その2)(変更に合せて全体サービスの設計)である。
【発明を実施するための形態】
【0030】
以下、図面と共に本発明の実施の形態を説明する。
【0031】
図1は、本発明の第1の実施の形態における資源予約装置の構成を示す。
【0032】
資源予約装置100は、コア部110、サービスデータベース管理部120、サービス確認部130、オブジェクト・コネクション解析部140、オブジェクト変更部150、コネクション変更部160から構成され、コア部110は、ユーザデータベース管理部1、データデータベース管理部2、アプリケーションデータベース管理部3、計算機データベース管理部4、ストレージデータベース管理部5、ネットワークデータベース管理部6に接続されている。図1では、各データベース管理部10〜60とコア部110とが直接接続されている例を示しているが、ネットワークを介して接続されていてもよい。
【0033】
基本的に、サービスデータベース管理部120は、図3のように各種データベース管理部1〜6と、それらのデータベース管理部へアクセスをするためのIPアドレスやポート番号などのアクセス方法の対応テーブルを記憶している必要がある。但し、サービスデータベース管理部120は、コア部110がネットワークを介して通信する場合、コア部110を実現するソフトウェアのソースコード、もしくはソフトウェアの設定データに予めサービスデータベース管理部120の宛先を記入しておく必要がある。
【0034】
資源予約装置100は、クライアント装置(図示せず)からの資源予約メッセージに応じて前記の各データベース管理部10〜60の一部もしくは全部とメッセージを交換し、所要のアプリケーション資源と、データ資源と、計算機資源と、ストレージ資源と、ノード資源と、それらの間を結ぶ機能を有する通信路資源と、を予約する機能を有する。
【0035】
資源予約メッセージは、所要のアプリケーションと、データと、計算機と、ストレージと、ノードと、についてそれぞれを表現するオブジェクトと、オブジェクト間のそれぞれの通信路を表現するコネクションを含む。
【0036】
オブジェクトは、前記資源予約メッセージ内で交換される他のオブジェクト群との間で識別されるための識別子、オブジェクトを構成する資源の種別、その資源を特定する識別子、その資源の使用時間、その資源の性能を示す特徴、およびそのオブジェクトの個数、についての一部もしくは全部の情報を有する。
【0037】
コネクションは、コネクションの端点、コネクションを構成する資源を特定する識別子、資源の使用時間、その資源の性能を示す特徴、についての一部もしくは全部の情報を有する。
【0038】
ユーザデータベース管理部10は、ユーザの識別子や所在を管理するとともに、資源予約装置100からの指示に応じてユーザが最寄りのネットワークエッジにアクセスするエンドポイント、使用可能な計算機やストレージ、ネットワークの制約条件、もしくはそれらの一部を探索して応答する機能を有する。
【0039】
データデータベース管理部20は、データ資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理するとともに、資源予約装置100からの指示に応じて使用可能なデータの識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0040】
アプリケーションデータベース管理部30は、アプリケーション資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なアプリケーションの識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0041】
計算機データベース管理部40は、計算機資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能な計算機資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0042】
ストレージデータベース管理部50は、ストレージ資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なストレージ資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0043】
ネットワークデータベース管理部60は、ノードや通信路のネットワーク資源の種別、識別子、所在、使用可能な時間の一部もしくは全部を管理し、資源予約装置100からの指示に応じて使用可能なネットワーク資源の識別子や使用可能な時間、もしくはそれらの一部を探索して応答する機能を有する。
【0044】
上記の構成における資源予約方法の流れ概要を下記に示す。
【0045】
図3は、本発明の第1の実施の形態における概要動作のフローチャートである。
【0046】
ステップ110) コア部110は、クライアントと資源予約メッセージを交換する(資源予約メッセージ交換ステップ)。
【0047】
ステップ120) サービス確認部130は、資源予約メッセージに基づいて、サービスデータベース管理部120を参照して、サービスの内容と、性能保証の種別と、サービスのために必要となるオブジェクトとコネクションと、アプリケーションとデータの配置方法と、図21で示されるネットワークインフラ(基盤構造)条件に基づくコネクションの資源予約の必要性と、の一部もしくは全部について決定する(サービス確認ステップ)。
【0048】
ステップ130) オブジェクト・コネクション解析部140が、資源予約メッセージを通じ、クライアントから提供されたオブジェクト群とコネクション群の存在や内容を確認する(オブジェクト・コネクション解析ステップ)。
【0049】
ステップ140) オブジェクト変更部150が、サービス確認ステップ(ステップ120)とオブジェクト・コネクション解析ステップ(ステップ130)の結果を通じ、欠損しているオブジェクトを生成し、尚且つ各データベース管理部10〜60とのデータ交換を通じてオブジェクトの内容を補完し、サービスデータベース管理部120に格納する。オブジェクト変更部150は、コア部110を介して各データベース管理部10〜60と通信する(オブジェクト変更ステップ)。
【0050】
ステップ150) コネクション変更部160が、サービス確認ステップ(ステップ120)とオブジェクト・コネクション解析ステップ(ステップ130)とオブジェクト変更ステップ(ステップ140)との結果を通じ、欠損しているコネクションを生成し、尚且つネットワークデータベース管理部6とのデータ交換を通じてコネクションの内容を補完し、サービスデータベース管理部120に格納する。コネクション変更部160はコア部110を介して各データベース管理部10〜60と通信する(コネクション変更ステップ)。
【0051】
ステップ160) コア部110が、サービスデータベース管理部120に格納されている探索されたオブジェクト群とコネクション群の組合せから成るサービスパターンの中から実際に資源予約するひとつのサービスパターンを選択し、選択されたオブジェクトやコネクションを構成する資源を管理しているそれぞれのデータベース管理部10〜60と連携して資源予約を実行する(資源予約ステップ)。
【0052】
以下、詳細に説明する。
【0053】
本実施の形態における資源予約装置100は、非特許文献3〜非特許文献9までに示されるグリッド・リソース・スケジューラを機能拡張したものである。また本実施の形態における計算機データベース管理部4は、非特許文献3〜非特許文献9までに示されるコンピュータ・リソース・マネージャと同等のものであり、本実施の形態のストレージデータベース管理部5は、非特許文献10〜非特許文献12までに示されているストレージ・リソース・マネージャと同等のものである。同様、ネットワークデータベース管理部6は、非特許文献3〜非特許文献9までに示されているネットワーク・リソース・マネージャと同等のものである。
【0054】
コア部110と各データベース管理部10〜60とのメッセージシーケンスの例を図4〜図7に示す。メッセージシーケンスは図4〜図7のいずれかでも良い。
【0055】
図4のシーケンスにおいて、コア部110は各データベース管理部10〜60とひとつずつ順番に通信でき、コア部119からの処理要求メッセージに応じて各データベース管理部10〜60は処理応答メッセージを返す。これにより、単純なメッセージ処理を実現できる。
【0056】
図5において、コア部110は複数のデータベース管理部10〜60と並列に通信でき、コア部110からの処理要求メッセージに応じて各データベース管理部10〜60は処理応答メッセージを返す。これにより、図4よりも迅速なメッセージ処理を実現できる。
【0057】
図6において、コア部110は複数のデータベース管理部10〜60と並列に通信でき、コア部110からの仮処理要求メッセージに応じて各データベース管理部10〜60は仮処理応答メッセージを返す。仮処理応答メッセージを受信したコア部110は、仮処理応答メッセージの内容に基づいて本処理要求メッセージを送信する。コア部110は仮処理応答メッセージの内容に基づいて本処理要求メッセージを送信しないと判断した場合、仮処理中止メッセージを送信する。これにより、図5よりもメッセージ処理の迅速性を失っている一方、2フェーズコミットプロトコルを採用しており、トランザクションのアトミック性を高めることができる。
【0058】
図7において、図6のメッセージシーケンスに基づき、コア部110と各データベース管理部10〜60とのメッセージ交換の間にトランザクションマネージャ70を配置する。トランザクションマネージャ70は図6においてコア部110が実行していた仮処理要求と本処理要求を代行して行う。これにより、図6のコア部110と比べ、図7のコア部110のメッセージ処理は簡単となり、コア部110の実装が容易となる。
【0059】
クライアントとコア部110との間のメッセージシーケンスも図4〜図7のいずれかで良い。
【0060】
本実施の形態では、非特許文献3〜非特許文献9までを参考にして図6に示されるメッセージシーケンスに基づいて説明する。
【0061】
各資源を提供するインフラ全体は複数のドメインから構成され、各ドメインは資源種別や、地域別、管理者別などの要因に基づいて分割される。各データベース管理部10〜60は、自ドメイン内の資源を管理する。なお、インフラ全体の中で、データデータベース管理部が複数存在してもよく、サービスデータベース管理部120や、ユーザデータベース管理部10、アプリケーションデータベース管理部50、計算機データベース管理部50、ストレージデータベース管理部50、ネットワークデータベース管理部60も同様である。
【0062】
資源予約装置100のサービスデータ管理部120では図8や図9に示されるような、データベース管理部10〜60と管理対象のドメイン、及びドメイン間の関係を管理する。その管理のため、サービスデータベース管理部120では、図10や図11に示されるようなテーブルを記憶する。図10のドメインの識別子とデータベース管理部の識別子からなるテーブルを記憶することにより、資源予約装置100は各ドメインと、そのドメインを管理するデータベース管理部10〜60との対応関係を把握できる。また、各ドメインにどのような資源が管理されているか、ということも把握できる。一方、複数のドメインを横断する通信路を予約する際に通信路はドメイン単位に分割されてドメイン単位のコネクションに基づいて予約されるが、図11に示すように、サービスデータ管理部120において、対象ドメインの識別子、隣接ドメインの識別子、対象ドメインのエンドポイントの識別子、隣接ドメイン側のエンドポイントの識別子からなるテーブルを記憶することにより、コネクションの端点を確定できる。
【0063】
資源予約メッセージを通じてクライアント装置と交換される情報はオブジェクトとコネクションという単位で分離できる。
【0064】
オブジェクトの一例を下記に示す。
オブジェクト <識別子>{
<種別>
<個数>
エレメント{
<識別子>
<使用時間>
<特徴>
}
}
「オブジェクト」の識別子は、例えば数字や文字列などで表現されてもよい。この識別子は、資源予約メッセージを通じて、クライアント装置から資源予約装置に送付されたオブジェクト群やコネクション群の中で特定のオブジェクトを指し示すための値である。それゆえクライアントが指定しなくてもよく、資源予約装置が自動的に付与してもよい。
【0065】
「種別」は、例えばユーザ、アプリケーション、データ、計算機、ストレージ、ノードである。それぞれのオブジェクトの呼称をユーザオブジェクト、アプリケーションオブジェクト、データオブジェクト、計算機オブジェクト、ストレージオブジェクト、ノードオブジェクトとする。ただし、種別をさらに詳細に分類してもよい。例えばアプリケーションについて、映像配信、(多地点)ビデオ会議、(多地点)音声会議、シンクライアント、ファイルアップロード、ファイルダウンロード、データ編集/データ演算、などのようなアプリケーション名に細分化してもよい。データの詳細な種別は例えばデータ名である。ノードの場合の例は、ルータ、イーサネットスイッチ、ファイヤーウォールである。但し、これら以外の種別が存在してもよい。
【0066】
「個数は」、オブジェクトで指定された資源を複数欲しい場合に指定される値である。個数は例えば数字で表現されてもよい。クライアントはこの値を指定しなくてもよく、その場合の個数のデフォルトの値は1となる。
【0067】
本発明の特徴として、クライアントは計算機資源やストレージ資源、ネットワーク資源などのエレメントの識別子や使用時間、特徴を指定する必要はない。なぜならば資源予約装置100がクライアントの条件に該当する資源や使用時間、特徴を探索するからである。但し、エレメントの識別子はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された識別子に該当する資源を資源予約する必要がある。同様に、エレメントの使用時間はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された使用時間に該当する資源を資源予約する必要がある。同様に、エレメントの特徴はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された特徴を満足する資源を資源予約する必要がある。
【0068】
エレメントの特徴の例を下記に示す。
【0069】
アプリケーションの場合の例は、所要の計算機仕様、所要のストレージ仕様、所要のネットワーク仕様、もしくはそれらの一部であってもよい。データの場合もアプリケーションの場合と同様である。計算機の場合の一例は、所要のCPUや、メモリ、ハードディスク、ネットワークインターフェースカード、オペレーティングシステム、マネージメントプロトコルである。例えばCPUをブランド名や型番、もしくは動作周波数やキャッシュサイズで指定してもよい。また、例えばメモリを記憶サイズやデータ転送速度で指定してもよい。同様、ストレージを記憶サイズや、データ転送速度、秒間I/O数、平均シークタイムで指定してもよい。ノードの場合の例は、所要の装置のスイッチング容量やポート数、ポート当たりの伝送速度、ポートの媒体種別、マネージメントプロトコル、もしくはそれらの一部であってもよい。
【0070】
次にコネクションの一例を下記に示す。
コネクション <識別子>{
エレメント{
<コネクションの端点>
<上記端点の反対側の端点>
<識別子>
<使用時間>
<特徴>
}
}
コネクションの識別子は例えば数字や文字列などで表現されてもよい。この識別子は、資源予約メッセージを通じて、クライアント装置から資源予約装置100に送付されたオブジェクト群やコネクション群の中で特定のコネクションを指し示すための値である。それゆえクライアントが指定しなくてもよく、資源予約装置が自動的に付与してもよい。
【0071】
コネクションの端点、ならびに反対側の端点は図9で示されたエンドポイント、もしくは計算機資源やストレージ資源のエレメントの識別子となる。
【0072】
本発明の特徴として、クライアントはネットワーク資源のエレメントの識別子や使用時間、コネクションの端点ならびに反対側の端点、特徴を指定する必要はない。なぜならば資源予約装置100がクライアントの条件に該当する資源や使用時間、コネクションの端点、特徴を探索するからである。但し、エレメントの識別子はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された識別子に該当する資源を資源予約する必要がある。同様に、エレメントの使用時間はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された使用時間に該当する資源を資源予約する必要がある。同様にエレメントのコネクションの端点ならびに反対側の端点はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定されたコネクションの端点ならびに反対側の端点に該当する資源を資源予約する必要がある。同様にエレメントの特徴はクライアントが明示的に指定してもよい。その場合、資源予約装置100はクライアントによって指定された特徴を満足する資源を資源予約する必要がある。
【0073】
エレメントの特徴の例を下記に示す。
【0074】
例えば、媒体種別、伝送速度もしくは通信容量、伝搬遅延時間であってもよい。
【0075】
但し、上記において、オブジェクトやコネクションというものは資源予約メッセージの中で情報を分類してまとめるための概念であり、明示的にオブジェクトやコネクションというものを作成する必要はない。
【0076】
サービスデータベース管理部120は、図12、図13、図14、図15、図16、図17、図18、図19、および図20に示される情報を記憶する。図12はサービス確認ステップ(ステップ120)に関するサービスと提供されるオブジェクトやコネクションとの関係を示すテーブルを示す。図13と図14はそれぞれ、ユーザから提供されない場合に補完もされないオブジェクトやコネクションの関係図と、サービスと補完対象となる可能性があるオブジェクトやコネクションの関係と、を示す。また、図15はユーザから提供されながら補助対象となる可能性があるオブジェクトやコネクションの関係を示すテーブルである。図16はサービスと計算機オブジェクト毎の計算機の所要台数の対応表の例であり、図17はサービスと各計算機資源に求められる特徴の対応を示すテーブルの例である。また、図18はサービスとストレージオブジェクト毎のストレージの所要台数の対応を示すテーブルの例であり、図19はサービスと各ストレージ資源に求められる特徴の対応を示すテーブルの例である。
【0077】
<資源予約メッセージ交換ステップ(ステップ110)>
クライアントが所要のサービスを実現できるように資源予約メッセージを送信する際、資源予約メッセージは図12と図13の内容を満足するように所要サービスに対応したオブジェクトやコネクションを含む必要がある。
【0078】
本発明の資源予約装置100は、クライアントの所望サービスに基づいて図14に示されるオブジェクトやコネクションを自動的に生成する。各サービスのすべてのオブジェクトとコネクションは図12と図14とによって示す通りである。
【0079】
また、本発明の資源予約装置100は、クライアントの所望サービスと、図16、図17、図18、図19、及び図20の内容に基づいてオブジェクトの個数や、オブジェクトやコネクションのエレメント部分の特徴を自動的に補完できる。
【0080】
本発明では、オブジェクトやコネクションを利用した資源予約を通じ、サービスの性能保証を図っている。
【0081】
性能保証の形態を下記に示す。
種別1: 計算機
種別2: ストレージ
種別3: ネットワーク(=コネクション+ノード)
種別4: 計算機とストレージ
種別5: 計算機とネットワーク(=コネクション+ノード)
種別6: ストレージとネットワーク(=コネクション+ノード)
種別7: 計算機とストレージとネットワーク(=コネクション+ノード)
種別8: なし(どの資源も性能保証をしない)
しかしながら、図21に示されるとおり、サービスの種別や性能保証の有無に関わらずコネクションの補完が必要となる場合がある。図21の判断の分岐条件2に示されるとおり、ネットワークのインフラがコネクション型網である場合、資源予約装置100は性能保証の要求の有無にかかわらず、コネクションに基づいてネットワーク資源を予約し、通信路を確立する必要がある(ステップ201,202、Yes)。一方、コネクションレス型網であり、尚且つクライアントから性能保証の要求がない場合、資源予約装置100はネットワーク資源を予約しない(ステップ201,No、202,No,203、Yes/No)。その場合、性能保証された通信路を確立できないが、オブジェクトに該当する資源と、他の資源との間の通信自体は確立できる。それゆえまず、図21の判断の分岐条件1で示されるとおりに資源予約装置100のサービス確認部130は、クライアントがコネクションの資源予約の要否を確認する。資源予約装置100のサービス確認部130はクライアントとの間でサービス確認ステップより前、もしくは同時にコネクションの資源予約の要否についてのメッセージを交換する。具体的なメッセージ交換は、図23や、図24、図25を用い、後述する。但し、サービスとして常にコネクションの資源を予約するものとして規定してもよく、その場合は資源予約の要否を確認する必要もない。
【0082】
図21の判断の分岐条件2に関し、資源予約装置100のサービス確認部130は、下記の方法のいずれかによってネットワークがコネクション型網であるのか、コネクションレス型網であるのか、というタイプを把握できる。
【0083】
<方法1>
方法1を下記に示す。
【0084】
図10のようなサービスデータベース管理部120のドメイン関係のデータベースのテーブルについて、各ドメインのタイプも記憶する。
【0085】
<方法2>
方法2を下記に示す。
【0086】
資源予約装置100を実現するソフトウェアのソースコードに物理的に記載される場合である。
【0087】
本発明ではどちらの実現方法でもよい。本実施の形態では方法1に基づいて説明する。
【0088】
資源予約メッセージを通じたクライアントからコア部110へのオブジェクト群やコネクション群の伝達方法を下記に例示する。伝達方法は下記のいずれでもよい。
・伝達方法1: サービス(複数のオブジェクトやコネクション)の単位での交換;
・伝達方法2: オブジェクトやコネクションの単位での交換;
・伝達方法3: オブジェクトやコネクションを構成する情報単位での交換;
上記の伝達方法2を実現するための実装条件としては、交換されるメッセージは、交換された情報がどの資源予約要求の一部であるのか、を識別するための識別子を含む。
【0089】
また、伝達方法3を実現するための実装条件としては、交換されるメッセージは、交換された情報がどの資源予約要求の一部であるのか、を識別するための識別子や、どのオブジェクトやコネクションの一部であるのか、を識別するための識別子を含む。
【0090】
上記の内容に基づき、資源予約メッセージ交換ステップ(ステップ110)において、クライアント装置とコア部110との間で資源予約メッセージの交換を行う。
【0091】
<サービス確認ステップ(ステップ120)>
次にサービス確認ステップ(ステップ120)において、コア部110はサービス確認部130と連携してサービスの内容を確認する。図22はサービス確認ステップ(ステップ120)の詳細な流れの一例である。
【0092】
ステップ121) まず、サービス確認部130は、クライアントがどのようなサービスや、性能保証を求めているのか、ということを確認する。実現手段は、例えば、図23に示すメソッドによってサービスや性能保証の種別を選択する方法、図24に示すインタフェースによってサービスや性能保証の種別を選択する方法、もしくは図25に示す通信メッセージ内のあるフィールドにあるパラメータの値によってサービスや性能保証の種別を選択する方法のいずれでもよく、また別の手段でもよい。
【0093】
クライアント装置から資源予約装置100への資源予約メッセージの交換方法は、例えば下記のような階層構造のインタフェースを介して実現できる。この場合、フィールドのところでオブジェクトやコネクションに該当する情報が記載される。
インタフェース <インタフェース名>{
メソッド <メソッド名>{
フィールド <フィールド名>{
<値>
}
}
}
図23に示す方法はインタフェース名の違いを利用して実現する例である。一方、図24はメソッド名の違いを利用して実現する例である。また、図25では、サービスや性能保証を区分するためのフィールドを設け、そのフィールドのパラメータの値の違いを利用して実現する例である。図23もしくは図24の実現手段を採用した資源予約装置100は、サービス確認部130が不要となり、コア部110が資源予約メッセージ交換ステップ110を行うことによりサービスや性能保証種別を確認する。
【0094】
上記の実現手段を介し、補完すべきオブジェクトやコネクションを確認できる。
【0095】
ステップ122) 所要のアプリケーションとデータを同じ計算機もしくはストレージに集めて実行することの必要性を判断する。判断基準を設定する上での選択肢は下記のいずれでもよく、また下記以外でもよい。
・選択肢1: 装置仕様に基づいて判断ならびに確定
・選択肢2: アプリケーション種別に基づいて判断
・選択肢3: データ種別に基づいて判断
・選択肢4: アプリケーション種別とデータ種別の組合せに基づいて判断
・選択肢5: サービス、性能保証の種別、もしくはその両方に基づいて判断
選択肢1の実現方法は、資源予約装置のソフトウェアのソースコードに明記する方法である。もしくはサービスデータベース管理部120において、アプリケーションとデータを常に同じ計算機もしくはストレージに集める、もしくは常に分離しておく、ということを識別するための値を記憶しておき、サービス確認部130がサービスデータベース管理部120を参照することによって確定する方法である。この場合、アプリケーション種別やデータ種別に関係なく、アプリケーションとデータとを同じ計算機もしくはストレージに集める、もしくは分離する、ということを常に実行する。
【0096】
選択肢2の実現方法は、サービスデータベース管理部120が図26に例示されたアプリケーション種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0097】
選択肢3の実現方法は、サービスデータベース管理部120が図27に例示されたデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、データ種別に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0098】
選択肢4の実現方法は、サービスデータベース管理部120が図28に例示されたアプリケーション種別とデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別とデータ種別の関係に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0099】
選択肢5の実現方法は、サービスデータベース管理部120が図29に例示されたアプリケーション種別とデータ種別と必要性の対応テーブルを記憶しておき、サービス確認部130が同テーブルを参照することによって確定する方法である。この場合、サービス確認部130は、アプリケーション種別とデータ種別の関係に応じて、アプリケーションとデータとを同じ計算機もしくはストレージに集めるという処理を実行する。
【0100】
本実施の形態では選択肢5に基づいて説明する。
【0101】
ステップ123) サービスに関係しない、もしくは性能保証外のオブジェクトやコネクションを指定された場合の対処方法を判断する。すなわち、上記で述べたネットワークがコネクション型ネットワークとコネクションレス型ネットワークのいずれであるのか、ということを判断する。
【0102】
本発明では上記のサービス確認ステップ120のステップ122とステップ123の処理の順番を入れ替えてもよい。本実施の形態では図22に従って説明する。
【0103】
もし、資源予約メッセージに含まれるオブジェクトやコネクションが不足している場合、サービス確認部130はサービスを特定できないために次のように動作することを決定する。以下のどちらか一方だけでよい。また、下記動作と異なる動作を実行しても良い。
・選択肢1: クライアントに資源予約失敗を応答し、尚且つ資源予約メッセージを廃棄
・選択肢2: 資源予約メッセージを廃棄
また、もし資源予約メッセージの中にサービスに関係しない、もしくは性能保証外のオブジェクトやコネクションが含まれる場合、サービス確認部130は次のように動作することを決定する。以下のいずれかだけでよい。また、下記動作と異なる動作を実行しても良い。
・選択肢1: エラーで応答
・選択肢2: 該オブジェクトを無視して資源予約
・選択肢3: 必要に応じて内容を補完しながら該オブジェクトに従って資源予約
本実施の形態では選択肢1に基づいて説明する。
【0104】
以上により、所要のサービスを提供するために必要なオブジェクトやコネクションの確認方法を示した。
【0105】
<オブジェクト・コネクション解析ステップ(ステップ130)>
次に、オブジェクト・コネクション解析部は資源予約メッセージの交換を通じて提供されるオブジェクト群やコネクション群を確認し、さらにサービス確認ステップの結果に基づいて情報の欠損しているオブジェクトやコネクションを確認する。
【0106】
本ステップでは、サービス確認ステップにおいて図12や図13の内容を確認しており、資源予約メッセージによって交換されると可能性のあるオブジェクト群やコネクション群を確認できている。さらに、図14や図15に示されるとおり、補完される可能性あるオブジェクト群とコネクション群も確認できている。
本ステップでは、上記のとおり、資源予約メッセージで交換されるオブジェクト群とコネクション群と、図12から図13の差異にもとづき、図14および図15にしたがってオブジェクト群とコネクション群の欠損状況を確認できる。
【0107】
<オブジェクト変更ステップ(ステップ140)>
次にオブジェクト変更ステップの内容を説明する。
【0108】
オブジェクト変更ステップでは、図30に示されるとおり、ユーザオブジェクト編集ステップ(ステップ141)と、データオブジェクト編集ステップ(ステップ142)と、アプリケーションオブジェクト編集ステップ(ステップ143)と、計算機オブジェクト編集ステップ(ステップ144)と、ストレージオブジェクト編集ステップ(ステップ145)と、ノードオブジェクト編集ステップ(ステップ146)と、から成る。ただし、それぞれのオブジェクト編集ステップの順番を入れ替えてもよい。本実施の形態では図30の内容に従って説明する。
【0109】
次に各オブジェクト編集ステップ(ステップ141〜146)は、図31に示されるとおり、オブジェクト問合せステップ(ステップ301,302)と、オブジェクト編集ステップと(ステップ303,304)、によって構成される。各オブジェクト編集ステップ(ステップ141〜146)では、各オブジェクト問合せステップ(ステップ301、302)とサービス確認ステップ(ステップ120)との結果に基づいてオブジェクトの内容を編集ならびに補完する。各オブジェクト編集ステップ(ステップ303、304)において、オブジェクト問合せステップ(ステップ301,302)以降は該当オブジェクトの内容が十分に揃っている場合や、該当するオブジェクト自体がない場合には省略される。また、オブジェクト問合せステップ(ステップ301,302)で該当オブジェクトの条件を満足する資源が存在しない場合、資源予約処理に失敗したこととなり、資源予約処理が終了される。
【0110】
下記にオブジェクト編集ステップ(ステップ140)の実現方法の例について説明する。
【0111】
プラットフォーム上では複数のドメインが存在し、尚且つ同じ種別の資源を管理しているドメインも複数存在する可能性がある。それゆえ、オブジェクト変更部150はオブジェクト問合せステップ(ステップ302)を通じて問い合わせるドメインを適切に選択する必要がある。下記では、オブジェクト変更部150が問合せ先のドメイン、ならびにそのデータベース管理部10〜60を選択する方法の例を示す。選択方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、資源予約装置100に設定される。
・選択肢1: 対象の種別の資源を管理している全ドメインを選択;
・選択肢2: 対象の種別の資源を管理し、尚且つユーザとオブジェクト群との間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢3: 対象の種別の資源を管理し、尚且つオブジェクト間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢4: 対象の種別の資源を管理し、尚且つユーザ及び各オブジェクトの間の中継ドメイン数が少なくなるようなドメインを優先的にN個選択;
・選択肢5: 対象の種別の資源を管理し、尚且つオブジェクト間の中継ドメイン数が多くなるようなドメインを優先的にN個選択;
・選択肢6: 対象の種別の資源を管理し、尚且つ利用頻度の高いドメインを優先的にN個選択;
・選択肢7: 対象の種別の資源を管理し、尚且つ利用頻度の低いドメインを優先的にN個選択;
・選択肢8: ランダムに対象の種別の資源を管理しているドメインをN個選択;
・選択肢9: 上記の選択肢1から選択肢8までのうちの一部の組合せ;
選択肢2は選択肢1と比べ、予約される資源がユーザの近くに集まり易いためにユーザと各資源との間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0112】
選択肢3は選択肢1と比べ、予約される資源同士が近くに集まり易いために資源間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0113】
選択肢4は選択肢2や選択肢3と比べ、予約される資源同士やユーザが近くに集まり易いために各資源の間やユーザと資源の間で交換される通信信号の伝搬遅延時間が少なくなり易い。結果的に高性能なサービスを提供しやすい。
【0114】
選択肢5は選択肢1と比べ、予約される資源同士が遠くに離れ易いために地震などの天災に対してひとつのサービスにおける全壊を防ぎ易い。結果的に高信頼のサービスを提供しやすい。
【0115】
選択肢6は選択肢1と比べ、クライアントへの提供サービスを一部のドメインに集中させ易い。結果的にサービスの運用管理が容易となる。
【0116】
選択肢7は選択肢5と比べ、各サービスが遠くに分散され易いためにサービスプラットフォームの全壊を防ぎ易い。結果的に高信頼のサービスを提供しやすい。
【0117】
次に、オブジェクト変更部150は上記で選択された各ドメインについて対象のオブジェクトを問い合わせる(ステップ302)。
【0118】
該当の種別の資源を管理するドメインが複数存在する場合も考慮すると、オブジェクト変更部150から同ドメイン群への問合せ方法は下記の通りである。但し、問合せ方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 該当のデータベース管理部群のそれぞれに並列的に問合せ
・選択肢2: 該当しているデータベース管理部群のそれぞれに順番に問合せ
本実施の形態では選択肢1に従って説明する。
【0119】
また、オブジェクト変更部150から各ドメインのデータベース管理部120への問合せ方法の例を下記に示す。問合せ方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: オブジェクト毎に問合せ;
・選択肢2: 複数のオブジェクトを一括で、もしくは並列して問合せ;
本実施の形態では選択肢2に従って説明する。
【0120】
次に、オブジェクト問合せステップ(ステップ302)においてオブジェクト変更部150からの問合せに応じて該当のデータベース管理部がオブジェクト変更部150に応答する。問い合わされたオブジェクトに該当する資源が複数存在する場合を考慮すると、データベース管理部10〜60からオブジェクト変更部150への応答方法は下記とおりである。ただし、応答方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: ひとつのオブジェクトに対して該当候補のすべてを応答;
・選択肢2: ひとつのオブジェクトに対して該当候補のうちのNコに限定して応答;
本実施の形態では選択肢1に従って説明する。
【0121】
また、上記の選択肢2において各データベース管理部10〜60が下記のように該当候補を限定する。ただし、限定する方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 利用料金が低い候補を優先的に選択;
・選択肢2: 使用頻度の高い資源を優先的に選択;
・選択肢3: 使用頻度の低い資源を優先的に選択;
・選択肢4: 消費電力の低い資源を優先的に選択;
・選択肢5: 稼働率の高い資源を優先的に選択;
・選択肢6: ランダム;
本実施の形態では選択肢2に従って説明する。
【0122】
最後に、オブジェクト問合せステップ(ステップ302)においてオブジェクト変更部150は各データベース管理部10〜60から応答されたオブジェクト候補を限定してもよい。下記に限定方法の例を示す。本発明では下記のいずれでもよい。また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: 限定しない;
・選択肢2: 応答された候補のうちのNコに限定;
本実施の形態では選択肢1に従って説明する。
【0123】
以上により、オブジェクト変更部150は各データベース管理部10〜60との連携を通じてオブジェクトに該当する資源候補を探索して選定し、さらに必要に応じて補完できる。
【0124】
以上で得られた情報に基づき、オブジェクト編集ステップを通じて問い合わされたオブジェクトの内容が補完される。
【0125】
上記のオブジェクト編集ステップ(ステップ304)について、より詳細な例を下記に示す。
【0126】
第1のステップについて説明する。
【0127】
オブジェクト変更部150がユーザオブジェクトのユーザの識別子に従ってユーザデータベース管理部10に問い合わせる例であり、同ユーザが使用できる計算機資源と、ストレージ資源についての問合せである。また、同ユーザが最寄りのドメインにアクセスするためのエンドポイントについての問合せである。ユーザデータベース管理部10は、例えば、図32や、図33、図34に示されるテーブルを記憶している。コア部110からの問合せに対し、ユーザデータベース管理部10は、そのユーザが使用することを許可されている計算機資源や、ストレージ資源の候補、エンドポイントを応答する。その結果、オブジェクト変更部150は使用可能な計算機資源やストレージ資源、エンドポイントを確認できる。もし、サービスプラットフォームにおいてユーザ毎にネットワーク資源を限定して提供する場合、本実施の形態のようにユーザデータベース管理部10はユーザ識別子とネットワーク資源との対応テーブルを記憶しておく。
【0128】
第2のステップについて説明する。
【0129】
オブジェクト変更部150がデータ種別に従ってデータデータベース管理部20に問い合わせる例であり、指定されたデータ種別のデータを保有する計算機資源やストレージ資源についての問合せである。データデータベース管理部20は、例えば、図35、図36、及び図37に示されるテーブルを記憶している。オブジェクト変更部150からの問合せに対し、データデータベース管理部20は、図35のテーブルに従ってデータの識別子を限定する。さらにデータの識別子と図36及び図37の各テーブルに基づいて指定のデータを保有する計算機資源やストレージ資源を限定する。但し、データ名の同じデータがコピーなどの操作を通じて複数存在している可能性があり、該当のデータの識別子は複数存在する可能性がある。それゆえ、該当の識別子のデータを保有する計算機資源やストレージ資源も複数存在する可能性がある。
【0130】
第3のステップについて説明する。
【0131】
オブジェクト変更部150がアプリケーション種別に従ってアプリケーションデータベース管理部30に問い合わせる例であり、指定されたアプリケーション種別のアプリケーションを保有する計算機資源やストレージ資源についての問合せである。アプリケーションデータベース管理部30は、例えば、図38、図39、及び図40に示されるテーブルを記憶している。オブジェクト変更部150からの問合せに対し、アプリケーションデータベース管理部30は図38のテーブルに従ってアプリケーションの識別子を限定する。さらにアプリケーションの識別子と図39及び図40の各テーブルに基づいて指定のアプリケーションを保有する計算機資源やストレージ資源を限定する。但し、アプリケーション名の同じアプリケーションがコピーなどの操作を通じて複数存在している可能性があり、該当のアプリケーションの識別子は複数存在する可能性がある。それゆえ、該当の識別子のアプリケーションを保有する計算機資源やストレージ資源も複数存在する可能性がある。
【0132】
上記の第1、第2、及び第3のステップに基づいて使用できる計算機資源や、ストレージ資源、エンドポイントを限定する例を示した。
【0133】
上記に基づき、クライアントの要求に該当する計算機資源の識別子をさらに限定する例は、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8に示されている。この場合、オブジェクト変更部150は、計算機データベース管理部40に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能な計算機資源を限定する。また、計算機データベース管理部40は図41のような計算機資源と該計算機資源のエンドポイントの対応テーブルを記憶しており、同計算機資源とコネクションとを関連付けるためのエンドポイントを応答する。
【0134】
同様、クライアントの要求に該当するストレージ資源の識別子をさらに限定する例は、非特許文献11、非特許文献12に示されている。この場合、オブジェクト変更部150はストレージデータベース管理部50に対して、ResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能なストレージ資源を限定する。また、ストレージデータベース管理部50は、図42のようなストレージ資源と該ストレージ資源のエンドポイントの対応テーブルを記憶しており、同ストレージ資源とコネクションとを関連付けるためのエンドポイントを応答する。
【0135】
次に、クライアントの要求に該当するノード資源の識別子を限定する例は、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、特許文献1、特許文献2、特許文献3に示されている。この場合、オブジェクト変更部150はネットワークデータベース管理部60に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能なノード資源を限定する。
【0136】
以上により、クライアントの要求に該当するデータ資源や、アプリケーション資源、計算機資源、ストレージ資源、ノード資源を限定できる。但しこの時点において、該当する資源が複数存在している可能性がある。その場合、後述される資源予約ステップにおいて該当の各種資源の識別子や使用時間をひとつに特定する。
【0137】
<コネクション変更ステップ(ステップ150)>
次に、コネクション変更部160における、図43の例に従ってコネクション変更ステップ(ステップ150)を説明する。
【0138】
コネクション変更ステップ(ステップ150)は、コネクション問合せステップ(ステップ151,152)とコネクション編集ステップ(ステップ153,154)からなる。上記のオブジェクト変更ステップ140を通じ、各コネクション候補のエンドポイントが既に明らかになっている。そこで、各コネクション候補のエレメント部分に求まったエンドポイントを補完する。
【0139】
例えば、図44に示されるとおり、計算機ドメイン1においてオブジェクト候補1が存在し、同様に計算機ドメイン2においてオブジェクト候補2、および計算機ドメイン3においてオブジェクト候補3がそれぞれ存在する例を考える。この例において、クライアントから要求されたサービスを実現する方法として、次の3パターンを考える。パターン1は、オブジェクト候補1とオブジェクト候補2とそれらの間を結ぶコネクション群である。パターン2は、オブジェクト候補2とオブジェクト候補3とそれらの間を結ぶコネクション群である。パターン3は、オブジェクト候補1とオブジェクト候補3とそれらの間を結ぶコネクション群である。
【0140】
本実施の形態では、コネクション群を計算する例としてパターン1に注目して説明する。コネクション変更部160は、オブジェクト候補1に基づくコネクション候補のエンドポイントを決定する。同様、オブジェクト候補2に基づくコネクション候補のエンドポイントを決定する。次にコネクション変更部160は、特許文献2に基づく経路探索技術により、ドメイン間の接続関係を計算する。特許文献2の経路探索技術は、始点から終点までのすべての経路を探索することができる。特許文献2に示される経路探索技術の簡略図を図45に示す。これにより、図46や、図47、図48に示されるとおり、コネクション候補1からコネクション候補6までを求めることができ、同時に各コネクションのエンドポイントを求めることができる。同様、パターン2とパターン3についても同じことを実行することにより、エンドポイントの定まったコネクション候補群を求めることができる。これにより、コネクション変更部160はコネクション候補と、それらについて問い合わせるべき各ネットワークデータベース管理部60を明らかにできる。但しコネクション変更部160は、特許文献2と異なる経路探索技術を用いても良い。
【0141】
次に、非特許文献3、非特許文献4、非特許文献5、非特許文献6、非特許文献7、非特許文献8、非特許文献9、特許文献1、特許文献2、特許文献3の内容に従ってコネクションの条件を満足するネットワーク資源についてネットワークデータベース管理部60に問い合わせる。この場合、コネクション変更部160はネットワークデータベース管理部60に対してResourceQueryもしくはAvailableResourceQueryというメソッドを通じ、利用可能な通信路資源を限定する。
【0142】
上記のコネクション問合せステップ(ステップ152)において、エンドポイントに基づいてコネクション変更部160から問い合わせるネットワークデータベース管理部60は決定している。
【0143】
次に、コネクション変更部160は各コネクションについて該当のドメインに問い合わせる。
【0144】
コネクションの数が複数存在し、尚且つ複数のドメインにわたって存在する場合、コネクション変更部160は次のいずれかの方法に従って問い合わせる。本実施の形態では非特許文献3から非特許文献9までに倣って、以下の選択肢1に従って説明する。
・選択肢1: 該当のデータベース管理部群のそれぞれに並列的に問合せ;
・選択肢2: 該当しているデータベース管理部群のそれぞれに順番に問合せ;
また、ひとつのドメインに複数のコネクションが存在する可能性がある。それゆえ、コネクション変更部160から各データベース管理部10〜60への問合せ方法は一般的に下記のいずれかに従って実現される。但し、下記以外の方法でもよい。
・選択肢1: コネクション毎に問合せ;
・選択肢2: 複数のコネクションを一括で、もしくは並列して問合せ;
本実施の形態では、上記の選択肢2に従って説明する。
【0145】
次に、コネクション問合せステップにおいてコネクション変更部160からの問合せに応じて該当のデータベース管理部がコネクション変更部160に応答する。問い合わされたコネクションに該当する通信路資源が複数存在する場合を考慮すると、データベース管理部10〜60からコネクション変更部160への応答方法は下記とおりである。但し、応答方法は下記のいずれでもよく、また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: ひとつのコネクションに対して該当候補のすべてを応答;
・選択肢2: ひとつのコネクションに対して該当候補のうちのN個に限定して応答;
本実施の形態では上記の選択肢1に従って説明する。
【0146】
また、上記の選択肢2において各データベース管理部10〜60が下記のように該当候補を限定する。但し、限定する方法は下記のいずれでもよく、また下記以外の方法でもよい。
・選択肢1: 利用料金が低い候補を優先的に選択
・選択肢2: 使用頻度の高い資源を優先的に選択
・選択肢3: 使用頻度の低い資源を優先的に選択
・選択肢4: 消費電力の低い資源を優先的に選択
・選択肢5: 稼働率の高い資源を優先的に選択
・選択肢6: ランダム
本実施の形態では選択肢2に従って説明する。
【0147】
最後に、コネクション問合せステップにおいてコネクション変更部150は各データベース管理部10〜60から応答されたコネクション候補を限定してもよい。下記に限定方法の例を示す。本発明では下記のいずれでもよい。また下記以外の方法でもよい。下記の"N"とは数字であり、各データベース管理部10〜60に設定される。
・選択肢1: 限定しない
・選択肢2: 応答された候補のうちのN個に限定
本実施の形態では選択肢1に従って説明する。
【0148】
以上により、クライアントの要求に該当する通信路資源を限定できる(ステップ154)。但し、この時点において、該当する資源が複数存在している可能性がある。その場合、後述される資源予約ステップ(ステップ160)において該当の各種資源の識別子や使用時間をひとつに特定する。
【0149】
<資源予約ステップ(ステップ160)>
最後に、図3の資源予約ステップ(ステップ160)について説明する。
【0150】
上記で述べたオブジェクト変更ステップ(ステップ140)とコネクション変更ステップ(ステップ150)を通じ、それぞれのオブジェクトやコネクションについて1つ以上の資源候補が探索され、サービスデータベース管理部120に例えば、図49に示されるようなテーブルがされる。資源予約ステップ(ステップ160)では、コア部110がサービスデータデータベース管理部120の図49のテーブルを参照し、適当なパターンを選択する。次に、コア部110は選択されたパターンに基づき、エレメントの識別子まで補完されたオブジェクトやコネクションを使って各データベース管理部と連携して資源を予約する。
【0151】
上記において、1つ以上のパターンの中から適当なものを選択する方法を下記に示す。但し、下記のいずれでもよく、また下記以外でもよい。
・選択肢1: トータルでの利用料金が低いパターンを優先的に選択;
・選択肢2: トータルでの使用頻度の高いパターンを優先的に選択;
・選択肢3: トータルでの使用頻度の低いパターンを優先的に選択;
・選択肢4: トータルでの消費電力の低いパターンを優先的に選択;
・選択肢5: トータルでの稼働率の高いパターンを優先的に選択;
・選択肢6: コネクション群だけについて利用料金が低いパターンを優先的に選択;
・選択肢7: コネクション群だけについて使用頻度の高いパターンを優先的に選択;
・選択肢8: コネクション群だけについて使用頻度の低いパターンを優先的に選択;
・選択肢9: コネクション群だけについて消費電力の低いパターンを優先的に選択;
・選択肢10: コネクション群だけについて稼働率の高いパターンを優先的に選択;
・選択肢11: オブジェクト群だけについて利用料金が低いパターンを優先的に選択;
・選択肢12: オブジェクト群だけについて使用頻度の高いパターンを優先的に選択;
・選択肢13: オブジェクト群だけについて使用頻度の低いパターンを優先的に選択;
・選択肢14: オブジェクト群だけについて消費電力の低いパターンを優先的に選択;
・選択肢15: オブジェクト群だけについて稼働率の高いパターンを優先的に選択;
・選択肢16: パターンの識別子の若番から優先的に選択;
・選択肢17: パターンの識別子の老番から優先的に選択;
・選択肢18: ランダム;
・選択枝19: 上記のうちの一部の組合せ;
選択肢1を実現する場合、サービスデータベース管理部120は、図50に示されるようなテーブルを保有し、尚且つコア部120は同テーブルを参照して適当なパターンを選択する。
【0152】
上記の選択肢2や選択肢3を実現する場合、サービスデータベース管理部120は図51に示されるようなテーブルを保有し、尚且つコア部110は、同テーブルを参照して適当なパターンを選択する。
【0153】
上記の選択肢4を実現する場合、サービスデータベース管理部120は図52に示されるようなテーブルを保有し、尚且つコア部110同テーブルを参照して適当なパターンを選択する。
【0154】
上記の選択肢5を実現する場合、サービスデータベース管理部120は図53に示されるようなテーブルを保有し、尚且つコア部110は同テーブルを参照して適当なパターンを選択する。
【0155】
それ以外の選択肢の場合、上記のデータベースのいずれかを参照することで実現できる。
【0156】
以上により、請求項1に対応する資源予約方法を実現できる。
【0157】
これにより、既存のアプリケーションを動作させるための要求メッセージの内容にもとづき、同アプリケーションを動作させるための計算機資源や、ストレージ資源、ネットワーク資源を予約するための要求メッセージの内容をできるだけ自動的に生成できる。
【0158】
[第2の実施の形態]
本実施の形態は、第1の実施の形態に基づいた、TV会議サービスの例であり、図54に示されるドメイン構成を例として説明する。便宜上、計算機ドメイン"1"に計算機データベース管理部"1"とアプリケーションデータベース管理部"1"が配備され、計算機ドメイン"2"に計算機データベース管理部"2"とアプリケーションデータベース管理部"2"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0159】
クライアントは、図55に示されるようなユーザ"1"についてのユーザオブジェクト"1"と、ユーザ"2"についてのユーザオブジェクト"2"と、ユーザ"3"についてのユーザオブジェクト"3"と、種別が「TV会議アプリケーション」のアプリケーションオブジェクトと、を含む資源予約メッセージをコア部110と交換する。
【0160】
サービス確認ステップ(ステップ120)を通じて、サービス確認部130は図56に示されるようなオブジェクトやコネクションが必要であると判断する。同様に、オブジェクト・コネクション解析ステップ(ステップ130)を通じて、オブジェクト・コネクション解析部140は計算機オブジェクトと、同計算機資源と各ユーザの間を結ぶコネクションが不足していると判断する。
【0161】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザ"1"のエンドポイントと、ユーザ"2"のエンドポイントと、ユーザ"3"のエンドポイントと、を確認する。
【0162】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するために計算機ドメイン"1"に存在するアプリケーションデータベース管理部301と、計算機ドメイン"2"に存在するアプリケーションデータベース管理部302と、に問い合わせる。
【0163】
その結果、オブジェクト変更部150は各計算機ドメインに対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有する計算機資源の識別子も確認する。本実施の形態では計算機"1"と計算機"2"が対象のアプリケーションを保有している。
【0164】
次に、コネクション変更部160は、ユーザの最寄りのエンドポイントや、ドメイン間の境界のエンドポイントに基づき、コネクションを補完する。
【0165】
以上により、図57に示される組合せパターンと、図58に示される組合せパターンと、及び図59に示される組合せパターンと、が抽出される。
【0166】
資源予約ステップ(ステップ160)において、コア部110は上記の3つの内のいずれかを一つ選択して予約する。
【0167】
[第3の実施の形態]
本実施の形態は、第1の実施の形態に基づいたファイルダウンロードサービスの例であり、図60に示されるドメイン構成を例として説明する。便宜上、ストレージドメイン"1"にストレージデータベース管理部"1"とアプリケーションデータベース管理部"1"とデータデータベース管理部"1"が配備され、ストレージドメイン"2"にストレージデータベース管理部"2"とアプリケーションデータベース管理部"2"とデータデータベース管理部"2"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0168】
クライアント装置は、図61に示されるようなユーザオブジェクトと、種別がファイルダウンロードのアプリケーションオブジェクトと、種別が対象のデータ名のデータオブジェクトを含む資源予約メッセージをコア部110と交換する。
【0169】
サービス確認ステップ(ステップ120)において、サービス確認部130は図62に示されるようなオブジェクトやコネクションが必要であると判断する。同様、オブジェクト・コネクション解析ステップ(ステップ130)において、オブジェクト・コネクション解析部140はストレージオブジェクトと、同ストレージ資源とユーザとの間を結ぶコネクションが不足していると判断する。
【0170】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザのエンドポイントを確認する。
【0171】
次に、オブジェクト変更部150は、対象のデータの所在を確認するためにストレージドメイン"1"に存在するストレージデータベース管理部501と、ストレージドメイン"2"に存在するストレージデータベース管理部502と、ストレージドメイン"3"に存在するストレージデータベース管理部503と、に問い合わせる。
【0172】
その結果、オブジェクト変更部150は各ストレージドメインに対象のデータが存在することを確認するとともに、同データを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"1"とストレージ"2"とストレージ"3"が対象のデータを保有している。
【0173】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するためにストレージドメイン"1"に存在するアプリケーションデータベース管理部301と、ストレージドメイン"2"に存在するアプリケーションデータベース管理部302と、ストレージドメイン"3"に存在するアプリケーションデータベース管理部303と、に問い合わせる。
【0174】
その結果、オブジェクト変更部150はストレージ"2"とストレージ"3"に対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"2"とストレージ"3"が対象のアプリケーションを保有している。
【0175】
次に、コネクション変更部160は、ユーザの最寄りのエンドポイントや、ドメイン間の境界のエンドポイントに基づき、コネクションを補完する。
【0176】
以上により、図63に示される組合せパターンと、図64に示される組合せパターンと、が抽出される。
【0177】
資源予約ステップ(ステップ160)において、コア部110は上記の2つの内のいずれかを一つ選択して予約する。
〔第4の実施の形態〕
【0178】
本実施の形態は、第1の実施の形態に基づいた映像配信サービスの例であり、請求項2請求項5に相当する。
【0179】
本実施の形態では、オブジェクト変更ステップ(ステップ140)において、予約可能なオブジェクト候補がない場合にオブジェクト変更ステップを再試行するため、コア部110がサービスの内容を変更する。サービスの内容を変更したものに基づいて、オブジェクト変更ステップを再試行する。
【0180】
例えば、所望のアプリケーション資源やデータ資源を保有している全ての計算機資源やストレージ資源が資源予約メッセージの指定された所望の使用時間に予約できないという状況が発生する可能性がある。この時点でオブジェクト変更ステップ(ステップ140)は資源予約失敗で終了してしまう。その場合、コア部110において、同使用時間に空いている計算機資源やストレージ資源に同アプリケーションや同データをコピーもしくは移動することにより、オブジェクト変更部150は、オブジェクト変更ステップにおいて資源予約成功で完了できる。
【0181】
図65は、請求項2に対応するサービスシナリオ変更ステップのフローであり、図3のフローと同一動作には同一符号を付与する。本実施の形態では、オブジェクト変更ステップ140において、他に予約可能なオブジェクト候補がないと判定された場合に、当該サービスについて他のサーバについて検索した履歴が1回以上あるか否かを判定し(ステップ510)、ある場合には資源予約失敗とし、ない場合(他のサーバについて検索を行っていない場合)は、再度オブジェクト変更ステップ140を行うものである。
【0182】
また、図66は本実施の形態におけるドメイン構成例である。便宜上、計算機ドメイン"1"に計算機データベース管理部"1"とアプリケーションデータベース管理部"1"とデータデータベース管理部"1"が配備され、計算機ドメイン"2"に計算機データベース管理部"2"とアプリケーションデータベース管理部"2"とデータデータベース管理部"2"が配備され、計算機ドメイン"3"に計算機データベース管理部"3"とアプリケーションデータベース管理部"3"とデータデータベース管理部"3"が配備されるモデルとする。同様、ネットワークドメイン"X"にはネットワークデータベース管理部"X"が配備されるモデルとする。本実施の形態において"X"は数字である。
【0183】
クライアント装置は、図67に示されるようなユーザオブジェクトと、種別が映像配信のアプリケーションオブジェクトと、種別が対象のデータ名のデータオブジェクトを含む資源予約メッセージをコア部110と交換する。
【0184】
サービス確認ステップ(ステップ120)において、サービス確認部130は図68に示されるようなオブジェクトやコネクションが必要であると判断する。同様に、オブジェクト・コネクション解析ステップ(ステップ130)において、オブジェクト・コネクション解析部140は、同データを保有するストレージオブジェクトと、同アプリケーションを保有する計算機オブジェクトと、同ストレージ資源と同計算機資源との間のコネクションと、同計算機資源とユーザとの間を結ぶコネクションが不足していると判断する。本実施の形態において、データとアプリケーションは別の場所、すなわち上記のストレージ資源と計算機資源とに分かれて実行してもよい。
【0185】
まず、オブジェクト変更部150は、ユーザデータベース管理部10との連携により、ユーザのエンドポイントを確認する。
【0186】
次に、オブジェクト変更部150は、対象のデータの所在を確認するために計算機ドメイン"1"に存在するデータデータベース管理部"1"と、計算機ドメイン"2"に存在するデータデータベース管理部"2"と、計算機ドメイン"3"に存在するデータデータベース管理部"3"と、に問い合わせる。
【0187】
その結果、オブジェクト変更部150は計算機ドメイン"1"のみに対象のデータが存在することを確認すると共に、同データを保有するストレージ資源の識別子も確認する。本実施の形態ではストレージ"1"が対象のアプリケーションを保有していると仮定する。
【0188】
次に、オブジェクト変更部150は、対象のアプリケーションの所在を確認するために計算機ドメイン"1"に存在するアプリケーションデータベース管理部"1"と、計算機ドメイン"2"に存在するアプリケーションデータベース管理部"2"と、計算機ドメイン"3"に存在するアプリケーションデータベース管理部"3"と、に問い合わせる。
【0189】
その結果、オブジェクト変更部150は計算機ドメイン"1"と計算機ドメイン"2"に対象のアプリケーションが存在することを確認すると共に、同アプリケーションを保有する計算機資源の識別子も確認する。本実施の形態では計算機"1"と計算機"2"が対象のアプリケーションを保有していると仮定する。
【0190】
但し、このときストレージ"1"がエレメントの使用時間もしくは特徴を満足できないと仮定する。
【0191】
この場合、ストレージ"1"に存在する対象データを他の使用可能なストレージ資源にコピーすることにより、問題が解決する。それゆえ、サービス内容変更ステップ(ステップ510)において、オブジェクト変更部150は映像配信のサービスに加え、事前に『"データ転送1"のサービスを実施する』というサービス内容に変更する。
【0192】
これにより、サービスに必要となる資源は図69に示されるようなオブジェクトとコネクションで表わされる。
【0193】
このとき、オブジェクト変更部150は新たに追加されたコネクション"3"とストレージオブジェクトのエレメントを自動的に補完しなければならない。
【0194】
移動先のストレージオブジェクトのエレメントは移動元のストレージオブジェクトに求められたエレメントの内容と同じである。同様に、コネクション"2"は移動前と移動先で同じである。但し、データのコピー作業はクライアントの所望の使用時間よりも前に完了している必要がある。
【0195】
それゆえ移動先と移動元のストレージオブジェクト、およびコネクション"3"には次のような条件のすべてを満たすようにエレメントを変更する必要がある。
・条件1:クライアントの所望の使用時間よりも以前にデータのコピー作業を実行できるために、同使用時間以前にも対象のストレージ資源が予約可能であること。
・条件2:コネクション"3"のエレメントの特徴となる帯域は、予約されるストレージ資源の有するネットワークインターフェースカードの物理帯域とする。もしくは、サービスデータベース管理部120に予め規定の帯域が設定されており、オブジェクト変更部150やコネクション変更部160がその値を参照する。
・条件3:条件2に基づき、新たに追加される使用時間は次のように設定される。
【0196】
"データ転送1"の実行所要時間=データサイズ÷条件2でのコネクション帯域
新たに追加される使用時間は次の時間よりも以前になることを満たす必要がある。
【0197】
新たに追加される使用時間<=
当初のクライアントの所望の開始時刻−"データ転送1"の実行所要時間
なお、上記において"<="とは"以前"を表現する記号とし、"−"とは"時間を遡ること"を表現する記号とする。
【0198】
新たに追加されたストレージオブジェクトと、コネクション"3"は上記の条件1〜3を満足するように予約される必要がある。
【0199】
上記のように"データ転送1"のサービスを追加した結果、データ資源の状態は図70から図71に示されるように移動する仮定する。もしくは図72から図73に示されるように移動すると仮定する。
【0200】
上記の前者の仮定に基づく場合、映像配信サービスの予約自体は図74示された内容となる。一方、後者の仮定に基づく場合、映像配信サービスの予約自体は図75に示される内容となる。具体的な資源予約処理の内容は第2の実施の形態や第3の実施の形態と同じである。
【0201】
以上により、請求項2、5に示されるサービス変更ステップを実現できる。
【0202】
上記のように、例えばアプリケーション資源やデータ資源などをコピーしたり、移動したりすることにより、資源予約メッセージの受信時における各資源の配置モデルに制限されて資源予約に失敗するケースを削減できる。
【0203】
上記の第1〜第4の実施の形態における資源予約装置100の構成要素の動作をプログラムとして構築し、資源予約装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【0204】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【0205】
10 ユーザデータベース管理部
20 データデータベース管理部
30 アプリケーションデータベース管理部
40 計算機データベース管理部
50 ストレージデータベース管理部
60 ネットワークデータベース管理部
70 トランザクションマネージャ
100 資源予約装置
110 コア部
120 サービスデータベース管理部
130 サービス確認部
140 オブジェクト・コネクション解析部
150 オブジェクト変更部
160 コネクション変更部
【特許請求の範囲】
【請求項1】
アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約装置であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続され、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換手段と、
前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段と、
前記資源予約メッセージに基づいて、前記サービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認手段と、
前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段の結果に基づいて、欠損しているオブジェクトを生成すると共に、前記メッセージ交換手段を介して前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段と前記オブジェクト変更手段の結果に基づいて、欠損しているコネクションを生成すると共に、前記メッセージ交換手段を介して、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更手段と、
前記オブジェクト変更手段と前記コネクション変更手段で探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約手段と、
を有することを特徴とする資源予約装置。
【請求項2】
前記オブジェクト変更手段は、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う手段を含む
請求項1記載の資源予約装置。
【請求項3】
前記サービス確認手段は、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する手段を含む
請求項1または2記載の資源予約装置。
【請求項4】
アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約方法であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続される資源予約装置において、
メッセージ交換手段が、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換ステップと、
サービス確認手段が、前記資源予約メッセージに基づいて、前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認ステップと、
オブジェクト・コネクション解析手段が、前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析ステップと、
オブジェクト変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップの結果に基づいて、欠損しているオブジェクトを生成すると共に、前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更ステップと、
コネクション変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップと前記オブジェクト変更ステップを実行した結果に基づいて、欠損しているコネクションを生成すると共に、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更ステップと、
資源管理手段が、前記オブジェクト変更ステップと前記コネクション変更ステップで探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約ステップと、
を実行することを特徴とする資源予約方法。
【請求項5】
前記オブジェクト変更において、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う
請求項4記載の資源予約方法。
【請求項6】
前記サービス確認ステップにおいて、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する
請求項4または5記載の資源予約方法。
【請求項7】
請求項1乃至3のいずれか1項に記載の資源予約装置を構成する各手段としてコンピュータを機能させるための資源予約プログラム。
【請求項1】
アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約装置であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続され、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換手段と、
前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段と、
前記資源予約メッセージに基づいて、前記サービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認手段と、
前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段の結果に基づいて、欠損しているオブジェクトを生成すると共に、前記メッセージ交換手段を介して前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更手段と、
前記サービス確認手段と前記オブジェクト・コネクション解析手段と前記オブジェクト変更手段の結果に基づいて、欠損しているコネクションを生成すると共に、前記メッセージ交換手段を介して、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更手段と、
前記オブジェクト変更手段と前記コネクション変更手段で探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約手段と、
を有することを特徴とする資源予約装置。
【請求項2】
前記オブジェクト変更手段は、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う手段を含む
請求項1記載の資源予約装置。
【請求項3】
前記サービス確認手段は、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する手段を含む
請求項1または2記載の資源予約装置。
【請求項4】
アプリケーション、データ、計算機、ストレージ及びネットワークを含む資源を管理し、クライアント装置からの予約要求に応じて資源を予約する資源予約方法であって、
ユーザ、前記アプリケーション、前記データ、前記計算機、前記ストレージ及び前記ネットワークの各情報を管理する複数のデータベース管理手段と接続される資源予約装置において、
メッセージ交換手段が、前記クライアント装置との間で、所要サービスに対応するオブジェクトとコネクションが指定された資源予約メッセージを交換するメッセージ交換ステップと、
サービス確認手段が、前記資源予約メッセージに基づいて、前記複数のデータベース管理手段と管理対象のドメイン及びドメイン間の関係及びコネクションの端点が特定可能な情報を保持するサービス記憶手段を参照して、サービス内容と性能保証の種別と、サービスのために必要となるオブジェクトとコネクション、アプリケーションデータとデータの配置方法、ネットワークインフラ条件に基づくコネクションの資源予約の必要性の、一部または全部について決定するサービス確認ステップと、
オブジェクト・コネクション解析手段が、前記資源予約メッセージにより前記クライアント装置から取得したオブジェクト群とコネクション群の存在や内容を確認するオブジェクト・コネクション解析ステップと、
オブジェクト変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップの結果に基づいて、欠損しているオブジェクトを生成すると共に、前記各データベース管理手段との間でデータ交換を行うことによりオブジェクトの内容を補完してオブジェクト候補として前記サービスデータデータベース管理手段に格納するオブジェクト変更ステップと、
コネクション変更手段が、前記サービス確認ステップと前記オブジェクト・コネクション解析ステップと前記オブジェクト変更ステップを実行した結果に基づいて、欠損しているコネクションを生成すると共に、ネットワークデータを管理するデータベース管理手段とのデータ交換を行うことにより、コネクションの内容を補完してコネクション候補として前記サービス記憶手段に格納するコネクション変更ステップと、
資源管理手段が、前記オブジェクト変更ステップと前記コネクション変更ステップで探索され、前記サービスデータベース管理手段に格納されたオブジェクト群とコネクション群の組み合わせからなるサービスパターンの中から実際に資源予約する一つのサービスパターンを選択し、選択されたオブジェクトまたはコネクションを構成する資源を管理している各々のデータベース管理手段と連携して資源予約を行う機能を有する資源予約ステップと、
を実行することを特徴とする資源予約方法。
【請求項5】
前記オブジェクト変更において、
予約可能なオブジェクト候補が無い場合に、サービス内容を変更して、再度処理を行う
請求項4記載の資源予約方法。
【請求項6】
前記サービス確認ステップにおいて、
前記資源予約メッセージに基づいて、ドメインのタイプに関する情報を格納した前記サービス記憶手段を参照する、
または、
資源予約装置を実現するソフトウェアのソースコードに物理的に記載されているか否かの判断、
のいずれかにより、前記資源予約メッセージで要求されているサービスに対し、ネットワーク資源を予約するか否かを判定する
請求項4または5記載の資源予約方法。
【請求項7】
請求項1乃至3のいずれか1項に記載の資源予約装置を構成する各手段としてコンピュータを機能させるための資源予約プログラム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【図62】
【図63】
【図64】
【図65】
【図66】
【図67】
【図68】
【図69】
【図70】
【図71】
【図72】
【図73】
【図74】
【図75】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図25】
【図26】
【図27】
【図28】
【図29】
【図30】
【図31】
【図32】
【図33】
【図34】
【図35】
【図36】
【図37】
【図38】
【図39】
【図40】
【図41】
【図42】
【図43】
【図44】
【図45】
【図46】
【図47】
【図48】
【図49】
【図50】
【図51】
【図52】
【図53】
【図54】
【図55】
【図56】
【図57】
【図58】
【図59】
【図60】
【図61】
【図62】
【図63】
【図64】
【図65】
【図66】
【図67】
【図68】
【図69】
【図70】
【図71】
【図72】
【図73】
【図74】
【図75】
【公開番号】特開2012−150569(P2012−150569A)
【公開日】平成24年8月9日(2012.8.9)
【国際特許分類】
【出願番号】特願2011−7235(P2011−7235)
【出願日】平成23年1月17日(2011.1.17)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 平成22年8月25日 独立行政法人産業技術総合研究所主催の「科学技術振興調整費 先端融合領域イノベーション創出拠点の形成 第3回「光ネットワーク超低エネルギー化技術拠点」シンポジウム」において文書をもって発表
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 平成22年11月4日 社団法人電子情報通信学会発行の「電子情報通信学会技術研究報告 信学技報 Vol.110 No.269」に発表
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
【公開日】平成24年8月9日(2012.8.9)
【国際特許分類】
【出願日】平成23年1月17日(2011.1.17)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 平成22年8月25日 独立行政法人産業技術総合研究所主催の「科学技術振興調整費 先端融合領域イノベーション創出拠点の形成 第3回「光ネットワーク超低エネルギー化技術拠点」シンポジウム」において文書をもって発表
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 平成22年11月4日 社団法人電子情報通信学会発行の「電子情報通信学会技術研究報告 信学技報 Vol.110 No.269」に発表
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.イーサネット
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】
[ Back to top ]