JP4217725B2 - 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム - Google Patents

再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム Download PDF

Info

Publication number
JP4217725B2
JP4217725B2 JP2006072855A JP2006072855A JP4217725B2 JP 4217725 B2 JP4217725 B2 JP 4217725B2 JP 2006072855 A JP2006072855 A JP 2006072855A JP 2006072855 A JP2006072855 A JP 2006072855A JP 4217725 B2 JP4217725 B2 JP 4217725B2
Authority
JP
Japan
Prior art keywords
cache
response
server device
reliability
cache data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006072855A
Other languages
English (en)
Other versions
JP2007251631A (ja
Inventor
卓也 足立
哲良 柴田
衡 平野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2006072855A priority Critical patent/JP4217725B2/ja
Publication of JP2007251631A publication Critical patent/JP2007251631A/ja
Application granted granted Critical
Publication of JP4217725B2 publication Critical patent/JP4217725B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Description

この発明は、DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に蓄積したキャッシュデータに基づいてDNSクライアント装置への即時応答またはDNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラムに関する。
従来、パーソナルコンピュータ(PC)などのDNS(Domain Name System)クライアント装置からの名前解決要求(以下、「DNSクエリ要求」と記載する)に対し、過去におこなったDNSサーバ装置に対する問合わせの回答を蓄積したキャッシュデータを用いて応答するキャッシュサーバ装置が知られている。
このキャッシュサーバ装置は、たとえば、「aaa.co.jp.」というドメイン名を有するサーバAのIPアドレスを返してほしい旨のDNSクエリ要求を受け付けた場合、キャッシュデータにサーバAのアドレス情報が含まれていれば、キャッシュデータを用いた「応答処理」を実行する。一方、キャッシュデータにサーバAのアドレス情報が含まれていなければ、サーバAのアドレス情報を取得するために権威サーバ(以下、「DNSサーバ装置」と記載する)に対する「再帰問合わせ処理」を実行したうえで名前解決をおこなって応答する。
ここで、「再帰問合わせ処理」とは、「ルート」、「jp.」、「co.jp.」といった各ドメイン階層を管理するDNSサーバ装置に対する問合わせ処理を、上位階層から順々に繰り返していくことで目的とするドメイン名についてのアドレス情報を取得する処理のことを指す。
ところで、従来のキャッシュサーバ装置のなかには、上記した「応答処理」に用いることのできる信頼性をもった回答(たとえば、ドメインのゾーンを管轄するDNSサーバ装置からの正式回答)のみをキャッシュデータとして蓄積するものが存在した。すなわち、かかる従来のキャッシュサーバでは、「応答処理」に用いることのできない回答(たとえば、階層配下のDNSサーバ装置が名前解決できる旨をあらわす委任回答)を破棄していた。
また、特許文献1には、正式回答用キャッシュ領域および委任回答用キャッシュ領域を設けて正式回答および委任回答をそれぞれのキャッシュ領域に登録するとともに、各キャッシュ領域のデータ構造をそれぞれ異なる構造とすることによってキャッシュデータの利用処理の高速化を図る技術が開示されている。
米国特許出願公開第2004/0267907号明細書
しかしながら、上記した委任回答を破棄するキャッシュサーバ装置は、利用可能なキャッシュデータを登録していために、キャッシュデータを利用する処理を効率的におこなうことができないという問題があった。具体的には、名前解決ができるDNSサーバ装置が委任回答に示されている場合であっても、この委任回答をキャッシュしていないので、問合わせのたびに上位階層のDNSサーバ装置を起点とする「再帰問合わせ処理」を実行する必要があった。したがって、2回目以降の問合わせであってもDNSサーバ装置への問合わせ処理に要する時間を短縮することができないという問題があった。
また、特許文献1に開示されているキャッシュサーバ装置は、キャッシュデータを幅広くおこなうことができるものの、登録したキャッシュデータを利用する際の処理が煩雑であるという問題があった。具体的には、「再帰問合わせ処理」をおこなう場合には、問合わせ先DNSサーバ装置のアドレスを広く参照する必要があることから正式回答用キャッシュ領域および委任回答用キャッシュ領域を双方とも参照することになり参照処理が煩雑化してしまう。さらに、各キャッシュ領域のデータ構造が異なるとキャッシュデータを参照する際の処理手順が複雑化してしまう。
さらに、特許文献1に開示されているキャッシュサーバ装置は、正式回答および委任回答をそれぞれの回答用に設けたキャッシュ領域に登録するという固定的な構成をとっており、登録したキャッシュデータの利用ポリシーを柔軟に変更することができないという問題もあった。
これらのことから、利用可能なキャッシュデータを幅広く登録することができるとともに、幅広く登録したキャッシュデータを効率良く利用することができるキャッシュサーバ装置をいかにして実現するかが大きな課題となっている。
この発明は、上述した従来技術による問題点を解決するためになされたものであって、利用可能なキャッシュデータを幅広く登録することができるとともに、幅広く登録したキャッシュデータを効率良く利用することができるキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、請求項1に係る発明は、DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュサーバ装置であって、前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録手段と、前記登録手段によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定手段とを備えたことを特徴とする。
また、請求項2に係る発明は、上記の発明において、前記利用可否判定手段の判定結果に基づいて前記DNSクライアント装置への即時応答をおこなう応答手段をさらに備え、前記利用可否判定手段は、前記応答手段が前記DNSクライアント装置への即時応答をおこなうに先だって、前記信頼度が応答用閾値以上である前記キャッシュデータを即時応答に利用可能であると判定することを特徴とする。
また、請求項3に係る発明は、上記の発明において、前記登録手段は、前記応答用閾値よりも低い値を有する登録用閾値を用いるものであって、前記信頼度が登録用閾値以上である前記問合わせの応答を前記キャッシュデータとして登録することを特徴とする。
また、請求項4に係る発明は、上記の発明において、前記利用可否判定手段の判定結果に基づいて前記DNSサーバ装置への再帰的な問合わせをおこなう問合わせ手段をさらに備え、前記利用可否判定手段は、前記応答用閾値よりも低い値を有する問合わせ用閾値を用いるものであって、前記問合わせ手段が前記DNSサーバ装置への再帰的な問合わせをおこなうに先だって、前記信頼度が問合わせ用閾値以上である前記キャッシュデータを再帰的な問合わせに利用可能であると判定することを特徴とする。
また、請求項5に係る発明は、上記の発明において、前記信頼度に基づいて区分けされたキャッシュ領域を有するキャッシュデータ記憶手段をさらに備え、前記登録手段は、前記DNSサーバ装置に対する問合わせの応答を前記信頼度に対応する各キャッシュ領域へ登録することを特徴とする。
また、請求項6に係る発明は、上記の発明において、前記登録手段によって登録される前記キャッシュデータのデータ構造はハッシュテーブルであって、前記キャッシュデータを検索するための検索アルゴリズムを前記キャッシュデータの利用目的ごとに切り替える検索アルゴリズム切替手段をさらに備えたことを特徴とする。
また、請求項7に係る発明は、上記の発明において、前記登録手段は、前記DNSサーバ装置に対する問合わせの応答の前記信頼度が既に登録した前記キャッシュデータの前記信頼度と異なる場合に、あらたな応答を用いて前記キャッシュデータを更新することを特徴とする。
また、請求項8に係る発明は、DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュ制御方法であって、前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録工程と、前記登録工程によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定工程とを含んだことを特徴とする。
また、請求項9に係る発明は、DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュサーバ装置用プログラムであって、前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録手順と、前記登録手順によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定手順とをコンピュータに実行させることを特徴とする。
請求項1、8または9の発明によれば、DNSサーバ装置に対する問合わせの応答を応答の信頼度と対応付けたうえでキャッシュデータとして登録し、登録されたキャッシュデータの利用可否を信頼度に基づいて判定するよう構成したので、利用可能なキャッシュデータを幅広く登録することができるとともに、幅広く登録したキャッシュデータを効率良く利用することができるという効果を奏する。
また、請求項2の発明によれば、利用可否判定の判定結果に基づいてDNSクライアント装置への即時応答をおこなうこととし、DNSクライアント装置への即時応答をおこなうに先だって、信頼度が応答用閾値以上であるキャッシュデータを即時応答に利用可能であると判定するよう構成したので、DNSクライアント装置への応答の信頼性を容易に担保することができるとともに、応答用閾値を変更することによって柔軟な運用をおこなうことができるという効果を奏する。
また、請求項3の発明によれば、応答用閾値よりも低い値を有する登録用閾値を用いることとし、信頼度が登録用閾値以上である問合わせの応答をキャッシュデータとして登録するよう構成したので、応答用閾値よりも低い登録用閾値を用いることによってDNSサーバ装置への問合わせに用いるキャッシュデータを数多く登録することでDNSサーバ装置への再帰的な問合わせ回数を削減することができるとともに、登録用閾値を変更することによって柔軟な運用をおこなうことができるという効果を奏する。
また、請求項4の発明によれば、利用可否判定の判定結果に基づいてDNSサーバ装置への再帰的な問合わせをおこなうこととするとともに、応答用閾値よりも低い値を有する問合わせ用閾値を用いることとし、DNSサーバ装置への再帰的な問合わせをおこなうに先だって、信頼度が問合わせ用閾値以上であるキャッシュデータを再帰的な問合わせに利用可能であると判定するよう構成したので、DNSサーバ装置への問合わせの信頼性を容易に担保することができるとともに、問い合わせ用閾値を変更することによって柔軟な運用をおこなうことができるという効果を奏する。
また、請求項5の発明によれば、信頼度に基づいて区分けされたキャッシュ領域を備えることとし、DNSサーバ装置に対する問合わせの応答を信頼度に対応する各キャッシュ領域へ登録するよう構成したので、キャッシュデータと信頼度との対応付けを信頼度に応じたキャッシュ領域を設けることで実現することによって、キャッシュデータ利用時における参照処理を効率化することができるという効果を奏する。
また、請求項6の発明によれば、キャッシュデータのデータ構造をハッシュテーブルとし、これらのキャッシュデータを検索するための検索アルゴリズムをキャッシュデータの利用目的ごとに切り替えるよう構成したので、各利用目的に適した検索アルゴリズムを用いることによってキャッシュデータ利用時における参照処理を効率化することができるという効果を奏する。
また、請求項7の発明によれば、DNSサーバ装置に対する問合わせの応答の信頼度が既に登録したキャッシュデータの信頼度と異なる場合に、あらたな応答を用いてキャッシュデータを更新するよう構成したので、最新の状態に更新された信頼度を用いて応答処理や問合わせ処理といった利用処理を実行することができるという効果を奏する。
以下に添付図面を参照して、この発明に係るキャッシュ制御手法を適用したキャッシュサーバ装置の実施例1〜2を詳細に説明する。なお、実施例1ではDNSサーバ装置から受け取った回答に信頼度を付加してキャッシュするキャッシュサーバ装置について、実施例2では回答の信頼度に応じたキャッシュ領域を備えたキャッシュサーバ装置について、それぞれ説明することとする。
本実施例1では、DNSサーバ装置から受け取った回答に信頼度を付加してキャッシュするキャッシュサーバ装置について説明する。図1は、実施例1に係るキャッシュサーバ装置10の概要および特徴を示す図である。なお、同図に示すキャッシュサーバ装置10は、ネットワークを介してDNSクライアント装置110およびDNSサーバ装置120と通信データの送受信をおこなうものとする。
図1に示すように、キャッシュサーバ装置10はDNSサーバ装置120から受け取った応答を応答の信頼度と対応付けたうえでキャッシュ領域に登録し(図1の(3)参照)、同図に示す応答機能および再帰問合わせ機能はキャッシュデータの信頼度に基づいてキャッシュデータを使用する(図1の(1)および(2)参照)点に主な特徴がある。
言い換えれば、DNSサーバ装置120からの応答をむやみに破棄することなく、あらたに導入した概念である「信頼度」と対応付けて幅広く登録するとともに、登録されたキャッシュデータを利用する際には利用目的に合致する信頼度のキャッシュデータのみを使用することとしている。したがって、利用可能なキャッシュデータを幅広く登録することができるとともに、幅広く登録したキャッシュデータを効率良く利用することが可能となる。なお、「信頼度」の詳細な説明については図4を用いて後述する。
また、キャッシュサーバ装置10がおこなう処理手順を時系列で説明すると以下のようになる。すなわち、DNSクライアント装置110からのDNSクエリ要求を受け取った応答機能は、キャッシュ領域のキャッシュデータのうち所定の信頼度(図1では信頼度が1)を有するキャッシュデータにクエリ要求対象の情報が含まれているか否かを判定する。そして、クエリ要求対象の情報が含まれている場合には該当するキャッシュデータを用いてDNSクライアント装置110へ応答する。また、クエリ要求の情報が含まれていない場合には再帰問合わせ機能に対してDNSサーバ装置120からクエリ要求対象の情報を取得するよう依頼する。
応答機能からの依頼を受けた再帰問合わせ機能は、キャッシュ領域のキャッシュデータ(図1ではすべての信頼度)を用いて問合わせ先となるDNSサーバ装置120のアドレス一覧を作成し、各ドメイン階層に設けられたDNSサーバ装置120に対して上位階層から下位階層に向けて問合わせを繰り返していく。そして、所望する情報を含んだ応答を受け取った場合には、この応答を応答機能に渡してDNSクライアント装置110へ応答させるとともに、DNSサーバ装置120から受け取った応答をキャッシュ領域に登録するようキャッシュデータ登録処理に依頼する。
そして、キャッシュデータ登録処理は、DNSサーバ装置120からの応答を応答の信頼度と関連付けたうえでキャッシュ領域へと登録する。具体的には、このキャッシュデータ登録処理は再帰問合わせ機能を介してDNSサーバ装置120からの応答を受け取ると、応答の内容を確認することによって各応答の信頼度を決定する。そして、決定した信頼度と対応付けたキャッシュデータを登録する(図1の(3)参照)。すなわち、キャッシュデータ登録処理は、DNSサーバ装置120からの応答がDNSクライアント装置110への応答に耐えない信頼度である場合であっても、信頼度と対応付けたうえでキャッシュ領域へ登録する。
このようにすることで、再帰問合わせ機能が利用可能なキャッシュデータを数多く登録することができ、結果的に再帰問合わせ回数を低減することによって再帰問合わせに要する処理時間を短縮することが可能となる。一方、応答機能はキャッシュ領域に登録されたキャッシュデータのうち所定の信頼度を有するものだけを用いるのでDNSクライアント装置110への応答の信頼性を担保することができる。
ここで、従来技術に係るキャッシュサーバ装置の概要について図15を用いて説明する。図15は、従来技術に係るキャッシュサーバ装置の概要を示す図である。同図に示すように、従来技術に係るキャッシュサーバ装置においては、応答機能がDNSクライアント装置110への応答に用いることが可能な信頼性を有するデータのみをキャッシュデータとしてキャッシュしていた。このような構成をとると、DNSクライアント装置110への応答の信頼性は担保できるものの、再帰問合わせ機能が利用することができるキャッシュデータが減少してしまい、結果的に再帰問合わせに要する時間を短縮することができないという問題があった。
たとえば、DNSサーバ装置120から委任回答を受け取った場合、委任回答の信頼性はDNSクライアント装置110への応答に値しないのでキャッシュ対象とはせず破棄することになる。しかしながら、この委任回答には名前解決が可能なDNSサーバ装置120のアドレスなどの情報が含まれているので、破棄してしまうと再帰問合わせに利用することはできない。
一方、本実施例1に係るキャッシュサーバ装置10は、DNSクライアント装置110への応答には用いることができないもののDNSサーバ装置120への問合わせには用いることができる信頼度を有するキャッシュデータをキャッシュしているので、名前解決が可能なDNSサーバ装置120に対して直接的に問合わせることができる場合が多くなり、結果的に問合わせ回数を削減することが可能となるので再帰問合わせに要する処理時間を短縮することができる。
次に、本実施例1に係るキャッシュサーバ装置10の構成について図2を用いて説明する。図2は、実施例1に係るキャッシュサーバ装置10の構成を示すブロック図である。なお、同図においては、キャッシュサーバ装置10の特徴点を説明するために必要な処理部のみを示しており、CPU(Central Processing Unit)などのプロセッサ、一般的なキャッシュサーバとしての機能を担う処理部についての記載を省略している。
図2に示すように、キャッシュサーバ装置10は、制御部11と、記憶部12と、通信処理部13とを備えている。そして、制御部11は、応答処理部11aと、応答可否判定部11bと、再帰問合わせ処理部11cと、データ登録処理部11dとをさらに備えており、記憶部12は、キャッシュデータ12aを記憶している。
制御部11は、DNSサーバ装置120からの応答を信頼度に対応付けてキャッシュデータ12aとして登録するとともに、キャッシュデータ12aを利用する際には信頼度に基づいた利用可否判定をおこなったうえでDNSクライアント装置110への応答あるいはDNSサーバ装置120への問合わせをおこなう処理部である。
応答処理部11aは、DNSクライアント装置110からのDNSクエリ要求を受け付けるとともに、応答可否判定部11bが応答に使用可能であるとしたキャッシュデータ12aに応答用の情報が含まれている場合にはこの情報を用いて応答する処理をおこなう処理部である。また、この応答処理部11aは、キャッシュデータ12aに応答用の情報が含まれていない場合には再帰問合わせ処理部11cに対してDNSサーバ装置120への問合わせを依頼する処理をおこなう処理部でもある。
応答可否判定部11bは、各キャッシュデータ12aと対応付けられた信頼度を参照することによって、たとえば、所定の応答用閾値以上の信頼度を有するキャッシュデータ12aをDNSクライアント装置110への応答用に用いることができるキャッシュデータ12aであると判定する処理部である。なお、応答可否判定部11bは判定結果を応答処理部11aに対して通知する処理もおこなう。
ここで、応答可否判定部11bがおこなう処理の例を、図1を用いて説明すると以下のようになる。たとえば、応答用として利用可能な信頼度が1のみであるとすると、この応答可否判定部11bは信頼度が1のキャッシュデータのみを抽出して応答処理部11aに通知する。
また、本実施例1では、この応答可否判定部11bを応答処理部11aとは異なる処理部として説明するが、応答可否判定部11bを含んだ応答処理部11aを構成することとしてもよい。さらに、応答可否判定部11bを利用目的に応じた利用可否の判定をおこなう処理部として構成し、応答処理部11a、再帰問合わせ処理部11c、データ登録処理部11dといったキャッシュデータ12aを取り扱う各処理部が、利用可否の判定結果を使用することとしてもよい。
再帰問合わせ処理部11cは、応答処理部11aからDNSサーバ装置120への問合わせを依頼された場合に、キャッシュデータ12aに含まれるDNSサーバ装置120のアドレスを用いてDNSサーバ装置120に対する再帰的な問合わせ処理をおこなう処理部である。また、この再帰問合わせ処理部11cは、DNSサーバ装置120から受け取った応答をデータ登録処理部11dに渡す処理をおこなう処理部でもある。
データ登録処理部11dは、再帰問合わせ処理部11cから渡されたDNSサーバ装置120からの応答を「信頼度」と対応付けたうえでキャッシュデータ12aとして登録する処理をおこなう処理部である。ここで、キャッシュデータ12aの構成例および「信頼度」の設定例について図3および図4を用いて説明する。
図3は、キャッシュデータ12aの構成例を示す図である。同図の31に示すように、キャッシュデータ12aはn個のRRset(リソースレコードセット)から構成される。そして、各RRsetは同図の32に示した項目を含んでいる。なお、このRRsetは、「NAME」、「TYPE」および「CLASS」が一致するリソースレコードを一つのまとまりとしてグループ化したものである。そして、各RRsetには「信頼度」の項目が含まれているが、この項目は上記したデータ登録処理部11dによって設定される項目である。次に、この信頼度の設定例について図4を用いて説明する。
図4は、信頼度の設定例を示す図である。同図の42に示したDNSサーバ装置120からの応答種別についてデータ登録処理部11dが設定した「信頼度」を、同図の41に示している。ここで、同図の42に示したのは、RFC2181の5.4章における記述である。なお、RFC(Request For Comment)とは、インターネットに関する技術標準を定める団体であるIETF(Internet Engineering Task Force)が正式に発行する文書であり、RFC2181ではDNSについての仕様がまとめられている。
図4の42に示したように、RFC2181の5.4章における記述では、再帰問合わせに対する応答データの分類をあらわす「データの分類」、各データの分類についての詳細な情報である「詳細情報」、DNSクライアント装置への応答に用いてよい回答であるか否かをあらわす「クライアントへの応答可否」を用いて、応答の信頼性を信頼性が高い方から低い方へ大きく7種類に分類している。
なお、「信頼性」の項目に記載した「A」〜「G」は、説明の都合上付したものであり「A」が最も信頼性の高いランクであることを示している。また、RFC2181の5.4章における記述では、クライアントへの応答可否について信頼性「G」の応答をDNSクライアント装置への応答に用いてはならない旨が定められているが、その他の信頼性のランクについては定められていない。
次に、「信頼度」の設定例について説明する。同図の41に示したのはデータ登録処理部11dが設定する「信頼度」の例である。まず、同図の42に示した信頼性がA、BおよびEは一般的にキャッシュデータとして使用する応答ではないので除外する。そして、信頼性がCのデータ(Answer部に含まれる権威のあるクエリ応答(AAビットON))については信頼度を「1」に、信頼性がDのデータ(Authority部に含まれる権威のあるクエリ応答(AAビットON))については「2」にというように信頼度を定めていく。
なお、同図の41では、同図の42に示した「信頼性」と1対1に対応させて「信頼度」を定めた場合について示したが、これに限らず、複数の「信頼性」を1つの「信頼度」と対応させることとしてもよい。さらに、1つの「信頼性」を複数の「信頼度」と対応させることとしてもよい。
また、図4においては、同図の42に示した「信頼性」と「信頼度」とを対応付ける例を示したが、キャッシュデータの利用目的に応じて「信頼度」を設定することとしてもよい。たとえば、キャッシュデータの登録対象とするデータは信頼度1〜3、DNSサーバ装置に対する再帰問合わせに使用可能なデータは信頼度1〜2、DNSクライアント装置に対する応答に使用可能なデータは信頼度1というように信頼度を定めることができる。
図2の説明に戻り、記憶部12について説明する。記憶部12は、不揮発性RAM(Random Access Memory)やハードディスク装置といった記憶デバイスによって構成された記憶部であり、キャッシュデータ12aを記憶する。キャッシュデータ12aは、図3を用いて既に説明した構成を有するデータであり、データ登録処理部11dによって設定された「信頼度」を含んでいる。そして、このキャッシュデータ12aはDNSクライアント装置110への応答、あるいは、DNSサーバ装置120への再帰的問合わせに利用される。なお、キャッシュデータ12aをメモリダンプなどすることによって統計・分析用として利用することもできる。
通信処理部13は、DNSクライアント装置110やDNSサーバ装置120とのデータ送受信をおこなう通信デバイスであり、たとえば、LAN(Local Area Network)ボードなどの通信インタフェースボードによって構成される。
次に、本実施例1に係るキャッシュサーバ装置10がDNSクライアント装置110への応答をおこなう際の処理手順について図5を用いて説明する。図5は、実施例1に係る応答処理の処理手順を示すフローチャートである。同図に示すように、キャッシュサーバ装置10が要求電文(クエリ要求)を受信すると(ステップS101)、要求電文の回答を含んだキャッシュデータ12aがあるか否かを判定する(ステップS102)。そして、該当するキャッシュデータ12aがある場合には(ステップS102,Yes)、つづいて、ステップS102において該当すると判定されたキャッシュデータ12aの信頼度が応答用閾値以上であるか否かを判定する(ステップS103)。
そして、信頼度が応答用閾値以上である場合には(ステップS103,Yes)、このキャッシュデータを用いてDNSクライアント装置110への応答をおこなって(ステップS104)処理を終了する。
一方、ステップS102において該当するキャッシュデータがないと判定された場合(ステップS102,No)、または、ステップS103において信頼度が応答用閾値未満であると判定された場合(ステップS103,No)には、DNSサーバ装置120に対する再帰問合わせ処理を実行する(ステップS105)。なお、この再帰問合わせ処理(ステップS105)の詳細な処理内容については図8を用いて後述することとする。
再帰問合わせ処理(ステップS105)を実行したキャッシュサーバ装置10は、再帰問合わせの結果(名前解決の結果)を用いてDNSクライアント装置110に対して応答する(ステップS106)。また、キャッシュサーバ装置10は、この問合わせ結果をキャッシュデータ12aとして登録する処理を実行して(ステップS107)処理を終了する。
次に、図5に示したキャッシュデータ登録処理(ステップS107)の詳細な処理内容について図6および図7を用いて説明する。なお、図6では、最も基本的な処理手順のみを示しており、図7では、登録用閾値を用いた登録可否判定処理およびキャッシュデータ更新処理を含んだ詳細な処理手順を示している。
図6は、実施例1に係るキャッシュデータ登録処理の処理手順を示すフローチャートである。同図に示すように、データ登録処理部11dが再帰問合わせ処理部11cを介してリソースレコードを受け取ると(ステップS201)、あらかじめ定めた設定基準(たとえば、図4参照)に従って信頼度を設定する(ステップS202)。そして、信頼度と関連付けたリソースレコードをキャッシュデータ12aとして記憶部12へ登録する。なお、信頼度との関連付けにおいては、図3に示したようにキャッシュデータ12a自体に信頼度を含めることとしてもよいし、信頼度とのリンク付けをおこなうこととしてもよい。また、キャッシュデータ12a自体には信頼度を含めず信頼度ごとに区分けされたキャッシュ領域へ格納することで信頼度とキャッシュデータ12aとの関連付けをおこなうこととしてもよい。
次に、図6に示した処理手順に、さらに、登録用閾値を用いた登録可否判定処理およびキャッシュデータ更新処理を追加した場合について図7を用いて説明する。図7は、図6に示した処理手順の変形例を示すフローチャートである。同図に示すように、データ登録処理部11dが再帰問合わせ処理部11cを介してリソースレコードを受け取ると(ステップS301)、あらかじめ定めた設定基準(たとえば、図4参照)に従って信頼度を設定する(ステップS302)。つづいて、信頼度が所定の登録用閾値以上であるか否かを判定し(ステップS303)、登録用閾値以上である場合には(ステップS303,Yes)、このリソースレコードが既に登録されているか否かを判定する(ステップS304)。
ステップS304における判定の結果、リソースレコードが既に登録されている場合には(ステップS304,Yes)、既に登録されているリソースレコードとステップS301で受け取ったリソースレコードとで信頼度が異なるか否かを判定する(ステップS305)。そして、信頼度が異なる場合には(ステップS305,Yes)、該当するキャッシュデータ12aを更新して(ステップS307)処理を終了する。
なお、図7においては信頼度が異なる場合に該当するキャッシュデータ12aを更新する場合について示したが、これに限らず、あらたなリソースレコードの信頼度が既に登録されているリソースレコードの信頼度よりも高い場合にのみキャッシュデータ12aを更新することとしてもよい。
つづいて、ステップS303〜ステップS305において判定条件を満たさなかった場合について説明する。ステップS303において信頼度が登録用閾値未満であると判定された場合(ステップS303,No)、または、ステップS305において信頼度が一致すると判定された場合(ステップS305,No)には、リソースレコードを破棄して(ステップS308)キャッシュデータ12aを更新することなく処理を終了する。
また、ステップS304において該当するリソースレコードが未だ登録されていないと判定された場合には(ステップS304,No)、信頼度と関連付けたリソースレコードをキャッシュデータ12aとして新規登録して(ステップS306)処理を終了する。
次に、図5に示した再帰問合わせ処理(ステップS105)の詳細な処理内容について
図8を用いて説明する。図8は、実施例1に係る再帰問合わせ処理の処理手順を示すフローチャートである。同図に示すように、応答処理部11aからDNSサーバ装置120に対する再帰問合わせを指示された再帰問合わせ処理部11cは、該当するキャッシュデータ12aがあるか否か、すなわち、問合わせ先のDNSサーバ装置120を示すNSレコードおよびglueレコード(AレコードまたはAAAAレコード)があるか否かを判定する(ステップS401)。
そして、該当するキャッシュデータ12aがある場合には(ステップS401,Yes)、キャッシュデータ12aに示されたDNSサーバ装置120を問合わせ先とすることによって問合わせ先をショートカットする(ステップS402)。一方、該当するキャッシュデータ12aがない場合には(ステップS401,No)、問合わせ先をルートゾーンのDNSサーバとする。
つづいて、再帰問合わせ処理部11cは、ステップS402あるいはステップS403で決定したDNSサーバ装置120に対して問合わせを実行し(ステップS404)、DNSサーバ装置120からの問合わせ結果(正式回答または委任回答)を受信したならば(ステップS405)、問合わせ結果が正式回答であるか否かを判定する(ステップS406)。そして、問合わせ結果が正式回答である場合には(ステップS406,Yes)、処理を終了する。一方、問合わせ結果が委任回答である場合には(ステップS406,No)、問合わせ先を下位ゾーン(下位階層)のDNSサーバ装置120として(ステップS407)ステップS404以降の処理手順を繰り返すことになる。
なお、図8においては再帰問合わせの概要的な処理手順を示したが、DNSサーバ装置120に対する再帰的な問合わせ処理をおこなう場合には、再帰問合わせをおこなうたびに問合わせ先DNSサーバ装置120のリストであるSLISTを生成する。そして、ステップS401においてYesと判定されたキャッシュデータ12aに含まれるリソースレコードをSLISTに追加したうえで、ステップS404の問合わせを実行することになる。
次に、図8に示した再帰問合わせ処理の効果について図9および図16を用いて説明する。図9は、実施例1に係る再帰的問合わせ処理の効果を説明する図であり、図16は、従来技術に係る再帰問合わせ処理の概要を示す図である。
まず、従来技術に係る再帰問合わせ処理について図16を用いて説明する。図16に示すように、ルートゾーンを管理するDNSサーバ装置α、jp.ゾーンを管理するDNSサーバ装置β、co.jp.ゾーンを管理するDNSサーバ装置γがある場合に、org.co.jp.の名前解決を要求された従来のキャッシュサーバ装置は、ルートゾーンを管理するDNSサーバ装置αに対してorg.co.jp.の問合わせをおこなう(図16の(1)参照)。
そして、このDNSサーバ装置αからの回答が委任回答であれば(図16の(1)’参照)、この委任回答に含まれるDNSサーバ装置βを指し示す情報を用いることによってDNSサーバ装置βに対してorg.co.jp.を問合わせる(図16の(2)参照)、そして、このDNSサーバ装置βからの回答が委任回答であれば(図16の(2)’参照)、この委任回答に含まれるDNSサーバ装置γを指し示す情報を用いることによってDNSサーバγに対してorg.co.jp.の問合わせをおこなう(図16の(3)参照)。そして、このDNSサーバ装置γからの回答が正式回答であれば(図16の(3)’参照)再帰問合わせ処理を終了する。
このように、従来技術に係る再帰問合わせ処理においては、上位階層のDNSサーバ装置を起点とし、正式回答を返すDNSサーバ装置にたどり着くまで再帰的に問合わせを繰り返す必要があった。
次に、実施例1に係る再帰的問合わせ処理について図9を用いて説明する。なお、図9における前提条件は図16と同様であるものとし、DNSサーバ装置α〜γの3台のDNSサーバ装置があり、キャッシュサーバ装置10はorg.co.jp.の名前解決を要求されたものとする。
なお、図9の91においては、最初にorg.co.jp.の名前解決を要求された場合の問合わせ処理について、図9の92においては、2回目以降にorg.co.jp.の名前解決を要求された場合についてそれぞれ示している。
実施例1に係るキャッシュサーバ装置10は、最初にco.jp.ゾーンに属するドメインであるorg.co.jp.の名前解決を要求された場合(図9の91参照)、各委任回答をキャッシュデータ12aとしてキャッシュする。したがって、2回目以降にco.jp.ゾーンに属するドメインであるnew.co.jp.の名前解決を要求された場合には、キャッシュデータ12aを参照することによってDNSサーバ装置γに対して直接的に問合わせをおこなうことが可能である(図9の92における(4)参照)。また、委任回答のTTL(Time To Live)切れなどの理由によってDNSサーバ装置γに対する直接的な問合わせをおこなうことができない場合であっても、最も近い権威サーバ(たとえば、DNSサーバ装置β)を起点とした再帰問合わせをおこなうことができる。
このように、本実施例1に係るキャッシュサーバ装置10は、DNSサーバ装置から受け取った委任回答をも信頼度と関連付けたうえで記憶部12に対して登録するので、所定の信頼度を有するキャッシュデータ12aを再帰問合わせに利用することによって再帰問合わせにおける問合わせ回数を削減することができるとともに、問合わせの信頼性を担保することができる。
上述してきたように、本実施例1においては、データ登録処理部が再帰問合わせ処理部を介して受け取ったDNSサーバ装置からの回答を、あらたに導入した概念である「信頼度」と対応付けることによってキャッシュデータとして幅広く登録するとともに、登録されたキャッシュデータを利用する場面においては、応答可否判定部が所定の応答用閾値以上のキャッシュデータを応答可能と判定し、応答処理部は応答可否判定部が応答可能と判定したキャッシュデータを応答処理に利用するよう構成したので、利用可能なキャッシュデータを幅広く登録することができるとともに、幅広く登録したキャッシュデータを効率良く利用することができる。
なお、上記した実施例1においては、登録用閾値以上の信頼度を有する応答をキャッシュデータとして登録し、応答用閾値以上の信頼度を有するキャッシュデータを応答処理に利用するとともに、登録されたキャッシュデータを再帰問合わせ処理に利用する場合について、すなわち、登録用閾値以上の信頼度を有するキャッシュデータをすべて再帰問合わせ処理において利用する場合について示した。しかしながら、これに限らず、再帰問合わせ処理において問合わせ用閾値を用いることとし、登録されたキャッシュデータのうち信頼度が問合わせ用閾値以上のキャッシュデータのみを再帰問合わせ処理に利用することとしてもよい。このようにすることで、再帰問合わせの信頼性を柔軟に変更することができる。
また、上記した実施例1においては、応答可否判定部が応答用閾値を用いてキャッシュデータの応答処理への利用可否を判定する場合について示したが、応答処理部が応答可否判定部を含むよう構成してもよい。また、登録用閾値、応答用閾値、問合わせ用閾値といった各閾値を用いた処理(登録処理、応答処理、問合わせ処理など)についてキャッシュデータの利用可否を判定する判定処理部を構成することとしてもよい。このようにすることで、統計・分析用閾値などの利用処理を追加した場合であっても、キャッシュデータの利用目的に応じた閾値の追加や管理を容易におこなうことができる。
また、上記した各閾値を保守者が変更することができる値であるよう構成し、運用状態にあわせて各閾値を変更することとしてもよい。このようにすることで、キャッシュサーバ装置の運用ポリシーにあわせて、登録処理、応答処理、問合わせ処理といった各処理の信頼性を柔軟に変更することができる。なお、各閾値の変更は、たとえば、設定ファイルをサーバプロセスの起動時に読み込ませることによっておこなうことができる。また、サーバプロセスの動作中に設定ファイルを読み込ませることとしてもよい。
なお、上記した実施例1においては、信頼度を多値のデータ(たとえば、図4参照)とした場合について説明したが、信頼度を2値のフラグとすることもできる。そこで、以下では信頼度を2値のフラグとした場合について図10を用いて説明する。図10は、実施例1に係るキャッシュサーバ装置の変形例を示す図である。
図10に示すように、変形例に係るキャッシュサーバ装置10aは、信頼度として「応答可」および「応答不可」の2値をとる。たとえば、1ビットの領域において「1」であれば「応答可」、「0」であれば「応答不可」とすればよい。このように、信頼度を2値のフラグとすることによって、キャッシュデータの登録処理およびキャッシュデータの利用処理(DNSクライアント装置に対する応答処理)における信頼度の参照処理を簡略化することができるので処理効率を高めることが可能となる。
本実施例2では回答の信頼度に応じたキャッシュ領域を備えたキャッシュサーバ装置について説明する。図11は、実施例2に係るキャッシュサーバ装置10bの概要および特徴を示す図である。同図に示すように、キャッシュサーバ装置10bは、応答用キャッシュ領域および再帰問合わせ用キャッシュ領域の2つのキャッシュ領域を備えている。そして、キャッシュデータ登録処理においては、再帰問合わせ機能を介してDNSサーバ装置120から受け取った応答を、これらの各キャッシュ領域へ振り分けて登録する(図11の(3)参照)。
そして、応答用キャッシュ領域に登録されたキャッシュデータは応答機能が応答処理をおこなう際に使用されるとともに(図11の(1)参照)、再帰問合わせ用キャッシュ領域に登録されたキャッシュデータは再帰問合わせ機能が問合わせ処理をおこなう際に使用される(図11の(2)参照)。
このように、本実施例2に係るキャッシュサーバ装置10bでは、信頼度と対応した複数のキャッシュ領域を設けることとしている。すなわち、キャッシュデータ自体に信頼度を設定する実施例1の場合とは異なり、本実施例2においてはキャッシュデータ格納用のキャッシュ領域を信頼度と対応付けることとしている。このようにすることで、キャッシュデータを利用する際の処理を簡略化することが可能となる。
なお、同図に示した各キャッシュ領域のキャッシュデータのうち、「A」および「B」は、双方のキャッシュ領域に登録されている。このようなデータ同期処理は同図に示すキャッシュデータ登録処理によっておこなわれる。たとえば、信頼度1のキャッシュデータが「A」および「B」であり、信頼度2のキャッシュデータが「C」および「D」であり、DNSクライアント装置110への応答として用いることができる信頼度が1のみである場合について説明する。
このような場合において、キャッシュデータ登録処理においては、信頼度が1のキャッシュデータを応答用キャッシュ領域へ、信頼度が1および2のキャッシュデータを再帰問合わせ用キャッシュ領域へそれぞれ登録する。たとえば、キャッシュデータ登録処理はキャッシュデータAについては双方のキャッシュ領域へ登録するが、キャッシュデータCについては再帰問合わせ用キャッシュ領域のみへ登録する。
次に、本実施例2に係るキャッシュサーバ装置10bの構成について図12を用いて説明する。図12は、実施例2に係るキャッシュサーバ装置10bの構成を示すブロック図である。なお、同図においては、キャッシュサーバ装置10bの特徴点を説明するために必要な処理部のみを示しており、CPU(Central Processing Unit)などのプロセッサ、一般的なキャッシュサーバとしての機能を担う処理部についての記載を省略している点については図2と同様である。また、以下では、実施例1との差異点について説明し、共通点についての説明は省略することとする。
図12に示すように、キャッシュサーバ装置10bは、記憶部12に応答用キャッシュ領域12bと、再帰問合わせ用キャッシュ領域12cとを備えている。なお、各キャッシュ領域には、データ登録処理部11dによって振り分けられたキャッシュデータがそれぞれ格納される。また、各キャッシュ領域に格納されるキャッシュデータの形式としては、たとえば、双方のキャッシュ領域についてハッシュテーブルを用いることができる。このように、各キャッシュ領域に格納されるキャッシュデータを同形式とすることによってキャッシュデータ利用時の処理効率を向上させることができる。
データ登録処理部11dは、再帰問合わせ処理部11cから渡されたDNSサーバ装置110からの応答について「信頼度」を設定するとともに、各信頼度に応じたキャッシュ領域へDNSサーバ装置120からの応答を格納する処理をおこなう処理部である。たとえば、このデータ登録処理部11dは、信頼度1とした応答のみを応答用キャッシュ領域12bに格納するとともに、信頼度1を含む他の信頼度の応答を再帰問合わせ用キャッシュ領域12cに格納する。
なお、図12に示したキャッシュサーバ装置10bは、実施例1に示したキャッシュサーバ装置10(図2参照)と異なり、応答可否判定部11bを備えていない。その理由は、データ登録処理部11dが応答用キャッシュ領域12bや再帰問合わせ用キャッシュ領域12cといった各利用目的に応じたキャッシュ領域にキャッシュデータを振り分けて格納しているので、応答処理部11aは応答用キャッシュ領域12cに格納されたキャッシュデータをすべて用いることとしても構わないからである。
次に、本実施例2に係るキャッシュサーバ装置10bがDNSクライアント装置110への応答をおこなう際の処理手順について図13を用いて説明する。図13は、実施例2に係る応答処理の処理手順を示すフローチャートである。同図に示すように、キャッシュサーバ装置10bが要求電文(クエリ要求)を受信すると(ステップS501)、応答用キャッシュ領域12bに該当するキャッシュデータがあるか否かを判定する(ステップS502)。そして、該当するキャッシュデータがある場合には(ステップS502,Yes)、このキャッシュデータを用いてDNSクライアント装置110への応答をおこなって(ステップS503)処理を終了する。
一方、ステップS502において該当するキャッシュデータがないと判定された場合(ステップS502,No)には、DNSサーバ装置120に対する再帰問合わせ処理を実行する(ステップS504)。なお、この再帰問合わせ処理(ステップS504)の詳細な処理内容については実施例1の図8と同様であるので省略する。
再帰問合わせ処理(ステップS504)を実行したキャッシュサーバ装置10bは、再帰問合わせの結果(名前解決の結果)を用いてDNSクライアント装置110に対して応答する(ステップS505)。また、キャッシュサーバ装置10bは、この問合わせ結果をキャッシュデータとして登録する処理を実行して(ステップS506)処理を終了する。
次に、図13に示したキャッシュデータ登録処理(ステップS506)の詳細な処理内容について図14を用いて説明する。図14は、実施例2に係るキャッシュデータ登録処理の処理手順を示すフローチャートである。同図に示すように、データ登録処理部11dが再帰問合わせ処理部11cを介してリソースレコードを受け取ると(ステップS601)、あらかじめ定めた設定基準(たとえば、図4参照)に従って信頼度を設定する(ステップS602)。つづいて、信頼度が所定の登録用閾値以上であるか否かを判定し(ステップS603)、登録用閾値以上である場合には(ステップS603,Yes)、このリソースレコードの信頼度が応答用閾値以上であるか否かを判定する(ステップS604)。
そして、ステップS604における判定の結果、信頼度が応答用閾値以上である場合には(ステップS604,Yes)、このリソースレコードを応答用キャッシュ領域12bおよび再帰問合わせ用キャッシュ領域12cへ格納して(ステップS605)処理を終了する。一方、信頼度が応答用閾値未満である場合には(ステップS604,No)、このリソースレコードを再帰問合わせ用キャッシュ領域12cへ格納して(ステップS606)処理を終了する。なお、ステップS603において信頼度が登録用閾値未満であると判定された場合には(ステップS603,No)、リソースレコードを破棄して(ステップS607)いずれのキャッシュ領域へも格納することなく処理を終了する。また、ステップS605およびステップS606において再帰問合わせ用キャッシュ領域へ格納するデータはNSレコードおよびglueレコード(AレコードまたはAAAAレコード)である。
上述したように、本実施例2においては、記憶部に応答用キャッシュ領域および再帰問合わせ用キャッシュ領域を設けることとし、データ登録処理部が再帰問合わせ処理部を介して受け取ったDNSサーバ装置からの回答の信頼度を判定するとともに、判定した信頼度に基づいて応答用キャッシュ領域および再帰問合わせ用キャッシュ領域の双方へ、あるいは、応答用キャッシュ領域のみへDNSサーバ装置からの回答を格納するよう構成した。したがって、登録されたキャッシュデータを効率良く検索することができる。
なお、上記した実施例2においては、記憶部に応答用キャッシュ領域および再帰問合わせ用キャッシュ領域を設ける場合について示したが、これに限らず、信頼度ごとにキャッシュ領域を設けたり、いくつかの信頼度からなるグループごとにキャッシュ領域を設けたりすることとしてもよい。
また、上記したように、各キャッシュ領域に格納されるキャッシュデータをすべてハッシュテーブルとすることができるが、応答処理部が応答用キャッシュ領域を参照する際の検索アルゴリズムと、再帰問合わせ処理部が再帰問合わせ用キャッシュ領域を参照する際の検索アルゴリズムとを異なるアルゴリズムとなるよう構成することとしてもよい。
たとえば、応答処理部が用いる検索アルゴリズムとしては、ドメイン名(たとえば、aaa.co.jp.)を一括してハッシュ変換する一般的な演算アルゴリズムを用いることとする。一方、再帰問合わせ処理部が用いる検索アルゴリズムとしては、ドメイン名(たとえば、aaa.co.jp.)のラベル(「aaa」、「co」、「jp」)ごとのハッシュ値を右のラベルから左のラベルの方向に記憶しつつドメイン名の一致を判定する検索アルゴリズムを用いることとする。
このように、キャッシュデータを利用する際の検索アルゴリズムを利用目的に応じて切り替えることで、キャッシュデータ利用時の処理効率を向上させることができる。なお、このような検索アルゴリズムは、応答処理部、再帰問合わせ処理部といった各利用部に含ませるよう構成することとしてもよいし、複数の検索アルゴリズムを管理するととともに各検索アルゴリズムを切り替える検索アルゴリズム切替部を独立した処理部として構成することとしてもよい。
また、上記した各実施例では、本発明を実現する各装置を機能面から説明したが、各装置の各機能はパーソナルコンピュータやワークステーションなどのコンピュータにプログラムを実行させることによって実現することもできる。
すなわち、上述した各種の処理手順は、あらかじめ用意されたプログラムをコンピュータ上で実行することによって実現することができる。そして、これらのプログラムは、インターネットなどのネットワークを介して配布することができる。さらに、これらのプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
以上のように、本発明に係るキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラムは、キャッシュサーバ装置の性能向上に有用であり、特に、DNSサーバ装置に対する再帰問合わせ処理の処理時間短縮に適している。
実施例1に係るキャッシュサーバ装置の概要および特徴を示す図である。 実施例1に係るキャッシュサーバ装置の構成を示すブロック図である。 キャッシュデータの構成例を示す図である。 信頼度の設定例を示す図である。 実施例1に係る応答処理の処理手順を示すフローチャートである。 実施例1に係るキャッシュデータ登録処理の処理手順を示すフローチャートである。 図6に示した処理手順の変形例を示すフローチャートである。 実施例1に係る再帰問合わせ処理の処理手順を示すフローチャートである。 実施例1に係る再帰問合わせ処理の効果を説明する図である。 実施例1に係るキャッシュサーバ装置の変形例を示す図である。 実施例2に係るキャッシュサーバ装置の概要および特徴を示す図である。 実施例2に係るキャッシュサーバ装置の構成を示すブロック図である。 実施例2に係る応答処理の処理手順を示すフローチャートである。 実施例2に係るキャッシュデータ登録処理の処理手順を示すフローチャートである。 従来技術に係るキャッシュサーバ装置の概要を示す図である。 従来技術に係る再帰問合わせ処理の概要を示す図である。
符号の説明
10、10a、10b キャッシュサーバ装置
11 制御部
11a 応答処理部
11b 応答可否判定部
11c 再帰問合わせ処理部
11d データ登録処理部
12 記憶部
12a キャッシュデータ
12b 応答用キャッシュ領域
12c 再帰問合わせ用キャッシュ領域
13 通信処理部
110 DNSクライアント装置
120 DNSサーバ装置


Claims (9)

  1. DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュサーバ装置であって、
    前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録手段と、
    前記登録手段によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定手段と
    を備えたことを特徴とするキャッシュサーバ装置。
  2. 前記利用可否判定手段の判定結果に基づいて前記DNSクライアント装置への即時応答をおこなう応答手段をさらに備え、
    前記利用可否判定手段は、
    前記応答手段が前記DNSクライアント装置への即時応答をおこなうに先だって、前記信頼度が応答用閾値以上である前記キャッシュデータを即時応答に利用可能であると判定することを特徴とする請求項1に記載のキャッシュサーバ装置。
  3. 前記登録手段は、
    前記応答用閾値よりも低い値を有する登録用閾値を用いるものであって、前記信頼度が登録用閾値以上である前記問合わせの応答を前記キャッシュデータとして登録することを特徴とする請求項2に記載のキャッシュサーバ装置。
  4. 前記利用可否判定手段の判定結果に基づいて前記DNSサーバ装置への再帰的な問合わせをおこなう問合わせ手段をさらに備え、
    前記利用可否判定手段は、
    前記応答用閾値よりも低い値を有する問合わせ用閾値を用いるものであって、
    前記問合わせ手段が前記DNSサーバ装置への再帰的な問合わせをおこなうに先だって、前記信頼度が問合わせ用閾値以上である前記キャッシュデータを再帰的な問合わせに利用可能であると判定することを特徴とする請求項2または3に記載のキャッシュサーバ装置。
  5. 前記信頼度に基づいて区分けされたキャッシュ領域を有するキャッシュデータ記憶手段をさらに備え、
    前記登録手段は、
    前記DNSサーバ装置に対する問合わせの応答を前記信頼度に対応する各キャッシュ領域へ登録することを特徴とする請求項1〜4のいずれか一つに記載のキャッシュサーバ装置。
  6. 前記登録手段によって登録される前記キャッシュデータのデータ構造はハッシュテーブルであって、
    前記キャッシュデータを検索するための検索アルゴリズムを前記キャッシュデータの利用目的ごとに切り替える検索アルゴリズム切替手段をさらに備えたことを特徴とする請求項1〜5のいずれか一つに記載のキャッシュサーバ装置。
  7. 前記登録手段は、
    前記DNSサーバ装置に対する問合わせの応答の前記信頼度が既に登録した前記キャッシュデータの前記信頼度と異なる場合に、あらたな応答を用いて前記キャッシュデータを更新することを特徴とする請求項1〜6のいずれか一つに記載のキャッシュサーバ装置。
  8. DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュ制御方法であって、
    前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録工程と、
    前記登録工程によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定工程と
    を含んだことを特徴とするキャッシュ制御方法。
  9. DNSサーバ装置に対する問合わせの応答をキャッシュデータとして蓄積するとともに、DNSクライアント装置からDNSクエリ要求を受け付けた際に前記キャッシュデータに基づいて当該DNSクライアント装置への即時応答または前記DNSサーバ装置への再帰的な問合わせをおこなったうえでの応答のいずれかを返すキャッシュサーバ装置用プログラムであって、
    前記DNSサーバ装置に対する問合わせの応答を当該応答の信頼度と対応付けたうえで前記キャッシュデータとして登録する登録手順と、
    前記登録手順によって登録された前記キャッシュデータの利用可否を前記信頼度に基づいて判定する利用可否判定手順と
    をコンピュータに実行させることを特徴とするキャッシュサーバ装置用プログラム。
JP2006072855A 2006-03-16 2006-03-16 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム Active JP4217725B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006072855A JP4217725B2 (ja) 2006-03-16 2006-03-16 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006072855A JP4217725B2 (ja) 2006-03-16 2006-03-16 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム

Publications (2)

Publication Number Publication Date
JP2007251631A JP2007251631A (ja) 2007-09-27
JP4217725B2 true JP4217725B2 (ja) 2009-02-04

Family

ID=38595460

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006072855A Active JP4217725B2 (ja) 2006-03-16 2006-03-16 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム

Country Status (1)

Country Link
JP (1) JP4217725B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5095675B2 (ja) * 2009-05-15 2012-12-12 日本電信電話株式会社 Dns応答制御装置、dns応答制御システム、dns応答制御方法およびdns応答制御プログラム

Also Published As

Publication number Publication date
JP2007251631A (ja) 2007-09-27

Similar Documents

Publication Publication Date Title
US11388251B2 (en) Providing access to managed content
US20180205697A1 (en) Managing content delivery network service providers by a content broker
JP5828760B2 (ja) キャッシュを最適化するための方法とシステム
JP5404766B2 (ja) ルーティングをリクエストするための方法とシステム
JP5646451B2 (ja) コンテンツ管理するための方法とシステム
EP2896159B1 (en) Network address and hostname mapping in policy service
US8756341B1 (en) Request routing utilizing popularity information
US7472201B1 (en) Method and system for resolving domain name system queries in a multiprotocol communications network
US20070226229A1 (en) Method and system for class-based management of dynamic content in a networked environment
US9954815B2 (en) Domain name collaboration service using domain name dependency server
JP2004318743A (ja) ファイル移送装置
US20190052595A1 (en) Client subnet efficiency by equivalence class aggregation
US11252127B2 (en) Systems and methods for processing requests for content of a content distribution network
JP4217725B2 (ja) 再帰問合わせを高度化するためのキャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム
JP4757063B2 (ja) キャッシュサーバ装置、キャッシュ制御方法およびキャッシュサーバ装置用プログラム
JP6529139B2 (ja) Dnsサーバ装置、方法、及びプログラム
JP4223045B2 (ja) Dnsサーバ装置、要求電文処理方法および要求電文処理プログラム
US10298539B2 (en) Passive delegations and records
JP5345577B2 (ja) 名前解決装置、名前解決方法および名前解決プログラム
JP4331733B2 (ja) 検索処理装置、検索処理方法および検索処理プログラム
JP2019068208A (ja) Dnsサーバ装置、方法、及びプログラム
US9306900B2 (en) Communication device, communication system, and communication method
JP2009116496A (ja) ディレクトリサーバ装置、ディレクトリサーバプログラム、ディレクトリサービスシステム、およびディレクトリサービス管理方法
JP3834770B2 (ja) 名前解決方法および装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081017

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20081104

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081110

R150 Certificate of patent or registration of utility model

Ref document number: 4217725

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131114

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350