コンバージド・サービスフレームワークのコンテクスト・マネージャの方法及びシステム
階層ネットワークにおけるコンバージド・サービスの利用を容易にする方法、装置、及び電子装置が開示される。本方法は、コンバージド・サービス・インスタンスを複数の独立ネットワークに跨ってエンドユーザに提供するステップと、階層制御下位要素を、コンテクスト・マネージャを使用して選択するステップと、階層制御下位要素によって、コンバージド・サービス・インスタンスの構成を制御するステップとを含む。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、コンバージド・サービスを複数のドメインに跨って管理する方法及びシステムに関する。本発明は更に、ピアツーピア構造ではなく、階層的に構成されるドメインに関する。
【背景技術】
【0002】
種々の種類のネットワークがこの技術分野において公知になっている。これらのネットワークは、例として、アクセスネットワーク、制御ネットワーク、及びサービスネットワークを含む(この場合、この技術分野の当業者であれば、いずれの所定のネットワークも、これらのネットワークタイプのうちの一つ以上のネットワークタイプとして利用することができるので、一つの所定のネットワークは、例えばアクセスネットワーク及び制御ネットワークの両方を含むことができることが理解できるであろう)。一つのネットワークからのサービスは、第2のネットワークからのサービスと、部分的に、または全体的に統合することができる。しかしながら、更に典型的には、このようなネットワークは互いから大なり小なり独立した形で動作する(本明細書において使用されるように、「独立」という用語は、技術的に独立している状態(例えば、2つのネットワークが、例えば接続を容易にする手段が無いために互いに対してアクセスすることができない場合)、及び/又は動作的に独立している状態(例えば、2つのネットワークが、透過的な相互作用を全て、または部分的に排除する形で個別に管理される場合)を指す)。
【0003】
その結果、典型的な最新ユーザは膨大な数の異なるサービス及び/又はエンドユーザインターフェースデバイスにアクセスすることができ、これらのサービス及び/又はエンドユーザインターフェースデバイスは多くの場合、互いに対して完全に独立して動作する。アプリケーションによって所定のエンドユーザ(または、他のネットワーク要素またはノード)は、種々のサービス及びアクションにアクセスすることができる。別の表現をすると、ネットワークをコンジットとして接続を行ない、コンジットを介して、アプリケーション利用サービスが所定のエンドユーザに届く。
【0004】
現時点では、大抵は、所定のアプリケーションには、相当程度の予備知識、及び垂直認識を駆使して、所定のネットワークにおいて上手く作業する、または所定のネットワークを利用して上手く作業するということが必要となる。この「垂直認識」とは、コンテンツソースとコンテンツシンクとの間の帯域、遅延、またはジッタの認識を指す。「垂直認識」として更に、接続を設定し、そして「遮断する」ための特定の制御フォーマットの認識を挙げることができる。垂直認識として、ユーザ、アプリケーション、またはデバイスのネットワーク固有識別子の認識を挙げることができる。垂直認識とは、オープンシステム相互接続(OSI)「スタック」全体の認識を意味する。この状況から、ほとんどのネットワークがどちらにしても、互いに対して独立しているので、複数のネットワークに跨った所定のアプリケーションの到達範囲を拡大しようとする全ての意図を大きく阻害することになるという簡単な事実に思い当たることができる。
【0005】
このタイプの環境において動作することができる一つのグループのアプリケーションがコンバージド・サービスである。コンバージド・サービスは、調整サービス、継続サービス、及び統合サービスを含むことができる。ユーザ体験は、これがコンバージド・サービスであるかどうかを判断する際に不変である。一つのサービスは、当該サービスがアクセスネットワーク、デバイス、または管理ドメイン(サービス所有者)を通過するときに、同じタスクを同じ方法で実行しているとユーザが知覚する場合に「継続性」を示すが、当該サービスは、WLAN VoIPボイスコールと比較されるときのセルラーボイスコールのように、ネットワーク境界を横切って異なる形で実行される可能性がある。2つ以上のサービスは、これらのサービスの原形において、これらのサービスが互いに対して独立していると仮定すると「調整される」ことになるが、これらのサービスを構成して、これらのサービスが互いに相互作用するようにする。すなわち、一方のサービスが当該サービスの動作を、他方のサービスの状態変化に応答して変化させる。例えば、TVのビデオストリームは、電話が鳴ると停止する。複数のサービスは、これらのサービスを、これらのサービスがユーザにとって単一のサービスに見える程度に組み合わせるときに「統合される」。
【0006】
このような懸案事項を解決する一つの提案解決策には、一方の複数の独立アクセスネットワーク、制御ネットワーク、及びサービスネットワークと、他方の集中アプリケーションレイヤとの間に配置されるコンバージド・サービス・ファブリックが含まれる(例えば、2004年11月22日に出願され、かつ出願番号60/630,106を有する「コンバージド・サービス・ファブリックを容易にする方法」と題する既に出願されている仮特許出願を参照されたく、この仮特許出願の内容全体が本明細書において参照されることにより、本明細書に組み込まれる)。
【0007】
コンバージド・サービス・ファブリック(CSF)によって、アクセスネットワークからのサービスまたはアプリケーションの分離が可能になる。CSFアーキテクチャ要素110によって行なわれるこの分離によって、図1に示すように、2つの論理的に異なる空間、すなわちアプリケーション空間120及びアクセス空間130が形成されている。正しく構成され、かつ展開される場合には、このようなコンバージド・サービス・ファブリックは、複数のアクセスネットワーク及び制御ネットワークに対するアプリケーションサーバとして、そして複数のサービスネットワークに対する制御サーバまたはアプリケーションゲートウェイとして効果的に機能する。異なる側面で見ると、従来のネットワークの操作性を維持するために、コンバージド・サービス・ファブリックは、サービスネットワークと、アクセスネットワークまたは制御ネットワークの動作の仕方に一致する仕方で相互作用するとともに、更にアクセスネットワークまたは制御ネットワークと、サービスネットワークの動作の仕方に一致する仕方で相互作用することが好ましい。このようなコンバージド・サービス・ファブリックは通常、エンドユーザ情報、サービス情報、ネットワーク情報、デバイス情報、リソース情報、アプリケーション情報、及び/又はエッジゲートウェイ情報のうちの少なくとも一つに関する情報にアクセスすることができる。
【0008】
CSFのこれまでの具体例には、分散的に、または階層的に展開することができ、かつそれでもピアツーピアモデルを利用する制御アーキテクチャが開示されていない。CSFはピアとして動作するので、ユーザによるコンバージド・サービス・リクエストは、承認され、次に制御アーキテクチャで処理される必要があるので、セットアップ時間が制御アーキテクチャ応答時間によって制限される。情報を複数のアプリケーション及びアクセスネットワークに跨って収集し、そして解釈するCSFシステムの性質により、コンバージド・サービスは更に、ネットワーク全体の個々の各制御要素の応答時間によって制限されることになる。複数のアプリケーション及びアクセスネットワークに跨るユーザのリソース状態に関する完全な認識は、ネットワーク間依存性を構築する必要があるという努力を払うことにより得られる。この制約によって、コンバージド・サービス・システムによるタイムリーな応答が阻止される恐れがある。遅延の影響を受け易いサービスは脱落する恐れがある、またはビデオのグリッチまたはオーディオ通信のギャップのような許容できない性能を示す。現在の技術では、コンバージド・サービスの可用性を、アクセスネットワーク群またはサービスネットワーク群のうちの一つのネットワークで輻輳トラフィックが発生している状態で動作している場合に提供することもできない。このようなトラフィックによって、CSF制御要素によるコンバージド・サービス・リクエストのタイムリーな処理が阻止される恐れがある。サービスプロバイダが提供するコンバージド・サービスは、品質を合理的に保証することができない場合には故障する可能性がある。
【発明の概要】
【課題を解決するための手段】
【0009】
階層ネットワークにおけるコンバージド・サービスの利用を容易にする方法、装置、及び電子装置が開示される。本方法は、コンバージド・サービス・インスタンスを複数の独立ネットワーク全体でエンドユーザに提供するステップと、階層制御下位要素を、コンテクスト・マネージャを使用して選択するステップと、階層制御下位要素によって、コンバージド・サービス・インスタンスの構成を制御するステップとを含む。
【図面の簡単な説明】
【0010】
【図1】本発明の可能な実施形態によるコンバージド・サービス・ファブリックの例示的な図を示している。
【図2】ピア方式で動作するコンバージド・サービス・ファブリックの制御アーキテクチャの動作を示している。
【図3】階層的に動作するコンバージド・サービス・ファブリックの制御アーキテクチャの動作の一つの可能な実施形態を示している。
【図4】コンテクスト・マネージャの一つの実施形態を示している。
【図5】ピアコンバージド・サービス・ファブリック・アーキテクチャの一つの実施形態を示している。
【図6】コンバージド・サービス・ファブリック内へのこれらの制御要素及びサポート機能の統合の一つの実施形態を示している。
【図7】階層型コンバージド・サービス・ファブリック内に配置ことができる分散制御下位要素の可能な実施形態を示している。
【図8】コンテクスト・マネージャ・リクエストを発行する方法の一つの実施形態を示している。
【図9】コンテクスト・マネージャのサービス・ポリシーを処理する方法の一つの実施形態を示している。
【図10】コンテクスト・マネージャを更新する方法の一つの実施形態を示している。
【図11】ユーザ端末またはサーバとして動作して本発明を実行するコンピュータ・システムの可能な構成を示している。
【発明を実施するための形態】
【0011】
本発明に関して上に列挙した他の利点、及び特徴が得られる態様について説明するために、上に簡潔に記載した本発明に関する更に具体的な説明が、添付の図面に示される本発明の特定の実施形態を参照することにより行なわれる。これらの図面は、本発明の代表的な実施形態のみを示しているので、本発明の範囲を制限するものとして捉えられるべきではないことを認識し、本発明について、更に別の特異性及び詳細を用い、添付の図面を利用しながら記述し、そして説明することとする。
【0012】
本発明の更に別の特徴及び利点は、以下に続く記載に示され、そして記載から部分的に明らかになる、または本発明を実施することにより習得することができる。本発明の特徴及び利点は、添付の請求項において具体的に挙げられる手段及び組み合わせによって実現され、そして達成される。本発明のこれらの特徴及び他の特徴は、以下の記述及び添付の請求項から更に完全な形で明らかになる、または本明細書に示される本発明を実施することにより習得することができる。
【0013】
本発明の種々の実施形態を以下に詳細に説明する。特定の実施形態が説明されるが、この説明は例示のためにのみ行なわれることを理解されたい。関連分野の当業者であれば、他の構成要素及び構成を、本発明の思想及び範囲から逸脱しない限り使用することができることが理解できるであろう。
【0014】
本発明は、方法、装置、及び電子装置のような種々の実施形態、及び本発明の基本コンセプトに関連する他の実施形態を含む。
階層ネットワークにおけるコンバージド・サービスの利用を容易にする方法、装置、及び電子装置が開示される。コンバージド・サービス・インスタンスは、複数の独立ネットワーク全体でエンドユーザに提供される。コンバージド・サービス・ファブリック(CSF)制御アーキテクチャでは、階層制御下位要素をコンテクスト・マネージャを使用して選択する。選択される階層制御下位要素は、コンバージド・サービス・インスタンスの構成を制御する。CSF制御アーキテクチャは、所定の権限を委任し、(通常の短いユーザクエリに対する既定の応答のような)所定の嗜好情報をキャッシュし、ギャップを埋め、階層に対するクエリを、解決できない曖昧さに応答して実行する機能を提供する。
【0015】
いずれのサービスの場合も、アプリケーションサーバはアプリケーションユーザとは異なり、かつアプリケーションユーザから遠く離れている。CSFモデルでは、当該アプリケーションに関連する情報に対する主要な責任は、アプリケーションの最も近くに位置する或るCSF制御要素にある。しかしながら、この制御要素はエンドユーザからずっと遠く離れて位置する可能性がある。この制御要素は実際には、当該要素の責任を、アプリケーションから「相対的に遠い」が、エンドユーザには相対的に近い調整機能に委任する。このような委任の目的は、状態変化または状態リクエストに対する応答性を高めることにある。
【0016】
このアプローチは、複数のサービスを調整する場合には最適とはならないことに留意されたい。すなわち、一つのアプリケーションに関してエンドユーザに(応答時間の点で)「最も近い」制御要素は、別のアプリケーションに関して最も近いことにはならない。これは、ユーザに物理的に最も近い単一の制御要素を求めることができるが、この制御要素は、情報を他のネットワークの要素群から取り出す、または命令を他のネットワークの要素群に発行する必要があるからである。従って、制御要素を最良の形で選択するには、ジョイント最適化が必要である。
【0017】
最短の全体応答時間をアプリケーション群に跨って提供するステップでは、使用状態において、一つのアプリケーションに対する応答と、他のアプリケーションに対する応答とのバランスをとる。このアプローチによって、一層良好な調整ポイントが得られ、そしてその結果、アプリケーションごとのアプローチよりも良好な応答が得られる。ここに開示されるアイデアは、状態情報を配信して、情報の保留の方に傾く信用と、情報の提供の方に傾く応答性とのバランスをとる階層構造である。更に、制御要素が「中心」に近くなると、制御要素からの可視性が高くなる。この本質的な例が、ネットワーク全体を見渡す機能を備えるサービスプロバイダネットワークのコアにおける制御要素であり、これに対して、ローカルエリアネットワークの制御要素は、LAN、及び可能な部分として、ネットワーク全体の小部分しか見渡すことができない。ワイドエリアネットワーク(WAN)では本質的に、相対的に広い領域を見渡すことができる状況が実現し、各制御要素が、所定のアプリケーションまたは一つの情報から見たときに、階層の最上部に位置することができることに注目されたい。
【0018】
図2は、ピア方式で動作するCSFの制御アーキテクチャの動作200を示している。プロセスは、アプリケーション、ユーザ、または他のエンティティがサービスリクエストを送信する(ブロック210)と始まる。CSF要素はリクエストを受信することができる(ブロック220)。API/インターフェース受信段階230では、CSF要素はリクエストを構文分析し、そしてリクエストを適切な処理要素に送信することができる(ブロック232)。処理段階240では、ユーザ嗜好情報マネージャ242は、ユーザ嗜好情報(データベース及び処理のような)を供給するのに対し、セッションモニタ244は状態を判断し、そしてリソースマネージャ246はサービスを実行するために必要なリソースを決定する。サービス決定段階250では、制御アーキテクチャがコンバージド・サービスを管理する(ブロック252)。CSF要素が、必要なサービスを実行することができる場合、当該要素はAPI/インターフェースレポート段階260に進む。CSF要素はサービスリクエスト解決をリクエスト側エンティティにレポートすることができ(ブロック262)、そしてサービスリクエストまたはリクエスト群、或いは応答を、リソース所有者(アクセスネットワーク、クライアント、RGWなど)及び他の受信者またはリクエスタに発行する(ブロック264)。CSF要素が、必要なサービスを実行することができない、または必要なサービスを実行しようとしない場合、当該要素はサービス転送段階270に進み、この段階では、CSFサービスマネジメントがサービスリクエストを別のCSF要素に送信する(ブロック272)。
【0019】
図3は、階層構造で動作するCSFの制御アーキテクチャの動作300の一つの可能な実施形態を示している。CSFのこの実施形態の階層構造は、ピア構造が、コンテクスト・マネージャ310を設けることにより改良されるように作用する。コンテクスト・マネージャ310は、処理段階中に収集されるコンテクスト情報を受信して、どのCSF制御要素が、リクエストされるタスクを管理し、そして実行するために最良に適合しているかについて判断することができる。この構造によって、制御下位要素をサービスアプリケーション、またはエンドユーザの近傍に配置することができ、サービスの効果を最大化することができる。
【0020】
上の階層構造が与えられる場合、ネットワークの所定のCSF制御要素は、ローカルリソースが所望のコンバージド・サービス動作を構成することができる場合に、アプリケーションまたはユーザからのコンバージド・サービス・リクエストを解決するように動作することができる。しかしながら、更に別の可能化要素が、この自律型サービス調整をコンバージド・サービス・リクエストに対してこの状況において可能にする必要がある。コンテクスト・マネージャは、このアクションを実現するイネイブラーとして動作することができる。
【0021】
図4は、コンテクスト・マネージャ(CM)310の一つの実施形態を示している。CM310は、コンテクストデータコレクタ410と、コンテクストデータプロセッサ420と、そしてコンテクストデータマネージャ430と、を含むことができる。
【0022】
コンテクストデータコレクタ410はコンテクスト状態情報を収集し、コンテクスト状態情報は、ユーザの、及び彼の、または彼女のアプリケーションのロケーション(物理ロケーション、ストリート/ルームロケーション、ネットワークロケーションなど)、デバイス近接度、ユーザプレゼンス、可用性、及び嗜好を含む。CM310を主として使用することにより、必要な制御要素を決定して、コンバージド・サービス・リクエストを、当該リクエストがサービスを実行するために必要なユーザ及びアプリケーション及びネットワークの現在のロケーションに対して発行されたときに可能にする。階層の局所性として、単一デバイス内の複数のサービスまたはアプリケーション、ピアエリアネットワーク内で動作する複数のサービスまたはアプリケーション、或るデバイスにデバイス−ローカルアプリケーションとともに配信されるサービス、及び宅内ネットワークに配信される複数のワイドエリアネットワーク利用サービスを挙げることができる。
【0023】
コンテクストデータプロセッサ420は、ロケーションを処理し、ロケーションを既知の意味、嗜好、現在のユーザ識別情報、可用性、及びプレゼンス情報に関連付けることにより、ユーザの現在のコンテクストを生成することができる。CM(コンテクスト・マネージャ)310による処理によって、確実に、収集情報がアプリケーション及びユーザに関する一定のコンテクスト解釈となる。特定のコンテクスト処理条件及びアクションとして、ネットワーク群全体、デバイス群全体、アプリケーション群全体、ユーザが置かれたコンテクスト(状況)に基づくユーザ宛てのインスタンスの優先度、非一貫性の排除、異なるデバイス、ゲートウェイ、及び/又はアクセスネットワークにおけるサポートレイヤから収集されるデータの一貫性の維持、コールバックリクエストに基づくアプリケーションへの適切なトリガーの送信、及び種々のアプリケーション及び他のネットワークCMリクエスタに対する、ユーザについて収集されるコンテクスト情報及びコンテクスト変化のプッシュ及びプルを挙げることができる。
【0024】
コンテクストデータマネージャ430は、データベースの更新及び同期化を、CSFの階層構造を介して行なって、ユーザ及び当該ユーザのリソースの一貫した状態を維持することができる。
【0025】
ピア構造及び階層構造の両方において、CSFアーキテクチャは、図5に示すように、多くの制御要素及びサポート機能を含むことができる。コンバージェンス調整機能(convergence coordination function:CCF)とも表記される制御要素510は、各アクセス/サービスネットワークによって生成される複数の嗜好情報、リソース、及びインスタンスを調整することにより、一貫性のある集中管理を行ない、そして維持することができる。CCF510は、一連のサポート機能と、この目的を推進するために相互作用することができる。これらのサポート機能として、ネットワークサポート機能(NSF)520、エッジノードサポート機能(ESF)530、及びクライアントサポート機能(CLSF)540を挙げることができる。NSF520は、各アクセスネットワークのインスタンス制御とのインターフェースとなる。ESF530は、各アクセスネットワーク及びエッジノード用デバイスとのインターフェースとなる。CLSF540は、エンドユーザクライアントとのインターフェースとなる。
【0026】
図6は、CSF600内のこれらの制御要素及びサポート機能の相互作用の可能な実施形態を示している。第1ネットワークアプリケーション610及び第2ネットワークアプリケーション620は、CCF510と相互作用する。2つのアプリケーションについてしか、この例では説明していないが、更に多くのアプリケーションを使用することができる。CCF510は、これらのサポート機能の各サポート機能を調整し、そして制御することができる。NSF520は、コールサーバ及び他のネットワークデバイス630とのインターフェースを生成し、そして維持する。ESF530は、エッジコンポーネント640とのインターフェースを生成し、そして維持する。CLSF540は、クライアントデバイス650とのインターフェースを生成し、そして維持する。
【0027】
コンテクスト・マネージャを適用することにより、分散制御モデルが実現し、分散制御モデルでは、例えばCSF−CCF制御要素をネットワーク、エッジデバイス、及びクライアントデバイスに跨って部分的に、かつ階層的に分散させる。図7に示すように、分散CSF−CCF下位要素は、個人ネットワーク650(CSF−CCF’710)、エッジデバイス640(CSF−CCF”720)、及び/又はエンドクライアント650(CSF−CCF’’’730)に格納することができる。各CCF下位要素は、当該下位要素よりも高位の上位要素510よりも狭い範囲を有することができる。「範囲」とはこの場合、所定の一連のアプリケーションの局所性の意味を指すが、その理由は、これらのアプリケーションが、ユーザのロケーションに関連付けられるからである。分散CCF制御下位要素は、ネットワークデバイス630、エッジデバイス640、またはクライアント要素650のうちの一つに対してローカルなアプリケーションに、または一つの近傍に位置するアプリケーションに関連付けられるとともに、ネットワークの階層よりも上の上位要素とのインターフェースとなる。各ネットワークエンティティは、自律型アプリケーション、ネットワークアプリケーション(Net Apps[2])740、エッジアプリケーション(Edge Apps[2])750、及びクライアントアプリケーション(Client Apps[2])760を利用して分散させることができる。これらのアプリケーションの各アプリケーションは、アプリケーション自体が物理的にネットワーク全体に分散されていても、特定のアプリケーション及びアクセスネットワークに関連付けることができる。
【0028】
コンテクスト・マネージャ(CM)310は、CSFネットワークに含まれるシステムであり、このシステムは、アプリケーションをエンドユーザが利用するために使用されるコンテクスト状態情報を収集し、処理し、そして供給する。CM310は、入力を、嗜好情報マネージャ242、セッションモニタ244、及びリソースマネージャ246のような制御要素イネーブラから受信する。セッションモニタ244は更に、ユーザのロケーションを、ネットワークのロケーションサーバ及びプレゼンスサーバを介して求める機構を含む。CM310はこれらの入力を、コンバージド・サービス・リクエストに照らし合わせて処理することにより、コンバージド・サービス・リクエストが、階層構造における現在の制御要素の階層で解決されているかどうか、またはリクエストを上位の制御階層に渡して、更に処理する必要があるかどうかについて判断する。従って、CM310は、CSFアルゴリズムのサービスマネージャ要素250が、コンバージド・サービス・リクエストを誰に、例えばリソース所有者(AN,クライアント、RGWなど)に発行すべきかどうかを決定することができるかどうかを、またはサービスマネージャ要素250が、相対的に高い階層の階層制御を行なう上位要素に要求して、リクエストを処理させる必要があるかどうかを判断することができる。上位要素はリクエストを処理する、または当該リクエストの処理を、下位要素よりも上位の階層制御であるが上位要素よりも下位の階層制御を行なう中間下位要素に任せることができる。
【0029】
図8は、コンテクスト・マネージャリクエストを発行する方法800の一つの実施形態を示している。CM310は、サービスを要求するリクエストを受信する(ブロック802)。CMリクエストが発行リクエストではない場合(ブロック804)、更なる発行アクションは必要ではない(ブロック806)。CMリクエストが発行リクエストである場合(ブロック804)、CM発行リクエストを処理する(ブロック808)。CMリクエストが終了した場合(ブロック810)、CMはリクエストに対して何も行なうことがない(ブロック806)。CMリクエストを、異なる制御要素にプッシュする必要がある場合(ブロック812)、CMリクエストを現在のシグナリングレベルと同じレベルでプッシュするか(ブロック814)、現在のシグナリングレベルよりも高いレベルでプッシュするか(ブロック816)、又は現在のシグナリングレベルよりも低いレベルでプッシュする(ブロック818)。次に、制御要素は、CM発行リクエストを生成する(ブロック820)。
【0030】
図9は、CM310を更新する方法900の一つの実施形態を示している。CM310はCMリクエストを受信する(ブロック902)。CMリクエストが更新ではない場合(ブロック904)、更なるアクションは必要ではない(ブロック906)。これ以外の場合、CM更新リクエストを処理する(ブロック908)。CMリクエストが、更新嗜好情報をプッシュすることである場合か(ブロック910)、更新リソースをプッシュすることである場合か(ブロック912)、または更新状態データをプッシュすることである場合(ブロック914)、嗜好情報をCM310に保存するか(ブロック916)、リソースをCM310に保存するか(ブロック918)、または状態データをCM310に保存する(ブロック920)。CMリクエストが、更新嗜好情報をプルすることである場合(ブロック922)、更新リソースをプルすることである場合(ブロック924)、または更新状態データをプルすることである場合(ブロック926)、嗜好情報をCM310から読み出すか(ブロック928)、リソースをCM310から読み出すか(ブロック930)、または状態データをCM310から読み出す(ブロック932)。次に、CMはCM発行リクエストを生成する(ブロック934)。
【0031】
図10は、CM310を更新する方法1000の一つの実施形態を示している。CM310はCMリクエストを受信する(ブロック1002)。CMリクエストがサービスを要求するリクエストである場合(ブロック1004)、更なるアクションは必要ではない(ブロック1006)。これ以外の場合、CMサービスポリシーリクエストを処理する(ブロック1008)。CMリクエストで、嗜好情報の処理をリクエストする場合か(ブロック1010)、リソースの処理をリクエストする場合か(ブロック1012)、または状態ポリシーの処理をリクエストする場合(ブロック1014)、嗜好情報をCM310に保存するか(ブロック1016)、リソースをCM310に保存するか(ブロック1018)、または状態データをCM310に保存する(ブロック1020)。嗜好情報ポリシー違反が発生する場合か(ブロック1022)、リソースポリシー違反が発生する場合か(ブロック1024)、または状態ポリシー違反が発生する場合(ブロック1026)、CM310は、嗜好情報及び嗜好情報ポリシー出力を読み出すか(ブロック1028)、リソース及びリソースポリシー出力を読み出すか(ブロック1030)、または状態及び状態ポリシー出力を読み出す(ブロック1032)。次に、CMはCM発行リクエストを生成する(ブロック1034)。
【0032】
図11は、ユーザ端末またはサーバとして動作して本発明を実行するコンピュータシステム1100の可能な構成を示している。コンピュータシステム1100は、コントローラ/プロセッサ1110と、キャッシュ1125を備えるメモリ1120と、ディスプレイ1130と、データベースインターフェース1140と、入力/出力デバイスインターフェース1150と、そしてネットワークインターフェース1160と、を含むことができ、これらの構成要素はバス1170を介して接続される。
【0033】
コントローラ/プロセッサ1110は、この技術分野の当業者に公知のいずれのプログラムプロセッサとすることもできる。しかしながら、デシジョンサポート方法は、汎用コンピュータまたは特定用途向けコンピュータ、プログラムマイクロプロセッサまたはマイクロコントローラ、周辺集積回路素子、特定用途向け集積回路または他の集積回路で実行する、個別素子回路のようなハードウェア電子論理回路で実行する、プログラマブルロジックアレイ、フィールドプログラマブルゲートアレイなどのようなプログラマブルロジックデバイスで実行することもできる。一般的に、本明細書に記載されるデシジョンサポート方法を実行することができるいずれかのデバイスまたはデバイス群を使用して、本発明のデシジョンサポートシステム機能を実行することができる。
【0034】
メモリ1120は、揮発性データストレージ及び不揮発性データストレージを含むことができ、データストレージとして、RAM、キャッシュ、ハードドライブ、CD−ROMドライブ、テープドライブ、または取り外し可能なストレージディスクのような一つ以上の電気メモリ、磁気メモリ、または光メモリを挙げることができる。メモリは、特定のデータに高速にアクセスするキャッシュ1125を有することができる。
【0035】
入力/出力インターフェース1150は、一つ以上の入力デバイスに接続することができ、入力デバイスとして、キーボード、マウス、ペン操作タッチスクリーンまたはモニタ、音声認識デバイス、または入力を受け入れる他のいずれかのデバイスを挙げることができる。入力/出力インターフェース1150は、モニタ、プリンタ、ディスクドライブ、スピーカのような一つ以上の出力デバイスに、またはデータを出力するために設けられる他のいずれかのデバイスに接続することもできる。
【0036】
ネットワークインターフェース1160は、通信デバイス、モデム、ネットワークインターフェースカード、トランシーバ、または信号をネットワークを介して送受信することができる他のいずれかのデバイスに接続することができる。コンピュータシステム1100の構成要素は、電気バス1170を介して接続することができる、または無線接続することができる。
【0037】
クライアントソフトウェア及びデータベースには、コントローラ/プロセッサ1110がメモリ1120から、またはデータベースインターフェース1140を介してアクセスすることができ、そしてクライアントソフトウェア及びデータベースとして、例えばデータベースアプリケーション、ワード処理アプリケーション、課金システムのようなクライアント側のクライアント/サーバアプリケーションだけでなく、本発明のデシジョンサポート機能を具体化する構成要素を挙げることができる。コンピュータシステム1100は、例えばWindowsまたはUNIXのようないずれかのオペレーティングシステムを実装することができる。クライアント/サーバソフトウェアは、例えばABAP,C,C++,Java,またはVisual Basicのようなプログラミング言語で記述することができる。
【0038】
必要である訳ではないが、本発明は、汎用コンピュータのような電子装置が実行する、プログラムモジュールのようなコンピュータ実行可能な命令の一般的な記述形式で少なくとも部分的に記述される。一般的に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実装するルーチンプログラム、オブジェクト、コンポーネント、データ構造などを含む。更に、この技術分野の当業者であれば、本発明の他の実施形態は、パーソナルコンピュータ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサ応用電子機器またはプログラマブルコンシューマ電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実施することができることが理解できるであろう。
【0039】
実施形態は分散コンピューティング環境において実現することもでき、分散コンピューティング環境では、タスクは、通信ネットワークを介して接続される(有線リンク、無線リンクのいずれかによって、または有線リンク及び無線リンクの組み合わせによって)自律遠隔操作型処理デバイスによって実行される。
【0040】
本発明の範囲内の実施形態は、コンピュータ実行可能な命令またはデータ構造を格納する、または記録するコンピュータ読み取り可能な媒体を含むこともできる。このようなコンピュータ読み取り可能な媒体は、汎用コンピュータまたは特定用途向けコンピュータがアクセスすることができる、いずれかの利用可能な媒体とすることができる。非制限的な例として、このようなコンピュータ読み取り可能な媒体は、RAM,ROM,EEPROM,CD−ROM、または他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、或いは所望のプログラムコード手段をコンピュータ実行可能な命令またはデータ構造の形で格納する、または記録するために使用することができる他のいずれかの媒体を含むことができる。情報がネットワーク接続を介して、または別の通信接続(有線接続、無線接続のいずれか、または有線接続及び無線接続の組み合わせ)を介してコンピュータに転送される、または供給される場合、コンピュータは当該接続をコンピュータ読み取り可能な媒体として正しく認識する。従って、いずれのこのような接続も、コンピュータ読み取り可能な媒体と正しく表記される。上に列挙した要素の組み合わせも、コンピュータ読み取り可能な媒体の範囲に含まれるべきである。
【0041】
コンピュータ実行可能な命令は、例えば汎用コンピュータ、特定用途向けコンピュータ、または特定用途向け処理デバイスに指示して、所定の機能、または機能グループを実行させるように作用する命令及びデータを含む。コンピュータ実行可能な命令は更に、コンピュータによって、スタンドアローンで、またはネットワーク環境で実行されるプログラムモジュールを含む。一般的に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、及びデータ構造などを含む。データ構造に関連するコンピュータ実行可能な命令、及びプログラムモジュールは、本明細書に開示される方法のステップを実行するプログラムコード手段の例を表わす。このような実行可能な命令または関連するデータ構造の特定のシーケンスは、このようなステップに記載される機能を実行する対応する動作の例を表わす。
【0042】
上の説明には特定の詳細が含まれるが、これらの詳細は請求項を制限するものとしては決して捉えられるべきではない。本発明について説明される実施形態の他の構成は、本発明の範囲の一部である。例えば、本発明の原理は、各個人ユーザに適用することができ、各ユーザはこのようなシステムを個々に展開することができる。これにより各ユーザは、本発明の利点を、非常に多くの可能なアプリケーションのいずれの一つのアプリケーションも本明細書において説明される機能を必要としない場合でも、利用することができる。別の表現をすると、各電子装置がコンテンツを種々の可能な態様で処理する構成の電子装置群の多数の例が存在し得る。全てのエンドユーザが使用するシステムが、必ずしも一つだけで済ませる訳ではない。従って、提示されるどのような特定の例でもなく、添付の請求項、及びこれらの請求項の法的な均等物によってのみ本発明が規定されるべきである。
【技術分野】
【0001】
本発明は、コンバージド・サービスを複数のドメインに跨って管理する方法及びシステムに関する。本発明は更に、ピアツーピア構造ではなく、階層的に構成されるドメインに関する。
【背景技術】
【0002】
種々の種類のネットワークがこの技術分野において公知になっている。これらのネットワークは、例として、アクセスネットワーク、制御ネットワーク、及びサービスネットワークを含む(この場合、この技術分野の当業者であれば、いずれの所定のネットワークも、これらのネットワークタイプのうちの一つ以上のネットワークタイプとして利用することができるので、一つの所定のネットワークは、例えばアクセスネットワーク及び制御ネットワークの両方を含むことができることが理解できるであろう)。一つのネットワークからのサービスは、第2のネットワークからのサービスと、部分的に、または全体的に統合することができる。しかしながら、更に典型的には、このようなネットワークは互いから大なり小なり独立した形で動作する(本明細書において使用されるように、「独立」という用語は、技術的に独立している状態(例えば、2つのネットワークが、例えば接続を容易にする手段が無いために互いに対してアクセスすることができない場合)、及び/又は動作的に独立している状態(例えば、2つのネットワークが、透過的な相互作用を全て、または部分的に排除する形で個別に管理される場合)を指す)。
【0003】
その結果、典型的な最新ユーザは膨大な数の異なるサービス及び/又はエンドユーザインターフェースデバイスにアクセスすることができ、これらのサービス及び/又はエンドユーザインターフェースデバイスは多くの場合、互いに対して完全に独立して動作する。アプリケーションによって所定のエンドユーザ(または、他のネットワーク要素またはノード)は、種々のサービス及びアクションにアクセスすることができる。別の表現をすると、ネットワークをコンジットとして接続を行ない、コンジットを介して、アプリケーション利用サービスが所定のエンドユーザに届く。
【0004】
現時点では、大抵は、所定のアプリケーションには、相当程度の予備知識、及び垂直認識を駆使して、所定のネットワークにおいて上手く作業する、または所定のネットワークを利用して上手く作業するということが必要となる。この「垂直認識」とは、コンテンツソースとコンテンツシンクとの間の帯域、遅延、またはジッタの認識を指す。「垂直認識」として更に、接続を設定し、そして「遮断する」ための特定の制御フォーマットの認識を挙げることができる。垂直認識として、ユーザ、アプリケーション、またはデバイスのネットワーク固有識別子の認識を挙げることができる。垂直認識とは、オープンシステム相互接続(OSI)「スタック」全体の認識を意味する。この状況から、ほとんどのネットワークがどちらにしても、互いに対して独立しているので、複数のネットワークに跨った所定のアプリケーションの到達範囲を拡大しようとする全ての意図を大きく阻害することになるという簡単な事実に思い当たることができる。
【0005】
このタイプの環境において動作することができる一つのグループのアプリケーションがコンバージド・サービスである。コンバージド・サービスは、調整サービス、継続サービス、及び統合サービスを含むことができる。ユーザ体験は、これがコンバージド・サービスであるかどうかを判断する際に不変である。一つのサービスは、当該サービスがアクセスネットワーク、デバイス、または管理ドメイン(サービス所有者)を通過するときに、同じタスクを同じ方法で実行しているとユーザが知覚する場合に「継続性」を示すが、当該サービスは、WLAN VoIPボイスコールと比較されるときのセルラーボイスコールのように、ネットワーク境界を横切って異なる形で実行される可能性がある。2つ以上のサービスは、これらのサービスの原形において、これらのサービスが互いに対して独立していると仮定すると「調整される」ことになるが、これらのサービスを構成して、これらのサービスが互いに相互作用するようにする。すなわち、一方のサービスが当該サービスの動作を、他方のサービスの状態変化に応答して変化させる。例えば、TVのビデオストリームは、電話が鳴ると停止する。複数のサービスは、これらのサービスを、これらのサービスがユーザにとって単一のサービスに見える程度に組み合わせるときに「統合される」。
【0006】
このような懸案事項を解決する一つの提案解決策には、一方の複数の独立アクセスネットワーク、制御ネットワーク、及びサービスネットワークと、他方の集中アプリケーションレイヤとの間に配置されるコンバージド・サービス・ファブリックが含まれる(例えば、2004年11月22日に出願され、かつ出願番号60/630,106を有する「コンバージド・サービス・ファブリックを容易にする方法」と題する既に出願されている仮特許出願を参照されたく、この仮特許出願の内容全体が本明細書において参照されることにより、本明細書に組み込まれる)。
【0007】
コンバージド・サービス・ファブリック(CSF)によって、アクセスネットワークからのサービスまたはアプリケーションの分離が可能になる。CSFアーキテクチャ要素110によって行なわれるこの分離によって、図1に示すように、2つの論理的に異なる空間、すなわちアプリケーション空間120及びアクセス空間130が形成されている。正しく構成され、かつ展開される場合には、このようなコンバージド・サービス・ファブリックは、複数のアクセスネットワーク及び制御ネットワークに対するアプリケーションサーバとして、そして複数のサービスネットワークに対する制御サーバまたはアプリケーションゲートウェイとして効果的に機能する。異なる側面で見ると、従来のネットワークの操作性を維持するために、コンバージド・サービス・ファブリックは、サービスネットワークと、アクセスネットワークまたは制御ネットワークの動作の仕方に一致する仕方で相互作用するとともに、更にアクセスネットワークまたは制御ネットワークと、サービスネットワークの動作の仕方に一致する仕方で相互作用することが好ましい。このようなコンバージド・サービス・ファブリックは通常、エンドユーザ情報、サービス情報、ネットワーク情報、デバイス情報、リソース情報、アプリケーション情報、及び/又はエッジゲートウェイ情報のうちの少なくとも一つに関する情報にアクセスすることができる。
【0008】
CSFのこれまでの具体例には、分散的に、または階層的に展開することができ、かつそれでもピアツーピアモデルを利用する制御アーキテクチャが開示されていない。CSFはピアとして動作するので、ユーザによるコンバージド・サービス・リクエストは、承認され、次に制御アーキテクチャで処理される必要があるので、セットアップ時間が制御アーキテクチャ応答時間によって制限される。情報を複数のアプリケーション及びアクセスネットワークに跨って収集し、そして解釈するCSFシステムの性質により、コンバージド・サービスは更に、ネットワーク全体の個々の各制御要素の応答時間によって制限されることになる。複数のアプリケーション及びアクセスネットワークに跨るユーザのリソース状態に関する完全な認識は、ネットワーク間依存性を構築する必要があるという努力を払うことにより得られる。この制約によって、コンバージド・サービス・システムによるタイムリーな応答が阻止される恐れがある。遅延の影響を受け易いサービスは脱落する恐れがある、またはビデオのグリッチまたはオーディオ通信のギャップのような許容できない性能を示す。現在の技術では、コンバージド・サービスの可用性を、アクセスネットワーク群またはサービスネットワーク群のうちの一つのネットワークで輻輳トラフィックが発生している状態で動作している場合に提供することもできない。このようなトラフィックによって、CSF制御要素によるコンバージド・サービス・リクエストのタイムリーな処理が阻止される恐れがある。サービスプロバイダが提供するコンバージド・サービスは、品質を合理的に保証することができない場合には故障する可能性がある。
【発明の概要】
【課題を解決するための手段】
【0009】
階層ネットワークにおけるコンバージド・サービスの利用を容易にする方法、装置、及び電子装置が開示される。本方法は、コンバージド・サービス・インスタンスを複数の独立ネットワーク全体でエンドユーザに提供するステップと、階層制御下位要素を、コンテクスト・マネージャを使用して選択するステップと、階層制御下位要素によって、コンバージド・サービス・インスタンスの構成を制御するステップとを含む。
【図面の簡単な説明】
【0010】
【図1】本発明の可能な実施形態によるコンバージド・サービス・ファブリックの例示的な図を示している。
【図2】ピア方式で動作するコンバージド・サービス・ファブリックの制御アーキテクチャの動作を示している。
【図3】階層的に動作するコンバージド・サービス・ファブリックの制御アーキテクチャの動作の一つの可能な実施形態を示している。
【図4】コンテクスト・マネージャの一つの実施形態を示している。
【図5】ピアコンバージド・サービス・ファブリック・アーキテクチャの一つの実施形態を示している。
【図6】コンバージド・サービス・ファブリック内へのこれらの制御要素及びサポート機能の統合の一つの実施形態を示している。
【図7】階層型コンバージド・サービス・ファブリック内に配置ことができる分散制御下位要素の可能な実施形態を示している。
【図8】コンテクスト・マネージャ・リクエストを発行する方法の一つの実施形態を示している。
【図9】コンテクスト・マネージャのサービス・ポリシーを処理する方法の一つの実施形態を示している。
【図10】コンテクスト・マネージャを更新する方法の一つの実施形態を示している。
【図11】ユーザ端末またはサーバとして動作して本発明を実行するコンピュータ・システムの可能な構成を示している。
【発明を実施するための形態】
【0011】
本発明に関して上に列挙した他の利点、及び特徴が得られる態様について説明するために、上に簡潔に記載した本発明に関する更に具体的な説明が、添付の図面に示される本発明の特定の実施形態を参照することにより行なわれる。これらの図面は、本発明の代表的な実施形態のみを示しているので、本発明の範囲を制限するものとして捉えられるべきではないことを認識し、本発明について、更に別の特異性及び詳細を用い、添付の図面を利用しながら記述し、そして説明することとする。
【0012】
本発明の更に別の特徴及び利点は、以下に続く記載に示され、そして記載から部分的に明らかになる、または本発明を実施することにより習得することができる。本発明の特徴及び利点は、添付の請求項において具体的に挙げられる手段及び組み合わせによって実現され、そして達成される。本発明のこれらの特徴及び他の特徴は、以下の記述及び添付の請求項から更に完全な形で明らかになる、または本明細書に示される本発明を実施することにより習得することができる。
【0013】
本発明の種々の実施形態を以下に詳細に説明する。特定の実施形態が説明されるが、この説明は例示のためにのみ行なわれることを理解されたい。関連分野の当業者であれば、他の構成要素及び構成を、本発明の思想及び範囲から逸脱しない限り使用することができることが理解できるであろう。
【0014】
本発明は、方法、装置、及び電子装置のような種々の実施形態、及び本発明の基本コンセプトに関連する他の実施形態を含む。
階層ネットワークにおけるコンバージド・サービスの利用を容易にする方法、装置、及び電子装置が開示される。コンバージド・サービス・インスタンスは、複数の独立ネットワーク全体でエンドユーザに提供される。コンバージド・サービス・ファブリック(CSF)制御アーキテクチャでは、階層制御下位要素をコンテクスト・マネージャを使用して選択する。選択される階層制御下位要素は、コンバージド・サービス・インスタンスの構成を制御する。CSF制御アーキテクチャは、所定の権限を委任し、(通常の短いユーザクエリに対する既定の応答のような)所定の嗜好情報をキャッシュし、ギャップを埋め、階層に対するクエリを、解決できない曖昧さに応答して実行する機能を提供する。
【0015】
いずれのサービスの場合も、アプリケーションサーバはアプリケーションユーザとは異なり、かつアプリケーションユーザから遠く離れている。CSFモデルでは、当該アプリケーションに関連する情報に対する主要な責任は、アプリケーションの最も近くに位置する或るCSF制御要素にある。しかしながら、この制御要素はエンドユーザからずっと遠く離れて位置する可能性がある。この制御要素は実際には、当該要素の責任を、アプリケーションから「相対的に遠い」が、エンドユーザには相対的に近い調整機能に委任する。このような委任の目的は、状態変化または状態リクエストに対する応答性を高めることにある。
【0016】
このアプローチは、複数のサービスを調整する場合には最適とはならないことに留意されたい。すなわち、一つのアプリケーションに関してエンドユーザに(応答時間の点で)「最も近い」制御要素は、別のアプリケーションに関して最も近いことにはならない。これは、ユーザに物理的に最も近い単一の制御要素を求めることができるが、この制御要素は、情報を他のネットワークの要素群から取り出す、または命令を他のネットワークの要素群に発行する必要があるからである。従って、制御要素を最良の形で選択するには、ジョイント最適化が必要である。
【0017】
最短の全体応答時間をアプリケーション群に跨って提供するステップでは、使用状態において、一つのアプリケーションに対する応答と、他のアプリケーションに対する応答とのバランスをとる。このアプローチによって、一層良好な調整ポイントが得られ、そしてその結果、アプリケーションごとのアプローチよりも良好な応答が得られる。ここに開示されるアイデアは、状態情報を配信して、情報の保留の方に傾く信用と、情報の提供の方に傾く応答性とのバランスをとる階層構造である。更に、制御要素が「中心」に近くなると、制御要素からの可視性が高くなる。この本質的な例が、ネットワーク全体を見渡す機能を備えるサービスプロバイダネットワークのコアにおける制御要素であり、これに対して、ローカルエリアネットワークの制御要素は、LAN、及び可能な部分として、ネットワーク全体の小部分しか見渡すことができない。ワイドエリアネットワーク(WAN)では本質的に、相対的に広い領域を見渡すことができる状況が実現し、各制御要素が、所定のアプリケーションまたは一つの情報から見たときに、階層の最上部に位置することができることに注目されたい。
【0018】
図2は、ピア方式で動作するCSFの制御アーキテクチャの動作200を示している。プロセスは、アプリケーション、ユーザ、または他のエンティティがサービスリクエストを送信する(ブロック210)と始まる。CSF要素はリクエストを受信することができる(ブロック220)。API/インターフェース受信段階230では、CSF要素はリクエストを構文分析し、そしてリクエストを適切な処理要素に送信することができる(ブロック232)。処理段階240では、ユーザ嗜好情報マネージャ242は、ユーザ嗜好情報(データベース及び処理のような)を供給するのに対し、セッションモニタ244は状態を判断し、そしてリソースマネージャ246はサービスを実行するために必要なリソースを決定する。サービス決定段階250では、制御アーキテクチャがコンバージド・サービスを管理する(ブロック252)。CSF要素が、必要なサービスを実行することができる場合、当該要素はAPI/インターフェースレポート段階260に進む。CSF要素はサービスリクエスト解決をリクエスト側エンティティにレポートすることができ(ブロック262)、そしてサービスリクエストまたはリクエスト群、或いは応答を、リソース所有者(アクセスネットワーク、クライアント、RGWなど)及び他の受信者またはリクエスタに発行する(ブロック264)。CSF要素が、必要なサービスを実行することができない、または必要なサービスを実行しようとしない場合、当該要素はサービス転送段階270に進み、この段階では、CSFサービスマネジメントがサービスリクエストを別のCSF要素に送信する(ブロック272)。
【0019】
図3は、階層構造で動作するCSFの制御アーキテクチャの動作300の一つの可能な実施形態を示している。CSFのこの実施形態の階層構造は、ピア構造が、コンテクスト・マネージャ310を設けることにより改良されるように作用する。コンテクスト・マネージャ310は、処理段階中に収集されるコンテクスト情報を受信して、どのCSF制御要素が、リクエストされるタスクを管理し、そして実行するために最良に適合しているかについて判断することができる。この構造によって、制御下位要素をサービスアプリケーション、またはエンドユーザの近傍に配置することができ、サービスの効果を最大化することができる。
【0020】
上の階層構造が与えられる場合、ネットワークの所定のCSF制御要素は、ローカルリソースが所望のコンバージド・サービス動作を構成することができる場合に、アプリケーションまたはユーザからのコンバージド・サービス・リクエストを解決するように動作することができる。しかしながら、更に別の可能化要素が、この自律型サービス調整をコンバージド・サービス・リクエストに対してこの状況において可能にする必要がある。コンテクスト・マネージャは、このアクションを実現するイネイブラーとして動作することができる。
【0021】
図4は、コンテクスト・マネージャ(CM)310の一つの実施形態を示している。CM310は、コンテクストデータコレクタ410と、コンテクストデータプロセッサ420と、そしてコンテクストデータマネージャ430と、を含むことができる。
【0022】
コンテクストデータコレクタ410はコンテクスト状態情報を収集し、コンテクスト状態情報は、ユーザの、及び彼の、または彼女のアプリケーションのロケーション(物理ロケーション、ストリート/ルームロケーション、ネットワークロケーションなど)、デバイス近接度、ユーザプレゼンス、可用性、及び嗜好を含む。CM310を主として使用することにより、必要な制御要素を決定して、コンバージド・サービス・リクエストを、当該リクエストがサービスを実行するために必要なユーザ及びアプリケーション及びネットワークの現在のロケーションに対して発行されたときに可能にする。階層の局所性として、単一デバイス内の複数のサービスまたはアプリケーション、ピアエリアネットワーク内で動作する複数のサービスまたはアプリケーション、或るデバイスにデバイス−ローカルアプリケーションとともに配信されるサービス、及び宅内ネットワークに配信される複数のワイドエリアネットワーク利用サービスを挙げることができる。
【0023】
コンテクストデータプロセッサ420は、ロケーションを処理し、ロケーションを既知の意味、嗜好、現在のユーザ識別情報、可用性、及びプレゼンス情報に関連付けることにより、ユーザの現在のコンテクストを生成することができる。CM(コンテクスト・マネージャ)310による処理によって、確実に、収集情報がアプリケーション及びユーザに関する一定のコンテクスト解釈となる。特定のコンテクスト処理条件及びアクションとして、ネットワーク群全体、デバイス群全体、アプリケーション群全体、ユーザが置かれたコンテクスト(状況)に基づくユーザ宛てのインスタンスの優先度、非一貫性の排除、異なるデバイス、ゲートウェイ、及び/又はアクセスネットワークにおけるサポートレイヤから収集されるデータの一貫性の維持、コールバックリクエストに基づくアプリケーションへの適切なトリガーの送信、及び種々のアプリケーション及び他のネットワークCMリクエスタに対する、ユーザについて収集されるコンテクスト情報及びコンテクスト変化のプッシュ及びプルを挙げることができる。
【0024】
コンテクストデータマネージャ430は、データベースの更新及び同期化を、CSFの階層構造を介して行なって、ユーザ及び当該ユーザのリソースの一貫した状態を維持することができる。
【0025】
ピア構造及び階層構造の両方において、CSFアーキテクチャは、図5に示すように、多くの制御要素及びサポート機能を含むことができる。コンバージェンス調整機能(convergence coordination function:CCF)とも表記される制御要素510は、各アクセス/サービスネットワークによって生成される複数の嗜好情報、リソース、及びインスタンスを調整することにより、一貫性のある集中管理を行ない、そして維持することができる。CCF510は、一連のサポート機能と、この目的を推進するために相互作用することができる。これらのサポート機能として、ネットワークサポート機能(NSF)520、エッジノードサポート機能(ESF)530、及びクライアントサポート機能(CLSF)540を挙げることができる。NSF520は、各アクセスネットワークのインスタンス制御とのインターフェースとなる。ESF530は、各アクセスネットワーク及びエッジノード用デバイスとのインターフェースとなる。CLSF540は、エンドユーザクライアントとのインターフェースとなる。
【0026】
図6は、CSF600内のこれらの制御要素及びサポート機能の相互作用の可能な実施形態を示している。第1ネットワークアプリケーション610及び第2ネットワークアプリケーション620は、CCF510と相互作用する。2つのアプリケーションについてしか、この例では説明していないが、更に多くのアプリケーションを使用することができる。CCF510は、これらのサポート機能の各サポート機能を調整し、そして制御することができる。NSF520は、コールサーバ及び他のネットワークデバイス630とのインターフェースを生成し、そして維持する。ESF530は、エッジコンポーネント640とのインターフェースを生成し、そして維持する。CLSF540は、クライアントデバイス650とのインターフェースを生成し、そして維持する。
【0027】
コンテクスト・マネージャを適用することにより、分散制御モデルが実現し、分散制御モデルでは、例えばCSF−CCF制御要素をネットワーク、エッジデバイス、及びクライアントデバイスに跨って部分的に、かつ階層的に分散させる。図7に示すように、分散CSF−CCF下位要素は、個人ネットワーク650(CSF−CCF’710)、エッジデバイス640(CSF−CCF”720)、及び/又はエンドクライアント650(CSF−CCF’’’730)に格納することができる。各CCF下位要素は、当該下位要素よりも高位の上位要素510よりも狭い範囲を有することができる。「範囲」とはこの場合、所定の一連のアプリケーションの局所性の意味を指すが、その理由は、これらのアプリケーションが、ユーザのロケーションに関連付けられるからである。分散CCF制御下位要素は、ネットワークデバイス630、エッジデバイス640、またはクライアント要素650のうちの一つに対してローカルなアプリケーションに、または一つの近傍に位置するアプリケーションに関連付けられるとともに、ネットワークの階層よりも上の上位要素とのインターフェースとなる。各ネットワークエンティティは、自律型アプリケーション、ネットワークアプリケーション(Net Apps[2])740、エッジアプリケーション(Edge Apps[2])750、及びクライアントアプリケーション(Client Apps[2])760を利用して分散させることができる。これらのアプリケーションの各アプリケーションは、アプリケーション自体が物理的にネットワーク全体に分散されていても、特定のアプリケーション及びアクセスネットワークに関連付けることができる。
【0028】
コンテクスト・マネージャ(CM)310は、CSFネットワークに含まれるシステムであり、このシステムは、アプリケーションをエンドユーザが利用するために使用されるコンテクスト状態情報を収集し、処理し、そして供給する。CM310は、入力を、嗜好情報マネージャ242、セッションモニタ244、及びリソースマネージャ246のような制御要素イネーブラから受信する。セッションモニタ244は更に、ユーザのロケーションを、ネットワークのロケーションサーバ及びプレゼンスサーバを介して求める機構を含む。CM310はこれらの入力を、コンバージド・サービス・リクエストに照らし合わせて処理することにより、コンバージド・サービス・リクエストが、階層構造における現在の制御要素の階層で解決されているかどうか、またはリクエストを上位の制御階層に渡して、更に処理する必要があるかどうかについて判断する。従って、CM310は、CSFアルゴリズムのサービスマネージャ要素250が、コンバージド・サービス・リクエストを誰に、例えばリソース所有者(AN,クライアント、RGWなど)に発行すべきかどうかを決定することができるかどうかを、またはサービスマネージャ要素250が、相対的に高い階層の階層制御を行なう上位要素に要求して、リクエストを処理させる必要があるかどうかを判断することができる。上位要素はリクエストを処理する、または当該リクエストの処理を、下位要素よりも上位の階層制御であるが上位要素よりも下位の階層制御を行なう中間下位要素に任せることができる。
【0029】
図8は、コンテクスト・マネージャリクエストを発行する方法800の一つの実施形態を示している。CM310は、サービスを要求するリクエストを受信する(ブロック802)。CMリクエストが発行リクエストではない場合(ブロック804)、更なる発行アクションは必要ではない(ブロック806)。CMリクエストが発行リクエストである場合(ブロック804)、CM発行リクエストを処理する(ブロック808)。CMリクエストが終了した場合(ブロック810)、CMはリクエストに対して何も行なうことがない(ブロック806)。CMリクエストを、異なる制御要素にプッシュする必要がある場合(ブロック812)、CMリクエストを現在のシグナリングレベルと同じレベルでプッシュするか(ブロック814)、現在のシグナリングレベルよりも高いレベルでプッシュするか(ブロック816)、又は現在のシグナリングレベルよりも低いレベルでプッシュする(ブロック818)。次に、制御要素は、CM発行リクエストを生成する(ブロック820)。
【0030】
図9は、CM310を更新する方法900の一つの実施形態を示している。CM310はCMリクエストを受信する(ブロック902)。CMリクエストが更新ではない場合(ブロック904)、更なるアクションは必要ではない(ブロック906)。これ以外の場合、CM更新リクエストを処理する(ブロック908)。CMリクエストが、更新嗜好情報をプッシュすることである場合か(ブロック910)、更新リソースをプッシュすることである場合か(ブロック912)、または更新状態データをプッシュすることである場合(ブロック914)、嗜好情報をCM310に保存するか(ブロック916)、リソースをCM310に保存するか(ブロック918)、または状態データをCM310に保存する(ブロック920)。CMリクエストが、更新嗜好情報をプルすることである場合(ブロック922)、更新リソースをプルすることである場合(ブロック924)、または更新状態データをプルすることである場合(ブロック926)、嗜好情報をCM310から読み出すか(ブロック928)、リソースをCM310から読み出すか(ブロック930)、または状態データをCM310から読み出す(ブロック932)。次に、CMはCM発行リクエストを生成する(ブロック934)。
【0031】
図10は、CM310を更新する方法1000の一つの実施形態を示している。CM310はCMリクエストを受信する(ブロック1002)。CMリクエストがサービスを要求するリクエストである場合(ブロック1004)、更なるアクションは必要ではない(ブロック1006)。これ以外の場合、CMサービスポリシーリクエストを処理する(ブロック1008)。CMリクエストで、嗜好情報の処理をリクエストする場合か(ブロック1010)、リソースの処理をリクエストする場合か(ブロック1012)、または状態ポリシーの処理をリクエストする場合(ブロック1014)、嗜好情報をCM310に保存するか(ブロック1016)、リソースをCM310に保存するか(ブロック1018)、または状態データをCM310に保存する(ブロック1020)。嗜好情報ポリシー違反が発生する場合か(ブロック1022)、リソースポリシー違反が発生する場合か(ブロック1024)、または状態ポリシー違反が発生する場合(ブロック1026)、CM310は、嗜好情報及び嗜好情報ポリシー出力を読み出すか(ブロック1028)、リソース及びリソースポリシー出力を読み出すか(ブロック1030)、または状態及び状態ポリシー出力を読み出す(ブロック1032)。次に、CMはCM発行リクエストを生成する(ブロック1034)。
【0032】
図11は、ユーザ端末またはサーバとして動作して本発明を実行するコンピュータシステム1100の可能な構成を示している。コンピュータシステム1100は、コントローラ/プロセッサ1110と、キャッシュ1125を備えるメモリ1120と、ディスプレイ1130と、データベースインターフェース1140と、入力/出力デバイスインターフェース1150と、そしてネットワークインターフェース1160と、を含むことができ、これらの構成要素はバス1170を介して接続される。
【0033】
コントローラ/プロセッサ1110は、この技術分野の当業者に公知のいずれのプログラムプロセッサとすることもできる。しかしながら、デシジョンサポート方法は、汎用コンピュータまたは特定用途向けコンピュータ、プログラムマイクロプロセッサまたはマイクロコントローラ、周辺集積回路素子、特定用途向け集積回路または他の集積回路で実行する、個別素子回路のようなハードウェア電子論理回路で実行する、プログラマブルロジックアレイ、フィールドプログラマブルゲートアレイなどのようなプログラマブルロジックデバイスで実行することもできる。一般的に、本明細書に記載されるデシジョンサポート方法を実行することができるいずれかのデバイスまたはデバイス群を使用して、本発明のデシジョンサポートシステム機能を実行することができる。
【0034】
メモリ1120は、揮発性データストレージ及び不揮発性データストレージを含むことができ、データストレージとして、RAM、キャッシュ、ハードドライブ、CD−ROMドライブ、テープドライブ、または取り外し可能なストレージディスクのような一つ以上の電気メモリ、磁気メモリ、または光メモリを挙げることができる。メモリは、特定のデータに高速にアクセスするキャッシュ1125を有することができる。
【0035】
入力/出力インターフェース1150は、一つ以上の入力デバイスに接続することができ、入力デバイスとして、キーボード、マウス、ペン操作タッチスクリーンまたはモニタ、音声認識デバイス、または入力を受け入れる他のいずれかのデバイスを挙げることができる。入力/出力インターフェース1150は、モニタ、プリンタ、ディスクドライブ、スピーカのような一つ以上の出力デバイスに、またはデータを出力するために設けられる他のいずれかのデバイスに接続することもできる。
【0036】
ネットワークインターフェース1160は、通信デバイス、モデム、ネットワークインターフェースカード、トランシーバ、または信号をネットワークを介して送受信することができる他のいずれかのデバイスに接続することができる。コンピュータシステム1100の構成要素は、電気バス1170を介して接続することができる、または無線接続することができる。
【0037】
クライアントソフトウェア及びデータベースには、コントローラ/プロセッサ1110がメモリ1120から、またはデータベースインターフェース1140を介してアクセスすることができ、そしてクライアントソフトウェア及びデータベースとして、例えばデータベースアプリケーション、ワード処理アプリケーション、課金システムのようなクライアント側のクライアント/サーバアプリケーションだけでなく、本発明のデシジョンサポート機能を具体化する構成要素を挙げることができる。コンピュータシステム1100は、例えばWindowsまたはUNIXのようないずれかのオペレーティングシステムを実装することができる。クライアント/サーバソフトウェアは、例えばABAP,C,C++,Java,またはVisual Basicのようなプログラミング言語で記述することができる。
【0038】
必要である訳ではないが、本発明は、汎用コンピュータのような電子装置が実行する、プログラムモジュールのようなコンピュータ実行可能な命令の一般的な記述形式で少なくとも部分的に記述される。一般的に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実装するルーチンプログラム、オブジェクト、コンポーネント、データ構造などを含む。更に、この技術分野の当業者であれば、本発明の他の実施形態は、パーソナルコンピュータ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサ応用電子機器またはプログラマブルコンシューマ電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含む多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実施することができることが理解できるであろう。
【0039】
実施形態は分散コンピューティング環境において実現することもでき、分散コンピューティング環境では、タスクは、通信ネットワークを介して接続される(有線リンク、無線リンクのいずれかによって、または有線リンク及び無線リンクの組み合わせによって)自律遠隔操作型処理デバイスによって実行される。
【0040】
本発明の範囲内の実施形態は、コンピュータ実行可能な命令またはデータ構造を格納する、または記録するコンピュータ読み取り可能な媒体を含むこともできる。このようなコンピュータ読み取り可能な媒体は、汎用コンピュータまたは特定用途向けコンピュータがアクセスすることができる、いずれかの利用可能な媒体とすることができる。非制限的な例として、このようなコンピュータ読み取り可能な媒体は、RAM,ROM,EEPROM,CD−ROM、または他の光ディスクストレージ、磁気ディスクストレージ、または他の磁気ストレージデバイス、或いは所望のプログラムコード手段をコンピュータ実行可能な命令またはデータ構造の形で格納する、または記録するために使用することができる他のいずれかの媒体を含むことができる。情報がネットワーク接続を介して、または別の通信接続(有線接続、無線接続のいずれか、または有線接続及び無線接続の組み合わせ)を介してコンピュータに転送される、または供給される場合、コンピュータは当該接続をコンピュータ読み取り可能な媒体として正しく認識する。従って、いずれのこのような接続も、コンピュータ読み取り可能な媒体と正しく表記される。上に列挙した要素の組み合わせも、コンピュータ読み取り可能な媒体の範囲に含まれるべきである。
【0041】
コンピュータ実行可能な命令は、例えば汎用コンピュータ、特定用途向けコンピュータ、または特定用途向け処理デバイスに指示して、所定の機能、または機能グループを実行させるように作用する命令及びデータを含む。コンピュータ実行可能な命令は更に、コンピュータによって、スタンドアローンで、またはネットワーク環境で実行されるプログラムモジュールを含む。一般的に、プログラムモジュールは、特定のタスクを実行する、または特定の抽象データタイプを実装するルーチン、プログラム、オブジェクト、コンポーネント、及びデータ構造などを含む。データ構造に関連するコンピュータ実行可能な命令、及びプログラムモジュールは、本明細書に開示される方法のステップを実行するプログラムコード手段の例を表わす。このような実行可能な命令または関連するデータ構造の特定のシーケンスは、このようなステップに記載される機能を実行する対応する動作の例を表わす。
【0042】
上の説明には特定の詳細が含まれるが、これらの詳細は請求項を制限するものとしては決して捉えられるべきではない。本発明について説明される実施形態の他の構成は、本発明の範囲の一部である。例えば、本発明の原理は、各個人ユーザに適用することができ、各ユーザはこのようなシステムを個々に展開することができる。これにより各ユーザは、本発明の利点を、非常に多くの可能なアプリケーションのいずれの一つのアプリケーションも本明細書において説明される機能を必要としない場合でも、利用することができる。別の表現をすると、各電子装置がコンテンツを種々の可能な態様で処理する構成の電子装置群の多数の例が存在し得る。全てのエンドユーザが使用するシステムが、必ずしも一つだけで済ませる訳ではない。従って、提示されるどのような特定の例でもなく、添付の請求項、及びこれらの請求項の法的な均等物によってのみ本発明が規定されるべきである。
【特許請求の範囲】
【請求項1】
コンバージド・サービスをドメインに跨って提供する方法であって:
複数の独立ネットワークに跨るコンバージド・サービス・インスタンスをエンドユーザに提供するステップと、
階層制御下位要素を、コンテクスト・マネージャを使用して選択するステップと、
前記階層制御下位要素を使用して、前記コンバージド・サービス・インスタンスの構成を制御するステップと、
を備える方法。
【請求項2】
更に、
前記階層制御下位要素を前記エンドユーザの近傍に配置するステップと;
階層制御上位要素を、前記コンバージド・サービスのサービスを実行するアプリケーションサーバの近傍に配置するステップと;
前記階層制御下位要素を前記階層制御上位要素にインターフェース接続するステップと、
を備える、請求項1記載の方法。
【請求項3】
前記階層制御下位要素は、前記階層制御上位要素よりも狭い制御範囲を有する、請求項2記載の方法。
【請求項4】
更に:
前記階層制御上位要素と前記階層制御下位要素との間に中間階層制御下位要素を配置するステップと;
前記階層制御下位要素に対する制御を前記中間階層制御下位要素に任せるステップと、
を備える、請求項2記載の方法。
【請求項5】
更に、
前記コンテクスト・マネージャの第1インスタンスを前記階層制御下位要素に関連付けるステップと、
前記コンテクスト・マネージャの第2インスタンスを前記階層制御上位要素に関連付けるステップと
を備える、請求項2記載の方法。
【請求項6】
更に、
前記第1インスタンスによって保存されるコンテクスト状態情報を更新するステップと、
前記第2インスタンスによって保存されるコンテクスト状態情報を同期させるステップと、
を備える、請求項5記載の方法。
【請求項7】
更に、
前記コンテクスト・マネージャを使用してコンテクスト状態情報を収集するステップと、
エンドユーザのロケーション及びアプリケーションサーバのロケーションを求めるステップと、
前記ロケーションをユーザ固有コンテクスト状態情報及びアプリケーション固有コンテクスト状態情報に関連付けるステップと、
前記階層制御下位要素を選択して前記コンバージド・サービス・インスタンスを管理するステップと
を備える、請求項1記載の方法。
【請求項8】
更に、前記コンテクスト・マネージャ及び階層制御下位要素を、ネットワーク、エッジデバイス、またはクライアントデバイスに配置するステップを含む、請求項1記載の方法。
【請求項9】
コンバージド・サービスをドメインに跨って提供する装置であって、
コンバージド・サービス・インスタンスを複数の独立ネットワークからエンドユーザに提供する、インターフェースデバイスと;
前記コンバージド・サービス・インスタンスの構成を制御する、階層制御下位要素と、
前記階層制御下位要素を選択する、第1コンテクスト・マネージャと
を備える装置。
【請求項10】
前記階層制御下位要素は、前記コンバージド・サービスのサービスを実行するアプリケーション・サーバの近傍に配置される階層制御上位要素にインターフェース接続される、請求項9記載の装置。
【請求項1】
コンバージド・サービスをドメインに跨って提供する方法であって:
複数の独立ネットワークに跨るコンバージド・サービス・インスタンスをエンドユーザに提供するステップと、
階層制御下位要素を、コンテクスト・マネージャを使用して選択するステップと、
前記階層制御下位要素を使用して、前記コンバージド・サービス・インスタンスの構成を制御するステップと、
を備える方法。
【請求項2】
更に、
前記階層制御下位要素を前記エンドユーザの近傍に配置するステップと;
階層制御上位要素を、前記コンバージド・サービスのサービスを実行するアプリケーションサーバの近傍に配置するステップと;
前記階層制御下位要素を前記階層制御上位要素にインターフェース接続するステップと、
を備える、請求項1記載の方法。
【請求項3】
前記階層制御下位要素は、前記階層制御上位要素よりも狭い制御範囲を有する、請求項2記載の方法。
【請求項4】
更に:
前記階層制御上位要素と前記階層制御下位要素との間に中間階層制御下位要素を配置するステップと;
前記階層制御下位要素に対する制御を前記中間階層制御下位要素に任せるステップと、
を備える、請求項2記載の方法。
【請求項5】
更に、
前記コンテクスト・マネージャの第1インスタンスを前記階層制御下位要素に関連付けるステップと、
前記コンテクスト・マネージャの第2インスタンスを前記階層制御上位要素に関連付けるステップと
を備える、請求項2記載の方法。
【請求項6】
更に、
前記第1インスタンスによって保存されるコンテクスト状態情報を更新するステップと、
前記第2インスタンスによって保存されるコンテクスト状態情報を同期させるステップと、
を備える、請求項5記載の方法。
【請求項7】
更に、
前記コンテクスト・マネージャを使用してコンテクスト状態情報を収集するステップと、
エンドユーザのロケーション及びアプリケーションサーバのロケーションを求めるステップと、
前記ロケーションをユーザ固有コンテクスト状態情報及びアプリケーション固有コンテクスト状態情報に関連付けるステップと、
前記階層制御下位要素を選択して前記コンバージド・サービス・インスタンスを管理するステップと
を備える、請求項1記載の方法。
【請求項8】
更に、前記コンテクスト・マネージャ及び階層制御下位要素を、ネットワーク、エッジデバイス、またはクライアントデバイスに配置するステップを含む、請求項1記載の方法。
【請求項9】
コンバージド・サービスをドメインに跨って提供する装置であって、
コンバージド・サービス・インスタンスを複数の独立ネットワークからエンドユーザに提供する、インターフェースデバイスと;
前記コンバージド・サービス・インスタンスの構成を制御する、階層制御下位要素と、
前記階層制御下位要素を選択する、第1コンテクスト・マネージャと
を備える装置。
【請求項10】
前記階層制御下位要素は、前記コンバージド・サービスのサービスを実行するアプリケーション・サーバの近傍に配置される階層制御上位要素にインターフェース接続される、請求項9記載の装置。
【図2】
【図3】
【図4】
【図5】
【図8】
【図9】
【図10】
【図11】
【図1】
【図6】
【図7】
【図3】
【図4】
【図5】
【図8】
【図9】
【図10】
【図11】
【図1】
【図6】
【図7】
【公表番号】特表2010−515157(P2010−515157A)
【公表日】平成22年5月6日(2010.5.6)
【国際特許分類】
【出願番号】特願2009−544132(P2009−544132)
【出願日】平成19年11月1日(2007.11.1)
【国際出願番号】PCT/US2007/083316
【国際公開番号】WO2008/082775
【国際公開日】平成20年7月10日(2008.7.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WINDOWS
2.UNIX
3.JAVA
【出願人】(390009597)モトローラ・インコーポレイテッド (649)
【氏名又は名称原語表記】MOTOROLA INCORPORATED
【公表日】平成22年5月6日(2010.5.6)
【国際特許分類】
【出願日】平成19年11月1日(2007.11.1)
【国際出願番号】PCT/US2007/083316
【国際公開番号】WO2008/082775
【国際公開日】平成20年7月10日(2008.7.10)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.WINDOWS
2.UNIX
3.JAVA
【出願人】(390009597)モトローラ・インコーポレイテッド (649)
【氏名又は名称原語表記】MOTOROLA INCORPORATED
[ Back to top ]