(57)【要約】【課題】適切な期間だけネガティブキャッシュを保存することを課題とする。【解決手段】キャッシュＤＮＳサーバ２０が、権威ＤＮＳサーバ１０から名前解決できない旨の応答を受信した場合には、ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名としてＤＮＳキャッシュ情報記憶部に格納するとともに、該ドメイン名に対応付けて決定されたキャッシュ期間をＤＮＳキャッシュ情報記憶部に格納する。そして、キャッシュＤＮＳサーバ２０が、ＤＮＳクエリ要求に含まれるドメイン名がＤＮＳキャッシュ情報記憶部に記憶されていると判定された場合には、ＤＮＳキャッシュ情報記憶部に記憶された該ドメイン名に対応するキャッシュ期間を延長する。【選択図】図１
2015041870.tif 000002
【特許請求の範囲】
【請求項１】
ＤＮＳ（Domain  Name  System）クライアント装置と、権威ＤＮＳサーバ装置と、前記ＤＮＳクライアント装置と前記権威ＤＮＳサーバ装置との間に設けられたキャッシュＤＮＳサーバ装置とを備えた名前解決システムであって、
前記権威ＤＮＳサーバ装置は、
ドメイン名ごとに、ＤＮＳクエリ要求に応答するための応答情報を記憶する記憶部と、
前記ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が前記記憶部に記憶されていない場合には、名前解決できない旨の応答を前記キャッシュＤＮＳサーバ装置に送信する応答送信部と、
を備え、
前記キャッシュＤＮＳサーバ装置は、
前記ＤＮＳクライアント装置からＤＮＳクエリ要求を受信する受信部と、
前記ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてキャッシュ記憶部に記憶されているか否かを判定する判定部と、
前記判定部によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていないと判定された場合には、該ＤＮＳクエリ要求を前記権威ＤＮＳサーバ装置に送信する要求送信部と、
前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定する決定部と、
前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、前記ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名として前記キャッシュ記憶部に格納するとともに、該ドメイン名に対応付けて前記決定部によって決定されたキャッシュ期間を前記キャッシュ記憶部に格納する格納部と、
前記受信部によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていると判定された場合には、前記キャッシュ記憶部に記憶された該ドメイン名に対応する前記キャッシュ期間を延長する設定部と、
を備えたことを特徴とする名前解決システム。
【請求項２】
前記設定部は、前記受信部によって前記キャッシュ記憶部に記憶された名前解決できないドメイン名を含む前記ＤＮＳクエリ要求を受信するたびに、前記決定部によって決定されたキャッシュ期間を基に延長する期間を決定し、前記キャッシュ記憶部に記憶されたキャッシュ期間に延長する期間を加算したキャッシュ期間を設定することを特徴とする請求項１に記載の名前解決システム。
【請求項３】
前記設定部は、前記受信部によって前記キャッシュ記憶部に記憶された名前解決できないドメイン名を含む前記ＤＮＳクエリ要求を受信するたびに、直前に設定されたキャッシュ期間に事前に設定した係数を掛けた期間を算出し、該算出した期間を前記キャッシュ期間として前記キャッシュ記憶部に設定することを特徴とする請求項１または２に記載の名前解決システム。
【請求項４】
前記設定部は、前記受信部によって前記キャッシュ記憶部に記憶された名前解決できないドメイン名を含む前記ＤＮＳクエリ要求を受信するたびに、前記決定部によって決定されたキャッシュ期間を基に延長する期間を決定し、該決定した期間が前記権威ＤＮＳサーバ装置により予め定められた期間よりも長いか判定し、該予め定められた期間よりも長いと判定した場合には、該予め定められた期間を前記キャッシュ期間として前記キャッシュ記憶部に設定することを特徴とする請求項１〜３のいずれか一つに記載の名前解決システム。
【請求項５】
前記応答送信部は、名前解決できない旨の応答として、ＮＸＤＯＭＡＩＮ応答を前記キャッシュＤＮＳサーバ装置に送信し、
前記決定部は、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答として、前記ＮＸＤＯＭＡＩＮ応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定することを特徴とする請求項１〜４のいずれか一つに記載の名前解決システム。
【請求項６】
前記キャッシュ期間が終了した場合には、該キャッシュ期間に対応するドメイン名を前記キャッシュ記憶部から削除する削除部をさらに備えることを特徴とする請求項１〜５のいずれか一つに記載の名前解決システム。
【請求項７】
ＤＮＳ（Domain  Name  System）クライアント装置と、権威ＤＮＳサーバ装置と、前記ＤＮＳクライアント装置と前記権威ＤＮＳサーバ装置との間に設けられたキャッシュＤＮＳサーバ装置とを備えた名前解決システムによって実行されるキャッシュ制御方法であって、
前記権威ＤＮＳサーバ装置は、ドメイン名ごとに、ＤＮＳクエリ要求に応答するための応答情報を記憶する記憶部を備え、
前記キャッシュＤＮＳサーバ装置が、前記ＤＮＳクライアント装置からＤＮＳクエリ要求を受信する受信工程と、
前記キャッシュＤＮＳサーバ装置が、前記ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてキャッシュ記憶部に記憶されているか否かを判定する判定工程と、
前記キャッシュＤＮＳサーバ装置が、前記判定工程によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていないと判定された場合には、該ＤＮＳクエリ要求を前記権威ＤＮＳサーバ装置に送信する要求送信工程と、
前記権威ＤＮＳサーバ装置が、前記ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が前記記憶部に記憶されていない場合には、名前解決できない旨の応答を前記キャッシュＤＮＳサーバ装置に送信する応答送信工程と、
前記キャッシュＤＮＳサーバ装置が、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定する決定工程と、
前記キャッシュＤＮＳサーバ装置が、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、前記ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名として前記キャッシュ記憶部に格納するとともに、該ドメイン名に対応付けて前記決定工程によって決定されたキャッシュ期間を前記キャッシュ記憶部に格納する格納工程と、
前記キャッシュＤＮＳサーバ装置が、前記受信工程によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていると判定された場合には、前記キャッシュ記憶部に記憶された該ドメイン名に対応する前記キャッシュ期間を延長する設定工程と、
を含んだことを特徴とするキャッシュ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、名前解決システム及びキャッシュ制御方法に関する。
【背景技術】
【０００２】
従来、ドメイン名とＩＰアドレス（Internet  Protocol  Address）とを対応させる名前管理システム（ＤＮＳ：Domain  Name  System）が知られている。名前管理システムは、一般的には、権威ＤＮＳサーバ装置群とキャッシュＤＮＳサーバ装置とから構成される。  
【０００３】
例えば、各権威ＤＮＳサーバ装置は、階層的な木構造を有する名前空間（「ドメイン名前空間」等とも呼ばれる）の中にある特定のゾーンを管理する。キャッシュＤＮＳサーバ装置は、ＤＮＳクライアント装置からの名前解決の依頼（ＤＮＳクエリ要求）に応じて、権威ＤＮＳサーバ装置群に名前解決のための問い合わせを行い、かかる問い合わせに応じて権威ＤＮＳサーバ装置群から回答データ（ＤＮＳクエリ応答）が送信される。
【０００４】
ここで、名前管理システムにおいて、名前解決できない場合には、そのドメイン名を名前解決できないという情報（ネガティブキャッシュ）として、キャッシュＤＮＳサーバに一定期間保存する。そして、同一の問合せについてキャッシュを参照して解決ＮＧを返送することで権威ＤＮＳサーバにおいて無効な問合せによる負荷が生じないようにすることができる。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】“DNS  Prefetching”、[online]、[平成２５年８月１４日検索]、インターネット＜http://www.chromium.org/developers/design-documents/dns-prefetching＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、従来の技術では、ネガティブキャッシュを保存する期間が一定であるため、適切な期間だけネガティブキャッシュを保存することができないという課題があった。また、ネガティブキャッシュを保存する期間が一定であるため、ネガティブキャッシュが用いられない場合には、メモリが一定期間無駄に占有されてしまうという課題があった。
【０００７】
例えば、近年Ｗｅｂブラウザ等のプリフェッチ機能により、キャッシュＤＮＳサーバへのＤＮＳクエリ数が増大しており、検索バーやアドレスバーにユーザが入力する際、入力途中のワードに対して自動的にプリフェッチし、ＤＮＳクエリを送信する場合がある。このような入力途中のワードを元にプリフェッチ機能により送信されたＤＮＳクエリは、存在しないドメインへの問合せであることがほとんどで、多くが無効なクエリになっている。そのため、今後プリフェッチをするブラウザが普及するに比例して、無効なクエリも増大していくものと考えられる。
【０００８】
そこで、この発明は、適切な期間だけネガティブキャッシュを保存することを目的とする。
【課題を解決するための手段】
【０００９】
上述した課題を解決し、目的を達成するため、名前解決システムは、ＤＮＳ（Domain  Name  System）クライアント装置と、権威ＤＮＳサーバ装置と、前記ＤＮＳクライアント装置と前記権威ＤＮＳサーバ装置との間に設けられたキャッシュＤＮＳサーバ装置とを備えた名前解決システムであって、前記権威ＤＮＳサーバ装置は、ドメイン名ごとに、ＤＮＳクエリ要求に応答するための応答情報を記憶する記憶部と、前記ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が前記記憶部に記憶されていない場合には、名前解決できない旨の応答を前記キャッシュＤＮＳサーバ装置に送信する応答送信部と、を備え、前記キャッシュＤＮＳサーバ装置は、前記ＤＮＳクライアント装置からＤＮＳクエリ要求を受信する受信部と、前記ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてキャッシュ記憶部に記憶されているか否かを判定する判定部と、前記判定部によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていないと判定された場合には、該ＤＮＳクエリ要求を前記権威ＤＮＳサーバ装置に送信する要求送信部と、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定する決定部と、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、前記ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名として前記キャッシュ記憶部に格納するとともに、該ドメイン名に対応付けて前記決定部によって決定されたキャッシュ期間を前記キャッシュ記憶部に格納する格納部と、前記受信部によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていると判定された場合には、前記キャッシュ記憶部に記憶された該ドメイン名に対応する前記キャッシュ期間を延長する設定部と、を備えたことを特徴とする。
【００１０】
また、キャッシュ制御方法は、ＤＮＳ（Domain  Name  System）クライアント装置と、権威ＤＮＳサーバ装置と、前記ＤＮＳクライアント装置と前記権威ＤＮＳサーバ装置との間に設けられたキャッシュＤＮＳサーバ装置とを備えた名前解決システムによって実行されるキャッシュ制御方法であって、前記権威ＤＮＳサーバ装置は、ドメイン名ごとに、ＤＮＳクエリ要求に応答するための応答情報を記憶する記憶部を備え、前記キャッシュＤＮＳサーバ装置が、前記ＤＮＳクライアント装置からＤＮＳクエリ要求を受信する受信工程と、前記キャッシュＤＮＳサーバ装置が、前記ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてキャッシュ記憶部に記憶されているか否かを判定する判定工程と、前記キャッシュＤＮＳサーバ装置が、前記判定工程によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていないと判定された場合には、該ＤＮＳクエリ要求を前記権威ＤＮＳサーバ装置に送信する要求送信工程と、前記権威ＤＮＳサーバ装置が、前記ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が前記記憶部に記憶されていない場合には、名前解決できない旨の応答を前記キャッシュＤＮＳサーバ装置に送信する応答送信工程と、前記キャッシュＤＮＳサーバ装置が、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定する決定工程と、前記キャッシュＤＮＳサーバ装置が、前記権威ＤＮＳサーバ装置から前記名前解決できない旨の応答を受信した場合には、前記ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名として前記キャッシュ記憶部に格納するとともに、該ドメイン名に対応付けて前記決定工程によって決定されたキャッシュ期間を前記キャッシュ記憶部に格納する格納工程と、前記キャッシュＤＮＳサーバ装置が、前記受信工程によって前記ＤＮＳクエリ要求に含まれるドメイン名が前記キャッシュ記憶部に記憶されていると判定された場合には、前記キャッシュ記憶部に記憶された該ドメイン名に対応する前記キャッシュ期間を延長する設定工程と、を含んだことを特徴とする。
【発明の効果】
【００１１】
本願に開示する名前解決システム及びキャッシュ制御方法は、適切な期間だけネガティブキャッシュを保存することが可能である。
【図面の簡単な説明】
【００１２】
【図１】図１は、第一の実施形態に係るＤＮＳサーバクライアントシステムの構成の一例を示す図である。
【図２】図２は、第一の実施形態に係る権威ＤＮＳサーバの構成を示すブロック図である。
【図３】図３は、第一の実施形態に係る権威ＤＮＳサーバの応答情報記憶部に記憶される情報の一例を示す図である。
【図４】図４は、第一の実施形態に係るキャッシュＤＮＳサーバの構成を示すブロック図である。
【図５】図５は、第一の実施形態に係るキャッシュＤＮＳサーバのＤＮＳキャッシュ情報記憶部に記憶される情報の一例を示す図である。
【図６】図６は、ネガティブキャッシュＴＴＬを延長する処理を説明する図である。
【図７】図７は、最初の問い合わせ時にネガティブキャッシュＴＴＬを設定する処理を説明する図である。
【図８】図８は、ＳＯＡレコードのネガティブキャッシュＴＴＬを超えた場合にネガティブキャッシュＴＴＬを設定する処理を説明する図である。
【図９】図９は、第一の実施形態に係るキャッシュＤＮＳサーバにおけるキャッシュ制御処理の流れを説明するためのフローチャートである。
【図１０】図１０は、キャッシュ制御プログラムを実行するコンピュータを示す図である。
【発明を実施するための形態】
【００１３】
以下に図面を参照して、この発明に係る名前解決システム及びキャッシュ制御方法の実施形態を詳細に説明する。なお、この実施形態によりこの発明が限定されるものではない。
【００１４】
［第一の実施形態］
以下の実施形態では、第一の実施形態に係る名前解決システム及びキャッシュ制御方法による処理の流れを順に説明し、最後に第一の実施形態による効果を説明する。
【００１５】
［システムの構成］
まず、第一の実施形態に係るＤＮＳサーバクライアントシステム１００の構成の一例を説明する。図１は、第一の実施形態に係るＤＮＳサーバクライアントシステムの構成の一例を示す図である。図１に示すように、ＤＮＳサーバクライアントシステム１００は、名前解決システムであって、権威ＤＮＳサーバ１０、キャッシュＤＮＳサーバ２０およびユーザ端末３０を有する。なお、図１のシステムの例では、権威ＤＮＳサーバ１０、キャッシュＤＮＳサーバ２０およびユーザ端末３０について１台ずつ設けているが、これに限定されるものではなく、複数台を設けてもよい。
【００１６】
権威ＤＮＳサーバ１０は、例えば、ドメイン名とＩＰアドレスとを対応付けた変換表（リソースレコードファイル）を管理している。また、権威ＤＮＳサーバ１０は、階層的な木構造を有する名前空間の中にある特定のゾーンを管理している。そして、権威ＤＮＳサーバ１０は、キャッシュＤＮＳサーバ２０からＤＮＳクエリ要求を受信すると、変換表から対応するリソースレコードを検索し、検索結果としてのリソースレコードをＤＮＳクエリ応答としてキャッシュＤＮＳサーバ２０に返信する。
【００１７】
キャッシュＤＮＳサーバ２０は、例えば、ドメイン名とＩＰアドレスとを対応付けた変換表（リソースレコード）がキャッシュされたキャッシュメモリを有する。そして、キャッシュＤＮＳサーバ２０は、ユーザ端末３０からクエリ要求を受信すると、クエリ要求に対応するリソースレコードがキャッシュされているか否かを判定する。この結果、キャッシュＤＮＳサーバ２０は、クエリ要求に対応するリソースレコードがキャッシュされている場合には、キャッシュされているリソースレコードをＤＮＳクエリ応答として、ユーザ端末３０に返信する。また、キャッシュＤＮＳサーバ２０は、クエリ要求に対応するリソースレコードがキャッシュされていない場合には、権威ＤＮＳサーバ１０に対してＤＮＳクエリ要求を送信する。
【００１８】
ユーザ端末３０は、ユーザが利用するＤＮＳクライアント装置である。例えば、ユーザ端末３０は、ユーザによってドメイン名が入力された場合に、入力されたドメイン名に対応するＩＰアドレスを問い合わせるＤＮＳクエリ要求をキャッシュＤＮＳサーバ２０に送信する。また、ユーザ端末３０は、キャッシュＤＮＳサーバ２０からＤＮＳクエリ応答を受信した場合に、受信したＤＮＳクエリ応答に含まれているＩＰアドレスを用いて目的のサーバ装置と通信を行う。
【００１９】
［権威ＤＮＳサーバの構成］
次に、図２を用いて、図１に示した権威ＤＮＳサーバ１０の構成を説明する。図２は、第一の実施形態に係る権威ＤＮＳサーバの構成を示すブロック図である。図２に示すように、権威ＤＮＳサーバ１０は、通信処理部１１、制御部１２および記憶部１３を有する。
【００２０】
通信処理部１１は、接続されるキャッシュＤＮＳサーバ２０との間でやり取りする各種情報に関する通信を制御する。例えば、通信処理部１１は、キャッシュＤＮＳサーバ２０からＤＮＳクエリ要求を受信し、ＤＮＳクエリ要求に対するＤＮＳクエリ応答をキャッシュＤＮＳサーバ２０に送信する。
【００２１】
記憶部１３は、図２に示すように、応答情報記憶部１３ａを有する。記憶部１３は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置などである。
【００２２】
応答情報記憶部１３ａは、ドメイン名ごとに、ＤＮＳクエリ要求に応答するための応答情報を記憶する。具体的には、応答情報記憶部１３ａは、ドメイン名とＩＰアドレスとを対応付けて記憶するとともに、ネガティブキャッシュＴＴＬ等の情報を記憶する。
【００２３】
図３は、第一の実施形態に係る権威ＤＮＳサーバの応答情報記憶部に記憶される情報の一例を示す図である。ここで、権威ＤＮＳサーバ１０は、ｅｘａｍｐｌｅ．ｃｏｍゾーンに関する情報を記憶しているものとする。図３に示すように、応答情報記憶部１３ａは、ホストのＩＰアドレスが設定された「Ａレコード（Address  Record）」、ドメインのＤＮＳサーバ名を指定する「ＮＳレコード（Name  Server  record）」を記憶する。
【００２４】
また、応答情報記憶部１３ａは、ｅｘａｍｐｌｅ．ｃｏｍゾーンに関するオーソリティ情報が規定された「ＳＯＡレコード」において、ドメインのＤＮＳサーバ名「ｔａｃｏｍ．ｅｘａｍｐｌｅ．ｃｏｍ」、ドメイン管理者のメールアドレス「ｎｉｃ．ｅｘａｍｐｌｅ．ｃｏｍ」を記憶する。また、応答情報記憶部１３ａは、「ＳＯＡレコード」において、シリアル番号（Serial）「2013022501」、更新間隔（refresh）「10800」、転送再試行時間（retry）「3600」、レコード有効時間（expire）「864000」、ネガティブキャッシュＴＴＬ（Negative  Cache  TTL）「86400」を記憶する。図３に示すように、「Ａレコード」および「ＮＳレコード」ともに、ネガティブキャッシュＴＴＬとして、「86400」秒が設定されている。
【００２５】
図２に戻って、制御部１２は、ＤＮＳクエリ応答送信部１２ａを有する。ここで、制御部１２は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路やＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。
【００２６】
ＤＮＳクエリ応答送信部１２ａは、ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が応答情報記憶部１３ａに記憶されていない場合には、名前解決できない旨の応答をキャッシュＤＮＳサーバ２０に送信する。
【００２７】
具体的には、ＤＮＳクエリ応答送信部１２ａは、キャッシュＤＮＳサーバ２０から受信したＤＮＳクエリ要求に対応するドメイン名の応答情報を応答情報記憶部１３ａから検索する。そして、ＤＮＳクエリ応答送信部１２ａは、ＤＮＳクエリ要求に含まれるドメイン名が応答情報記憶部１３ａに記憶されている場合には、ドメイン名に対応する応答情報を取得する。その後、ＤＮＳクエリ応答送信部１２ａは、取得した応答情報を含めたＤＮＳクエリ応答を、キャッシュＤＮＳサーバ２０に送信する。例えば、ＤＮＳクエリ応答送信部１２ａは、応答情報としての「Ｎａｍｅ」、「Ｔｙｐｅ」及び「ＲＤＡＴＡ」等を含めたＤＮＳクエリ応答をキャッシュＤＮＳサーバ２０に送信する。
【００２８】
また、ＤＮＳクエリ応答送信部１２ａは、ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が応答情報記憶部１３ａに記憶されていない場合には、名前解決できない旨の応答にNegative  Cache  TTLを含めてキャッシュＤＮＳサーバ２０に送信する。例えば、ＤＮＳクエリ応答送信部１２ａは、ＤＮＳクエリ要求をキャッシュＤＮＳサーバ２０から受信し、該ＤＮＳクエリ要求に含まれるドメイン名が応答情報記憶部１３ａに記憶されていない場合には、名前解決できない旨の応答であるＮＸＤＯＭＡＩＮ応答にNegative  Cache  TTL「86400」を含めてキャッシュＤＮＳサーバ２０に送信する。
【００２９】
［キャッシュＤＮＳサーバの構成］
次に、キャッシュＤＮＳサーバ２０の構成について、図４を用いて説明する。図４は、第１の実施形態に係るキャッシュＤＮＳサーバ２０の構成の一例を示す図である。例えば、キャッシュＤＮＳサーバ２０は、図４に示すように、通信処理部２１、制御部２２および記憶部２３を有する。
【００３０】
通信処理部２１は、接続される権威ＤＮＳサーバ１０およびユーザ端末３０との間でやり取りする各種情報に関する通信を制御する。例えば、通信処理部２１は、権威ＤＮＳサーバ１０にＤＮＳクエリ要求を送信し、ＤＮＳクエリ要求に対するＤＮＳクエリ応答を権威ＤＮＳサーバ１０から受信する。また、通信処理部２１は、ユーザ端末３０からＤＮＳクエリ要求を受信し、ＤＮＳクエリ要求に対するＤＮＳクエリ応答をユーザ端末３０に送信する。
【００３１】
記憶部２３は、図４に示すように、ＤＮＳキャッシュ情報記憶部２３ａを有する。記憶部２３は、例えば、ＲＡＭ（Random  Access  Memory）、フラッシュメモリ（Flash  Memory）等の半導体メモリ素子、又は、ハードディスク、光ディスク等の記憶装置などである。
【００３２】
ＤＮＳキャッシュ情報記憶部２３ａは、後述する制御部２２によって格納されるネガティブキャッシュ情報を記憶する。具体的には、ＤＮＳキャッシュ情報記憶部２３ａは、図５に示すように、ドメイン名ごとに、現在のネガティブキャッシュＴＴＬの値を示す「ＴＴＬ」と、ネガティブキャッシュＴＴＬの上限値として使用される「ＳＯＡレコードのネガティブキャッシュＴＴＬ」と、ＤＮＳクエリ要求のたびに増加するネガティブキャッシュＴＴＬの値である「変数」とを対応付けて記憶する。図５は、第一の実施形態に係るキャッシュＤＮＳサーバのＤＮＳキャッシュ情報記憶部に記憶される情報の一例を示す図である。
【００３３】
図５の例を挙げて説明すると、ＤＮＳキャッシュ情報記憶部２３ａは、ドメイン名「ｅｘａｍｐｌｅ．ｃｏｍ」に対応付けてＴＴＬ「８００」、ＳＯＡレコードのネガティブキャッシュＴＴＬ「８６４００」および変数「８６４」を記憶する。
【００３４】
図４に戻って、制御部２２は、受信部２２ａ、判定部２２ｂ、要求送信部２２ｃ、決定部２２ｄ、格納部２２ｅ、削除部２２ｆ、設定部２２ｇおよび応答送信部２２ｈを有する。ここで、制御部２２は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）などの電子回路やＡＳＩＣ（Application  Specific  Integrated  Circuit）やＦＰＧＡ（Field  Programmable  Gate  Array）などの集積回路である。
【００３５】
受信部２２ａは、ユーザ端末３０からＤＮＳクエリ要求を受信する。具体的には、受信部２２ａは、ユーザ端末３０からＤＮＳクエリ要求を受信すると、該ＤＮＳクエリ要求を判定部２２ｂに通知する。
【００３６】
判定部２２ｂは、ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてＤＮＳキャッシュ情報記憶部２３ａに記憶されているか否かを判定する。
【００３７】
要求送信部２２ｃは、判定部２２ｂによってＤＮＳクエリ要求に含まれるドメイン名がＤＮＳキャッシュ情報記憶部２３ａに記憶されていないと判定された場合には、該ＤＮＳクエリ要求を権威ＤＮＳサーバ１０に送信する。
【００３８】
決定部２２ｄは、権威ＤＮＳサーバ１０から名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間であるネガティブキャッシュＴＴＬを決定する。例えば、決定部２２ｄは、権威ＤＮＳサーバ１０から名前解決できない旨の応答であるＮＸＤＯＭＡＩＮ応答を受信した場合には、初期値として、ＳＯＡレコードのネガティブキャッシュＴＴＬの値の１００分の１の値を設定する。なお、初期値は、固定値であってもよいが、その初期値がＳＯＡレコードのネガティブキャッシュＴＴＬよりも大きい場合には、ＴＴＬにはＳＯＡレコードのネガティブキャッシュＴＴＬとして決定する。
【００３９】
格納部２２ｅは、権威ＤＮＳサーバ１０から名前解決できない旨の応答を受信した場合には、ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名としてＤＮＳキャッシュ情報記憶部２３ａに格納するとともに、該ドメイン名に対応付けて決定部２２ｄによって決定されたネガティブキャッシュＴＴＬをＤＮＳキャッシュ情報記憶部２３ａに格納する。
【００４０】
削除部２２ｆは、ネガティブキャッシュのキャッシュ期間が終了した場合には、該キャッシュ期間に対応するドメイン名をＤＮＳキャッシュ情報記憶部２３ａから削除する。具体的には、削除部２２ｆは、ネガティブキャッシュＴＴＬの値が０になったか否かを判定し、ネガティブキャッシュＴＴＬの値が０になったと判定した場合には、該キャッシュ期間に対応するドメイン名をＤＮＳキャッシュ情報記憶部２３ａから削除する。
【００４１】
設定部２２ｇは、受信部２２ａによってＤＮＳクエリ要求に含まれるドメイン名がＤＮＳキャッシュ情報記憶部２３ａに記憶されていると判定された場合には、ＤＮＳキャッシュ情報記憶部２３ａに記憶された該ドメイン名に対応するネガティブキャッシュＴＴＬを延長する。
【００４２】
具体的には、設定部２２ｇは、受信部２２ａによってＤＮＳキャッシュ情報記憶部２３ａに記憶された名前解決できないドメイン名を含むＤＮＳクエリ要求を受信するたびに、決定部２２ｄによって決定されたキャッシュ期間を基に延長する期間を決定し、ＤＮＳキャッシュ情報記憶部２３ａに記憶されたキャッシュ期間に延長する期間を加算したキャッシュ期間を設定する。
【００４３】
また、設定部２２ｇは、受信部２２ａによってＤＮＳキャッシュ情報記憶部２３ａに記憶された名前解決できないドメイン名を含むＤＮＳクエリ要求を受信するたびに、決定部２２ｄによって決定されたキャッシュ期間を基に延長する期間の２倍の期間を算出し、該算出した期間をキャッシュ期間としてＤＮＳキャッシュ情報記憶部２３ａに設定する。
【００４４】
また、設定部２２ｇは、受信部２２ａによってＤＮＳキャッシュ情報記憶部２３ａに記憶された名前解決できないドメイン名を含むＤＮＳクエリ要求を受信するたびに、決定部２２ｄによって決定されたキャッシュ期間を基に延長する期間を決定し、該決定した期間が権威ＤＮＳサーバ１０により予め定められた期間であるＳＯＡレコードのネガティブキャッシュＴＴＬよりも長いか判定し、該予め定められた期間よりも長いと判定した場合には、該予め定められた期間をネガティブキャッシュＴＴＬとしてＤＮＳキャッシュ情報記憶部２３ａに設定する。
【００４５】
ここで、図６を用いてネガティブキャッシュＴＴＬの延長について具体例を挙げて説明する。図６は、ネガティブキャッシュＴＴＬを延長する処理を説明する図である。なお、図６の例では、ＳＯＡレコードのネガティブキャッシュＴＴＬが２００秒であるものとする。図６に例示するように、キャッシュＤＮＳサーバ２０は、最初のネガティブキャッシュＴＴＬ「１００」を変数として保持しており、最初のＤＮＳクエリ要求（図６では、「１発目のクエリ）と記載）を受信した場合には、ネガティブキャッシュＴＴＬに１００秒を設定する。
【００４６】
そして、キャッシュＤＮＳサーバ２０は、図６に例示するように、４０秒経過後に２発目のクエリを受信した場合には、この時点において、ネガティブキャッシュＴＴＬが６０秒まで減少している。そして、キャッシュＤＮＳサーバ２０は、直前の変数の値「１００」に予め設定された係数「２」を乗算する「１００×２＝２００」を計算し、変数の増加分として、１００秒をネガティブキャッシュＴＴＬの値に追加する。つまり、現状のネガティブキャッシュＴＴＬ「６０」秒に追加分の「１００」秒を加算することで、ネガティブキャッシュＴＴＬの値が「１６０」秒となる。
【００４７】
そして、キャッシュＤＮＳサーバ２０は、図６に例示するように、１００秒経過後に３発目のクエリを受信した場合には、直前の変数の値「２００」に予め設定された係数「２」を乗算する「２００×２＝４００」を計算する。ここで、計算された変数「４００」秒は、ＳＯＡレコードのネガティブキャッシュＴＴＬである「２００」秒を超えてしまうため、ＴＴＬの追加を行わない。
【００４８】
応答送信部２２ｈは、権威ＤＮＳサーバ１０から受信したＤＮＳクエリ応答に基づいて、ＤＮＳクエリ要求を送信したＤＮＳクライアント装置であるユーザ端末３０に対してＤＮＳクエリ応答を送信する。例えば、応答送信部２２ｈは、権威ＤＮＳサーバ１０から受信したＤＮＳクエリ応答に含まれるドメイン名が名前解決できないドメイン名である場合には、ＮＸＤＯＭＡＩＮ応答をユーザ端末３０に送信する。
【００４９】
ここで図７、図８を用いて、第一の実施形態に係るＤＮＳサーバクライアントシステム１００において、問い合わせ時にネガティブキャッシュＴＴＬを設定する処理を説明する。図７は、最初の問い合わせ時にネガティブキャッシュＴＴＬを設定する処理を説明する図である。図７に例示するように、キャッシュＤＮＳサーバ２０は、ＤＮＳクエリ要求として、ドメイン名「www2.example.com」のＡレコードの問い合わせをユーザ端末３０から受信し（ステップＳ１）、ドメイン名「www2.example.com」に関する情報がキャッシュされていない場合には、該ＤＮＳクエリ要求を権威ＤＮＳサーバ１０に送信する（ステップＳ２）。
【００５０】
そして、権威ＤＮＳサーバ１０は、問い合わされたドメイン名「www2.example.com」が応答情報記憶部１３ａに存在しない場合には、名前解決できない旨の応答であるＮＸＤＯＭＡＩＮ応答にＳＯＡのネガティブキャッシュＴＴＬ「86400」を含めてキャッシュＤＮＳサーバ２０に送信する（ステップＳ３）。
【００５１】
続いて、キャッシュＤＮＳサーバ２０は、ＤＮＳキャッシュ情報記憶部２３ａにＳＯＡのネガティブキャッシュＴＴＬ「86400」を格納する。また、キャッシュＤＮＳサーバ２０は、初期の変数について、ＳＯＡのネガティブキャッシュＴＴＬの「1／100」と規定されており、86400の1／100である「864」を変数としてＤＮＳキャッシュ情報記憶部２３ａに格納する。
【００５２】
その後、キャッシュＤＮＳサーバ２０は、ＮＸＤＯＭＡＩＮ応答をユーザ端末３０に送信する（ステップＳ４）。ここで、ユーザ端末３０への応答には、権威ＤＮＳサーバ１０から受信したＳＯＡのネガティブキャッシュＴＴＬ「86400」を送信するものとする。
【００５３】
そして、キャッシュＤＮＳサーバ２０は、ＮＸＤＯＭＡＩＮ応答を送信してから８６４秒以内（例えば、１０秒後）にドメイン名「www2.example.com」のＡレコードの問い合わせをユーザ端末３０から受信する（ステップＳ５）。この場合には、キャッシュＤＮＳサーバ２０は、その時点の変数「864」を２倍した「1728」を変数として設定し、その時点のネガティブキャッシュＴＴＬ「854」に変数の増加分である「864」を加算した「1718」を新しいネガティブキャッシュＴＴＬとして設定し、ＮＸＤＯＭＡＩＮ応答をユーザ端末３０に送信する（ステップＳ６）。
【００５４】
図８は、ＳＯＡレコードのネガティブキャッシュＴＴＬを超えた場合にネガティブキャッシュＴＴＬを設定する処理を説明する図である。図８に示すように、キャッシュＤＮＳサーバ２０は、変数が「55296」となっている。つまり、図７においてネガティブキャッシュＴＴＬを設定した後、キャッシュＤＮＳサーバ２０が、ドメイン名「www2.example.com」のＡレコードの問い合わせを６回受信し、初期の変数「864」を２倍する処理を６回行った結果、変数が「55296」となっている。そして、ネガティブキャッシュＴＴＬを最初に設定してから１００秒が経過して現時点のネガティブキャッシュＴＴＬが「55196」となっているものとする。
【００５５】
このような状況において、キャッシュＤＮＳサーバ２０は、ドメイン名「www2.example.com」のＡレコードの問い合わせをユーザ端末３０から受信する（ステップＳ１１）。この場合に、キャッシュＤＮＳサーバ２０は、その時点の変数「55296」を２倍した「110592」がＳＯＡのネガティブキャッシュＴＴＬ「86400」を超えるため、変数にはＳＯＡのネガティブキャッシュＴＴＬ「86400」から100を減算した「86300」を設定し（ネガティブキャッシュＴＴＬを最初に設定してから１００秒が経過しているため）、ＮＸＤＯＭＡＩＮ応答をユーザ端末３０に送信する（ステップＳ１２）。
【００５６】
［キャッシュＤＮＳサーバによる処理］
次に、図９を用いて、第一の実施形態に係るキャッシュＤＮＳサーバ２０による処理を説明する。図９は、第一の実施形態に係るキャッシュＤＮＳサーバにおけるキャッシュ制御処理の流れを説明するためのフローチャートである。
【００５７】
図９に示すように、キャッシュＤＮＳサーバ２０は、キャッシュＤＮＳサーバ２０の受信部２２ａがユーザ端末３０から名前解決の問い合わせとしてＤＮＳクエリ要求を受信すると（ステップＳ１０１）、該ＤＮＳクエリ要求に含まれるデータがキャッシュに格納されているか否かを判定する（ステップＳ１０２）。
【００５８】
そして、要求送信部２２ｃは、ＤＮＳクエリ要求に含まれるデータがキャッシュに格納されていないと判定された場合には（ステップＳ１０２否定）、該ＤＮＳクエリ要求を権威ＤＮＳサーバ１０に送信する（ステップＳ１０３）。
【００５９】
その後、決定部２２ｄは、ＤＮＳクエリ応答を受信すると（ステップＳ１０４）、ＤＮＳクエリ応答がＮＸＤＯＭＡＩＮ応答であるか否かを判定する（ステップＳ１０５）。この結果、決定部２２ｄがＤＮＳクエリ応答がＮＸＤＯＭＡＩＮ応答でない場合には（ステップＳ１０５否定）、キャッシュＤＮＳサーバ２０は、通常のキャッシュを用いたＤＮＳクエリ応答処理を実施する（ステップＳ１１４）。つまり、問い合わせのあったドメイン名が権威ＤＮＳサーバ１０の応答情報記憶部１３ａに記憶されていた場合には、キャッシュＤＮＳサーバ２０は、従来のＤＮＳと同様の処理を行う。
【００６０】
また、決定部２２ｄは、ＤＮＳクエリ応答がＮＸＤＯＭＡＩＮ応答である場合には（ステップＳ１０５肯定）、ネガティブキャッシュＴＴＬの値に初期値を設定する（ステップＳ１０６）。例えば、決定部２２ｄは、ＳＯＡレコードのネガティブキャッシュＴＴＬの値の１００分の１の値を設定する。
【００６１】
そして、格納部２２ｅは、名前解決できないドメイン名およびネガティブキャッシュＴＴＬに関する情報をＤＮＳキャッシュ情報記憶部２３ａに格納する（ステップＳ１０７）。ここで、ネガティブキャッシュＴＴＬに関する情報とは、図５に例示する「ＴＴＬ」、「ＳＯＡレコードのネガティブキャッシュＴＴＬ」、「変数」のことである。
【００６２】
そして、応答送信部２２ｈは、ＤＮＳクエリ要求を送信したユーザ端末３０に対してＤＮＳクエリ応答を送信し（ステップＳ１０８）、処理を終了する。また、ステップＳ１０２の処理に戻って、キャッシュＤＮＳサーバ２０は、ＤＮＳクエリ要求に含まれるデータがキャッシュに格納されていると判定された場合には（ステップＳ１０２否定）、ネガティブキャッシュとして格納されているかを判定する（ステップＳ１０９）。
【００６３】
この結果、ネガティブキャッシュとして格納されていないと判定した場合には（ステップＳ１０９否定）、設定部２２ｇは、キャッシュＤＮＳサーバ２０は、通常のキャッシュを用いたＤＮＳクエリ応答処理を実施する（ステップＳ１１４）。また、ネガティブキャッシュとして格納されている場合には（ステップＳ１０９肯定）、設定部２２ｇは、直前のネガティブキャッシュＴＴＬの値にネガティブキャッシュＴＴＬの増加分を加算する（ステップＳ１１０）。
【００６４】
そして、設定部２２ｇは、加算したネガティブキャッシュＴＴＬの値がＳＯＡのネガティブキャッシュＴＴＬを超えたかを判定する（ステップＳ１１１）。この結果、設定部２２ｇは、加算したネガティブキャッシュＴＴＬの値がＳＯＡレコードのネガティブキャッシュＴＴＬを超えていないと判定した場合には（ステップＳ１１１否定）、加算したネガティブキャッシュＴＴＬを設定する（ステップＳ１１２）。そして、応答送信部２２ｈは、ＤＮＳクエリ要求を送信したユーザ端末３０に対してＤＮＳクエリ応答を送信し（ステップＳ１０８）、処理を終了する。
【００６５】
また、設定部２２ｇは、加算したネガティブキャッシュＴＴＬの値がＳＯＡのネガティブキャッシュＴＴＬを超えていると判定した場合には（ステップＳ１１１肯定）、ＳＯＡレコードのネガティブキャッシュＴＴＬを設定し（ステップＳ１１３）、そして、応答送信部２２ｈは、ＤＮＳクエリ要求を送信したユーザ端末３０に対してＤＮＳクエリ応答を送信し（ステップＳ１０８）、処理を終了する。
【００６６】
[第一の実施形態の効果]
上述してきたように、第一の実施形態にかかるＤＮＳサーバクライアントシステム１００では、キャッシュＤＮＳサーバ２０が、ユーザ端末３０からＤＮＳクエリ要求を受信する。そして、キャッシュＤＮＳサーバ２０が、ＤＮＳクエリ要求を受信した場合に、該ＤＮＳクエリ要求に含まれるドメイン名が名前解決できないドメイン名としてＤＮＳキャッシュ情報記憶部２３ａに記憶されているか否かを判定する。そして、キャッシュＤＮＳサーバ２０が、ＤＮＳクエリ要求に含まれるドメイン名がＤＮＳキャッシュ情報記憶部２３ａに記憶されていないと判定された場合には、該ＤＮＳクエリ要求を権威ＤＮＳサーバ１０に送信する。続いて、権威ＤＮＳサーバ１０が、ＤＮＳクエリ要求を受信し、該ＤＮＳクエリ要求に含まれるドメイン名が応答情報記憶部１３ａに記憶されていない場合には、名前解決できない旨の応答をキャッシュＤＮＳサーバ２０に送信する。そして、権威ＤＮＳサーバ１０から名前解決できない旨の応答を受信した場合には、該ＤＮＳクエリ要求に含まれるドメイン名をキャッシュするキャッシュ期間を決定する。そして、キャッシュＤＮＳサーバ２０が、権威ＤＮＳサーバ１０から名前解決できない旨の応答を受信した場合には、ＤＮＳクエリ要求に含まれるドメイン名を名前解決できないドメイン名としてＤＮＳキャッシュ情報記憶部２３ａに格納するとともに、該ドメイン名に対応付けて決定されたキャッシュ期間をＤＮＳキャッシュ情報記憶部２３ａに格納する。そして、キャッシュＤＮＳサーバ２０が、ＤＮＳクエリ要求に含まれるドメイン名がＤＮＳキャッシュ情報記憶部２３ａに記憶されていると判定された場合には、ＤＮＳキャッシュ情報記憶部２３ａに記憶された該ドメイン名に対応するキャッシュ期間を延長する。
【００６７】
例えば、最初のネガティブキャッシュＴＴＬを小さな値とし、同一の無効な問合せが到着するごとに、ネガティブキャッシュＴＴＬを暫増させることで、ネガティブキャッシュによる使用メモリを効率化する。つまり、１回しか問合せのないドメイン名に対応するネガティブキャッシュＴＴＬを短くしておき、複数回問合せのあるドメイン名に対応するネガティブキャッシュＴＴＬはその都度長くしていく。これにより、適切な期間だけネガティブキャッシュを保存することが可能である。
【００６８】
［システム構成等］
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、受信部２２ａと判定部２２ｂとを統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、ＣＰＵおよび当該ＣＰＵにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【００６９】
また、本実施形態において説明した各処理のうち、自動的におこなわれるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的におこなわれるものとして説明した処理の全部または一部を公知の方法で自動的におこなうこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【００７０】
［プログラム］
また、上記実施形態において説明したＤＮＳサーバクライアントシステム１００における各装置が実行する処理をコンピュータが実行可能な言語で記述したプログラムを作成することもできる。例えば、第一の実施形態に係るＤＮＳサーバクライアントシステム１００における各装置が実行する処理をコンピュータが実行可能な言語で記述したキャッシュ制御プログラムを作成することもできる。この場合、コンピュータがキャッシュ制御プログラムを実行することにより、上記実施形態と同様の効果を得ることができる。さらに、かかるキャッシュ制御プログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたキャッシュ制御プログラムをコンピュータに読み込ませて実行することにより上記第一の実施形態と同様の処理を実現してもよい。
【００７１】
図１０は、キャッシュ制御プログラムを実行するコンピュータ１０００を示す図である。図１０に例示するように、コンピュータ１０００は、例えば、メモリ１０１０と、ＣＰＵ１０２０と、ハードディスクドライブインタフェース１０３０と、ディスクドライブインタフェース１０４０と、シリアルポートインタフェース１０５０と、ビデオアダプタ１０６０と、ネットワークインタフェース１０７０とを有し、これらの各部はバス１０８０によって接続される。
【００７２】
メモリ１０１０は、図１０に例示するように、ＲＯＭ（Read  Only  Memory）１０１１及びＲＡＭ１０１２を含む。ＲＯＭ１０１１は、例えば、ＢＩＯＳ（Basic  Input  Output  System）等のブートプログラムを記憶する。ハードディスクドライブインタフェース１０３０は、図１０に例示するように、ハードディスクドライブ１０３１に接続される。ディスクドライブインタフェース１０４０は、図１０に例示するように、ディスクドライブ１０４１に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ１０４１に挿入される。シリアルポートインタフェース１０５０は、図１０に例示するように、例えばマウス１０５１、キーボード１０５２に接続される。ビデオアダプタ１０６０は、図１０に例示するように、例えばディスプレイ１０６１に接続される。
【００７３】
ここで、図１０に例示するように、ハードディスクドライブ１０３１は、例えば、ＯＳ１０９１、アプリケーションプログラム１０９２、プログラムモジュール１０９３、プログラムデータ１０９４を記憶する。すなわち、上記のキャッシュ制御プログラムは、コンピュータ１０００によって実行される指令が記述されたプログラムモジュールとして、例えばハードディスクドライブ１０３１に記憶される。
【００７４】
また、上記実施形態で説明した各種データは、プログラムデータとして、例えばメモリ１０１０やハードディスクドライブ１０３１に記憶される。そして、ＣＰＵ１０２０が、メモリ１０１０やハードディスクドライブ１０３１に記憶されたプログラムモジュール１０９３やプログラムデータ１０９４を必要に応じてＲＡＭ１０１２に読み出し、各種処理手順を実行する。
【００７５】
なお、キャッシュ制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ハードディスクドライブ１０３１に記憶される場合に限られず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ等を介してＣＰＵ１０２０によって読み出されてもよい。あるいは、キャッシュ制御プログラムに係るプログラムモジュール１０９３やプログラムデータ１０９４は、ネットワーク（ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等）を介して接続された他のコンピュータに記憶され、ネットワークインタフェース１０７０を介してＣＰＵ１０２０によって読み出されてもよい。
【符号の説明】
【００７６】
１０  権威ＤＮＳサーバ
１１  通信処理部
１２  制御部
１２ａ  ＤＮＳクエリ応答送信部
１３  記憶部
１３ａ  応答情報記憶部
２０  キャッシュＤＮＳサーバ
２１  通信処理部
２２  制御部
２２ａ  受信部
２２ｂ  判定部
２２ｃ  要求送信部
２２ｄ  決定部
２２ｅ  格納部
２２ｆ  削除部
２２ｇ  設定部
２２ｈ  応答送信部
２３  記憶部
２３ａ  ＤＮＳキャッシュ情報記憶部
３０  ユーザ端末
１００  ＤＮＳサーバクライアントシステム
【図１】
2015041870.tif 000003
【図２】
2015041870.tif 000004
【図３】
2015041870.tif 000005
【図４】
2015041870.tif 000006
【図５】
2015041870.tif 000007
【図６】
2015041870.tif 000008
【図７】
2015041870.tif 000009
【図８】
2015041870.tif 000010
【図９】
2015041870.tif 000011
【図１０】
2015041870.tif 000012