(57)【要約】  いくつかの態様により、第１装置に対してサービスを提供することが可能なサーバを見つけるように構成されたネットワーク・スイッチング・センタを使用して、ネットワークを介して第１装置にサービスを提供する方法が提供される。当該方法は、第１装置に提供される第１サービスを識別する工程と、ネットワーク・スイッチング・センタから第１サーバに対して、遠隔装置が第１サービスを要求しているという通知を提供する工程と、第１サーバによって遠隔装置に対して第１サービスを提供する工程と、そして、第１サーバによってネットワーク・スイッチング・センタに対して、遠隔装置に対して提供されるべき第２サービスを指示する工程とを有する。
2010515957.tif 000002
【特許請求の範囲】
【請求項１】
第１装置に対してサービスを提供することが可能なサーバを見つけるように構成されたネットワーク・スイッチング・センタを使用してネットワークを介して前記第１装置に前記サービスを提供する方法であって、以下の工程を有する方法。
前記第１装置に提供される第１サービスを識別する工程、
前記ネットワーク・スイッチング・センタから第１サーバに対して、遠隔装置が前記第１サービスを要求しているという通知を提供する工程、
前記第１サーバによって前記遠隔装置に対して前記第１サービスを提供する工程、そして、
前記第１サーバによって前記ネットワーク・スイッチング・センタに対して、前記遠隔装置に対して提供されるべき第２サービスを指示する工程。
【請求項２】
請求項１の方法であって、更に、前記ネットワーク・スイッチング・センタによって、前記第１サービスを提供可能な前記第１サーバを見つける工程を有する方法。
【請求項３】
請求項２の方法であって、更に、前記ネットワーク・スイッチング・センタによって、前記第２サービスを提供可能な第２サーバを見つける工程を有する方法。
【請求項４】
請求項３の方法であって、前記第１サーバと前記第２サーバとが異なるサーバである方法。
【請求項５】
請求項４の方法であって、前記第１サーバと前記第２サーバとが、サービス連鎖協定と、前記第１サーバと前記第２サーバとを互いに識別する秘密ＩＤとを有し、そして、前記第２サービスを指示する工程が、前記秘密ＩＤを前記ネットワーク・スイッチング・センタに提供する工程を含む方法。
【請求項６】
請求項５の方法であって、更に、前記ネットワーク・スイッチング・センタによって、前記秘密ＩＤを前記第２サーバに提供する工程を有する方法。
【請求項７】
請求項３の方法であって、前記第１サーバと前記第２サーバとが同じサーバである方法。
【請求項８】
請求項１の方法であって、更に、前記第１装置を認証する工程を有し、前記ネットワーク・スイッチング・センタによって、前記第１装置および前記第１装置のユーザの双方あるいは一方が前記ネットワーク・スイッチング・センタに登録されていることを確認することにより、前記認証が行われる方法。
【請求項９】
請求項１の方法であって、前記第１サービスを識別する工程が、前記ネットワーク・スイッチング・センタによって、前記第１装置に提供するデフォルト・サービスを識別する工程を含む方法。
【請求項１０】
請求項１の方法であって、前記第１サービスを識別する工程が、前記第１装置を介して、利用可能なサービスのリストから前記第１サービスを選択する工程を含む方法。
【請求項１１】
請求項１の方法であって、更に、以下の工程を有する方法。
前記ネットワーク・スイッチング・センタから第２サーバに、前記第２サービスが要求されていることの通知を提供する工程、そして
前記第２サーバによって、前記第２サービスを前記遠隔装置に提供する工程。
【請求項１２】
請求項１１の方法であって、前記第１装置の前記ユーザが前記ネットワーク・スイッチング・センタで再認証する必要無く、前記第２サービスが提供される方法。
【請求項１３】
請求項１１の方法であって、前記第１装置の前記ユーザが前記第２サービスを選択する必要無く、前記第２サービスが提供される方法。
【請求項１４】
ネットワークを介してサービスを提供するシステムであって、以下を有するシステム。
前記ネットワークを介して通信可能な少なくとも１つのネットワーク装置、
前記少なくとも１つのネットワーク装置に対してサービスを提供することが可能なサーバを見つけるように構成されたネットワーク・スイッチング・センタ、そして、
前記ネットワーク装置に対して少なくとも１つのサービスを提供するように構成された複数のサーバ、
ここで、前記少なくとも１つのネットワーク装置のうちの第１ネットワーク装置に対して提供されるべき第１サービスが識別されると、前記ネットワーク・スイッチング・センタが、前記第１サービスを提供することが可能な前記複数のサーバから第１サーバを識別し、かつ、前記第１サーバに対して前記第１サービスを提供するように指示するように構成されており、更に、前記第１サーバが、前記第１サービスを提供するとともに、前記ネットワーク・スイッチング・センタに対して、前記第１ネットワーク装置に対して提供されるべき第２サービスを指示するように構成されているシステム。
【請求項１５】
請求項１４のシステムであって、前記第１ネットワーク装置が、前記第１サーバによって提供される前記第１サービスにアクセスするために前記ネットワーク・スイッチング・センタにコンタクトするように構成されているシステム。
【請求項１６】
請求項１５のシステムであって、前記第１ネットワーク装置、前記第１ネットワーク装置のユーザの双方あるいは一方が前記ネットワーク・スイッチング・センタに登録されていることを確認することにより、前記ネットワーク・スイッチング・センタが前記第１ネットワーク装置、前記ユーザの双方あるいは一方を認証するように構成されているシステム。
【請求項１７】
請求項１５のシステムであって、前記ネットワーク・スイッチング・センタが、認証に引き続き、前記第１ネットワーク装置に提供されるべきデフォルト・サービスを識別するように構成されているシステム。
【請求項１８】
請求項１４のシステムであって、前記第２サービスの前記指示に応答して、前記ネットワーク・スイッチング・センタが、前記複数のサーバから第２サーバを見つけ、前記第２サーバに対して、前記第１ネットワーク装置に提供すべき前記第２サービスを指示するように構成されているシステム。
【請求項１９】
請求項１８のシステムであって、前記第２サーバと前記第１サーバとが異なるサーバであるシステム。
【請求項２０】
請求項１９のシステムであって、前記第１サーバと前記第２サーバとが、サービス連鎖協定と、前記第１サーバと前記第２サーバとを互いに識別する秘密ＩＤとを有し、そして、前記第１サーバが前記第２サービスを指示する時に、前記第１サーバが前記秘密ＩＤを前記ネットワーク・スイッチング・センタに提供するように構成されているシステム。
【請求項２１】
請求項２０のシステムであって、前記ネットワーク・スイッチング・センタが、前記秘密ＩＤを前記第２サーバに提供するように構成されているシステム。
【請求項２２】
請求項１８のシステムであって、前記第２サーバと前記第１サーバとが同じサーバであるシステム。
【請求項２３】
請求項１４のシステムであって、前記ネットワーク・スイッチング・センタが、提供されるべき次のサービスに関する参照なしにサービス変更要求を受けると、前記第１ネットワーク装置に対してデフォルト・サービスを提供するように構成されているシステム。
【請求項２４】
複数のネットワーク装置と複数のネットワーク・サーバとを有するネットワークを介して、通信を行うように構成されたネットワーク・スイッチング・センタであって、以下を有するネットワーク・スイッチング・センタ。
前記ネットワークを介した通信のために構成された少なくとも１つのネットワーク・ポート、そして
前記少なくとも１つのネットワーク・ポートに接続されたコントローラであって、前記コントローラが、前記複数のネットワーク装置からのサービス要求と、前記複数のネットワーク・サーバによるサービス連鎖要求と、を処理するように構成されたコントローラ、
ここで、前記複数のネットワーク装置のうちの第１ネットワーク装置から第１サービス要求を受けると、前記コントローラが、前記複数のサーバから前記第１サービスを提供することが可能な第１サーバを見つけ、かつ、前記第１サーバに対して、前記第１ネットワーク装置に提供されるべき前記第１サービスを指示するように構成され、そして、前記第１サーバから前記第１ネットワーク装置に提供されるべき第２サービスを指示するサービス連鎖要求を受けると、前記コントローラが、前記複数のサーバから前記第２サービスを提供可能な第２サーバを見つけるように構成されているネットワーク・スイッチング・センタ。
【請求項２５】
請求項２４のネットワーク・スイッチング・センタであって、更に、前記コントローラに接続されたデータベースを有し、前記データベースが、複数の加入者と前記加入者の各々が利用可能なサービスとに関する情報を格納しているネットワーク・スイッチング・センタ。
【請求項２６】
請求項２５のネットワーク・スイッチング・センタであって、前記第１ネットワーク装置から前記第１サービス要求を受けると、前記データベースに格納された前記情報に基づいて前記第１ネットワーク装置が前記ネットワーク・スイッチング・センタに登録されていることを確認することにより、前記コントローラが前記第１ネットワーク装置を認証するネットワーク・スイッチング・センタ。
【請求項２７】
請求項２６のネットワーク・スイッチング・センタであって、前記第１ネットワーク装置の認証後に、前記コントローラが、前記第１ネットワーク装置に関連付けられたデフォルト・サービスを識別するために前記データベースを参照するネットワーク・スイッチング・センタ。
【請求項２８】
請求項２７のネットワーク・スイッチング・センタであって、前記デフォルト・サービスが、前記データベースに格納された情報に基づいて、前記第１ネットワーク装置に利用可能なサービスをリストにする選択サービスであり、そして、前記コントローラが、前記選択サービスを前記第１ネットワーク装置に提供するように構成されているネットワーク・スイッチング・センタ。
【請求項２９】
請求項２８のネットワーク・スイッチング・センタであって、前記第１サービスの前記第１ネットワーク装置からの指示を受けると、前記コントローラが前記データベースに格納された情報から前記第１サーバを見つけるネットワーク・スイッチング・センタ。
【請求項３０】
請求項２７のネットワーク・スイッチング・センタであって、前記デフォルト・サービスが前記第１サービスであり、そして、前記コントローラが前記デフォルト・サービスを取得した後に前記第１サーバを見つけるように構成されているネットワーク・スイッチング・センタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リモート・コンピューティング、より詳しくは、１つ以上の遠隔サーバからのサービスの受け取りに関する。
【背景技術】
【０００２】
ネットワーク・コンピューティングのフレキシビリティは、いくつかの点において、遠隔アクセス及びコンピューティングが実行され達成される方法において変化している。特に、そのネットワークを介してどこからでも情報、データ、計算能力にアクセス可能であることから、高度にネットワーク化された環境においては位置の厳格な概念は益々重要なものでなくなってきている。例えば、ある企業のローカル・エリア・ネットワーク（ＬＡＮ）は、在宅勤務、出張旅行（もしくは休暇旅行）、などのその他の理由でその企業ＬＡＮに直接には接続されていないユーザにとって利用可能でありうる。ワイヤレスネットワーク技術の増殖及びこれらの技術に基づく高速ネットワークのコストが益々低下していることによって、リモート・コンピューティング・ソリューションに向かう傾向は益々加速している。
【０００３】
ラップトップ・パーソナル・コンピュータ（ＰＣ）、携帯電話、パーソナル・デスクトップ・アシスタント（ＰＤＡ）、その他ポータブル演算装置、等のポータブル式及び携帯式装置のユーザは、そのユーザの企業ＬＡＮや１つ以上のその他のＬＡＮ、プライベート・ネットワーク、などを含むネットワークを介して利用可能な膨大なリソースに対するアクセスを望んだり、それらを利用することを望むかもしれない。遠隔ユーザは、ＬＡＮと交信して、あたかもそのユーザがそのＬＡＮに対してローカルに接続されているかの如く、その多くのサービスを享受することを希望するかもしれない。しかしながら、そのようなリモート・コンピューティング活動には、ＬＡＮに対する多大なセキュリティ上の危険が伴う。例えば、遠隔ユーザが交信しようとする企業ＬＡＮの秘密情報に対するアクセスを認めることによって、そのＬＡＮは、その秘密情報の紛失又は拡散に対して脆弱なものとなるかもしれない。
【０００４】
プライベートＬＡＮは、当該ＬＡＮ上に保存された、又は当該ＬＡＮによって提供される、データ、情報やサービス、に対する不正アクセスに対して自らを防御する必要があるかもしれない。遠隔アクセスに内在するセキュリティ問題を対象とする従来のソリューションとして、ＬＡＮをファイアウォールの背後に置いて保護することが挙げられる。ファイアウォールは、ＬＡＮに対してアクセス制限を提供するように構成され、不正ユーザによるＬＡＮへの接続、又はその他のアクセス、を防止するゲートキーパとして機能する。しかしながら、従来のファイアウォール・ソリューションは、ＬＡＮに対して許可されるアクセスの種類を厳しく制約し、ＬＡＮに対してアクセス可能な装置の種類を厳格に制約する。更に、ファイアウォールを介した遠隔アクセスは、その実行が高価で、管理や維持が複雑であることが多い。加えて、従来のファイアウォールでは、ＬＡＮに属するデータ及び情報が窃盗、不正なあるいは過失的な修正又は削除に対して、脆弱なまま残される可能性がある。
【０００５】
自分のオフィスから遠く離れた個人が、彼らの企業ネットワークに対するアクセスを得る継続した必要性を持つことはよくあることである。彼らは、通常は、個人がオフィスにいて企業ネットワークに直接接続されているときに利用可能である、ファイル、ｅメール、アプリケーション、プログラムにアクセスする必要があるかもしれない。遠隔アクセスを促進する１つの従来のアプローチは、ユーザが、例えば遠隔からｅメールアカウントにアクセスすることを可能にするラップトップ・パーソナル・コンピュータを使用することである。この活動を可能にするためには、ユーザが遠隔から企業ネットワークにアクセスして、ダイアルアップ電話回線（又はブロードバンド接続、デジタル加入者回線（ＤＳＬ）、ＴＩ、ケーブルなど）を介してネットワーク・サーバから、あるいはネットワーク・サーバへ、ファイルを転送することができるように、各クライアント・ラップトップＰＣに適当な通信ソフトウエアをインストールしなければならない。全てのアプリケーションがそのローカル・クライアント・ラップトップＰＣ上に常駐し、そこでローカルに実行される。このアプローチは比較的単純ではあるが、それは、各々のソフトウエア・アプリケーションが、各ラップトップＰＣ上に、インストールされ、設定され、その後維持されることを必要とする。その結果、このアプローチは、特に、インストールされたソフトウエア・アプリケーションの継続するサポート・コスト、と、大半のラップトップはアップグレードが必要となるまでの寿命が比較的短い、との観点から、経時的にはかなり高価なものになる可能性がある。
【０００６】
もう一つの従来のアプローチは、遠隔ユーザロケーションから中央の企業ＬＡＮへの広域ネットワーク（ＷＡＮ）接続を提供するために、従来式の仮想プライベート・ネットワーク（ＶＰＮ）を使用する。ＶＰＮ ＷＡＮ接続は、ＬＡＮと遠隔ユーザロケーションとの間にオープン・システム・インターコネクション（ＯＳＩ）第２層の拡張を実装するものであってよい。ＶＰＮを介してＬＡＮに接続された遠隔クライアントＰＣは、あたかもそのＬＡＮに直接接続されているように見える。しかしながら、ＶＰＮ接続は、その接続の各端部に位置する高価なＶＰＮ終端装置（又はクライアント側のＶＰＮルータ）や、クライアント・マシーンにインストールされ設定されたＶＰＮクライアント・ソフトウエアを必要とする。いずれのケースにおいても、前記ＶＰＮ終端装置は、第２層のパケット処理と、更に、適当なパケット暗号化・復号化機能とを提供する。ＰＣオペレーティング・システム又はクライアント側ＶＰＮソフトウエアによってＶＰＮ終端装置のコストを軽減することは可能であるが、そのいずれの場合でもパケットを組み立て及び分解するための相当なパケット処理を必要とし、それによってＰＣに対して大きな処理負荷がかかる。従って、クライアントＰＣ自身に対して過度の負荷をかけることなく、必要なレベルのセキュリティと信頼性でのＶＰＮ接続をサポートするために、多くの場合、遠隔ユーザロケーションにおいて別個の専用ＶＰＮ終端装置が必要とされる。このように、ＶＰＮ装置は高価であるばかりでなく、設定が面倒であり、管理及び維持が大変である。
【０００７】
上述した全てのケースにおいて、センシティブな企業データがＰＣやラップトップとの間で転送され、セキュアな企業ネットワークとＰＣやラップトップとの間で複製される。一旦データがダウンロードされ物理的にコピーされると、いかなるアクセス又は伝送セキュリティシステムをもってしても、そのデータの不正な、自由な頒布や乱用を防止することはできない。従って、合法的なデータ所有者は、秘密情報が流布され、もしくは、自分の知らないまま、又は、自分の許可無しに、利用されるリスクを負っている。
【０００８】
オフィス環境を遠隔ユーザロケーションに拡張する更にもう一つの従来式アプローチは、アプリケーション・サービス・プロバイダ（ＡＳＰ）モデルを利用するものであるが、これは、１つ以上のネットワーク・サーバ上に、独立したコンピューティング・アーキテクチャ・プロトコルを使用するシトリックス社のＭｅｔａＦｒａｍｅ等の、専用サーバソフトウエアをインストールすることを必要とする（ＭｅｔａＦｒａｍｅは登録商標）。ＬＡＮ上に位置するネットワーク・サーバは、種々の遠隔に位置するクライアントＰＣによってアクセス可能な複数の仮想マシンをホストすることによってＡＳＰとして機能する。或いは、複数の仮想マシンを提供するために、遠隔デスクトッププロトコル（ＲＤＰ）を使用するマイクロソフト社のWindows Terminal Services（ＷＴＳ）を利用することができる（Windows Terminal Services は登録商標）。しかしながら、前記ＭｅｔａＦｒａｍｅソフトウエアとＷＴＳソフトウエアのいずれも、クライアントＰＣに対して相当な処理負荷を課するものであり、又、ネットワーク障害や、介入者攻撃等のセキュリティ違反に対して脆弱である。更に、ＡＳＰベースのアプローチでは限られた遠隔実行機能しか提供することができない。
【０００９】
一般に、上述したシステムは、少なくとも部分的には、従来の通信ネットワークのバンド幅の限界を克服するために設計及び開発されたものである。現在の技術進歩によって通信ネットワークのバンド幅は劇的に増大した。ネットワーク・バンド幅は、マイクロプロセッサの速度よりも速く増大しており、約９ヶ月毎に二倍になっており、それによって、そのようなシステム及び技術の価値は減少し、いくつかのケースにおいては、それらを実質的に時代遅れのものにしている。
【００１０】
出願人は、ネットワーク（例えばＬＡＮ）に接続された１つ以上のサーバと遠隔装置との間の初期接続を仲介する信頼性の高い媒介を使用して、その遠隔装置と１つ以上のサーバとの間のセキュアな通信を使用した比較的単純なアクセスを促進するネットワーク・アーキテクチャを開発した。このアーキテクチャは、後ほど詳述するように、遠隔装置に提供されるサービスの連鎖を促進する。本発明の種々の態様に使用するのに適したネットワーク・アーキテクチャのいくつかの実施例は、２００２年１２月２３日出願の「ユニバーサル・ステートレス・デジタル及びコンピューティング・サービスを提供準備するためのシステムと方法」と題する米国特許出願第１０／３２８，６６０号、２００５年４月１２日出願の「ファイアウォールされたサーバとファイアウォールされたクライアントとの間のセキュア・インターネット接続を自動的に開始し動的に確立するためのシステムと方法」と題する米国特許出願第１０／３２８，６６０号及び第１１／１０４，９８２号とに記載されており、これら両出願の全体をここに参考文献として組み込む。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】米国特許出願第１０／３２８，６６０号
【特許文献２】米国特許出願第１１／１０４，９８２号
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上述したように、ローカル・エリア・ネットワークや、ネットワーク装置に接続された１つ以上の遠隔サーバへのアクセス、及び、それらからのサービス、を遠隔装置に提供する従来のアプローチは、ハードウエアとソフトウエアのコストと、システム管理・維持の複雑性、コスト、遠隔装置に対して課せられる比較的高い演算負荷、サービス可能な装置種類に対する制約、種々のセキュリティ上の脅威に対する脆弱性、に関連する欠点を有している。これらの欠点のいくつかは、従来のソリューションが、ネットワーク・バンド幅の制限に対応するべく構成されたものであることにその原因であるが、これらの制限は現代の高速ネットワークによって既に軽減又は除去されている。従来のシステム及びネットワークの欠点に鑑みて、セキュリティを損なうことなく、又、大きな新しいハードウエア・アーキテクチャ及びソフトウエア・アーキテクチャに対する投資無しで、あたかもそのユーザがオフィスにいるかのように、どこからでも、ユーザが、デスクトップ・サービス、ソフトウエア・アプリケーション、ｅメール、データ・ファイル、などを含む遠隔サービスに安全にアクセスすることを可能にするシステムと方法を提供することが望まれている。
【００１３】
従来の遠隔アクセス技術は、典型的には何らかの方法でユーザを認証することによって、例えば、ログインとパスワードの組合せで認証することによって、遠隔装置にユーザに対してサービスへのアクセスを許可する。次に、そのユーザが適当なソフトウエアがインストールされ、かつその対応のサービスにアクセスするように設定されている遠隔装置を介しネットワークに接続されていることを条件に、当該ユーザは、その認証されたサービスにアクセスすることが可能となる。しかしながら、従来の遠隔アクセスにおいては、このプロセスは、ユーザがアクセスすることを希望するサービス毎に繰り返されなければならない。更に複雑なことに、異なるサービス・プロバイダによって提供されるサービスは、遠隔アクセスを促進するために、異なるソフトウエア、アーキテクチャ、などを要求するかもしれない。従って、従来の遠隔アクセス技術を使用することによっては、真の、汎用でフレキシブルで、セキュアな遠隔アクセスは不可能である。
【００１４】
出願人は、単一の認証・接続プロセスを使用する１以上のサービス・プロバイダからの種々のサービスを提供することによって、遠隔からサービスにアクセスするための単純で、セキュアでユーザが直覚的に理解できるアーキテクチャを促進することが可能であると判断した。いくつかの実施例によれば、１つ以上のサービスを得るためのネットワークを介して接続された１つ以上のサーバへの遠隔装置によるアクセスを促進するためのネットワーク環境が提供される。前記遠隔装置によってアクセスされる各サービスは、前記遠隔装置に提供されるべき後続のサービスに連鎖させることができる。ここで、「サービス」という用語は、遠隔ロケーションにおけるネットワークを介した任意のサーバの利用をいう。サービスは、デスクトップ・サービス、ｅメール、１つ以上のアプリケーションへのアクセス、データ、情報、前記サーバによって提供可能なその他の演算タスク、を含む。より詳しくは、サービスは、サーバ上で実行される、任意のプログラム、コード、アプリケーションとすることができ、ここで、実行されたコードが前記遠隔装置とインタラクションする。
【００１５】
コネクタ・サービスは、サービスを使用して遠隔装置へと伝送されるコンテンツの方式や形式により、より一般的なサービスとは区別される特定の種類のサービスである。ここで、コネクタ・サービスとは、データの元の形式からインタラクティブ形式への変換を促進するために、１つ以上の機能を実行すべく、サーバ上で実行される１つ以上のプログラムをいう。例えば、コネクタ・サービスは、そのサービス・プロバイダに固有なデータを、当該遠隔装置側の出力装置（例えば、ディスプレイ、スピーカ）でいかにレンダリングするかを指示するレンダリング・コマンドから成るインタラクティブ形式へと翻訳してもよい。例えば、前記レンダリング・コマンドは、前記遠隔装置上での表示のための、画素、音声動画、を表すビット・ストリームを含むことができる。
【００１６】
コネクタ・サービスは、潜在的に機密データの可能性があるデータを、サービス・プロバイダから伝送することなく、あるいは、遠隔装置において保存することなく、サービスに遠隔アクセスすることを促進し、これにより、そのサービスに対するセキュアなアクセスを提供する。また、前記コネクタ・サービスは、遠隔装置が、その固有の形式でデータを取り扱うためのソフトウエアをインストールする必要なく、サービスにアクセスすることを可能にし、それによって、ステートレス（stateless）な装置（段落〔００４８〕参照）が種々のサービスにアクセスすることを可能にする。ここでいう「連鎖された」「連鎖」という用語は、１つのサーバ又はサービスが、実行されるべき次のサービスを選択、特定、参照することで、遠隔装置が再度認証したり、所望のサービスを再度選択することを必要とせずに、複数のサービスが実行される状況をいう。
【００１７】
現在のコンピュータ環境におけるほど情報システムを効率的に管理することがより困難で重要になったことはかつて無かった。デスクトップ・システムを所有するコストが増大するにつれて、企業は購買・更新コスト及び管理・維持コストを削減する方法を必要とする。しかしながら、これらの節約によって機能性や性能が失われることは避けなければならない。従って、既存のハードウエア及びソフトウエア・アーキテクチャを変更することなく、或いは、それらに対する変更を最小限にして、制約されず、元のセキュアな遠隔アクセスを提供することができるサービス提供システムを持つことが望まれている。
【課題を解決するための手段】
【００１８】
本発明のいくつかの実施例は、第１装置に対してサービスを提供することが可能なサーバを見つけるように構成されたネットワーク・スイッチング・センタを使用してネットワークを介して第１装置にサービスを提供する方法を含み、当該方法は、前記第１装置に提供される第１サービスを識別する工程と、前記ネットワーク・スイッチング・センタから第１サーバに対して、遠隔装置が前記第１サービスを要求しているという通知を提供する工程と、前記第１サーバによって前記遠隔装置に対して前記第１サービスを提供する工程と、そして、前記第１サーバによって前記ネットワーク・スイッチング・センタに対して、前記遠隔装置に対して提供されるべき第２サービスを指示する工程とを有する。
【００１９】
本発明のいくつかの実施例は、ネットワークを介してサービスを提供するシステムを含み、当該システムは、前記ネットワークを介して通信可能な少なくとも１つのネットワーク装置と、前記少なくとも１つのネットワーク装置に対してサービスを提供することが可能なサーバを見つけるように構成されたネットワーク・スイッチング・センタと、そして、前記ネットワーク装置に対して少なくとも１つのサービスを提供するように構成された複数のサーバとを有し、ここで、前記少なくとも１つのネットワーク装置のうちの第１ネットワーク装置に対して提供されるべき第１サービスが識別されると、前記ネットワーク・スイッチング・センタが、前記第１サービスを提供することが可能な前記複数のサーバから第１サーバを識別し、かつ、前記第１サーバに対して前記第１サービスを指示するように構成され、更に、前記第１サーバが、前記第１サービスを提供するとともに、前記ネットワーク・スイッチング・センタに対して、前記第１ネットワーク装置に対して提供されるべき第２サービスを指示するように構成されている。
【００２０】
本発明のいくつかの実施例は、複数のネットワーク装置と複数のネットワーク・サーバとを有するネットワークを介して、通信を行うように構成されたネットワーク・スイッチング・センタであって、前記ネットワーク・スイッチング・センタが、前記ネットワークを介した通信のために構成された少なくとも１つのネットワーク・ポートと、前記少なくとも１つのネットワーク・ポートに接続されたコントローラであって、前記コントローラが、前記複数のネットワーク装置からのサービス要求と、前記複数のネットワーク・サーバからのサービス連鎖要求と、を処理するように構成されたコントローラとを有し、ここで、前記複数のネットワーク装置の第１ネットワーク装置からの第１サービス要求を受けると、前記コントローラが、前記第１サービスを提供可能な前記複数のサーバから第１サーバを見つけ、かつ、前記第１サーバに対して、前記第１ネットワーク装置へ提供されるべき前記第１サービスを指示するように構成され、更に、前記第１ネットワーク装置に対して提供されるべき第２サービスを指示する前記第１サーバからのサービス連鎖要求を受けると、前記コントローラが、前記第２サービスを提供可能な前記複数のサーバから第２サーバを見つけるように構成されている。
【図面の簡単な説明】
【００２１】
【図１Ａ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図１Ｂ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図１Ｃ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図１Ｄ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図１Ｅ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図１Ｆ】本発明の一実施例による、サービス連鎖のためのシステムと方法とを図示している。
【図２】本発明の別実施例によるサービス連鎖方法を図示している。
【図３】本発明の更に別の実施例による種々の態様のサービス連鎖を組み込んだネットワーク・システムを図示している。
【発明を実施するための形態】
【００２２】
以下、本発明に関連する種々の概念と、本発明による方法及び装置の実施例についてより詳細に説明する。尚、ここに記載する種々の態様は、いかなる方法によっても実施することができると銘記される。特定の実施例は、ここで例示の目的のみで提供される。特に、種々の任意のネットワーク、ネットワーク・プロトコルを使用する種々のネットワーク実装及び構成を本発明の態様として使用することができ、これらはいかなる特定の種類のネットワーク、ネットワーク構成、ネットワーク装置にも限定されるものではない。
【００２３】
図１Ａ〜図１Ｆは、本発明のいくつかの実施例による、遠隔装置への１つ以上のサービスの提供を促進するためのネットワーク・アーキテクチャを図示している。図１Ａに図示されているように、システム１００は、ルータ１１５を介して信頼できないネットワーク１５０（例えば、インターネット）に接続されたサーバ１１０を含む。システム１００は、更に、ルータ１２５を介して信頼できないネットワーク１５０に接続された遠隔装置１２０も含む。遠隔装置１２０は、ワイヤレス・リンク又はハードワイヤド接続を介して前記ネットワーク１５０に接続することも可能である。例えば、ルータ１２５は、前記遠隔装置をネットワーク１５０にワイヤレスに接続する１つ以上のワイヤレス・アクセス・ポイントを有することができる。或いは、前記遠隔装置１２０は、有線接続を使用して前記ネットワークに接続することも可能である。例えば、遠隔装置１２０は、ホーム・オフィスのネットワーク接続、又は、有線ネットワーク・ポートを提供するその他のロケーション、を介して前記ネットワークに接続されたラップトップ・コンピュータとすることができる。
【００２４】
前記遠隔装置１２０や前記遠隔装置１２０のユーザは、サーバ１１０にとって未知であるか、又は信頼されていないかもしれない。しかし、これは本発明の態様においては制限とならない。というのは、遠隔装置１２０や遠隔装置１２０のユーザは、既知であるか、信頼されているか、又はその両方でありうるからである。例えば、サーバ１１０は、遠隔装置１２０を使用する遠隔ロケーションから企業ＬＡＮへのアクセスを試みるユーザの企業ＬＡＮ上に位置しているかもしれない。そのようなシナリオによれば、前記遠隔装置１２０及び前記遠隔装置１２０のユーザは、サーバ１１０に一般に認知されており、信頼されているかもしれないが、サーバ１１０は、それが前記企業ＬＡＮの外部から前記ネットワークに接続される時には、前記遠隔装置あるいは前記遠隔装置のユーザの認証を確認する能力が限られているかもしれない。システム１００は、更に、ネットワーク・スイッチング・センタ（ＮＳＣ）１３０を有し、これは、遠隔装置１２０とサーバ１１０との間の通信リンクの確立を促進するためにネットワーク１５０に接続されている。前記サーバ、ＮＳＣは、更に、ワイヤレス・リンク、有線リンク、又は任意の種類の適当なネットワーク接続を介して前記ネットワーク１５０に接続されることも可能である。
【００２５】
尚、前記ネットワーク１５０は、任意の種類及び構成の複数のネットワークから構成されうることが理解されるべきである。例えば、ネットワーク１５０は、多数のネットワークを含むことができ、これらのネットワークのそれぞれがこのネットワークに接続された種々のネットワーク装置によって発行されるネットワーク・アドレスのネットワーク識別部分によって識別される。この点に関して本発明は限定されるものではないので、ネットワーク１５０は、１つ以上のプライベート・ネットワーク、ローカル・エリア・ネットワーク（ＬＡＮ）、広域ネットワーク（ＷＡＮ）、インターネット、などをも含むことができる。ネットワーク１５０は、１つ以上の協働するルータを含むことができ、これらルータは、異なるネットワーク間のネットワーク・トラフィックを管理し、ネットワークに接続された遠隔装置によるローミングを促進する。一般に、ネットワーク１５０は、互いに通信することが可能な１つ以上のネットワークの集合を指すが、但し、それは、いかなるネットワークの種類、構成、又は数にも限定されるものではない。
【００２６】
ＮＳＣ１３０は、一般的に、サーバ１１０によって認知され、信頼されており、サーバとの間で信頼できるリンクが確立されており、これによってＮＳＣはサーバに対して情報を通信することができる。例えば、トランスポート・コントロール・プロトコル（Transport Control Protocol） （ＴＣＰ）を介して、又は、セキュア・ソケット・レイヤ（Secure Socket Layer） （ＳＳＬ）で前記ＮＳＣに接続することができる。図１Ｂに図示されているように、サーバ１１０は、ＮＳＣ１３０との通信リンクを開始し、確立することができる。或いは、ＮＳＣ１３０がそのリンクを開始することも可能である。しかし、サーバにそのプロセスを開始させることによって、サーバ１１０は、ＮＳＣ１３０が信頼できることを確認するためのプロセスに対してより大きな制御を行うことが可能である。サーバ１１０は、ＮＳＣの真正性と信頼性について自身が満足できるいかなる種類のセキュリティ手段又は認証手順も行うことができる。
【００２７】
同様に、ＮＳＣ１３０は、遠隔装置１２０に一般的に認知され、信頼されていてもよい。遠隔装置１２０は、例えばサーバ１１０によって提供される１つ以上のサービスにアクセスするために、サーバ１１０との通信を望む場合、ＮＳＣ１３０に接続し、これとインタラクションするように構成することができる。このアクションを促進するために、ＮＳＣ１３０は、遠隔装置１２０とサーバ１１０との間の信頼できる媒介として作用することができる。尚、この点に関して本発明の態様は限定されることがないので、任意の数の信頼できる、あるいは信頼できない、遠隔装置とサーバの組合せの間での、一般的に信頼できる媒介として作用するべく、複数のサーバと複数の遠隔装置に接続することも可能である。一般に、ＮＳＣは、サーバ１１０が後に詳述するプロセスによって１つ以上のサービスを遠隔装置１２０に提供することが可能であるように、遠隔装置１２０のサーバ１１０への接続を支援するように構成されている。
【００２８】
図１Ｃに図示されているように、前記遠隔装置は、ネットワーク接続１１７（例えば、ＳＳＬ等の暗号化された接続、又は、その他任意の種類の接続）を介してＮＳＣ１３０に接続することもできる。前記遠隔装置がＮＳＣ１３０に接続されると、認証のために、この遠隔装置の一時的ＩＤが設定される。この一時的ＩＤは、秘密ＩＤ（ＩＤ）や、ユニークなネットワークＩＤ（例えば、遠隔装置のＩＰアドレス）から構成されうる。本発明の態様はこの点において限定されるものではないので、前記一時的ＩＤは、遠隔装置を安全に識別するための様々の又は追加の複数の識別子から構成することも可能である。すなわち、ＮＳＣは、遠隔装置をユニークに識別することが可能で、悪意ある装置が遠隔装置のＩＤになりすますことの防止を促進する任意の様々な認証スキームを使用してよい（例えば、悪意のある者が１つ以上のサービス、データ、その他の秘密情報にアクセスするために正規の遠隔装置になりすますことを防止する）。  
【００２９】
ＮＳＣ１３０は、接続を確立するのに使用される遠隔装置のネットワーク・アドレスを取得し、その遠隔装置に独自な識別子を形成するための秘密ＩＤを生成する。例えば、ＮＳＣはこの秘密ＩＤとして乱数を生成することができる。いくつかの実施例において、前記秘密ＩＤは、ＮＳＣ又は遠隔装置の、ＩＰアドレス、ハードウエア・アドレス、地理的ロケーション、などと無関係なものとすることができる。前記秘密ＩＤとネットワークＩＤとは、協働で、ＮＳＣに対して、前記遠隔装置の身元と真正性の証明として作用することができる。
【００３０】
図１Ｄに図示されているように、ＮＳＣ１３０は、遠隔装置と当該ＮＳＣとの間に確立された前記リンクを介して秘密ＩＤ１２７を転送する。前記ＮＳＣと遠隔装置は、前記秘密ＩＤを所有する唯一の実体であってよく、これは、遠隔装置が再始動、再起動したり、その他の前記秘密ＩＤを失効させる処理を受けるまで、双方によって認証のために保持される。前記ネットワーク・アドレスと秘密ＩＤはシステム１００において認証メカニズムとして作用するものであるが、この点に関して本発明の態様は限定されるものではないので、遠隔装置を安全に識別するためにいかなる認証方法でも使用することが可能である。
【００３１】
図１Ｅにおいて、ＮＳＣ１３０は、サーバ１１０に対して、遠隔装置１２０が１つ以上のサービスにアクセスするためにこのサーバに接続を望んでいることを通知する。ＮＳＣ１３０からのこの通知は、前記遠隔装置１２０のネットワーク・アドレスを含むことができ、更に、サーバ１１０によって必要とされる、又は、望まれるその他任意の追加情報（例えば、遠隔装置が要求している１つ以上のサービス）を含むことができる。次に、図１Ｆに図示されているように、サーバ１１０は、ＮＳＣ１３０によってそれに供給された前記情報（例えば、ネットワーク・アドレス）を使用して前記遠隔装置との通信リンクを開始し、確立する。次に、サーバはその要求されたサービスを遠隔装置１２０に提供してもよい。
【００３２】
尚、一旦、サーバ１１０と遠隔装置１２０との間の接続が確立されたならば、ＮＳＣはもはや、このサーバと遠隔装置との間に確立されたリンクを介するその後の通信に関わる必要はなくなる。すなわち、信頼できないネットワークを介する通信路は、ＮＳＣ１３０を含まなくてもよい。このように、ＮＳＣは、接続を確立するための通信媒介としては作用するが、その接続を介するその後の通信には関与しなくてもよく、遠隔装置１２０とサーバ１１０との間で送られるネットワークパケットをＮＳＣ１３０を介してルーティングする必要はない。従って、サーバ１１０は、その指示又は選択されたサービスを遠隔装置１２０に送る。例えば、サーバ１１０は、デスクトップ・サービス、或いはｅメールやそのサーバにとってローカルである他のアプリケーション、を提供することができる。サーバ１１０は、ユーザが希望する動画や音声コンテンツなどのコンテンツを提供することができる。本発明の態様はこの点において限定されるものではないので、いかなるサービスでも提供可能である。
【００３３】
単一のサービス・アーキテクチャにおいて、サーバが選択されたサービスを提供した後、サーバはその接続を終わらせることができる。従って、遠隔装置１２０は、追加のサービスを得るためにはＮＳＣ１３０との別のトランザクションを開始しなければならないかもしれない。例えば、遠隔装置１２０は、別のサービスを要求するためにその秘密ＩＤを使用してＮＳＣにコンタクトするかもしれず（すなわち、ＮＳＣに対して、その要求する後続のサービスを提供する適当なサーバとの接続を確立させることによって）、ＮＳＣは、接続を開始し、遠隔装置１２０がそのサービスの１つにアクセスしようとしていることをその提供サーバに通知する必要な機能を実行しなければならない。このプロセスは、遠隔装置が後続の又は追加のサービスを要求する度に、反復される必要がある。
【００３４】
出願人は、遠隔装置が別のサービスにアクセスを求める毎にＮＳＣ１３０とのコンタクトを再設定しなければならないのは不便かもしれないと判断した。更に、この必要性によって、ユーザ・エクスペリエンスは、ユーザがローカルに接続されている場合、例えば自分の企業ＬＡＮにローカルに接続されている場合、に提供されるユーザ・エクスペリエンスを綿密にシミュレートするものではなくなるといったように、使いづらく、非直感的なものになるかもしれない。前記単一サービス構造は、サーバ１１０が遠隔装置１２０に対してフレキシブルにサービスを提供するときに制約を与えるかもしれない。例えば、サーバ１１０が、１つのサービスの完了後に、別のサービスを提供することを望んだり、或いは、別のサーバに追加サービスを提供するように協力を求めるかもしれない。単一サービス・アーキテクチャでは、通常１つのサービスの期限満了がそのサーバと遠隔装置との間のセッションを終了させることになるので、これは実用的ではない（或いは不可能ですらある）。
【００３５】
出願人は、前記単一サービス・アーキテクチャの種々の欠点を、複数のサービスをここでサービス連鎖と呼ぶプロセスにおいて互いに連結させることにより、なくすことができると判断した。サービス連鎖では、現在のサービスの完了時、終了時、中断時において、その参照されるサービスが制定されるように、現在のサービスが別のサービスへの参照を含んでよく、もしくは、サーバが別のサービスへの参照を提供してよい。サービス連鎖は、サーバが複数のサービスを提供し、そのサーバが提供するサービスをカスタマイズする機会を提供することにおいて、サーバにフレキシビリティを提供する。また、サービス連鎖は、サービス・プロバイダに対して、ユーザが特定の所与のサービスからどのサービスに進めばよいかを制御するための容易な管理方法も提供する。更に、サービス連鎖は、以下で詳述するように、新たなサーバとサービスがシステムに追加される場合に、ＮＳＣに対する負担を軽減することができる。
【００３６】
図２は、本発明の一実施例によるサービス連鎖の方法を図示している。この方法２００は、例えば、図１に図示のシステムにおいて実施することができる。工程２１０において、遠隔装置が、当該遠隔装置もしくはそのユーザが加入している１つ以上のサーバからのサービスを要求するサービス要求をＮＳＣに対して行う。前記サービス要求は、ＮＳＣにコンタクトしている遠隔装置だけを対象とする。ここで、「加入者」という用語は、ＮＳＣに登録しており、ネットワークを介して少なくとも１つのサービスにアクセスできるように加入しているネットワーク装置又は遠隔装置やユーザのことをいう。遠隔装置は、例えば、起動時等において、自動的にＮＳＣとコンタクトするように構成することができるし、或いは、コンタクトがユーザによって開始されるようにできる（例えば、ユーザがＮＳＣに接続するオプションを選択するか、さもなければ、ＮＳＣがコンタクトされるべきであることを指示する）ことも可能である。
【００３７】
工程２２０において、ＮＳＣは、遠隔装置からのサービス要求を受け取り、その遠隔装置やユーザが認証されたものであるか否かを調べる。もしその遠隔装置やユーザがまだ認証されていなければ、工程２３０に示されているように、ＮＳＣは遠隔装置やユーザを認証し、その遠隔装置やユーザがＮＳＣに登録されていることを確かめる。遠隔装置やユーザが認証されるには様々な方法がある。一つの実施例では、ＮＳＣは遠隔装置やユーザが認証されていることを確かめる確認プロセスを扱う認証サービスを開始する。前記認証サービスは、ユーザがユーザ名とパスワードを入力できるようにログイン画面を提示するように構成できる。これにより、ＮＳＣはそのユーザによって提供されたユーザ名とパスワードの組合せが正しいものであることを確かめ、その情報を使用して加入者を識別することができる。
【００３８】
別実施例において、前記認証サービスはユーザに対して透過的に機能する。例えば、遠隔装置に関する認証情報を加入者ＩＤモジュール（ＳＩＭ）によって提供することができる。この加入者ＩＤモジュール（ＳＩＭ）は、遠隔装置からプログラムによって発行することが可能なエンド・ユーザに関するＩＤ情報を格納することができる。更に、遠隔装置に組み込んだ、又は接続したスマート・カードによって認証情報を提供することも可能である。例えば、遠隔装置がスマート・カード・リーダを備えたり、或いはそれをスマート・カード・リーダに接続することができる。ユーザは、自分のスマート・カードをリーダに提供してこのようにして認証される。或いは、認証情報が、ネットワーク・インターフェース・カード（ＮＩＣ）識別子などの遠隔装置のハードウエア識別から得られるように構成することもできる。本発明はこの点に関して限定されるものではないので、遠隔装置によってプログラム発行されたり、ＮＳＣによって得られるその他の認証情報を認証のために使用することも可能である。尚、以上の説明から、認証はユーザ側で（例えば、ログイン・パスワード、パーソナル・スマート・カード、など）、又は、遠隔装置側で（例えば、ＳＩＭ番号、ＮＩＣ  ＩＤ、ハードウエアＩＤ、等）行うことが可能であることが理解される。従って、ここで、「遠隔装置やユーザ」という用語は、遠隔装置又はユーザを指すものであって、これらの両方を要件とするものではない。
【００３９】
いずれにせよ、ＮＳＣは次に、その提供された認証情報を使用して遠隔装置やユーザの身元を確認する。例えば、ＮＳＣは、その認証情報を利用して、ここではネットワーク加入者ＩＤ（ＮＳＩ）と称する、ＮＳＣによってその内部で使用される遠隔装置やユーザの対応のローカル識別子を索引付けし見つけることができる。例えば、ＮＳＣは、各有効な加入者に対応のグローバルにユニークなＮＳＩを格納し、このＮＳＩを有効で正しい認証情報と関連付けることができる。ＮＳＣが認証情報を受け取ると、それはこの認証情報を使用して、そのサーバ要求を提供した遠隔装置に対応するＮＳＩを索引付けし、得ることができる。
【００４０】
もしも得られた認証情報に関連付けられたＮＳＩが存在しないならば、認証サービスは遠隔装置に対して、ＮＳＣはその遠隔装置やユーザを有効で認証された加入者とは認識しない、ということを示すことができる。もしも認証情報に関連付けられたＮＳＩが存在しているのであれば、セッションが開始され、ＮＳＣは、上述したようにそのセッションの間の使用のために遠隔装置に対して秘密ＩＤを発行する。
【００４１】
ＮＳＣとの接続の一部として、遠隔装置は装置パラメータと能力とに関連する情報を送ることができる。例えば、遠隔装置は、画面サイズ、動画暗号化能力、音声能力、コーデックス、その他、その遠隔装置にサービスを提供するために有用又は必要なその他のパラメータ（複数でありうる）等の処理パラメータも送ることができる。次に、これらの装置パラメータは、その遠隔装置のためにＮＳＩと関連付けられて格納することができる。その点に関して本発明は限定されるものではないので、装置パラメータは、認証の前、その後、又はその一部として伝送することができる。
【００４２】
遠隔装置とのセッションが開始された後は、認証サービスを終わらせることができる。セッションとは、装置がそれに対して認証された期間のことを指し、ＮＳＣによる更なる認証を必要とするものではない（例えば、遠隔装置はＮＳＣによって生成され提供された秘密ＩＤを保有する）。セッションは、任意の数の理由によって、終わらせることができる。例えば、セッションは、遠隔装置が再起動又は再始動する時に終わらせることができる。尚、本発明はその点に関して限定されるものではないので、前記認証サービスによって、初期化手順やセッションセットアップ処理を行ってもよい。
【００４３】
上述したように、サービス連鎖のための一般的アーキテクチャによれば、各サービス又はサーバ、或いはＮＳＣは、遠隔装置に対して提供されるべき次のサービスを指示することができる。もしも連鎖されるサービスが無いのであれば、加入者のためのデフォルト・サービスを提供することができる。例えば、ＮＳＣは、各加入者に提供されるデフォルト・サービスを格納することができる。このデフォルト・サービスは、後に詳述するように、ＮＳＣによって提供されるサービス（例えば、選択サービス）、又は、サーバによって提供されるサービスに対する参照、とすることができる。従って、前記認証サービスは、遠隔装置のためのデフォルト・サービスに明示的に連鎖してもよいし、或いは、認証サービスは単純に終わることも可能であり、そして、連鎖されているサービスが存在しない場合には、ＮＳＣは遠隔装置のＮＳＩに関連付けられたデフォルト・サービスを参照する。いずれの場合でも、デフォルト・サービスが遠隔装置に提供される（工程２４０）。
【００４４】
前記デフォルト・サービスは、遠隔装置にとって利用可能な任意のサービスとすることができる。デフォルト・サービスは、遠隔装置が加入している利用可能な種々のサービスを提供する選択サービスとすることができる。例えば、前記選択サービスは、例えば、上述したように、遠隔装置があたかもそのサービスを提供するサーバとしてのその同じＬＡＮにローカルに接続されているかのように機能することを可能にするWindows環境をエミュレートするWindowsサービス等の、その遠隔装置がそこから選択することができる利用可能なサービスのメニューを提供することによって機能するものとすることができる（Windowsは登録商標）。前記サービスは、遠隔装置が商取引を行うことを可能にする表示サービスとしてもよい。例えば、前記遠隔装置はテレビ装置とすることができ、前記デフォルト・サービスは、ユーザが見る映画を選択することを可能し、その後、その選択されたサービスの一部として設定されたテレビに対してストリーミングすることができる（或いは、他のメニュー・オプションを提供する）サービスとすることができる。従って、装置に対するデフォルト・サービスは、遠隔装置の種類、能力、遠隔装置のユーザによって設定された選好、又は、ユーザの加入やセッションの態様などに応じたものとすることができる。
【００４５】
前記デフォルト・サービスは、ＮＳＣによって提供されるサービスであってもよく、或いは、ネットワークに接続された別のサーバによって提供されるサービスであってもよい。もしもデフォルト・サービスが、別のサーバによって提供されるサービスであるならば、図１との関連で上述したように、ＮＳＣは遠隔装置をその適切なサーバに接続するプロセスを開始する。具体的には、ＮＳＣはデフォルト・サービスを提供するサーバの位置（例えば、ネットワーク・アドレス）を決定すべく、データベース中でデフォルト・サービスを参照する。もしもＮＳＣがそのデフォルト・サービス（例えば、選択サービス）を提供するのであれば、ＮＳＣは、サーバと加入者との間の接続手順を開始する前に、別のサーバによって提供されるサービスが選択されるまで待つ。尚、本発明はその点において限定されるものではないので、前記デフォルト・サービスは、任意のネットワーク装置によって提供される任意の種類の任意のサービスとすることが理解されるであろう。
【００４６】
一旦、デフォルト・サービスが完了すると、次のサービスが遠隔装置に提供される（工程２５０）。この次のサービスは、前記デフォルト又は現在のサービスに連鎖されたサービスとすることができる。例えば、もしもデフォルト・サービスが選択サービスであるならば、次のサービスは、利用可能なサービスのメニューから選択されたサービスとすることができる。もしも次のサービスがＮＳＣ以外のサーバによって提供されるのであれば、ＮＳＣは前記接続プロセスを開始し、そのサーバに対して、遠隔装置がその選択されたサービスを要求していることを知らせる。次に、サーバは、上述したように遠隔装置に接続し、その選択されたサービスを提供することができる。何らかの時点で、次のサービス（これはいまや提供されている現在のサービスである）は、完了、中断、終了させることができる。
【００４７】
１つのサービスが完了、終了、中断される毎に、ＮＳＣは現在のサービスが行われるべき次のサービスを提供したか否か、すなわち、現在のサービスが実行されるべき別のサービスに連鎖されているか否かを確かめる（工程２６０）。もしも別のサービスが連鎖されていなければ、ＮＳＣは遠隔装置に対してその遠隔装置のＮＳＩに関連付けられたデフォルト・サービスを提供してもよい（すなわち、工程２４０を反復してもよい）。前記次のサービスは、遠隔装置が接続されている現在のサーバによって提供される別のサービスであってもよいし、或いは、まったく別のサーバであってもよい。もしも連鎖されているサービスが別のサーバによって提供されるものであるならば、ＮＳＣは、図１に関連して前述したように、その新しいサーバと遠隔装置との間の接続を開始することができる。工程２６０は次のサービスが連鎖されるまで反復することができ、その場合、ＮＳＣは遠隔装置にデフォルト・サービスを提供することができる。このようにして、サービス連鎖法を図１に図示のネットワーク・システム上で実行することができる。
【００４８】
図３は、本発明のいくつかの実施例によるサービス連鎖を実行するシステムを図示している。システム３００において、種々の遠隔装置３２０がネットワークに接続され、ＮＳＣ３３０を利用してネットワークを介して提供されるサービスにアクセスする。更に、前記ネットワークとＮＳＣ３３０とには複数のサービス・センタ３１０が接続されている。ここでサービス・センタとは、ＮＳＣと接続されて要求する遠隔装置に１つ以上のサービスを提供するために作動するように構成された１つ以上のサーバの任意の集合をいう。前記サービス・センタは、正規の加入者にサービスを提供する１つ以上のサーバを含むことができる。例えば、サービス・センタ３１０ａは、種々の遠隔装置３２０を介して遠隔アクセスを提供する１以上のユーザの企業ＬＡＮとすることができる。サービス・センタ３１０ｂは、電子媒体の商用プロバイダとすることができる。例えば、サービス・センタ３１０ｂは、鑑賞、聴取のために遠隔装置に提供される動画、音声のベンダとすることができる。本発明はその点において限定されるものではないので、サービス・センタ３１０は任意の種類、数のサービスを提供する１つ以上のサーバの集合とすることができる。
【００４９】
遠隔装置３２０ａは、ネットワーク３５０に接続可能な任意のネットワーク装置とすることができる。例えば、遠隔装置３２０ａは、ユーザがその遠隔装置によってアクセス可能となる、仕事用ｅメールやその他のアプリケーションなどの１つ以上のリモート・サービスへのアクセスを得るために使用する、ラップトップ又はホームＰＣとすることができる。ステートレス・ネットワーク・アプライアンス（Stateless Network Appliance: SNAP）３２０ｂも、ネットワーク３５０を介して当該ＳＮＡＰによって利用可能な１つ以上のサービスにアクセスするためにネットワークに接続されている。ここで、ステートレス装置（stateless device）とは、実質的に１つのネットワーク及びディスプレイ管理装置として機能することができる装置をいう。具体的には、前記ステートレス装置は、主として、そのステートレス能力で動作している時、ネットワークに対するヒューマン・インターフェース装置として動作することができる。ステートレス装置は、通常、アプリケーションを実行するものではなく、ネットワーク機能を実行し、ネットワークを介して受け取った情報を表示するソフトウエア以外のいかなるソフトウエアもダウンロードしない。その結果、ステートレス装置（そのステートレス能力で動作している時）は、実質的なユーザ機能を実行する必要はなく、あるいは、なんら重要な、恒久的なユーザ・データを含む必要がない。
【００５０】
ステートレス装置が、他のネットワーク装置へのアクセス、他のネットワーク装置とのインタラクション、他のネットワーク装置からのサービスの受け取りを可能にすることによって、従来のネットワーク・コンピューティングに関連する１つ以上の問題を軽減あるいは解消することができる。例えば、ステートフル・コンピューティング装置は、ハッキング、ホスト及び拡散したウイルスの両方への計算機環境の確立、又は、ユーザがネットワーク環境においてセキュリティを破り、脆弱性を攻撃したり、さもなければ、ステートフル装置の機能を悪用したりを可能にするといった、多数のセキュリティ問題に対処する大きな責任がある。
【００５１】
これに対して、ステートレス装置は、上述した様々な能力を利用する機能性を大きく剥奪されている。しかしながら、ステートレス装置は、上述したアーキテクチャとの関連によって、当該ステートレス装置がいわゆる「ダム端末」として機能することを可能にしながらも、ネットワークを介して利用可能なリソースから便益を受けることを可能にする。具体的には、ステートレス装置は、その装置自身が関連する機能について実行可能化される必要無く、いかなる演算環境もシミュレートすることができる。例えば、ステートレス装置は、ネットワーク・サービスとインタラクションし、Windowsオペレーティング・システムをステートレス装置にインストールする必要なく、ユーザのWindows環境にアクセスすることができる（Windowsは登録商標）。ステートレス装置はネットワークに対するインターフェースとして機能しているので、その機能がステートレス装置に常駐しなければならないという要件に関連する付随的な欠点をもたらすことなく、ステートレス装置が任意の装置又は機能のシミュレーションを可能にする情報をネットワークを介して受け取る。 
【００５２】
ステートレス装置は、ネットワーク・コンピューティングにおいて、演算負荷や機能負荷がネットワークに接続されている装置（例えば、ラップトップやＰＣ）にかかるというパラダイムから、機能と演算を主としてネットワークに接続されたサーバによって行うことが可能であるというパラダイムへのシフトを促進する。上述したいくつかの利点の中で、この新しいパラダイムによって、従来はネットワークの能力（例えば、テレビジョン、その他ディスプレイを備えるすべての装置）を享受できなかった、或いは限定的にしか享受できなかった装置が完全なネットワーク機能を備える装置になることが可能になる。ステートレス装置は、そのステートレス装置がインタラクションしている、あるいはインターフェースしているホストやサーバによって維持されるデータのインテグリティを保持しながら、１つ以上のネットワークを介してサービスと完全にインタラクションしアクセスするための比較的安価な手段を提供する。
【００５３】
尚、ステートフル装置（パーソナル・コンピュータや、デジタル・アシスタント、など）をステートレス状態で機能することも可能であると理解される。すなわち、ステートフル装置は、アプリケーションの実行、データや情報の格納、等のステートフル装置としてのその能力をある程度抑制することによって、ステートレス装置として機能することができる。但し、純粋にステートレスな装置は、ネットワーク・アプライアンスとして、ユーザが、どこかに格納されているネットワーク上の情報とインターフェースし、ネットワーク上のどこか他のロケーション（例えば、そのネットワーク・アプライアンスが接続されている１つ以上のホスト又はサーバによって）で計算され、実行され、提供されるサービスや機能を受け取ることを可能にする。システム３００のコンテクストにおけるステートレス装置に関連するその他の利点については、後に更に詳述する。
【００５４】
図３において、システム３００は、更に、ネットワーク３５０に接続されるとともにＮＳＣ３３０との通信が可能なモバイル装置３２０ｃを有する。モバイル装置３２０ｃは、ラップトップ、携帯電話、パーソナル・デスクトップ・アシスタント（ＰＤＡ）、或いは、ネットワークとの通信が可能なその他の装置、等の任意の数の一般に携帯式である装置とすることができる。モバイル装置３２０ｃはステートレス又はステートフル装置のいずれであってもよい。尚、ネットワークに接続される遠隔装置３２０の数や種類について特に限定は無く、図３に図示されている構成は、接続されて本発明のいくつかの態様が実施可能なシステムを形成する遠隔装置及びサービス・センタのいくつかの可能な実施例を単に例示するものに過ぎない。
【００５５】
ＮＳＣ３３０は、図１に関連して記載し、図２に関連して記載してサービス連鎖方法との関連で記載したＮＳＣ１３０に同様の方法で動作することができる。これらの機能を実装するために、ＮＳＣ３３０は、遠隔装置、ユーザ、サービス・センタについての情報を格納するデータベース（データストア）３３２を備えることができる。データベース（データストア）３３２は、任意の種類の複数のデータベースを備えてもよい。例えば、データベース（データストア）３３２は、１つ以上のリレーショナル型又はオブジェクト指向型データベースを備えることができる。データベース（データストア）３３２は、それに対してＮＳＣが媒介として機能してサービス・センタとの接続を確立し、１つ以上のサービスをその遠隔装置やユーザに提供するプロセスを促進することが可能な、１つ以上の遠隔装置についての情報を格納することができる。データベース（データストア）３３２は、後に詳述するように、ＮＳＩの、そして、利用可能なサービスや、サービス特定識別番号、装置パラメータ、等のセッションに関連する情報を、関連して格納するための加入者テーブル３３２ａを備えることができる。
【００５６】
ＮＳＣ３３０は、更に、登録された装置やユーザと通信し、現在のセッションを管理や維持するように構成されたクライアント・マネジャ（ＣＬＭ）３３６を含むこともできる。ＣＬＭ３３６は、データベース（データストア）３３２に接続されて、装置やユーザを伴う現在のセッションに関して、情報を入手し、データベースを更新する。ＣＬＭ３３６は、後に詳述するように、前記サービス・センタによって提供される１つ以上のサービスへのアクセスの提供を促進するための種々の処理を実行するようにプログラムされた１つ以上のソフトウエア・コンポーネント又はモジュールとして構成することができる。前記ＣＬＭ３３６が加入者側で作動し、ＳＣＣＭ３３４がサービス・センタ側で作動して、これらの協働で、加入者とサービス・センタとの間で最初の接続が確立され、後に詳述するように、サービス連鎖環境における加入者へのサービスの提供を促進するための種々のその他の処理を実行する。
【００５７】
ＮＳＣ３３０は、更に、サービス・センタ３１０と通信し、サービス・センタとのセッションを管理や維持するように構成されたサービス・センタ・マネジャ（ＳＣＣＭ）３３４を含むこともできる。ＳＣＣＭ３３４は、データベース（データストア）３３２に接続されて、利用可能なサービスやサービス・センタについての情報を入手し、提供を受けている現在のサービスに関するデータベースを更新する。ＳＣＣＭ３３４は、サービス・センタによって提供される１つ以上のサービスへのアクセスの提供を促進するための種々の処理を実行するようにプログラムされた１つ以上のソフトウエア・コンポーネント又はモジュールとして構成することができる。協働して、加入者側で動作するＣＬＭ３３６と、サービス・センタ側で動作するＳＣＣＭ３３４とは、後に詳述するように、加入者とサービス・センタの間で初期接続を確立して動作し、サービス連鎖環境において、加入者に対するサービス供給準備を促進する様々な他の処理を実行する。
【００５８】
前記ＮＳＣは、このＮＳＣに登録されている各々の遠隔装置やユーザに対する固有の識別子（すなわち、ＮＳＩ）を格納している。ＮＳＣはこのＮＳＩを使用してネットワーク上の各遠隔装置をユニークに識別し、その装置を、当該装置と利用可能なサービスに関する情報と関連付ける。各加入者のＮＳＩは、ＮＳＣにおいて維持し、遠隔装置やサービス・センタとは共有されないようにすることができる。ＮＳＩは、加入者テーブル３３２ａにおいて格納し、遠隔装置やユーザを認証し、許可するために使用される認証情報に関連付けることができる。例えば、ＮＳＩは、遠隔装置のユーザが提供する、或いは、それによって遠隔装置が１つ以上のサービスにアクセスしようとする時に自動的に発行する、ユーザ名とパスワードの組合せなどのログイン情報と関連付けられて格納されてよい。或いは、前記ＮＳＩは、ＳＩＭ番号、スマート・カードＩＤ、又は、遠隔装置やユーザをセキュアに識別する、その他のハードウエア・アドレス識別子（ＮＩＣ識別子など）と関連付けて格納されてもよい。
【００５９】
サービスへのアクセスを要求している遠隔装置から発行されるサービス要求は、ＣＬＭ３３６によって処理され、ＣＬＭ３３６は、それに応答して、ＮＳＣの認証サービスを開始することができる。この認証サービスは、遠隔装置に対して、ＣＬＭが期待している種類の認証又はログイン情報に依存する認証プロセスを提供するように構成することができる。例えば、もしもＣＬＭがユーザ名とパスワードの組合せを期待しているであれば、前記認証サービスは、遠隔装置に、ユーザが適当なユーザ名とパスワードの組合せを入力することを要求するログイン表示を提供することができる。もしも遠隔装置が、サービス要求の作成時にＳＩＭ番号又はＮＩＣ  ＩＤを発行するようにプログラムされているのであれば、前記認証サービスは、ユーザに対してなんら提供する必要はなく、その提供された認証情報を処理するように進むことができる。
【００６０】
いずれにせよ、何らかの手段によってＣＬＭによって受信される提供されたログイン情報は、前記加入者テーブルに索引付けする認証サービスによって、その遠隔装置のＮＳＩを取得するために使用される。もしもその提供されたログイン情報に関連したＮＳＩが見つからない場合は、認証サービスは、ユーザに対して、そのログイン情報が無効であることを知らせてもよい。もしも関連するＮＳＩが見つかったならば、ＣＬＭは加入者を識別し、その識別され認証された加入者のＮＳＩに関連して格納された情報に従ったサービス・アクセスを開始することができる。また、認証サービスは、遠隔装置から能力パラメータを受け取るために種々のクエリー操作も行うことができる。認証サービスは、セッションを初期化し、遠隔装置がセッションを通じて使用する秘密ＩＤを生成するものとしてもよい。認証サービスは、前記秘密ＩＤを解読しそれを遠隔装置３２０に転送することができる。その後、この秘密ＩＤが、ＮＳＣと遠隔装置との間のセッションで使用されて、遠隔装置が繰り返しログインしそれ自身を再認証する必要性が回避される。すなわち、ＮＳＣは、前記秘密ＩＤを対応のＮＳＩと関連付けることができ、遠隔装置はＮＳＣとの将来の通信においてその秘密ＩＤを伝送することができる。遠隔装置が正規加入者として認証された後、認証サービスは終了することができる。
【００６１】
遠隔装置のＮＳＩを備えるＣＬＭ３３６は、前記加入者テーブル中のその加入者のデフォルト・サービスを探すことができる。具体的には、各ＮＳＩは、認証がペンディング中に、加入者に対して提供されるべき第１サービス又はデフォルト・サービスを参照又は識別するサービス名を含む、その加入者のためのデフォルト・サービスと関連していてもよい。例えば、前記デフォルト・サービスは、遠隔装置があたかもその企業ＬＡＮに接続されているかのように動作することが可能であるようにWindowsデスクトップをエミュレートする、Windowsサービスなどのエンド・ユーザ・サービスとすることができる（Windowsは登録商標）。或いは、前記デフォルト・サービスは、遠隔装置に対して、それから加入者が所望のサービスを選択することが可能な利用可能な複数のサービスを表示する選択サービスとすることも可能である。前記デフォルト・サービスは、ＮＳＣによって、又は、ネットワークに接続された任意のサービス・センタによって提供されるサービスとすることができる。例えば、単純なステートレス装置又は単純なオーディオ・プレーヤー用のデフォルト・サービスは、その装置に対してダウンロード又はストリーミングが可能な利用可能な動画（例えば映画）又は音声を表示する対応のサービス・センタによって提供されるサービスとすることができる。
【００６２】
デフォルト・サービスがサービス・センタの１つによって提供されるサービスである場合、或いは、ユーザがサービス・センタによって提供されるサービスを選択する場合、ＳＣＣＭ３３４は、そのサービス・センタと加入者との間の接続の確立を促進すべく、適切なサービス・センタにコンタクトする。例えば、データベース（データストア）３３２は、サービス名を、その適切なサービス・センタとのコンタクトに必要な情報と関連付ける加入者サービス・テーブル３１２ｂを備えることができる。この情報は、ＳＣＣＭが見つけコンタクトする必要があるという適切なサービス・センタのネットワーク・アドレスやその他のＩＤ情報を含むことができる。次に、ＳＣＣＭは、サービス名を索引として使用して得たこの情報を使用して前記サービス・センタにコンタクトすることができる。
【００６３】
上述したように、ＮＳＩは、ＮＳＣによってのみ知ることができ、セキュリティのために、内部目的のためにのみ使用することができる。従って、ＮＳＣは、各加入者のＮＳＩを保持し、それをサービス・センタと識別された遠隔装置やユーザとの両方から隠すことを望むかもしれない。ＮＳＩをサービス・センタに提供する代わりに、ＮＳＣは加入者を選択されたサービスに関連付けるサービス加入者識別子（ＳＳＩ）を生成することもできる。これにより、ＮＳＣはこの特定のサービスのための加入者のＳＳＩと加入者のネットワーク・アドレスをサービス・センタに送り、サービス・センタは遠隔装置との接続を確立することができる。
【００６４】
内部では、ＮＳＣは、各サービスのＳＳＩをそのサービスにアクセスする加入者のＮＳＩに関連付けることができる。具体的には、遠隔装置は、その加入者について、ＮＳＩと、ＳＳＩとサービス名とを組合せて記憶することができる。遠隔装置は複数のサービスを要求するかもしれないので、各ＮＳＩは、複数のＳＳＩとそれに関連付けられたサービス名を有するかもしれない。上述したように、サービス・センタは、ＮＳＣによって提供されたネットワーク・アドレスを使用して遠隔装置との接続を確立する。この接続が確立された後、サービス・センタは、その確立された接続を介して遠隔装置によって要求されたサービスを実行することができる。しかしながら、例えばサービスが完了したため、あるいは、ユーザがもはやサービスを必要としていないことを指示したため、若しくは、ユーザが別のサービスを要望することを指示したためにサービスが終了した時に、他のサービスにアクセスするために、その遠隔装置がＮＳＣとの前記サービス選択工程を反復しなければならないとすれば不便である。
【００６５】
出願人は、現在のサービス又はサービス・センタに、提供されるべき次のサービスを指示させることによって、フレキシビリティの増大が可能となり、サービス・センタへの直接接続、例えば、企業ＬＡＮへの直接接続をより近くシミュレートしたユーザ・エクスペリエンスが提供されると認識している。従って、現在のサービスが終了することになっている、又は、そのサービスが一時的に中断されることになっているとき、或いは既に完了しているとき、サービス・センタはＮＳＣに対して、現在のサービスが終了することになっている、又は、そのサービスが一時的に中断されることになっている、ということを通知する。この通知を受けて、サービス・センタは、提供されるべき次のサービスを指示するか、もしくは、サービス・センタはそのサービスを完了して、サービス連鎖することなく終了することができる。
【００６６】
或いは、前記サービス・センタはＮＳＣに対して、現在のサービスを終わらせることなく、提供されるべき次のサービスを指示することができる。後者の場合は、指示された次のサービスが完了したときに、現在のサービスを再開させることが可能である。このように、サービス・センタは、現在のサービスを終わらせることなく、遠隔装置によるアクションの結果、提供させるべき別のサービスを示すことができる。これにより、サービス・センタが追加の制御を行うことが可能となり、サービス・センタに、他のサービス・センタによって提供されるサービスを利用することを可能にして、それによって前記アーキテクチャのフレキシビリティと有用性を大幅に改善する。
【００６７】
サービスが連鎖されている場合には、ＣＬＭ３３６はその指示されたサービス名（又は、サービスに対する他の参照）を取得して、遠隔装置がそのサービスにアクセスすることが許可されているか否か（すなわち、その遠隔装置やユーザがそのサービスに対する加入者であるか否か）を決定する。すなわち、ＣＬＭ３３６は、その遠隔装置のＮＳＩを取得し、そのサービス名が指示されたサービスに関連付けられているか否かをチェックする。もしも、遠隔装置やユーザがこのサービスについて認証されているのであれば、ＳＣＣＭはその関連付けられたＳＳＩと共にこのサービスに対するサービス・センタに次のサービスを提供するように通知する。任意の数の連鎖されたサービスを遠隔装置に提供するためにこのサービス連鎖のプロセスを反復することができる。更に、この種類のサービス連鎖は、サービス間の直感的な移行を提供するべく、ユーザに対して透過的なものとすることができる。
【００６８】
サービス連鎖によって、ＮＳＣに対してこの構造を理解しなければならないという負荷を与えることなく、遠隔装置に対して提供されるサービスの構造化にフレキシビリティを与えることが可能となる。例えば、サービス連鎖によれば、サービス・センタが、遠隔装置によって選択されたサービスを提供する前に、サービス・センタ自身の認証サービスを実行することができる。サービス・センタは、遠隔装置がこのサービス・センタによって提供されるサービスにアクセスすることが認証されていることを確認すべく、サービス・センタ自身の特別な認証手続を有するように構成してもよい。例えば、企業ＬＡＮは遠隔ユーザが当該ＬＡＮにおいて利用可能な情報及びサービスに対するアクセスが認証されていることを確認することを望んで、その従業員にのみログイン名とパスワードの組合せを発行してもよい。そして、サービス・センタは、任意の所望する認証手続を実行して、そして、遠隔装置によって選択されたサービスに連鎖することができる。
【００６９】
更に、サービス連鎖によって、１つのサービス・センタは、他のサービス・センタが、それらのサービスに連鎖が可能であることによって、これらの他のサービス・センタによって提供されるサービスを活用することが可能となる。例えば、サービス連鎖によって、異なるサービス・センタが、例えば、関連データのデータベースチェック以外のＮＳＣのアクティブな関与を必要とすること無く、自分のサービスを互いのサービスに連鎖させることを可能にする協定を自分たちの間で締結することが可能となる。１つの実施例において、別のサービス・センタによって提供されるサービスに連鎖するサービス・センタは、そのサービス連鎖メッセージ又はサービス要求の変更において、２つのサービス・センタ間に認知されている識別子又は秘密情報を含むことができる。そして、ＮＳＣは、この秘密情報を、連鎖されているサービス・センタに転送することができる。
【００７０】
次に、連鎖されているサービス・センタは、そのサービス・センタが前記連鎖サービス・センタによって提供されるサービスに対して連鎖されることが認証されていることを確かめるべく、それがそこから連鎖されたサービス・センタからの期待される秘密情報に対して、前記転送された秘密情報をチェックしてもよい。連鎖された秘密情報を、それに連鎖されるサービス・センタが認証されていることを確かめることによって、サービス・センタに、そのサービスに対するより大きな制御レベル及びセキュリティレベルを与えるために使用してもよい。但し、本発明の態様はその点において限定されるものではないので、１つのサービス・センタから連鎖されたサービス・センタへの識別子や秘密情報は、必ずしも必要なものではない。
【００７１】
図３において、サービス・センタ３１０の各々は、複数のコネクタ３１２を有している。これらのコネクタの各々を、対応のサービス・センタによって提供される特定のサービスと関連付けることができる。前記コネクタは、サービス・センタにおいて動作する各サービスによって生成される情報（すなわち、サービス・センタにおいて動作するソフトウエアに固有の形式でのデータ）をインタラクティブ形式（すなわち、サービスがコネクタ・サービスとして機能する）に変換するように構成することができる。インタラクティブ形式は、サービス・センタがデータを伝送する必要無く、また、遠隔装置がデータを格納したり、或いは、関連のソフトウエアをインストールして、そのソフトウエア自身により当該データをそのソフトウエア固有の形式で操作する必要無く、遠隔装置がサービス・センタにおいてデータとインタラクションできるよう、遠隔装置において、どのように、何を表示すべきかを記述したレンダリング・コマンドを含むことができる。
【００７２】
いくつかの実施例において、前記レンダリング・コマンドは、遠隔装置上で表示されるビット・ストリームを含む。ここで、「表示ビット・ストリーム」という用語は、表示装置、音声、ビデオその他のメディア上に表示可能でユーザに対して出力可能な画素を表す情報を指す。サービスによって生成される結果やコンテンツを表示ビット・ストリームに変換することによって、遠隔装置は、当該遠隔装置に提供されるサービスに関連する、ファイル、ドキュメント又はその他の情報をローカルにコピーする必要がなくなる。それどころか、遠隔装置は、ユーザが見聞きできるように結果を表示するが、実際のデータを遠隔装置に転送することはない。このように、情報の操作手段と実際のコンテンツはサービス・センタに残る。
【００７３】
出願人は、コネクタ・サービスを提供することの多くの利点を見出し、それらを認識している。第１に、遠隔装置がサービス・センタによって制御されている情報を直接改変、削除、頒布することができないのでセキュリティが改善される。第２に、遠隔装置はサービス・センタとインタラクションするための特別なソフトウエアを必要とせず、ネットワークを介して利用可能なコネクタ・サービスを利用する必要がない。遠隔装置は、ユーザに対して表示ビット・ストリームを提供するのに必要な限られたハードウエア及びソフトウエアを備えるＳＮＡＰとすることができる。従って、コネクタ・サービスは、遠隔装置が利用可能な全ての種類のコネクタ・サービスへユーザがアクセスすることを可能にする汎用ネットワーク・インターフェースとして作用するようなネットワーク環境を促進する。
【００７４】
前記遠隔装置は、更に、ユーザ入力（例えば、マウス・クリック、キーボード入力、音声コマンド、その他、遠隔装置を介してユーザによって提供される入力）をインタラクティブ形式に翻訳するコネクタを備えることができる。これにより、サーバ側のコネクタは、前記インタラクティブ形式を、サービスに対して、そのサービスに固有の形式で、データをいかに操作するかを指示するコマンドに翻訳することができる。このようにして、データの双方向翻訳によって、元のデータがその接続を介して伝送されることなく、また、遠隔装置に格納されることなく、それでも、ユーザに対しては自分がそのデータを直接に操作し、そのサービスにローカルにアクセスしているかのように見えながら、接続を介したサービスの提供を促進する。
【００７５】
図１及び図３において記載したネットワーク・アーキテクチャは、遠隔装置からのセキュアな遠隔アクセスを促進する。上述したように、前記ネットワーク・アーキテクチャは、遠隔装置からサービス・センタへの演算負荷のシフトを促進する。いくつかの実施例において、遠隔装置にサービスを提供することに含まれる演算は、実質的にはサービス・センタにおいて行われ、遠隔装置に送られる通信は、その大半、又はその全部が、表示データを含むレンダリング・コマンドの形態である。このようにすることで、遠隔装置は、当該遠隔装置がアクセスすることを望む多種多様なサービスを提供するために特定のソフトウエアをローカルにインストールする必要が無くなる。すなわち、遠隔装置は、そのサービスにアクセスしそれらの便益を享受するためにネットワークとインターフェースすることを目的として、アプリケーションの種類や提供されるサービスの詳細についての知識を持つ必要がなくなる。
【００７６】
特に、遠隔装置は、実質的に、サービス・センタにおいて実行される結果、アクション、タスクのディスプレイとして動作することができるので、提供されるサービスに関連するソフトウエアをローカルに実行する必要がない。すなわち、サービス・センタからのデータを、遠隔装置のディスプレイに対して転送される、ビットマップなどの表示情報としてユーザに対して提供することができる。その後、ディスプレイとのユーザのインタラクションを、そのインタラクションに対する必要な応答が行われるサービス・センタへと伝送することができる。このようにして、遠隔装置に対してダウンロードされるデータは無くなり、遠隔装置において実行される特定のソフトウエア・アプリケーションも無くなる（すなわち、遠隔装置はステートレスとなる）。これにより、秘密情報が遠隔装置上でローカルに格納させることが防止される。更に、遠隔装置がサービス特有のソフトウエアを実行する必要性が無くなったことにより、更新とメンテナンスのコストが、これらはサービス・センタにおいてのみ必要となることから、低減される。
【００７７】
図３において、前記サービス・センタは、表示情報が遠隔装置に提供されるパラダイムの実装を促進するためにコネクタ３１２を有している。前記サービス・センタは、例えば、それが提供する各サービスに対して１つのコネクタを備えることができる。しかしながら、本発明の態様はこの点において限定されるものではないので、１つのコネクタによって複数のサービスを取り扱うように構成することも可能である。前記コネクタは、サービス・センタによって実行された演算の結果を、サービスにアクセスする遠隔装置に送られるレンダリング・コマンドに翻訳するように構成されている。前記コネクタは、サービス・センタによって実行されるアクションの表示結果を、遠隔装置のユーザによって見ることが可能な表示データへと変換する１つ以上のソフトウエアプログラム又はモジュールとして構成することができる。上述したように、これによって、サービスを実質的にサービス・センタにおいて実行することが可能となり、遠隔装置が、遠隔装置のステートフル能力に依存する従来のサービス・アクセス・アーキテクチャにおいて通常必要とされる、ノウハウ、ハードウエア及びソフトウエア、メモリ要件、などを必要とすることから開放される。
【００７８】
上述したように、このアーキテクチャの１つの利点は、比較的単純な装置（例えば、ダム端末）でも任意の数、種類の異なるサービスに対するアクセスを提供することが可能であることである。これによって、ネットワーク（例えば、インターネット）を介して利用可能な豊富なサービスという長所にアクセスし、それらを利用することが可能な装置の種類に関するフレキシビリティが提供される。例えば、それによって、ネットワークを介したサービスを、ラップトップ、ＰＣ、ＰＤＡ、などといった汎用コンピュータのみならず、テレビ、携帯電話、及び、ディスプレイを備え、ユーザがそのディスプレイによってインタラクションすることを可能にするその他のネットワーク・アプライアンス、に対しても利用可能とすることができる。これにより、サービス連鎖との組合せで、ネットワーク・コンピューティングへのパラダイムシフトが可能となり、ネットワーク・サービスとリモート・コンピューティングに対する比較的単純で、セキュアで、安価なアクセスが促進される。
【００７９】
本発明の上述した実施例は、いかなるようにも実施することが可能である。例えば、これらの実施例は、ハードウエア、ソフトウエア又はそれらの組合せを使用して実装することができる。ソフトウエアで実装する場合、そのソフトウエア・コードを任意の適当なプロセッサ、またはプロセッサの組合せ、単一のコンピュータに設けられるもの、又は、複数のコンピュータ間に分布されるもの、において実行することができる。尚、上述した機能を実行する任意のコンポーネント又はコンポーネントの組合せは、総称的に、上述の機能を制御する１つ以上のコントローラと見なすことができる。この１つ以上のコントローラは、専用のハードウエアで、或いは、上記機能を実行するためのマイクロ・コード又はソフトウエアを使用してプログラミングされた汎用ハードウエア（例えば、１つ以上のプロセッサ）等で、様々な方法で実施することが可能である。
【００８０】
尚、ここに概説した種々の方法は、種々のオペレーティング・システム又はプラットフォームのいずれかを使用する１つ以上のプロセッサ上において実行可能なソフトウエアとしてコードされてよい。さらに、そのようなソフトウエアは、種々の適当なプログラミング言語、従来式プログラミング又はスクリプト・ツール、を使用して書くことができ、或いは、実行可能な機械言語コードとしてコンパイルされてもよい。
【００８１】
この点に関して、本発明の一実施例は、１つ以上のコンピュータ又はその他のプロセッサ上で実行された時に、本発明の上述した種々の実施例を実装する方法を実行する１つ以上のプログラムがコードされた、コンピュータ読込可能媒体（例えば、コンピュータ・メモリ、１つ以上のフロッピー・ディスク、コンパクト・ディスク、光ディスク、磁気テープ、など）に関するものである、と理解されなければならない。前記コンピュータ読み取り可能媒体は、持ち運び可能に構成して、そこに格納されている１つ以上のプログラムが、上述したように本発明の種々の態様を実装するために１つ以上の異なるコンピュータ又はその他プロセッサにロード可能とすることができる。
【００８２】
尚、ここで「プログラム」という用語は、包括的な意味で、上述した本発明の種々の態様を実装するためにコンピュータ又はその他のプロセッサをプログラムするために使用可能な任意の種類のコンピュータコード又はインストラクション・セット、をいう。更に、本発明の一態様によれば、実行された時に本発明の方法を実行する１つ以上のコンピュータ・プログラムは、単一のコンピュータ又はプログラム上に常駐する必要はなく、本発明の種々の態様を実装するために多種多様なコンピュータ又はプロセッサ間でモジュール的に分散させてもよい。
【００８３】
本発明の種々の態様は、単体、又は組合せ、或いは、上述した実施例において具体的には記載されなかった種々の構成で使用することが可能であり、従って、その適用において、上記説明に記載された、又は、図面に図示された詳細又はコンポーネントの構成に限定されるものではない。本発明は、他の実施例が可能であり、様々な方法で実践又は実行することが可能である。特に、本発明の種々の態様は、任意の種類、集合又は構成のネットワークで実装することができる。ネットワークによる実装に関して、なんら限定は存在しない。従って、上記説明及び図面は例示的なものに過ぎない。
【００８４】
又、ここで使用した表現、用語は、記載の目的のためのものであって、限定的なものと解釈されてはならない。「有する」、「持つ」、「備える」、「含む」、「伴う」といった用語、及びそれらの変形例の使用は、ここに挙げられた要素とそれらの均等物、更に、それらの追加要素を含んでいる。
【図１Ａ】
2010515957.tif 000003
【図１Ｂ】
2010515957.tif 000004
【図１Ｃ】
2010515957.tif 000005
【図１Ｄ】
2010515957.tif 000006
【図１Ｅ】
2010515957.tif 000007
【図１Ｆ】
2010515957.tif 000008
【図２】
2010515957.tif 000009
【図３】
2010515957.tif 000010
【国際調査報告】
2010515957.tif 000011
2010515957.tif 000012
2010515957.tif 000013