(57)【特許請求の範囲】
【請求項１】
“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムにおいて、移動体ネットワークにおいて移動する端末であるクライアントと、前記ネットワークに分散して複数配置されてコンテンツを前記クライアントに配信するエッジサーバとの間の通信経路を選択するルーティング方法であって、
前記ネットワークの各エリア毎に、当該エリアのＤＮＳをなすローカルＤＮＳサーバと前記エッジサーバを配置し、１つのエリアは１つのローカルＤＮＳサーバがアドレス解決する範囲であり、
前記クライアントのホームアドレスが属するエリアであるホームネットワークに、当該エリアのＤＮＳをなすホーム・ローカルＤＮＳサーバを配置し、前記クライアントに前記ホーム・ローカルＤＮＳサーバのアドレスが設定され、
同一エリア内の前記ローカルＤＮＳサーバと前記エッジサーバのアドレスを対応付けたテーブルを管理する権限ＤＮＳサーバを配置した場合に、
前記ホーム・ローカルＤＮＳサーバは、前記クライアントのホームアドレスと当該クライアントの移動先のエリアでのアドレスである気付アドレスとからなる移動情報を、前記ホームネットワークに配置されたホーム・エージェントから受信し、当該気付アドレスに基づいて前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを求める反復的逆引き名前解決要求を実行し、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するとともに、
前記クライアントから当該ホーム・ローカルＤＮＳサーバに対してコンテンツにアクセスするために必要となる名前解決の要求があった場合に、当該記録されたアドレスに基づいて前記移動先のエリアのローカルＤＮＳサーバへ当該要求を転送し、
前記移動先のエリアのローカルＤＮＳサーバは、該転送された名前解決要求に基づき、ルートＤＮＳサーバに対して、ドメイン名の名前解決を要求し、この返答として前記権限ＤＮＳサーバのアドレスを受信し、
前記移動先のエリアのローカルＤＮＳサーバは、前記権限ＤＮＳサーバへ、前記コンテンツに対応するエッジサーバのアドレスを問い合わせ、
前記権限ＤＮＳサーバは、該ローカルＤＮＳサーバからの問い合わせを受けると、前記テーブルに記録されたアドレスに基づいて、該ローカルＤＮＳサーバのアドレスに対応付けられているエッジサーバのアドレスを、該ローカルＤＮＳサーバへ返答し、
前記移動先のエリアのローカルＤＮＳサーバは、前記権限ＤＮＳサーバから受信したエッジサーバのアドレスを前記クライアントに送信し、
前記ホーム・ローカルＤＮＳサーバは、
前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するときに、当該記録されるアドレスと、前記気付アドレスと、当該ローカルＤＮＳサーバが管理するエリアを示す権限ゾーンのアドレスとを、対応付けて記録するものであって、
前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれていないときは、前記記録を更新するが、
前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれているときは、前記記録を更新しない、
ことを特徴とするルーティング方法。
【請求項２】
前記エッジサーバは、当該エッジサーバと前記クライアント間の通信経路として最短の経路を自動的に選択する
ことを特徴とする請求項１に記載のルーティング方法。
【請求項３】
“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムにおいて、ネットワークにおいて移動する端末であるクライアントと、前記ネットワークの各エリア毎に配置されてコンテンツを前記クライアントに配信するエッジサーバとの間の通信経路を選択するルーティング・システムであって、１つのエリアは１つのローカルＤＮＳサーバがアドレス解決する範囲であり、
該エリア毎に配置されて、当該エリアのＤＮＳをなすローカルＤＮＳサーバと、
前記ローカルＤＮＳサーバの一つであって、前記クライアントのホームアドレスが属するエリアであるホームネットワークのＤＮＳをなし、前記クライアントにアドレスが設定されるホーム・ローカルＤＮＳサーバと、
前記エッジサーバに割り当てられたアドレスを、同一エリア内の前記ローカルＤＮＳサーバに対応付けたテーブルで管理し、前記ローカルＤＮＳサーバから出された前記コンテンツに対応するエッジサーバのアドレスの問い合わせに対し、当該テーブルを用いて、該ローカルＤＮＳサーバのアドレスに対応付けられているエッジサーバのアドレスを返答する権限ＤＮＳサーバと、を有し、
前記ホーム・ローカルＤＮＳサーバは、
前記クライアントのホームアドレスと当該クライアントの移動先のエリアでのアドレスである気付アドレスとからなる移動情報を、前記ホームネットワークに配置されたホーム・エージェントから受信し、当該気付アドレスに基づいて前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを求める反復的逆引き名前解決要求を実行し、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録する手段と、
前記クライアントから当該ホーム・ローカルＤＮＳサーバに対してコンテンツにアクセスするために必要となる名前解決の要求があった場合に、当該記録されたアドレスに基づいて前記移動先のエリアのローカルＤＮＳサーバへ当該要求を転送する手段と、を有し、
前記移動先のエリアのローカルＤＮＳサーバは、
該転送された名前解決要求に基づき、ルートＤＮＳサーバに対して、ドメイン名の名前解決を要求し、この返答として前記権限ＤＮＳサーバのアドレスを受信する手段と、
前記権限ＤＮＳサーバへ前記コンテンツに対応するエッジサーバのアドレスを問い合わせ、この返答として受信したアドレスを前記クライアントに送信する手段と、を有し、
前記ホーム・ローカルＤＮＳサーバは、
前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するときに、当該記録されるアドレスと、前記気付アドレスと、当該ローカルＤＮＳサーバが管理するエリアを示す権限ゾーンのアドレスとを、対応付けて記録するものであって、
前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれていないときは、前記記録を更新するが、
前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれているときは、前記記録を更新しない、
ことを特徴とするルーティング・システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、名前解決を用いたルーティング方法およびそのシステムに関する。特に、移動体ネットワークのクライアントに対して、クライアントの位置を考慮したルーティングでコンテンツを配信することが可能な名前解決を用いたルーティング方法およびそのシステムに関する。
【０００２】
【従来の技術】
現在、アクセスネットワークの広帯域化及びＷｅｂコンテンツの大容量化に伴いクライアントの近傍のサーバ（エッジサーバ）に予めコンテンツを配布するコンテンツ配信ネットワーク（ＣＤＮ：Content Delivery Network）が注目されている。
リクエスト・ルーティング・システム（ＲＲＳ：Request Routing System）は、ＣＤＮの１コンポーネントであり、クライアントのコンテンツ要求を、そのコンテンツのコピーを持つエッジサーバへと誘導するためのシステムである。リクエスト・ルーティング・システムの基本機能としては、下記の２つがある。
１）リクエストに応えることができるエッジサーバにクライアントを誘導する。２）最良のサービスを提供可能なエッジサーバにクライアントを誘導する。
【０００３】
現在、Ｗｅｂサイトで提供するコンテンツなどをＣＤＮを用いて配布する際に使用されるリクエスト・ルーティング・システムには、“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムという従来技術がある。
上記従来技術は、ＤＮＳ（Domain Name System）をクライアントの誘導に用いる方法である。この場合は、１つ以上のドメイン名がリクエスト・ルーティング・システムに付与される。そして、このドメイン名は、クライアントのリクエストを誘導するために利用され、ＵＲＬの一部として使用される。また、この方法は、既にインターネット上に広く普及している既存のＤＮＳをベースとして用いるので、インターネット上のどこからでも利用できるという特徴がある。
【０００４】
【発明が解決しようとする課題】
ところで、モバイルＩＰネットワーク等の移動体ネットワークに上記従来技術を適用しようとすると、次の問題がある。つまり、クライアントは、移動体ネットワーク内で本来所属しているエリア（ホームネットワーク）のＤＮＳサーバ（以下、「ホーム・ローカル・ＤＮＳ」という）のＩＰアドレスを予め把握しているので、このクライアントが移動体ネットワーク内の他のエリアに移動しても、ホーム・ローカル・ＤＮＳサーバ及びホームネットワーク内のエッジサーバを利用することはできる。
【０００５】
しかしながら、その場合、従来の技術では、ホーム・ローカル・ＤＮＳサーバのＩＰアドレスを元にエッジサーバを決定するため、移動先のエリアにいるクライアントにとっては最適なエッジサーバとはならない場合がある。即ち、移動先のクライアントは、そのクライアントが現在属するエリアに存在するエッジサーバからではなく、そのクライアントから遠く離れたホームネットワークに存在するエッジサーバからコンテンツの配信を受けることとなるという問題点が生じる。
【０００６】
また、エッジサーバに関しては、三角問題（Triangle Routing）という問題が生じることがある。つまり、クライアントは、リクエスト・ルーティング・システムにより誘導されたエッジサーバからコンテンツを取得するが、移動先のエリアにいるクライアントに対してコンテンツを送信する際には、クライアントとエッジサーバ間の通信が直線的な経路とならずに、クライアントとホームネットワークとエッジサーバとで三角の通信経路、即ち大きく遠回りした通信経路になる場合があり、ホームネットワークと外部ネットワーク間のネットワーク帯域を圧迫する可能性がある。
【０００７】
本発明は、上述した事情に鑑みてなされたもので、移動体ネットワークのクライアントに対して、クライアントの位置を考慮したリクエスト・ルーティングを行うことで、最適なエッジサーバへの誘導を可能とする名前解決を用いたルーティング方法およびそのシステムの提供を目的とする。
【０００８】
【課題を解決するための手段】
上記の目的を達成するために、請求項１記載の発明では、“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムにおいて、移動体ネットワークにおいて移動する端末であるクライアントと、前記ネットワークに分散して複数配置されてコンテンツを前記クライアントに配信するエッジサーバとの間の通信経路を選択するルーティング方法であって、前記ネットワークの各エリア毎に、当該エリアのＤＮＳをなすローカルＤＮＳサーバと前記エッジサーバを配置し、１つのエリアは１つのローカルＤＮＳサーバがアドレス解決する範囲であり、前記クライアントのホームアドレスが属するエリアであるホームネットワークに、当該エリアのＤＮＳをなすホーム・ローカルＤＮＳサーバを配置し、前記クライアントに前記ホーム・ローカルＤＮＳサーバのアドレスが設定され、同一エリア内の前記ローカルＤＮＳサーバと前記エッジサーバのアドレスを対応付けたテーブルを管理する権限ＤＮＳサーバを配置した場合に、前記ホーム・ローカルＤＮＳサーバは、前記クライアントのホームアドレスと当該クライアントの移動先のエリアでのアドレスである気付アドレスとからなる移動情報を、前記ホームネットワークに配置されたホーム・エージェントから受信し、当該気付アドレスに基づいて前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを求める反復的逆引き名前解決要求を実行し、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するとともに、前記クライアントから当該ホーム・ローカルＤＮＳサーバに対してコンテンツにアクセスするために必要となる名前解決の要求があった場合に、当該記録されたアドレスに基づいて前記移動先のエリアのローカルＤＮＳサーバへ当該要求を転送し、前記移動先のエリアのローカルＤＮＳサーバは、該転送された名前解決要求に基づき、ルートＤＮＳサーバに対して、ドメイン名の名前解決を要求し、この返答として前記権限ＤＮＳサーバのアドレスを受信し、前記移動先のエリアのローカルＤＮＳサーバは、前記権限ＤＮＳサーバへ、前記コンテンツに対応するエッジサーバのアドレスを問い合わせ、前記権限ＤＮＳサーバは、該ローカルＤＮＳサーバからの問い合わせを受けると、前記テーブルに記録されたアドレスに基づいて、該ローカルＤＮＳサーバのアドレスに対応付けられているエッジサーバのアドレスを、該ローカルＤＮＳサーバへ返答し、前記移動先のエリアのローカルＤＮＳサーバは、前記権限ＤＮＳサーバから受信したエッジサーバのアドレスを前記クライアントに送信し、前記ホーム・ローカルＤＮＳサーバは、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するときに、当該記録されるアドレスと、前記気付アドレスと、当該ローカルＤＮＳサーバが管理するエリアを示す権限ゾーンのアドレスとを、対応付けて記録するものであって、前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれていないときは、前記記録を更新するが、前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれているときは、前記記録を更新しない、ことを特徴とする。
本発明によれば、“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムにおいて、クライアントがホームネットワークから他のエリア（外部ネットワーク）に移動したときに、エッジサーバの名前解決の問い合わせをしたＤＮＳサーバ（ホームネットワークのＤＮＳサーバ）のＩＰアドレスではなく、外部ネットワークのＤＮＳサーバのＩＰアドレスに基づいて、クライアントを外部ネットワークのエッジサーバへと誘導する。したがって、モバイルＩＰネットワークのクライアントに対しても、最適なエッジサーバへと誘導することができる。
【００１１】
請求項２記載の発明では、請求項１記載のルーティング方法において、前記エッジサーバが、当該エッジサーバと前記クライアント間の通信経路として最短の経路を自動的に選択することを特徴とする。
【００１２】
上記の目的を達成するために、請求項３記載の発明では、“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムにおいて、ネットワークにおいて移動する端末であるクライアントと、前記ネットワークの各エリア毎に配置されてコンテンツを前記クライアントに配信するエッジサーバとの間の通信経路を選択するルーティング・システムであって、１つのエリアは１つのローカルＤＮＳサーバがアドレス解決する範囲であり、該エリア毎に配置されて、当該エリアのＤＮＳをなすローカルＤＮＳサーバと、前記ローカルＤＮＳサーバの一つであって、前記クライアントのホームアドレスが属するエリアであるホームネットワークのＤＮＳをなし、前記クライアントにアドレスが設定されるホーム・ローカルＤＮＳサーバと、前記エッジサーバに割り当てられたアドレスを、同一エリア内の前記ローカルＤＮＳサーバに対応付けたテーブルで管理し、前記ローカルＤＮＳサーバから出された前記コンテンツに対応するエッジサーバのアドレスの問い合わせに対し、当該テーブルを用いて、該ローカルＤＮＳサーバのアドレスに対応付けられているエッジサーバのアドレスを返答する権限ＤＮＳサーバと、を有し、前記ホーム・ローカルＤＮＳサーバは、前記クライアントのホームアドレスと当該クライアントの移動先のエリアでのアドレスである気付アドレスとからなる移動情報を、前記ホームネットワークに配置されたホーム・エージェントから受信し、当該気付アドレスに基づいて前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを求める反復的逆引き名前解決要求を実行し、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録する手段と、前記クライアントから当該ホーム・ローカルＤＮＳサーバに対してコンテンツにアクセスするために必要となる名前解決の要求があった場合に、当該記録されたアドレスに基づいて前記移動先のエリアのローカルＤＮＳサーバへ当該要求を転送する手段と、を有し、前記移動先のエリアのローカルＤＮＳサーバは、該転送された名前解決要求に基づき、ルートＤＮＳサーバに対して、ドメイン名の名前解決を要求し、この返答として前記権限ＤＮＳサーバのアドレスを受信する手段と、前記権限ＤＮＳサーバへ前記コンテンツに対応するエッジサーバのアドレスを問い合わせ、この返答として受信したアドレスを前記クライアントに送信する手段と、を有し、前記ホーム・ローカルＤＮＳサーバは、前記クライアントの移動先のエリアのローカルＤＮＳサーバのアドレスを記録するときに、当該記録されるアドレスと、前記気付アドレスと、当該ローカルＤＮＳサーバが管理するエリアを示す権限ゾーンのアドレスとを、対応付けて記録するものであって、前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれていないときは、前記記録を更新するが、前記ホーム・エージェントから受信した気付アドレスが前記記録と異なっている場合において、該受信した気付アドレスが前記記録の権限ゾーンのアドレスに含まれているときは、前記記録を更新しない、ことを特徴とする。
【００１３】
【発明の実施の形態】
以下、図面を用いて本発明の実施の形態を説明する。本発明は、従来の“ＤＮＳ−ｂａｓｅｄ”リクエスト・ルーティング・システムを改良してモバイルＩＰネットワーク等の移動体用のネットワークに適用可能なリクエスト・ルーティング・システムとしたものである。
【００１４】
Ａ．実施形態の構成
図１は、本発明の実施形態によるリクエスト・ルーティング・システムを示す概念模式図である。本図において、クライアント１は、コンテンツの配信を受ける移動体端末である。モバイルＩＰネットワークは、複数のエリアに分割され、各エリアをクライアント１が移動する。この実施形態では、クライアント１が本来所属するエリアであるホームネットワークから、クライアント１の移動先のエリアである外部ネットワークへ、クライアント１が移動した場合を考える。
また、クライアント１のＩＰアドレスは、（１９２．１６８．１．１００）とする。クライアント１のレゾルバには、ホームネットワークに存在するローカルＤＮＳサーバのＩＰアドレス（１９２．１６８．１．２）が設定される。なお、レゾルバとは、ＩＰアドレスとＵＲＬ（ドメイン名）間における名前解決を行うソフトウェアであり、クライアント１（移動体端末）に内蔵されている。又、ホームネットワークには、モバイルＩＰの提供及び管理をするサーバであるホーム・エージェント（ＨＡ）が配置されている。ホーム・エージェントは、クライアント１の移動情報を、逐次、ホーム・ネットワークに存在するローカルＤＮＳサーバに送信する。なお、ホーム・エージェントがホームネットワークにおけるクライアントの通信経路として、最短の経路を自動的に選択する経路最適化拡張機能（RO:Route Optimization）をサポートしているとよい。
【００１５】
ローカルＤＮＳサーバ２ａ，２ｂは、エッジサーバの名前解決（ドメイン名とＩＰアドレスを同定する処理）についての権限を持つサーバ（権限ＤＮＳサーバ６）へ、当該名前解決についての問い合わせをするＤＮＳサーバである。ローカルＤＮＳサーバ２ａはホーム・ネットワークに存在し、ローカルＤＮＳサーバ２ｂは外部ネットワークに存在し、それぞれＩＰアドレス（１９２．１６８．１．２）、（１９２．１６８．２．２）が割り当てられている。また、ローカルＤＮＳサーバ２ａは、フォワーディングテーブル（後述）２１を具備している。
【００１６】
エッジサーバ３ａ，３ｂは、クライアント１に対してコンテンツを配信するサーバである。エッジサーバ３ａはホーム・ネットワークに存在し、エッジサーバ３ｂは外部ネットワークに存在し、それぞれＩＰアドレス（１９２．１６８．１．３）、（１９２．１６８．２．３）が割り当てられている。
【００１７】
モバイルＩＰネットワークと別のネットワークであるインターネットには、オリジン・サーバ４、ルートＤＮＳサーバ５、権限ＤＮＳ(Authoritative DNS)サーバ６が配置されている。
オリジン・サーバ４は、Ｗｅｂサーバであり、クライアント１に配信されるコンテンツの原本（オリジナル）をもっているサーバである。オリジン・サーバ４がもつコンテンツは、通常、ミラーサーバであるエッジサーバ３ａ，３ｂにそれぞれ送られ、エッジサーバ３ａ又はエッジサーバ３ｂからクライアント１に配信される。ルートＤＮＳサーバ５は、ローカルＤＮＳサーバ２ａ，２ｂの上位に位置する最上位のＤＮＳサーバである。
権限ＤＮＳ(Authoritative DNS)サーバ６は、クライアント１をエッジサーバ３ａ，３ｂへ誘導するとき、各エッジサーバ３ａ，３ｂの名前解決についての権限を持つＤＮＳサーバである。権限ＤＮＳサーバ６は、ローカルＤＮＳサーバ２ａ，２ｂのＩＰアドレスと、これに対応するエッジサーバ３ａ，３ｂのＩＰアドレスとからなる「リクエスト・ルーティング・テーブル」を具備している。
なお、オリジン・サーバ４、ルートＤＮＳサーバ５、権限ＤＮＳ(Authoritative DNS)サーバ６は、どのネットワークに配置されていてもよい。
【００１８】
Ｂ．実施形態の動作
次に、図１に示すリクエスト・ルーティング・システムの動作について説明する。先ず、事前処理として、クライアント１のレゾルバに、ホームネットワークに存在するローカルＤＮＳサーバ２ａのＩＰアドレス（１９２．１６８．１．２）を設定する。その後、クライアント１は、ホームネットワークから外部ネットワークに移動したものとする。
そして、クライアント１は、所望のコンテンツの配信を受けるべく、Ｗｅｂブラウザで所望のＵＲＬ（例えば、http://www.sp.foo.com/movie.mpeg）を入力又はリンクをクリックする。
【００１９】
すると、クライアント１のレゾルバは、上記のＵＲＬのドメイン名（例えば、www.sp.foo.com）の名前解決を、ローカルＤＮＳサーバ２ａに対して要求する。この名前解決では、ドメイン名をＩＰアドレスに変換する処理を繰り返し行う、すなわち再帰的に行う。その要求を受けたローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１を利用して、クライアント１が現在いる外部ネットワークの外部ローカルＤＮＳサーバ２ｂへ名前解決要求を転送する（符号▲１▼）。
ここで、フォワーディング・テーブル２１は、次のようなにしてデータが記録される。
【００２０】
先ず、予めローカルＤＮＳサーバ２ａはホーム・エージェント（図示せず）に対し、クライアント１の移動情報（ホームアドレスと気付アドレスの組からなる情報、「バインディング・キャッシュ」と呼ばれる）の取得を要求する。ここで、ホームアドレスとは、クライアント１のホームネットワーク上におけるクライアント１のアドレスであり、変動しないものである。気付アドレスとは、クライアント１の移動先のエリアでのクライアント１のアドレスであり、エリアを移動する毎に変動するものである。
この要求により、ローカルＤＮＳサーバ２ａは、ホーム・エージェントからの応答（バインディング・アップデート・メッセージ）を移動情報として得る。この移動情報には有効期限が付され、古くなった情報の更新要求を発することができるようになっている。
【００２１】
そして、ローカルＤＮＳサーバ２ａは、その応答に基づいて、クライアント１のバインディング・キャッシュと、後述する方法で取得したクライアントの移動先エリア（外部ネットワーク）のローカルＤＮＳサーバ２ｂのＩＰアドレスとを、フォワーディング・テーブル２１に記録する。
なお、フォワーディング・テーブル２１に記録された気付アドレス（以後、これを「ポインティング・アドレス」と称する）と、ホーム・エージェントから時々刻々送付される気付アドレスとは必ずしも一致しない場合がある。つまり、ホーム・エージェントから送付された最新の気付アドレスによりポインティング・アドレスが更新されるまで、タイトラグが生じることがある。
そして、ローカルＤＮＳサーバ２ａは、上記フォワーディング・テーブル２１を利用して、名前解決要求を外部ローカルＤＮＳサーバ２ｂへ転送するようになっている。
【００２２】
このようにしてデータが記録されたフォワーディング・テーブル２１の具体例を図３を参照して説明する。
テーブルの各レコードには、それぞれ別のクライアント（ａ，ｂ１，ｂ２，ｂ３）の移動情報が記録されている。
表中の「ポインティングアドレス」フィールドは、前記したポインティングアドレスを示す。「権限ゾーン」フィールドは、クライアントの移動先エリアに配置されたローカルＤＮＳサーバ２ｂが管理する対象となるアドレス示し、（６．１２８．１３３．ｉｎ−ａｄｄｒ．ａｒｐａ）は「１３３．１２８．６．１」〜「１３３．１２８．６．２５４」までのアドレスを有するクライアントをローカルＤＮＳサーバ２ｂが管理する。権限ゾーンの詳細については、後述する。
【００２３】
クライアントｂ１，ｂ２，ｂ３の場合、ポインティング・アドレスは、ＤＨＣＰ（Dynamic Host Configuration Protocol）によって動的に割り当てられている。ここで、動的に割り当てる方法とは、クライアントがネットワークにログインすると、ＤＨＣＰサーバーが、予め用意されたＩＰアドレスの1つをそのクライアントに割り当てるものである。したがって、クライアントが同一のエリア上に存在し続けても、クライアントのログイン・ログアウトの動作により、そのクライアントに割り当てられるポインティング・アドレスが変動する場合がある。
【００２４】
また、「外部ローカルＤＮＳ」フィールドは、クライアントの移動先エリアの外部ローカルＤＮＳサーバのＩＰアドレスを示している。「外部ローカルＤＮＳ」の記録の手順についても後述する。「有効期限」フィールドは、各レコードの有効期限を示し、データ更新を促すためのものである。
【００２５】
以上のフォワーディング・テーブルにより転送された名前解決要求に基づき、外部ローカルＤＮＳサーバ２ｂは、ルートＤＮＳサーバ５に対して、ドメイン名の名前解決を要求する（符号▲２▼）。この名前解決では、ドメイン名をＩＰアドレスに変換する処理を反復する、即ち反復的に行う。すると、ルートＤＮＳサーバ５は、外部ローカルＤＮＳサーバ２ｂに対して、上記ドメイン名の名前解決についての権限を持つ権限ＤＮＳサーバ６のＩＰアドレスを返答する（符号▲３▼）。
【００２６】
次に、外部ローカルＤＮＳサーバ２ｂは、権限ＤＮＳサーバ６に対して、反復的名前解決を要求する（符号▲４▼）。この要求を受けた権限ＤＮＳサーバ６は、リクエスト・ルーティング・テーブルに基づいて所定のエッジサーバ３ｂを選択し、そのＩＰアドレスを外部ローカルＤＮＳサーバ２ｂに返す（符号▲５▼）。ここで、リクエスト・ルーティング・テーブルは、ローカルＤＮＳサーバ２ａ，２ｂのＩＰアドレスと、これと同一エリアのエッジサーバ３ａ，３ｂのＩＰアドレスとを対応付けて記録したテーブルである。そして、権限ＤＮＳサーバ６は、要求してきた外部ローカルＤＮＳサーバ２ｂのアドレスをリクエスト・ルーティング・テーブルから参照して、対応するエッジサーバ（１９２．１６８．２．３）のＩＰアドレスを特定する。外部ローカルＤＮＳサーバ２ｂは、このエッジサーバ３ｂのＩＰアドレス（１９２．１６８．２．３）をクライアント１のレゾルバに返す（符号▲６▼）。
以上により、クライアント１のＷｅｂブラウザは、最寄りのエリアである外部ネットワークのエッジサーバ３ｂ（http://192.168.2.3/video.awt）にアクセスして、所望のコンテンツの配信を受けることができる（符号▲７▼▲８▼）。
【００２７】
次に、ホーム・ローカルＤＮＳサーバがフォワーディングテーブルを作成・管理する手順について図２を参照して説明する。
【００２８】
図２において、ローカルＤＮＳサーバ２ａは、ホーム・エージェントから取得したクライアント１のバインディング・キャッシュの有効期限を判断し、有効期限が切れる前に（ステップＳ１）、警告（「バインディング・ワーニング」）をホーム・エージェント（ＨＡ）に送信する（ステップＳ２）。つまり、最新のバインディング・キャッシュを要求する。
【００２９】
その後、ローカルＤＮＳサーバ２ａは、ホーム・エージェントからバインディング・アップデートを受信したか判断する（ステップＳ３）。バインディング・アップデートとは、上記バインディング・キャッシュの更新情報である。ステップＳ３で、バインディング・アップデートを受信していない場合は、クライアント１がホームネットワークに存在している場合なので、ローカルＤＮＳサーバ２ａの処理は終了となる。
【００３０】
ステップＳ３でバインディング・アップデートを受信している場合は、クライアント１がホームネットワークから外部ネットワークへ移動したことを示す場合である。この場合は、ローカルＤＮＳサーバ２ａは、バインディング・キャッシュ内の気付アドレスとホームアドレスが一致しているか判断する（ステップＳ４）。ステップＳ４で、気付アドレスとホームアドレスが一致している場合は、クライアント１が外部ネットワークからホームネットワークに戻っている場合なので、ローカルＤＮＳサーバ２ａの処理は終了となる。
【００３１】
ステップＳ４で「Ｎｏ」の場合は、もう一度、クライアント１の気付アドレスとホームアドレスが一致しているか判断する（ステップＳ５）。ステップＳ５で、気付アドレスとホームアドレスが一致すれば、クライアント１が外部ネットワークからホームネットワークに戻っていることになるので、ローカルＤＮＳサーバ２ａの処理は終了となる。
【００３２】
ステップＳ５で気付アドレスとホームアドレスが一致していない場合は、クライアント１が外部ネットワークに存在していることになる。そこで、ローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１のポインティング・アドレスとホーム・エージェントから取得した気付アドレスが一致しているか判断する（ステップＳ６）。
ステップＳ６で、ポインティング・アドレスと気付アドレスが一致している場合は、クライアント１の現在の移動情報が既にフォワーディング・テーブル２１に蓄積されていることになるので、ローカルＤＮＳサーバ２ａの処理は終了となる。
【００３３】
ステップＳ６でポインティング・アドレスと気付アドレスが一致していない場合は、クライアント１の現在の移動情報がフォワーディング・テーブル２１に蓄積されていない可能性がある。そこで、ローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１の権限ゾーン内にクライアント１の気付アドレスが含まれているか判断する（ステップＳ７）。ここで、権限ゾーンに記録されるデータは、クライアント１が別のエリアに移動しない限り変動しない。従って、ステップＳ７で、権限ゾーン内にクライアント１の気付アドレスが含まれている場合とは、クライアント１が存在するエリアが前回のフォワーディング・テーブル２１の更新時と変わっていないことを示す。
すなわち、この場合は、クライアント１の気付アドレスがＤＨＣＰによって動的に割り当てられているため、前回のフォワーディング・テーブル２１更新時と変わっているものの、実際にはクライアント１が前回の更新時と同一エリア内にいることを示す。したがって、クライアント１の現在の移動情報が既にフォワーディング・テーブル２１に蓄積されているので、ローカルＤＮＳサーバ２ａの処理は終了となる。
【００３４】
ステップＳ７で、「Ｎｏ」の場合は、クライアント１の現在の移動情報がフォワーディング・テーブル２１に蓄積されていない場合であり、初めてクライアント１の移動情報をフォワーディング・テーブル２１に記録する場合か、又はクライアント１が他のエリア（外部ネットワーク）に移動した場合である。そこで、クライアント１の現在の移動情報をフォワーディング・テーブル２１に蓄積するため、即ち、フォワーディング・テーブル２１に新しいエントリを作成するための以下の処理（ステップＳ８〜Ｓ１０）を行う。
【００３５】
先ず、ローカルＤＮＳサーバ２ａは、クライアント１の気付アドレスからクライアント１の移動先のエリアの権限ゾーンのアドレス及び外部ローカルＤＮＳサーバのアドレスを求める名前解決要求を実行する（ステップＳ８）。移動先エリアの権限ゾーンのアドレスはそのエリアに存在する外部ローカルＤＮＳサーバが把握しているので、上記名前解決要求は、当該名前解決要求の権威を持つ外部ローカルＤＮＳサーバ（例えば、クライアント１の移動先の外部ローカルＤＮＳサーバ２ｂ）のＩＰアドレスを探す処理を繰り返し実行する反復的逆引き名前解決要求として実行される。そして、ローカルＤＮＳサーバ２ａは、ステップＳ８のアドレスに基づいて外部ローカルＤＮＳサーバに、権限ゾーンのアドレスを問い合わせる（ステップＳ９）。
【００３６】
その後、ローカルＤＮＳサーバ２ａは、クライアント１の気付アドレスと、ステップＳ８及びステップＳ９で取得した権限ゾーンのアドレス及び外部ローカルＤＮＳサーバのＩＰアドレスをフォワーディング・テーブル２１に記述する（ステップＳ１０）。
【００３７】
次に、クライアント１がエッジサーバ２ａ、２ｂから所望のコンテンツの配信を受けるときの処理手順を、図４を参照して説明する。クライアント１が所望のコンテンツの配信を受けるべく、クライアント１のレゾルバから、名前解決要求があった場合は、ホーム・ローカルＤＮＳサーバ２ａが図４に示す処理を行う。先ず、ホーム・ローカルＤＮＳサーバ２ａは、レゾルバから名前解決要求を受信する（ステップＳ２１）。すると、ホーム・ローカルＤＮＳサーバ２ａは、クライアント１のホームアドレス及び気付アドレスの組からなる情報であるバインディング・キャッシュを参照し（ステップＳ２２）、バインディング・キャッシュがあるか否か判断する（ステップＳ２３）。
【００３８】
ステップＳ２３でバインディング・キャッシュがないと判断された場合は、クライアント１がホームネットワークから移動していないか、フォワーディング・テーブル２１における有効期限が切れていることを示すので、ホーム・ローカルＤＮＳサーバ２ａは、ホーム・エージェントに対して、警告（バインディング・ワーニング・メッセージ）を送信する（ステップＳ２４）。
【００３９】
その後、ホーム・ローカルＤＮＳサーバ２ａは、ホーム・エージェントからバインディング・アップデートを受信したか判断する（ステップＳ２５）。ここで、バインディング・アップデートの受信がない場合は、クライアント１がホームネットワークに存在していることを示すので、ホーム・ローカルＤＮＳサーバ２ａは、反復的名前解決の実行を行う（ステップＳ２６）。そして、ホーム・ローカルＤＮＳサーバ２ａは、反復的名前解決の実行結果をレゾルバに送信して、処理を終了する（ステップＳ２７）。
【００４０】
ステップＳ２５で、バインディング・アップデートの受信があった場合は、クライアント１がホームネットワークに存在していないことを示すので、ホーム・ローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１のポインティング・アドレスとクライアント１の気付アドレスが一致しているか判断する（ステップＳ２８）。
【００４１】
ステップＳ２８で、ポインティング・アドレスと気付アドレスが一致していない場合、ホーム・ローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１の権限ゾーン内にクライアント１の気付アドレスが含まれているか判断する（ステップＳ２９）。ステップＳ２９で、権限ゾーン内に気付アドレスが入っていない場合は、クライアント１が別のエリアに移動したこととなるので、フォワーディング・テーブル２１の記録を更新する必要がある。そこで、ホーム・ローカルＤＮＳサーバ２ａは、クライアント１の気付アドレスからクライアント１の移動先のエリアの権限ゾーンのアドレス及び外部ローカルＤＮＳサーバのアドレスを求める名前解決要求を繰り返し実行する（ステップＳ３０）。上記名前解決要求は、図２のステップＳ８と同様に、当該名前解決要求の権威を持つ外部ローカルＤＮＳサーバ（移動先の外部ローカルＤＮＳサーバ２ｂ）のＩＰアドレスを探す処理を繰り返し実行する反復的逆引き名前解決要求として実行する。
次に、ステップＳ３１ではホーム・ローカルＤＮＳサーバ２ａは、外部ローカルＤＮＳサーバを見つけたか否か判断し（ステップＳ３１）、「Ｎｏ」の場合は、その要求を諦め、後述のステップＳ２７の処理を実行する。
【００４２】
ステップＳ３１で、名前解決要求の権威を持つローカルＤＮＳサーバが見つかった場合、ホーム・ローカルＤＮＳサーバ２ａは、図２のステップＳ９及びステップＳ１０と同様にして、権限ゾーンのアドレス及び外部ローカルＤＮＳサーバのＩＰアドレスを取得し、このデータによりフォワーディング・テーブル２１を更新する（ステップＳ３２）。
その後、ホーム・ローカルＤＮＳサーバ２ａは、ステップＳ３２で更新されたフォワーディング・テーブル２１を用いて外部ローカルＤＮＳサーバ２ｂと通信し、クライアント１からのエッジサーバの名前解決要求をこの外部ローカルＤＮＳサーバ２ｂに転送して、再帰的に当該名前解決要求を実行させる（ステップＳ３３）。外部ローカルＤＮＳサーバ２ｂは、エッジサーバの名前解決の実行結果をレゾルバに送信して、処理を終了する（ステップＳ２７）。
クライアント１のレゾルバがエッジサーバの名前解決の実行結果を受信することにより、最寄りのエッジサーバ３ｂのＩＰアドレスを取得し、クライアント１は、エッジサーバ３ｂから所望のコンテンツの配信を受ける。
【００４３】
次に、外部ローカルＤＮＳサーバ２ｂがダウンしたり、サーバのアドレスが変更された場合に対処するため、フォワーディング・テーブル２１の管理方法について、図５を参照して説明する。
先ず、ホーム・ローカルＤＮＳサーバ２ａは、フォワーディング・テーブル２１に記録されている各レコードの有効期限を判断し、有効期限が切れる前に（ステップＳ４１）、そのレコードのポインティング・アドレスの名前解決要求を実行する（ステップＳ４２）。この名前解決要求は、図２のステップＳ８と同様に、当該名前解決要求の権威を持つ外部ローカルＤＮＳサーバ（例えば、クライアント１の移動先の外部ローカルＤＮＳサーバ２ｂ）のＩＰアドレスを探す処理を繰り返し実行する反復的逆引き名前解決要求として実行する。
【００４４】
その後、ホーム・ローカルＤＮＳサーバ２ａは、ステップＳ４２の処理によって外部ローカルＤＮＳサーバが見つかったか判断する（ステップＳ４３）。ステップＳ４３で、外部ローカルＤＮＳサーバが見つからなかった場合は、クライアント１がホームネットワークに存在していて外部ローカルＤＮＳサーバを必要としない場合であるので、ホーム・ローカルＤＮＳサーバ２ａはフォワーディング・テーブル２１の管理処理を終了する。
【００４５】
ステップＳ４３で、外部ローカルＤＮＳサーバが見つかった場合、ホーム・ローカルＤＮＳサーバ２ａは、その外部ローカルＤＮＳサーバのＩＰアドレスと、フォワーディング・テーブル２１に記録されている外部ローカルＤＮＳサーバのＩＰアドレスとが同一であるか判断する（ステップＳ４４）。
ステップＳ４４で同一と判断した場合は、外部ローカルＤＮＳサーバのダウン又はサーバ変更が生じていないので、フォワーディング・テーブル２１の内容を変更する必要がなく、ホーム・ローカルＤＮＳサーバ２ａはフォワーディング・テーブル２１の管理処理を終了する。
【００４６】
ステップＳ４４で、同一でないと判断した場合は、外部ローカルＤＮＳサーバのダウン又はサーバ変更が生じている。そこで、ホーム・ローカルＤＮＳサーバ２ａは、図２のステップＳ１０と同様にして、クライアント１の気付アドレス、並びに外部ローカルＤＮＳサーバから受信した権限ゾーンのアドレス及び外部ローカルＤＮＳサーバのＩＰアドレスをフォワーディング・テーブル２１に記録する（ステップＳ４５）。
これにより、外部ローカルＤＮＳサーバ２ｂのダウン又はサーバの変更によって、新たな外部ローカルＤＮＳサーバ２ｂが設置されても、その内容がフォワーディング・テーブル２１に正しく更新されるので、既に説明した本実施形態のルーティング方法を実行することができる。
【００４７】
ところで、上記したようにしてクライアントに最も近いエッジサーバが判明したとしても、エッジサーバからクライアントへのコンテンツ送信の経路が最適でなければ、本発明の効果が充分発揮できない。例えば、図１においてエッジサーバがクライアントと同一エリアにいながら、他のエリアを経由してクライアントと通信するような不具合を指す。そこで、エッジサーバが経路最適化拡張機能（RO :Route Optimization）つまり通信相手との通信経路として最短の経路を自動的に選択する経路最適化機能をサポートすることが好ましい。
【００４８】
以上により、本実施形態のリクエスト・ルーティング・システムによれば、ローカルＤＮＳサーバ２ａがモバイルＩＰネットワークのクライアント１に対して、そのクライアント１の存在位置を考慮したリクエスト・ルーティングを行うので、最適なエッジサーバへクライアント１を誘導することができる。
例えば、図１において、ローカルＤＮＳサーバ２ａは、クライアント１がホームネットワークにいるときはホームネットワークのエッジサーバ３ａからコンテンツをクライアント１へ配信させることができる。また、ローカルＤＮＳサーバ２ａは、クライアント１が外部ネットワークに移動しているときは外部ネットワークのエッジサーバ３ｂからコンテンツをクライアント１へ配信させることができる。
【００４９】
なお、上記実施形態におけるリクエスト・ルーティング・システムの機能を実現するためのプログラムをコンピュータシステムに読み込ませ、実行することにより各種の処理を実行してもよい。
【００５０】
【発明の効果】
以上の説明で明らかなように、本発明によれば、ホーム・ローカルＤＮＳサーバがクライアントの移動先のローカルＤＮＳサーバのアドレスを記録し、クライアントからのコンテンツにアクセスするために必要となる名前解決の要求を当該記録されたアドレスのローカルＤＮＳサーバに転送するので、移動体ネットワークのクライアントに対して、クライアントの位置を考慮したルーティングを行うことができ、クライアントの位置に対応したエッジサーバへ当該クライアントを誘導することが可能となる。
【図面の簡単な説明】
【図１】  本発明の実施形態によるリクエスト・ルーティング・システムを示す概念模式図である。
【図２】  ホーム・ローカルＤＮＳサーバが行う処理を示すフローチャートである。
【図３】  フォワーディング・テーブル２１の具体例を示す図である。
【図４】  レゾルバからの名前解決要求に対する処理手順を示すフローチャートである。
【図５】  フォワーディング・テーブル２１の管理方法を示すフローチャートである。
【符号の説明】
１          クライアント
２ａ        ローカルＤＮＳサーバ（ホーム・ローカルＤＮＳサーバ）
２ｂ        ローカルＤＮＳサーバ（外部ローカルＤＮＳサーバ）
３ａ、３ｂ  エッジサーバ
４          オリジン・サーバ
５          ルートＤＮＳサーバ
６          権限ＤＮＳサーバ
２１          フォワーディング・テーブル
【図１】
0004180279.tif 000002
【図２】
0004180279.tif 000003
【図３】
0004180279.tif 000004
【図４】
0004180279.tif 000005
【図５】
0004180279.tif 000006