(57)【特許請求の範囲】
【請求項１】
要求ルーティング機能を管理するためのコンピュータ実装方法であって、
前記方法は、１つまたは複数のコンテンツプロバイダをサービスプロバイダに前記サービスプロバイダが登録するための登録情報を前記サービスプロバイダが取得するステップを含み、前記登録することが、前記コンテンツプロバイダによって提供された１つまたは複数のリソースと関連付けられた要求ルーティング機能の少なくとも一部分をホストすることに対応し、
前記方法は、前記サービスプロバイダがＤＮＳクエリを処理および解決する際に前記サービスプロバイダによって利用される要求ルーティング情報を前記コンテンツプロバイダから前記サービスプロバイダにて取得するステップを含み、
前記方法は、クライアントコンピューティングデバイスからのＤＮＳクエリを前記サービスプロバイダが取得するステップを含み、前記ＤＮＳクエリが、第１のリソース識別子と関連付けられた、要求されたリソースに対応し、
前記方法は、前記第１のリソース識別子に含まれない補足要求ルーティング情報に基づいた、要求されたリソースのストレージコンポーネントに対応する識別子、及び前記サービスプロバイダに対応するドメインに対して解決する代替リソース識別子クエリ、および前記第１のリソース識別子に含まれない前記補足要求ルーティング情報の少なくとも１つを、前記クライアントコンピューティングデバイスに提供するステップを含む、
方法。
【請求項２】
前記ストレージコンポーネントが、前記コンテンツプロバイダ、前記サービスプロバイダ、およびネットワークストレージプロバイダのうちの少なくとも１つに対応する、
請求項１に記載の方法。
【請求項３】
前記要求ルーティング情報が、サービスレベルプラン情報および地理的選択情報のうちの少なくとも１つを含む、
請求項１または２に記載の方法。
【請求項４】
前記要求ルーティング情報が、１つまたは複数のストレージコンポーネントと関連付けられたコスト情報を含む、
請求項１から３のいずれかに記載の方法。
【請求項５】
前記サービスプロバイダによって、前記コンテンツプロバイダと関連付けられた１つまたは複数のドメインを前記サービスプロバイダに登録するためのユーザインターフェースを生成させるステップをさらに含む、
請求項１から４のいずれかに記載の方法。
【請求項６】
前記１つまたは複数のリソースが、
１つまたは複数の埋め込みリソースと、
前記コンテンツプロバイダと関連付けられたドメインと、
のうちの少なくとも１つに対応する、
請求項１から５のいずれかに記載の方法。
【請求項７】
要求ルーティングのためのシステムであって、
前記システムは、インターフェースコンポーネントと、第１のネットワークＰＯＰと、第２のネットワークＰＯＰと、を含み、
前記インターフェースコンポーネントは、サービスプロバイダにて、１つまたは複数のコンテンツプロバイダを前記サービスプロバイダに登録するための登録情報を取得し、前記登録することが、前記コンテンツプロバイダによって提供される１つまたは複数のリソースと関連付けられる要求ルーティング機能の少なくとも一部分をホストすることに対応し、
前記インターフェースコンポーネントは、ＤＮＳクエリを処理および解決する際に前記サービスプロバイダによって利用される要求ルーティング情報を取得し、
前記第１のネットワークＰＯＰは、サービスプロバイダと関連付けられ、前記第１のネットワークＰＯＰが、クライアントコンピューティングデバイスからＤＮＳクエリを受信するＤＮＳサーバコンポーネントを含み、前記ＤＮＳクエリが、第１のリソース識別子と関連付けられた、要求されたリソースに対応し、前記第１のネットワークＰＯＰにおける前記ＤＮＳサーバが、
前記第１のリソース識別子が、コンテンツプロバイダと関連付けられた要求ルーティング基準の関数として、代替リソース識別子と関連付けられることを決定するように動作可能であり、
代替リソース識別子を前記クライアントコンピューティングデバイスに転送するように動作可能であって、前記代替リソース識別子が、ＤＮＳクエリに前記サービスプロバイダに対応するドメインに対して解決させるための情報を含み、
前記第２のネットワークＰＯＰは、サービスプロバイダと関連付けられ、前記第２のネットワークＰＯＰが、クライアントコンピューティングデバイスから後次ＤＮＳクエリを受信するＤＮＳサーバコンポーネントを含み、前記後次ＤＮＳクエリが、前記代替リソース識別子と関連付けられた、要求されたリソースに対応し、前記第２のネットワークＰＯＰにおける前記ＤＮＳサーバが、
前記後次ＤＮＳクエリを解決して、前記要求されたリソースと関連付けられたコンテンツを提供するためのキャッシュコンポーネントを識別するように動作し、
前記識別されたキャッシュコンポーネントを識別する情報を前記クライアントコンピューティングデバイスに転送するように動作する、
システム。
【請求項８】
前記第１のリソース識別子が、前記要求ルーティング基準の少なくとも一部分を含む、
請求項７に記載のシステム。
【請求項９】
前記第１のネットワークＰＯＰにおける前記ＤＮＳサーバが、さらに、コスト情報の少なくとも一部分を取得するように動作する、
請求項７または８に記載のシステム。
【請求項１０】
前記代替リソース識別子が、正規名レコード識別子に対応する、
請求項７から９のいずれかに記載のシステム。
【請求項１１】
前記要求ルーティング基準が、地域サービス情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供された地域サービスプランを識別する情報を含む、
請求項７から１０のいずれかに記載のシステム。
【請求項１２】
前記クライアントコンピューティングデバイスに対する前記識別されたキャッシュコンポーネントを識別する情報が、前記コンテンツプロバイダと関連付けられたキャッシュコンポーネントのネットワークアドレスを含む、
請求項７から１１のいずれかに記載のシステム。
【請求項１３】
前記クライアントコンピューティングデバイスに対する前記識別されたキャッシュコンポーネントを識別する情報が、第三者サービスプロバイダと関連付けられたキャッシュコンポーネントのネットワークアドレスを含む、
請求項７から１２のいずれかに記載のシステム。
【請求項１４】
前記要求ルーティング基準が、コスト情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供されたコストプランを識別する情報を含む、
請求項７から１３のいずれかに記載のシステム。
【請求項１５】
前記要求ルーティング基準が、ネットワークパフォーマンス情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供されたネットワークパフォーマンスプランを識別する情報を含む、
請求項７から１４のいずれかに記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
一般に記述されるように、コンピューティングデバイスおよび通信ネットワークを利用して、情報を交換することができる。共通アプリケーションにおいて、コンピューティングデバイスは、通信ネットワークを介して別のコンピューティングデバイスからのコンテンツを要求することができる。例えば、パーソナルコンピューティングデバイスのユーザは、ソフトウェアブラウザアプリケーションを利用して、インターネットを介して、サーバコンピューティングデバイスからウェブページを要求することができる。そのような実施形態において、ユーザコンピューティングデバイスは、クライアントコンピューティングデバイスと称され、サーバコンピューティングデバイスは、コンテンツプロバイダと称され得る。
【０００２】
コンテンツプロバイダは、一般に、要求されたコンテンツをクライアントコンピューティングデバイスに提供するように動機付けられ、多くの場合、要求されたコンテンツのクライアントコンピューティングデバイスへの十分な転送および／またはコンテンツの転送と関連付けられたコストに関する考慮を伴う。より大規模な実装の場合、コンテンツプロバイダは、高容量のクライアントコンピューティングデバイスからのコンテンツ要求を受信し得、コンテンツプロバイダのコンピューティングリソース上に負担をかけ得る。加えて、クライアントコンピューティングデバイスによって要求されたコンテンツは、多数のコンポーネントを有してよく、コンテンツプロバイダのコンピューティングリソース上にさらに負担をかけ得る。
【０００３】
例示的実施例を参照して、要求されたウェブページ、またはオリジナルコンテンツは、ウェブページで表示される、画像またはビデオ等の多数の追加リソースと関連付けられ得る。特定の一実施形態において、ウェブページの追加リソースは、ユニフォームリソースロケータ（「ＵＲＬ」）等の多数の埋め込みリソース識別子によって識別される。順に、クライアントコンピューティングデバイス上のソフトウェアは、典型的に、埋め込みリソース識別子を処理して、コンテンツ要求を生成する。多くの場合、埋め込みリソースと関連付けられたリソース識別子は、コンテンツプロバイダと関連付けられたコンピューティングデバイスを参照し、クライアントコンピューティングデバイスが、追加リソース要求を参照されたコンテンツプロバイダコンピューティングデバイスに転送するようにする。したがって、コンテンツ要求を満たすために、コンテンツプロバイダ（またはコンテンツプロバイダの代わりに任意のサービスプロバイダ）は、ウェブページと関連付けられたクライアントコンピューティングデバイスデータ、および／または埋め込みリソースと関連付けられたデータを提供する。
【０００４】
コンテンツプロバイダは、一般に、要求されたコンテンツをクライアントコンピューティングデバイスに提供するように動機付けられ、多くの場合、要求されたコンテンツのクライアントコンピューティングデバイスへの十分な転送および／またはコンテンツの転送と関連付けられたコストに関する考慮を伴う。したがって、コンテンツプロバイダは、多くの場合、サービスレベル同意を満たすため、または概して配信サービスの質を向上させるために、クライアントコンピューティングデバイス要求を処理する際に、要求されたコンテンツの配信の待ち時間等の要因を考慮する。
【０００５】
前述の態様および本発明に伴う利益の多くは、付随する図面と併せて見られると、以下の詳細な説明への言及によってより良好に理解されるとき、より容易に理解されるであろう。
【図面の簡単な説明】
【０００６】
【図１】多数のクライアントコンピューティングデバイス、コンテンツプロバイダ、ネットワークストレージプロバイダ、およびコンテンツ配信ネットワークサービスプロバイダを含む、コンテンツ配信環境を示すブロック図である。
【図２】コンテンツプロバイダをネットワークストレージプロバイダとともに登録することを示す、図１のコンテンツ配信環境のブロック図である。
【図３】コンテンツプロバイダをネットワークストレージプロバイダとともに登録することを示す、図１のコンテンツ配信環境のブロック図である。
【図４Ａ】クライアントコンピューティングデバイスによって生成されたリソース要求の処理の一実施形態を示す、図１のコンテンツ配信環境のブロック図である。
【図４Ｂ】クライアントコンピューティングデバイスによって生成されたリソース要求の処理の一実施形態を示す、図１のコンテンツ配信環境のブロック図である。
【図４Ｃ】クライアントコンピューティングデバイスによって生成されたリソース要求の処理の一実施形態を示す、図１のコンテンツ配信環境のブロック図である。
【図５】サービスプロバイダによって実装されるコンテンツプロバイダ登録処理ルーチンを示すフロー図である。
【図６】サービスプロバイダによって実装される要求ルーティング処理ルーチンを示すフロー図である。
【図７】要求ルーティングサービスをサービスプロバイダとともに登録する際に使用するための例示的ユーザインターフェース表示情報である。
【発明を実施するための形態】
【０００７】
一般的に記述すると、本開示は、コンテンツプロバイダと関連付けられた１つまたは複数のリソースに対するリソース要求と関連付けられた要求ルーティング機能を管理することを目的とする。特に、本開示の態様は、コンテンツプロバイダに代わりに、サービスプロバイダ、例えば、コンテンツ配信ネットワーク（「ＣＤＮ」）サービスプロバイダによる要求ルーティング機能の管理および処理に関して説明される。例示的に、要求ルーティング機能は、コンピューティングデバイスによるリソースのドメインネームサービス（「ＤＮＳ」）要求の処理、および要求されたリソースを提供するコンピューティングデバイスのネットワークアドレスの識別によるＤＮＳ要求の解決に対応することができる。伝統的なＣＤＮサービスプロバイダ実装とは異なり、サービスプロバイダによるＤＮＳ要求の処理は、コンテンツプロバイダによって、またはコンテンツプロバイダの代わりにコンテンツのストレージから分離され得る。加えて、サービスプロバイダによるＤＮＳ要求の処理は、コンテンツプロバイダによって、またはコンテンツプロバイダの代わりにコンテンツの配信から分離することもできる。
【０００８】
本開示の様々な態様は、例示的実施例および実施形態に関して説明されるが、当業者であれば、開示される実施形態および実施例が、限定するものとして見なされるべきでないことを理解するであろう。例えば、本開示は、ネットワークベースストレージサービス、キャッシングサービス、およびコンテンツ配信サービスを含む、追加サービスおよび機能性を提供し得る、サービスプロバイダ、例えば、ＣＤＮサービスプロバイダ等によって提供される要求ルーティングサービスに関して説明され得る。しかしながら、当業者であれば、サービスプロバイダは、ＣＤＮサービスプロバイダ等のいくつかのサービスプロバイダと関連付けられ得る、追加サービスまたは機能性のすべてまたはいずれかを提供する必要がないことを理解するであろう。
【０００９】
図１は、コンテンツプロバイダをＣＤＮサービスプロバイダ等のサービスプロバイダとともに登録することを管理するためのコンテンツ配信環境１００、およびコンテンツプロバイダの代わりにコンテンツ要求の少なくとも一部分の後次処理を示すブロック図である。図１に例示されるように、コンテンツ配信環境１００は、コンテンツプロバイダ、ネットワークストレージプロバイダ１１０、および／またはＣＤＮサービスプロバイダ１０６からコンテンツを要求するために、多数のクライアントコンピューティングデバイス１０２（一般にクライアントと称される）を含む。例示的実施形態において、クライアントコンピューティングデバイス１０２は、パーソナルコンピューティングデバイス、ラップトップコンピューティングデバイス、携帯型コンピューティングデバイス、端末コンピューティングデバイス、モバイルデバイス、ワイヤレスデバイス、様々な電子デバイスおよび機器等を含む、多様なコンピューティングデバイスに対応することができる。例示的実施形態において、クライアントコンピューティングデバイス１０２は、広域ネットワークまたはローカルエリアネットワーク等の通信ネットワーク１０８上で通信を確立するために必要なハードウェアおよびソフトウェアコンポーネントを含む。例えば、クライアントコンピューティングデバイス１０２は、インターネットまたはイントラネットを介して通信を促進する、ネットワーク機器およびブラウザソフトウェアアプリケーションを備えてもよい。
【００１０】
図１に示されていないが、それぞれのクライアントコンピューティングデバイス１０２は、クライアントコンピューティングデバイスに起因するＤＮＳクエリを生成する、ＤＮＳネームサーバ等のいくつかのタイプのローカルＤＮＳリゾルバコンポーネントを利用する。一実施形態において、ローカルＤＮＳリゾルバコンポーネントは、クライアントコンピューティングデバイス１０２が属する、エンタープライズネットワークによって提供され得る。別の実施形態において、ローカルＤＮＳリゾルバコンポーネントは、クライアントコンピューティングデバイス１０２に対して通信ネットワーク接続を提供する、インターネットサービスプロバイダ（ＩＳＰ）によって提供されてもよい。
【００１１】
コンテンツ配信環境１００は、通信ネットワーク１０８を介して１つまたは複数のクライアントコンピューティングデバイス１０２と通信する、コンテンツプロバイダ１０４を含むこともできる。図１に示されるコンテンツプロバイダ１０４は、コンテンツプロバイダと関連付けられた１つまたは複数のコンピューティングデバイスの論理関係に対応する。特に、コンテンツプロバイダ１０４は、クライアントコンピューティングデバイス１０２からコンテンツ（例えば、ウェブページ）要求を取得および処理するための１つまたは複数のサーバコンピューティングデバイスに対応するウェブサーバコンポーネント１１２を含むことができる。コンテンツプロバイダ１０４は、ネットワークリソース要求を取得および処理するための１つまたは複数のコンピューティングデバイスに対応する、オリジンサーバコンポーネント１１４および関連ストレージコンポーネント１１６をさらに含むことができる。当業者であれば、コンテンツプロバイダ１０４が、様々な追加コンピューティングリソース、例えば、コンテンツおよびリソースの管理のための追加コンピューティングデバイス等と関連付けられ得ることを理解するであろう。加えて、オリジンサーバコンポーネント１１４および関連ストレージコンポーネント１１６は、コンテンツプロバイダ１０４と論理的に関連付けられるが、オリジンサーバコンポーネント１１４および関連付けられたストレージコンポーネント１１６は、クライアントコンピューティングデバイス１０２の様々な人口統計に最善に機能する方法で、通信ネットワーク１０８にわたって地理的に分布され得る。
【００１２】
図１にさらに示されるように、コンテンツプロバイダ１０４は、コンテンツプロバイダと関連付けられた登録ドメイン名に関連するＤＮＳクエリを受信するように動作する、１つまたは複数のＤＮＳネームサーバコンポーネント１１８と関連付けることができる。１つまたは複数のＤＮＳネームサーバは、コンテンツプロバイダ１０４の登録ドメイン名に対応するクライアントコンピューティングデバイスＤＮＳクエリを解決する権限があり得る。ＤＮＳネームサーバコンポーネントは、ＤＮＳネームサーバが応答ＩＰアドレスを提供することによって、クエリを解決できる場合に、ＤＮＳクエリに対して権限があると考えられる。以下でさらに詳細に説明されるように、例示的な実施形態に従って、要求ルーティング機能プロバイダ、ＤＮＳネームサーバコンポーネント１１８の少なくとも一部分は、サービスプロバイダによって提供される。
【００１３】
引き続き図１を参照して、コンテンツ配信環境１００は、１つまたは複数のクライアントコンピューティングデバイス１０２、コンテンツプロバイダ１０４、およびネットワークストレージプロバイダ１１０と通信ネットワーク１０８を介して通信する、サービスプロバイダ１０６をさらに含むことができる。図１に示されるサービスプロバイダ１０６は、サービスプロバイダと関連付けられた１つまたは複数のコンピューティングデバイスの論理関連に対応する。特に、サービスプロバイダ１０６は、通信ネットワーク１０８上のノードに対応する、多数の「ＰＯＰ」（Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｃｅ）位置１２０、１２６、１３２を含むことができる。それぞれのＰＯＰ１２０、１２６、１３２は、クライアントコンピュータ１０２からのＤＮＳクエリを解決するための多数のＤＮＳサーバコンピューティングデバイスで形成される、ＤＮＳコンポーネント１２２、１２８、１３４を含む。それぞれのＰＯＰ１２０、１２６、１３２は、コンテンツプロバイダまたはネットワークストレージプロバイダからのリソースを保管し、様々な要求されたリソースを様々なクライアントコンピュータに転送するための多数のキャッシュサーバコンピューティングデバイスで形成されたリソースキャッシュコンポーネント１２４、１３０、１３６を任意に含む。ＤＮＳコンポーネント１２２、１２８、１３４およびリソースキャッシュコンポーネント１２４、１３０、１３６は、ロードバランシングまたはロードシェアリングソフトウェア／ハードウェアコンポーネントを含むが、これらに限定されない通信を促進する、追加のソフトウェアおよび／またはハードウェアコンポーネントをさらに含んでもよい。
【００１４】
例示の実施形態において、ＤＮＳコンポーネント１２２、１２８、１３４、およびリソースキャッシュコンポーネント１２４、１３０、１３６は、コンポーネントまたはコンポーネントの一部分が物理的に分離しているか否かに関わらず、論理的に分類されると考えられる。加えて、ＰＯＰ１２０、１２６、１３２は、図１において、ＣＤＮサービスプロバイダ１０６と論理的に関連付けられて示されるが、ＰＯＰは、クライアントコンピューティングデバイス１０２の様々な人口統計に最善に機能する方法で、通信ネットワーク１０８にわたって地理的に分布される。さらに、当業者であれば、サービスプロバイダ１０６が、コンテンツおよびリソース等を管理するための追加コンピューティングデバイスのような様々な追加コンピューティングリソースと関連付けられ得ることを理解するであろう。
【００１５】
さらに引き続き図１を参照して、コンテンツ配信環境１００は、１つまたは複数のクライアントコンピューティングデバイス１０２、サービスプロバイダ１０６、およびコンテンツプロバイダ１０４を、通信ネットワーク１０８を介して通信するネットワークストレージプロバイダを含むこともできる。図１に示されるネットワークストレージプロバイダ１１０は、ネットワークストレージプロバイダと関連付けられる１つまたは複数のコンピューティングデバイスの論理関連にも対応する。特に、ネットワークストレージプロバイダ１１０は、通信ネットワーク１０８上のノードに対応する、多数のＮＳＰ  ＰＯＰ（ｎｅｔｗｏｒｋ  ｓｔｏｒａｇｅ  ｐｒｏｖｉｄｅｒ  Ｐｏｉｎｔ  ｏｆ  Ｐｒｅｓｅｎｃｅ）位置１３８、１４２を含むことができる。それぞれのＮＳＰ  ＰＯＰ１３８、１４２は、ネットワークストレージプロバイダ１１０によって処理され、様々なクライアントコンピュータに転送される、コンテンツプロバイダからのリソースを保管するための多数のストレージデバイスで形成される、ストレージコンポーネント１４０、１４４を含む。ストレージコンポーネント１４０、１４４は、ロードバランシングまたはロードシェアリングソフトウェア／ハードウェアコンポーネントを含むが、これらに限定されない、通信を促進する追加のソフトウェアおよび／またはハードウェアコンポーネントをさらに含んでもよい。
【００１６】
例示的実施形態において、ストレージコンポーネント１４０、１４４は、コンポーネントまたはコンポーネントの一部分が物理的に分離しているか否かに関わらず、論理的に分類されると考えられる。加えて、ＮＳＰ  ＰＯＰ１３８、１４２は、図１において、ネットワークストレージプロバイダ１１０と論理的に関連付けられて示されるが、ＮＳＰ  ＰＯＰは、クライアントコンピューティングデバイス１０２の様々な人口統計に最善に機能する方法で、通信ネットワーク１０８にわたって地理的に分布される。さらに、当業者であれば、ネットワークストレージプロバイダ１１０が、コンテンツおよびリソース、ＤＮＳネームサーバ等を管理するための追加コンピューティングデバイスのような様々な追加コンピューティングリソースと関連付けられ得ることを理解するであろう。例えば、ネットワークストレージプロバイダ１１０は、ネットワークストレージプロバイダ１１０と関連づけられた、登録されたドメイン名に関連するＤＮＳクエリを受信するように動作する、１つまたは複数のＤＮＳネームサーバコンポーネントと関連付けられ得る。１つまたは複数のＤＮＳネームサーバは、ネットワークストレージプロバイダ１１０の登録されたドメイン名に対応する、クライアントコンピューティングデバイスＤＮＳクエリを解決する権限があり得る。上記と同様に、ＤＮＳネームサーバコンポーネントは、ＤＮＳネームサーバが、応答ＩＰアドレスを提供することによってクエリを解決することができる場合、ＤＮＳにクエリに対して権限があると考えられる。
【００１７】
なおもさらに、当業者であれば、ネットワークストレージプロバイダ１１０のコンポーネントおよびサービスプロバイダ１０６のコンポーネントが、同一または異なるエンティティによって管理され得ることを理解するであろう。当業者であれば、図１に提供されるコンポーネントおよび構成が、例示的性質であることも理解するであろう。したがって、特に通信を促進するための追加コンポーネント、システム、およびサブシステムに関する、追加または代替コンポーネントおよび／または構成が利用されてもよい。特に、当業者であれば、ネットワークストレージプロバイダ１１０が、コンテンツ配信環境１００から省略され得ることを理解するであろう。
【００１８】
ここで図２〜４Ｃを参照して、図１のコンテンツ配信環境１００の様々なコンポーネント間の相互作用が示される。しかしながら、例示の目的で、図は簡略化されているため、通信を促進するために利用されるコンポーネントの多くは図示されない。当業者であれば、そのようなコンポーネントが利用され得ること、およびしたがって追加の相互作用が本開示の趣旨および範囲から逸脱することなく起こることを理解するであろう。
【００１９】
図２を参照して、コンテンツプロバイダ１０４の代わりにコンテンツをホストするために、コンテンツプロバイダ１０４をネットワークストレージプロバイダ１１０とともに任意登録するための例示的相互作用が説明される。図２に示されるように、ストレージプロバイダコンテンツ登録プロセスは、コンテンツプロバイダ１０４をネットワークストレージプロバイダ１１０とともに登録することから開始する。例示的実施形態において、コンテンツプロバイダ１０４は、登録アプリケーションプログラムインターフェース（「ＡＰＩ」）を利用して、ネットワークストレージプロバイダ１１０とともに登録して、ネットワークストレージプロバイダ１１０が、コンテンツプロバイダ１０４の代わりにコンテンツを提供できるようにする。登録ＡＰＩは、要求されたリソースをネットワークストレージプロバイダ１１０に提供し得る、コンテンツプロバイダ１０４のオリジンサーバ１１４の識別を含むことができる。追加または代替として、登録ＡＰＩは、コンテンツプロバイダ１０４の代わりにネットワークストレージプロバイダ１１０によって保管されるコンテンツを含むことができる。一実施形態において、ネットワークストレージプロバイダ１１０は、コンテンツプロバイダ１０４のオリジンサーバとして作動し得る。
【００２０】
当業者であれば、ネットワークストレージプロバイダ１１０によりコンテンツが保管されると、クライアントコンピューティングデバイス１０２からのコンテンツ要求をネットワークストレージプロバイダ１１０に向かわせることを、コンテンツプロバイダ１０４が開始できるようになることを理解する。特に、ＤＮＳルーティングの原理に従って、リソース識別子に対応するクライアントコンピューティングデバイス要求は、最終的に、ネットワークストレージプロバイダ１１０と関連付けられたＮＳＰ  ＰＯＰ１３８、１４２のストレージコンポーネント１４０、１４０、１４４に向けられる。クライアントコンピューティングデバイス要求の要求ルーティングは、以下でさらに詳述される。
【００２１】
引き続き図２を参照して、登録ＡＰＩを受信すると、ネットワークストレージプロバイダ１１０は、コンテンツプロバイダ登録情報を取得および処理する。例示的実施形態において、ネットワークストレージプロバイダ１１０は、次にコンテンツ要求の一部として、クライアントコンピューティングデバイス１０２によって使用される追加情報を生成することができる。追加情報は、これに限定されないが、コンテンツプロバイダ識別子、例えば、コンテンツプロバイダ識別コード、ストレージプロバイダ識別子、例えば、ストレージプロバイダ識別コード、リソース識別子を処理するための実行可能なコード、例えば、スクリプトベースの命令等を含むことができる。当業者であれば、様々なタイプの追加情報が、ネットワークストレージプロバイダ１１０によって生成され得ること、および追加の情報が多様な形態のうちのいずれか１つにおいて具体化され得ることを理解するであろう。
【００２２】
一実施形態において、ネットワークストレージプロバイダ１１０は、ネットワークストレージプロバイダの適用可能なドメインの識別（以前に提供されていない限り）、および任意の追加情報をコンテンツプロバイダ１０４に戻す。順に、コンテンツプロバイダ１０４は、次に、保管されたコンテンツをコンテンツプロバイダに特異的な情報を用いて処理することができる。一実施例において、図２に示されるように、コンテンツプロバイダ１０４は、オリジンサーバ１１４のドメインへと本来向けられているリソース識別子をネットワークストレージプロバイダ１１０に対応するドメインに翻訳する。翻訳されたＵＲＬは、翻訳されたＵＲＬのＤＮＳクエリが、コンテンツプロバイダ１０４に対応するＤＮＳサーバではなく、ネットワークストレージプロバイダ１１０に対応するＤＮＳサーバに対して解決するような方法で、要求されたコンテンツに埋め込まれる。
【００２３】
概して、コンテンツプロバイダ１０４に本来向けられているリソースの識別は、クライアントコンピューティングデバイス１０２によって、例えばブラウザソフトウェアアプリケーションを通じて処理され得る、リソース識別子の形態である。例示の実施形態において、リソース識別子は、ユニフォームリソースロケータ（「ＵＲＬ」）の形態であり得る。リソース識別子は、コンテンツプロバイダに向けられた、要求されたコンテンツに含まれるため、リソース識別子は、一般に「コンテンツプロバイダＵＲＬ」と称され得る。例示の目的で、コンテンツプロバイダＵＲＬは、コンテンツプロバイダ１０４のドメイン（例えば、「ｃｏｎｔｅｎｔｐｒｏｖｉｄｅｒ．ｃｏｍ」）、要求されるリソースの名前（例えば、「ｒｅｓｏｕｒｃｅ．ｘｘｘ」）、およびリソースが見出されるパス（例えば、「ｐａｔｈ」）を識別することができる。この例示的実施例において、コンテンツプロバイダＵＲＬは以下の形態を有する。
http://www.contentprovider.com/path/resource.xxx
【００２４】
代替実施形態において、コンテンツプロバイダ１０４によって提供されるリソース識別子は、ネットワークストレージプロバイダ１１０、またはコンテンツプロバイダの代わりにコンテンツをホストする、ネットワークストレージプロバイダに対応することができる。これらのリソース識別子は、一般に、ネットワークストレージプロバイダＵＲＬと称され得る。ネットワークストレージプロバイダＵＲＬは、ネットワークストレージプロバイダ１１０のドメイン（例えば、「ｓｔｏｒａｇｅｐｒｏｖｉｄｅｒ．ｃｏｍ」）、要求されるリソースの同一名（例えば、「ｒｅｓｏｕｒｃｅ．ｘｘｘ」）、及びリソースが見出される同一パス（例えば、「ｐａｔｈ」）を識別する。加えて、ネットワークストレージプロバイダＵＲＬは、追加の処理情報（例えば、「ａｄｄｉｔｉｏｎａｌ  ｉｎｆｏｒｍａｔｉｏｎ」）、例えば、要求ルーティング情報または識別情報、例えば、コンテンツプロバイダ識別子を含み得る。例示的に、ネットワークストレージプロバイダＵＲＬは、以下の形態を有する。
http://additional information.storageprovider.com/path/resource.xxx
【００２５】
別の実施形態において、ネットワークストレージプロバイダ１１０と関連付けられた情報は、ネットワークストレージプロバイダＵＲＬにおいて、例えば、プリペンドまたは他の技術を通じて含まれ、ネットワークストレージプロバイダＵＲＬが、オリジナルＵＲＬと関連付けられた情報のすべてを維持することができる。この実施形態において、ネットワークストレージプロバイダＵＲＬは、以下の形態を有する。
http://additional information.storageprovider.com/www.contentprovider.com /path/resource.xxx
【００２６】
ここで図３を参照して、サービスプロバイダ１０６によって提供された要求ルーティングサービスを利用するために、コンテンツプロバイダ１０４による登録のための例示的相互作用が説明される。図３に例示されるように、サービスプロバイダ１０６によって提供される要求ルーティングサービス登録プロセスは、コンテンツプロバイダ１０４をサービスプロバイダ１０６とともに登録することから開始する。例示的実施形態において、コンテンツプロバイダ１０４は、登録アプリケーションプログラムインターフェース（「ＡＰＩ」）を利用して、サービスプロバイダ１０６とともに登録して、サービスプロバイダ１０６が、コンテンツプロバイダ１０４の代わりに要求ルーティングサービスを提供することができる。登録ＡＰＩは、サービスプロバイダ１０６が権限を有するドメインの識別（例えば、「ｃｏｎｔｅｎｔｐｒｏｖｉｄｅｒ．ｃｏｍ」）、要求されたリソースをクライアントコンピューティングデバイス１０２に提供する、ネットワークストレージプロバイダ１１０またはオリジンサーバ１１４のストレージコンポーネント１４０、１４４の識別を含む。登録ＡＰＩは、以下で説明されるように、要求ルーティング情報、識別情報、またはコンテンツプロバイダ１０４の代わりにクライアントコンピューティングデバイスＤＮＳ要求を解決するために使用される他の情報を含む追加の情報を含むこともできる。ＤＮＳ要求ルーティングサービスの手動構成に使用するための例示的画面表示は、図７に関して説明される。
【００２７】
サービスプロバイダ１０６は、登録ＡＰＩを取得し、情報を処理する。一態様において、サービスプロバイダ１０６は、クライアントコンピューティングデバイスＤＮＳクエリの解決に利用され得る、必須の要求処理ルールまたは代替識別子を生成し得る。別の態様において、サービスプロバイダ１０６は、コンテンツプロバイダ１０４によって特定された関連ドメインのそのＤＮＳネームサーバコンポーネントの登録を生じ得る。サービスプロバイダ１０４は、次に確認等の応答をコンテンツプロバイダ１０４に送信する。
【００２８】
例示的に、ネットワークストレージプロバイダ１１０の適切なストレージコンポーネント１４０、１４４、１４８の任意の識別が行われ、さらに要求ルーティング機能がサービスプロバイダ１０６とともに登録されると、コンテンツプロバイダ１０４は、図４Ａ〜４Ｃおよび４Ｂを参照して以下でさらに説明される一実施形態において、クライアントコンピューティングデバイス１０２の代わりに生成されたコンテンツのＤＮＳ要求の処理を開始する。特に、ＤＮＳルーティングの原則に従って、リソース識別子に対応するクライアントコンピューティングデバイスＤＮＳクエリは、サービスプロバイダ１０６と関連付けられたＤＮＳネームサーバによって、オリジンサーバコンポーネント１１４および関連ストレージコンポーネント１１６またはネットワークストレージプロバイダ１１０のストレージコンポーネント１４０、１４４、１４８のいずれかに対応するネットワークアドレスを識別することによって、最終的に解決される。
【００２９】
最初に図４Ａを参照して、相互作用は、クライアントコンピューティングデバイス１０２から、例えば、ブラウザソフトウェアアプリケーションを通じてコンテンツの要求の生成から開始する。コンテンツの第１の要求は、多くの場合、オリジナルリソース要求と称され、多くの場合、ウェブページ（または他のネットワークリソース）の要求に対応し得る。図４Ａに示されるように、オリジナルリソース要求は、コンテンツプロバイダ１０４によって受信および処理される。例示的実施形態に従って、コンテンツの要求は、共通のネットワークプロトコル、例えば、ハイパーテキスト転送プロトコル（「ＨＴＴＰ」）等に従い得る。コンテンツ要求の受信時に、コンテンツプロバイダ１０４は、適切な応答コンテンツを識別する。例示的実施形態において、要求されたコンテンツは、ハイパーテキストマークアップ言語（「ＨＴＭＬ」）、拡張可能マークアップ言語（「ＸＭＬ」）等の情報の処理を介して、クライアントコンピューティングデバイス１０２上に表示されるウェブページに対応することができる。コンテンツプロバイダ１０４は、例えば、ウェブサーバコンポーネント１１２を介して、要求されたリソースを戻し、多数の埋め込みリソースをオリジナル要求リソースに含めることができる。例えば、ウェブページは、クライアントコンピューティングデバイス１０２によって表示される多数の埋め込み画像およびデータファイルへの参照を含み得る。
【００３０】
ここで図４Ｂを参照して、要求されたコンテンツの受信時に、クライアントコンピューティングデバイス１０２は、例えばブラウザソフトウェアアプリケーションを通じて、コンテンツに含まれるマークアップコードのいずれかの処理を開始し、埋め込みリソース識別子（例えば、埋め込み修飾ＵＲＬ）によって識別されたリソースを取得しようとする。したがって、コンテンツを取得することにおける第１のステップは、クライアントコンピューティングデバイス１０２による（そのローカルＤＮＳリゾルバを通じた）、リソース識別子のＤＮＳクエリ（例えば、オリジナルＵＲＬまたはネットワークストレージプロバイダＵＲＬ）の発行に対応して、ＵＲＬの「．」および「ｃｏｍ」部分に対して権限のあるＤＮＳサーバの識別をもたらす。ＵＲＬの「．」および「ｃｏｍ」部分に従って修飾ＵＲＬを部分的に解決した後、クライアントコンピューティングデバイス１０２は、次にＵＲＬの別のＤＮＳクエリを発行し、ＵＲＬの「．ｃｏｎｔｅｎｔｐｒｏｖｉｄｅｒ」および「ｓｔｏｒａｇｅｐｒｏｖｉｄｅｒ」部分をもたらす。ＵＲＬ、例えばオリジナルＵＲＬまたはネットワークストレージプロバイダＵＲＬの「．」および「ｃｏｍ」部分に対応するＤＮＳクエリの発行は、よく知られているため説明されていない。
【００３１】
例示の実施形態において、「ｃｏｎｔｅｎｔｐｒｏｖｉｄｅｒ」に対して権限のあるＤＮＳサーバの識別は、サービスプロバイダ１０６と関連付けられたＤＮＳサーバのＩＰアドレスに対応する。一実施形態において、ＩＰアドレスは、サービスプロバイダ１０６と関連付けられた特定のＰＯＰのＤＮＳサーバコンポーネントに固有の特定ネットワークアドレスである。別の実施形態において、ＩＰアドレスは、サービスプロバイダ１０６と関連付けられた１つまたは複数のＰＯＰによって共有することができ、地理的または論理的に分配され得る。この実施形態において、共有ＩＰアドレスに対するＤＮＳクエリは、一対多ネットワークルーティングスキーマ、例えば、エニーキャストを利用し、そのような特定ＰＯＰは、ネットワークトポロジーの関数として要求を受信する。例えば、エニーキャスト実装において、クライアントコンピューティングデバイス１０２によって共有ＩＰアドレスに対して発行されたＤＮＳクエリは、クライアントコンピューティングデバイスから、多くの場合ネットワークホップと称される最短ネットワークトポロジー距離を論理的に有する、サービスプロバイダ１０６のＤＮＳサーバコンポーネントに到着する。ネットワークトポロジー距離は、必ずしも地理的距離に対応するとは限らない。しかしながら、いくつかの実施形態において、ネットワークトポロジー距離は、クライアントコンピューティングデバイス１０２とサービスプロバイダＰＯＰとの間の最短ネットワーク距離となると推定され得る。
【００３２】
引き続き図４Ｂを参照して、サービスプロバイダ１０６におけるＤＮＳサーバの１つが要求を受信すると、特定のＤＮＳサーバは、要求を解決しようとする。例示的実施形態において、特定のＤＮＳサーバは、ネットワークストレージプロバイダストレージコンポーネント１４２、１４８、１５４のＩＰアドレス（図１）またはオリジンサーバコンポーネント１１４および要求されたリソースの要求を処理する、関連ストレージコンポーネント１１６（図１）を識別することによって、ＤＮＳクエリを解決することができる。ネットワークストレージプロバイダストレージコンポーネント１４２、１４８、１５４（図１）の識別されたＩＰアドレスまたはオリジンサーバコンポーネント１１４および関連ストレージコンポーネント１１６（図１）は、一般的に「ストレージコンポーネント」または「選択されたストレージコンポーネント」と称される。例示的に、サービスプロバイダ１０６は、コンテンツプロバイダ１０４によって提供される情報、サービスプロバイダ１０６によって維持される情報、および第三者によって提供される情報を利用して、クライアントコンピューティングデバイスＤＮＳクエリを解決することができる。
【００３３】
例示の実施形態において、サービスプロバイダ１０６は、コスト情報を利用して、少なくとも一部は、ＤＮＳ要求を解決し、要求されたリソース要求を処理する（または処理することができる）１つまたは複数のストレージコンポーネントのＩＰアドレスを識別する（例えば、クライアントコンピューティングデバイスＤＮＳクエリを解決する）。コスト情報の関数としてのＤＮＳクエリの解決は、サーバプロバイダ１０６によって維持されるコスト情報またはＤＮＳクエリの一部として転送されるコスト情報（例えば、ＵＲＬに含まれるコスト情報）に依存し得る。一実施例において、コスト情報は、コンテンツプロバイダ１０４が、サービスプロバイダ１０６が、要求されたリソースを提供するように、コンテンツプロバイダ１０４に対する最低現行コストと関連付けられた要求されたリソース要求を処理する、ストレージコンポーネントを選択するように要求したことを指定し得る。したがって、サービスプロバイダ１０６は、コンテンツプロバイダ１０４からコスト情報を得て、ＤＮＳクエリを解決する際にコスト情報を利用することができる。別の実施例において、サービスプロバイダ１０６は、サービスプロバイダの関連コンポーネントが、コンテンツプロバイダ１０４の代わりに要求されたリソースも提供している場合、要求されたリソースを配信するように、サービスプロバイダに対する属性コストに関連付けられたコスト情報を利用することができる。
【００３４】
別の実施形態において、サービスプロバイダ１０６は、地理的基準に従ってＤＮＳクエリを解決しようとすることができる。地理的基準は、サービスプロバイダ１０６とコンテンツプロバイダ１０４、またはストレージコンポーネントとコンテンツプロバイダ１０４との間で契約された地理的地域サービスプランに対応することができる。したがって、コンテンツプロバイダの地域プランに対応しない地域において受信されるクライアントコンピューティングデバイス１０２ＤＮＳクエリは、コンテンツプロバイダの地域プランに対応する地域において、ストレージコンポーネントによってより良好に処理され得る。この実施例において、ＤＮＳサーバコンポーネント１１８はまた、地理的情報をクライアントコンピューティングデバイス１０２から直接（例えば、クライアントコンピューティングデバイスまたはＩＳＰによって提供される情報）または間接的に得てもよい（例えば、クライアントコンピューティングデバイスのＩＰアドレスによって推定される）。
【００３５】
さらなる実施形態において、サービスプロバイダ１０６は、サービスレベル基準に従ってＤＮＳクエリを解決しようとすることができる。サービスレベル基準は、サービスプロバイダ１０６とコンテンツプロバイダ１０４、またはストレージコンポーネントとコンテンツプロバイダ１０４との間で契約されたサービスまたはパフォーマンス基準に対応し得る。パフォーマンス基準の例には、クライアントコンピューティングデバイス１０２への転送と関連付けられたデータ転送の待ち時間の閾値、コンテンツプロバイダ１０４の代わりに提供された総データ、データ転送のエラー率等が挙げられ得る。
【００３６】
なおもさらなる実施形態において、サービスプロバイダ１０６は、ネットワークパフォーマンス基準に従って、ＤＮＳクエリを解決するように試行することができる。ネットワークパフォーマンス基準は、サービスプロバイダ１０６からクライアントコンピューティングデバイス１０２またはストレージコンポーネントからクライアントコンピューティングデバイスにデータを転送するためのネットワークパフォーマンスの測定値に対応することができる。ネットワークパフォーマンス基準の例には、ネットワークデータ転送待ち時間（クライアントコンピューティングデバイス１０２またはサービスプロバイダ１０６によって測定される）、ネットワークデータエラー率等が挙げられ得る。
【００３７】
ストレージコンポーネントを選択する（例えば、ＤＮＳクエリを解決する）代わりに、ＣＤＮサービスプロバイダ１０６は、種々の代替リソース識別子のセットを維持することができる。代替リソース識別子は、ＣＤＮサービスプロバイダ１０６によってクライアントコンピューティングデバイス１０２に提供され、代替リソース識別子上の後次ＤＮＳクエリが、ＣＤＮサービスプロバイダのネットワーク内の異なるＤＮＳサーバに対して解決するようにする。そのような実施形態において、受信するＤＮＳネームサーバは、代替リソース識別子を１つまたは複数の正規名（「ＣＮＡＭＥ」）レコードの形態で利用して、追加の要求ルーティング情報を提供してもよい。一実施形態において、それぞれのＣＮＡＭＥレコードは、サービスプロバイダのドメインを識別する（例えば、「ｓｅｒｖｉｃｅｐｒｏｖｉｄｅｒ．ｃｏｍ」または「ｓｅｒｖｉｃｅｐｒｏｖｉｄｅｒ-ｌ．ｃｏｍ」）。以下で詳細に説明されるように、ＣＮＡＭＥのドメインは、オリジナルＵＲＬまたはネットワークストレージプロバイダＵＲＬにおいて見出される同一ドメインである必要はない。なおもさらに、ＣＮＡＭＥのドメインは、コンテンツプロバイダに対して固有であり得るか、または多数のコンテンツプロバイダの代わりにサービスプロバイダによって利用される共通ドメインであってもよい。さらに、それぞれのＣＮＡＭＥレコードは、要求ルーティング情報（例えば、「要求ルーティング情報」）等の追加情報が挙げられる。例示のＣＮＡＭＥレコードは、以下の形態を有し得る。
CNAME  request_routing_information.serviceprovider.com
【００３８】
上述の情報と同様の方法で、例示の実施形態において、それぞれのＣＮＡＭＥレコードは、ＤＮＳクエリを処理するために受信ＤＮＳネームサーバによって利用される追加の情報を含む。例示の実施形態において、追加情報は、要求ルーティング処理中にサービスプロバイダ１０６によって利用される情報または基準を含み得る。ＣＮＡＭＥに含まれる追加の情報は、オリジナルＵＲＬもしくはネットワークストレージプロバイダＵＲＬにおいて提供される同一のコスト情報、またはサービスプロバイダ１０６によって得られ、コンテンツプロバイダ１０４によって以前に提供される追加／代替コスト情報であり得る。例示的に、追加の情報は、コスト情報、サービスレベル情報、ネットワークパフォーマンス情報、クライアント識別子、コンテンツプロバイダ識別子、または追加の要求ルーティング情報を検索要求するために使用される他の識別子を含むことができる。例示のＣＮＡＭＥレコードは、以下の形態を有し得る。
CNAME  request_routing_information.cost_information.cdnprovider.com
【００３９】
例示の実施形態において、ＣＮＡＭＥレコードは、サービスプロバイダ１０６のより適切なＤＮＳサーバに向かうように、ＤＮＳサーバによって生成および提供される。本開示に従って使用されると、様々な目的でサービスプロバイダ１０６によって任意の方法で、妥当性を定義することができる。例示の実施形態において、サービスプロバイダ１０６は、追加情報を利用して、少なくとも一部は、サービスプロバイダ１０６のより適切なＤＮあＳサーバを識別する。
【００４０】
例示の一実施例において、追加情報は、コンテンツプロバイダ１０４が、要求されたリソースを提供することと関連付けられたコストが、１つまたは複数のコスト閾値あるいはコスト層の下に維持されるように要求したことを指定し得る。したがって、サービスプロバイダ１０６は、ＰＯＰの少なくとも一部分に関するコスト情報を得て、コスト閾値以下のコストと関連付けられる１つまたは複数のＤＮＳサーバを選択することができる。サービスプロバイダ１０６は次に、他の要求ルーティング基準を利用して、選択されたＤＮＳサーバから選択するか（複数のＤＮＳサーバが識別される場合）、または他の選択方法に従って選択され得る（例えば、ランダム、ラウンドロビン等）。
【００４１】
別の例示的実施例において、サービスプロバイダ１０６は、地理的基準に従って、ＤＮＳクエリをＤＮＳサーバに向かわせようとすることができる。地理的基準は、サービスプロバイダ１０６とコンテンツプロバイダ１０４との間で契約された地理的地域サービスプランに対応することができ、様々なサービスプロバイダ１０６ＰＯＰは、地理的地域に分類される。したがって、コンテンツプロバイダの地域プランに対応しない地域において受信されるクライアントコンピューティングデバイス１０２ＤＮＳクエリは、コンテンツプロバイダの地域プランに対応する領域において、ＤＮＳサーバによってより良好に処理され得る。この実施例において、ＤＮＳサーバコンポーネント１１８は、地理的情報をクライアントから直接（例えば、クライアントコンピューティングデバイスまたはＩＳＰによって提供される情報）または間接的に得てもよい（例えば、クライアントコンピューティングデバイスのＩＰアドレスによって推定される）。
【００４２】
さらなる例示的実施例において、サービスプロバイダ１０６は、サービスレベル基準に従ってＤＮＳクエリをＤＮＳサーバに向かおうとすることができる。サービスレベル基準は、サービスプロバイダ１０６とコンテンツプロバイダ１０４との間で契約されたサービスまたはパフォーマンス基準に対応することができる。パフォーマンス基準の例には、サービスプロバイダＰＯＰとクライアントコンピューティングデバイス１０２との間のデータ転送の待ち時間、コンテンツプロバイダ１０４の代わりにサービスプロバイダＰＯＰによって提供された総データ、データ転送のエラー率等が挙げられ得る。
【００４３】
なおもさらなる実施例において、サービスプロバイダ１０６は、ネットワークパフォーマンス基準に従って、ＤＮＳクエリをＤＮＳサーバに向かわせようとすることができる。ネットワークパフォーマンス基準は、ＣＤＮサービスプロバイダＰＯＰからクライアントコンピューティングデバイス１０２にデータを転送するためのネットワークパフォーマンスの測定値に対応することができる。ネットワークパフォーマンス基準の例には、ネットワークデータ転送待ち時間（クライアントコンピューティングデバイスまたはサービスプロバイダ１０６によって測定される）、ネットワークデータエラー率等が挙げられ得る。
【００４４】
例示の実施形態に従って、ＤＮＳサーバは、様々なＵＲＬのＣＮＡＭＥレコードを定義する、データストアを維持する。特定のＵＲＬに対応するＤＮＳクエリが、データストアにおけるエントリに一致する場合、ＤＮＳサーバコンポーネント１１８は、データストアにおいて定義されるように、ＣＮＡＭＥレコードを戻す。例示の実施形態において、データストアは、特定のオリジナルＵＲＬに対応する複数のＣＮＡＭＥレコードを含むことができる。複数のＣＮＡＭＥレコードは、クライアントコンピューティングデバイスに戻され得る、潜在的候補群を定義する。そのような実施形態において、ＤＮＳサーバコンポーネント１１８は、直接またはネットワークベースのサービスを介するかのいずれかで、可能なＣＮＡＭＥ群から適切なＣＮＡＭＥを選択する際に、追加の論理を実装することができる。例示の実施形態において、それぞれのＤＮＳサーバコンポーネント１１８、１２４、１３０は、ＣＮＡＭＥレコードを定義する同一データストアを維持し、これはサービスプロバイダ１０６によって中央管理され得る。あるいは、それぞれのＤＮＳサーバコンポーネント１１８、１２４、１３０は、ＣＮＡＭＥレコードを定義するＰＯＰ特異的データストアを有することができ、サービスプロバイダ１０６によって中央管理され得るか、またはＰＯＰ１１６、１２２、１２８によって局所的に管理され得る。
【００４５】
ここで図４Ｃを参照して、ＤＮＳクエリが成功裏に解決されたことを受信すると（例えば、結果としてＩＰアドレスがクライアントコンピューティングデバイス１０２に戻される）、クライアントコンピューティングデバイス１０２は、埋め込みリソース要求をＩＰアドレスに転送する。順に、受信するストレージコンポーネント（ネットワークストレージプロバイダ１１０またはオリジンサーバコンポーネント１１４および関連ストレージコンポーネント１１６のいずれか）は、要求されたコンテンツを提供することによって要求を処理することができる。要求されたコンテンツは、通信ネットワーク１０８を介して要求するクライアントコンピューティングデバイス１０２に転送され得る。
【００４６】
ここで図５を参照して、コンテンツプロバイダ１０４の登録を管理するためにサービスプロバイダ１０６によって実装されるルーチン５００が説明される。当業者であれば、ルーチン５００に関して概説される動作／ステップが、サービスプロバイダ１０６と関連付けられる１つまたは多数のコンピューティングデバイス／コンポーネントによって実装され得ることを理解するであろう。したがって、ルーチン５００は、サービスプロバイダ１０６によって一般に行われるものとして論理的に関連付けられているため、以下の例示の実施形態は、限定するものとしてみなされるべきではない。
【００４７】
ブロック５０２において、サービスプロバイダ１０６は、コンテンツプロバイダ１０４の代わりに、ＤＮＳ要求ルーティングサービスを提供するための要求を得る。例示的に、ＤＮＳ要求ルーティングサービスを提供するための要求は、登録ＡＰＩを通じて促進されてもよく、登録ＡＰＩにおいて、コンテンツプロバイダは、サービスプロバイダ１０６が、コンテンツプロバイダの代わりに、ホストＤＮＳネームサーバ機能を開始するために必要な情報を特定する。登録ＡＰＩ（および関連情報）の転送は、管理者を必要とせずにコンピューティングデバイス間の情報交換、または他の人的相互作用に対応する自動プロセスであり得る。あるいは、登録ＡＰＩ（および関連情報）の転送は、自動プロセスであってよく、手動または半手動プロセスであってもよく、その中で、管理者は、サービスプロバイダ１０６が、コンテンツプロバイダの代わりに、ホストＤＮＳネームサーバ機能を開始するために必要な情報の少なくとも一部分を特定する。サービスプロバイダ１０６が、コンテンツプロバイダの代わりに、ホストＤＮＳネームサーバ機能を開始するために必要な情報の少なくとも一部分の手動仕様に関する例示の画面表示は、図７に関して説明される。
【００４８】
ブロック５０４において、サービスプロバイダ１０６は、コンテンツプロバイダドメインおよびストレージコンポーネントの識別、コスト情報、要求ルーティング情報またはＤＮＳクエリを処理および解決する際にサービスプロバイダによって利用される他の情報を取得する。例示的に、サービスプロバイダ１０６は、登録ＡＰＩから情報の少なくとも一部分を取得することができる。加えて、サービスプロバイダ１０６は、コンテンツプロバイダ１０４またはネットワークストレージプロバイダ１１０等の他の第三者からの追加情報を要求することができる。ブロック５０６において、サービスプロバイダ１０６は、ＤＮＳクエリを解決するか、またはＣＮＡＭＥを提供する際に利用される要求ルーティングルールおよび情報を生成する。例えば、サービスプロバイダ１０６は、登録情報に従ってＣＮＡＭＥの一覧を生成、更新、または修飾し得る。ブロック５０８において、サービスプロバイダ１０６は、そのＤＮＳネームサーバを適切なエンティティとともに登録して、サービスプロバイダ１０６が、特定のコンテンツプロバイダドメインへと向けられたＤＮＳクエリの受信を開始できるようにする。ＤＮＳネームサーバコンポーネントのＩＰアドレスの登録は、十分に既知であるため、さらに詳述されない。ブロック５１０において、ルーチン５００は終了する。
【００４９】
ここで図６を参照して、サービスプロバイダ１０６によって実装された要求ルーティング処理ルーチン６００が説明される。当業者であれば、ルーチン６００に関して概説される動作／ステップが、サービスプロバイダ１０６と関連付けられる１つまたは多数のコンピューティングデバイス／コンポーネントによって実装され得ることを理解するであろう。したがって、ルーチン６００は、サービスプロバイダ１０６によって行われるものとして論理的に関連付けられている。
【００５０】
ブロック６０２において、サービスプロバイダ１０６は、「受信ＤＮＳサーバ」等のリソース識別子に対応するＤＮＳクエリを取得する。一実施形態において、サービスプロバイダ１０６と関連づけられたＤＮＳサーバのうちの１つは、クライアントコンピューティングデバイス１０２によって、またはクライアントコンピューティングデバイス１０２の代わりに転送されたＤＮＳクエリを直接受信してもよい。あるいは、サービスプロバイダは、クライアントコンピューティングデバイス１０２によって、またはクライアントコンピューティングデバイス１０２の代わりに転送されたＤＮＳクエリを受信する、コンピューティングデバイスによって転送されたＡＰＩを介して、ＤＮＳクエリと関連付けられた情報を受信し得る。
【００５１】
前述のように、リソース識別子は、クライアントコンピューティングデバイス１０２によって要求され、以前にコンテンツプロバイダ１０４によって提供されたコンテンツに埋め込まれたＵＲＬであり得る。あるいは、リソース識別子は、クライアントコンピューティングデバイス１０２から以前に受信されたＤＮＳクエリに応答して、コンテンツプロバイダＤＮＳサーバによって提供されたＣＮＡＭＥにも対応し得る。ブロック６０４において、受信ＤＮＳサーバは、コンテンツプロバイダ追加要求ルーティング情報を取得する。上述のように、例示の実施形態において、追加の要求ルーティング情報は、サービスプロバイダ１０６によって維持されるか、または少なくとも一部は、ＵＲＬもしくはＣＮＡＭＥに含まれてよい。そのような追加の要求ルーティング情報は、サービスプロバイダ１０６がＤＮＳクエリを解決しようとする際に、追加の要求ルーティング情報を利用すべきであることを特定し得る。前述のように、追加の要求ルーティング情報は、コスト情報、サービスレベル情報、地理的情報、ネットワークパフォーマンス情報等を含むことができる。追加の要求ルーティング情報は、１つまたは複数の閾値（最大、中間、または最小）、範囲、平均、論理記述、宣言基準等の形態であり得る。
【００５２】
決定ブロック６０６において、テストを行い、現在のＤＮＳサーバがＤＮＳクエリを解決する権限があるか否かを決定する。例示の一実施形態において、ＤＮＳサーバは、受信したリソース識別子に対応するＣＮＡＭＥレコードがない場合、ＤＮＳクエリを解決する権限があるか否かを決定することができる。例えば、受信ＤＮＳサーバに基づいて、要求ルーティング処理のための様々なコスト代替を定義する、１つまたは複数のＣＮＡＭＥを維持し得る。この実施形態において、受信ＤＮＳは、ブロック６０４において得られた追加の要求ルーティング情報を利用して、適切なＣＮＡＭＥを選択することができる。あるいは、受信ＤＮＳは、ＵＲＬまたはＣＮＡＭＥからの追加情報を要求することなく、ＣＮＡＭＥを選択してもよい。一実施例において、追加要求ルーティング情報は、コンテンツプロバイダ１０４が、サービスプロバイダ１０６が、要求されたリソースを提供するように、現在の最低コストと関連付けられたサービスプロバイダ１０６のＤＮＳサーバを選択するように要求したことを指定し得る。したがって、サービスプロバイダ１０６は、ＰＯＰの少なくとも一部に関する追加の要求ルーティング情報を取得し、最低コストと関連付けられたＤＮＳサーバに対応するＣＮＡＭＥを選択することができる。
【００５３】
別の実施例において、追加の要求ルーティング情報は、コンテンツプロバイダ１０４が、要求されたリソースの提供に関連付けられたコストが、最大平均待ち時間閾値が維持される限り、１つまたは複数のコスト閾値またはコスト層未満となるよう維持するように要求したことを指定し得る。したがって、サービスプロバイダ１０６は、ＰＯＰの少なくとも一部分について関連付けられたコスト情報及び待ち時間情報を取得し、特定のコスト閾値を満たすコストと関連付けられたＤＮＳサーバに対応するＣＮＡＭＥを選択することができる。代替または追加の方法を実施して、ＤＮＳサーバが権限を有するか否かを決定してもよい。
【００５４】
現在のＤＮＳサーバが権限を有する場合（同一ＤＮＳサーバが、後次のＤＮＳクエリに対して権限があるという決定を含む）、現在のＤＮＳサーバは、ブロック６０８においてキャッシュサーバコンポーネントのＩＰアドレスを戻すことによって、ＤＮＳクエリを解決する。非限定的な方法で、適切なリソースキャッシュコンポーネントを選択するための多数の方法が以前に論じられている。加えて、サービスプロバイダ１０６は、現在のロード、利用可能性、リソース利用、健康情報等の様々な利用可能なストレージコンポーネントの状態に関する実時間または半実時間情報を取得することができる。なおもさらに、上述のように、ＩＰアドレスは、リソースキャッシュコンポーネントの特定のキャッシュサーバ、または概してキャッシュサーバのグループに対応し得る。ＩＰアドレスの識別は、受信されたＤＮＳクエリに応答して、クライアントコンピューティングデバイス１０２に提供され得る。あるいは、ＤＮＳクエリがＡＰＩとして受信された場合、ＩＰアドレスの識別は、ＡＰＩを介して提供され得る。
【００５５】
あるいは、決定ブロック６０６において、ＤＮＳサーバが権限を有しない場合、ブロック６１０において、ＤＮＳサーバコンポーネントは、代替のリソース識別子を選択および転送する。上述のように、ＤＮＳサーバコンポーネントは、データストアを利用して、現在のＤＮＳクエリの関数として、適切なＣＮＡＭＥを識別することができる。加えて、ＤＮＳサーバコンポーネントは、追加の論理処理を実装して、潜在的なＣＮＡＭＥの群から選択することもできる。例示的に、選択されたＣＮＡＭＥの識別は、受信されたＤＮＳクエリに応答して、クライアントコンピューティングデバイス１０２に提供され得る。あるいは、ＤＮＳクエリがＡＰＩとして受信された場合、ＣＮＡＭＥの識別は、ＡＰＩを介して提供され得る。ブロック６１２において、異なるＤＮＳサーバコンポーネント１１８、１２４、１３０は、ＣＮＡＭＥに対応するＤＮＳクエリを受信する。ルーチン６００は、次に決定ブロック６０６に戻り、必要に応じて反復を続ける。
【００５６】
ここで図７を参照して、ユーザインターフェースまたは表示画面７００の例示的一実施形態がここで説明され、要求ルーティング機能に関して、サービスプロバイダ１０６とともにコンテンツプロバイダ１０４を登録するための情報である。この例示の実施形態において、表示画面７００は、ウェブページまたはソフトウェアアプリケーション表示に対応し、コンテンツプロバイダリソースのＤＮＳクエリの処理に対する要求ルーティングパラメータの仕様を説明する。
【００５７】
表示画面７００は、埋め込みリソース、例えば、ストレージコンポーネントが、ネーム７０２、埋め込みリソースのタイプ７０４、および埋め込みリソースのサイズ７０６を提供する、埋め込みリソース等を識別する第１の部分を含む。識別情報は、サービスプロバイダ１０６またはネットワークストレージプロバイダ１１０に手動で入力されるか、または自動的に記入されてもよい。表示画面７００は、コンポーネント７０８および７１０等のリソースを提供する、ストレージコンポーネントの位置を識別するための第２の部分を含む。第２の部分は、コストコードまたはサービスプロバイダ１０６によって利用される基準を特定して、ストレージコンポーネントの中から選択する他の要求ルーティング情報等の様々なコスト情報を含むこともできる。
【００５８】
引き続き図７を参照して、表示画面７００は、地域的または地理的情報およびサービスレベル情報等の要求ルーティングにおいて利用される追加情報を特定するために、２つの追加セクション７１２、７１４を含む。表示画面７００は、登録情報の提出をもたらすためのコントロール７１６も含む。当業者であれば、表示画面７００が、性質上例示的であり、追加または代替のインターフェース画面コンポーネントが利用され得ることを理解するであろう。加えて、追加または代替表示画面は、コンテンツプロバイダ１０４と、ネットワークストレージプロバイダ１１０またはＣＤＮサービスプロバイダ等の他のサービスプロバイダとの関連／関係に基づいて実装され得る。
【００５９】
当業者であれば、本開示に記載される機能のすべては、開示されるコンポーネントおよびモバイル通信デバイスの１つまたは複数のプロセッサによって実行されるソフトウェアに埋め込まれてもよいことを理解するであろう。ソフトウェアは、任意のタイプの不揮発性ストレージに継続的に保管され得る。
【００６０】
特に「ｃａｎ」、「ｃｏｕｌｄ」、「ｍｉｇｈｔ」、または「ｍａｙ」等の条件的言語は、特に別段の指定がない限り、または使用される文脈内で他の意味で理解されない限り、概して、所定の実施形態は、所定の特徴、要素、および／またはステップを含むが、他の実施形態は、それらを含まないことを意味するものである。したがって、そのような条件的言語は、概して、特徴、要素、および／またはステップが、いかなる場合においても１つまたは複数の実施形態に必要とされること、または１つまたは複数の実施形態が、ユーザ入力またはプロンプトの有無に関わらず、これらの特徴、要素、および／またはステップが含まれるか、または任意の特定の実施形態において行われるか否かを決定するための論理を必ず含むことを示唆するものではない。
【００６１】
本明細書に記載され、および／または添付の図面に描写されるフロー図の任意のプロセス記述、要素、またはブロックは、プロセスにおいて特定の論理関数またはステップを実装するための１つまたは複数の実行可能な命令を含む、モジュール、セグメント、またはコードの一部を潜在的に表すものとして理解されるべきである。代替実装は、本明細書に記載の実施形態の範囲内に含まれ、要素または関数は、当業者に理解されるように、関与する機能性に応じて、実質的に同時または逆順を含む、図示または説明されるものから外れて削除、実行され得る。さらに当然のことながら、上述のデータおよび／またはコンポーネントは、コンピュータ可読媒体上に保管され、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、またはネットワークインターフェース等のコンピュータ実行可能なコンポーネントを保管する、コンピュータ可読媒体と関連付けられた駆動機構を使用して、コンピューティングデバイスのメモリにロードされ得、さらにコンポーネントおよび／またはデータは、単一デバイスに含められ得るか、または任意の方法で分配され得る。したがって、汎用コンピューティングデバイスは、上述の様々なデータおよび／またはコンポーネントの処理および／または実行とともに、本開示の処理、アルゴリズム、および方法を実装するように構成されてもよい。
【００６２】
上述の実施形態に対して、多くの変型および修正を行ってよいことが重視されるべきであり、これらの要素は、他の許容される例に含まれるものとして理解される。すべてのそのような修正および変型は、本明細書において本開示の範囲内に含まれ、以下の請求項によって保護されるものとする。
【００６３】
付記１．リソース要求を管理するためのコンピュータ実装される方法であって、
サービスプロバイダにおいて、コンテンツプロバイダから要求ルーティング照会を取得することであって、前記要求ルーティング照会が、前記コンテンツプロバイダの代わりとなる前記サービスプロバイダによる要求ルーティング機能性の要求に対応することと、
前記サービスプロバイダによって、前記コンテンツプロバイダの代わりとなる前記サービスプロバイダによる要求ルーティング機能性のためのユーザインターフェースを生成させることと、
前記サービスプロバイダにおいて、前記サービスプロバイダとともに前記コンテンツプロバイダと関連付けられた１つまたは複数のドメインを登録するための登録情報を取得することであって、前記登録情報が、前記サービスプロバイダによってＤＮＳクエリ処理機能性を要求するための前記コンテンツプロバイダによる要求を含むことと、
第１のＤＮＳサーバにおいて、クライアントコンピューティングデバイスからＤＮＳクエリを取得することであって、前記ＤＮＳクエリが、コンテンツプロバイダによって提供されたオリジナルリソース識別子と関連付けられた、要求されたリソースに対応し、前記オリジナルリソース識別子が、前記コンテンツプロバイダと関連付けられた前記１つまたは複数のドメインに対応し、前記第１のＤＮＳサーバが、前記コンテンツプロバイダとは異なる前記サービスプロバイダに対応することと、
前記第１のＤＮＳサーバが、前記コンテンツプロバイダと関連付けられた追加情報の関数として、ＤＮＳクエリに対して権限があるか否かを決定することであって、前記追加情報の少なくとも一部分が前記ＤＮＳクエリに含まれることと、
前記ＤＮＳサーバが、権限がないと決定された場合に、前記クライアントコンピューティングデバイスおよび前記コンテンツプロバイダと関連付けられた情報に基づいて、代替リソース識別子を得ることであって、前記代替リソース識別子が、前記オリジナルリソース識別子に含まれない要求ルーティング情報を含み、前記代替リソース識別子が、前記コンテンツプロバイダと関連付けられた前記追加情報上で少なくとも一部が選択されることと、
前記代替リソース識別子を前記クライアントコンピューティングデバイスに転送することと、
第２のＤＮＳサーバにおいて、前記クライアントコンピューティングデバイスから後次ＤＮＳクエリを取得することであって、前記後次ＤＮＳクエリが、前記サービスプロバイダによって提供される前記代替リソース識別子に対応し、前記第２のＤＮＳサーバが、前記コンテンツプロバイダとは異なる前記サービスプロバイダに対応することと、
前記第２のＤＮＳサーバが、前記後次ＤＮＳクエリに対して権限があるか否かを決定することと、
前記第２のＤＮＳサーバが、前記第２のＤＮＳクエリに対して権限がある場合、前記オリジナルリソース要求と関連付けられたコンテンツを提供するためのキャッシュコンポーネントを選択することと、
前記第２のＤＮＳサーバが、権限があると決定された場合、前記選択されたキャッシュコンポーネントを識別する情報を転送することと、を含む、方法。
【００６４】
付記２．前記オリジナルリソース識別子が、前記コンテンツプロバイダによって提供されたユニフォームリソースロケータに対応する、付記１に記載の方法。
【００６５】
付記３．前記代替リソース識別子が、正規名レコード識別子に対応する、付記１に記載の方法。
【００６６】
付記４．前記オリジナルリソース識別子を構文解析して、前記コスト情報を取得することをさらに含む、付記１に記載の方法。
【００６７】
付記５．前記１つまたは複数のリソースが、１つまたは複数の埋め込みリソースに対応する、付記１に記載の方法。
【００６８】
付記６．前記サービスプロバイダによる前記１つまたは複数のリソースの前記登録に対応するデータを処理することが、前記サービスプロバイダによる前記１つまたは複数のリソースの前記登録を前記コンテンツプロバイダに通知することを含む、付記１に記載の方法。
【００６９】
付記７．
前記第２のＤＮＳサーバが、前記後次ＤＮＳクエリに対して権限がないと決定された場合、前記クライアントコンピューティングデバイスおよび前記コンテンツプロバイダと関連付けられた情報に基づいて、第２の代替リソース識別子を取得することであって、前記第２の代替リソース識別子が、前記オリジナルリソース識別子または前記代替リソース識別子に含まれない要求ルーティング情報を含むことと、
前記代替リソース識別子を前記クライアントコンピューティングデバイスに転送することと、
第３のＤＮＳサーバにおいて、第２の後次ＤＮＳクエリを前記クライアントコンピューティングデバイスから取得することであって、前記第２の後次ＤＮＳクエリが、前記サービスプロバイダによって提供された前記第２の代替リソース識別子に対応し、前記第３のＤＮＳサーバが、前記コンテンツプロバイダとは異なる前記サービスプロバイダに対応することと、
前記第３のＤＮＳサーバが、前記第２の後次ＤＮＳクエリに対して権限があるか否かを決定することと、
前記第３のＤＮＳサーバが、前記第２の後次ＤＮＳクエリに対して権限がある場合、前記オリジナルリソース要求と関連付けられたコンテンツを提供するためのキャッシュコンポーネントを選択することと、
前記第３のＤＮＳサーバが、前記第２の後次ＤＮＳクエリに対して権限があると決定された場合、前記選択されたキャッシュコンポーネントを識別する情報を転送することと、をさらに含む、付記１に記載の方法。
【００７０】
付記８．要求ルーティング機能を管理するためのコンピュータ実装方法であって、
サービスプロバイダにおいて、１つまたは複数のコンテンツプロバイダを前記サービスプロバイダとともに登録するための登録情報を取得することであって、前記登録が、前記コンテンツプロバイダによって提供された１つまたは複数のリソースと関連付けられた要求ルーティング機能の少なくとも一部分をホストすることに対応することと、
第１のＤＮＳサーバにおいて、ＤＮＳクエリをクライアントコンピューティングデバイスから取得することであって、前記ＤＮＳクエリが、リソース識別子と関連付けられた、要求されたリソースに対応し、前記第１のＤＮＳサーバが、前記サービスプロバイダに対応することと、
前記リソース要求に含まれない補足要求ルーティング情報に基づいた、要求されたリソースのストレージコンポーネントに対応する識別子、及び前記サービスプロバイダに対応するドメインに対して解決する代替リソース識別子クエリ、および前記第１のリソース識別子に含まれない前記補足要求ルーティング情報の少なくとも１つを、前記クライアントコンピューティングデバイスに提供することと、を含む、方法。
【００７１】
付記９．前記１つまたは複数のリソースが、１つまたは複数の埋め込みリソースに対応する、付記８に記載の方法。
【００７２】
付記１０．前記１つまたは複数のリソースが、前記コンテンツプロバイダと関連付けられたドメインに対応する、付記８に記載の方法。
【００７３】
付記１１．前記ストレージコンポーネントが、前記コンテンツプロバイダ、前記サービスプロバイダ、およびネットワークストレージプロバイダのうちの少なくとも１つに対応する、付記８に記載の方法。
【００７４】
付記１２．前記要求ルーティング情報が、サービスレベルプラン情報を含む、付記８に記載の方法。
【００７５】
付記１３．前記要求ルーティング情報が、地理的選択情報を含む、付記８に記載の方法。
【００７６】
付記１４．前記要求ルーティング情報が、１つまたは複数のストレージコンポーネントと関連付けられたコスト情報を含む、付記８に記載の方法。
【００７７】
付記１５．前記サービスプロバイダによって、前記コンテンツプロバイダと関連付けられた１つまたは複数のドメインを前記サービスプロバイダとともに登録するためのユーザインターフェースを生成させることをさらに含む、付記８に記載の方法。
【００７８】
付記１６．要求ルーティングのためのシステムであって、
サービスプロバイダにおいて、１つまたは複数のコンテンツプロバイダを前記サービスプロバイダとともに登録するための登録情報を取得するためのインターフェースコンポーネントであって、前記登録が、前記コンテンツプロバイダによって提供される１つまたは複数のリソースと関連付けられる要求ルーティング機能の少なくとも一部分をホストすることに対応する、インターフェースコンポーネントと、
サービスプロバイダと関連付けられた第１のネットワークＰＯＰ（ｐｏｉｎｔ  ｏｆ  ｐｒｅｓｅｎｃｅ）であって、前記第１のネットワークＰＯＰが、クライアントコンピューティングデバイスからＤＮＳクエリを受信する、ＤＮＳサーバコンポーネントを含み、前記ＤＮＳクエリが、第１のリソース識別子と関連付けられた、要求されたリソースに対応し、前記第１のネットワークＰＯＰにおける前記ＤＮＳサーバが、
前記第１のリソース識別子が、コンテンツプロバイダと関連付けられた要求ルーティング基準の関数として、代替リソース識別子と関連付けられることを決定し、
代替リソース識別子を前記クライアントコンピューティングデバイスに転送するように動作可能であって、前記代替リソース識別子が、ＤＮＳクエリに前記サービスプロバイダに対応するドメインに対して解決させるための情報を含む、第１のネットワークＰＯＰと、
サービスプロバイダと関連付けられた第２のネットワークＰＯＰであって、前記第２のネットワークＰＯＰが、クライアントコンピューティングデバイスから後次ＤＮＳクエリを受信する、ＤＮＳサーバコンポーネントを含み、前記後次ＤＮＳクエリが、前記代替リソース識別子と関連付けられた、要求されたリソースに対応し、前記第２のネットワークＰＯＰにおける前記ＤＮＳサーバが、
前記後次ＤＮＳクエリを解決して、前記オリジナルリソース要求と関連付けられたコンテンツを提供するためのキャッシュコンポーネントを識別し、
前記識別されたキャッシュコンポーネントを識別する情報を前記クライアントコンピューティングデバイスに転送するように動作する、システム。
【００７９】
付記１７．前記オリジナルリソース識別子が、前記要求ルーティング基準の少なくとも一部分を含む、付記１６に記載のシステム。
【００８０】
付記１８．前記第１のネットワークＰＯＰにおける前記ＤＮＳサーバが、前記コスト情報の少なくとも一部分を取得する、付記１６に記載のシステム。
【００８１】
付記１９．前記代替リソース識別子が、正規名レコード識別子に対応する、付記１６に記載のシステム。
【００８２】
付記２０．前記要求ルーティング基準が、地域サービス情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供された地域サービスプランを識別する情報を含む、付記１６に記載のシステム。
【００８３】
付記２１．前記第１のネットワークＰＯＰにおいて、前記ＤＮＳサーバが、前記クライアントコンピューティングデバイスの地理的位置に対応する情報を取得するように動作可能である、付記２０に記載のシステム。
【００８４】
付記２２．前記クライアントコンピューティングデバイスに対する前記識別されたキャッシュコンポーネントを識別する情報が、前記コンテンツプロバイダと関連付けられたキャッシュコンポーネントのネットワークアドレスを含む、付記１６に記載のシステム。
【００８５】
付記２３．前記クライアントコンピューティングデバイスに対する前記識別されたキャッシュコンポーネントを識別する情報が、第三者サービスプロバイダと関連付けられたキャッシュコンポーネントのネットワークアドレスを含む、付記１６に記載のシステム。
【００８６】
付記２４．前記要求ルーティング基準が、コスト情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供されたコストプランを識別する情報を含む、付記１６に記載のシステム。
【００８７】
付記２５．前記要求ルーティング基準が、ネットワークパフォーマンス情報を含み、前記代替リソース識別子が、前記サービスプロバイダによって提供されたネットワークパフォーマンスプランを識別する情報を含む、付記１６に記載のシステム。
【図１】
0005893034.tif 000002
【図２】
0005893034.tif 000003
【図３】
0005893034.tif 000004
【図４Ａ】
0005893034.tif 000005
【図４Ｂ】
0005893034.tif 000006
【図４Ｃ】
0005893034.tif 000007
【図５】
0005893034.tif 000008
【図６】
0005893034.tif 000009
【図７】
0005893034.tif 000010