(57)【要約】  遠隔ブラウジングプロセスは、ネットワークコンピューティングプロバイダにおける遠隔ブラウズセッションの生成および管理を対象とする。クライアントコンピューティングデバイスは、ネットワークコンピューティングプロバイダにおける遠隔ブラウズセッションインスタンスを要求する。ブラウズセッションインスタンスは、１つ以上の要求されたネットワークリソースに対応してもよい。ネットワークコンピューティングプロバイダは、ブラウズセッションインスタンスをインスタンス化し、要求されたコンテンツを取り出す。ネットワークコンピューティングプロバイダは、要求されたコンテンツを処理し、要求されたコンテンツの処理された表現をクライアントコンピューティングデバイスに提供する。ネットワークコンピューティングプロバイダは、ストレージのために、履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに更に提供する。クライアントコンピューティングデバイスは、要求されたコンテンツの表現を表示してもよく、ユーザ対話に基づいてユーザ対話データを送信してもよい。
2014529153.tif 000002
【特許請求の範囲】
【請求項１】
遠隔セッションブラウジングのためのシステムであって、
１つ以上のコンピュータプロセッサと、
前記１つ以上のコンピュータプロセッサのうちの少なくとも１つによってアクセス可能な少なくとも１つのコンピュータメモリと、
前記１つ以上のコンピュータプロセッサによって実行される実行可能なソフトウェアモジュールを備えるネットワークコンピューティングコンポーネントと、
を備え、
前記ネットワークコンピューティングコンポーネントが、
クライアントコンピューティングデバイスから、第１のネットワークリソースのための要求を取得し、
前記第１のネットワークリソースおよび前記第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つに対応する１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送し、
前記第１のネットワークリソースおよび前記クライアントコンピューティングデバイスで表示されるべき前記第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つの表現に対応する処理結果を前記クライアントコンピューティングデバイスに伝送する、
ように動作可能であるシステム。
【請求項２】
前記ネットワークコンピューティングコンポーネントが、履歴上の遠隔セッションブラウジング構成を決定するように更に動作可能であり、前記履歴上の遠隔セッションブラウジング構成が、前記１つ以上の履歴上のコンテンツ表現を生成するために前記ネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、
請求項１に記載のシステム。
【請求項３】
前記ネットワークコンピューティングコンポーネントが、前記履歴上のブラウズストレージコンポーネントから得られた情報に基づいて、前記ネットワークリソースと関連付けられた前記履歴上の遠隔セッションブラウジング構成を決定するように更に動作可能である、
請求項２に記載のシステム。
【請求項４】
前記履歴上の遠隔セッションブラウジング構成が、前記クライアントコンピューティングデバイスで行われるべき１つ以上の処理行為を識別する、
請求項２に記載のシステム。
【請求項５】
前記クライアントコンピューティングデバイスが、前記履歴上の遠隔セッションブラウジング構成によって識別される前記１つ以上の処理行為を行うように構成される、
請求項４に記載のシステム。
【請求項６】
前記ネットワークコンピューティングコンポーネントが、クライアント遠隔セッションブラウジング構成を決定するように更に動作可能であり、前記クライアント遠隔セッションブラウジング構成が、前記処理結果を生成するために前記ネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、
請求項１に記載のシステム。
【請求項７】
前記クライアント遠隔セッションブラウジング構成によって識別される前記１組の処理行為が、前記１つ以上の履歴上のコンテンツ表現の生成中に行われる少なくとも１つの共有の処理行為を含む、
請求項６に記載のシステム。
【請求項８】
前記クライアントコンピューティングデバイスが、前記履歴上のブラウズストレージコンポーネントから前記履歴上のコンテンツ表現を取得するように構成される、
請求項１に記載のシステム。
【請求項９】
遠隔セッションブラウジングのためのコンピュータ実装方法であって、前記方法は、
クライアントコンピューティングデバイスから、第１のネットワークリソースのための要求を取得するステップと、
前記第１のネットワークリソースおよび前記第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つに対応する１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送するステップと、
前記第１のネットワークリソースおよび前記クライアントコンピューティングデバイスで表示されるべき前記第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つの表現に対応する処理結果を前記クライアントコンピューティングデバイスに伝送するステップと、
を含むコンピュータ実装方法。
【請求項１０】
履歴上の遠隔セッションブラウジング構成を決定するステップを更に含み、前記履歴上の遠隔セッションブラウジング構成が、前記１つ以上の履歴上のコンテンツ表現を生成するために前記ネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、
請求項９に記載のコンピュータ実装方法。
【請求項１１】
前記履歴上のブラウズストレージコンポーネントから得られた情報に基づいて、前記ネットワークリソースと関連付けられた前記履歴上の遠隔セッションブラウジング構成を決定するステップを更に含む、
請求項１０に記載のコンピュータ実装方法。
【請求項１２】
前記クライアントコンピューティングデバイスからの前記履歴上のコンテンツ表現のための要求に応答して、前記ネットワークリソースと関連付けられた前記履歴上の遠隔セッションブラウジング構成を決定するステップを更に含む、
請求項１０に記載のコンピュータ実装方法。
【請求項１３】
クライアント遠隔セッションブラウジング構成を決定するステップを更に含み、前記クライアント遠隔セッションブラウジング構成が、前記処理結果を生成するために前記ネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、
請求項９に記載のコンピュータ実装方法。
【請求項１４】
処理結果を前記クライアントコンピューティングデバイスに提供するステップを更に含み、前記処理結果が、前記ネットワークコンピューティングコンポーネントで前記クライアント遠隔セッションブラウジング構成によって識別される前記１組の処理行為を行うことによって生成され、前記クライアントコンピューティングデバイスが、前記処理結果に基づいて、前記ネットワークリソースの表現の前記表示を引き起こすように動作可能である、
請求項１３に記載のコンピュータ実装方法。
【請求項１５】
前記クライアント遠隔セッションブラウジング構成によって識別される前記１組の処理行為が、前記１つ以上の履歴上のコンテンツ表現の生成中に行われるべき少なくとも１つの共有の行為を含む、
請求項１３に記載のコンピュータ実装方法。
【発明の詳細な説明】
【背景技術】
【０００１】
一般的に説明されるならば、コンピューティングデバイスおよび通信ネットワークは、情報を交換するために利用され得る。一般的なアプリケーションにおいて、コンピューティングデバイスは、通信ネットワークを介して、別のコンピューティングデバイスからコンテンツを要求し得る。例えば、パーソナルコンピューティングデバイス等のコンピューティングデバイスにおけるユーザは、インターネットを介してサーバコンピューティングデバイスからウェブページを要求するために、「ブラウザ」と典型的に称されるソフトウェアブラウザアプリケーションを利用し得る。そのような実施形態において、要求しているコンピューティングデバイスは、クライアントコンピューティングデバイスと称され得、サーバコンピューティングデバイスは、コンテンツプロバイダと称され得る。
【０００２】
例示的な実施例を参照すると、要求されたウェブページ、または元のコンテンツは、ウェブページと共に表示されるべきである、画像またはビデオ等のいくつかの追加のリソースと関連付けられてもよい。１つの具体的な実施形態において、ウェブページの追加のリソースは、ユニフォームリソースロケータ（「ＵＲＬ」）等の、いくつかの埋め込みリソース識別子によって識別される。次に、ブラウザ等のクライアントコンピューティングデバイス上のソフトウェアは、典型的に、埋め込みリソース識別子を処理して、コンテンツのための要求を生成する。したがって、コンテンツ要求を満たすために、１つ以上のコンテンツプロバイダが一般に、クライアントコンピューティングデバイスに、ウェブページと関連付けられたデータならびに埋め込みリソースと関連付けられたデータを提供するであろう。
【０００３】
一旦、クライアントコンピューティングデバイスがウェブページおよび関連付けられた追加のリソースを得ると、コンテンツは、ソフトウェアブラウザアプリケーションまたは他のクライアントコンピューティングデバイスインターフェースによって、いくつかの段階において処理されてもよい。例として、および上の例示説明を参照すると、ソフトウェアブラウザアプリケーションは、ウェブページを構文解析して、様々なＨＴＭＬレイアウト情報および関連付けられたリソースへの参照を処理してもよく、カスケーディングスタイルシート（「ＣＳＳ」）情報を識別および処理してもよく、ウェブページと関連付けられた様々なＪａｖａｓｃｒｉｐｔコードを処理およびインスタンス化してもよく、ウェブページの１つ以上のコンポーネントを表現するためのネイティブなオブジェクトモデルを構築してもよく、また、ユーザへの提示のために、処理されたコンテンツの様々なレイアウトおよび表示プロパティを計算してもよい。
【０００４】
多くのブラウザが、クライアントコンピューティングデバイスで閲覧されたウェブページおよびネットワークリソースの履歴上の記録を維持するが、ブラウザは、しばしばクライアントコンピューティングデバイスにおけるストレージ制約に起因して、前に閲覧されたコンテンツについて限定されたデータしか維持しない傾向がある。一般に、前に閲覧されたウェブページについて記憶された情報は、ＵＲＬもしくはページへの他の参照、ページタイトル、および／または他の基本的な識別情報からなる。したがって、前に閲覧されたウェブページの記録にアクセスすることは、ブラウザに、記憶されたＵＲＬに基づいてウェブページまたはネットワークリソースの最新のバージョンを取り出させるようにし得、閲覧時に元々提示された状態ではウェブページを表示しないであろう。更に、異なるクライアントコンピューティングデバイス上でブラウザにアクセスしているユーザは、第１のクライアントコンピューティングデバイスからのブラウジングに基づく履歴上の記録にアクセス不可能である場合がある。
【０００５】
本発明の前述の態様およびそれらに付随する利点の多くは、それらが、添付の図面と併せて、以下の詳細な説明を参照することにより、より良く理解され、より容易に認識されるであろう。
【図面の簡単な説明】
【０００６】
【図１】いくつかのクライアントコンピューティングデバイス、コンテンツプロバイダ、コンテンツ配信ネットワークサービスプロバイダ、およびネットワークコンピューティングプロバイダを含む、コンテンツ配信環境を例示するブロック図である。
【図２】クライアントコンピューティングデバイスからネットワークコンピューティングプロバイダへの、新しいブラウズセッション要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図３】ネットワークコンピューティングプロバイダからコンテンツプロバイダへの、ネットワークリソースのための要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図４】ネットワークコンピューティングプロバイダからコンテンツプロバイダおよびコンテンツ配信ネットワークへの、１つ以上の埋め込みリソースに対応する１つ以上の要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図５】ネットワークコンピューティングプロバイダとクライアントコンピューティングデバイスとの間の、履歴上のコンテンツ表現、ブラウズセッションデータ、およびユーザ対話データの生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図６】クライアントコンピューティングデバイスからネットワークコンピューティングプロバイダへの、追加の新しいブラウズセッション要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図７】例示的なブラウザインターフェースおよびブラウズセッションコンテンツの表示を示す、ユーザインターフェースの図である。
【図８】一連の処理サブシステムとして例示的なブラウザコンテンツ処理行為を示す図である。
【図９】ネットワークコンピューティングプロバイダによって実装される新しいブラウズセッションルーチンを例示する流れ図である。
【図１０】クライアントコンピューティングデバイスによって実装されるクライアントの新しいブラウズセッション対話ルーチンを説明する流れ図である。
【図１１】クライアントコンピューティングデバイスによって実装されるプロセスユーザ対話ルーチンを例示する流れ図である。
【図１２】クライアントコンピューティングデバイスからネットワークコンピューティングプロバイダへの、新しい履歴上のコンテンツ要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図である。
【図１３】ネットワークリソースナビゲーションパスを例示する分岐図である。
【図１４】ネットワークリソース参照レベルを図示する、ネットワークリソースナビゲーションパスを例示する分岐図である。
【図１５】例示的なブラウズ検索履歴インターフェースを図示する、ユーザインターフェースの図である。
【発明を実施するための形態】
【０００７】
一般的に説明されるならば、本開示は、ネットワークコンピューティングプロバイダと連動した、クライアントコンピューティングデバイスとコンテンツプロバイダとの間での遠隔アプリケーションセッションおよび履歴上のブラウズコンテンツの生成および管理を対象とする。具体的には、本開示の態様は、クライアントコンピューティングデバイスとネットワークコンピューティングプロバイダとの間の履歴上のブラウズコンテンツ記録の生成および管理、ならびに履歴上のブラウズコンテンツ記録の索引付けおよび検索に関して記載される。本開示に記載される実施形態の態様は、例示説明の目的のために、遠隔ブラウズセッションおよび履歴上のブラウズストレージコンポーネントの管理に焦点を当てるが、当業者であれば、本明細書に開示される技法が任意の数のソフトウェアプロセスまたはアプリケーションに適用されてもよく、また、任意の数の異なるドキュメントおよびデータの種類の履歴上のコンテンツを保存することに適用されてもよいことを理解するであろう。更に、本開示の様々な態様は、例示的な実施例および実施形態に関して記載されるが、当業者であれば、開示される実施形態および実施例が限定するものとして解釈されるべきでないことを理解するであろう。
【０００８】
例示的な実施例を参照すると、ユーザは、クライアントコンピューティングデバイスに、１つ以上のコンテンツプロバイダによって提供されるコンテンツにアクセスするためのソフトウェアブラウザアプリケーション（以下、「ブラウザ」と称される）を読み込ませてもよい。一実施形態において、ブラウザは、ツールバー、メニュー、ボタン、または他のユーザインターフェース制御等の１つ以上のローカルインターフェースコンポーネントに加えて、コンテンツ表示領域またはアクセスされたネットワークコンテンツを表示するためのペインを有してもよい。ローカルインターフェースコンポーネントは、クライアントコンピューティングデバイスでローカルに実行するか、または実装されるソフトウェアブラウザアプリケーションもしくは任意の他の処理によって管理および制御されてもよい。例示的に、ユーザインターフェース制御をローカルに管理することは、ユーザによる対話がクライアントコンピューティングデバイス上でローカルに処理されるので、応答性の良いユーザインターフェースを可能にし得る。
【０００９】
ブラウザが読み込まれた後、ユーザまたは自動化ブラウザ処理は、プライベートまたは公衆ネットワーク全域でネットワークコンピューティングプロバイダとのブラウズセッションを確立することによって、クライアントコンピューティングデバイスに、コンテンツプロバイダからのコンテンツにアクセスするための要求を伝送させてもよい。ブラウズセッション要求は、要求されたコンテンツのための１つ以上のソースを識別する情報を含んでもよい。例えば、ユーザは、ＵＲＬ（例えばｈｔｔｐ：／／ｗｗｗ．ｘｙｚｗｅｂｓｉｔｅ．ｃｏｍ）を選択するか、またはそれをブラウザウィンドウに入力して、クライアントコンピューティングデバイスが、選択されたＵＲＬを含む新しいブラウズセッションのための要求をネットワークコンピューティングプロバイダに伝送するようにしてもよい。ブラウズセッション要求は、ユーザ、ブラウザ、またはクライアントコンピューティングデバイスを識別する情報等の識別情報を更に含んでもよい。
【００１０】
例示的な実施形態において、ネットワークコンピューティングプロバイダは、ブラウズセッション要求に含まれる識別情報を処理して、ブラウズセッションと関連付けるための履歴上のブラウズストレージコンポーネントを決定してもよい。履歴上のブラウズストレージコンポーネントは、クライアントコンピューティングデバイスによって要求されたコンテンツの表現を含む、履歴上のリソース表現を記憶してもよい。更に、かつクライアントコンピューティングデバイスから受信されたブラウズセッション要求に応答して、ネットワークコンピューティングプロバイダは、ブラウザソフトウェアアプリケーションをホストするであろうネットワークコンピューティングプロバイダと関連付けられた１つ以上のコンピューティングコンポーネントをインスタンス化するか、またはそれがインスタンス化されるようにしてもよい。例えば、ネットワークコンピューティングプロバイダは、通信ネットワークからリソースを要求することが可能なソフトウェアブラウザアプリケーションを含む、仮想マシンのインスタンスをインスタンス化するか、またはそれがインスタンス化されるようにすることができる。
【００１１】
インスタンス化されたネットワークコンピューティングコンポーネントを使用して、ネットワークコンピューティングプロバイダは、１つ以上のコンテンツプロバイダ、コンテンツ配信ネットワーク、またはローカルもしくは関連付けられたキャッシュコンポーネントもしくはデータストアから、識別されたネットワークリソース（複数可）を要求してもよい。例えば、インスタンス化されたネットワークコンピューティングコンポーネント上のブラウザソフトウェアアプリケーションは、一次ネットワークリソースを処理し、次いで、１つ以上の埋め込みリソース識別子（例えば写真、ビデオファイル等）で識別されたコンテンツのための追加のコンテンツ要求を生成することができる。例示的に、他の非ブラウザによるアプリケーションの場合において、ネットワークリソースまたはコンテンツは、当該技術分野において既知の、特定のソフトウェアアプリケーションによってサポートされる、いずれのファイルの種類または形式も含んでもよい。
【００１２】
要求されたコンテンツ（例えば、要求されたネットワークリソースおよび埋め込みリソース）を得た後に、ネットワークコンピューティングプロバイダは、クライアントコンピューティングデバイス上で実行されているブラウザと、コンピューティングプロバイダ上のインスタンス化されたネットワークコンピューティングコンポーネントで実行されているブラウザとの間の、要求されたコンテンツ、ユーザ対話データ、中間処理結果、および他の情報の伝送に使用するための遠隔セッション通信プロトコルを指定するクライアント遠隔セッションブラウズ構成を識別してもよい。インスタンス化されたネットワークコンピューティングコンポーネント上のブラウザとクライアントコンピューティングデバイス上のブラウザとの間で交換される情報は、「ブラウザセッション情報」と一般に称され得る。ネットワークコンピューティングプロバイダは、要求されたコンテンツによって参照される任意のコンテンツ（例えば、要求されたウェブページによって連結されるウェブページ）を取り出し、処理するために、追加的に、任意の数の更なるコンテンツ要求を行い、かつ／または追加の遠隔セッションのインスタンス化を引き起こしてもよい。最大で指定されたまたは決定された深度までの、任意の数の連結されたリソースが取り出され、ストレージおよび索引付けのために、履歴上のブラウズストレージコンポーネントに提供されてもよい。
【００１３】
クライアントコンピューティングデバイスとインスタンス化されたネットワークコンピューティングコンポーネントとの間で情報を伝送するために遠隔セッション通信プロトコルを指定することに加えて、一実施形態において、識別された遠隔セッションブラウズ構成は、要求されたコンテンツ上で実行される１つ以上の処理行為が、クライアントコンピューティングデバイスではなく、またはこれに加えて、ネットワークコンピューティングプロバイダで行われることを指定してもよい。例えば、ウェブページは、ＣＳＳスタイルシートおよびＪａｖａｓｃｒｉｐｔ等の様々なＨＴＭＬレイアウト情報および関連付けられたリソースまたは埋め込みコンテンツへの参照、ならびに画像、ビデオ、オーディオ等の埋め込みコンテンツオブジェクトを処理するために、構文解析されてもよい。それぞれのオブジェクトまたは１つのコードは、ウェブページに対応する表現オブジェクトモデルが、レイアウトおよび表示のために更に構築および処理される得る前に、構文解析および処理されてもよい。クライアント遠隔セッションブラウズ構成は、これらの行為のうちのどれがネットワークコンピューティングコンポーネントで行われるべきであり、どれがクライアントコンピューティングデバイスで行われるべきであるかを識別してもよい。
【００１４】
履歴上のブラウズストレージコンポーネントと関連付けられた遠隔セッションは、追加の履歴上の遠隔セッションブラウズ構成を指定してもよい。この履歴上の遠隔セッションブラウズ構成は、ネットワークコンピューティングコンポーネントからの中間処理結果をカプセル化し、それを履歴上のブラウズストレージコンポーネントに提供するための、遠隔セッション通信プロトコルを指定してもよく、また更に、クライアント遠隔セッションブラウズ構成を参照して上述の、ネットワークコンピューティングコンポーネントで行われるべき任意の処理行為を指定してもよい。例示的に、履歴上のブラウズストレージコンポーネントで記憶された処理結果に対応するコンテンツの表現は、履歴上のコンテンツ表現と称され得る。例示的に、履歴上の遠隔セッションブラウズ構成において指定される処理の、遠隔セッション通信プロトコルおよび／または分割は、決定されたクライアント遠隔セッションブラウズ構成と同じであっても異なってもよい。
【００１５】
クライアントコンピューティングデバイスおよびインスタンス化されたネットワークコンピューティングコンポーネントは、ブラウザセッション情報（例えば、要求されたコンテンツ結果を表示する状態データまたは表示データ）を介して、クライアント遠隔セッションブラウズ構成に従って、処理結果を交換してもよい。ネットワークコンピューティングコンポーネントは、ストレージのために、遠隔セッションブラウズ構成に従って、要求されたコンテンツの履歴上のコンテンツ表現を、履歴上のブラウズストレージコンポーネントクライアントに更に提供してもよい。
【００１６】
後の時点で、クライアントコンピューティングデバイスは、履歴上のブラウズストレージコンポーネントで記憶されたコンテンツを検索してもよい。一実施形態において、クライアントコンピューティングデバイスは、目的となる具体的なキャッシュされたリソースまたは履歴上のブラウズセッションに基づいて、記憶されたコンテンツを検索してもよい。更なる実施形態において、クライアントコンピューティングデバイスは、ユーザが元のブラウズセッションにおいて閲覧しなかった、記憶されたコンテンツ（例えば、閲覧されたリソースによって連結され、履歴上のブラウズストレージコンポーネントで記憶されるリソース）のみを検索してもよい。
【００１７】
図１は、コンテンツ要求の管理および処理のためのネットワーク化されたコンピューティング環境１００を例示するブロック図である。図１に例示されるように、ネットワーク化されたコンピューティング環境１００は、コンテンツプロバイダ１０４、ＣＤＮサービスプロバイダ１０６、またはネットワークコンピューティングプロバイダ１０７からのコンテンツおよびコンテンツ処理を要求するための、いくつかのクライアントコンピューティングデバイス１０２（クライアントと一般に称される）を含む。例示的な実施形態において、クライアントコンピューティングデバイス１０２は、パーソナルコンピューティングデバイス、ラップトップコンピューティングデバイス、携帯式コンピューティングデバイス、端末コンピューティングデバイス、携帯デバイス（例えば、携帯電話、タブレットコンピューティングデバイス等）無線デバイス、様々な電子デバイスおよび器具等を含む、広範なコンピューティングデバイスに対応することができる。例示的な実施形態において、クライアントコンピューティングデバイス１０２は、ワイドエリアネットワークまたはローカルエリアネットワーク等の通信ネットワーク１０８を介する通信を確立するために必要なハードウェアおよびソフトウェアコンポーネントを含む。例えば、クライアントコンピューティングデバイス１０２は、インターネットまたはイントラネットを介する通信を容易にする、ネットワーク利用機器およびブラウザソフトウェアアプリケーションを装備されてもよい。クライアントコンピューティングデバイス１０２は、中央処理装置およびアーキテクチャ、メモリ、大容量ストレージ、グラフィック処理ユニット、通信ネットワークの利用可能性および帯域等の、様々なローカルコンピューティングリソースを有してもよい。
【００１８】
ネットワーク化されたコンピューティング環境１００はまた、通信ネットワーク１０８を介して１つ以上のクライアントコンピューティングデバイス１０２または他のサービスプロバイダ（例えば、ＣＤＮサービスプロバイダ１０６、ネットワークコンピューティングプロバイダ１０７等）と通信する、コンテンツプロバイダ１０４も含み得る。図１に例示されるコンテンツプロバイダ１０４は、コンテンツプロバイダと関連付けられた１つ以上のコンピューティングデバイスの論理的関連付けに対応する。具体的には、コンテンツプロバイダ１０４は、クライアントコンピューティングデバイス１０２または他のサービスプロバイダからのコンテンツ（ウェブページ等）のための要求を得て、それを処理するための１つ以上のサーバコンピューティングデバイスに対応する、ウェブサーバコンポーネント１１０を含み得る。コンテンツプロバイダ１０４は、ＣＤＮサービスプロバイダからのネットワークリソースのための要求を得て、それを処理するための１つ以上のコンピューティングデバイスに対応する、オリジンサーバコンポーネント１１２および関連付けられたストレージコンポーネント１１４を更に含み得る。コンテンツプロバイダ１０４は、ストリーミングコンテンツ要求を処理するためのデータストリーミングサーバ等、アプリケーションサーバコンピューティングデバイス１１１をなおも更に含み得る。当業者であれば、コンテンツプロバイダ１０４が、コンテンツおよびリソース等の管理のための追加のコンピューティングデバイス、ＤＮＳネームサーバ等の、様々な追加のコンピューティングリソースと関連付けられ得ることを理解するであろう。例えば、図１に例示されないが、コンテンツプロバイダ１０４は、コンテンツプロバイダのドメインに対応するクライアントコンピューティングデバイスのＤＮＳクエリを解決する権限がある、１つ以上のＤＮＳネームサーバコンポーネントと関連付けられ得る。
【００１９】
図１を続けて参照すると、ネットワーク化されたコンピューティング環境１００は、通信ネットワーク１０８を介して１つ以上のクライアントコンピューティングデバイス１０２および他のサービスプロバイダと通信する、ＣＤＮサービスプロバイダ１０６を更に含み得る。図１に例示されるＣＤＮサービスプロバイダ１０６は、ＣＤＮサービスプロバイダと関連付けられた１つ以上のコンピューティングデバイスの論理的関連付けに対応する。具体的には、ＣＤＮサービスプロバイダ１０６は、通信ネットワーク１０８上のノードに対応する、いくつかのポイントオブプレゼンス（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｃｅ（「ＰＯＰ」））位置１１６、１２２、１２８を含み得る。それぞれのＣＤＮ  ＰＯＰ１１６、１２２、１２８は、クライアントコンピュータ１０２からのＤＮＳクエリを解決するためのいくつかのＤＮＳサーバコンピューティングデバイスからなる、ＤＮＳコンポーネント１１８、１２４、１３０を含む。それぞれのＣＤＮ  ＰＯＰ１１６、１２２、１２８はまた、コンテンツプロバイダからのリソースを記憶し、様々な要求リソースを様々なクライアントコンピュータに伝送するためのいくつかのキャッシュサーバコンピューティングデバイスからなる、リソースキャッシュコンポーネント１２０、１２６、１３２も含む。ＤＮＳコンポーネント１１８、１２４、および１３０、ならびにリソースキャッシュコンポーネント１２０、１２６、１３２は、負荷分散または負荷分割ソフトウェア／ハードウェアのコンポーネントを含むが、これらに限定されない、通信を容易にする、追加のソフトウェアおよび／またはハードウェアコンポーネントを更に含んでもよい。
【００２０】
例示的な実施形態において、ＤＮＳコンポーネント１１８、１２４、１３０およびリソースキャッシュコンポーネント１２０、１２６、１３２は、コンポーネントまたはコンポーネントの一部が物理的に別個であるかどうかに関わらず、論理的にグループ化されていると見なされる。追加的に、ＣＤＮ  ＰＯＰ１１６、１２２、１２８は、ＣＤＮサービスプロバイダ１０６と論理的に関連付けられたものとして図１に例示されるが、ＣＤＮ  ＰＯＰは、様々な属性のクライアントコンピューティングデバイス１０２のために最良に機能する様態で、通信ネットワーク１０８全体に地理的に分散されるであろう。追加的に、当業者であれば、ＣＤＮサービスプロバイダ１０６がコンテンツおよびリソースの管理のための追加のコンピューティングデバイス等の、様々な追加のコンピューティングリソースと関連付けられ得ることを理解するであろう。
【００２１】
図１を更に続けて参照して、ネットワーク化されたコンピューティング環境１００は、通信ネットワーク１０８を介して１つ以上のクライアントコンピューティングデバイス１０２、ＣＤＮサービスプロバイダ１０６、およびコンテンツプロバイダ１０４と通信する、ネットワークコンピューティングプロバイダ１０７を更に含み得る。図１に例示されるネットワークコンピューティングプロバイダ１０７はまた、ネットワークコンピューティングプロバイダと関連付けられた１つ以上のコンピューティングデバイスの論理的関連付けにも対応する。具体的には、ネットワークコンピューティングプロバイダ１０７は、通信ネットワーク１０８上のノードに対応する、いくつかのポイントオブプレゼンス（「ＰＯＰ」）位置１３４、１４２、１４８を含み得る。それぞれのＰＯＰ１３４、１４２、１４８は、仮想マシンのいくつかのインスタンスを介する、データストリーミングアプリケーション等の、アプリケーションをホストするためのネットワークコンピューティングコンポーネント（ＮＣＣ）１３６、１４４、１５０を含み、一般的に、ＮＣＣのインスタンスと称される。当業者であれば、ＮＣＣ１３６、１４４、１５０が、仮想マシンの複数のインスタンスを提供するか、または仮想マシンのインスタンスの作成を動的に引き起こすための、物理的コンピューティングデバイスリソースおよびソフトウェアを含むことを理解するであろう。そのような作成は、クライアントコンピューティングデバイスから等の、特定の要求に基づくことができ、またはＮＣＣは、独力で仮想マシンのインスタンスの動的作成を開始し得る。それぞれのＮＣＣ  ＰＯＰ１３４、１４２、１４８はまた、ＮＣＣ１３６、１４４、１５０のインスタンスによって処理され、様々なクライアントコンピュータ等に送信されるコンテンツプロバイダからのユーザデータ、状態情報、処理要件、使用履歴データ、およびリソースを含むが、これらに限定されない、ネットワークまたはコンピューティングリソースの配信または処理において使用される任意の種類のデータを記憶するための、いくつかのストレージデバイスからなる、ストレージコンポーネント１４０、１４６、１５２も含む。ＮＣＣ１３６、１４４、１５０およびストレージコンポーネント１４０、１４６、１５２は、要求されたアプリケーションをサポートし、および／または情報をＤＮＳネームサーバに提供して、要求ルーティングを容易にする、仮想マシンのインスタンスを選択するための負荷分散または負荷分割のソフトウェア／ハードウェアコンポーネントを含むが、これらに限定されない、通信を容易にする、追加のソフトウェアおよび／またはハードウェアコンポーネントを更に含んでもよい。
【００２２】
例示的な実施形態において、ＮＣＣ１３６、１４４、１５０およびストレージコンポーネント１４０、１４６、１５２は、コンポーネントまたはコンポーネントの一部が物理的に別個であるかどうかに関わらず、論理的にグループ化されていると見なされる。例えば、ネットワークコンピューティングプロバイダ１０７は、ＮＣＣおよびストレージコンポーネントを提供するために別個のＰＯＰを維持してもよい。さらに、ＮＣＣ  ＰＯＰ  １３４、１４２、１４８は、ネットワークコンピューティングプロバイダ１０７と論理的に関連付けられたものとして図１に例示されるが、ＮＣＣ  ＰＯＰは、様々な属性のクライアントコンピューティングデバイス１０２のために最良に機能する様態で、通信ネットワーク１０８全体に地理的に分散されるであろう。さらに、当業者であれば、ネットワークコンピューティングプロバイダ１０７がコンテンツおよびリソースの管理のための追加のコンピューティングデバイス等の、様々な追加のコンピューティングリソースと関連付けられ得ることを理解するであろう。なおも更に、当業者であれば、ネットワークコンピューティングプロバイダ１０７のコンポーネントおよびＣＤＮサービスプロバイダ１０６のコンポーネントが同じまたは異なるエンティティによって管理され得ることを理解するであろう。
【００２３】
ここで図２〜６を参照して、図１のネットワーク化されたコンピューティング環境１００の様々なコンポーネントの間の対話が例示される。具体的には、図２〜６は、ネットワークコンピューティングプロバイダ１０７を介する、クライアントコンピューティングデバイス１０２とコンテンツプロバイダ１０４との間のコンテンツの交換のためのネットワーク化されたコンピューティング環境１００の様々なコンポーネントの間の対話を例示する。しかしながら、実施例の目的のために、例示説明は、簡略化されており、したがって、通信を容易にするために使用されるコンポーネントの多くは示されない。当業者であれば、そのようなコンポーネントが利用され得、それに応じて、追加の対話が本開示の趣旨および範囲を逸脱することなく行われることを理解するであろう。
【００２４】
図２を参照して、プロセスは、クライアントコンピューティングデバイス１０２からネットワークコンピューティングプロバイダ１０７へのブラウズセッション要求を生成および処理することから開始し得る。例示的に、クライアントコンピューティングデバイス１０２は、イベントまたはユーザ要求に応答してネットワークコンテンツを閲覧するためのブラウザを読み込んでもよい。ブラウザが読み込まれた後、ブラウザは、新しいブラウズセッションを要求するために実装されてもよい。クライアントコンピューティングデバイスのユーザの観点から、新しいブラウズセッションのための要求は、要求を１つ以上の対応するコンテンツプロバイダ１０４に伝送するための意図される要求に対応する。例示的に、この要求は、ブラウザ読み込み（例えば、既定または「ホーム」ページのための要求）の結果として自動的に生成されてもよく、あるいはユーザがリンクに従うか、またはネットワークアドレスをアドレスバーに入力することの結果として生成されてもよい。図２に例示されるように、ブラウズセッション要求は、最初にネットワークコンピューティングプロバイダ１０７に伝送されてもよい。例示的な実施形態において、ネットワークコンピューティングプロバイダ１０７は、登録のアプリケーションプログラムインターフェース（「ＡＰＩ」）を利用して、クライアントコンピューティングデバイス１０２からのブラウズセッション要求を承諾する。ブラウズセッション要求は、要求されたネットワークリソースに対応するネットワークアドレス情報を含むことができ、それは、インターネットプロトコル（「ＩＰ」）アドレス、ＵＲＬ、メディアアクセスコントロール（「ＭＡＣ」）アドレス等を含むが、これらに限定されない、任意の形態であってもよい。ブラウズセッション要求は、ユーザ、ブラウザ、クライアントコンピューティングデバイス１０２、および／または任意の他のブラウジングエンティティを識別する情報を更に含んでもよい。
【００２５】
ブラウズセッション要求の受信後、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求にサービス提供するために、ＮＣＣ  ＰＯＰ１４２等の関連付けられたネットワークコンピューティングコンポーネント（以下、「ＮＣＣ」）のポイントオブプレゼンス（以下、「ＰＯＰ」）を選択してもよく、ブラウズセッション要求における識別情報に基づいて、履歴上のブラウズストレージコンポーネントを識別してもよい。ＮＣＣ  ＰＯＰの選択は、インスタンス化された仮想マシンに利用可能な、処理およびネットワークリソースを決定してもよい。ＮＣＣ  ＰＯＰインスタンス時の処理およびネットワークリソースの選択およびソフトウェアの提供は、少なくとも部分的に、コンテンツプロバイダ１０４およびクライアントコンピューティングデバイス１０２との通信を最適化するために行われてもよい。
【００２６】
図３を参照して、ネットワークコンピューティングプロバイダ１０７からコンテンツプロバイダ１０４へのネットワークリソースのための要求の生成および処理のための例示的な対話が記載される。図３に例示されるように、選択されたＮＣＣ  ＰＯＰ１４２は、上の図２に図示される例示的なブラウズセッション要求等の、ブラウズセッション要求に基づいて、１つ以上のコンテンツプロバイダに対応するブラウズセッションを生成してもよい。例示的に、新しいブラウズセッションインスタンスをインスタンス化することは、ＮＣＣ  ＰＯＰ１４２で新しい仮想マシンインスタンスおよび／またはブラウザインスタンスを読み込み、新しいブラウズセッションのためのデバイスメモリ、ストレージもしくはキャッシュ領域、プロセッサ時間、ネットワーク帯域、または他の計算的もしくはネットワークリソースを予約することまたは割り当てることを含んでもよい。
【００２７】
新しいブラウズセッションインスタンスを初期化した後、ＮＣＣ  ＰＯＰ１４２は、ブラウズセッション要求に含まれるネットワークアドレスに基づいて、ネットワークリソースのための要求をコンテンツプロバイダ１０４に提供してもよい。例えば、ブラウズセッション要求は、「ｈｔｔｐ：／／ｗｗｗ．ｘｙｚｓｉｔｅ．ｃｏｍ／ｄｅｆａｕｌｔ．ｈｔｍ」等の、ウェブページのためのＵＲＬを含んでもよい。ＮＣＣ  ＰＯＰ１４２は、ネットワークコンピューティングプロバイダ（図示せず）と関連付けられたＤＮＳリゾルバによって、ＵＲＬをＩＰアドレスに解決してもよく、解決されたＩＰアドレスにおける、コンテンツプロバイダ１０４からのウェブページを要求してもよい。様々な実施形態において、ネットワークリソースは、コンテンツプロバイダ、コンテンツ配信ネットワーク（以下、「ＣＤＮ」）サーバ、またはネットワークコンピューティングプロバイダ１０７と関連付けられたキャッシュの任意の組み合わせから取り出されてもよい。例えば、ネットワークコンピューティングプロバイダは、リソースが、ローカルキャッシュまたは別のサーバもしくはネットワークコンピューティングプロバイダ１０７と関連付けられたサービスプロバイダに記憶されているかどうかを確認してもよい。ネットワークリソースがローカルまたは関連付けられた位置に記憶される場合、ＮＣＣ  ＰＯＰ１４２は、第三者のコンテンツプロバイダ１０４またはＣＤＮサービスプロバイダ１０６からではなく、ローカルまたは関連付けられた位置からネットワークリソースを取り出してもよい。例示的に、ＮＣＣ  ＰＯＰ１４２は、ブラウズセッション要求に含まれる任意の数のネットワークリソースのための要求を提供してもよく、任意の数の異なるソースからこれらのネットワークリソースを順次にまたは並行して得てもよい。
【００２８】
図３に例示されるように、コンテンツプロバイダ１０４は、ＮＣＣ  ＰＯＰ１４２からのリソース要求を受信し、それに応じて要求を処理する。一実施形態において、コンテンツプロバイダ１０４は、あたかもそれが元々、クライアントコンピューティングデバイス１０２によって提供されたかのように、リソース要求を処理する。例えば、コンテンツプロバイダ１０４は、要求するクライアントコンピューティングデバイス１０２の要件に応じて、コンテンツの種類、コンテンツの並び順、またはコンテンツのバージョンを選択してもよい。別の実施形態において、コンテンツプロバイダ１０４は、要求されたコンテンツ（例えば、処理リソースまたはネットワーク帯域の利用可能量）を提供する際に利用するためのＮＣＣ  ＰＯＰ１４２と関連付けられた情報を提供する、情報を提供されてもよい。
【００２９】
コンテンツプロバイダ１０４からの要求されたネットワークリソース（またはコンテンツプロバイダによって指定された他のソース）を得た後、ＮＣＣ  ＰＯＰ１４２は、ネットワークリソースを処理し、埋め込みリソース識別子を抽出し、クライアント遠隔セッションブラウズ構成の決定のための情報を集めてもよい。例えば、ウェブページ等のネットワークリソースは、埋め込みＣＳＳスタイル情報およびＪａｖａｓｃｒｉｐｔ、ならびにテキスト、画像、ビデオ、オーディオ、アニメーション、実行可能なコード、および他のＨＴＭＬ、ＣＳＳ、およびＪａｖａｓｃｒｉｐｔファイル等の追加のリソースに対する埋め込みリソース識別子を含んでもよい。埋め込みリソース識別子を抽出する処理において、ＮＣＣ  ＰＯＰ１４２は、図４を参照して下に論じられる、クライアント遠隔セッションブラウズ構成の決定の際に後で使用するための処理されたネットワークリソースについての情報を集めてもよい。
【００３０】
図４を参照して、ネットワークコンピューティングプロバイダからコンテンツプロバイダおよびコンテンツ配信ネットワークへの１つ以上の埋め込みリソースに対応する、１つ以上の要求の生成および処理のための例示的な対話が開示される。図４に例示されるように、選択されたＮＣＣ  ＰＯＰ１４２は、コンテンツプロバイダ１０４およびＣＤＮ  ＰＯＰ１１６等の、コンテンツの１つ以上のソースにリソース要求を提供してもよい。リソース要求は、上の図３に記載される要求されたネットワークリソース（例えば、ウェブページ）から抽出された１つ以上の埋め込みリソース識別子に基づいて、埋め込みリソースに対応してもよい。様々な実施形態において、埋め込みリソースは、ネットワークコンピューティングプロバイダ１０７と関連付けられたコンテンツプロバイダ、ＣＤＮサーバ、またはデータストアの任意の組み合わせから取り出されてもよい。
【００３１】
例えば、ネットワークコンピューティングプロバイダは、埋め込みリソースが、ローカルキャッシュに記憶されているか、それともネットワークコンピューティングプロバイダ１０７と関連付けられた別のサーバまたはサービスプロバイダに記憶されているかを確認してもよい。埋め込みリソースがローカルまたは関連付けられた位置に記憶される場合、ＮＣＣ  ＰＯＰ１４２は、第三者のコンテンツプロバイダまたはＣＤＮではなく、ローカルまたは関連付けられた位置から埋め込みリソースを取り出してもよい。例示的に、ＮＣＣ  ＰＯＰ１４２は、ネットワークリソースによって参照される、任意の数の埋め込みリソースのための要求を提供してもよく、任意の数の異なるソースからこれらの埋め込みリソースを順次にまたは並行して得てもよい。要求されたリソースを得た後、ＮＣＣ  ＰＯＰ１４２は、リソースおよび要求されたコンテンツを処理し、クライアントコンピューティングデバイス１０２へのコンテンツの処理および通信のための遠隔セッションブラウズ構成を決定してもよい。ＮＣＣ  ＰＯＰ  １４２は、更に、取り出されたコンテンツのいずれにおける参照をも識別し、履歴上のブラウズストレージコンポーネントにおける取り出しおよびキャッシングのための任意の追加のリソース要求を決定してもよい。
【００３２】
図５を参照して、ネットワークコンピューティングプロバイダとクライアントコンピューティングデバイスとの間の、履歴上のコンテンツ表現、ブラウズセッションデータ、およびユーザ対話データの生成および処理のための例示的な対話が開示される。前述のように、一実施形態において、インスタンス化されたネットワークコンピューティングコンポーネントおよびクライアントコンピューティングデバイス１０２上のそれぞれのブラウザは、インスタンス化されたネットワークコンピューティングコンポーネントおよびクライアントコンピューティングデバイスでの要求されたリソースの割り当ておよび処理に関する、クライアント遠隔セッションブラウズ構成情報等のブラウザのセッション情報を交換し得る。一実施形態において、履歴上のブラウズストレージコンポーネントは、追加的に、上述のクライアント遠隔セッションブラウズ構成情報と同じまたは異なり得る、履歴上の遠隔セッションブラウズ構成情報と関連付けられてもよい。
【００３３】
図５に例示されるように、選択されたＮＣＣ  ＰＯＰ  １４２は、上述のクライアント遠隔セッションブラウズ構成情報および履歴上の遠隔セッションブラウズ構成情報に基づいて、初期処理結果を生成してもよい。クライアント遠隔セッションブラウズ構成情報および履歴上の遠隔セッションブラウズ構成情報がそれぞれ、処理結果の異なる形式および／または処理を指定する場合、選択されたＮＣＣ  ＰＯＰ  １４２は、２つの異なる処理結果を生成してもよい。例示的に、履歴上の遠隔セッションブラウズ構成に基づいて生成される処理結果は、履歴上のコンテンツ表現と称され得る。ＮＣＣ  ＰＯＰ  １４２は、履歴上の遠隔セッションブラウズ構成情報に従って生成される処理結果（すなわち、履歴上のコンテンツ表現）を、識別された履歴上のブラウズストレージコンポーネントに提供してもよい。例示的に、履歴上のブラウズストレージコンポーネントは、ネットワークコンピューティングプロバイダ１０７の１つ以上のＮＣＣ  ＰＯＰを介して実現されてもよく、または任意の他のネットワークストレージ位置もしくはコンポーネントを含んでもよい。
【００３４】
選択されたＮＣＣ  ＰＯＰ  １４２は、ネットワーク１０８を介して、初期処理結果をクライアントコンピューティングデバイス１０２に提供してもよい。初期処理結果は、上の図４に記載されるように、選択されたクライアント遠隔セッションブラウズ構成に従ってＮＣＣ  ＰＯＰ  １４２によって処理された、関連付けられた埋め込みリソースと共に、ウェブページ等の要求されたネットワークコンテンツに対応してもよい。ＮＣＣ  ＰＯＰ１４２は、どの追加の処理がＮＣＣ  ＰＯＰ１４２、クライアントコンピューティングデバイス１０２、または両方で実行されるかの決定も行う。初期処理結果および処理の割り当てを受信した後、クライアントコンピューティングデバイス１０２は、選択されたクライアント遠隔セッションブラウズ構成によって必要とされる初期処理結果に対し、任意の残りの処理行為を行ってもよく、また、ブラウザのコンテンツ表示領域で完全に処理されたコンテンツを表示してもよい。クライアントコンピューティングデバイス１０２は、ローカルインターフェースコンポーネントまたはコンテンツ要素との任意のローカルユーザ対話をローカルに処理してもよく、また、遠隔処理を必要とするユーザ対話をネットワークコンピューティングプロバイダ１０７に提供してもよい。ネットワークコンピューティングプロバイダ１０７は、クライアントコンピューティングデバイスからのコンテンツまたは遠隔ユーザ対話データに対する変更に応答して、更新された処理結果をクライアントコンピューティングデバイスに提供してもよい。
【００３５】
図６を参照して、クライアントコンピューティングデバイスからネットワークコンピューティングプロバイダへの追加の新しいブラウズセッション要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図が開示される。図６に例示されるように、第２の新しいブラウズセッション要求は、ネットワーク１０８により、クライアントコンピューティングデバイス１０２からネットワークコンピューティングプロバイダ１０７に送信されてもよい。例示的な実施形態において、ネットワークコンピューティングプロバイダ１０７は、登録ＡＰＩを利用して、クライアントコンピューティングデバイス１０２からのブラウズセッション要求を承諾する。
【００３６】
追加のブラウズセッション要求は、ユーザが、新しいコンテンツ表示領域を有する新しいブラウザウィンドウを開くこと、既存のブラウザウィンドウで新しいコンテンツ表示領域を開くこと（例えば、ブラウザで新しいタブを開くこと）、既存のコンテンツ表示領域で新しいネットワークコンテンツを要求すること（例えば、新しいネットワークリソースへのリンクに従うこと、または新しいネットワークアドレスをブラウザに入力すること）、または任意の他のユーザ対話に応答して、クライアントコンピューティングデバイス１０２によって生成されてもよい。例えば、第１のブラウズセッションインスタンスに対応する第１のウェブページを閲覧するユーザは、第２のウェブページを表示するために新しいタブまたはブラウザウィンドウを開く、リンクに従ってもよい。一実施形態において、第２のウェブページと関連付けられたコンテンツを得て、それを処理する、いずれの要求されるステップも、ブラウザが両方のリソース要求の処理を扱い得る、現在インスタンス化されているネットワークコンピューティングコンポーネントによって行われてもよい。別の実施形態において、クライアントコンピューティングデバイス１０２の要求は、第２のウェブページのネットワークアドレスを含む、ネットワークコンピューティングプロバイダ１０７への新しいブラウズセッション要求として、処理されてもよい。この実施形態において、クライアントコンピューティングデバイス上のブラウザは、別個のブラウズセッションを具体的に要求しない場合があり、クライアントコンピューティングデバイス１０２上でのブラウザとのユーザの対話は、同じブラウジングセッションの一部であるように見える場合がある。図２および３に関して上に記載されるように、ネットワークコンピューティングプロバイダ１０７は、第２のウェブページに関連付けられたコンテンツを得て、処理するためにネットワークコンピューティングコンポーネントのインスタンス化を引き起こしてもよい。別の実施形態において、新しいブラウズセッション要求は、ネットワークリソース（例えば、ウェブページのフレーム）のセクション、個々のネットワークリソース、または埋め込みリソース自体、コンテンツの組に含まれたデータオブジェクト、もしくは個々のネットワークリソースに対応する、クライアントコンピューティングデバイス１０２によって生成されてもよい。
【００３７】
例示的に、追加のブラウズセッション要求は、ユーザと関連付けられた情報、クライアントコンピューティングデバイス１０２（例えば、ハードウェアもしくはソフトウェア情報、デバイスの物理的もしくは論理的位置等）と関連付けられた情報、ネットワーク１０８と関連付けられた情報、ユーザまたはブラウザの選好（例えば、要求された遠隔セッションブラウズプロトコル、選好一覧、決定ツリー、または他の情報）、ネットワークコンピューティングプロバイダ１０７と関連付けられた情報、１つ以上の要求されたネットワークコンテンツ（例えば、ネットワークリソースのネットワークアドレス）と関連付けられた情報等を含むが、これらに限定されない、任意の数のデータまたは情報を含んでもよい。要求されたコンテンツは、ウェブページもしくは他のドキュメント、テキスト、画像、ビデオ、オーディオ、実行可能なスクリプトもしくはコード、または任意の他の種類のデジタルリソースを含む、任意の様態のデジタルコンテンツを含んでもよい。
【００３８】
ブラウズセッション要求の受信後、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求に含まれる識別情報に基づいて、履歴上のブラウズストレージコンポーネントを決定し、ブラウズセッション要求にサービス提供するために、ＮＣＣ  ＰＯＰ  １４２等の関連付けられたネットワークコンピューティングコンポーネントを選択してもよい。図２を参照して上に論じられたように、ネットワークコンピューティングプロバイダ１０７は、ＮＣＣ  ＰＯＰを選択して、利用可能なＮＣＣ  ＰＯＰリソース（例えば、利用可能なメモリ、プロセッサ負荷、ネットワーク負荷等）、ＮＣＣ  ＰＯＰでブラウズセッション要求にサービス提供する財務コスト、クライアントコンピューティングデバイス１０２に対するＮＣＣ  ＰＯＰ位置、コンテンツプロバイダ１０４、またはＣＤＮ  ＰＯＰ１１６、ＮＣＣ  ＰＯＰキャッシュ状態（例えば、要求されたリソースがＮＣＣ  ＰＯＰキャッシュにすでに記憶されているかどうか）等を含むが、これらに限定されない、任意の数の要因に基づいて、ブラウズセッション要求にサービス提供してもよい。一実施形態において、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求にサービス提供するためにいくつかのＮＣＣ  ＰＯＰを選択してもよい。例示的に、ネットワークコンピューティングプロバイダ１０７は、例示説明の目的のために、本明細書ではＮＣＣ  ＰＯＰ１４２を選択しているものとして図示されるが、ネットワークコンピューティングプロバイダ１０７は、任意の現存するＮＣＣ  ＰＯＰを選択し、ブラウズセッション要求にサービス提供してもよい。例えば、単一のクライアントコンピューティングデバイス１０２が、３つの異なるブラウズセッション要求を、異なるネットワークリソースに対応するネットワークコンピューティングプロバイダ１０７に同時にまたは順次に提供してもよい。ネットワークコンピューティングプロバイダ１０７は、それぞれのブラウズセッション要求のために異なるＮＣＣ  ＰＯＰを、全ての３つのブラウズセッション要求のために同じＮＣＣ  ＰＯＰを、またはそれらの任意の組み合わせを選択してもよい。上述のように、以前のブラウズセッション要求または同時に起こるブラウズセッション要求のために利用されたものとは異なるＮＣＣ  ＰＯＰを選択するべきかの決定は、利用可能なシステムリソースに基づいて、無作為に、または上述および図２に関するその他の要因に従って行われてもよい。
【００３９】
図７は、例示的なブラウザインターフェースおよびブラウズセッションコンテンツの表示を図示する、ユーザインターフェース図である。図５を参照して上述のように、ブラウザ７００は、コンテンツ表示領域７０２、ならびに１つ以上のローカルインターフェースコンポーネントを有してもよい。これらのローカルインターフェースコンポーネントは、ツールバー、メニュー、ボタン、アドレスバー、スクロールバー、ウィンドウサイズ変更制御、またはその他のユーザインターフェース制御を含んでもよい。例示的に、ローカルインターフェースコンポーネントは、コンテンツ表示領域とは別個のものとして表示されてもよく、またはコンテンツ表示領域内にオーバーレイされるか、もしくは埋め込まれてもよい。
【００４０】
ローカルインターフェースコンポーネントとの対話は、対話およびクライアント遠隔セッションブラウズ構成によって必要とされる処理に応じて、ローカルユーザ対話または遠隔ユーザ対話として扱われてもよい。例えば、ブラウザメニューでの選好オプションの選択は、完全にブラウザによるローカルユーザ対話として扱われてもよい。メニューを表示し、選択に関する視覚的フィードバックを提供し、選好ウィンドウを表示し、ブラウザの選好に対してなされた変更を処理するために必要とされる処理は、ローカルに行われてもよい。上述のように、ユーザ対話をローカルに処理することは、処理のためにユーザ対話データをＮＣＣ  ＰＯＰ１４２に送信することとは異なり、ブラウザでのより大きな応答性を提供し得る。別の例としては、ＮＣＣ  ＰＯＰ１４２上で広範な処理を指定する、クライアント遠隔セッションブラウズ構成（例えば、ＲＤＰ等の遠隔セッション通信プロトコルを使用するクライアント遠隔セッションブラウズ構成）を使用するとき、ブラウザツールバーにおけるコンテンツリフレッシュボタンの選択は、ローカルユーザ対話および遠隔ユーザ対話の両方として扱われてもよい。ボタン選択に対応するインターフェースフィードバックを提供するために必要とされる限定された処理は、インターフェース応答性の出現を提供するためにクライアントコンピューティングデバイス１０２で扱われてもよいが、一方でリフレッシュコマンドは、ブラウザのコンテンツ表示領域で表示されるネットワークコンテンツの処理を必要とする場合があり、処理のためにＮＣＣ  ＰＯＰ１４２にユーザ対話データとして送信されてもよい。次いで、ＮＣＣ  ＰＯＰ１４２は、表示のために、リフレッシュされたネットワークコンテンツに対応する更新された処理結果をクライアントコンピューティングデバイス１０２に戻して伝送してもよい。
【００４１】
例示的に、ブラウザ７００は、コンテンツタブ７０８Ａ〜Ｃにおいて組織化される１つ以上のコンテンツ表示領域７０２を含んでもよい。例示的に、コンテンツ表示領域７０２は、ライブブラウジングセッションの結果としてＮＣＣ  ＰＯＰ  １４２によって提供される処理結果に対応するコンテンツの表現を表示してもよく、または履歴上のコンテンツ表現に対応するコンテンツの表現を表示してもよい。履歴上のコンテンツ表現と関連付けられたタブ７０８Ａおよび７０８Ｃは、履歴上のコンテンツ表現が閲覧されているという１つ以上の印を有してもよく、また更に、日付、時間、または他の関連付けられた情報もしくは識別情報を含んでもよい。
【００４２】
例示的に、ブラウザ７００は、本明細書に示されないが、履歴上のコンテンツ表現の閲覧、処理、または維持と関連付けられた、任意の数の他の制御を含んでもよい。例えば、ブラウザ７００は、履歴上のコンテンツ表現に対応するコンテンツの現在のバージョンを示すための制御、履歴上のナビゲーションパスにおいて前後に移動するための制御、例示説明の目的のために、図１３および１４に示されるもの等の一覧またはツリービューにおいて履歴上のコンテンツ表現および／または履歴上のナビゲーションパスを示すための制御を含んでもよい。ブラウザ７００は、図１５を参照して後述されるように、現在の１つの表示されるコンテンツまたは履歴上のコンテンツ表現に基づいて履歴上のブラウズストレージコンポーネントの検索を可能にするための制御を更に含んでもよい。様々な他の実施形態において、ブラウザ７００は、表示される履歴上のコンテンツ表現内のリソース参照（例えば、ハイパーリンク）が、履歴上のブラウズストレージコンポーネントで記憶された完全な履歴上のコンテンツ表現と関連付けられているかどうかを視覚的に示してもよい。なおも更なる実施形態において、ブラウザ７００は、例えば、参照されたリソースに従ったか、または参照されたリソースから継続してブラウズした、何人かの他のユーザに基づいて、表示される履歴上のコンテンツ表現内のリソース参照の人気のレベルを視覚的に示してもよい。
【００４３】
図８は、一連の処理サブシステム８００としての例示的なブラウザコンテンツ処理行為を図示する図である。多くの実施形態において、ブラウザは、一連の処理行為で、コンテンツ（例えば、ウェブページおよび関連付けられた埋め込みリソース等のネットワークリソース）の組を処理してもよい。例示的に、かつ図３〜５を参照して上述されるように、クライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ネットワークコンピューティングプロバイダ（例えば、ＮＣＣ  ＰＯＰ）で行われる処理行為とクライアントコンピューティングデバイス１０２で行われる処理行為との間の分割を指定してもよい。この分割は、ＮＣＣ  ＰＯＰおよびクライアントコンピューティングデバイス１０２のそれぞれによって行われるいくつかの処理行為を指定してもよく、または全ての処理行為を単一のデバイスもしくはコンポーネントに割り当ててもよい。例えば、ＮＣＣ  ＰＯＰは、ブラウズセッションインスタンスでこれらの様々な処理行為の全てを行い、ビットマップアセンブリまたは表示のために、完全に処理されたＲＤＰ処理結果をクライアントコンピューティングデバイス１０２に送信してもよい。例示的に、単一のブラウズセッションインスタンスは、異なるまたは同じクライアント遠隔セッションブラウズ構成および履歴上の遠隔セッションブラウズ構成を有してもよい。更に、任意の数の異なるクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ＮＣＣ  ＰＯＰで走っている１つ以上のブラウズセッションインスタンスによって使用されてもよい。
【００４４】
当業者であれば、ここに示されるサブシステムが例示説明の目的のために図示され、必要な順番またはブラウザサブシステムの最終的な列挙を記載するようには意図されないことを理解するであろう。様々なブラウザソフトウェアコンポーネントは、追加の、またはここに示されるより少ないブラウザサブシステムを実現してもよく、サブシステムまたは対応する処理行為を任意の数の異なる様式で指示してもよい。例示説明の目的のためにここに図示される処理サブシステム８００は、ウェブページまたは他のウェブコンテンツの処理を対象とするが、当業者であれば、他のファイルの種類またはネットワークリソースの処理が同様の様式で分割されてもよいことを理解するであろう。例えば、当業者であれば、類似のスキーマが画像、ビデオ、オーディオ、データベース情報、３次元デザインデータ、または当該技術分野で既知の任意の他のファイル形式もしくは種類のデータの処理のために開発され得ることを理解するであろう。類似のスキーマは、スケジューリング、メモリもしくはファイル管理、システムリソース管理、処理もしくはサービス実行または管理等の動作を処理する、任意の数のデバイス動作システムまたはソフトウェアフレームワークのために開発されてもよい。更に、ＨＴＭＬプロトコルおよびＲＤＰ遠隔セッション通信プロトコルが、本明細書で例示説明の目的のために論じられるが、当業者であれば、クライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成が、任意の数の指定された処理行為のために任意の数の遠隔通信プロトコルを実現してもよく、また、クライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成が、クライアントコンピューティングデバイス１０２およびネットワークコンピューティングプロバイダ１０７の任意の組み合わせで下に識別される、行為の任意の部分または組み合わせを行うように作り出されてもよいことを理解するであろう。
【００４５】
例示的に、ネットワークコンテンツの処理および表示に関与する第１の処理サブシステムは、ネットワーク利用サブシステム８０２である。例示的に、ネットワーク利用サブシステム８０２は、ウェブコンテンツのローカルキャッシングを含む、ブラウザとコンテンツプロバイダとの間の全ての通信を担当してもよい。ネットワーク利用サブシステムは、一般的に、ユーザのネットワークの性能によって限定される。ネットワーク利用サブシステム８０２での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、１つ以上のキャッシングまたはリソース取り出し行為がＮＣＣ  ＰＯＰで行われたが、コンテンツの構文解析および処理がクライアントコンピューティングデバイスで行われた、ＨＴＭＬ遠隔セッション通信プロトコルを利用するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成を含んでもよい。
【００４６】
ＨＴＭＬドキュメント等のネットワークリソースがサーバからダウンロードされるとき、ドキュメントを構文解析し、ネットワーク利用サブシステムにおいて追加のダウンロードを開始し、ドキュメントの構造表現を作成する、ＨＴＭＬサブシステム８０４に渡されてもよい。現在のブラウザは、ＸＨＴＭＬ、ＸＭＬ、およびＳＶＧドキュメントのために使用される関連するサブシステムも含んでもよい。ＨＴＭＬサブシステム８０４での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、初期のＨＴＭＬページが埋め込みリソース識別子を抽出するためにＮＣＣ  ＰＯＰで処理されるが、コンテンツの追加の構文解析および処理がクライアントコンピューティングデバイスで行われる、ＨＴＭＬ遠隔セッション通信プロトコルを利用するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成を含んでもよい。別の実施形態において、ＨＴＭＬサブシステム８０４での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ＨＴＭＬドキュメントの構造表現を作成するために初期処理を行い、構造表現および関連付けられた埋め込みリソースを備える処理結果を提供してもよいであろう。
【００４７】
ＨＴＭＬドキュメント内であれ、埋め込みＣＳＳドキュメント内であれ、ＣＳＳに遭遇するとき、それは、スタイル情報を構文解析し、後で参照され得る構造表現を作成するために、ＣＳＳサブシステム８０６に渡されてもよい。例示的に、ＣＳＳサブシステム８０６での処理行為を分割する遠隔セッションブラウズ構成は、ＣＳＳ構造表現およびＨＴＭＬ構造表現を含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００４８】
ＨＴＭＬドキュメントは、しばしば、メタデータ、例えば、ドキュメントヘッダーに記載される情報または要素に適用される属性を含む。コレクションサブシステム８０８は、このメタデータを記憶し、それにアクセスすることを担当してもよい。コレクションサブシステム８０８での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、上述の任意の他の構造表現と共に、処理されたメタデータを含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００４９】
Ｊａｖａｓｃｒｉｐｔに遭遇するとき、それは、スクリプトを実行することを担当するＪａｖａＳｃｒｉｐｔサブシステム８１０に直接渡されてもよい。Ｊａｖａｓｃｒｉｐｔサブシステム８１０は、年来、完全に検証されており、当技術分野において最も周知のブラウザサブシステムのうちの１つであり得る。Ｊａｖａｓｃｒｉｐｔサブシステム８１０での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ネイティブまたは中間形態のスクリプトの状態データまたは表現、ならびに上述の任意の他の処理された構造またはデータを含むが、これらに限定されない、１つ以上のＪａｖａｓｃｒｉｐｔスクリプトの内部表現を含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００５０】
多くのＪａｖａＳｃｒｉｐｔエンジンはブラウザに直接に統合されていないため、ブラウザとスクリプトエンジンとの間のマーシャリングサブシステム８１２を含む通信層が存在する場合がある。この通信層を通して情報を渡すことは、一般的に、マーシャリングと称される。マーシャリングサブシステム８１２での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、マーシャリングデータ、ならびに上述の任意の他の処理された構造、スクリプト、またはデータを含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００５１】
いくつかの実施形態において、ＪａｖａＳｃｒｉｐｔは、ドキュメントオブジェクトモデルＡＰＩを介してウェブドキュメント等の基礎的ネットワークリソースと対話する。これらのＡＰＩは、どのようにドキュメントにアクセスして操作するかを知り、スクリプトエンジンとブラウザとの間の一次対話地点である、ネイティブなオブジェクトモデルサブシステム８１４を介して提供されてもよい。例示的に、ネイティブなオブジェクトモデルサブシステム８１４での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ネイティブなオブジェクトモデル状態データまたはＡＰＩコール、ならびに上述の任意の他の処理された構造、スクリプト、またはデータを含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００５２】
一旦、ドキュメントが構築されると、ブラウザは、ユーザに対して表示され得る前にスタイル情報を適用する必要があり得る。書式設定サブシステム８１６は、ＨＴＭＬドキュメントを取り出し、スタイルを適用する。例示的に、書式設定サブシステム８１６での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、適用されたスタイルを有するＨＴＭＬ表現、ならびに上述の任意の他の処理された状態データ、ＡＰＩコール、構造、スクリプト、またはデータを含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００５３】
一実施形態において、ＣＳＳは、ブロックに基づくレイアウトシステムである。ドキュメントがスタイル設定された後、ブロックビルディングサブシステム８１８での次のステップは、ユーザに対して表示される矩形のブロックを構築することであってもよい。この処理は、ブロックのサイズ等の事柄を決定してもよく、次の段階、レイアウトと密接に統合されてもよい。ブロックビルディングサブシステム８１８での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ブロック情報、ならびに上述の任意の他の処理された状態データ、ＡＰＩコール、構造、スクリプト、またはデータを含み、随意に任意の関連付けられた埋め込みリソースを含む、処理結果を構築してもよい。
【００５４】
ブラウザがコンテンツをスタイル設定し、ブロックを構築した後、コンテンツをレイアウトする処理を経てもよい。レイアウトサブシステム８２０は、このアルゴリズム的に複雑なプロセスを担当する。例示的に、レイアウトサブシステム８２０での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、上述の様々な状態データ、ＡＰＩコール、構造、スクリプト、またはデータを処理して、クライアントコンピューティングデバイスのためのレイアウト情報を含む処理結果を構築してもよい。例示的に、ＮＣＣ  ＰＯＰは、クライアントコンピューティングデバイスのために好適なレイアウトを生成するために、（例えば、初期ブラウズセッション要求において提供される）クライアントコンピューティングデバイスまたはブラウザと関連付けられた様々なデータまたは設定を使用してもよい。例えば、携帯デバイスは、スクリーン解像度および表示モードをＮＣＣ  ＰＯＰに提供してもよい。ＮＣＣ  ＰＯＰは、携帯デバイス上で走っているブラウザのために好適なコンテンツ表現に対応する処理結果を生成するために、レイアウト計算をこのスクリーン解像度および表示モードに基づいて行ってもよい。例示的に、様々な実施形態において、ＮＣＣ  ＰＯＰによって実現される任意の他のサブシステムは、クライアントのための処理結果を生成するときに、クライアントコンピューティングデバイスまたはブラウザと関連付けられたデータを使用してもよい。
【００５５】
本処理の最終段階は、最終コンテンツがユーザに対して表示される、表示サブシステム８２２内で行われてもよい。この処理は、しばしば、描画と称される。ネットワーク利用サブシステム８０２での処理行為を分割するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成は、ＲＤＰ遠隔セッション通信プロトコルを利用するクライアント遠隔セッションブラウズ構成または履歴上の遠隔セッションブラウズ構成を含んでもよく、そこではほぼ全ての処理がＮＣＣ  ＰＯＰで行われ、ビットマップデータおよび低レベルインターフェースデータを含む処理結果が表示のためにクライアントコンピューティングデバイスに渡される。
【００５６】
図９は、図１のネットワークコンピューティングプロバイダ１０７によって実装される新しいブラウズセッションルーチン９００を例示する、流れ図である。新しいブラウズセッションルーチン９００は、ブロック９０２で開始する。ブロック９０４で、ネットワークコンピューティングプロバイダ１０７は、クライアントコンピューティングデバイス１０２からの新しいブラウズセッション要求を受信する。前述のように、クライアントコンピューティングデバイス１０２は、イベントまたはユーザ要求に応答してネットワークコンテンツを表示するためのブラウザを読み込んでもよい。ブラウザが読み込まれた後、ブラウザは、新しいブラウズセッションを要求するために実装されてもよい。クライアントコンピューティングデバイスのユーザの観点から、新しいブラウズセッションのための要求は、要求を１つ以上の対応するコンテンツプロバイダ１０４に伝送するための意図される要求に対応する。例示的に、この要求は、ブラウザ読み込み（例えば、既定または「ホーム」ページのための要求）の結果として自動的に生成されてもよく、あるいはユーザがリンクに従うか、またはネットワークアドレスをアドレスバーに入力することの結果として生成されてもよい。このブラウズセッション要求は、クライアントコンピューティングデバイス１０２によって要求された様々なネットワークリソースに対する１つ以上のアドレスもしくは参照または他のコンテンツを含んでもよい。ブラウズセッション要求は、ユーザ識別子、ブラウザ識別子、履歴上のキャッシュまたはデータストア識別子、物理的もしくは論理的位置識別子、またはデバイス識別子を含むが、これらに限定されない、識別情報を更に含んでもよい。例示的な実施形態において、ブラウズセッション要求は、ＡＰＩに従って伝送される。
【００５７】
ブロック９０６で、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求に含まれる識別情報の１つ以上のアスペクトと関連付けられた、履歴上のブラウズストレージコンポーネントを識別してもよい。例示的に、履歴上のブラウズストレージコンポーネントは、ネットワークコンピューティングプロバイダ１０７（例えば、１つ以上のＮＣＣ  ＰＯＰ上で実装される）、と関連付けられても、第３者ネットワークストレージコンポーネントまたはデータストアと関連付けられるかまたはそれによって提供されてもよい。
【００５８】
ブロック９０８で、ネットワークコンピューティングプロバイダ１０７は、関連付けられたＮＣＣ  ＰＯＰを選択し、ブラウズセッション要求に基づいて新しいブラウズセッションをインスタンス化してもよい。図１を参照して上に論じられたように、ネットワークコンピューティングプロバイダ１０７は、任意の数のＮＣＣ  ＰＯＰを、物理的または論理的位置全域に分散して含んでもよい。ネットワークコンピューティングプロバイダ１０７は、ＮＣＣ  ＰＯＰを選択し、利用可能なＮＣＣ  ＰＯＰリソース（例えば、利用可能なメモリ、プロセッサ負荷、ネットワーク負荷等）、ＮＣＣ  ＰＯＰでブラウズセッション要求にサービス提供する財務コスト、クライアントコンピューティングデバイス１０２、コンテンツプロバイダ１０４、またはＣＤＮ  ＰＯＰ１１６に対するＮＣＣ  ＰＯＰ位置、ＮＣＣ  ＰＯＰキャッシュ状態（例えば、要求されたリソースがＮＣＣ  ＰＯＰキャッシュまたはデータストアに既に記憶されているかどうか）等を含むが、これらに限定されない任意の数の要因に基づいて、ブラウズセッション要求にサービス提供してもよい。
【００５９】
一実施形態において、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求にサービス提供するためにいくつかのＮＣＣ  ＰＯＰを選択してもよい。例えば、ネットワークコンピューティングプロバイダ１０７は、ネットワーク内の異なる論理的位置を有する２つのＮＣＣ  ＰＯＰを選択してもよい。それぞれのＮＣＣ  ＰＯＰは、独立して、クライアントコンピューティングデバイス１０２のためにネットワークコンテンツを要求および処理してもよく、クライアントコンピューティングデバイス１０２は、第１のＮＣＣ  ＰＯＰからのデータを承諾して、処理結果を戻してもよい。ネットワークコンピューティングプロバイダ１０７によって選択された後、ＮＣＣ  ＰＯＰ１４２は、ブラウズセッション要求を得てもよい。一実施形態において、ＮＣＣ  ＰＯＰ１４２は、ネットワークコンピューティングプロバイダ１０７のコンポーネントによってブラウズセッション要求をＮＣＣ  ＰＯＰ１４２に転送させてもよい。別の実施形態において、ＮＣＣ  ＰＯＰ１４２またはクライアントコンピューティングデバイス１０２は、接続情報を受信し、ＮＣＣ  ＰＯＰ１４２とクライアントコンピューティングデバイス１０２との間の直接の通信の確立を可能にし得る。例示的に、ＮＣＣ  ＰＯＰ１４２には、元々ネットワークコンピューティングプロバイダ１０７に提供されたブラウズセッション要求が提供されてもよく、情報のサブセット（例えば、要求されたコンテンツのネットワークアドレスのみ）が提供されてもよく、または元のブラウズセッション要求に含まれない追加の情報が提供されてもよい。
【００６０】
ＮＣＣ  ＰＯＰ１４２が選択された後、ネットワークコンピューティングプロバイダ１０７は、ＮＣＣ  ＰＯＰ１４２に新しいブラウズセッションをインスタンス化させてもよい。例示的に、新しいブラウズセッションインスタンスをインスタンス化することは、ＮＣＣ  ＰＯＰ１４２で新しい仮想マシンインスタンスおよび／またはブラウザインスタンスを読み込み、新しいブラウズセッションのためのデバイスメモリ、ストレージもしくはキャッシュ領域、プロセッサ時間、ネットワーク帯域、または他の計算的もしくはネットワークリソースを予約することまたは割り当てることを含んでもよい。例示的に、新しいブラウズセッションインスタンスおよび／またはブラウザインスタンスの１つ以上の特性は、ブラウズセッション要求に含まれるクライアントコンピューティングデバイス１０２の情報に基づいてもよい。例えば、ブラウズセッション要求は、デバイスの種類もしくはブラウザの種類、デバイススクリーン解像度、ブラウザ表示領域、またはクライアントコンピューティングデバイス１０２もしくはブラウザの表示選好もしくは能力を定義する他の情報を含んでもよい。ＮＣＣ  ＰＯＰ  １４２は、それに応じて、仮想マシンインスタンスおよび／またはクライアントコンピューティングデバイス１０２と同一または同様の能力を有するブラウザインスタンスをインスタンス化してもよい。例示的に、クライアントコンピューティングデバイス１０２と同一または同様の能力を有する仮想マシンインスタンスおよび／またはブラウザを維持することは、ＮＣＣ  ＰＯＰ１４２が、特定のクライアントコンピューティングデバイス１０２上での表示に適切な寸法およびレイアウトに応じてネットワークコンテンツを処理することを可能にし得る。
【００６１】
いくつかの実施形態において、ＮＣＣ  ＰＯＰ１４２は、新しいブラウズセッションをインスタンス化することに加えて、またはこの代替として、既存の仮想マシンインスタンスおよび／またはブラウザインスタンスを利用してもよい。例えば、ＮＣＣ  ＰＯＰ１４２が選択された後、ネットワークコンピューティングプロバイダ１０７は、ＮＣＣ  ＰＯＰ１４２に、ＮＣＣ  ＰＯＰ１４２で以前にインスタンス化された１つ以上のインスタンス等の既存のブラウザインスタンスおよび／または仮想マシンインスタンスを新しいブラウズセッション要求と関連付けさせてもよい。例示的に、既存のブラウザセッションおよび／または仮想マシンインスタンスは、ユーザまたはクライアントコンピューティングデバイス１０２と関連付けられた別のブラウズセッション、遠隔アプリケーションセッション、または他の遠隔処理に対応してもよく、あるいは無関係のブラウズセッションまたは遠隔処理からの以前にインスタンス化されたソフトウェアインスタンスであってもよい。他の実施形態において、ＮＣＣ  ＰＯＰ１４２は、既存の仮想マシンインスタンスにおける新しいブラウザまたは他のアプリケーション処理をインスタンス化してもよく、あるいは任意の数の他の様式で、以前にインスタンス化されたソフトウェア処理および新たにインスタンス化されたソフトウェア処理の利用を組み合わせてもよい。なおも更なる実施形態において、ネットワークコンピューティングプロバイダまたはＮＣＣ  ＰＯＰ１４２は、単一のブラウズセッション要求に基づいて、任意の数の新しい仮想マシンインスタンスおよび／またはブラウザインスタンスをインスタンス化（または既存のインスタンス化されたインスタンスを使用）してもよい。
【００６２】
ブロック９１０で、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求に含まれるネットワークアドレスに基づいて、１つ以上のネットワークリソースのための要求をコンテンツプロバイダまたはＣＤＮサービスプロバイダに提供してもよい。様々な実施形態において、１つ以上のネットワークリソースは、ＮＣＣ  ＰＯＰ１４２に対してローカルのキャッシュから追加的にまたは交互に取り出され得るか、あるいはネットワークコンピューティングプロバイダ１０７と関連付けられ得る。当業者であれば、他の実施形態の場合において、リンクまたはネットワークアドレスが、デジタルファイルロッカー内もしくは他のネットワークストレージ位置、またはネットワークコンピューティングプロバイダ１０７もしくはクライアントコンピューティングデバイス１０２と関連付けられたキャッシュコンポーネントに記憶される、ドキュメントまたはファイルに対応してもよいことを理解するであろう。いくつかの実施形態において、新しいセッション要求は、ネットワークアドレスに加えて、またはその代替としてドキュメントまたはファイルを含んでもよい。
【００６３】
ブロック９１２で、ネットワークコンピューティングプロバイダ１０７は、１つ以上のネットワークリソースを得る。要求されたネットワークリソースを得た後、ＮＣＣ  ＰＯＰ１４２は、埋め込みリソース識別子を抽出するためにネットワークリソースを処理してもよい。ネットワークコンピューティングプロバイダ１０７は、埋め込みリソース識別子に基づいて、コンテンツプロバイダ、ＣＤＮサービスプロバイダ、およびキャッシュまたはデータストア等の、コンテンツの１つ以上のソースにリソース要求を提供してもよい。ネットワークコンピューティングプロバイダ１０７は、これらの埋め込みリソースを任意の数の異なるソースから順次にまたは並行して得てもよい。
【００６４】
ブロック９１４で、ネットワークコンピューティングプロバイダ１０７は、上のブロック９１２において得られたネットワークリソースを処理して、履歴上のブラウズストレージコンポーネントのための任意の追加のリソース要求を決定してもよい。一実施形態において、ネットワークコンピューティングプロバイダ１０７は、要求されたネットワークリソースによって直接または間接的に参照されるネットワークリソースを処理し、対応する履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに提供するように構成されてもよい。要求および参照されたネットワークリソースの例示的な実施例は、下の図１３に関して提供される。
【００６５】
例えば、クライアントコンピューティングデバイス１０２は、ウェブページに対応する新しいブラウズセッションインスタンスのための要求を提供してもよい。上述のように、ネットワークコンピューティングプロバイダ１０７はウェブページおよび関連付けられた埋め込みリソースを取り出してもよい。例示的に、ウェブページは、ウェブページに埋め込まれたＨＴＭＬタグを通じて、任意の数の他のウェブページまたは他のリソースを参照してもよい。実施例の目的のために、ネットワークコンピューティングプロバイダ１０７は、最大で３つのレベルの深度での全ての参照されたリソースを取り出すように構成されてもよい。この実施例において、ネットワークコンピューティングプロバイダ１０７は、要求されたウェブページを処理して、参照されるウェブページまたは他のリソースのＵＲＬを抽出してもよい。ネットワークコンピューティングプロバイダ１０７は次いで、参照されたウェブページまたは他のリソースのための要求を送信してもよい。これらの要求されたウェブページが処理されてもよく、要求されたウェブページに対応する履歴上のコンテンツ表現が、ストレージおよび索引付けのために履歴上のブラウズストレージコンポーネントに提供されてもよい。ネットワークコンピューティングプロバイダ１０７は、次に、これらの参照されたウェブページまたは他のリソースを処理して、任意の２次的に参照されたウェブページまたは他のリソースを決定および要求してもよい。したがって、２次的に要求されたウェブページに対応する履歴上のコンテンツ表現が、ストレージおよび索引付けのために履歴上のブラウズストレージコンポーネントに提供されてもよい。リソースへの更なる参照を決定するために、参照されたリソースを要求し、要求されたリソースを処理するプロセスは、何回でも反復されてもよい。具体的には、上の実施例を参照すると、ネットワークコンピューティングプロバイダ１０７は、この実施例に記載される３レベル深度の設定を満たすために、２次的に参照されたウェブページにおける参照に従って、３次的に参照されたウェブページを得、それをキャッシュしてもよい。
【００６６】
参照に従うべきレベルの数の決定は、ユーザ、ブラウザ、履歴上のブラウズストレージコンポーネント、ネットワークコンピューティングプロバイダ１０７、または他のエンティティもしくはデバイスによってあらかじめ決定されてもよい。別の実施形態において、参照に従うべきレベルの数の決定は、要求されたリソース、時間帯もしくは日付、遠隔セッションに割り当てられた関心もしくは重要度のレベル、または任意の他の要因と関連付けられた特性に基づいて、動的に決定されてもよい。
【００６７】
一実施形態において、ネットワークコンピューティングプロバイダ１０７は、追加のブラウズセッションのインスタンス化を引き起こして、参照されたリソースを要求および処理するようにし得る。例示的に、これらの追加のブラウズセッションは、更なるブラウズセッションをインスタンス化して、参照リソースを２次的に処理してもよく、適切なレベルの参照の取り出しに到達するまで、以降も再帰的に同様である。
【００６８】
例示的に、様々な実施形態において、どのリソースが履歴上のコンテンツ表現へと処理され、履歴上のコンピューティングおよびストレージコンポーネントで記憶されるかについて、異なる要因が影響を及ぼす場合がある。例えば、ネットワークコンピューティングプロバイダ１０７は、リソースのコンテンツの種類、リソースと関連付けられたタグまたは他のメタデータ、リソース内に現れるテキストターム、ネットワークコンピューティングプロバイダ１０７を介してブラウズしている他のユーザの選好に基づくリソースの人気度等を含むが、これらに限定されない任意の数の要因に基づいて、リソースを処理および記憶しない、かつ／または参照されたリソースからの参照に従わない場合がある。一実施形態において、ネットワークコンピューティングプロバイダ１０７は、参照されたネットワークリソースを得るときに、前に遭遇したネットワークリソースまたは循環参照を無視してもよい。他の実施形態において、履歴上のブラウズストレージコンポーネントは、ネットワークコンピューティングプロバイダ１０７に加えて、またはその代替として、参照されたネットワークリソースを取り出してもよい。
【００６９】
一実施形態において、ネットワークコンピューティングプロバイダ１０７は、決定または指定された参照深度閾値を超えては、限定されたリソースのアスペクトを取り出す、かつ／または処理するのみであり得る。例えば、２つのレベルの参照に従った後、ネットワークコンピューティングプロバイダ１０７は、ｈｔｍｌおよび他のテキストのコンテンツのために、対応する履歴上のコンテンツ表現を要求、処理、および／または履歴上のブラウズストレージコンポーネントに提供するのみであり、かつ画像または他の埋め込みリソースのいずれの表現も含まない場合がある。例示的に、ネットワークコンピューティングプロバイダ１０７は、限定されたコンテンツ要求、処理、および／またはストレージに対応する任意の数の閾値を有して構成されてもよい。更に、ネットワークコンピューティングプロバイダ１０７は、要求、処理、および／またはストレージを、ｈｔｍｌ、テキスト、メタデータ、ＵＲＬもしくは参照、または任意の他のカテゴリまたは種類のリソースのコンテンツ、情報、もしくは特性を含むが、これらに限定されない、取り出されたコンテンツの任意の数の異なるアスペクトに限定する場合がある。
【００７０】
ブロック９１６で、ネットワークコンピューティングプロバイダ１０７は、１つ以上のネットワークリソースおよび関連付けられた埋め込みリソースを処理して、クライアントコンピューティングデバイス１０２へのコンテンツの処理および通信のためのクライアント遠隔セッションブラウズ構成を決定してもよい。例示的に、履歴上の遠隔セッションブラウズ構成は、追加的に、本明細書で記載されるネットワークコンピューティングプロバイダによって決定されてもよく、または、ネットワークコンピューティングプロバイダ、ユーザ、ブラウザ、履歴上のブラウズストレージコンポーネント、または他のエンティティのためにあらかじめ定義されてもよい。上述の、履歴上の遠隔セッションブラウズ構成およびクライアント遠隔セッションブラウズ構成は、任意のアスペクトにおいて同じであっても異なってもよい。不特定のクライアントおよび／または履歴上の遠隔セッションブラウズ構成は、本明細書で、包括的「遠隔セッションブラウズ構成」として記載されてもよく、それらの任意の考察は、履歴上の遠隔セッションブラウズ構成またはクライアント遠隔セッションブラウズ構成のいずれにも関する場合がある。
【００７１】
例示的に、遠隔セッションブラウズ構成は、クライアントと遠隔サーバとの間のデータおよびユーザ対話もしくは要求の交換を可能にする、任意の独占のまたは公衆の遠隔プロトコルを含んでもよい。遠隔セッションブラウズ構成は、例示的に、処理済み（または未処理）コンテンツをブラウザのコンテンツ表示領域での表示用クライアントコンピューティングデバイスに提供するための遠隔セッション通信プロトコルおよび処理スキーマの両方を含んでもよい。
【００７２】
一実施形態において、遠隔セッションブラウズ構成は、ネットワークコンピューティングプロバイダとクライアントコンピューティングデバイスとの間の状態データ、ユーザ対話、ならびに他のデータおよびコンテンツの交換のためのネットワークプロトコル、信号化モデル、配送機構、またはカプセル化フォーマットを含むが、これらに限定されない、遠隔セッション通信プロトコルを定義または指定してもよい。当該技術分野において既知の遠隔セッション通信プロトコルの例としては、リモートデスクトッププロトコル（ＲＤＰ）、Ｘ―ウィンドウズ（Ｘ−ウィンドウ）プロトコル、バーチャルネットワークコンピューティング（ＶＮＣ）プロトコル、遠隔フレームバッファー（Ｒｅｍｏｔｅ  Ｆｒａｍｅ  Ｂｕｆｆｅｒ）プロトコル、ＨＴＭＬ等が挙げられる。例えば、ＲＤＰは、例示的に、クライアント入力（例えば、マウス移動、キーボード入力等）を、遠隔コンピューティングデバイスに提供するためのプロトコルデータユニットへ符号化するためのいくつかの処理機構と、ビットマップ更新および低レベルインターフェース情報をクライアントデバイスに戻して送信するための対応する機構とを指定する。別の例として、ＨＴＭＬプロトコルは、例示的に、インターフェース情報を定義し、サーバからクライアントへのリソース参照を含むファイルを提供するための機構と、クライアントコンピューティングデバイスがサーバへの追加のファイルおよびリソースのための要求を提供するための、対応する機構とを提供する。一実施形態において、ＮＣＣ  ＰＯＰ１４２は、遠隔セッション通信プロトコルを決定した後、初期通信をクライアントコンピューティングデバイス１０２に提供してもよい。この初期通信は、クライアントコンピューティングデバイス１０２が、選択された遠隔セッション通信プロトコルでの通信を受信するように準備することを可能にし得、ＨＴＴＰのようなプル型遠隔セッション通信プロトコルの場合、クライアントコンピューティングデバイスに、初期リソース要求をＮＣＣ  ＰＯＰ１４２上で走っているブラウズセッションインスタンスに送信させ得る。
【００７３】
それぞれの遠隔セッションブラウズ構成は、ネットワークコンピューティングおよびストレージサービス（例えば、ＮＣＣ  ＰＯＰ１４２）とクライアントコンピューティングデバイス（例えば、クライアントコンピューティングデバイス１０２）との間の処理行為の分割を追加的に定義してもよい。一実施形態において、処理行為の特定の分割は、特定の遠隔セッション通信プロトコルに基づき、またはこれによって要求されてもよい。別の実施形態において、遠隔セッション通信プロトコルは、プロトコルの実装または構成に応じて処理行為のいくつかの異なる分割を可能にし得る。例示説明の目的のために、多くのネットワークコンテンツ（例えば、ウェブページ、ビデオ、フラッシュドキュメント）は、コンピューティングデバイス上に表示される前に、様々な処理行為を必要とし得る。例えば、ウェブページは、ＣＳＳスタイルシートおよびＪａｖａｓｃｒｉｐｔ等の様々なＨＴＭＬレイアウト情報および関連付けられたリソースまたは埋め込みコンテンツへの参照、ならびに画像、ビデオ、オーディオ等の埋め込みコンテンツオブジェクトを処理するために、構文解析されてもよい。ＨＴＭＬ、ならびにそれぞれの参照オブジェクトまたは１つのコードは、典型的に、ウェブページに対応する表現オブジェクトモデルが構築され得る前に、構文解析および処理されるであろう。次いで、このオブジェクトモデルは、クライアントコンピューティングデバイス１０２のブラウザのコンテンツ表示領域におけるレイアウトおよび表示のために更に処理されてもよい。例示的なブラウザ処理行為は、図８を参照して下により詳細に記載される。当業者であれば、別の実施形態またはアプリケーションの場合、様々な他の処理行為が必要とされ得ることを理解するであろう。
【００７４】
遠隔セッションブラウズ構成は、１つのネットワークコンテンツの表示のために要求される処理行為の様々なものが、クライアントコンピューティングデバイス１０２ではなく、ＮＣＣ  ＰＯＰ１４２等の遠隔のコンピューティングデバイスで行われることを指定してもよい。ネットワークコンピューティングプロバイダで部分的に（または全体的に）処理されたネットワークコンテンツは、処理結果と称されてもよい。下で論じられるように、処理行為の分割は、ＮＣＣ  ＰＯＰ１４２とクライアントコンピューティングデバイス１０２との間のデータおよびクライアント入力を交換するために使用される、遠隔セッション通信プロトコルと関連付けられるか、またはこれに連結されてもよい。
【００７５】
例えば、表示用クライアントコンピューティングデバイス１４２への低レベルインターフェース情報およびビットマップを含む処理結果を伝送する、ＲＤＰ等の遠隔セッション通信プロトコルは、ＮＣＣ  ＰＯＰ１４２で必要なコンテンツ処理行為の全て、またはほぼ全てを行うことを指定する、遠隔セッションブラウズ構成と関連付けられてもよい。ＲＤＰを使用する間に、ＮＣＣ  ＰＯＰ１４２は、例えば、ＮＣＣ  ＰＯＰ１４２へのブラウザの完全なインスタンスを実行し、クライアントコンピューティングデバイス１０２への表示されたコンテンツの表現に対応するビットマップ更新からなる、処理結果を伝送してもよい。クライアントコンピューティングデバイス１０２は、この例において、ブラウザのコンテンツ表示領域での表示のために伝送されるビットマップ更新を組み立てることが単に必要とされ得、例示的な１つのネットワークコンテンツの表示に関与する実際のＨＴＭＬ、Ｊａｖａｓｃｒｉｐｔ、またはデータオブジェクトの処理のいずれも行わない場合がある。別の実施例として、ＨＴＭＬ等の遠隔セッション通信プロトコルを利用する遠隔セッションブラウズ構成は、ほぼ未処理の形態でネットワークコンテンツを伝送してもよい。したがって、クライアントコンピューティングデバイス１０２は、ネットワークコンテンツの表示のために必要とされる処理行為の全てを行ってもよいが、一方でＮＣＣ  ＰＯＰ１４２は、処理をほとんどまたは全く行わない。
【００７６】
ＮＣＣ  ＰＯＰ  １４２は、要求されたリソースのうちの１つ以上、コンテンツプロバイダ１０４、もしくはＣＤＮサービスプロバイダ１０６のうちの１つ以上の特性、コンテンツアドレスもしくはドメインのうちの１つ以上の特性、クライアントコンピューティングデバイス１０２、ブラウザもしくはアプリケーション、ユーザのうちの１つ以上の特性、ＮＣＣ  ＰＯＰ  １４２のうちの１つ以上の特性、またはネットワークもしくはネットワーク接続のうちの１つ以上の特性等を含むが、これらに限定されない任意の数の要因に基づき、遠隔セッションブラウズ構成の決定を行い得る。要求されたリソースの特性は、データ形式、コンテンツの種類、サイズ、処理要件、リソース待機時間要件、対話要素の数または種類、セキュリティリスク、関連付けられたユーザ選好、ネットワークアドレス、ネットワークドメイン、関連するコンテンツプロバイダ等を含んでもよいが、これらに限定されない。コンテンツプロバイダ１０４、ＣＤＮサービスプロバイダ１０６、コンピューティングデバイス１０２、またはＮＣＣ  ＰＯＰ１４２の特性としては、処理能力、メモリ、ストレージ、ネットワーク接続性（例えば、利用可能な帯域または待機時間）、物理的または論理的位置、予測される安定性または故障のリスク、ソフトウェアもしくはハードウェアのプロファイル、利用可能なリソース（例えば、利用可能なメモリもしくは処理、または同時に開いているソフトウェアアプリケーションの数）等を含んでもよいが、これらに限定されない。ＮＣＣ  ＰＯＰ１４２は、１つのコンテンツまたはドメインと関連する認知されるセキュリティの脅威またはリスク、クライアントコンピューティングデバイスまたはコンテンツプロバイダの選好、コンピューティングまたはネットワークリソースコスト（例えば、処理もしくは帯域、リソース使用状況等の財務コスト）、所定の選好または選択情報、特定の遠隔セッションブラウズ構成によって必要とされる任意の追加的処理オーバーヘッド、キャッシュ状態（例えば、特定のリソースがＮＣＣ  ＰＯＰ１４２で、クライアントコンピューティングデバイス１０２で、またはネットワークコンピューティングプロバイダと関連付けられた他のネットワークストレージでキャッシュされるかどうか）、要求されたネットワークコンテンツを取り出すために必要とされる予測される遅延または時間、特定の遠隔セッションブラウズ構成またはサービスレベルのために好ましいコンテンツプロバイダまたはコンテンツプロバイダとの契約、同じユーザによって別の（または現在の）ブラウズセッションのために使用されている遠隔セッションブラウズ構成、または任意の他の要因を更に考慮してもよい。
【００７７】
いくつかの実施形態において、ＮＣＣ  ＰＯＰ１４２は、遠隔セッションブラウズ構成の決定を過去の行動または習慣に基づいて行ってもよい。例えば、過去に特定のリソースについて遠隔ブラウズセッション構成を決定したことがあるＮＣＣ  ＰＯＰ１４２は、リソースが同じ（または異なる可能性のある）ユーザによって要求されるとき、同じ遠隔ブラウズセッション構成を自動的に選択してもよい。別の実施例として、広範な処理要件を伴うウェブサイトに頻繁にアクセスする履歴を有するユーザは、ＮＣＣ  ＰＯＰ１４２で処理の大部分を行う遠隔セッションブラウズ構成を自動的に割り当てられてもよい。他の実施形態において、ＮＣＣ  ＰＯＰ１４２は、遠隔ブラウズセッション構成の決定を将来の行動の予測に基づいて行ってもよい。例えば、ＮＣＣ  ＰＯＰ１４２は、特定のリソースについての遠隔ブラウズセッション構成の決定を、特定のウェブサイト、ネットワークドメイン、または関連するリソースの組について行われた過去の決定の分析に基づいて行ってもよい。履歴上、ビデオを多用するウェブページを提供したことがあるコンテンツプロバイダは、クライアントコンピューティングデバイス１０２でのビデオ性能に重点を置く遠隔セッションブラウズ構成と関連付けられてもよい。例示として、過去の履歴分析および未来予測は、遠隔セッションブラウズ構成決定処理が基づくつかの要因のうちの１つ以上として見なされてもよく、または意思決定処理において決定的であってもよい。例えば、一旦、ＮＣＣ  ＰＯＰ１４２が、特定のコンテンツプロバイダについて遠隔セッションブラウズ構成を決定すると、それは、コンテンツプロバイダからサービス提供されるいずれの将来のリソースについても、遠隔セッションブラウズ構成決定処理をスキップしてもよい。例示的に、ＮＣＣ  ＰＯＰ１４２は、決められた期間後、またはＮＣＣ  ＰＯＰ１４２がコンテンツプロバイダによって使用されているコンテンツにおける変化を識別もしくは決定した後、コンテンツプロバイダに関連付けられる遠隔セッションブラウズ構成を再決定してもよい。
【００７８】
他の実施形態において、ネットワークリソース、ウェブサイト、ネットワークドメイン、コンテンツプロバイダ、または他のネットワークエンティティは、リソースタグ、メタデータ、またはＮＣＣ  ＰＯＰ１４２との他の通信における、特定の遠隔ブラウズセッション構成の使用を指定するか、あるいは要求してもよい。ＮＣＣ  ＰＯＰ１４２は、要求を決定的なものとして扱ってもよく、または意思決定処理において考慮される複数の要因の１つとして要求を考慮してもよい。
【００７９】
例えば、ＲＤＰ等の遠隔セッション通信プロトコルを利用する遠隔セッションブラウズ構成は、クライアントコンピューティングデバイス１０２ではなく、ネットワークコンピューティングプロバイダ１０７（例えば、ＮＣＣ  ＰＯＰ１４２で）で行われるように、広範な処理を指定してもよい。したがって、遠隔セッションブラウズ構成は、多くの前処理（例えば、ページレイアウトを定義する多くのＣＳまたはＪａｖａｓｃｒｉｐｔ情報を有するコンテンツ）を必要とするネットワークコンテンツを扱うとき、短い待機時間および提示遅延を達成するためにＮＣＣ  ＰＯＰ１４２の処理能力を活用してもよい。したがって、ＮＣＣ  ＰＯＰ１４２は、ネットワークコンピューティングプロバイダ１０７でかなりの量の処理を行い、処理に集中するコンテンツの通信のためのＲＤＰまたは類似の遠隔セッション通信プロトコルを利用する、遠隔セッションブラウズ構成を選択してもよい。反対に、ＨＴＭＬ等の遠隔セッション通信プロトコルを利用する遠隔セッションブラウズ構成は、ネットワークコンピューティングプロバイダ１０７ではなく、クライアントコンピューティングデバイス１０２での広範な処理を指定してもよい。したがって、遠隔セッション通信プロトコルは、処理をほとんど必要としない単純なネットワークコンテンツ、または初期読み込み後、表示されるコンテンツにおける早急な変更を必要とするネットワークコンテンツを用いて提示されるとき、より小さい遅延およびより円滑な提示を達成し得る。例えば、埋め込みビデオを有するウェブページは、遠隔セッション通信プロトコルとしてのＲＤＰではなく、処理の大部分をローカルに行い、ＨＴＭＬを利用するときにより良好な性能を示し得る。ネットワークコンピューティングプロバイダ１０７での広範な処理を指定する遠隔セッションブラウズ構成は、ＮＣＣ  ＰＯＰ１４２でビデオを処理し、スクリーン更新を（例えばＲＤＰによって）クライアントコンピューティングデバイス１０２に早急に送信しなければならず、多くの帯域を必要とする可能性があり、ブラウザ内で途切れがちの再生を引き起こすが、一方でローカル処理を特定する遠隔セッションブラウズ構成は、加工されていないビデオ情報を表示（例えば、ＨＴＭＬによる）のためのクライアントコンピューティングデバイス１０２に直接提供することができ、コンテンツのクライアント側のキャッシングおよびより円滑な再生を可能にする。
【００８０】
更なる例として、極めて限定された処理能力を伴うクライアントコンピューティングデバイス１０２と通信するＮＣＣ  ＰＯＰ１４２は、例えば、ＮＣＣ  ＰＯＰ１４２の処理済み結果を伝送するためにＲＤＰを使用し、クライアントコンピューティングデバイスによる処理をほとんど必要としない遠隔セッションブラウズ構成を使用することを選択してもよい。逆に、極めて対話的なウェブページを提供するＮＣＣ  ＰＯＰ１４２は、クライアントコンピューティングデバイス１０２が、例えば、実質的に未処理のデータを送信するためにＨＴＭＬを使用して、インターフェース応答性を保つために、ユーザ対話をローカルに扱うことを可能にする遠隔セッションブラウズ構成を使用することを選択してもよい。なおも更なる例として、遠隔セッションブラウズ構成の決定を、ＮＣＣ  ＰＯＰ１４２は、クライアントコンピューティングデバイス１０２によって提供される選好に基づいて行ってもよい。例示的に、クライアントコンピューティングデバイス１０２は、初期ブラウズセッション要求における、または任意の他の時点の遠隔セッションブラウズ構成のための選好を含んでもよい。ＮＣＣ  ＰＯＰ１４２は、任意の他の要素または決定尺度に対する代替手段として、またはこれらに加えて、これらの選好を使用してもよい。例示的に、クライアントコンピューティングデバイス１０２が遠隔セッションブラウズ構成の選択を設定し、またはこれに影響を与えることを可能にすることは、遠隔セッションブラウズ構成を決定するとき、ＮＣＣ  ＰＯＰ１４２がユーザ選好を考慮することを可能にする。例えば、初期ページ読み込み時間を懸念するユーザは、遠隔処理に重きを置き、ＲＤＰ遠隔セッション通信プロトコルを利用する、遠隔セッションブラウズ構成を使用することを好む場合があるが、一方で極めて応答的なインターフェースを維持することを希望するユーザは、例えば、ＨＴＭＬ遠隔セッション通信プロトコルを使用して、クライアントコンピューティングデバイス１０２上で処理の大部分を行う、遠隔セッションブラウズ構成を使用することを好む場合もある。
【００８１】
例示的に、ＮＣＣ  ＰＯＰ１４２は、遠隔ブラウジング構成の決定を、任意の要因または要因の組み合わせに基づいて行ってもよい。例えば、ＮＣＣ  ＰＯＰ１４２は、単一の要因に基づいて遠隔セッションブラウズ構成を選択してもよく、または決定を行う際に１つ以上の要因に重みを割り当ててもよい。いくつかの実施形態において、ＮＣＣ  ＰＯＰ１４２の決定処理は、上の１つ以上の要因に基づいて変化する場合がある。例えば、余剰の未使用帯域でネットワークによりクライアントコンピューティングデバイス１０２と通信するＮＣＣ  ＰＯＰ１４２は、遠隔ブラウズセッションのネットワーク要件等の要因に低い重みを与えてもよく、ページ対話の待機時間等の要因に高い重みを与えてもよいが、一方で限定された帯域のネットワークを介してクライアントコンピューティングデバイス１０２と通信するＮＣＣ  ＰＯＰ１４２は、ネットワークを介して遠隔セッションブラウズプロトコルの効率性を扱う要因に重みを与えてもよい。
【００８２】
一実施形態において、ＮＣＣ  ＰＯＰ１４２は、１組のネットワークコンテンツのために単一の遠隔セッションブラウズ構成を選択してもよい。例えば、ＮＣＣ  ＰＯＰ１４２は、ウェブページ等の要求されたネットワークリソースのために単一の遠隔セッションブラウズ構成を選択してもよい。したがって、ＮＣＣ  ＰＯＰ１４２は、選択された遠隔ブラウジングセッションプロトコルに基づいて、全ての埋め込みコンテンツと一緒にウェブページを処理し、遠隔ブラウジングセッションプロトコルを使用して、ウェブページと関連付けられた全ての埋め込みコンテンツについてのユーザ対話データおよび更新されたブラウズセッションデータを交換してもよい。別の実施形態において、ＮＣＣ  ＰＯＰ１４２は、１組のネットワークコンテンツにおける１つ以上のリソースのために、異なる遠隔セッションブラウズ構成を選択してもよい。例えば、ウェブページ等のネットワークリソースは、処理集中型埋め込みＪａｖａＳｃｒｉｐｔもしくはＣＳＳリソース、ならびに埋め込みビデオリソースを参照してもよい。ＮＣＣ  ＰＯＰ１４２は、埋め込みビデオリソースを除く、ウェブページおよび全ての埋め込みリソースのための第１の遠隔セッションブラウズ構成と、埋め込みビデオリソースのための第２の遠隔セッションブラウズ構成とを選択してもよい。例示的に、これは、ＮＣＣ  ＰＯＰ１４２が、ＲＤＰを利用して、ウェブページおよび関連付けられた埋め込みリソースの表示のために、処理結果をクライアントコンピューティングデバイス１０２に送信する一方で、ＨＴＴＰを利用して、埋め込みビデオを別個の未処理ファイルとして送信することをもたらし得る。一実施形態において、クライアントコンピューティングデバイス１０２は、ウェブページおよび埋め込みリソースに対応するＲＤＰ処理結果を表示するために必要とされる最小限の処理を行ってもよく、また、埋め込みビデオを表示するために必要な追加の処理を行い、例えば、ウェブページの表示されたＲＤＰ表現の最上面でビデオをオーバーレイしてもよい。任意の数の遠隔セッションブラウズ構成が、リソースまたはオブジェクトが、１つ以上の論理ファイルまたはデータ構造におけるコンテンツプロバイダ１０４またはＣＤＮサービスプロバイダ１０６から得られたかに関わらず、１組のネットワークコンテンツに含まれる任意の数のリソースまたはオブジェクトに対応するように選択されてもよい。
【００８３】
遠隔セッションブラウズ構成の選択は、全てのネットワークリソースおよび関連付けられた埋め込みコンテンツがＮＣＣ  ＰＯＰ１４２によって得られた後に行われるものとして本明細書に例示的に図示されるが、当業者は、遠隔セッションブラウズ構成の選択がいつでも行われてもよいことを理解するであろう。例えば、ＮＣＣ  ＰＯＰ１４２は、新しいブラウズセッション要求または関連する情報をクライアントコンピューティングデバイスから受信した後に、遠隔セッションブラウズ構成を選択してもよく、ネットワークリソースを得た後であるが、任意の関連付けられた埋め込みリソースを得る前に、または任意の他の時点に、遠隔セッションブラウズ構成を選択してもよい。いくつかの実施形態において、ＮＣＣ  ＰＯＰ１４２は、クライアントコンピューティングデバイス１０２が初期処理結果を得た後の何らかの時点で、新しい遠隔セッションブラウズ構成に切り替えてもよい。例示的に、新しい遠隔セッションブラウズ構成を選択するＮＣＣ  ＰＯＰ１４２は、ある特定の期間もしくはイベント後、またはネットワーク状態、ＮＣＣ  ＰＯＰ１４２またはクライアントコンピューティングデバイス１０２の負荷もしくはコンピューティングリソース、または遠隔セッションブラウズ構成の選択に影響する可能性のあるものとして上述の任意の他の要因の変化に応答して自動的に行われてもよい。例示的に、他の種類または形式の情報を扱うＮＣＣ  ＰＯＰ１４２は、任意の数の類似の要因に基づいて遠隔セッションプロトコルを選択してもよい。例えば、当業者であれば、類似のスキーマが画像、ビデオ、オーディオ、データベース情報、３次元デザインデータ、または当該技術分野で既知の任意の他のファイル形式もしくは種類のデータの処理のために開発されてもよいことを理解するであろう。
【００８４】
クライアントコンピューティングデバイス１０２は、様々な実施形態において、遠隔ブラウズセッションのための要求と順次または同時に、並行なブラウジングプロセスを更にインスタンス化してもよい。一実施形態において、クライアントコンピューティングデバイス１０２は、ＮＣＣ  ＰＯＰ１４２を実行する１つ以上の遠隔ブラウズインスタンスに加えて、当技術分野で既知の従来のローカルブラウズセッション（例えば、コンテンツ要求をブラウザから提供することおよび得られたリソースをローカルに処理すること）をインスタンス化してもよい。別の実施形態において、クライアントコンピューティングデバイス１０２は、ＮＣＣ  ＰＯＰ１４２によって未処理のネットワークリソースを提供されてもよい。例示的に、ネットワークリソースは、ＮＣＣ  ＰＯＰ１４２によって１つ以上のコンテンツプロバイダ、ＣＤＮ、またはキャッシュコンポーネントから取り出されたものであり得る。リソースは、クライアントコンピューティングデバイス１０２に提供され、ＮＣＣ  ＰＯＰ１４２で実行している遠隔ブラウズインスタンスと並行にローカルに処理してもよい。なおも更なる実施形態において、ネットワークコンピューティングプロバイダまたはＮＣＣ  ＰＯＰ１４２は、任意の数の新しい仮想マシンインスタンスおよび／またはブラウザインスタンスをインスタンス化して（または既存のインスタンス化されたインスタンスを使用して）、リソースを処理し、および／または処理結果をクライアントコンピューティングデバイス１０２に並行に送信してもよい。例示的に、クライアントコンピューティングデバイス１０２のローカルブラウズセッションおよびＮＣＣ  ＰＯＰ１４２の遠隔ブラウズセッションインスタンスは、並行に実行してもよい。
【００８５】
一実施形態において、クライアントコンピューティングデバイス１０２で実行するローカルブラウズセッションは、ブラウズセッション要求に応答して、未処理のコンテンツ（例えば、ｈｔｍｌウェブページ、埋め込みコンテンツ、および他のネットワークリソース）をＮＣＣ  ＰＯＰ１４２から得てもよい。例示的に、コンテンツは、ブラウズセッション要求に応答して、ＮＣＣ  ＰＯＰ１４２によって、コンテンツプロバイダ、ＣＤＮ、キャッシュ、またはデータストアから取り出されたものであり得る。ＮＣＣ  ＰＯＰ１４２によって提供される未処理のコンテンツは、ブラウズセッション要求に関連付けられた全てのコンテンツを含んでもよく、あるいはコンテンツプロバイダもしくはＣＤＮから読み出されるか、またはいくつかの他のソースから得られるクライアントコンピューティングデバイスのキャッシュまたはデータストア内に存在するコンテンツを補足してもよい。一実施形態において、クライアントコンピューティングデバイス１０２は、全ての要求されたコンテンツをローカルキャッシュから得てもよく、いずれの未処理のリソースまたはコンテンツもＮＣＣ  ＰＯＰ１４２から得ない場合がある。未処理のコンテンツを得た後、クライアントコンピューティングデバイス１０２は、ＮＣＣ  ＰＯＰ１４２で実行する遠隔ブラウズセッションと並行に、要求されたコンテンツを処理してもよい。例えば、クライアントコンピューティングデバイス１０２で実行するローカルブラウズセッションが要求されたコンテンツを処理しているとき、ＮＣＣ  ＰＯＰ１４２で実行する遠隔ブラウズセッションは、同じコンテンツを実質的に同時に処理している場合がある。一旦、ＮＣＣ  ＰＯＰ１４２が、コンテンツ上で１組の処理行為を行って、処理結果を生成すると（例えば、決定された遠隔セッションブラウズ構成によって指定されるように）、ＮＣＣ  ＰＯＰ１４２は、処理結果をクライアントコンピューティングデバイス１０２に提供してもよい。
【００８６】
例示説明の目的のために、クライアントコンピューティングデバイス１０２は、要求されたネットワークリソースを得て、それを処理するのに、ＮＣＣ  ＰＯＰ１４２で実行するブラウズセッションインスタンスよりも長い読み込み時間を必要とする場合がある。例えば、ＮＣＣ  ＰＯＰ１４２は、ローカルクライアントコンピューティングデバイスのネットワーク上での位置および相対的処理能力に起因して、ＮＣＣ  ＰＯＰ１４２と比較して、コンテンツを迅速に得て、処理し得る。たとえＮＣＣ  ＰＯＰ１４２がクライアントコンピューティングデバイス１０２に全ての要求されたネットワークコンテンツを提供しても、クライアントコンピューティングデバイス１０２は、依然として、ローカルブラウズセッションが要求されたリソースを処理することを完全に完了する前に、処理結果をＮＣＣ  ＰＯＰ１４２から取得し得る。クライアントコンピューティングデバイス１０２は、コンテンツのローカル処理および表示を完了する前に、任意の更なる処理ステップを完了させ、得られた処理結果を表示してもよい。例示的に、これは、クライアントコンピューティングデバイス１０２が従来のローカルブラウズセッションに対するＮＣＣ  ＰＯＰ１４２の早急なコンテンツ読み込み時間を利用することを可能にし得る。全ての要求されたリソースの処理を完了するローカルブラウズセッションに先立って、ブラウザは、図５および１１に記載されるように、任意のユーザ対話をローカルおよび／または遠隔に処理してもよい。
【００８７】
一旦、ローカルブラウズセッションが要求されたコンテンツに対応するリソースを完全に得て、処理すると、コンピューティングデバイス１０２は、決定された遠隔セッションブラウズ構成を使用して、ＮＣＣ  ＰＯＰ１４２から得られた結果を継続して表示する（かつＮＣＣ  ＰＯＰ１４２でユーザ対話を処理する）か、またはユーザ対話をローカルに処理することに切り替えるかを決定してもよい。ユーザ対話をローカルに処理することに切り替えることは、ＮＣＣ  ＰＯＰ１４２から得られた処理結果に基づいて要求されたリソースの表示された表現を、要求されたリソースのローカル表示と置き換えることを含んでもよい。例えば、ブラウザは、ブラウザがウェブページをローカルに処理およびレンダリングすることを終了するまで、ＮＣＣ  ＰＯＰ１４２からの処理結果（例えば、レンダリングされたページを表現するＲＤＰ表示情報）に対応するウェブページの表現を表示してもよい。次いで、ブラウザは、ＮＣＣ  ＰＯＰ１４２からの表現をローカルにレンダリングされたウェブページの表現と置き換えてもよい。例示的に、１つの表現を別の表現と置き換えることは、ユーザにとって透過的であり得る。例えば、ウェブページのローカルおよびＮＣＣ  ＰＯＰ１４２の表現は、同一または実質的に同一であり得る。一実施形態において、ウェブページのＮＣＣ  ＰＯＰ１４２表現が表示されるとき、ブラウザは、表示されたページとの様々なユーザ対話を、処理のためにＮＣＣ  ＰＯＰ１４２に送信してもよい。ローカルにレンダリングされたバージョンのウェブページが表示されるとき、ユーザ対話は、ブラウザでローカルに処理されてもよい。例示的に、要求されたリソースのどの表現を表示すべきか（例えば、ローカルに、またはＮＣＣ  ＰＯＰ１４２から）の決定は、上の遠隔セッションブラウズプロトコルを決定することを参照して記載されたものと同じ要因のいずれかに基づき得る。
【００８８】
一実施形態において、クライアントコンピューティングデバイス１０２は、ローカルリソースが完全に読み込まれるや否や、ユーザ対話のローカル処理に切り替えてもよい。例示的に、ＮＣＣ  ＰＯＰ１４２で実行する遠隔ブラウズセッションインスタンスは、ローカル処理に切り替えた後に終了してもよく、または遠隔ブラウズセッションインスタンスは、ローカルブラウズセッションに関する無応答もしくは故障の場合のバックアップとして維持されてもよい。例えば、クライアントコンピューティングデバイス１０２は、ユーザ対話をローカルに処理し、ならびに選択された遠隔セッションブラウズ構成に従って遠隔ユーザ対話データをＮＣＣ  ＰＯＰ１４２に送信してもよい。遠隔ユーザ対話データは、ＮＣＣ  ＰＯＰ１４２によって使用され、遠隔ブラウズセッションインスタンスを、クライアントコンピューティングデバイス１０２でブラウザによって実行されているローカルブラウズ処理と完全に並行に保持してもよい。ローカルブラウズセッションが継続してユーザ対話を扱う限り、ＮＣＣ  ＰＯＰ１４２は、更新された処理結果を送信することを抑制してもよく、またはクライアントコンピューティングデバイス１０２によって無視された、更新された処理結果を送信してもよい。クライアントコンピューティングデバイス１０２のローカルブラウズセッションについて問題が生じるとき、更新された処理結果は、ローカルブラウズセッションの代わりの処理および表示のためにＮＣＣ  ＰＯＰ１４２からクライアントコンピューティングデバイス１０２に提供されてもよい。例示的に、ローカルブラウズセッションから遠隔処理へのこの切り替えは、ユーザにとって透過的であり得る。いくつかの実施形態において、クライアントコンピューティングデバイス１０２は、ローカルブラウザでの無応答または故障以外の要因に基づいて、ローカルブラウズセッションから遠隔ブラウズセッションインスタンスに切り替えてもよい。例えば、クライアントコンピューティングデバイス１０２またはネットワークコンピューティングおよびストレージコンポーネント１０７は、上の遠隔セッションブラウズプロトコルを決定することに関して列挙された要因のいずれかに基づいて、遠隔ブラウズセッションとローカルブラウズセッションとの間で選択されてもよい。
【００８９】
別の実施形態において、クライアントコンピューティングデバイス１０２は、ローカルブラウズセッションが要求されたコンテンツを完全に読み込んだ後でさえも、ＮＣＣ  ＰＯＰ１４２からの更新された処理結果を継続して処理し、表示してもよい。クライアントコンピューティングデバイス１０２は、ローカルブラウズセッションを終えてもよく、または上に提供された実施例とは逆に、バックアップ処理としてローカルブラウズセッションを平行に実行させてもよい。ローカルブラウズセッションは、例示説明の目的のために、遠隔ブラウズセッションインスタンスより遅く読み込むものとして本明細書では記載されているが、いくつかの実施形態において、ローカルブラウズセッションは、遠隔ブラウジングセッションよりコンテンツを早く読み込むことができ、この場合において、ブラウザは、遠隔ブラウズ処理が要求されたコンテンツを完全に読み込むまで、ユーザ対話をローカルに処理してもよいことを理解されたい。いくつかの実施形態において、クライアントコンピューティングデバイス１０２は、ブラウズセッションが初めに、どのユーザ対話を介して要求されたコンテンツをローカルまたは遠隔に読み込もうとも、そのユーザ対話を表示および処理してもよい。
【００９０】
様々な他の実施形態において、ネットワークコンピューティングプロバイダ１０７は、ローカルブラウズセッションをインスタンス化することに加えて、またはこの代替として、複数の遠隔ブラウズセッションインスタンスをインスタンス化し、並行に実行してもよい。例示的に、これらの並行なブラウズセッションインスタンスは、同じまたは異なる遠隔セッションブラウズプロトコルのいずれを利用してもよく、ローカルブラウズセッションに関して上の様式でのバックアップとして機能してもよく、またはクライアントコンピューティングデバイス１０２でのブラウザ性能を最大化するために、代替として使用され、その間で切り替えられてもよい。例えば、１つ以上のブラウズセッション要求に応答して、ネットワークコンピューティングプロバイダ１０７は、第１のＮＣＣ  ＰＯＰ上で実行し、ＲＤＰプロトコルを使用するブラウズセッションインスタンス、ならびに第２のＮＣＣ  ＰＯＰ上で実行し、Ｘ−ウィンドウプロトコルを使用するブラウズセッションインスタンスをインスタンス化してもよい。クライアントコンピューティングデバイス１０２またはネットワークコンピューティングプロバイダ１０７は、上の遠隔セッションブラウズプロトコルの決定に関して記載された性能またはリソース使用状況の考慮に基づいて、どのブラウズセッションインスタンスおよびプロトコルが使用されるべきかを決定してもよい。
【００９１】
続けて図９を参照して、ブロック９１８で、ネットワークコンピューティングプロバイダ１０７は、初期処理結果を生成するためにクライアントにより決定された遠隔セッションブラウズ構成に従って、１つ以上の要求されたネットワークリソースおよび埋め込みネットワークリソースを含む、得られたコンテンツを処理してもよい。ネットワークコンピューティングプロバイダ１０７は更に、履歴上のコンテンツ表現に対応する初期処理結果を生成するために決定された履歴上の遠隔セッションブラウズ構成に従って、１つ以上の要求されたネットワークリソースおよび埋め込みネットワークリソースを含む、得られたコンテンツを処理してもよい。一実施形態において、ネットワークコンピューティングプロバイダ１０７は、得られたコンテンツを１回処理するのみであり得る。例えば、ネットワークコンピューティングプロバイダ１０７は、クライアント遠隔セッションブラウズ構成によって指定された処理ステップを行って、第１の処理結果を得てもよく、次いで、任意の残りの処理ステップを行って、履歴上のコンテンツ表現を得てもよく、または逆もまた同様である。
【００９２】
一実施形態において、履歴上のコンテンツ表現は、ネットワークリソース要求、ネットワークリソース、ネットワークリソースと関連付けられた情報、クライアントコンピューティングデバイス１０２、ユーザ、ネットワークコンピューティングプロバイダ１０７と関連付けられたコンテンツ、または任意の他のエンティティ、コンテンツ、もしくはコンポーネントを含むが、これらに限定されない、追加の情報を含んでもよい。一実施形態において、履歴上のコンテンツ表現は、図１３を参照して後述されるように、ブラウジングまたはナビゲーションパス上の位置と関連付けられた情報を含んでもよい。例えば、第２の履歴上のコンテンツ表現は、クライアントコンピューティングデバイスが、第１のネットワークリソース（例えば、第１の履歴上のコンテンツ表現に対応する）からの参照に従って、第２の履歴上のコンテンツ表現に対応するネットワークリソースに到達したことを指定する情報を含んでもよい。
【００９３】
更なる実施形態において、履歴上のコンテンツ表現は、次のものを含むが、それらに限定されない、任意の数の種類の情報を含んでもよい：履歴上のコンテンツ表現に対応するコンテンツを閲覧するもしくはそれと対話するのに費やした時間の量；履歴上のコンテンツ表現と関連付けられたメモ、マークアップ、または他のユーザにより生成されるコンテンツもしくは情報；ネットワークコンピューティングプロバイダ１０７もしくはクライアントコンピューティングデバイス１０２における履歴上のコンテンツ表現に対応するコンテンツの処理と関連付けられたリソース使用状況もしくは性能尺度；履歴上のコンテンツ表現に対応するコンテンツの伝送と関連付けられた待機時間もしくは他のネットワーク性能尺度；ネットワークリソースのための要求と関連付けられた物理的もしくは論理的位置；履歴上のコンテンツ表現に対応するコンテンツと関連付けられた識別子；履歴上のコンテンツ表現に対応するコンテンツと関連付けられた広告；および／または任意の他の種類の情報。例えば、一実施形態において、ユーザは、メモをウェブページに追加するためのインターフェースを提供されてもよい。例示的に、これらのメモは、上述のウェブページと関連付けられた任意の他の種類の情報と共に、ウェブページの履歴上のコンテンツ表現を伴って、またはその内に記憶されてもよい。
【００９４】
ブロック９２０で、ネットワークコンピューティングプロバイダ１０７は、更に処理するために初期処理結果をクライアントに提供し、ブラウザのコンテンツ表示領域に表示してもよい。更なる実施例の目的のために、クライアントコンピューティングデバイス１０２によって実装される例示的なクライアントの新しいブラウズセッション対話ルーチン１０００が、図１０を参照して下に記載される。
【００９５】
一実施形態において、ネットワークコンピューティングプロバイダ１０７は、任意の数の要因に基づいて、コンテンツを処理して履歴上のコンテンツ表現を生成すること、および／または処理された履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに提供することを控えるべきかどうかを決定してもよい。例示的に、ネットワークコンピューティングプロバイダ１０７は、限定なしに、ブロック９１６で論じられる遠隔ブラウズセッション構成の決定を参照して上に論じられる要因等のうちのいずれかを含む要因に基づいて、履歴上のコンテンツ表現を処理および／または記憶することを控える場合がある。例えば、ネットワークコンピューティングプロバイダ１０７は、ネットワーク上の特定のウェブサイトまたはドメインに対応する履歴上のコンテンツ表現を記憶することを控える場合がある。別の実施例において、ネットワークコンピューティングプロバイダ１０７は、クライアントコンピューティングデバイス１０２のユーザと関連付けられた機密情報または保護必要情報と関連付けられた、履歴上のコンテンツ表現を記憶することを控える場合がある。更なる実施形態において、履歴上のコンテンツ表現を処理または記憶するべきかどうかの決定は、ネットワークコンピューティングプロバイダ１０７、履歴上のブラウズストレージコンポーネント、または任意の他の第３者と関連付けられた、履歴上のコンテンツフィルタコンポーネントまたはサービスによってなされてもよい。
【００９６】
ブロック９２２で、ネットワークコンピューティングプロバイダ１０７は、履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに提供してもよい。例示的に、履歴上のブラウズストレージコンポーネントは、当該技術分野で既知の任意のシステムまたはプロセスに従って、履歴上のコンテンツ表現を記憶するように構成されてもよく、また更に、当該技術分野で既知の任意の種類のデータ保護、ミラーリング、キャッシング等を組み込んでもよい。履歴上のコンテンツ表現は、取り出された状態のネットワークリソースに基づいてもよく、または、取り出されたネットワークリソースとのユーザ対話に関連する、状態データの様々なアスペクトのうちのいずれかを有するネットワークリソースに基づいてもよい。ブロック９２２で、新しいブラウズセッション開始ルーチン９００が終了する。
【００９７】
図１０は、クライアントコンピューティングデバイス１０２によって実装されるクライアントの新しいブラウズセッション対話ルーチン１０００を例示する、流れ図である。新しいブラウズセッション対話ルーチン１０００は、クライアントコンピューティングデバイス１０２にネットワークコンテンツを表示するためのブラウザを読み込ませる、イベントまたはユーザ要求に応答して、ブロック１００２で開始する。ブロック１００４で、クライアントコンピューティングデバイスは、全てのローカルインターフェースコンポーネントを含む、ブラウザのローカルに管理されたコンポーネントを読み込む。図５および７を参照して上述のように、ローカルインターフェースコンポーネントは、ツールバー、メニュー、ボタン、またはクライアントコンピューティングデバイスでローカルに実行するかもしくは実装されるソフトウェアブラウザアプリケーションもしくは任意の他のプロセスによって管理および制御される、他のユーザインターフェース制御を含んでもよい。ブロック１００６で、クライアントコンピューティングデバイス１０２は、新しいブラウズセッションインスタンスのための要求をネットワークコンピューティングプロバイダ１０７に提供する。クライアントコンピューティングデバイスのユーザの観点から、新しいブラウズセッションのための要求は、要求を１つ以上の対応するコンテンツプロバイダ１０４に伝送するための意図される要求に対応する。他の実施形態において、新しいセッション要求は、ファイルまたは他のドキュメントを読み込むための要求（例えば、写真編集アプリケーションで画像を読み込むための要求等）に対応してもよい。例示的に、要求は、ブラウザ読み込み（例えば、既定または「ホーム」ページのための要求）の結果として自動的に生成されてもよく、またはユーザがリンクに従うか、もしくはネットワークアドレスをアドレスバーに入力したことの結果として生成されてもよい。図２に関して例示されるように、ブラウズセッション要求は、最初にネットワークコンピューティングプロバイダ１０７に伝送される。例示的な実施形態において、ネットワークコンピューティングプロバイダ１０７は、登録ＡＰＩを利用して、クライアントコンピューティングデバイス１０２からのブラウズセッション要求を承諾する。
【００９８】
ブラウズセッション要求は、ユーザと関連付けられた情報、クライアントコンピューティングデバイス１０２またはクライアントコンピューティングデバイス上のソフトウェア（例えば、ハードウェアもしくはソフトウェア情報、デバイスの物理的もしくは論理的位置等）と関連付けられた情報、ネットワーク１０８と関連付けられた情報、ユーザまたはブラウザの選好（例えば、要求された遠隔セッションブラウズプロトコル、選好一覧、決定ツリー、または他の情報）、ネットワークコンピューティングプロバイダ１０７と関連付けられた情報、１つ以上の要求されたネットワークコンテンツ（例えば、ネットワークリソースのネットワークアドレス）と関連付けられた情報等を含むが、これらに限定されない、任意の個数のデータまたは情報を含んでもよい。例えば、クライアントコンピューティングデバイス１０２からのブラウズセッション要求は、とりわけ、特定のクライアントコンピューティングデバイスハードウェアの仕様またはハードウェア性能レベル、最近のコンテンツ要求と関連付けられた待機時間および帯域データ、異なる種類のコンテンツを処理するための所望のセキュリティレベル、遠隔セッションブラウズプロトコルの所定の選好一覧、および要求されたネットワークリソースに対応する１つ以上のネットワークアドレスを識別する情報を含んでもよい。別の実施例において、ブラウズセッション要求は、クライアントコンピューティングデバイス１０２のスクリーン解像度、アスペクト比、またはブラウズセッション要求におけるブラウザ表示領域を識別する情報を含むことができ、それは、ネットワークコンピューティングプロバイダ１０７が、クライアントコンピューティングデバイス上で表示するために、ネットワークコンテンツの処理をカスタマイズすることを可能にし得る。前述のように、ブラウズセッション要求は、要求されたネットワークリソースに対応するネットワークアドレス情報を含むことができ、それは、インターネットプロトコル（「ＩＰ」）アドレス、ＵＲＬ、メディアアクセスコントロール（「ＭＡＣ」）アドレス等を含むが、これらに限定されない、任意の形態であってもよい。一実施形態において、新しいブラウズセッションインスタンスのための要求は、上の図９のブロック９０４で新しいブラウズセッションインスタンスのための要求を受信する、ネットワークコンピューティングプロバイダに対応し得る。
【００９９】
ブロック１００８で、クライアントコンピューティングデバイス１０２は、初期処理結果をネットワークコンピューティングプロバイダ１０７から得る。例示的に、初期処理結果に含まれる形式およびデータは、ネットワークコンピューティングプロバイダ１０７によって選択された遠隔セッションブラウズ構成に基づいて変化してもよい。一実施形態において、初期処理結果は、クライアントコンピューティングデバイス１０２に遠隔セッションブラウズ構成の選択を伝え、かつ／または選択された遠隔セッションブラウズ構成に対応する遠隔セッション通信プロトコルを介して接続を確立するデータを含むか、またはこれによって先行されてもよい。図８および９を参照して上に論じられるように、得られた初期処理結果は、ネットワークコンピューティングプロバイダ１０７によって行われた１つ以上の処理行為を伴う要求されたコンテンツを含んでもよい。初期処理結果を得た後、クライアントコンピューティングデバイス１０２は、ブロック１０１０で、初期処理結果に任意の残りの処理行為を行ってもよい。
【０１００】
ブロック１０１２で、クライアントコンピューティングデバイス１０２は、処理された初期処理結果に対応するコンテンツを表示する。例えば、クライアントコンピューティングデバイス１０２は、上の図７に記載されるブラウザ７００のコンテンツ表示領域７０２に処理されたクライアントを表示してもよい。一実施形態において、処理結果は、ブラウザによって表示された、コンテンツに対応する表示データを含むのみである場合があり、例えば、ＮＣＣ  ＰＯＰ１４２でのブラウザインスタンスのインターフェース制御、ブラウズセッションに対応する仮想マシンインスタンスのデスクトップ、またはＮＣＣ  ＰＯＰ１４２の任意の他のユーザインターフェースに対応する表示データを含まない場合がある。例えば、ＮＣＣ  ＰＯＰ１４２は、ＮＣＣ  ＰＯＰ１４２で仮想マシンインスタンスにおいて実行するブラウザインスタンスのＲＤＰを介して、表示のためのウェブページおよび関連付けられたコンテンツを処理してもよい。ブラウザインスタンスは、表示されるウェブページに加えて、ツールバー、メニュー、スクロールバー等の１つ以上のインターフェース要素を有してもよい。ＮＣＣ  ＰＯＰ１４２は、ブラウザと関連付けられたインターフェース要素のいずれも伴わずに、表示されたウェブページのみに対応するＲＤＰ処理結果を送信してもよい。例示的に、表示されたウェブページのみに対応するＲＤＰ処理結果を含むことは、クライアントコンピューティングインスタンス１０２でのブラウザが、いかなる更なる処理をもせずに、ブラウザのコンテンツ表示領域においてＲＤＰ処理結果を組み立てることによってウェブページを表示することを可能にし得る。別の実施形態において、ＲＤＰ処理結果は、ＮＣＣ  ＰＯＰ１４２のブラウズセッションインスタンスで表示される完全なインターフェースに対応する、完全な仮想マシンデスクトップおよびブラウザウィンドウを含んでもよい。クライアントコンピューティングデバイスは、要求されたコンテンツに対応するＲＤＰ処理結果の領域を自動的に識別してもよく、ブラウザのコンテンツ表示領域でこの領域のみを表示してもよい。
【０１０１】
ブロック１０１４で、クライアントコンピューティングデバイス１０２は、ローカルおよび遠隔ユーザ対話を処理する。図１１を参照して、ユーザ対話を処理するための例示的なルーチンが下に提供される。ブロック１０１６で、ルーチンが終了する。例示的に、ネットワークコンピューティングプロバイダ１０７によってインスタンス化されたブラウズセッションインスタンスは、ブラウザウィンドウもしくはコンテンツ表示領域が閉じられるときに終了してもよく、遠隔セッションブラウズプロトコルがクライアントコンピューティングデバイス１０２での並行プロセスによって置き換えられるときに終了してもよく、またはタイマーもしくは他のイベントに従って終了してもよい。例示的に、ブラウズセッションがタイムアウトのために自動的に終了したが、関連付けられたコンテンツがクライアントコンピューティングデバイス１０２のブラウザにおいてまだ表示されているとき、コンテンツと対話するためのユーザによる後の試みは、ネットワークコンピューティングプロバイダ１０７に提供される新しいブラウズセッション要求をもたらし、終了されたセッションの最後の状態に従って新しいブラウズセッションを開始し得る。例示的に、タイムアウト後に遠隔ブラウズセッションを終了させることは、ネットワークコンピューティングプロバイダ１０７がＮＣＣ  ＰＯＰでのコンピューティングリソースを節約することを可能にし得る。一実施形態において、この処理は、たとえ遠隔ブラウズセッションがその間の期間中に終了されるが、クライアントコンピューティングデバイス１０２でユーザにとって透過的であり得る。
【０１０２】
図１１は、クライアントコンピューティングデバイス１０２によって実装されるプロセスユーザ対話ルーチン１１００を例示する、流れ図である。プロセスユーザ対話ルーチン１１００は、ユーザによる対話に応答して、ブロック１１０２で開始する。例示的に、プロセスユーザ対話ルーチン１１００は、ブラウザインターフェースのコンテンツ表示領域におけるコンテンツの表示後に開始してもよい。例えば、プロセスユーザ対話ルーチン１１００は、上の図１０のブロック１０１４に対応し得る。
【０１０３】
例示的に、表示されたコンテンツは、フォーム、ボタン、アニメーション等の１つ以上の対話要素を有してもよい。これらの対話要素とのユーザ対話は、コンテンツ表示領域における更新されたコンテンツの処理および表示を必要とする場合がある。例えば、ウェブページ上のドロップダウンメニューにおける要素を選択することは、処理を必要とする場合があり、ウェブページまたは埋め込みリソースの構成または視覚的外観を変更する場合がある。例示的に、表示されたコンテンツについてユーザ対話によって必要とされる処理は、使用する遠隔セッションブラウズ構成に応じて、クライアントコンピューティングデバイス１０２でのローカルユーザ対話として、またはＮＣＣ  ＰＯＰ１４２での遠隔ユーザ対話として、扱われてもよい。例えば、かなりのローカル処理（例えば、ＨＴＭＬを介して未処理ファイルを送信する）を使用する遠隔セッションブラウズ構成を使用するとき、表示されたコンテンツとのユーザ対話は、典型的に、クライアントコンピューティングデバイス１０２でのローカルユーザ対話として扱われてもよい。例示的に、表示されたコンテンツとのユーザ対話をクライアントコンピューティングデバイス１０２でのローカルユーザ対話として扱うことは、対話に対応する対話データが処理のためにＮＣＣ  ＰＯＰ１４２に送信される必要がないため、単純なユーザ対話（例えば、ラジオボタンの選択、またはフィールドにテキストを打ち込むこと）についてより良好な応答性およびより少ない遅延を可能にし得る。
【０１０４】
更なる例示として、コンテンツの重い遠隔処理（例えば、ＲＤＰを介して処理済みビットマップデータを送信すること）を利用する遠隔セッションブラウズ構成が、遠隔セッションブラウズ構成として使用されているとき、表示されたコンテンツとの全てのユーザ対話は、遠隔ユーザ対話として扱われてもよい。例えば、ユーザ入力（例えば、キーボード入力およびカーソル位置）は、ＲＤＰプロトコルデータ単位にカプセル化され、処理のためにネットワーク１０８をわたってＮＣＣ  ＰＯＰ１４２に伝送されてもよい。例示的に、ＮＣＣ  ＰＯＰ  １４２は、ユーザ対話をネットワークコンテンツに適用し、コンテンツの更新された表現に対応する更新されたビットマップおよびインターフェースデータからなる処理結果を、クライアントコンピューティングデバイス１０２に戻して伝送してもよい。例示的に、表示されたコンテンツとのユーザ対話をＮＣＣ  ＰＯＰ１４２での遠隔ユーザ対話として扱うことは、データがネットワークを介して渡すように要求され、ネットワーク待機時間によって制限されるため、インターフェース応答性にマイナスの影響を有する場合があるが、かなりの量の処理を必要とするユーザ対話は、遠隔ユーザ対話として扱われるとき、ＮＣＣ  ＰＯＰ１４２の処理待機時間がクライアントコンピューティングデバイス１０２の処理待機時間よりも実質的に短くなり得るので、より良好に機能し得る。
ネットワークコンテンツを表示するためのコンテンツ表示領域に加えて、ブラウザは、ツールバー、メニュー、ボタン、または他のユーザインターフェース制御等の、１つ以上のローカルインターフェースコンポーネントを有してもよい。ローカルインターフェースコンポーネントとの対話は、例示的な図７に更に図示されるように、対話および遠隔セッションブラウズ構成によって必要とされる処理に応じて、ローカルユーザ対話または遠隔ユーザ対話として扱われてもよい。例えば、いくつかのローカルインターフェースコンポーネントは、クライアントコンピューティングデバイス上で実行されているブラウザコードによってローカルに管理されてもよいが、一方で他のローカルインターフェースコンポーネントは、１つ以上のローカルも管理されたアスペクト（例えば、ボタンクリックフィードバック、スクロールバー再描画等）、および遠隔ユーザ対話（例えば、ページリフレッシュ、アドレスバーにおいてアドレスのページを要求すること等）として扱われる１つ以上の遠隔管理されたアスペクトを有してもよい。
【０１０５】
ブロック１１０４で、クライアントコンピューティングデバイス１０２は、ユーザ対話をそのユーザから得る。このユーザ対話は、図７に記載されかつ上述されるローカルインターフェースコンポーネントとの対話であってもよく、またはフォームフィールド、ボタン、アニメーション等の、ブラウザのコンテンツ表示領域において表示されるコンテンツの任意の対話要素との対話であってもよい。これらのローカルインターフェースコンポーネントまたは表示されたコンテンツの対話要素とのユーザ対話は、図７に記載されかつ上述されるコンポーネントもしくは要素の性質、ならびに遠隔セッションブラウズ構成によって指定された処理分割に応じて、ローカルおよび／または遠隔処理を必要とする場合がある。ブロック１１０６で、クライアントコンピューティングデバイス１０２は、得られたユーザ対話のための対話処理要件を決定する。決定ブロック１１０８で、ユーザ対話がローカルアスペクト（例えば、ボタンクリックフィードバック、ローカルブラウザ状態への変更、クライアントコンピューティングデバイスで処理されているコンテンツ要素等）を有するとき、ルーチン１１０２は、ブロック１１１０に移動し、クライアントコンピューティングデバイス１０２でローカルアスペクトまたはユーザ対話のアスペクトを処理し、次に、ブロック１１１２でローカルインターフェースコンポーネントを更新する。例示的に、および上述のように、対話のアスペクトならびにインターフェースコンポーネントおよび要素をローカルに更新することは、ブラウザが応答性ユーザインターフェースおよびコンテンツを提供することを可能にする。ユーザ対話のローカルアスペクト（複数可）を処理した後、またはユーザ対話がローカル要素（例えば、専らサーバ側で処理し、ＲＤＰ遠隔セッション通信プロトコルを利用する遠隔セッションブラウズ構成を使用するときに、コンテンツ表示領域に表示されるコンテンツ要素とのユーザ対話）を有しない場合、ルーチン１１０２は、決定ブロック１１１４に移動する。ユーザ対話が処理を必要とする遠隔アスペクトを有する場合、ルーチン１１０２は、ブロック１１１６に移動し、遠隔ユーザ対話データをネットワークコンピューティングプロバイダ１０７に提供する。例示的に、ＲＤＰ遠隔セッション通信プロトコルを利用する、重いサーバ側の遠隔セッションブラウズ構成の場合、遠隔ユーザ対話データは、１つ以上のＲＤＰプロトコルデータ単位でカプセル化されたカーソル位置またはキーボード入力等の入力データを含んでもよい。ＲＤＰまたは他の遠隔セッション通信プロトコルを利用する遠隔セッションブラウズ構成のいくつかの実施形態において、カーソル位置等の、遠隔ユーザ対話データの特定のアスペクトは、連続的ベースでネットワークコンピューティングプロバイダ１０７に提供されてもよいが、一方で遠隔セッションブラウズ構成の他の実施形態において、遠隔ユーザ対話データは、遠隔処理を必要とするユーザ対話と関連付けられるとき、ネットワークコンピューティングプロバイダ１０７に提供されるのみであってもよい。
【０１０６】
ブロック１１１８で、クライアントコンピューティングデバイス１０２は、ネットワークコンピューティングプロバイダ１０７が遠隔ユーザ対話データを処理し、コンテンツの更新された表現を生成した後、更新された処理結果をネットワークコンピューティングプロバイダ１０７から得る。ブロック１１２０で、クライアントコンピューティングデバイス１０２は、更新された処理結果（遠隔セッションブラウズ構成に基づく）に必要とされる任意の追加処理を行い、ブロック１１２２で、ブラウザのコンテンツ表示区域において更新された処理結果を表示する。ブロック１１２４で、処理ユーザ対話ルーチン１１０２が終了する。例示的に、ルーチンは、ブラウザおよび表示されたコンテンツとの更なるユーザ対話に応答して、何回でも再び実行されてもよい。
【０１０７】
図１２を参照して、クライアントコンピューティングデバイス１０２からネットワークコンピューティングプロバイダ１０７への新しい履歴上のコンテンツ要求の生成および処理を例示する、図１のコンテンツ配信環境のブロック図が記載される。プロセスは、クライアントコンピューティングデバイス１０２からネットワークコンピューティングプロバイダ１０７への履歴上のコンテンツ要求を生成および処理することから開始し得る。例示的に、この要求は、下の図１５を参照して記載されるように、履歴上のコンテンツに対する検索の結果として、自動的に生成されてもよく、あるいは、ユーザが１つの履歴上のコンテンツへの参照に従うこと、一覧もしくはツリー図から履歴上のコンテンツを選択すること、または任意の他のユーザ対話もしくはシステムもしくはブラウザ要求に応答することの結果として、生成されてもよい。例えば、一実施形態において、第１のユーザは、履歴上のコンテンツ表現に対応する識別子またはネットワークアドレス情報等の参照を、クライアントコンピューティングデバイス１０２における第２のユーザに提供してもよい。例示的に、履歴上のコンテンツ表現は、第１のユーザによって前にアクセスまたは閲覧されたウェブページまたは他のネットワークリソースに対応してもよい。この実施例に関して、クライアントコンピューティングデバイス１０２は、参照を処理して、履歴上のコンテンツ要求を生成してもよい。
【０１０８】
図１２に戻ると、クライアントコンピューティングデバイス１０２が履歴上のコンテンツ要求を生成したかまたはそれを得た後、履歴上のコンテンツ要求は、最初にネットワークコンピューティングプロバイダ１０７に伝送されてもよい。例示的な実施形態において、ネットワークコンピューティングプロバイダ１０７は、登録アプリケーションプログラムインターフェース（「ＡＰＩ」）を利用して、クライアントコンピューティングデバイス１０２からの履歴上のコンテンツ要求を承認する。履歴上のコンテンツ要求は、履歴上のコンテンツ表現に対応する識別子またはネットワークアドレス情報を含み得、それは、文字の任意の組み合わせからなる英数字コード、インターネットプロトコル（「ＩＰ」）アドレス、ＵＲＬ、メディアアクセスコントロール（「ＭＡＣ」）アドレス等を含むが、これらに限定されない任意の形態であってもよい。履歴上のコンテンツ要求は、ユーザ、ブラウザ、クライアントコンピューティングデバイス１０２、および／または任意の他のブラウジングエンティティを識別する情報を更に含んでもよい。
【０１０９】
ブラウズセッション要求の受信後、ネットワークコンピューティングプロバイダ１０７は、ブラウズセッション要求における履歴上のコンテンツ表現に対応する、識別情報および識別子またはネットワークアドレス情報の任意の組み合わせに基づいて、履歴上のブラウズストレージコンポーネントを識別してもよい。一実施形態において、ネットワークコンピューティングおよびストレージコンポーネントは、識別情報を処理するか、またはクライアントコンピューティングデバイス１０２からの追加の情報を要求して、クライアントコンピューティングデバイス１０２が履歴上のコンテンツ表現を要求する権限を与えられていることを決定してもよい。
【０１１０】
例示的に、かつ図１２に関する実施例の目的のために、我々は、ネットワークコンピューティングプロバイダが、ＮＣＣ  ＰＯＰ  １４２で実装される履歴上のブラウズストレージコンポーネントを識別することを想定することができる。上述のように、履歴上のブラウズストレージコンポーネントは、様々な実施形態において、デバイスおよび／またはエンティティの任意の組み合わせによって実装され、関連付けられ、および／または提供されてもよい。一実施形態において、ＮＣＣ  ＰＯＰ  １４２は、要求された履歴上のコンテンツ表現の来たる伝送および処理に関連する履歴上の遠隔セッションブラウズ構成情報を、クライアントコンピューティングデバイス１０２に提供してもよい。
【０１１１】
ＮＣＣ  ＰＯＰ  １４２は、履歴上の遠隔セッションブラウズ構成情報に基づいて、要求された履歴上のコンテンツ表現をクライアントコンピューティングデバイスに提供してもよい。履歴上のコンテンツ表現は、ウェブページ等の要求された履歴上のコンテンツに対応し得る。一実施形態において、履歴上のコンテンツ表現は、履歴上のコンテンツ（例えば、要求されたウェブページ上の埋め込みコンテンツ）と関連付けられた任意の埋め込みリソースの表現を含んでもよい。別の実施形態において、履歴上のコンテンツ表現は、クライアントコンピューティングデバイス１０２による取り出しのために埋め込みコンテンツと関連付けられた、他の履歴上のコンテンツ表現への埋め込み参照を含んでもよい。履歴上のコンテンツ表現を受信した後、クライアントコンピューティングデバイス１０２は、履歴上の遠隔セッションブラウズ構成によって要求されるように、初期処理結果に任意の残りの処理行為を行ってもよく、また、ブラウザのコンテンツ表示領域において完全に処理されたコンテンツを表示してもよい。
【０１１２】
別の実施形態において、履歴上のコンテンツ要求は、履歴上のコンテンツ結果を削除あるいは除去する要求に対応し得る。例えば、クライアントコンピューティングデバイス１０２は、ストレージから履歴上のコンテンツ結果を削除する要求を提供してもよい。例示的に、履歴上のコンテンツ結果を削除する要求に応答して、ネットワークコンピューティングおよびストレージプロバイダ１０７および／またはＮＣＣ  ＰＯＰ  １４２は、１つ以上のデータストアから指定された履歴上のコンテンツ結果を削除し、かつ／またはクライアントコンピューティングデバイス１０２または関連付けられたユーザと、履歴上のコンテンツ結果との間の関連付けを削除してもよい。
【０１１３】
図１３を参照して、ネットワークリソースナビゲーションパス１３００を示す分岐図が記載される。例示的に、上述のように、クライアントコンピューティングデバイス１０２は、ネットワークリソース１３０２〜１３１４等のネットワークコンテンツの表現を得、表示してもよい。一実施形態において、ネットワークリソース１３０２〜１３０４のうちの１つ以上は、他のネットワークリソースへの１つ以上の参照を含んでもよい。具体的な実施例の目的のために、ネットワークリソース１３０２は、一実施形態において、他のウェブページへのいくつかのハイパーリンクを有するウェブページであってもよい。一実施形態において、ユーザは、ブラウザからのネットワークリソースからの参照に従って、参照されたネットワークリソースの表現を得てもよい。上述のように、それぞれのネットワークリソース１３０２〜１３１４は、ネットワークコンピューティングプロバイダ１０７において１つ以上の同じまたは異なる遠隔ブラウズセッションと関連付けられてもよい。
【０１１４】
例示的に、ユーザは、クライアントコンピューティングデバイス１０２のブラウザ内のリンクに順次従ってもよい。例えば、ユーザは、ネットワークリソース１３０２の表現におけるリンクをクリックしてもよく、それは、ブラウザが、ブラウザのコンテンツ表示領域におけるネットワークリソース１３０２の表現を、ネットワークリソース１３０４の表現と置き換えるようにし得る。このようにして、ユーザは、ネットワークコンテンツを通じて順次ブラウズし得る。例示的に、我々は、この参照の連鎖をブラウジングパスまたはナビゲーションパスと称しすることができる。例えば、ユーザは、ネットワークリソース１３０２、続いてネットワークリソース１３０４、続いて１３０６、および続いて１３０８の表現を閲覧することによって、順次のナビゲーションパスに従ってもよい。
【０１１５】
別の実施形態において、ユーザは、順次のナビゲーションパス１３０２〜１３０８と並行してリンクに従ってもよい。例えば、ユーザは、ウェブページ上のリンクに従って、クライアントコンピューティングデバイス１０２のブラウザ上で新しいタブ、フレーム、ウィンドウ、または他の組織的グループを開いてもよい。したがって、ユーザは、ネットワークリソース１３０４からの参照に従って、ネットワークリソース１３１２の表現を表示する新しいタブを開いてもよく、また、その後ネットワークリソース１３１４への参照に順次に従ってもよい。別の実施例として、ユーザは、ネットワークリソース１３０６からの参照に従って、ネットワークリソース１３１０の表現を表示する新しいタブを開いてもよい。
【０１１６】
一実施形態において、履歴上のブラウズストレージコンポーネントは、図１３に例示説明の目的のために図示されるブラウズパス等の論理的ブラウズパスの再作成を可能にするデータを得、それを記憶してもよい。一実施形態において、１つのコンテンツへとおよび／またはそこから従われた参照は、そのコンテンツに対応する履歴上のコンテンツ表現と共に記憶されてもよい。別の実施形態において、履歴上のブラウズストレージコンポーネントは、履歴上のナビゲーションパスと関連付けられた参照および／またはパスを独立して維持してもよい。
【０１１７】
例示的に、クライアントコンピューティングデバイス１０２のブラウザは、一実施形態において、履歴上のブラウズパスの表示を可能にするインターフェース制御または機能を有してもよい。例示的に、履歴上のブラウズパスは、本明細書で例示説明の目的のために図示される分岐もしくはツリー図、一覧、表として、または当該技術分野で既知の任意の他の表現において表示されてもよい。一実施形態において、ネットワークリソース間またはネットワークリソース表現自体の間の参照は、コンテンツの種類の視覚的指示、１つ以上の検索語の出現、前に閲覧された状態、他のユーザの閲覧行動に基づく人気度、または任意の他の特性もしくは関連する情報のアスペクトと共に表示されてもよい。
【０１１８】
図１４を参照して、ネットワークリソース参照レベルを図示する、ネットワークリソースナビゲーションパス１４００を示す分岐図が記載される。例示的に、図１３を参照して上述のように、クライアントコンピューティングデバイス１０２におけるユーザブラウジングネットワークコンテンツは、ナビゲーションパスにおけるネットワークリソース間の参照に従ってもよい。一実施形態において、それぞれのネットワークリソースは、他のネットワークリソースへの任意の数の参照を有してもよい。図９を参照して記載されるように、ネットワークコンピューティングおよびストレージコンポーネント１０７または履歴上のブラウズストレージコンポーネントは、クライアントコンピューティングデバイス１０２によって要求されたネットワークリソースによって直接または間接的に参照されるネットワークリソースの表現を取り出し、記憶するように構成されてもよい。
【０１１９】
例示説明の目的のために、クライアントコンピューティングデバイス１０２のブラウザにおけるユーザは、ブラウズパスにおいて、ネットワークリソース１４０２から、ネットワークリソース１４０６へ、ネットワークリソース１４１８へ、ネットワークリソース１４３０へと、ネットワークリソースをブラウズしてもよい。一実施形態において、これらのネットワークリソース１４０２、１４０６、１４１８、および１４３０のそれぞれの表現は、履歴上のブラウズストレージコンポーネントにおいて記憶および索引付けされてもよい。それぞれのネットワークリソース１４０２、１４０６、１４１８、および１４３０は、ネットワークリソース１４０４、１４０８、１４１６、１４２０、１４３２、および１４３４のうちの１つ以上等の、任意の数の他のネットワークリソースを参照してもよい。例示的に、要求されたネットワークリソース１４０２、１４０６、１４１８、および１４３０によって直接参照される、ネットワークリソース１４０４、１４０８、１４１６、１４２０、１４３２、および１４３４は、第１レベルの参照または第１レベルの参照されたネットワークリソースと称することができる。第１レベルの参照されたネットワークリソース１４０４、１４０８、１４１６、１４２０、１４３２、および１４３４によって参照される、ネットワークリソース１４１０、１４１２、１４２２、１４２４、および１４３６は、第２レベルの参照または第２レベルの参照されたネットワークリソースと称することができる。したがって、第２レベルのネットワークリソース１４１０、１４１２、１４２２、および１４２４によって参照される、ネットワークリソース１４１４、１４２６、および１４２８は、第３レベルの参照または第３レベルの参照されたネットワークリソースと称することができる。
【０１２０】
一実施形態において、履歴上のブラウズストレージコンポーネントで記憶された１つ以上のレベルの参照されたネットワークリソースの表現を有した後、クライアントコンピューティングデバイス１０２におけるユーザは、ブラウザまたはアプリケーションにおいて１つ以上のレベルの参照されたネットワークリソースの表現を閲覧することが可能であり得る。例示的に、履歴上のブラウズパスから参照されたネットワークリソースのレベルは、本明細書で例示説明の目的のために図示される分岐もしくはツリー図、一覧、表として、または当該技術分野で既知の任意の他の表現において表示されてもよい。一実施形態において、ネットワークリソース間またはネットワークリソース表現自体の間の参照は、コンテンツの種類の視覚的指示、１つ以上の検索語の出現、前に閲覧された状態、他のユーザの閲覧行動に基づく人気度、または任意の他の特性もしくは関連する情報のアスペクトと共に表示されてもよい。
【０１２１】
図１５に関して、例示的なブラウズ検索履歴インターフェー１５００を図示する、ユーザインターフェースの図が記載される。一実施形態において、検索インターフェース１５００は、クライアントコンピューティングデバイス１０２、または任意の他のアプリケーションもしくはサービス上で実行しているブラウザからアクセス可能であり得る。検索インターフェース１５００に対応する機能性の様々なアスペクトは、１つ以上のインターフェース、ＡＰＩ、ブラウザプラグイン、または他のアクセス手段を通じて、任意の数の異なるソフトウェアアプリケーション、ネットワークコンポーネント、および／またはサービスプロバイダによって提供されてもよい。一実施形態において、検索インターフェース１５００は、ユーザが、履歴上のブラウズストレージコンポーネントで記憶され、かつ過去に閲覧されたおよび／または参照されたネットワークリソースに対応する、履歴上のコンテンツ表現を検索することを可能にし得る。
【０１２２】
例示的な検索インターフェース１５００は、記憶された履歴上のコンテンツ表現または対応するネットワークリソースの任意の数の特性を検索するためのフィールドを含んでもよい。記憶された履歴上のコンテンツ表現の特性を検索するための検索フィールドは、テキスト検索フィールド１５０２、および日付検索フィールド１５０４を含んでもよいが、これらに限定されない。様々な他の実施形態において、検索インターフェース１５００は、コンテンツの種類、具体的なブラウズセッション、ソフトウェアブラウザ、ユーザ、メタデータ、タグ、またはネットワークリソースと関連付けられた任意の他の特性の任意の組み合わせに基づいて検索するための手段（図示されず）を更に含んでもよい。
【０１２３】
例示的な検索インターフェース１５００は、ネットワークリソースを閲覧するために元々使用されたクライアントコンピューティングデバイスを指定するための、ブラウジングデバイス検索フィールド１５０６を含んでもよい。例えば、ユーザは、元々、彼の家のコンピュータ上でネットワークリソースを閲覧および／または要求した場合がある。ユーザは、その後、彼が家のコンピュータ上で元々閲覧したコンテンツによる結果をフィルタリングして、ネットワークリソースの履歴上のコンテンツ表現を検索し得る。例示的に、クライアントコンピューティングデバイスは、ＭＡＣ  ＩＤもしくはＩＰアドレス、シリアル番号、ブラウザクッキー、および／またはクライアントコンピューティングデバイスハードウェアもしくはソフトウェアと関連付けられた任意の数の識別子による識別を含むが、これらに限定されない、当該技術分野で既知の任意の数の方式で識別されてもよい。一実施形態において、ユーザが特定のデバイスを容易に指定することを可能にするために、１つ以上の代替の識別子（例えば、説明、名称、アイコン等）が、１つ以上のデバイスと関連付けられてもよい。
【０１２４】
例示的な検索インターフェース１５００は、ネットワークリソースが元々閲覧されたまたは要求された場所を指定するための、位置検索フィールド１５０８を更に含んでもよい。様々な実施形態において、場所検索フィールドは、ユーザが物理的または論理的場所を入力すること可能にし得る。例示的に、検索結果は、指定される場所で元々閲覧されたコンテンツに対してフィルタリングされてもよい。一実施形態において、ユーザが特定の場所を容易に指定することを可能にするために、１つ以上の代替の識別子（例えば、説明、名称、アイコン等）が、１つ以上の物理的または論理的場所と関連付けられてもよい。他の実施形態において、ユーザは、グローバルポジショニングシステム（ＧＰＳ）座標、緯度および経度、アドレス、ＩＰアドレス、ネットワークドメイン等を含むが、これらに限定されない、任意の数の他の場所識別子を入力してもよい。
【０１２５】
例示的な検索インターフェース１５００は、特定の履歴上のコンテンツ表現またはネットワークリソースに基づいて検索するための制御１５１０を更に含んでもよい。例えば、一実施形態において、ユーザは、ブラウザ内に表示される履歴上のコンテンツ表現またはネットワークリソースの表現上で右クリックし、ページオプションに基づく検索を選択してもよい。例示的に、制御１５１０に提供されるネットワークリソースに対する識別情報には、検索インターフェース１５００におけるネットワークリソースプレビュー１５１４または他のネットワークリソースの表現が付随してもよい。例示的に、ページに基づく検索は、検索されたページと共有または同様の、任意の数の特性または情報と関連付けられた履歴上のコンテンツ表現を返してもよい。これらの特性または情報は、テキストコンテンツ、日付、コンテンツの種類、ネットワークリソースに遭遇したブラウズセッション、タグ、メタデータ、ユーザＩＤ、ブラウザ、クライアントコンピューティングデバイス、共通の順次または並列ナビゲーションパス等を含んでもよい。例えば、例示的な検索インターフェース１５００は、ナビゲーションパス結果制御１５１２を更に含んでもよい。例示的に、ナビゲーションパス結果制御１５１２は、ユーザが、元々、制御１５１０において選択されたネットワークリソースまたは履歴上のコンテンツ表現と同じナビゲーションパスであるコンテンツの履歴上のコンテンツ表現によって、検索結果をフィルタリングすることを可能にし得る。一実施形態において、ユーザは、ナビゲーションパスで選択されたネットワークリソースまたは履歴上のコンテンツ表現の前または後のいずれのコンテンツの履歴上のコンテンツ表現に対する検索結果をフィルタリングしてもよい。
【０１２６】
明確さの目的のために本明細書では示されないが、例示的な検索インターフェース１５００は、ユーザが、制御１５１０において選択された結果をページの過去のバージョンに制限またはフィルタリングすることを可能にする、オプションまたは制御を更に含んでもよい。例えば、ユーザは、最新のニュースに特化したウェブページを過去に何回か訪れた場合がある。したがって、ウェブページは、閲覧された度に、異なる情報を含んでいた場合がある。例示的に、ユーザは、具体的なストーリーまたは新しい項目を見出すために、検索を、ウェブページの過去のバージョンの記憶された履歴上のコンテンツ表現に限定することを選んでもよい。
【０１２７】
例示的な検索インターフェース１５００は、ユーザが、ネットワーク（例えば、現在のＷｅｂ検索）から、履歴上のコンテンツ表現のみを返すことと、履歴上のコンテンツ表現および現在のコンテンツの組み合わせを返すこととの間で選択することを可能にする、制御１５１２を更に含んでもよい。一実施形態において、検索フィールド１５１４の深度は、図９および１４を参照して上に論じられたように、ユーザが、検索するべき参照されたネットワークリソースのレベルの数を指定することを可能にし得る。例えば、ゼロレベルは、検索が、実際に閲覧されたネットワークリソースに対応する履歴上のコンテンツ表現のみを返すべきであることを指定し得る。
【０１２８】
なおも更に、例示的な検索インターフェース１５００は、推奨結果が検索によって返されるべきであることを指定するための、推奨結果制御１５１６を含んでもよい。一実施形態において、推奨結果は、他のユーザによって、ネットワークコンピューティングおよびストレージコンポーネント１０７によって、クライアントコンピューティングデバイス１０２におけるユーザによって、履歴上のブラウズストレージコンポーネント自体、または任意の他のエンティティによって高位に順位付けされた、ネットワークリソースの履歴上のコンテンツ表現に対応してもよい。更なる実施形態において、推奨結果は、過去のユーザのブラウジング行動に基づいてもよい。
【０１２９】
例示的な検索インターフェース１５００は、見られていない結果のみが検索によって返されるべきであることを指定するための、見られていない結果制御１５１８を更に含んでもよい。例示的に、このオプションを選択することは、検索が、参照されたネットワークリソースに対応する（例えば、最大で、上の制御１５１４において指定される参照のレベルで）履歴上のコンテンツ表現のみを返すようにし得、かつ、クライアントコンピューティングデバイス１０２が実際に表示したネットワークリソース（例えば、ユーザの履歴上のブラウズパス上のネットワークリソース）に対応する履歴上のコンテンツ表現を表示しないようにし得る。
【０１３０】
明確さの目的のために本明細書では図示されないが、例示的な検索インターフェース１５００は、ユーザが、過去にユーザまたはクライアントコンピューティングデバイスによってネットワークリソースまたは他の１つのコンテンツが閲覧された回数によって、フィルタリングすることを可能にし得る、１つ以上の制御またはユーザインターフェースオプションを更に含んでもよい。例示的な検索インターフェース１５００は、ユーザが、ネットワークリソースまたは他の１つのコンテンツを閲覧するまたはそれと対話するのに費やした時間の量によって、検索することを可能にし得る、１つ以上の制御またはユーザインターフェースオプションをなおも更に含んでもよい。例示的な検索インターフェース１５００は、ユーザが、支配色もしくは配色、ネットワークリソースもしくは１つのコンテンツにおける１つ以上の広告の関連付けもしくは組み込み、ネットワークリソースにおける１つ以上もしくは１種類以上の埋め込みコンテンツの関連付けもしくは組み込み、または任意の他の種類の検索フィルタまたは語によって、検索結果をフィルタリングすることをなおも更に可能にし得る。
【０１３１】
本開示の、とりわけ様々な実施形態は、以下の付記によって記載され得る。
付記１．遠隔セッションブラウジングのためのコンピュータ実装方法であって、
ネットワークコンピューティングコンポーネントによって、クライアントコンピューティングデバイスからのブラウズセッション要求に含まれるネットワークリソースの識別子に基づいて、コンテンツプロバイダからネットワークリソースを得ることであって、ネットワークリソースが、複数の処理行為により処理され得る、得ることと、
ネットワークコンピューティングコンポーネントによって、ネットワークリソースと関連付けられたクライアント遠隔セッションブラウジング構成および履歴上の遠隔セッションブラウジング構成を決定することであって、クライアント遠隔セッションブラウジング構成および履歴上の遠隔セッションブラウジング構成のそれぞれが、少なくとも通信プロトコルおよびネットワークコンピューティングコンポーネントで行われるべき複数の処理行為のうちの１組の処理行為を識別する、決定することと、
ネットワークコンピューティングコンポーネントによって、ネットワークリソースを処理して、決定されたクライアント遠隔セッションブラウジング構成に対応する処理結果、および決定された履歴上の遠隔セッションブラウジング構成に対応する履歴上のコンテンツ表現を生成することであって、処理結果および履歴上のコンテンツ表現が、ネットワークリソースの表現に対応し、処理結果が、ネットワークコンピューティングコンポーネントでクライアント遠隔セッションブラウジング構成によって識別される１組の処理行為を行うことによって生成され、履歴上のコンテンツ表現が、ネットワークコンピューティングコンポーネントで履歴上の遠隔セッションブラウジング構成によって識別される１組の処理行為を行うことによって生成される、生成することと、
ネットワークコンピューティングコンポーネントによって、処理結果をクライアントコンピューティングデバイスに提供することであって、クライアントコンピューティングデバイスが、ネットワークリソースの表現の表示を引き起こすように構成され、表現の表示を引き起こすことが、クライアント遠隔セッションブラウジング構成によって識別される１組の処理行為に含まれない複数の処理行為のそれぞれを行うことを含む、提供することと、
ネットワークコンピューティングコンポーネントによって、履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに提供することであって、履歴上のブラウズストレージコンポーネントが、履歴上のコンテンツ表現を記憶するように構成される、提供することと、を含む、コンピュータ実装方法。
付記２．クライアント遠隔セッションブラウジング構成によって識別される通信プロトコルが、履歴上の遠隔セッションブラウジング構成によって識別される通信プロトコルとは異なる、付記１に記載のコンピュータ実装方法。
付記３．クライアント遠隔セッションブラウジング構成によって識別される通信プロトコルおよび履歴上の遠隔セッションブラウジング構成によって識別される通信プロトコルのうちの少なくとも１つが、ＨＴＭＬプロトコル、リモートデスクトッププロトコル、バーチャルネットワークコンピューティングプロトコル、遠隔フレームバッファー（Ｒｅｍｏｔｅ  Ｆｒａｍｅ  Ｂｕｆｆｅｒ）プロトコル、またはＸ−ウィンドウプロトコルを含む、付記１に記載のコンピュータ実装方法。
付記４．ネットワークリソースと関連付けられた履歴上の遠隔セッションブラウジング構成を決定することが、リソースデータ形式、リソースコンテンツの種類、リソースサイズ、ソフトウェアブラウザ、リソース処理要件、リソース待機時間要件、対話要素の数もしくは種類、リソースセキュリティリスク、履歴上のリソース使用状況データ、リソース使用状況予測、関連付けられたユーザ選好、関連付けられたネットワークアドレス、関連付けられたネットワークドメイン、履歴上のコンテンツプロバイダ使用状況データ、またはコンテンツプロバイダ構成データに基づいて、履歴上の遠隔セッションブラウジング構成を決定することを含む、付記１に記載のコンピュータ実装方法。
付記５．ネットワークリソースと関連付けられた履歴上の遠隔セッションブラウジング構成を決定することが、履歴上のブラウズストレージコンポーネントから得られた情報に基づいて、履歴上の遠隔セッションブラウジング構成を決定することを含む、付記１に記載のコンピュータ実装方法。
付記６．遠隔セッションブラウジングのためのシステムであって、
１つ以上のコンピュータプロセッサと、
１つ以上のコンピュータプロセッサのうちの少なくとも１つによってアクセス可能な少なくとも１つのコンピュータメモリと、
１つ以上のコンピュータプロセッサによって実行される実行可能なソフトウェアモジュールを備える、ネットワークコンピューティングコンポーネントと、を備え、ネットワークコンピューティングコンポーネントが、
クライアントコンピューティングデバイスから、第１のネットワークリソースのための要求を得ることと、
１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することであって、１つ以上の履歴上のコンテンツ表現が、第１のネットワークリソースおよび第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つに対応する、伝送することと、
処理結果をクライアントコンピューティングデバイスに伝送することであって、処理結果が、第１のネットワークリソースおよびクライアントコンピューティングデバイスで表示されるべき第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つの表現に対応する、伝送することと、を行うように動作可能である、システム。
付記７．ネットワークコンピューティングコンポーネントが、履歴上の遠隔セッションブラウジング構成を決定するように更に動作可能であり、履歴上の遠隔セッションブラウジング構成が、１つ以上の履歴上のコンテンツ表現を生成するためにネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、付記６に記載のシステム。
付記８．ネットワークコンピューティングコンポーネントが、履歴上のブラウズストレージコンポーネントから得られた情報に基づいて、ネットワークリソースと関連付けられた履歴上の遠隔セッションブラウジング構成を決定するように更に動作可能である、付記７に記載のシステム。
付記９．遠隔セッションブラウジング履歴構成が、クライアントコンピューティングデバイスで行われるべき１つ以上の処理行為を識別する、付記７に記載のシステム。
付記１０．クライアントコンピューティングデバイスが、履歴上の遠隔セッションブラウジング構成によって識別される１つ以上の処理行為を行うように構成される、付記９に記載のシステム。
付記１１．ネットワークコンピューティングコンポーネントが、クライアント遠隔セッションブラウジング構成を決定するように更に動作可能であり、クライアント遠隔セッションブラウジング構成が、処理結果を生成するためにネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、付記６に記載のシステム。
付記１２．ネットワークコンピューティングコンポーネントが、リソースデータ形式、リソースコンテンツの種類、リソースサイズ、リソース処理要件、リソース待機時間要件、対話要素の数もしくは種類、リソースセキュリティリスク、履歴上のリソース使用状況データ、リソース使用状況予測、関連付けられたユーザ選好、関連付けられたネットワークアドレス、関連付けられたネットワークドメイン、履歴上のコンテンツプロバイダ使用状況データ、またはコンテンツプロバイダ構成データに基づいて、ネットワークリソースと関連付けられたクライアント遠隔セッションブラウジング構成を決定するように更に動作可能である、付記１１に記載のシステム。
付記１３．クライアント遠隔セッションブラウジング構成によって識別される１組の処理行為が、１つ以上の履歴上のコンテンツ表現の生成中に行われる少なくとも１つの共有の処理行為を含む、付記１１に記載のシステム。
付記１４．１つ以上の履歴上のコンテンツ表現が、ＨＴＭＬプロトコル、リモートデスクトッププロトコル、バーチャルネットワークコンピューティングプロトコル、遠隔フレームバッファープロトコル、およびＸ−ウィンドウプロトコルのうちの少なくとも１つを含む通信プロトコルと関連付けられる、付記６に記載のシステム。
付記１５．クライアントコンピューティングデバイスが、履歴上のブラウズストレージコンポーネントから履歴上のコンテンツ表現を得るように構成される、付記６に記載のシステム。
付記１６．クライアントコンピューティングデバイスが、履歴上のコンテンツ表現に基づいて、ネットワークリソースの表現を表示するように構成される、付記１５に記載のシステム  
付記１７．遠隔セッションブラウジングのためのコンピュータ実装方法であって、
クライアントコンピューティングデバイスから、第１のネットワークリソースのための要求を得ることと、
１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することであって、１つ以上の履歴上のコンテンツ表現が、第１のネットワークリソースおよび第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つに対応する、伝送することと、
処理結果をクライアントコンピューティングデバイスに伝送することであって、処理結果が、第１のネットワークリソースおよびクライアントコンピューティングデバイスで表示されるべき第１のネットワークリソースと関連付けられたコンテンツのうちの少なくとも１つの表現に対応する、伝送することと、を含む、コンピュータ実装方法。
付記１８．履歴上の遠隔セッションブラウジング構成を決定することを更に含み、履歴上の遠隔セッションブラウジング構成が、１つ以上の履歴上のコンテンツ表現を生成するためにネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、付記１７に記載のコンピュータ実装方法。
付記１９．履歴上のブラウズストレージコンポーネントから得られた情報に基づいて、ネットワークリソースと関連付けられた履歴上の遠隔セッションブラウジング構成を決定することを更に含む、付記１８に記載のコンピュータ実装方法。
付記２０．クライアントコンピューティングデバイスからの履歴上のコンテンツ表現のための要求に応答して、ネットワークリソースと関連付けられた履歴上の遠隔セッションブラウジング構成を決定することを更に含む、付記１８に記載のコンピュータ実装方法。
付記２１．クライアント遠隔セッションブラウジング構成を決定することを更に含み、クライアント遠隔セッションブラウジング構成が、処理結果を生成するためにネットワークコンピューティングコンポーネントで行われるべき１組の処理行為を識別する、付記１７に記載のコンピュータ実装方法。
付記２２．処理結果をクライアントコンピューティングデバイスに提供することを更に含み、処理結果が、ネットワークコンピューティングコンポーネントでクライアント遠隔セッションブラウジング構成によって識別される１組の処理行為を行うことによって生成され、クライアントコンピューティングデバイスが、処理結果に基づいて、ネットワークリソースの表現の表示を引き起こすように動作可能である、付記２１に記載のコンピュータ実装方法。
付記２３．クライアント遠隔セッションブラウジング構成によって識別される１組の処理行為が、１つ以上の履歴上のコンテンツ表現の生成中に行われるべき少なくとも１つの共有の行為を含む、付記２１に記載のコンピュータ実装方法。
付記２４．  
少なくとも１つの共有の行為を行うことを含む、ネットワークコンピューティングコンポーネントで、クライアント遠隔セッションブラウジング構成によって識別される１組の処理行為を行うことによって、処理結果を生成することと、
ネットワークコンピューティングコンポーネントで、前記少なくとも１つの共有の行為を行うことを含む、履歴上のコンテンツ表現を生成することと、を更に含み、前記少なくとも１つの共有の行為が、１回を超えては行われない、付記２３に記載のコンピュータ実装方法。
付記２５．クライアントコンピューティングデバイスが、履歴上のブラウズストレージコンポーネントから履歴上のコンテンツ表現を得るように構成される、付記１７に記載のコンピュータ実装方法。
付記２６．クライアントコンピューティングデバイスが、履歴上のコンテンツ表現に基づいて、ネットワークリソースの表現を表示するように構成される、付記２５に記載のコンピュータ実装方法。
付記２７．遠隔ブラウズストレージのためのコンピュータ実装方法であって、
ネットワークコンピューティングプロバイダで、クライアントコンピューティングデバイスからのネットワークコンテンツのための要求を得ることであって、要求されたネットワークコンテンツが、１つ以上の埋め込みリソースを参照する第１のネットワークリソースを含む、得ることと、
ネットワークコンピューティングプロバイダによって、１つ以上のコンテンツプロバイダからネットワークリソースおよび１つ以上の埋め込みリソースを得ることと、
ネットワークコンピューティングプロバイダによって、ネットワークリソースおよび１つ以上の埋め込みリソースを処理して、要求されたコンテンツの表現と関連付けられた処理結果を生成することと、
ネットワークコンピューティングプロバイダによって、要求されたコンテンツの表現の表示のために、処理結果をクライアントコンピューティングデバイスに伝送することと、
ネットワークコンピューティングプロバイダによって、ネットワークリソースおよび１つ以上の埋め込みリソースを処理して、履歴上のブラウズストレージコンポーネントにおけるストレージのために、履歴上のコンテンツ表現を生成することと、
ネットワークコンピューティングプロバイダによって、ストレージのために、履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することと、
ネットワークコンピューティングプロバイダによって、ネットワークリソースを処理して、１つ以上のネットワークリソース識別子を得ることであって、１つ以上のネットワークリソース識別子のそれぞれが、参照されたネットワークリソースと関連付けられる、得ることと、
ネットワークコンピューティングプロバイダによって、１つ以上のネットワークリソース識別子のそれぞれに対応する１つ以上の参照されたネットワークリソースを得ることと、
ネットワークコンピューティングプロバイダによって、１つ以上の参照されたネットワークリソースを処理して、履歴上のブラウズストレージコンポーネントにおけるストレージのために、１つ以上の履歴上のコンテンツ表現を生成することと、
ネットワークコンピューティングプロバイダによって、ストレージのために、１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することと、を含む、コンピュータ実装方法。
付記２８．複数のレベルの参照されたネットワークコンテンツを得ることを更に含み、それぞれのレベルの参照されたネットワークコンテンツが、先行するレベルの参照されたネットワークコンテンツによって参照されるネットワークコンテンツを含む、付記２７に記載のコンピュータ実装方法。
付記２９．１つ以上の履歴上のコンテンツ表現が、得られた複数のレベルの参照されたネットワークコンテンツからのネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記２８に記載のコンピュータ実装方法。
付記３０．第１レベルの参照されたネットワークコンテンツが、１つ以上の参照されたネットワークリソースを含む、付記２８に記載のコンピュータ実装方法。
付記３１．遠隔ブラウズストレージのためのシステムであって、
１つ以上のコンピュータプロセッサと、
１つ以上のコンピュータプロセッサのうちの少なくとも１つによってアクセス可能な少なくとも１つのコンピュータメモリと、
１つ以上のコンピュータプロセッサによって実行される実行可能なソフトウェアモジュールを備える、ネットワークコンピューティングコンポーネントと、を備え、ネットワークコンピューティングコンポーネントが、
クライアントコンピューティングデバイスから第１のネットワークコンテンツのための要求を得ることであって、第１のネットワークコンテンツが、第１の参照されたネットワークコンテンツの１つ以上のコンテンツ識別子を含む、得ることと、
１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することであって、１つ以上の履歴上のコンテンツ表現が、第１の参照されたネットワークコンテンツの１つ以上の表現に対応する、伝送することと、
処理結果をクライアントコンピューティングデバイスに伝送することであって、処理結果が、クライアントコンピューティングデバイスで表示されるべき第１のネットワークコンテンツの表現に対応する、伝送することと、を行うように動作可能である、システム。
付記３２．第１の参照されたネットワークコンテンツが、第２の参照されたネットワークコンテンツの１つ以上のコンテンツ識別子を含む、付記３１に記載のシステム。
付記３３．１つ以上の履歴上のコンテンツ表現が、第２の参照されたネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記３２に記載のシステム。
付記３４．ネットワークコンピューティングコンポーネントが、複数のレベルの参照されたネットワークコンテンツを得るように構成され、それぞれのレベルの参照されたネットワークコンテンツが、先行するレベルの参照されたネットワークコンテンツによって参照されるネットワークコンテンツを含む、付記３１に記載のシステム。
付記３５．１つ以上の履歴上のコンテンツ表現が、得られた複数のレベルの参照されたネットワークコンテンツからのネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記３４に記載のシステム。
付記３６．第１レベルの参照されたネットワークコンテンツが、第１の参照されたネットワークコンテンツを含む、付記３４に記載のシステム。
付記３７．第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの１つ以上の表現が、第１の参照されたネットワークコンテンツのうちの少なくともいくつかの表現を除外する、付記３１に記載のシステム。
付記３８．第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの１つ以上の表現が、特定のテキストのセグメント、特定の種類のコンテンツ、特定のコンテンツのトピック、修正された特定の日付、または特定のメタデータのうちの少なくとも１つを含むネットワークコンテンツの表現を除外する、付記３７に記載のシステム。
付記３９．ネットワークコンピューティングコンポーネントが、履歴上のコンテンツフィルタコンポーネントによって提供される情報に基づいて、除外するべき第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの表現を決定するように動作可能である、付記３７に記載のシステム。
付記４０．遠隔ブラウズストレージのためのコンピュータ実装方法であって、
ネットワークコンピューティングプロバイダによって、クライアントコンピューティングデバイスから第１のネットワークコンテンツのための要求を得ることであって、第１のネットワークコンテンツが、第１の参照されたネットワークコンテンツの１つ以上のコンテンツ識別子を含む、得ることと、
ネットワークコンピューティングプロバイダによって、１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することであって、１つ以上の履歴上のコンテンツ表現が、第１の参照されたネットワークコンテンツの１つ以上の表現に対応する、伝送することと、
ネットワークコンピューティングプロバイダによって、処理結果をクライアントコンピューティングデバイスに伝送することであって、処理結果が、クライアントコンピューティングデバイスで表示されるべき第１のネットワークコンテンツの表現に対応する、伝送することと、を含む、コンピュータ実装方法。
付記４１．第１の参照されたネットワークコンテンツが、第２の参照されたネットワークコンテンツの１つ以上のコンテンツ識別子を含む、付記４０に記載のコンピュータ実装方法。
付記４２．１つ以上の履歴上のコンテンツ表現が、第２の参照されたネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記４１に記載のコンピュータ実装方法。
付記４３．ネットワークコンピューティングコンポーネントが、複数のレベルの参照されたネットワークコンテンツを得るように構成され、それぞれのレベルの参照されたネットワークコンテンツが、先行するレベルの参照されたネットワークコンテンツによって参照されるネットワークコンテンツを含む、付記４０に記載のコンピュータ実装方法。
付記４４．１つ以上の履歴上のコンテンツ表現が、得られた複数のレベルの参照されたネットワークコンテンツからのネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記４３に記載のコンピュータ実装方法。
付記４５．第１レベルの参照されたネットワークコンテンツが、第１の参照されたネットワークコンテンツを含む、付記４３に記載のコンピュータ実装方法。
付記４６．第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの１つ以上の表現が、第１の参照されたネットワークコンテンツのうちの少なくともいくつかの表現を除外する、付記４０に記載のコンピュータ実装方法。
付記４７．第１のネットワークコンテンツまたは第１の参照されたネットワークコンテンツの１つ以上の表現が、特定のテキストのセグメント、特定の種類のコンテンツ、特定のコンテンツのトピック、修正された特定の日付、または特定のメタデータを含むネットワークコンテンツの表現を除外する、付記４６に記載のコンピュータ実装方法。
付記４８．履歴上のコンテンツフィルタコンポーネントによって提供される情報に基づいて、除外するべき第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの表現を決定することを更に含む、付記４７に記載のシステム。
付記４９。命令を上に記憶させた非一時的なコンピュータストレージであって、コンピュータシステムによって実行されるとき、コンピュータシステムに、
クライアントコンピューティングデバイスから第１のネットワークコンテンツのための要求を得ることであって、第１のネットワークコンテンツが、第１の参照されたネットワークコンテンツの１つ以上のコンテンツ識別子を含む、得ることと、
１つ以上の履歴上のコンテンツ表現を履歴上のブラウズストレージコンポーネントに伝送することであって、１つ以上の履歴上のコンテンツ表現が、第１の参照されたネットワークコンテンツの１つ以上の表現に対応する、伝送することと、
処理結果をクライアントコンピューティングデバイスに伝送することであって、処理結果が、クライアントコンピューティングデバイスで表示されるべき第１のネットワークコンテンツの表現に対応する、伝送することと、を含む、動作を行わせる、非一時的なコンピュータストレージ。
付記５０．命令が、コンピュータシステムに、複数のレベルの参照されたネットワークコンテンツを得させ、それぞれのレベルの参照されたネットワークコンテンツが、先行するレベルの参照されたネットワークコンテンツによって参照されるネットワークコンテンツを含む、付記４９に記載の非一時的なコンピュータストレージ。
付記５１．１つ以上の履歴上のコンテンツ表現が、得られた複数のレベルの参照されたネットワークコンテンツからのネットワークコンテンツの少なくとも１つの表現に対応する少なくとも１つの履歴上のコンテンツ表現を含む、付記５０に記載の非一時的なコンピュータストレージ。
付記５２．第１レベルの参照されたネットワークコンテンツが、第１の参照されたネットワークコンテンツを含む、付記５０に記載の非一時的なコンピュータストレージ。
付記５３．前記第１のネットワークコンテンツおよび第１の参照されたネットワークコンテンツのうちの少なくとも１つの１つ以上の表現が、第１の参照されたネットワークコンテンツのうちの少なくともいくつかの表現を除外する、付記４９に記載の非一時的なコンピュータストレージ。
付記５４．ブラウズキャッシュ管理のためのコンピュータ実装方法であって、
履歴上のブラウズストレージコンポーネントにおいて、ネットワークコンピューティングおよびストレージプロバイダから第１の履歴上のコンテンツ表現を得ることであって、第１の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって要求されたコンテンツの第１の表現と関連付けられ、クライアントコンピューティングによって要求されたコンテンツの第２の表現が、クライアントコンピューティングデバイスで表示される、得ることと、
履歴上のブラウズストレージコンポーネントにおいて、ネットワークコンピューティングおよびストレージプロバイダから１つ以上の履歴上のコンテンツ表現を得ることであって、履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツの表現と関連付けられ、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツが、クライアントコンピューティングデバイスで表示されたことがない、得ることと、
履歴上のブラウズストレージコンポーネントにおいて、クライアントコンピューティングデバイスから検索要求を得ることであって、クライアントコンピューティングデバイスからの検索要求が、１つ以上の検索語と関連付けられ、１つ以上の検索語のうちの少なくとも１つが、検索を、クライアントコンピューティングデバイスで表示されたことがないコンテンツに限定する、得ることと、
クライアントコンピューティングデバイスに、検索語に基づいて検索結果を提供することであって、検索結果が、検索語に基づいて、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツの表現と関連付けられた１つ以上の履歴上のコンテンツ表現のうちの少なくとも１つを含み、検索結果が、第１の履歴上のコンテンツ表現を除外する、提供することと、を含む、コンピュータ実装方法。
付記５５．要求されたコンテンツが、ウェブページを含む、付記５４に記載のコンピュータ実装方法。
付記５６．検索語が、テキストのセグメント、日付、コンテンツの種類、ブラウズセッション識別子、ユーザ識別子、ブラウザ識別子、クライアントコンピューティングデバイス識別子、ストレージ位置、またはタグを含む、付記５４に記載のコンピュータ実装方法。
付記５７．履歴上のブラウズストレージコンポーネントが、ネットワークコンピューティングおよびストレージプロバイダと関連付けられる、付記５４に記載のコンピュータ実装方法。
付記５８．クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツが、クライアントコンピューティングデバイスによって要求されたコンテンツによって直接参照される、および間接的に参照されるもののうちの少なくとも１つである、付記５４に記載のコンピュータ実装方法。
付記５９．１つ以上の検索語のうちの少なくとも１つが、クライアントコンピューティングデバイスによって要求されたコンテンツからの最大数の間接的参照を含む、付記５８に記載のコンピュータ実装方法。
付記６０．１つ以上の検索語のうちの少なくとも１つが、第１の履歴上のコンテンツ表現と関連付けられた識別子を含む、付記５４に記載のコンピュータ実装方法。
付記６１．ブラウズキャッシュ管理のためのシステムであって、
１つ以上のコンピュータプロセッサと、
１つ以上のコンピュータプロセッサのうちの少なくとも１つによってアクセス可能な少なくとも１つのコンピュータメモリと、
１つ以上のコンピュータプロセッサによって実行される実行可能なソフトウェアモジュールを備える、ネットワークコンピューティングコンポーネントと、を備え、ネットワークコンピューティングコンポーネントが、１つ以上の履歴上のコンテンツ表現をクライアントコンピューティングデバイスに提供するように動作可能であり、１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツの表現と関連付けられ、１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって前にアクセスされていないコンテンツに対応する、システム。
付記６２．ネットワークコンピューティングコンポーネントが、クライアントコンピューティングデバイスから検索要求を得るように動作可能であり、検索要求が、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツのための要求を含む、付記６１に記載のシステム。
付記６３．検索要求が、テキストのセグメント、日付、コンテンツの種類、ブラウズセッション識別子、ユーザ識別子、ブラウザ識別子、クライアントコンピューティングデバイス識別子、ストレージ位置、またはタグを含む、付記６２に記載のシステム。
付記６４．クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツが、クライアントコンピューティングデバイスによって要求されたコンテンツによって直接参照される、および間接的に参照されるもののうちの少なくとも１つである、付記６２に記載のシステム。
付記６５．検索要求が、クライアントコンピューティングデバイスによって要求されたコンテンツからの最大数の間接的参照を含む、付記６４に記載のシステム。
付記６６．検索要求が、第１の履歴上のコンテンツ表現と関連付けられた識別子を含む、付記６２に記載のシステム。
付記６７．１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスで前に表示されたコンテンツの表現を除外する、付記６１に記載のシステム。
付記６８．ネットワークコンピューティングコンポーネントが、第１の履歴上のコンテンツ表現と関連付けられた１つ以上の履歴上のコンテンツ表現を、クライアントコンピューティングデバイスに提供するように更に動作可能である、付記６１に記載のシステム。
付記６９．ネットワークコンピューティングコンポーネントが、履歴上のコンテンツ表現からクライアントコンピューティングデバイスによって前に要求されたコンテンツの表現を除外するように更に動作可能である、付記６１に記載のシステム。
付記７０．ブラウズキャッシュ管理のためのコンピュータ実装方法であって、
履歴上のブラウズストレージコンポーネントにおいて、１つ以上の履歴上のコンテンツ表現をクライアントコンピューティングデバイスに提供する、ブラウズストレージコンポーネントを含み、１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツの表現と関連付けられ、１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって前にアクセスされていないコンテンツに対応する、コンピュータ実装方法。
付記７１．クライアントコンピューティングデバイスから検索要求を得ることを更に含み、検索要求が、クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツのための要求を含む、付記７０に記載のコンピュータ実装方法。
付記７２．検索要求が、テキストのセグメント、日付、コンテンツの種類、ブラウズセッション識別子、ユーザ識別子、ブラウザ識別子、クライアントコンピューティングデバイス識別子、ストレージ位置、またはタグを含む、付記７１に記載のコンピュータ実装方法。
付記７３．検索要求が、クライアントコンピューティングデバイスによって要求されたコンテンツからの最大数の間接的参照を含む、付記７１に記載のコンピュータ実装方法。
付記７４．検索要求が、第１の履歴上のコンテンツ表現と関連付けられた識別子を含む、付記７１に記載のコンピュータ実装方法。
付記７５．第１の履歴上のコンテンツ表現と関連付けられた１つ以上の履歴上のコンテンツ表現を、クライアントコンピューティングデバイスに提供することを更に含む、付記７４に記載のコンピュータ実装方法。
付記７６．クライアントコンピューティングデバイスによって前に要求された１つ以上の履歴上のコンテンツ表現からのコンテンツ表現を除外することを更に含む、付記７０に記載のコンピュータ実装方法。
付記７７．クライアントコンピューティングデバイスによって要求されたコンテンツによって参照されるコンテンツが、クライアントコンピューティングデバイスによって要求されたコンテンツによって直接参照される、および間接的に参照されるもののうちの少なくとも１つである、付記７０に記載のコンピュータ実装方法。
付記７８．前記１つ以上の履歴上のコンテンツ表現が、クライアントコンピューティングデバイスで前に表示されたコンテンツの表現を除外する、付記７０に記載のコンピュータ実装方法。
付記７９．コンピュータ実装方法であって、
ネットワークコンピューティングプロバイダから履歴上のコンテンツ表現を得ることであって、履歴上のコンテンツ表現が、クライアントコンピューティングデバイスによって前に要求されたコンテンツの表現と関連付けられ、コンテンツの履歴上の表現が、クライアントコンピューティングデバイスによって前に要求されたコンテンツの表現と関連付けられた履歴上のナビゲーションパスに対応する情報を含む、得ることと、
クライアントコンピューティングデバイスから検索要求を得ることであって、クライアントコンピューティングデバイスからの検索要求が、１つ以上の検索語と関連付けられる、得ることと、
検索語に基づいて検索結果を提供することであって、検索結果が、少なくとも第１の履歴上のコンテンツ表現を含む、提供することと、を含む、コンピュータ実装方法。
付記８０．要求されたコンテンツが、ウェブページを含む、付記７９に記載のコンピュータ実装方法。
付記８１．検索語が、テキストのセグメント、日付、コンテンツの種類、ブラウズセッション識別子、ユーザ識別子、ブラウザ識別子、クライアントコンピューティングデバイス識別子、またはタグを含む、付記７９に記載のコンピュータ実装方法。
付記８２．クライアントコンピューティングデバイスによって前に要求されたコンテンツの第２の表現が、クライアントコンピューティングデバイスで表示される、付記７９に記載のコンピュータ実装方法。
付記８３．クライアントコンピューティングによって前に要求されたコンテンツの表現と関連付けられた履歴上のナビゲーションパスに対応する情報が、クライアントコンピューティングデバイスによってアクセスされる参照またはクライアントコンピューティングデバイスによってアクセスされる参照を含むネットワークリソースと関連付けられた情報を含む、付記７９に記載のコンピュータ実装方法。
付記８４．検索結果が、クライアントコンピューティングデバイスによるコンテンツのための要求と関連付けられた履歴上のナビゲーションパスに含まれるコンテンツに対応する、付記７９に記載のコンピュータ実装方法。
付記８５．コンテンツを管理するためのシステムであって、
１つ以上のコンピュータプロセッサと、
１つ以上のコンピュータプロセッサのうちの少なくとも１つによってアクセス可能な少なくとも１つのコンピュータメモリと、
１つ以上のコンピュータプロセッサによって実行される実行可能なソフトウェアモジュールを備える、ネットワークコンピューティングコンポーネントと、を備え、ネットワークコンピューティングコンポーネントが、
クライアントコンピューティングデバイスから検索要求を得ることであって、クライアントコンピューティングデバイスからの検索要求が、１つ以上の検索語と関連付けられる、得ることと、
１つ以上の履歴上のコンテンツ表現に対応する検索結果を、クライアントコンピューティングデバイスに提供することであって、１つ以上の履歴上のコンテンツ表現のそれぞれが、１つ以上の履歴上のコンテンツ表現の個々のそれぞれと関連付けられた履歴上のナビゲーションパスに対応する情報を含む、提供することと、を行うように動作可能である、システム。
付記８６．１つ以上の履歴上のコンテンツ表現の個々のそれぞれと関連付けられた履歴上のナビゲーションパスに対応する情報が、履歴上のコンテンツ表現に対応するコンテンツにアクセスするためにクライアントコンピューティングデバイスによって従われる参照、およびクライアントコンピューティングデバイスによって従われる参照を含むネットワークリソースのうちの少なくとも１つを識別する識別子を含む、付記８５に記載のシステム。
付記８７．検索結果が、現在のネットワークコンテンツに対応する検索結果を含む、付記８５に記載のシステム。
付記８８．１つ以上の履歴上のコンテンツ表現が、第１の履歴上のコンテンツ表現と関連付けられた履歴上のナビゲーションパスに含まれるコンテンツに対応する、付記８５に記載のシステム。
付記８９．第１の履歴上のコンテンツ表現と関連付けられた履歴上のナビゲーションパスに含まれるコンテンツが、第１の履歴上のコンテンツ表現の後に履歴上のナビゲーションパスに含まれるコンテンツを含む、付記８８に記載のシステム。
付記９０．前記１つ以上の履歴上のコンテンツ表現が、第１のネットワークリソースの１つ以上の履歴バージョンに対応する、付記８５に記載のシステム。
付記９１．ネットワークコンピューティングコンポーネントが、クライアントコンピューティングデバイスからの検索要求に基づいて、検索結果を決定するように更に動作可能である、付記８５に記載のシステム。
付記９２．ネットワークコンピューティングコンポーネントが、テキストのセグメント、日付、コンテンツの種類、ブラウズセッション識別子、ユーザ識別子、ブラウザ識別子、クライアントコンピューティングデバイス識別子、およびタグのうちの少なくとも１つに部分的に基づいて、検索結果を決定するように更に動作可能である、付記９１に記載のシステム。
付記９３．ネットワークコンピューティングコンポーネントが、１つ以上の履歴上のコンテンツ表現のそれぞれの色合成に少なくとも部分的に基づいて、検索結果を決定するように更に動作可能である、付記９１に記載のシステム。
付記９４．ネットワークコンピューティングコンポーネントが、それぞれの１つ以上の履歴上のコンテンツ表現に対応するコンテンツが要求された回数に少なくとも部分的に基づいて、検索結果を決定するように更に動作可能である、付記９１に記載のシステム。
付記９５．ネットワークコンピューティングコンポーネントが、それぞれの１つ以上の履歴上のコンテンツ表現に対応するコンテンツを閲覧するのに費やした時間の量に少なくとも部分的に基づいて、検索結果を決定するように更に動作可能である、付記９１に記載のシステム。
付記９６．コンテンツを管理するためのコンピュータ実装方法であって、
クライアントコンピューティングデバイスから検索要求を得ることであって、クライアントコンピューティングデバイスからの検索要求が、１つ以上の検索語と関連付けられる、得ることと、
１つ以上の履歴上のコンテンツ表現に対応する検索結果を、クライアントコンピューティングデバイスに提供することであって、１つ以上の履歴上のコンテンツ表現のそれぞれが、前記１つ以上の履歴上のコンテンツ表現の個々のそれぞれと関連付けられた履歴上のナビゲーションパスに対応する情報を含む、提供することと、を含む、コンピュータ実装方法。
付記９７．前記１つ以上の履歴上のコンテンツ表現の個々のそれぞれと関連付けられた履歴上のナビゲーションパスに対応する情報が、履歴上のコンテンツ表現に対応するコンテンツにアクセスするためにクライアントコンピューティングデバイスによって従われる参照、およびクライアントコンピューティングデバイスによって従われる参照を含むネットワークリソースのうちの少なくとも１つを識別する識別子を含む、付記９６に記載のコンピュータ実装方法。
付記９８．検索結果が、現在のネットワークコンテンツに対応する検索結果を含む、付記９６に記載のコンピュータ実装方法。
付記９９．前記１つ以上の履歴上のコンテンツ表現が、第１の履歴上のコンテンツ表現と関連付けられた履歴上のナビゲーションパスに含まれるコンテンツに対応する、付記９６に記載のコンピュータ実装方法。
付記１００．第１の履歴上のコンテンツ表現と関連付けられた履歴上のナビゲーションパスに含まれるコンテンツが、第１の履歴上のコンテンツ表現の前に履歴上のナビゲーションパスに含まれるコンテンツを含む、付記９９に記載のコンピュータ実装方法。
付記１０１．前記１つ以上の履歴上のコンテンツ表現が、第１のネットワークリソースの１つ以上の履歴バージョンに対応する、付記９６に記載のコンピュータ実装方法。
付記１０２．第１の広告と１つ以上の履歴上のコンテンツ表現のそれぞれとの間の関連付けに少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記９６に記載のコンピュータ実装方法。
付記１０３．それぞれの１つ以上の履歴上のコンテンツ表現に対応するコンテンツのための要求と関連付けられた、物理的位置および論理的位置のうちの少なくとも１つに少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記９６に記載のコンピュータ実装方法。
付記１０４．それぞれの１つ以上の履歴上のコンテンツ表現に対応するコンテンツが要求された回数に少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記９６に記載のコンピュータ実装方法。
付記１０５．クライアントコンピューティングデバイスおよびユーザと関連付けられたクライアントコンピューティングデバイスのうちの少なくとも１つによって、それぞれの前記１つ以上の履歴上のコンテンツ表現に対応するコンテンツが要求された回数に少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記１０４に記載のコンピュータ実装方法。
付記１０６．クライアントコンピューティングデバイスと関連付けられていないユーザによって、それぞれの前記１つ以上の履歴上のコンテンツ表現に対応するコンテンツが要求された回数に少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記１０４に記載のコンピュータ実装方法。
付記１０７．それぞれの前記１つ以上の履歴上のコンテンツ表現に対応するコンテンツを閲覧するのに費やした時間の量に少なくとも部分的に基づいて、検索結果を決定することを更に含む、付記９６に記載のコンピュータ実装方法。
【０１３２】
例示的な実施形態が開示され、論じられているが、当業者であれば、追加または代替の実施形態が本発明の趣旨および範囲内で実現されてもよいことを理解するであろう。例えば、本明細書に記載される技法は、画像もしくはビデオ編集ソフトウェア、データベースソフトウェア、事務所生産性ソフトウェア、３次元デザインソフトウェア、オーディオおよびサウンド処理アプリケーション等を含むが、これらに限定されない、任意の数の他のソフトウェアアプリケーションおよび処理において遠隔処理管理を可能にするために、本発明の範囲を逸脱することなく利用され得る。加えて、多くの実施形態は、例示的なものとして示されているが、当業者であれば、例示的な実施形態が一緒に組み合わされたり、または実現される必要がないことを理解するであろう。したがって、いくつかの例示的な実施形態は、本開示への変形形態の範囲に従って利用または実現される必要はない。
【０１３３】
とりわけ、「できる」、「できるであろう」、「してもよいであろう」、または「してもよい」等の条件的語法は、特定的にに別途記述されるか、または使用される文脈内で別途理解されない限り、一般的に、ある特定の実施形態がある特定の特徴、要素、および／またはステップを含む一方で、他の実施形態がそれらを含まないことを伝達するように意図される。したがって、そのような条件的語法は、一般的に、特徴、要素、および／またはステップが１つ以上の実施形態にいずれの方式でも必要とされること、あるいは１つ以上の実施形態が、ユーザ入力またはプロンプトを用いてまたは用いずに、これらの特徴、要素、および／またはステップが任意の特定の実施形態に含まれるか、またはそれらが任意の特定の実施形態において行われるべきであるかどうかを決定するための論理を必ず含むことを示唆するようには意図されない。
【０１３４】
本明細書に記載され、および／または添付された図に図示される流れ図の任意の処理の説明、要素、またはブロックは、処理における具体的な論理的機能またはステップを実装するための１つ以上の実行可能な命令を含む、モジュール、セグメント、またはコードの一部を可能性のあるものとして表すものとして理解されるべきである。当業者によって理解されるであろうが、関与する機能性に応じて、要素または機能が削除され、実質的に同時にまたは逆の順序を含めて、示されるまたは論じられる順序から外れた順序で実行され得る、代替の実装形態が、本明細書に記載される実施形態の範囲内に含まれる。上述のデータおよび／またはコンポーネントは、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、または更にネットワークインターフェース等のコンピュータ実行可能コンポーネントを格納する、コンピュータ可読と関連付けられたドライブ機構を使用して、コンピュータ可読媒体上に記憶され、コンピューティングデバイスのメモリに読み込まれてもよく、コンポーネントおよび／またはデータは、単一のデバイス内に含まれるか、または任意の様式で分散され得ることが、更に理解されるであろう。したがって、汎用コンピューティングデバイスは、上述の様々なデータおよび／またはコンポーネントの処理および／または実行と共に、本開示の処理、アルゴリズム、および手法を実現するように構成されてもよい。
【０１３５】
多くの変形形態および改変形態が上述の実施形態に対して行われてもよく、それらの要素が他の許容される実施例のうちにあるものとして理解されるべきであることが強調されるべきである。全てのそのような改変形態および変形形態は、本明細書において本開示の範囲内に含まれ、以下の特許請求の範囲によって保護されることが意図される。
【図１】
2014529153.tif 000003
【図２】
2014529153.tif 000004
【図３】
2014529153.tif 000005
【図４】
2014529153.tif 000006
【図５】
2014529153.tif 000007
【図６】
2014529153.tif 000008
【図７】
2014529153.tif 000009
【図８】
2014529153.tif 000010
【図９】
2014529153.tif 000011
【図１０】
2014529153.tif 000012
【図１１】
2014529153.tif 000013
【図１２】
2014529153.tif 000014
【図１３】
2014529153.tif 000015
【図１４】
2014529153.tif 000016
【図１５】
2014529153.tif 000017
【国際調査報告】
2014529153.tif 000018
2014529153.tif 000019
2014529153.tif 000020