(57)【要約】【課題】クライアント装置が送信した名前解決問い合わせに対して、名前解決ができないことを低減すること。【解決手段】ＤＮＳサーバ装置は、クライアント装置が送信したＤＮＳクエリ要求に基づき、権威ＤＮＳサーバ装置へ、資源を問い合わせる要求部と、要求部による資源の問い合わせに応じて、権威ＤＮＳサーバ装置へ問い合わせた結果を記憶する一次キャッシュとを備え、要求部は、資源の問い合わせに対して、権威ＤＮＳサーバ装置に異常が発生している場合に、権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、ＤＮＳクエリ要求を転送し、一次キャッシュは、他のＤＮＳサーバ装置が送信した応答に含まれる資源を記憶する。【選択図】図２
2019068208.tif 000002
【特許請求の範囲】
【請求項１】
クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置であって、
前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせる要求部と、
前記要求部による前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を記憶する一次キャッシュと
を備え、
前記要求部は、前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送し、
前記一次キャッシュは、前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を記憶する、ＤＮＳサーバ装置。
【請求項２】
前記一次キャッシュに記憶された前記問い合わせた結果のうち、ポジティブキャッシュを記憶する二次キャッシュ
を備え、
前記要求部は、前記他のＤＮＳサーバ装置に異常が発生している場合に、前記二次キャッシュへ、前記資源を問い合わせる、請求項１に記載のＤＮＳサーバ装置。
【請求項３】
前記二次キャッシュは、前記一次キャッシュがキャッシュする時間よりも長い時間、前記ポジティブキャッシュを記憶する、請求項２に記載のＤＮＳサーバ装置。
【請求項４】
前記資源の有効生存期間として、前記権威ＤＮＳサーバ装置又は前記他のＤＮＳサーバ装置で設定された有効生存期間と、前記二次キャッシュで設定された有効生存期間とのうち、短い有効生存期間を、前記クライアント装置に応答する応答部をさらに備える、
請求項２又は請求項３に記載のＤＮＳサーバ装置。
【請求項５】
ＤＮＳサーバ装置の識別情報と、ＤＮＳクエリ要求を転送する優先順位を示す情報とを関連付けて記憶する記憶部をさらに備え、
前記要求部は、前記記憶部に記憶された前記優先順位を示す情報にしたがって、前記他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送する、
請求項１から４のいずれか一項に記載のＤＮＳサーバ装置。
【請求項６】
クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置が実行する方法であって、
前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせるステップと、
前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を、一次キャッシュに記憶するステップと、
前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送するステップと、
前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を、前記一次キャッシュに記憶するステップと
を有する、方法。
【請求項７】
クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置のコンピュータに、
前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせるステップと、
前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を、一次キャッシュに記憶するステップと、
前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送するステップと、
前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を、前記一次キャッシュに記憶するステップと
を実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ＤＮＳサーバ装置、方法、及びプログラムに関する。
【背景技術】
【０００２】
ドメイン名（domain name）とＩＰアドレス（Internet Protocol Address）とを対応させる名前管理システム（ＤＮＳ：Domain Name System）が知られている。名前管理システムは、権威ＤＮＳサーバ装置群とＤＮＳサーバ装置とから構成される。
ＤＮＳサーバ装置は、クライアント装置が送信した名前解決の依頼（ＤＮＳクエリ要求）に応じて、権威ＤＮＳサーバ装置群に含まれる権威ＤＮＳサーバ装置に名前解決のための問い合わせ（再帰ＤＮＳクエリ要求）を行う。この問い合わせに応じて、権威ＤＮＳサーバ装置群に含まれる権威ＤＮＳサーバ装置は、回答データ（再帰ＤＮＳクエリ応答）を送信する。権威ＤＮＳサーバ装置が送信した再帰ＤＮＳクエリ応答を受信したＤＮＳサーバ装置は、受信した再帰ＤＮＳクエリ応答を一次キャッシュに記憶する。
その後、クライアント装置が、そのドメイン名と同じドメイン名を解決するためのＤＮＳクエリ要求を送信した場合について説明する。ＤＮＳサーバ装置は、そのＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求に含まれるドメイン名が、一次キャッシュに記憶されているか否かを判定する。ＤＮＳサーバ装置は、ＤＮＳクエリ要求に含まれるドメイン名が、一次キャッシュに記憶されている場合、その一次キャッシュに、そのドメイン名と関連付けて記憶されているＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、クライアント装置へ送信する。これによって、名前管理システムの処理負荷を低減することができる。
ここで、名前管理システムにおいて、ドメイン名の名前を解決できない場合には、そのドメイン名を、名前を解決できないドメイン名として、ＤＮＳサーバ装置の一次キャッシュに記憶する。そして、ＤＮＳサーバ装置は、ＤＮＳクエリ要求を受信した場合に、一次キャッシュを参照して、そのＤＮＳクエリ要求に含まれるドメイン名が、名前を解決できないドメイン名と同一である場合には、名前を解決できないことを示す情報を返送する。このようにすることで、ＤＮＳサーバ装置が、権威ＤＮＳサーバ装置へ、名前を解決できないドメイン名の名前を解決するための問い合わせを行うことによる名前管理システムの負荷が生じないようにできる。
【０００３】
名前管理システムに関して、権威サーバ装置へのアクセスを低減する技術が知られている（例えば、特許文献１参照）。この技術によれば、ＥＮＵＭキャッシュサーバ１０は、クエリ要求を受信した場合に、ＥＮＵＭデータ記憶部１３ａに記憶された電話番号ごとに、各レコードに対応するクエリ要求を受信した回数を計数する。そして、ＥＮＵＭキャッシュサーバ１０は、計数された回数が所定の回数を超えたレコードが存在する場合には、該レコードを記憶する期間を延長して、ＥＮＵＭデータ記憶部１３ａに記憶させる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１１７５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
権威ＤＮＳサーバ装置がダウンした場合や、権威ＤＮＳサーバ装置がＤＮＳサーバ装置からの接続要求を拒否した場合や、ネットワーク障害などにより無応答となる場合および該当の権威ＤＮＳサーバ装置に問い合わせたドメインが存在しなかった場合や、異常応答などによって、ドメイン名の名前を解決ができなかった場合を考える。この場合、その名前の解決ができなかったドメイン名によっては、多くのクライアント装置によって、そのドメイン名の名前を解決するための問い合わせが行われるため、ＤＮＳサーバ装置に過剰な負荷が発生することにより、多数のユーザのサービスへ影響が及ぶおそれがある。
本発明は、上記問題を解決すべくなされたもので、クライアント装置からＤＮＳサーバ装置への名前解決問い合わせに対して、名前解決ができないことを低減することを第１の目的とする。
また、ＤＮＳサーバ装置への過剰な負荷を下げ、多数のユーザのサービスに悪影響を与えないようにすることを第２の目的とする。
【課題を解決するための手段】
【０００６】
（１）本発明の一態様は、クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置であって、前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせる要求部と、前記要求部による前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を記憶する一次キャッシュとを備え、前記要求部は、前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送し、前記一次キャッシュは、前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を記憶する、ＤＮＳサーバ装置である。ここで、資源は、ドメイン名、ＩＰアドレスやメールサーバ名などのＲデータ、Ｔｙｐｅ、クラス、有効生存期間（ＴＴＬ）など少なくとも一つを含む。
（２）本発明の一態様は、上記（１）に記載のＤＮＳサーバ装置において、前記一次キャッシュに記憶された前記問い合わせた結果のうち、ポジティブキャッシュを記憶する二次キャッシュを備え、前記要求部は、前記他のＤＮＳサーバ装置に異常が発生している場合に、前記二次キャッシュへ、前記資源を問い合わせる、ＤＮＳサーバ装置である。
（３）本発明の一態様は、上記（２）に記載のＤＮＳサーバ装置において、前記二次キャッシュは、前記一次キャッシュがキャッシュする時間よりも長い時間、前記ポジティブキャッシュを記憶する、ＤＮＳサーバ装置である。
（４）本発明の一態様は、前記資源の有効生存期間として、前記権威ＤＮＳサーバ装置又は前記他のＤＮＳサーバ装置で設定された有効生存期間と、前記二次キャッシュで設定された有効生存期間とのうち、短い有効生存期間を、前記クライアント装置に応答する応答部をさらに備える、ＤＮＳサーバ装置である。
（５）本発明の一態様は、上記（１）から上記（４）のいずれか一項に記載のＤＮＳサーバ装置において、ＤＮＳサーバ装置の識別情報と、ＤＮＳクエリ要求を転送する優先順位を示す情報とを関連付けて記憶する記憶部をさらに備え、前記要求部は、前記記憶部に記憶された前記優先順位を示す情報にしたがって、前記他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送する、ＤＮＳサーバ装置である。
（６）本発明の一態様は、クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置が実行する方法であって、前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせるステップと、前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を、一次キャッシュに記憶するステップと、前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送するステップと、前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を、前記一次キャッシュに記憶するステップとを有する、方法である。
（７）本発明の一態様は、クライアント装置と、権威ＤＮＳサーバ装置との間に設けられたＤＮＳサーバ装置のコンピュータに、前記クライアント装置が送信したＤＮＳクエリ要求に基づき、前記権威ＤＮＳサーバ装置へ、資源を問い合わせるステップと、前記資源の前記問い合わせに応じて、前記権威ＤＮＳサーバ装置へ問い合わせた結果を、一次キャッシュに記憶するステップと、前記資源の前記問い合わせに対して、前記権威ＤＮＳサーバ装置に異常が発生している場合に、前記権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、前記ＤＮＳクエリ要求を転送するステップと、前記他のＤＮＳサーバ装置が送信した応答に含まれる資源を、前記一次キャッシュに記憶するステップとを実行させる、プログラムである。
【発明の効果】
【０００７】
本発明の実施形態によれば、クライアント装置が送信した名前解決問い合わせに対して、名前解決ができないことを低減することができる。
また、ＤＮＳサーバ装置への過剰な負荷を下げ、多数のユーザのサービスに悪影響を与えないようにすることができる。
【図面の簡単な説明】
【０００８】
【図１】第一の実施形態に係る通信システムの一例を示す図である。
【図２】第一の実施形態に係る通信システムを構成する端末装置、ＤＮＳサーバ装置、権威ＤＮＳサーバ装置の一例を示す図である。
【図３】転送先優先順位テーブルの一例を示す図である。
【図４】リソースレコードに記憶される情報の一例を示す図である。
【図５】第一の実施形態に係る通信システムの動作の一例を示すシーケンスチャートである。
【図６】第二の実施形態に係る通信システムを構成する端末装置、ＤＮＳサーバ装置、権威ＤＮＳサーバ装置の一例を示す図である。
【図７】第二の実施形態に係る通信システムの動作の一例（その１）を示すシーケンスチャートである。
【図８】第二の実施形態に係る通信システムの動作の一例（その２）を示すシーケンスチャートである。
【図９】第二の実施形態に係る通信システムの動作の一例（その３）を示すシーケンスチャートである。
【図１０】第二の実施形態に係る通信システムの動作の一例（その４）を示すシーケンスチャートである。
【図１１】第二の実施形態に係る通信システムの動作の一例（その５）を示すシーケンスチャートである。
【発明を実施するための形態】
【０００９】
次に、本実施形態に係るＤＮＳサーバ装置、方法、及びプログラムを、図面を参照しつつ説明する。以下で説明する実施形態は一例に過ぎず、本発明が適用される実施形態は、以下の実施形態に限られない。
なお、実施形態を説明するための全図において、同一の機能を有するものは同一符号を用い、繰り返しの説明は省略する。
また、本願でいう「ＸＸに基づく」とは、「少なくともＸＸに基づく」ことを意味し、ＸＸに加えて別の要素に基づく場合も含む。また、「ＸＸに基づく」とは、ＸＸを直接に用いる場合に限定されず、ＸＸに対して演算や加工が行われたものに基づく場合も含む。「ＸＸ」は、任意の要素（例えば、任意の情報）である。
【００１０】
（第一の実施形態）
（通信システム）
図１は、第一の実施形態に係る通信システムの一例を示す図である。通信システム１は、端末装置１００−１、端末装置１００−２、・・・、端末装置１００−Ｎ（Ｎは、Ｎ＞０の整数）と、名前管理システム（ＤＮＳ：Domain Name System）サーバ装置２００−１、ＤＮＳサーバ装置２００−２、・・・、ＤＮＳサーバ装置２００−Ｍ（Ｍは、Ｍ＞０の整数）と、権威ＤＮＳサーバ装置３００−１、権威ＤＮＳサーバ装置３００−２とを備える。端末装置１００−１、端末装置１００−２、・・・、端末装置１００−Ｎと、ＤＮＳサーバ装置２００−１、ＤＮＳサーバ装置２００−２、・・・、ＤＮＳサーバ装置２００−Ｍと、権威ＤＮＳサーバ装置３００−１、権威ＤＮＳサーバ装置３００−２とは、インターネットなどのネットワーク５０を介して接続される。
以下、端末装置１００−１、端末装置１００−２、・・・、端末装置１００−Ｎのうち、任意の端末装置を、端末装置１００と記載する。また、ＤＮＳサーバ装置２００−１、ＤＮＳサーバ装置２００−２、・・・、ＤＮＳサーバ装置２００−Ｍのうち、任意のＤＮＳサーバ装置を、ＤＮＳサーバ装置２００と記載する。また、権威ＤＮＳサーバ装置３００−１、権威ＤＮＳサーバ装置３００−２のうち、任意の権威ＤＮＳサーバ装置を、権威ＤＮＳサーバ装置３００と記載する。
端末装置１００は、ユーザが利用するクライアント装置である。例えば、端末装置１００は、ユーザによってドメイン名を示す情報が入力された場合に、入力されたドメイン名を示す情報を含み、そのドメイン名に対応するＩＰアドレスなどの資源を問い合わせる情報であるＤＮＳクエリ要求を作成し、作成したＤＮＳクエリ要求を、ＤＮＳサーバ装置２００−１へ送信する。
ＤＮＳサーバ装置２００−１は、端末装置１００が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求に含まれるドメイン名、ｔｙｐｅ、クラスなどを示す情報を取得する。ＤＮＳサーバ装置２００−１は、ドメイン名、ｔｙｐｅ、クラスなどを示す情報と資源を示す情報とを関連付けて、一次キャッシュメモリに記憶している。ＤＮＳサーバ装置２００−１は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリに記憶されているか否かを判定する。一次キャッシュメモリに、取得したドメイン名を示す情報に関連付けて、資源を示す情報が記憶されていない場合、ＤＮＳサーバ装置２００−１は、再帰ＤＮＳクエリ要求を作成する。ＤＮＳサーバ装置２００−１は、作成した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−１へ送信する。
ＤＮＳサーバ装置２００−１は、権威ＤＮＳサーバ装置３００−１へ、再帰ＤＮＳクエリ要求を送信してから、時間閾値によって示される時間が経過しても、その再帰ＤＮＳクエリ要求に対する応答である再帰ＤＮＳクエリ応答を受信しない場合には、ＤＮＳサーバ装置２００−２へ、ＤＮＳクエリ要求を転送する。
ＤＮＳサーバ装置２００−２は、ＤＮＳサーバ装置２００−１が転送したＤＮＳクエリ要求を受信し、キャッシュで名前解決できる場合には、ＤＮＳクエリ応答をＤＮＳサーバ装置２００−１に送信する。一方、キャッシュで名前解決できない場合には、ＤＮＳサーバ装置２００−２は、受信したＤＮＳクエリ要求に基づいて、再帰ＤＮＳクエリ要求を作成する。ＤＮＳサーバ装置２００−２は、作成した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−２へ送信する。
【００１１】
権威ＤＮＳサーバ装置３００−２は、例えば、ドメイン名を示す情報と資源を示す情報とを関連付けた変換表（リソースレコードファイル）を管理している。
権威ＤＮＳサーバ装置３００−２は、ＤＮＳサーバ装置２００−２が送信した再帰ＤＮＳクエリ要求を受信し、受信した再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、リソースレコードファイルを検索することによって取得する。権威ＤＮＳサーバ装置３００−２は、検索結果を含む再帰ＤＮＳクエリ応答を、ＤＮＳサーバ装置２００−２へ送信する。ここで、検索結果には、ドメイン名に関連付けて記憶されている資源を示す情報、又はドメイン名の名前を解決できないことを示す情報のいずれか一方が含まれる。
ＤＮＳサーバ装置２００−２は、権威ＤＮＳサーバ装置３００−２が送信した再帰ＤＮＳクエリ応答を受信し、受信した再帰ＤＮＳクエリ応答の宛先をＤＮＳサーバ装置２００−１とすることによって、ＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答をＤＮＳサーバ装置２００−１へ送信する。
ＤＮＳサーバ装置２００−１は、ＤＮＳサーバ装置２００−２が送信したＤＮＳクエリ応答を受信する。この際、ＤＮＳサーバ装置２００−１は、そのクエリ応答を、端末装置１００が送信したＤＮＳクエリ要求に対するＤＮＳクエリ応答として、転送する。
ＤＮＳサーバ装置２００−１は、受信したＤＮＳクエリ応答に含まれる情報に基づいて、一次キャッシュメモリに記憶されている情報を更新する。
具体的には、ＤＮＳサーバ装置２００−１は、受信したＤＮＳクエリ応答に、ドメイン名を示す情報と、資源を示す情報とが含まれる場合には、そのドメイン名を示す情報と、その資源を示す情報とを関連付けて、一次キャッシュメモリに記憶する。また、ＤＮＳサーバ装置２００−１は、ＤＮＳクエリ応答に、ドメイン名の名前を解決できないことを示す情報が含まれる場合には、ドメイン名を示す情報と、そのドメイン名の名前を解決できないことを示す情報とを関連付けて、一次キャッシュメモリに記憶する。
ＤＮＳクエリ応答には、ドメイン名に関連付けられている資源を示す情報、及びドメイン名の名前を解決できないことを示す情報のいずれかが含まれる。
端末装置１００は、ＤＮＳサーバ装置２００−１が送信したＤＮＳクエリ応答を受信する。端末装置１００は、受信したＤＮＳクエリ応答に含まれる情報に基づいて、資源を示す情報が含まれる場合には、その資源を示す情報に基づいて、サーバ装置（図示なし）と通信を行う。また、端末装置１００は、受信したＤＮＳクエリ応答に、ドメイン名の名前を解決できないことを示す情報が含まれる場合には、ドメイン名の名前を解決できないことを表した文字情報又は画像を表示する。
【００１２】
（通信システムの構成）
図２は、第一の実施形態に係る通信システムを構成する端末装置、ＤＮＳサーバ装置、権威ＤＮＳサーバ装置の一例を示す図である。以下、端末装置１００、ＤＮＳサーバ装置２００、権威ＤＮＳサーバ装置３００について順次説明する。
（端末装置）
端末装置１００は、通信部１１０と、記憶部１２０と、情報処理部１３０と、操作部１４０と、表示部１６０と、前記各構成要素を図２に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン１５０とを備える。
通信部１１０は、通信モジュールによって実現される。通信部１１０は、ネットワーク５０を経由して、ＤＮＳサーバ装置２００などの他の装置と通信を行う。通信部１１０は、ＤＮＳサーバ装置２００へ、情報処理部１３０が出力したＤＮＳクエリ要求を送信する。また、通信部１１０は、ＤＮＳサーバ装置２００が送信したＤＮＳクエリ応答を受信し、受信したＤＮＳクエリ応答を、情報処理部１３０へ出力する。
記憶部１２０は、例えば、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）、ＨＤＤ（Hard Disk Drive）、フラッシュメモリ、またはこれらのうち複数が組み合わされたハイブリッド型記憶装置などにより実現される。記憶部１２０には、情報処理部１３０により実行されるプログラム１２２が記憶される。
【００１３】
情報処理部１３０の全部または一部は、例えば、ＣＰＵ（Central Processing Unit）などのプロセッサが記憶部１２０に格納されたプログラム１２２を実行することにより実現される機能部（以下、ソフトウェア機能部と称する）である。なお、情報処理部１３０の全部または一部は、ＬＳＩ（Large Scale Integration）、ＡＳＩＣ（Application Specific Integrated Circuit）、またはＦＰＧＡ（Field-Programmable Gate Array）などのハードウェアにより実現されてもよく、ソフトウェア機能部とハードウェアとの組み合わせによって実現されてもよい。
情報処理部１３０は、例えば、処理部１３２と、作成部１３４とを備える。
処理部１３２は、ユーザが操作部１４０を操作することによってドメイン名を示す情報を入力した場合に、操作部１４０が出力するドメイン名を示す情報を取得する。操作部１４０は、取得したドメイン名を示す情報を、作成部１３４へ出力する。
また、処理部１３２は、通信部１１０が出力したＤＮＳクエリ応答を取得し、取得したＤＮＳクエリ応答に含まれる情報に基づいて、処理を行う。具体的には、処理部１３２は、取得したＤＮＳクエリ応答に、資源を示す情報が含まれる場合には、その資源を示す情報に基づいて、サーバ装置（図示なし）へアクセスする。一方、処理部１３２は、取得したＤＮＳクエリ応答に、ドメイン名の名前を解決できないことを示す情報が含まれる場合には、ドメイン名の名前を解決できないことを表す文字情報又は画像を作成し、作成した文字情報又は画像を、表示部１６０に出力する。
また、作成部１３４は、処理部１３２が出力したドメイン名を示す情報を含むＤＮＳクエリ要求を作成する。作成部１３４は、作成したＤＮＳクエリ要求を、通信部１１０へ出力する。
操作部１４０は、例えば、タッチパネルなどによって構成され、表示部１６０に表示される画面に対するタッチ操作を検出し、タッチ操作の検出結果を、情報処理部１３０へ出力する。タッチ操作には、ドメイン名を入力する操作などが含まれる。表示部１６０は、処理部１３２が出力した画面を表示する。
【００１４】
（ＤＮＳサーバ装置）
ＤＮＳサーバ装置２００は、通信部２１０と、記憶部２２０と、情報処理部２３０と、前記各構成要素を図２に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン２５０とを備える。
通信部２１０は、通信モジュールによって実現される。通信部２１０は、ネットワーク５０を経由して、端末装置１００、他のＤＮＳサーバ装置２００、権威ＤＮＳサーバ装置３００などの他の装置と通信を行う。
通信部２１０は、端末装置１００が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求を、情報処理部２３０へ出力する。通信部２１０は、情報処理部２３０が出力した再帰ＤＮＳクエリ要求を取得し、取得した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００へ、送信する。通信部２１０は、権威ＤＮＳサーバ装置３００が送信した再帰ＤＮＳクエリ応答を受信し、受信した再帰ＤＮＳクエリ応答を、情報処理部２３０へ出力する。通信部２１０は、情報処理部２３０が出力したＤＮＳクエリ応答を取得し、取得したＤＮＳクエリ応答を、端末装置１００へ、送信する。通信部２１０は、情報処理部２３０が出力したＤＮＳクエリ要求を、他のＤＮＳサーバ装置２００へ転送する。通信部２１０は、他のＤＮＳサーバ装置２００が転送したＤＮＳクエリ要求を受信し、受信した再帰ＤＮＳ要求を、情報処理部２３０へ出力する。
記憶部２２０は、例えば、ＲＡＭ、ＲＯＭ、ＨＤＤ、フラッシュメモリ、またはこれらのうち複数が組み合わされたハイブリッド型記憶装置などにより実現される。記憶部２２０には、情報処理部２３０により実行されるプログラム２２２と、転送先優先順位テーブル２２４とが記憶される。
（転送先優先順位テーブル）
図３は、転送先優先順位テーブルの一例を示す図である。転送先優先順位テーブル２２４は、ＤＮＳサーバＩＤと、ＤＮＳサーバＩＤに該当するＤＮＳサーバ装置２００が、権威ＤＮＳサーバ装置３００へ、再帰ＤＮＳクエリ要求を送信してから、時間閾値によって示される時間が経過しても、権威ＤＮＳサーバ装置３００が送信した再帰ＤＮＳクエリ応答を受信しない場合に、ＤＮＳクエリ要求を転送するＤＮＳサーバ装置２００の優先順位とを関連付けたテーブル形式の情報である。図３に示される例では、ＤＮＳサーバＩＤ「Ｄｎｓ２００１」、「Ｄｎｓ２００２」、「Ｄｎｓ２００３」の各々に対して「１」、「２」、「３」が関連付けられている。このように構成することによって、ＤＮＳサーバ装置２００は、ＤＮＳクエリ要求の転送先を、ＤＮＳサーバ装置２００の優先順位や転送割合などの重み付けに基づいて、決定できる。
【００１５】
図２に戻り、情報処理部２３０について説明する。情報処理部２３０の全部または一部は、例えば、ＣＰＵなどのプロセッサが記憶部２２０に格納されたプログラム２２２を実行することにより実現されるソフトウェア機能部である。なお、情報処理部２３０の全部または一部は、ＬＳＩ、ＡＳＩＣ、またはＦＰＧＡなどのハードウェアにより実現されてもよく、ソフトウェア機能部とハードウェアとの組み合わせによって実現されてもよい。
情報処理部２３０は、例えば、処理部２３２と、要求部２３４と、更新部２３６と、応答部２３８と、一次キャッシュメモリ２４０とを備える。
一次キャッシュメモリ２４０は、端末装置１００が送信したＤＮＳクエリ要求に基づいて、権威ＤＮＳサーバ装置３００へ、ドメイン名の名前を解決することを問い合わせた結果を記憶する。具体的には、一次キャッシュメモリ２４０は、権威ＤＮＳサーバ装置３００が記憶するリソースレコートの一部の情報を記憶する。
図４は、リソースレコードの一例を示す図である。リソースレコードは、図４に示されるように、ドメイン名と、Ｒデータ、タイプ（Ｔｙｐｅ）、クラス、ＴＴＬなどの資源とを関連付けて記憶する。
「ドメイン名」は、リソースレコードを定義しているドメイン名などのＮＡＭＥを示す情報である。「ドメイン名」は、端末装置１００によって、名前の解決が要求されたドメイン名を示す。
「Ｒデータ」は、リソースレコードの資源の場所などを示す。「Ｒデータ」は、「ドメイン名」に該当する場所を示す。
「Ｔｙｐｅ」は、リソースレコードのタイプを示す。具体的には、タイプには、Ａ、ＡＡＡＡ、ＮＳ、ＣＮＡＭＥ，ＳＯＡ、ＰＴＲ、ＨＩＮＦＯ、ＭＩＮＦＯ、ＭＸ、ＴＸＴなどが含まれる。
「クラス」は、リソースレコードのクラスを示す。具体的には、クラスには、インターネット用を表す「１」が含まれる。
「ＴＴＬ（Time to live）」は、一次キャッシュメモリ２４０に記憶される情報の有効生存期間を示す。「ＴＴＬ」は、権威ＤＮＳサーバ装置３００によって設定される。図４に示される例では、ドメイン名「ｗｗｗ．ＡＡＡ．ｃｏ．ｊｐ」と、Ｒデータ「１９２．０．２．１」と、Ｔｙｐｅ「１」と、クラス「１」と、ＴＴＬ「１９８０」とが関連付けて記憶されている。
【００１６】
図２に戻り、処理部２３２について説明する。処理部２３２は、通信部２１０が出力したＤＮＳクエリ要求を取得し、取得したＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得する。そして、処理部２３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ２４０に記憶されているか否かを判定する。この場合、処理部２３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ２４０に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、一次キャッシュメモリ２４０から取得する。
処理部２３２は、取得した資源を示す情報を含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部２３８に出力し、応答部２３８は通信部２１０へ出力する。一方、処理部２３２は、取得したドメイン名を示す情報と関連付けて、ドメイン名の名前を解決できないことを示す情報が記憶されている場合には、一次キャッシュメモリ２４０からドメイン名の名前を解決できないとする情報を取得し、ドメイン名の名前を解決できないとするＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部２３８に出力し、応答部２３８は通信部２１０へ出力する。
処理部２３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ２４０に記憶されていない場合には、要求部２３４にＤＮＳクエリ要求を出力し、要求部２３４は再帰ＤＮＳクエリ要求を作成し、通信部２１０へ出力する。
【００１７】
要求部２３４は、処理部２３２が出力したＤＮＳクエリ要求を取得した場合、再帰ＤＮＳクエリ要求を作成する。要求部２３４は、作成した再帰ＤＮＳクエリ要求を、通信部２１０へ出力する。
また、要求部２３４は、作成した再帰ＤＮＳクエリ要求を通信部２１０へ出力してから時間閾値によって示される時間が経過する以前に、処理部２３２が、通信部２１０が出力した再帰ＤＮＳクエリ応答を取得した場合、処理部２３２は、取得した再帰ＤＮＳクエリ応答を、更新部２３６と、応答部２３８とへ出力する。一方、要求部２３４は、作成した再帰ＤＮＳクエリ要求を通信部２１０へ出力してから時間閾値によって示される時間が経過しても、処理部２３２が、再帰ＤＮＳクエリ応答を取得できなかった場合、ＤＮＳクエリ要求の宛先を、記憶部２２０に記憶されている転送先優先順位テーブル２２４の優先順位にしたがって、優先順位の高いＤＮＳサーバ装置２００へ変更する。要求部２３４は、宛先を変更したＤＮＳクエリ要求を、通信部２１０へ出力する。
一方、要求部２３４は、宛先を変更したＤＮＳクエリ要求を通信部２１０へ出力してから時間閾値によって示される時間が経過しても、処理部２３２が、ＤＮＳクエリ応答を取得できなかった場合、そのＤＮＳクエリ要求の宛先を、記憶部２２０に記憶されている転送先優先順位テーブル２２４の優先順位にしたがって、次に優先順位の高いＤＮＳサーバ装置２００へ変更する。要求部２３４は、宛先を変更したＤＮＳクエリ要求を、通信部２１０へ出力する。要求部２３４は、宛先を変更したＤＮＳクエリ要求を通信部２１０へ出力してから時間閾値によって示される時間が経過する以前に、処理部２３２が、通信部２１０が出力したＤＮＳクエリ応答を取得するまで、同様の処理を行う。
【００１８】
更新部２３６は、処理部２３２が出力した再帰ＤＮＳクエリ応答を取得し、取得した再帰ＤＮＳクエリ応答に含まれる情報に基づいて、一次キャッシュメモリ２４０を更新する。
具体的には、更新部２３６は、再帰ＤＮＳクエリ応答に、ドメイン名と、資源を示す情報とが含まれる場合には、そのドメイン名と、その資源を示す情報とを関連付けて、一次キャッシュメモリ２４０に記憶することによって更新する。一方、更新部２３６は、再帰ＤＮＳクエリ応答に、ドメイン名と、ドメイン名の名前を解決できないことを示す情報とが含まれる場合には、ドメイン名と関連付けて、ドメイン名の名前を解決できないことを示す情報とを関連付けて、一次キャッシュメモリ２４０に記憶することによって更新する。
応答部２３８は、処理部２３２が出力した再帰ＤＮＳクエリ応答を取得し、取得した再帰ＤＮＳクエリ応答に含まれる情報に基づいて、ＤＮＳクエリ要求を送信した端末装置１００へ送信するＤＮＳクエリ応答を作成する。応答部２３８は、作成したＤＮＳクエリ応答を、通信部２１０へ出力する。
【００１９】
（権威ＤＮＳサーバ装置）
権威ＤＮＳサーバ装置３００は、通信部３１０と、記憶部３２０と、情報処理部３３０と、前記各構成要素を図２に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン３５０とを備える。
通信部３１０は、通信モジュールによって実現される。通信部３１０は、ネットワーク５０を経由して、ＤＮＳサーバ装置２００と通信を行う。通信部３１０は、ＤＮＳサーバ装置２００が送信した再帰ＤＮＳクエリ要求を受信し、受信した再帰ＤＮＳクエリ要求を、情報処理部３３０へ出力する。通信部３１０は、情報処理部３３０が出力した再帰ＤＮＳクエリ応答を、ＤＮＳサーバ装置２００へ送信する。
記憶部３２０は、例えば、ＲＡＭ、ＲＯＭ、ＨＤＤ、フラッシュメモリ、またはこれらのうち複数が組み合わされたハイブリッド型記憶装置などにより実現される。記憶部３２０は、情報処理部３３０が実行するプログラム３２２と、リソースレコードファイル３２４とを記憶する。リソースレコードファイル３２４は、ドメイン名を示す情報と資源を示す情報とを関連付けた変換表である。リソースレコードファイル３２４の一例については、図４に示される。リソースレコードファイル３２４は、図４に示すように、ドメイン名と、Ｒデータ、Ｔｙｐｅ、クラス、ＴＴＬなどの資源とを関連付けて記憶する。
【００２０】
情報処理部３３０の全部または一部は、例えば、ＣＰＵなどのプロセッサが記憶部３２０に格納されたプログラム３２２を実行することにより実現されるソフトウェア機能部である。なお、情報処理部３３０の全部または一部は、ＬＳＩ、ＡＳＩＣ、またはＦＰＧＡなどのハードウェアにより実現されてもよく、ソフトウェア機能部とハードウェアとの組み合わせによって実現されてもよい。情報処理部３３０は、例えば、処理部３３２を備える。
処理部３３２は、通信部３１０が出力した再帰ＤＮＳクエリ要求を取得し、取得した再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得する。処理部３３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報がリソースレコードファイル３２４に記憶されているか否かを判定する。
具体的には、処理部３３２は、再帰ＤＮＳクエリ要求に含まれるＱＮＡＭＥ、ＱＴＹＰＥなどのドメイン名を示す情報に一致する資源を示す情報（リソースレコード）を検索する。処理部３３２は、そのドメイン名を示す情報に一致するリソースレコードがリソースレコードファイル３２４に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されているリソースレコードを、リソースレコードファイル３２４から取得する。
処理部３３２は、取得したリソースレコードを含む再帰ＤＮＳクエリ応答を作成し、作成した再帰ＤＮＳクエリ応答を、通信部３１０へ出力する。例えば、ＱＴＹＰＥがＡレコードの場合には、ドメイン名に関連付けて記憶されているＩＰアドレス（ＩＰｖ４）を問い合わせることを意味する。この場合、処理部３３２は、再帰ＤＮＳクエリ要求に含まれるＱＮＡＭＥ（ドメイン名）、ＴＹＰＥ、クラスをコピーし、これに続けて、ＴＴＬ、レングス、ＩＰアドレス（ｖ４）などを含む再帰ＤＮＳ応答を作成する。
一方、処理部３３２は、取得したドメイン名を示す情報に関連付けてリソースレコードがリソースレコードファイル３２４に記憶されていない場合には、ドメイン名を示す情報と、ドメイン名の名前を解決できないことを示す情報とを含む再帰ＤＮＳクエリ応答を作成し、作成した再帰ＤＮＳクエリ応答を、通信部３１０へ出力する。
【００２１】
（通信システムの動作）
図５は、第一の実施形態に係る通信システムの動作の一例を示すシーケンスチャートである。ＤＮＳサーバ装置２００−１は、単位時間毎ドメイン・権威ＤＮＳ状態カウントを継続的に実施しているものとする。
（ステップＳ１０１）  端末装置１００の処理部１３２は、ユーザが操作部１４０を操作することによってドメイン名を示す情報を入力した場合に、操作部１４０が出力するドメイン名を示す情報を取得し、取得したドメイン名を示す情報を、作成部１３４へ出力する。ここで、ユーザが操作部１４０を操作することなく、ドメイン名を示す情報が、作成部１３４へ出力されてもよい。
端末装置１００の作成部１３４は、処理部１３２が出力したドメイン名を示す情報を取得し、取得したドメイン名を示す情報を含み、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を問い合わせる情報であるＤＮＳクエリ要求を作成する。端末装置１００の作成部１３４は、作成したＤＮＳクエリ要求を、通信部１１０へ出力する。
端末装置１００の通信部１１０は、作成部１３４が出力したＤＮＳクエリ要求を、ＤＮＳサーバ装置２００−１へ送信する。
（ステップＳ１０２）  ＤＮＳサーバ装置２００−１の通信部２１０は、端末装置１００が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求を、処理部２３２へ出力する。
ＤＮＳサーバ装置２００−１の処理部２３２は、取得したＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得し、取得したドメイン名を示す情報に関連付けて資源を示す情報が記憶されているか否かを、一次キャッシュメモリ２４０に記憶されている情報を検索することによって判定する。ここでは、ドメイン名を示す情報に関連付けて資源を示す情報が、一次キャッシュメモリ２４０に記憶されていない場合について説明を続ける。
（ステップＳ１０３）  ＤＮＳサーバ装置２００−１の処理部２３２は、ＤＮＳクエリ要求を、要求部２３４へ出力する。
ＤＮＳサーバ装置２００−１の要求部２３４は、再帰ＤＮＳクエリ要求を作成する。ＤＮＳサーバ装置２００−１の要求部２３４は、作成した再帰ＤＮＳクエリ要求を通信部２１０へ出力する。
ＤＮＳサーバ装置２００−１の通信部２１０は、要求部２３４が出力した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−１へ送信する。
【００２２】
（ステップＳ１０４）  権威ＤＮＳサーバ装置３００−１から所定期間、再帰ＤＮＳクエリ応答がない場合、ＤＮＳサーバ装置２００−１の要求部２３４は、他のＤＮＳサーバ装置に転送して名前解決を行う旨の設定があるか否かを判定する。
（ステップＳ１０５）  ＤＮＳサーバ装置２００−１の要求部２３４は、他のＤＮＳサーバ装置に名前解決設定があると判定した場合、転送先のＤＮＳサーバ装置を参照し、転送の選択が可能か判断する。判断はＤＮＳサーバ装置２００−１が継続的に転送先のＤＮＳサーバ装置にＤＮＳクエリ要求を行うなどの監視により可能である。
（ステップＳ１０６）  ＤＮＳサーバ装置２００−１の要求部２３４は、転送先のＤＮＳサーバ装置に転送の選択が可能であると判定した場合、ＤＮＳクエリ要求の宛先を、記憶部２２０に記憶されている転送先優先順位テーブル２２４の優先順位にしたがって、優先順位の高いＤＮＳサーバ装置２００へ変更する。ＤＮＳサーバ装置２００−１の要求部２３４は、ＤＮＳクエリ要求の転送先をＤＮＳサーバ装置２００−２として、通信部２１０へ出力た場合について説明を続ける。
ＤＮＳサーバ装置２００−１の通信部２１０は、要求部２３４が出力したＤＮＳクエリ要求を、ＤＮＳサーバ装置２００−２へ送信する。
（ステップＳ１０７）  ＤＮＳサーバ装置２００−２の通信部２１０は、ＤＮＳサーバ装置２００−１が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求を、処理部２３２を介して、要求部２３４へ出力する。要求部２３４は、再帰ＤＮＳクエリ要求を作成し、通信部２１０へ出力する。
ＤＮＳサーバ装置２００−２の通信部２１０は、要求部２３４が出力した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−１へ送信する。
なお、ＤＮＳサーバ装置２００−２のキャッシュメモリに、該当するＤＮＳクエリ要求内容が存在すれば、再帰ＤＮＳクエリ要求を送信することなく、ＤＮＳクエリ応答を作成し、ＤＮＳサーバ装置２００−１に送信することができる。
（ステップＳ１０８）  権威ＤＮＳサーバ装置３００−１の通信部３１０は、ＤＮＳサーバ装置２００−２が送信した再帰ＤＮＳクエリ要求を受信し、受信した再帰ＤＮＳクエリ要求を、情報処理部３３０へ出力する。
権威ＤＮＳサーバ装置３００−１の処理部３３２は、通信部３１０が出力した再帰ＤＮＳクエリ要求を取得する。権威ＤＮＳサーバ装置３００−１の処理部３３２は、取得した再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けられる資源を示す情報が、リソースレコードファイル３２４に記憶されているか否かを判定する。
権威ＤＮＳサーバ装置３００−１の処理部３３２は、そのドメイン名を示す情報に関連付けられる資源を示す情報がリソースレコードファイル３２４に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を含む再帰ＤＮＳクエリ応答を作成し、記憶されていない場合にはドメイン名の名前を解決できないことを示す情報を含む再帰ＤＮＳクエリ応答を作成する。権威ＤＮＳサーバ装置３００−１の処理部３３２は、作成した再帰ＤＮＳクエリ応答を、通信部３１０へ出力する。
権威ＤＮＳサーバ装置３００−１の通信部３１０は、処理部３３２が出力した再帰ＤＮＳクエリ応答を、ＤＮＳサーバ装置２００−２へ送信する。
（ステップＳ１０９）  ＤＮＳサーバ装置２００−２の通信部２１０は、受信した再帰ＤＮＳクエリ応答を処理部２３２に出力し、処理部２３２はＤＮＳクエリ応答を作成し、応答部２３８を介して通信部２１０へ出力し、通信部２１０は、ＤＮＳサーバ装置２００−１にＤＮＳクエリ応答を送信する。
（ステップＳ１１０）  ＤＮＳサーバ装置２００−１は、受信したＤＮＳクエリ応答を端末装置１００に転送する。
（ステップＳ１１１）  ＤＮＳサーバ装置２００−１の処理部２３２が、他のＤＮＳサーバ装置に転送して名前解決を行う旨の設定がないと判定した場合、又は転送先のＤＮＳサーバ装置の選択が不可能であると判定した場合、処理部２３２は、ＤＮＳクエリ応答としてダミー応答をすべきか否か判定する。
（ステップＳ１１２）  ＤＮＳサーバ装置２００−１の処理部２３２は、ＤＮＳクエリ応答にダミー応答すべきでないと判定した場合、ＤＮＳクエリ応答を破棄し、処理を終了する。
（ステップＳ１１３）  ＤＮＳサーバ装置２００−１の処理部２３２は、ＤＮＳクエリ応答にダミー応答すべきと判定した場合、ダミー応答を参照する。
（ステップＳ１１４）  ＤＮＳサーバ装置２００−１の処理部２３２は、参照したダミー応答を作成し、作成したダミー応答を、ＤＮＳクエリ応答として、通信部２１０へ出力する。通信部２１０は、処理部２３２が出力したダミー応答を、端末装置１００へ送信する。
なお、ステップＳ１１０の詳細なフローは図７のステップＳ２０７以降によるが、ここでは省略する。また、ステップＳ１１１―１１４のフローは一例であり、図９のステップＳ４０４以降に代えることができるものとする。
【００２３】
前述した実施形態では、通信システム１が、二台の権威ＤＮＳサーバ装置を備える場合について説明したが、この例に限られない。例えば、権威ＤＮＳサーバ装置は一台でもよいし、三台以上であってもよい。
前述した実施形態では、リソースレコードに、ドメイン名と、Ｒデータと、Ｔｙｐｅと、クラスと、ＴＴＬとが関連付けて記憶される場合について説明したがこの例に限られない。例えば、ドメイン名と関連付けて、Ｒデータと、Ｔｙｐｅと、クラスと、ＴＴＬとに加え、再帰ＤＮＳクエリ応答のソースＩＰ、名前解決時のプロトコル（UDP、TCP）、再帰ＤＮＳクエリ時にトンネリング検出有無などの他の情報が記憶されてもよい。
前述した実施形態では、資源に、Ｒデータと、Ｔｙｐｅと、クラスと、ＴＴＬとが含まれる場合について説明したが、この例に限られない。例えば、資源に、Ｒデータ、Ｔｙｐｅ、クラス、及びＴＴＬ以外の情報が含まれてもよい。
前述した実施形態では、転送先優先順位テーブル２２４に、ＤＮＳサーバＩＤと、ＤＮＳクエリ要求を転送するＤＮＳサーバ装置２００の優先順位とが関連付けて記憶される場合について説明したが、この例に限られない。例えば、ＤＮＳサーバ装置２００−２からＤＮＳクエリ応答を受信しないＤＮＳサーバ装置２００−１は、ＤＮＳサーバ装置２００−２が機能していないとみなすことができる。この場合、ＤＮＳサーバ装置２００−１は、そのＤＮＳサーバ装置２００−２のＤＮＳサーバＩＤを一時的に削除するようにしてもよい。
前述した実施形態では、ユーザが操作部１４０を操作することによってドメイン名を示す情報を入力した場合に、そのドメイン名を示す情報を含み、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を問い合わせる情報であるＤＮＳクエリ要求を作成する場合について説明したがこの例に限られない。例えば、ユーザが操作部１４０を操作することによって入力されたドメイン名に限らず、端末装置１００で、何らかの処理が行われるのに伴って、ドメイン名の名前を解決するための問い合わせを行う場合についても適用できる。
以上説明した少なくとも一つの実施形態に係るＤＮＳサーバ装置によれば、ＤＮＳサーバ装置は、クライアント装置と、権威ＤＮＳサーバ装置との間に設けられる。ＤＮＳサーバ装置は、クライアント装置が送信したＤＮＳクエリ要求に基づき、権威ＤＮＳサーバ装置へ、資源を問い合わせ、その資源の問い合わせに応じて、権威ＤＮＳサーバ装置へ問い合わせた結果を、一次キャッシュメモリに記憶する。ＤＮＳサーバ装置は、資源の問い合わせに対して、権威ＤＮＳサーバ装置に異常が発生している場合に、権威ＤＮＳサーバ装置以外の他のＤＮＳサーバ装置へ、ＤＮＳクエリ要求を転送し、他のＤＮＳサーバ装置が送信した応答に含まれる資源を、一次キャッシュメモリに記憶する。
このように構成することによって、ＤＮＳサーバ装置は、ＤＮＳクエリ要求に基づく権威ＤＮＳサーバ装置に異常が発生していることによって、該当の権威ＤＮＳサーバ装置から、資源を問い合わせに対する応答を受信できない場合に、他のＤＮＳサーバ装置へ、ＤＮＳクエリ要求を転送し、他のＤＮＳサーバ装置が送信した応答に含まれる資源を、一次キャッシュメモリに記憶することができる。このため、クライアント装置が送信したＤＮＳクエリ要求に対して、ドメイン名の名前を解決ができないことを低減することができ、ユーザに対してサービスを継続できる。
本実施形態に係るＤＮＳサーバ装置によれば、ＤＮＳサーバ装置の識別情報と、ＤＮＳクエリ要求を転送する優先順位を示す情報とを関連付けて記憶し、記憶された優先順位を示す情報にしたがって、他のＤＮＳサーバ装置へ、ＤＮＳクエリ要求を転送する。このように構成することによって、ＤＮＳサーバ装置は、権威ＤＮＳサーバ装置に異常が発生していることによって、権威ＤＮＳサーバ装置から、資源を問い合わせに対する応答を受信できない場合に、予め設定される優先順位にしたがって、他のＤＮＳサーバ装置へ、ＤＮＳクエリ要求を転送し、他のＤＮＳサーバ装置が送信した応答に含まれる資源を、一次キャッシュメモリに記憶することができる。このため、クライアント装置が送信したＤＮＳクエリ要求に対して、名前解決ができないことを低減することができ、ユーザに対してサービスを継続できる。また、名前解決ができないことを低減することができるため、ＤＮＳサーバ装置への過剰な負荷を下げることができるため、多数のユーザのサービスに悪影響を与えないようにすることができる。
【００２４】
（第二の実施形態）
（通信システム）
第二の実施形態に係る通信システム２の一例は、図１を適用できる。ただし、ＤＮＳサーバ装置２００−１、ＤＮＳサーバ装置２００−２、・・・、ＤＮＳサーバ装置２００−Ｍの代わりに、ＤＮＳサーバ装置４００−１、ＤＮＳサーバ装置４００−２、・・・、ＤＮＳサーバ装置４００−Ｍを備える。以下、ＤＮＳサーバ装置４００−１、ＤＮＳサーバ装置４００−２、・・・、ＤＮＳサーバ装置４００−Ｍのうち、任意のＤＮＳサーバ装置を、ＤＮＳサーバ装置４００と記載する。
端末装置１００は、ユーザによってドメイン名を示す情報が入力された場合に、ＤＮＳクエリ要求を作成し、作成したＤＮＳクエリ要求を、ＤＮＳサーバ装置４００−１へ送信する。
ＤＮＳサーバ装置４００−１は、端末装置１００が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得する。ＤＮＳサーバ装置４００−１は、ドメイン名を示す情報と資源を示す情報とを関連付けて、一次キャッシュメモリに記憶している。ＤＮＳサーバ装置４００−１は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリに記憶されているか否かを判定する。一次キャッシュメモリに、取得したドメイン名を示す情報に関連付けて、資源を示す情報が記憶されていない場合、ＤＮＳサーバ装置４００−１は、再帰ＤＮＳクエリ要求を作成する。ＤＮＳサーバ装置４００は、作成した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−１へ送信する。
ＤＮＳサーバ装置４００−１は、権威ＤＮＳサーバ装置３００−１へ、再帰ＤＮＳクエリ要求を送信してから、時間閾値によって示される時間が経過しても、その再帰ＤＮＳクエリ要求に対する応答である再帰ＤＮＳクエリ応答を受信しない場合には、ＤＮＳサーバ装置４００−２へ、ＤＮＳクエリ要求を転送する。
ＤＮＳサーバ装置４００−２は、ＤＮＳサーバ装置４００−１が転送したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得する。ＤＮＳサーバ装置４００−２は、ドメイン名を示す情報と資源を示す情報とを関連付けて、キャッシュメモリに記憶している。ＤＮＳサーバ装置４００−２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリに記憶されているか否かを判定する。キャッシュメモリに、取得したドメイン名を示す情報に関連付けて、資源を示す情報が記憶されていない場合、ＤＮＳサーバ装置４００−２は、再帰ＤＮＳクエリ要求を作成する。ＤＮＳサーバ装置４００−２は、作成した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００−２へ送信する。
権威ＤＮＳサーバ装置３００は、例えば、ドメイン名を示す情報と資源を示す情報とを関連付けた変換表（リソースレコードファイル）を管理している。
権威ＤＮＳサーバ装置３００−２は、ＤＮＳサーバ装置４００−２が送信したＤＮＳクエリ要求を受信し、受信したＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、リソースレコードファイルを検索することによって取得する。権威ＤＮＳサーバ装置３００−２は、検索結果を含む再帰ＤＮＳクエリ応答を、ＤＮＳサーバ装置４００−２へ送信する。ここで、検索結果には、ドメイン名に関連付けて記憶されている資源を示す情報、及びドメイン名の名前を解決できないことを示す情報のいずれか一方が含まれる。
【００２５】
ＤＮＳサーバ装置４００−２は、権威ＤＮＳサーバ装置３００−２が送信した再帰ＤＮＳクエリ応答を受信し、受信した再帰ＤＮＳクエリ応答に基づきキャッシュメモリを更新し、ＤＮＳクエリ応答を作成する。ＤＮＳサーバ装置４００−２は、作成したＤＮＳクエリ応答を、ＤＮＳサーバ装置４００−１へ送信する。
ＤＮＳサーバ装置４００−１は、ＤＮＳサーバ装置４００−２が送信したＤＮＳクエリ応答を受信し、受信したＤＮＳクエリ応答に含まれる情報に基づいて、一次キャッシュメモリに記憶されている情報を更新する。
具体的には、ＤＮＳサーバ装置４００−１は、受信したＤＮＳクエリ応答に、ドメイン名を示す情報と、資源を示す情報とが含まれる場合には、そのドメイン名を示す情報と、資源を示す情報とを関連付けて、一次キャッシュメモリに記憶する。また、ＤＮＳサーバ装置４００−１は、ＤＮＳクエリ応答に、ドメイン名の名前を解決できないことを示す情報が含まれる場合には、ドメイン名を示す情報と、そのドメイン名の名前を解決できないことを示す情報とを関連付けて、一次キャッシュメモリに記憶する。
また、ＤＮＳサーバ装置４００は、例えば、ドメイン名を示す情報と資源を示す情報とを対応付けた変換表（リソースレコード）を記憶できる二次キャッシュメモリを備える。
ＤＮＳサーバ装置４００−１は、一次キャッシュメモリにキャッシュした情報に基づいて、二次キャッシュメモリに記憶される情報を更新する。具体的には、ＤＮＳサーバ装置４００−１は、一次キャッシュメモリを更新する際にキャッシュした情報のうち、ポジティブキャッシュを記憶する。ここで、ポジティブキャッシュとは、再帰ＤＮＳクエリ応答に、ドメイン名に関連付けて記憶されている資源を示す情報が含まれる場合に、一次キャッシュメモリに記憶されるそのドメイン名を示す情報と、その資源を示す情報とを関連付けた情報の内、名前解決が出来る情報である。ＤＮＳサーバ装置２００は、ポジティブキャッシュを記憶する際に、二次キャッシュ特有のＴＴＬを設定する。ＴＴＬについては、後述する。
ＤＮＳサーバ装置４００−１は、端末装置１００へ、ＤＮＳクエリ要求に対するＤＮＳクエリ応答を送信する。ＤＮＳクエリ応答には、ドメイン名に関連付けられている資源を示す情報、及びドメイン名の名前を解決できないことを示す情報のいずれかが含まれる。
端末装置１００は、ＤＮＳサーバ装置４００−１が送信したＤＮＳクエリ応答を受信する。端末装置１００は、受信したＤＮＳクエリ応答に含まれる情報に基づいて、資源を示す情報が含まれる場合には、その資源を示す情報に基づいて、サーバ装置（図示なし）と通信を行う。また、端末装置１００は、受信したＤＮＳクエリ応答に、ドメイン名の名前を解決できないことを示す情報が含まれる場合には、ドメイン名の名前を解決できないことを表した文字情報又は画像を表示する。
【００２６】
（通信システムの構成）
図６は、第二の実施形態に係る通信システムを構成する端末装置、ＤＮＳサーバ装置、権威ＤＮＳサーバ装置の一例を示す図である。以下、第一の実施形態に係る通信システムとは構成が異なるＤＮＳサーバ装置４００について説明する。
（ＤＮＳサーバ装置）
ＤＮＳサーバ装置４００は、通信部４１０と、記憶部４２０と、情報処理部４３０と、前記各構成要素を図６に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン４５０とを備える。
通信部４１０は、前述した通信部２１０を適用できる。
記憶部４２０は、例えば、ＲＡＭ、ＲＯＭ、ＨＤＤ、フラッシュメモリ、またはこれらのうち複数が組み合わされたハイブリッド型記憶装置などにより実現される。記憶部４２０には、情報処理部４３０により実行されるプログラム４２２と、転送先優先順位テーブル４２４とが記憶される。転送先優先順位テーブル４２４は、前述した転送先優先順位テーブル２２４を適用できる。
情報処理部４３０の全部または一部は、例えば、ＣＰＵなどのプロセッサが記憶部４２０に格納されたプログラム４２２を実行することにより実現されるソフトウェア機能部である。なお、情報処理部４３０の全部または一部は、ＬＳＩ、ＡＳＩＣ、またはＦＰＧＡなどのハードウェアにより実現されてもよく、ソフトウェア機能部とハードウェアとの組み合わせによって実現されてもよい。
情報処理部４３０は、例えば、処理部４３２と、要求部４３４と、更新部４３６と、応答部４３８と、一次キャッシュメモリ４４０と、二次キャッシュメモリ４４２とを備える。要求部４３４、更新部４３６、応答部４３８、および一次キャッシュメモリ４４０は、それぞれ前述した要求部２３４、更新部２３６、応答部２３８、および一次キャッシュメモリ２４０を適用できる。
二次キャッシュメモリ４４２に記憶される情報の一例は、図４を適用できる。二次キャッシュメモリ４４２は、図４に示すように、ドメイン名と、Ｒデータ、Ｔｙｐｅ、クラス、ＴＴＬなどの資源とを関連付けて記憶する。
二次キャッシュメモリ４４２は、権威ＤＮＳサーバ装置３００がドメイン名の名前を解決できた場合に、その権威ＤＮＳサーバ装置３００が送信する再帰ＤＮＳクエリ応答に含まれるドメイン名の名前を解決できたことを示す情報を記憶する。
二次キャッシュメモリ４４２は、権威ＤＮＳサーバ装置３００がドメイン名の名前を解決できなかった場合に、その権威ＤＮＳサーバ装置３００が送信する再帰ＤＮＳクエリ応答に含まれるドメイン名と、ドメイン名の名前を解決できないことを示す情報との組み合わせ（ネガティブキャッシュ）は記憶しない。
また、二次キャッシュメモリ４４２は、一次キャッシュメモリ４４０がキャッシュする時間よりも長い時間、ポジティブキャッシュを記憶する。
また、二次キャッシュメモリ４４２は、記憶している情報を、ＴＴＬが満了しても消去しない。ここで、ＴＴＬは、二次キャッシュ特有のＴＴＬである。ここで、二次キャッシュメモリ４４２のＴＴＬは、クライアントが二次キャッシュの情報を長期間保持し続けないようにするため、五分等の短時間を設定する運用を想定する。二次キャッシュメモリ４４２は、記憶しているドメイン名と、資源を示す情報との関連付けの数が、予め設定されるキャッシュ数閾値を超える場合には、更新された時刻が古いものから消去する。
また、二次キャッシュメモリ４４２に記憶される情報は、ＤＮＳサーバ装置４００がリスタートした際に消去してもよいし、リスタートしても消去されないようにしてもよい。
さらに、二次キャッシュメモリ４４２に記憶される情報は、他のＤＮＳサーバ装置によって参照できるようにされる。このようにすることによって、他のＤＮＳサーバ装置が送信したＤＮＳクエリ要求を処理することができるとともに、二次キャッシュメモリ４４２を、他のＤＮＳサーバ装置と共用できる。ＤＮＳサーバ装置４００は、キャッシュヒット率によって性能が大きく異なる。ここで、ＤＮＳサーバ装置４００を起動した際に、他のＤＮＳサーバ装置との間で共用した二次キャッシュメモリ４４２から、一次キャッシュメモリ４４０に記憶する情報を生成するようにしてもよい。このように構成することによって、ＤＮＳサーバ装置を起動した直後からキャッシュヒット率が高くすることができる。
【００２７】
処理部４３２は、通信部４１０が出力したＤＮＳクエリ要求を取得し、取得したＤＮＳクエリ要求に含まれるドメイン名を示す情報を取得する。そして、処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ４４０に記憶されているか否かを判定する。この場合、処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ４４０に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、一次キャッシュメモリ４４０から取得する。
処理部４３２は、取得した資源を示す情報を含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。
一方、処理部４３２は、取得したドメイン名を示す情報と関連付けて、ドメイン名の名前を解決できないことを示す情報が記憶されている場合には、一次キャッシュメモリ４４０からドメイン名の名前を解決できないとする情報を取得し、ドメイン名の名前を解決できないとするＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。
また、処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が一次キャッシュメモリ４４０に記憶されていない場合には、要求部４３４にＤＮＳクエリ要求を出力し、要求部４３４は再帰ＤＮＳクエリ要求を作成し、通信部４１０へ出力する。
また、要求部４３４が作成した再帰ＤＮＳクエリ要求を通信部４１０へ出力してから時間閾値によって示される時間が経過する以前に、処理部４３２が、通信部４１０が出力した再帰ＤＮＳクエリ応答を取得した場合、処理部４３２は、取得した再帰ＤＮＳクエリ応答を、更新部４３６へ出力する。また再帰ＤＮＳクエリ応答からＤＮＳクエリ応答を作成し、応答部４３８とへ出力する。
一方、処理部４３２は、要求部４３４が作成した再帰ＤＮＳクエリ要求を通信部４１０へ出力してから時間閾値が経過したことを示す情報を取得した場合、、その再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されているか否かを判定する。
処理部４３２は、その再帰ＤＮＳクエリ要求に含まれるドメイン名に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、二次キャッシュメモリ４４２から取得する。処理部４３２は、取得した資源を示す情報を含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。
一方、処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が、二次キャッシュメモリ４４２に記憶されていない場合には、ドメイン名の名前を解決できないことを示す情報を含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。
通信部２１０は、ＤＮＳクエリ要求を送信した端末装置１００へＤＮＳクエリ応答を送信する。
【００２８】
更新部４３６は、処理部４３２が出力した再帰ＤＮＳクエリ応答を取得し、取得した再帰ＤＮＳクエリ応答に含まれる情報に基づいて、一次キャッシュメモリ４４０を更新する。具体的には、更新部４３６は、再帰ＤＮＳクエリ応答に、ドメイン名と、資源を示す情報とが含まれる場合には、そのドメイン名と、その資源を示す情報とを関連付けて、一次キャッシュメモリ４４０に記憶することによって更新する。一方、更新部４３６は、再帰ＤＮＳクエリ応答に、ドメイン名と、ドメイン名の名前を解決できないことを示す情報とが含まれる場合には、ドメイン名と関連付けて、ドメイン名の名前を解決できないことを示す情報とを関連付けて、一次キャッシュメモリ４４０に記憶することによって更新する。
また、更新部４３６は、一次キャッシュメモリ４４０を更新する際に記憶した情報に基づいて、二次キャッシュメモリ４４２を更新する。一次キャッシュメモリ４４０を更新する際に記憶した情報に基づいて、二次キャッシュメモリ４４２を更新することによって、一次キャッシュメモリ４４０に記憶される情報と、二次キャッシュメモリ４４２に記憶される情報とを同期させる。
具体的には、更新部４３６は、一次キャッシュメモリ４４０を更新する際に記憶した情報のうち、ドメイン名と、資源を示す情報との組み合わせを、二次キャッシュメモリ４４２に記憶することによって更新する。更新部４３６は、二次キャッシュメモリ４４２に関連付けて記憶されるドメイン名と、Ｒデータと、Ｔｙｐｅと、クラスと、ＴＴＬとのうち、ＴＴＬについては、権威ＤＮＳサーバ装置３００が設定したＴＴＬと、ＤＮＳサーバ装置２００が設定した二次キャッシュ特有のＴＴＬを、両方保持する。そして、端末装置１００へ通知する資源を示す情報として、そのＴＴＬよりも短い時間が通知される。
これによって、仮に、端末装置１００に、ドメイン名を示す情報と、資源を示す情報とが通知された場合に、そのドメイン名を示す情報と、その資源を示す情報とが、端末装置１００に、長い期間キャッシュされないようにできる。これは、二次キャッシュメモリ４４２に記憶される情報は、ドメイン名の名前が解決できないことを低減するためのものであり、最新の情報でないおそれがある。このため、二次キャッシュメモリ４４２に記憶された資源を示す情報に関連付けて記憶されるＴＴＬは、本来のＴＴＬと、そのＴＴＬよりも短い時間とする。
これによって、二次キャッシュメモリ４４２に記憶された情報を取得した端末装置１００は、同じドメイン名を示す情報が入力された場合に、ＴＴＬが満了している場合には、ＤＮＳサーバ装置４００に、そのドメイン名の名前を解決することを問い合わせることができるため、最新の情報を取得する機会を増加させることができる。また、権威ＤＮＳサーバ装置３００が設定したＴＴＬと、二次キャッシュ特有のＴＴＬを別に保持することで、二次キャッシュ特有のＴＴＬを変更した際、権威ＤＮＳサーバ装置３００が設定したＴＴＬとの大小関係が不明になることを避けることが出来る。更新部４３６は、ドメイン名と、そのドメイン名の名前を解決できないことを示す情報とについては、二次キャッシュメモリ４４２に記憶しない。これにより、二次キャッシュメモリのメモリ量を節約する。
【００２９】
（通信システムの動作）
図７−図１１を参照して、第二の実施形態に係る通信システム２の動作について説明する。
（通信システムの動作の一例（その１））
図７は、第二の実施形態に係る通信システムの動作の一例（その１）を示すシーケンスチャートである。ステップＳ２０１−Ｓ２０３は、図５を参照して説明したステップＳ１０１−Ｓ１０３を適用できる。
（ステップＳ２０４）  権威ＤＮＳサーバ装置３００の通信部３１０は、ＤＮＳサーバ装置４００が送信した再帰ＤＮＳクエリ要求を受信し、受信した再帰ＤＮＳクエリ要求を、情報処理部３３０へ出力する。
情報処理部３３０の処理部３３２は、通信部３１０が出力した再帰ＤＮＳクエリ要求を取得する。処理部３３２は、取得した再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けられる資源を示す情報が、リソースレコードファイル３２４に記憶されているか否かを判定する。
（ステップＳ２０５）  処理部３３２は、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を含む再帰ＤＮＳクエリ応答又は名前を解決できないことを示す情報を含む再帰ＤＮＳクエリ応答を作成する。処理部３３２は、作成した再帰ＤＮＳクエリ応答を、通信部３１０へ出力する。
（ステップＳ２０６）  権威ＤＮＳサーバ装置３００の通信部３１０は、処理部３３２が出力した再帰ＤＮＳクエリ応答を、ＤＮＳサーバ装置４００へ送信する。
（ステップＳ２０７）  ＤＮＳサーバ装置４００の通信部４１０は、権威ＤＮＳサーバ装置３００が送信した再帰ＤＮＳクエリ応答を受信し、受信した再帰ＤＮＳクエリ応答を、処理部４３２へ出力する。
処理部４３２は、通信部４１０が出力した再帰ＤＮＳクエリ応答からＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、更新部４３６と、応答部４３８とへ出力する。更新部４３６は、処理部４３２が出力したＤＮＳクエリ応答を取得し、取得したＤＮＳクエリ応答が不正応答に該当するか否かを判定する。ここで、不正応答とは、フォーマットエラー、再帰クエリに紐付かない応答などである。
（ステップＳ２０８）  更新部４３６は、不正応答に該当しないと判定した場合、そのＤＮＳクエリ応答に含まれるドメイン名と、資源を示す情報とを関連付けて、一次キャッシュメモリ４４０に記憶することによって更新する。
【００３０】
（ステップＳ２０９）  ＤＮＳサーバ装置４００の応答部４３８は、処理部４３２が出力したＤＮＳクエリ応答を取得し、取得したＤＮＳクエリ応答を、通信部４１０へ出力する。通信部４１０は、応答部４３８が出力したＤＮＳクエリ応答を、端末装置１００へ送信する。
（ステップＳ２１０）  ＤＮＳサーバ装置４００の更新部４３６は、再帰ＤＮＳクエリ応答がポジティブ応答であるか否かを判定する。ここで、ポジティブ応答とは、ドメイン名に関連付けられた資源により名前解決が可能な再帰ＤＮＳクエリ応答をいう。また、更新部４３６がステップＳ２１０でポジティブ応答でないと判断した場合には、処理を終了する。
（ステップＳ２１１）  ＤＮＳサーバ装置４００の更新部４３６は、ＤＮＳクエリ応答がポジティブ応答であると判定した場合、一次キャッシュメモリ４４０に記憶した情報に基づいて、二次キャッシュメモリ４４２を更新する。更新部４３６は、一次キャッシュメモリ４４０を更新する際に記憶した情報のうち、ドメイン名と、資源を示す情報との組み合わせを、二次キャッシュメモリ４４２に記憶することによって更新する。更新部４３６は、二次キャッシュメモリ４４２に関連付けて記憶されるドメイン名と、ＩＰアドレスと、Ｔｙｐｅと、クラスと、ＴＴＬと、更新日時とのうち、ＴＴＬについては、権威ＤＮＳサーバ装置３００が設定したＴＴＬと、ＤＮＳサーバ装置２００が設定した二次キャッシュ特有のＴＴＬを、両方保持する。
（ステップＳ２１２）  処理部４３２はステップＳ２０７で更新部４３６が不正応答に該当したと判定した場合、再帰ＤＮＳクエリ応答を、破棄する。
なお、上記説明では、ステップＳ２０７と、Ｓ２０８と、Ｓ２１０と、Ｓ２１１において、不正応答の判定、一次キャッシュの更新、ポジティブ応答の判定、二次キャッシュの更新等は再帰ＤＮＳクエリ応答に基づき行うとしたが、ＤＮＳクエリ応答に基づき行うこともできる。
【００３１】
（通信システムの動作の一例（その２））
図８は、第二の実施形態に係る通信システムの動作の一例（その２）を示すシーケンスチャートである。
ＤＮＳサーバ装置４００−１が、ＤＮＳサーバ装置４００−２にＤＮＳクエリ要求を転送し、ＤＮＳクエリ応答を受信した場合に、不正応答か否か判定することで、端末装置１００に対して、不正なＤＮＳクエリ応答を送信することを防ぐことが可能になる。また、不正応答にあたる再帰ＤＮＳクエリ応答を一次キャッシュから除外することが可能になる。また、ポジティブ応答のみ二次キャッシュで保持し、一次キャッシュと異なる機能を有する二次キャッシュのサービス提供が可能になるという効果がある。
具体的には、ステップＳ３０１−Ｓ３０９は、図５を参照して説明したステップＳ１０１−Ｓ１０９を適用できる。加えて、ステップＳ３１０−Ｓ３１５は、図７を参照して説明したステップＳ２０７−Ｓ２１２を適用できる。
【００３２】
（通信システムの動作の一例（その３））
図９は、第二の実施形態に係る通信システムの動作の一例（その３）を示すシーケンスチャートである。
二次キャッシュで、権威ＤＮＳサーバ装置３００が設定したＴＴＬと、ＤＮＳサーバ装置２００が設定した二次キャッシュ特有のＴＴＬを、両方保持することにより、一次キャッシュと異なる機能を有する二次キャッシュのサービス提供が可能になるという効果がある。
ステップＳ４０１−Ｓ４０３は、図８のステップＳ３０１−Ｓ３０３を適用できる。
（ステップＳ４０４）  ＤＮＳサーバ装置４００の処理部４３２は、要求部４３４が、再帰ＤＮＳクエリ要求を通信部４１０へ出力してから時間閾値によって示される時間が経過しても、通信部４１０から再帰ＤＮＳクエリ応答が出力されない場合に、再帰ＤＮＳクエリ要求を送信してから時間閾値が経過した場合、そのＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報を、二次キャッシュメモリ４４２から検索する。
（ステップＳ４０５）  処理部４３２は、そのＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されているか否かを判定する。
（ステップＳ４０６）  処理部４３２は、ＤＮＳクエリ応答に含まれるドメイン名を示す情報に関連付けて資源を示す情報が、二次キャッシュメモリ４４２に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、二次キャッシュメモリ４４２から取得する。処理部４３２は、取得した資源を示す情報に設定されている二次キャッシュ特有のＴＴＬを参照する。
（ステップＳ４０７）  処理部４３２は、参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより短いか否かを判定する。
（ステップＳ４０８）  参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより短い場合、処理部４３２は、取得した資源を示す情報と、参照した二次キャッシュ特有のＴＴＬとを含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、通信部４１０へ出力する。通信部４１０は、処理部４３２が出力したＤＮＳクエリ応答を、端末装置１００へ送信する。
（ステップＳ４０９）  参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより長い場合、処理部４３２は、取得した資源を示す情報と、権威ＤＮＳサーバ装置３００が設定したＴＴＬとを含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、通信部４１０へ出力する。通信部４１０は、処理部４３２が出力したＤＮＳクエリ応答を、端末装置１００へ送信する。
（ステップＳ４１０）  処理部４３２は、ＤＮＳクエリ応答に含まれるドメイン名を示す情報に関連付けて資源を示す情報が、二次キャッシュメモリ４４２に記憶されていない場合には、ＤＮＳクエリ応答としてダミー応答すべきか否かを判定する。判定基準は任意に設定できる。一例として、ＭＴＡがＭＸレコードの名前を解決しようとした場合には、ダミー応答を返すべきでないと判定する。
（ステップＳ４１１）  処理部４３２は、ＤＮＳクエリ応答としてダミー応答すべきでないと判定した場合、ＤＮＳクエリ応答を破棄する。
（ステップＳ４１２）  処理部４３２は、処理部２３２は、ダミー応答を返すべきと判定した場合、ダミー応答を参照する。端末装置１００からの無駄な再送を抑止する観点から、有効なダミー応答が選択される。
（ステップＳ４１３）  処理部４３２は、参照したダミー応答を作成し、作成したダミー応答を、ＤＮＳクエリ応答として、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。通信部４１０は、処理部４３２が出力したダミー応答を、端末装置１００へ送信する。
【００３３】
（通信システムの動作の一例（その４））
図１０は、第二の実施形態に係る通信システムの動作の一例（その４）を示すシーケンスチャートである。
ステップＳ５０１−Ｓ５０３は、図９を参照して説明したステップＳ４０１−Ｓ４０２を適用できる。
（ステップＳ５０４）  ＤＮＳサーバ装置４００の処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が、一次キャッシュメモリ４４０にヒットするか否かを判定する。
（ステップＳ５０５）  処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が、一次キャッシュメモリ４４０に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、一次キャッシュメモリ４４０から取得する。処理部４３２は、取得した資源を示す情報を含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。通信部４１０は、応答部４３８が出力したＤＮＳクエリ応答を、端末装置１００−１、端末装置１００−Ｎへ送信する。
（ステップＳ５０６）  処理部４３２は、取得したドメイン名を示す情報に関連付けて資源を示す情報が、一次キャッシュメモリ４４０に記憶されていない場合には、該当のＤＮＳクエリ要求は、再帰ＤＮＳクエリ中であるか否かを判定する。
（ステップＳ５０７）  ＤＮＳサーバ装置４００の処理部４３２は、該当のＤＮＳクエリ要求が再帰クエリ中であると判定した場合、そのＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報を、二次キャッシュメモリ４４２から検索する。
（ステップＳ５０８）  処理部４３２は、そのＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されているか否かを判定する。
（ステップＳ５０９）  処理部４３２は、ＤＮＳクエリ応答に含まれるドメイン名を示す情報に関連付けて資源を示す情報が、二次キャッシュメモリ４４２に記憶されている場合には、そのドメイン名を示す情報に関連付けて記憶されている資源を示す情報を、二次キャッシュメモリ４４２から取得する。処理部４３２は、ＤＮＳサーバ装置３００が設定した二次キャッシュ特有のＴＴＬを参照する。
（ステップＳ５１０）  処理部４３２は、参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより短いか否かを判定する。
（ステップＳ５１１）  参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより短い場合、処理部４３２は、取得した資源を示す情報と、参照した二次キャッシュ特有のＴＴＬとを含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。通信部４１０は、応答部４３８が出力したＤＮＳクエリ応答を、端末装置１００−１、端末装置１００−Ｎへ送信する。
（ステップＳ５１２）  参照した二次キャッシュ特有のＴＴＬが、権威ＤＮＳサーバ装置３００が設定したＴＴＬより長い場合、処理部４３２は、取得した資源を示す情報と、権威ＤＮＳサーバ装置３００が設定したＴＴＬとを含むＤＮＳクエリ応答を作成し、作成したＤＮＳクエリ応答を、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。通信部４１０は、応答部４３８が出力したＤＮＳクエリ応答を、端末装置１００−１、端末装置１００−Ｎへ送信する。
（ステップＳ５１３）  処理部４３２は、ＤＮＳクエリ応答に含まれるドメイン名を示す情報に関連付けて資源を示す情報が、二次キャッシュメモリ４４２に記憶されていない場合には、ダミー応答を返すべきか否かを判定する。具体的には、図９ステップＳ４１０−４１２と同様である。
（ステップＳ５１４）  処理部４３２は、選択したダミー応答を作成し、作成したダミー応答を、ＤＮＳクエリ応答として、応答部４３８に出力し、応答部４３８は通信部４１０へ出力する。通信部４１０は、応答部４３８が出力したダミー応答を、端末装置１００−１、端末装置１００−Ｎへ送信する。
（ステップＳ５１５）  処理部４３２は、該当のＤＮＳクエリ要求が、再帰ＤＮＳクエリ中でないと判定した場合、クエリ内容を記憶する。
（ステップＳ５１６）  処理部４３２は、記録したクエリ内容を含むＤＮＳクエリ要求を、要求部４３４へ出力する。要求部４３４は、再帰ＤＮＳクエリ要求を作成する。要求部４３４は、作成した再帰ＤＮＳクエリ要求を通信部４１０へ出力する。通信部４１０は、要求部４３４が出力した再帰ＤＮＳクエリ要求を、権威ＤＮＳサーバ装置３００へ送信する。なお、ステップＳ５１６は再帰ＤＮＳクエリ要求中であり、まだ名前解決が出来ていない状態を示す。図６は、端末装置から同じタイミングで同じ名前解決要求が一斉集中するケースにおいて、再帰ＤＮＳクエリ要求を抑制出来ることで、ＤＮＳサーバ装置の負荷低減および、キャッシュポイズニングのリスク低減を図りながら、二次キャッシュを用いた名前解決サービスを継続出来る効果がある。
【００３４】
（通信システムの動作の一例（その５））
図１１は、第二の実施形態に係る通信システムの動作の一例（その５）を示すシーケンスチャートである。
図１１は、図５のステップＳ１０１−Ｓ１０４の間の処理を示す。なお、ＤＮＳサーバ装置４００は、図１１のステップＳ６０３、Ｓ６０４、Ｓ６０６に該当するドメイン及び権威ＤＮＳサーバ装置３００の状態を継続的に把握しているものとする。
（ステップＳ６０１）  ＤＮＳサーバ装置４００の処理部４３２は、端末装置１００からＤＮＳクエリ要求を受信すると、一次キャッシュを検索する。一次キャッシュにヒットすれば、ＤＮＳサーバ装置４００は端末装置１００にＤＮＳクエリ応答を送信する。一方、一次キャッシュにヒットしない場合、ステップＳ６０２に進む。
（ステップＳ６０２）  ＤＮＳサーバ装置４００の処理部４３２は、ＤＮＳクエリ要求について、他のＤＮＳサーバ装置４００を参照できる有効時間内であるか否かを判定する。他のＤＮＳサーバ装置を参照できる有効時間内である場合、図５のステップＳ１０４（転送先のＤＮＳサーバ選択）へ移行する。
Ｓ１０４により、該当するドメインまたは権威ＤＮＳサーバ装置３００の状態に基づき再帰ＤＮＳクエリ要求による名前解決が適切ではない状態と判断している時間内には、再帰ＤＮＳクエリ要求を行わず、ＤＮＳサーバ装置４００の負荷低減を図りながら他のＤＮＳサーバ装置４００を参照することによる名前解決サービスを継続できる効果がある。
（ステップＳ６０３）  処理部４３２は、他のＤＮＳサーバ装置を参照できる有効時間内でない場合、継続的に把握しているドメイン及び権威ＤＮＳサーバ装置３００の状態に基づき、当該ＤＮＳクエリ要求に伴う権威ＤＮＳサーバ装置３００との通信において、単位時間に再帰ＤＮＳクエリ要求に紐付かない不正応答数が閾値を超過しているか否かを判定する。ステップＳ６０３は、キャッシュポイズニングのリスクの高低を判別し、リスクが高い場合は、再帰ＤＮＳクエリ要求を行わず他のＤＮＳサーバ装置４００の参照による名前解決サービスが継続できる効果がある。
（ステップＳ６０４）  処理部４３２は、単位時間に不正応答が閾値を超過していない場合、当該ＤＮＳクエリ要求に伴う権威ＤＮＳサーバ装置３００との単位時間あたりの再帰クエリ数が閾値を超過しているか否かを判定する。
（ステップＳ６０５）  当該ＤＮＳクエリ要求に伴う権威ＤＮＳサーバ装置３００との単位時間あたりの再帰クエリ数が閾値を超過していない場合、権威ＤＮＳサーバ装置３００に対し、再帰ＤＮＳクエリ要求を送信する。
なお、権威ＤＮＳサーバ装置３００から応答があった場合は、図７のステップＳ２０７に移行する。また、権威ＤＮＳサーバ装置３００が無応答であった場合は、図９のステップＳ４０４に移行する。
（ステップＳ６０６）  処理部４３２は、当該ＤＮＳクエリ要求に伴う権威ＤＮＳサーバ装置３００との単位時間あたりの再帰クエリ数が閾値を超過している場合、単位時間あたりのネガティブ応答率や無応答率が閾値を超過しているか否かを判定する。ステップＳ６０４・Ｓ６０６により、権威ＤＮＳサーバ装置３００がダウンしている、又は、多くの攻撃が発生しているなどの場合において、再帰ＤＮＳクエリ要求を行わないことでＤＮＳサーバ装置４００の負荷低減を図りながら他のＤＮＳサーバ装置４００の参照による名前解決サービスが継続できる効果がある。
（ステップＳ６０７）  単位時間あたりのネガティブ応答率や無応答率が閾値を超過していない場合、要求部４３４は、権威ＤＮＳサーバ装置３００に対し、再帰ＤＮＳクエリ要求を作成し、作成した再帰ＤＮＳクエリ要求を通信部４１０へ出力する。通信部４１０は、要求部４３４が出力した再帰ＤＮＳクエリ要求を送信する。なお、権威ＤＮＳサーバ装置３００から応答があった場合は、図７のステップＳ２０７に移行する。また、権威ＤＮＳサーバ装置３００が無応答であった場合は、図９のステップＳ４０４に移行する。
（ステップＳ６０８）  処理部４３２は、単位時間に再帰ＤＮＳクエリ要求に紐付かない不正応答が閾値を超過している場合、または、単位時間あたりの再帰ＤＮＳクエリ数が閾値を超過しかつネガティブ応答率や無応答率が閾値を超過している場合は、当該ドメイン又は権威ＤＮＳサーバ装置３００との再帰ＤＮＳクエリ要求を一定時間抑止するため、他のＤＮＳサーバ装置４００を参照する有効時間を設定する。
図１１のシーケンスチャートによれば、ＤＮＳサーバ装置４００−１がＤＮＳクエリ要求を受信した場合に、ＤＮＳサーバ装置４００−１及び権威ＤＮＳサーバ装置３００への負荷を下げつつ、端末装置１００にＤＮＳクエリ応答をするにあたり、他ＤＮＳサーバ装置４００−２へのＤＮＳクエリ要求の転送又は権威ＤＮＳサーバ装置３００への再帰ＤＮＳクエリ要求のどちらが最適解かを判別することができる。
【００３５】
前述した実施形態では、二次キャッシュメモリ４４２に設定される権威ＤＮＳサーバ装置３００が設定したＴＴＬよりも短い時間として、五分等の画一的な時間に設定される場合について説明したが、この例に限られない。例えば、二次キャッシュメモリ４４２に記憶される情報の性質によりＴＴＬを異ならせてもよい。具体的には、二次キャッシュメモリ４４２に記憶される性質に応じて情報を区分し、区分Ａの場合には一分とし、区分Ｂの場合には五分、・・・、区分Ｘの場合には十二時間などに設定してもよい。また、二次キャッシュメモリ４４２に記憶される情報の性質によりＴＴＬを、動的に変更してもよい。具体的には、最初は、デフォルトで五分に設定し、五分後に問い合わせがあり、二次キャッシュメモリ４４２に記憶される情報を使用する状況が継続されている場合は、二次キャッシュ特有のＴＴＬを十分等の長い時間に再設定する。
なお、相手方サービスの種類によって、最適なＴＴＬを決めてもよい。相手方サービスの更新頻度、各種検索エンジンが動作する相手方システムの回復予想時間等が考慮されてもよい。システムのサービス継続が前提で更新頻度が高いものは、二次キャッシュメモリ４４２のＴＴＬを短く設定する。他方で、システムのサービス継続が難しい場合にはＴＴＬを長く設定する。また、過去の履歴から最適なＴＴＬを割り出して、区分することによって、振分が可能である。
前述した実施形態において、二次キャッシュメモリ４４２を、複数のＤＮＳサーバ装置４００で共用するようにしてもよいし、ＤＮＳサーバ装置４００毎に二次キャッシュメモリ４４２を備えるようにしてもよい。また、ＤＮＳサーバ装置４００毎に二次キャッシュメモリ４４２を備える場合に、二次キャッシュメモリ４０２毎に同期をとるようにしてもよい。
前述した実施形態では、端末装置１００からの無駄な再送を抑止する観点から、有効なダミー応答が選択しているが、選択したダミー応答の内容によっては抑止効果が得られない場合も考えられることから、例えば、単位時間あたりの該当するＤＮＳクエリ要求数、ダミー応答数および割合などから、動的にダミー応答内容を選択し直してもよい。加えて、抑止効果のあったダミー応答内容の自動的に記憶学習し、次回ダミー応答が発動される際に、抑止効果の高いダミー応答内容順で選択出来るようにしてもよい。また、学習する際には、端末装置１００やＤＮＳサーバ装置４００のＩＰアドレス、ポート番号、およびＤＮＳクエリ要求に含まれるドメインなどと組み合わせて記憶し、次回ダミー応答が発動される際に、優先して選択できる応答内容の条件に加えてもよい。また、ダミー応答を返しても抑止効果が得られない時には、動的に該当の端末装置からのＤＮＳクエリ要求を一時的に遮断してもよい。
前述した実施形態では、ＤＮＳサーバ装置４００は、再帰ＤＮＳクエリ要求を送信してから時間閾値経過しても、再帰ＤＮＳクエリ応答を取得できなかった場合に、二次キャッシュメモリ４４２に、再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されているか否かを判定する場合について説明したが、この例に限られない。
例えば、ＤＮＳサーバ装置４００は、権威ＤＮＳサーバ装置３００が送信した再帰ＤＮＳクエリ応答を受信し、受信した再帰ＤＮＳクエリ応答に、ドメイン名の名前を解決できない情報が含まれる場合に、再帰ＤＮＳクエリ要求に含まれるドメイン名を示す情報に関連付けて資源を示す情報が二次キャッシュメモリ４４２に記憶されているか否かを判定するようにしてもよい。
【００３６】
以上説明した少なくとも一つの実施形態に係るＤＮＳサーバ装置によれば、一次キャッシュに記憶された問い合わせた結果のうち、ポジティブキャッシュを記憶する二次キャッシュを備え、処理部は、他のＤＮＳサーバ装置に異常が発生している場合に、二次キャッシュへ、資源を問い合わせる。このように構成することによって、二次キャッシュメモリを、権威ＤＮＳサーバ装置が攻撃を受けた場合、権威ＤＮＳサーバ装置がダウンした場合、キャッシュポイズニング、ネットワーク障害、輻輳、規制などによってドメイン名の名前を解決するのに問題が生じる場面において、一時的に名前を解決するための避難先として活用できる。このため、クライアント装置が送信したＤＮＳクエリ要求に対して、ドメイン名の名前を解決ができないことを低減することができ、ユーザに対してサービスを継続できる。また、ドメイン名の名前を解決ができないことを低減することができるため、ＤＮＳサーバ装置への過剰な負荷を下げることができるため、多数のユーザのサービスに悪影響を与えないようにすることができる。
本実施形態に係るＤＮＳサーバ装置によれば、二次キャッシュは、一次キャッシュがキャッシュする時間よりも長い時間、ポジティブキャッシュを記憶する。このように構成することによって、一次キャッシュに記憶されている情報が消去されても、二次キャッシュに記憶されている情報が消去されないようにできるので、クライアント装置が送信したＤＮＳクエリ要求に対して、ドメイン名の名前を解決ができないことを低減することができ、ユーザに対してサービスを継続できる。また、ドメイン名の名前を解決ができないことを低減することができるため、ＤＮＳサーバ装置への過剰な負荷を下げることができるため、多数のユーザのサービスに悪影響を与えないようにすることができる。
本実施形態に係るＤＮＳサーバ装置によれば、資源のＴＴＬとして、権威ＤＮＳサーバ装置又は前記他のＤＮＳサーバ装置で設定されたＴＴＬと、二次キャッシュで設定されたＴＴＬとのうち、短いＴＴＬを、クライアント装置に応答する応答部をさらに備える。ＤＮＳサーバ装置が、二次キャッシュに記憶している資源を示す情報を通知することによって、名前を解決することを優先することができるとともに、短いＴＴＬを、クライアント装置へ通知することによって、端末装置に、資源を示す情報が、長い期間キャッシュされないようにできる。このため、ＤＮＳサーバは、クライアント装置が送信したＤＮＳクエリ要求に対して、ドメイン名の名前を解決ができないことを低減することができ、ユーザに対してサービスを継続できる。また、ドメイン名の名前を解決ができないことを低減することができるため、ＤＮＳサーバ装置への過剰な負荷を下げることができるため、多数のユーザのサービスに悪影響を与えないようにすることができる。
【００３７】
以上、本発明の実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更、組合わせを行うことができる。これら実施形態及びその変形例は、発明の範囲や要旨に含まれると同時に、特許請求の範囲に記載された発明とその均等の範囲に含まれるものである。
なお、前述の端末装置、ＤＮＳサーバ装置、及び権威ＤＮＳサーバ装置は内部にコンピュータを有している。そして、前述した各装置の各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしてもよい。
また、上記プログラムは、前述した機能の一部を実現するためのものであってもよい。
さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【００３８】
１、２…通信システム、５０…ネットワーク、１００、１００−１、１００−２、・・・、１００−Ｎ…端末装置、２００、２００−１、２００−２、・・・、２００−Ｍ…ＤＮＳサーバ装置、３００、３００−１、３００−２…権威ＤＮＳサーバ装置、１１０、２１０、３１０、４１０…通信部、１２０、２２０、３２０、４２０…記憶部、１２２、２２２、３２２、４２２…プログラム、１３０、２３０、３３０、４３０…情報処理部、１３２、２３２、３３２、４３２…処理部、１３４…作成部、１４０…操作部、１６０…表示部、２２４、４２４…転送先優先順位テーブル、２３４、４３４…要求部、２３６、４３６…更新部、２３８、４３８…応答部、２４０、４４０…一次キャッシュメモリ、３２４…リソースレコードファイル、４４２…二次キャッシュメモリ
【図１】
2019068208.tif 000003
【図２】
2019068208.tif 000004
【図３】
2019068208.tif 000005
【図４】
2019068208.tif 000006
【図５】
2019068208.tif 000007
【図６】
2019068208.tif 000008
【図７】
2019068208.tif 000009
【図８】
2019068208.tif 000010
【図９】
2019068208.tif 000011
【図１０】
2019068208.tif 000012
【図１１】
2019068208.tif 000013