JP2002524979A - Dnsトラフィックをトランスペアレントに処理するための方法および装置 - Google Patents

Dnsトラフィックをトランスペアレントに処理するための方法および装置

Info

Publication number
JP2002524979A
JP2002524979A JP2000569559A JP2000569559A JP2002524979A JP 2002524979 A JP2002524979 A JP 2002524979A JP 2000569559 A JP2000569559 A JP 2000569559A JP 2000569559 A JP2000569559 A JP 2000569559A JP 2002524979 A JP2002524979 A JP 2002524979A
Authority
JP
Japan
Prior art keywords
information
requested information
request
cache
computer
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.)
Pending
Application number
JP2000569559A
Other languages
English (en)
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JP2002524979A publication Critical patent/JP2002524979A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming

Abstract

(57)【要約】 DNSトラフィックをトランスペアレントに処理するための方法および装置である。インターネット上にある情報にドメイン名を使用してアクセスするには、ホスト名にマッピングするインターネット・プロトコル(IP)アドレスを決定しなければならない。ホスト・ネーム・システム(DNS)は、アドレスおよびドメイン名情報を伝送および処理するために利用される。DNSトラフィックは、インターネット・ネットワーク・トラフィックの約10%を構成する。クライアントがネーム・サーバに対して、ドメイン名をIPアドレスに変換するように要求すると、所望の情報を維持しているネーム・サーバに達するまで、この要求は1つのネットワーク・ルータから他のネットワーク・ルータに転送される。ネットワーク・ルータは情報を調べずに、単に宛先ネーム・サーバまでの経路に沿って情報を転送する。本発明の1つまたは複数の実施形態は、情報がDNSトラフィックからなり、情報を構文解析し、アドレス情報(あれば)をキャッシュし、その後所望の情報をネーム・サービスのクライアントに再転送したことを認識する、更新済みルータを備える。したがって、同じアドレス情報に関する別の要求がルータに転送されると、ルータは、その要求を遠方のネーム・サーバに転送するのではなく、応答を要求側に提供することができる。この方法では、ルータはDNSトラフィックを中断してDNS情報をキャッシュするので、異なるネーム・サーバを利用するクライアントが、キャッシュ済みの情報から恩恵を受けることができるようにする。このような更新済みルータは、DNS応答での待ち時間を削減し、ネットワーク・トラフィックを削減する。

Description

【発明の詳細な説明】
【0001】 (発明の背景) 1.発明の分野 本発明はコンピュータ・ソフトウェアの分野に関し、より具体的に言えばDN
S情報のキャッシュに関する。
【0002】 本特許文書の開示部分には、著作権保護を対象とするものが含まれる。著作権
所有者は、特許文書または特許開示が特許商標局のファイルまたは記録に公開さ
れたときにはだれかがこれをそのまま複写することに異議は唱えないが、そうで
ない場合はすべての著作権を完全に保有する。Sun、Sun Microsy
stems、the Sun logo、Solaris、Java、Java
OS、JavaStation、HotJava Views、およびすべての
Javaベースの商標およびロゴは、米国およびその他の国のSun Micr
osystems,Inc.の商標または登録商標である。
【0003】 2.背景技術 コンピュータ・ネットワーク環境およびインターネットでは、ネットワーク(
クライアントまたはサーバ)上のコンピュータに、ドメイン名と呼ばれる文字名
にマッピングした固有の識別子が割り当てられる。コンピュータ・ユーザは、ド
メイン名だけを知っており固有の識別子は知らないことが多い。ネットワーク上
のコンピュータと通信するためには、交信しているコンピュータの固有の識別子
を確認しなければならない。固有の識別子を確認するために、ネットワーク・ル
ータは、所望の情報を維持しているドメイン名サーバが見つかるまで他のルータ
に識別子要求を転送する。既存の方式では、ルータ間で識別子要求を転送する時
間を無駄にして、結果としてネットワーク上のトラフィックが増加し、インター
ネットの情報にアクセスして取り出すのに要する時間が遅くなる可能性がある。
これらの問題は、ネットワーク、インターネット、およびこれらがどのように動
作するかを再検討することによって理解できる。
【0004】 ネットワーク 現代のコンピュータ環境では、ネットワーク内で相互にリンクされた複数のコ
ンピュータまたはワークステーションを使用して、ネットワーク・ユーザ間で通
信を行い、データを共有することが一般化されている。ネットワークはプリンタ
、モデム、ファイル・サーバなどの資源を含み、さらに電子メールなどのサービ
スを含むことができる。
【0005】 ネットワークは、ケーブルで物理的に接続された小規模なシステム(ローカル
・エリア・ネットワークすなわち「LAN」)とするか、またはいくつかの別々
のネットワークを相互に接続して大規模なネットワーク(ワイド・エリア・ネッ
トワークすなわち「WAN」)を形成してもよい。他のタイプのネットワークに
は、インターネット、通信ネットワーク、World Wide Web、イン
トラネット、エクストラネット、無線ネットワーク、ならびに、電子、デジタル
、および/またはアナログのデータがそれを介して通信できる他のネットワーク
が含まれる。
【0006】 コンピュータ・システムは、サーバ・コンピュータ・システムを利用して、ネ
ットワーク上にある要求元コンピュータに情報を提供することがある。要求元コ
ンピュータが多数であれば、その要求を処理するサーバ・コンピュータ・システ
ムを複数備える必要がある場合がある。従来技術のシステムでは、複数のサーバ
・システム内の正しいサーバに向けて要求を効率良く送ることが問題である。
【0007】 この問題を抱えてきた領域の1つがインターネットである。以下で説明するイ
ンターネットの構造および動作を再検討することにより、この問題についてより
良く理解することができる。
【0008】 インターネット インターネットは、相互接続されたコンピュータの世界規模のネットワークで
ある。インターネット・クライアントは、インターネット・プロバイダを介して
ネットワーク上のコンピュータにアクセスする。インターネット・プロバイダと
は、クライアント(たとえば個人または他の組織)に、(たとえばアナログ電話
回線または統合サービス・デジタル通信網を介して)インターネットへのアクセ
スを提供する組織のことである。クライアントはインターネットを使用して、た
とえば、他のコンピュータ/クライアントから情報の読取りやファイルのダウン
ロードを行ったり、そこへ電子メール・メッセージを送信したりすることができ
る。
【0009】 クライアントがインターネット上にあるファイルまたはサービスを取り出すに
は、そのファイルまたはサービスを検索し、そのファイルまたはサービスが格納
されているコンピュータに接続して、そのファイルまたはサービスをダウンロー
ドしなければならない。これらの各ステップには、複数の異なるコンピュータ・
システムに対して別々に適用し、アクセスすることが含まれる場合がある。Wo
rld Wide Web(WWW)は、インターネット上にある情報にアクセ
スするための、より単純で均一な手段を提供するために開発されたものである。
【0010】 WWWの構成要素には、ブラウザ・ソフトウェア、ネットワーク・リンク、サ
ーバ、およびWWWプロトコルが含まれる。ブラウザ・ソフトウェア、すなわち
ブラウザは、インターネットへのアクセスを簡略化するユーザ・フレンドリなイ
ンターフェース(すなわちフロントエンド)である。ブラウザは、クライアント
がたとえば複雑なコマンド構文を習得しなくても、要求を通信できるようにする
ものである。通常、ブラウザは、情報を表示し入力を受け取るためのグラフィカ
ル・ユーザ・インターフェース(GUI)を用意している。現在使用可能なブラ
ウザの例には、Mosaic、Netscape NavigatorおよびC
ommunicator、Microsoft Internet Explo
rer、ならびにCelloが含まれる。
【0011】 情報サーバは、WWW上で情報を維持し、クライアントの要求を処理すること
ができる。ハイパーテキスト転送プロトコル(HTTP)は、WWW上にある情
報サーバと通信するための標準プロトコルである。HTTPは、クライアントが
サーバからデータを要求し、サーバに情報を送信できるようにする通信方法であ
る。
【0012】 クライアントが要求を提示する場合は、HTTPサーバに接触してHTTPサ
ーバに要求を伝送する。要求には、トランザクションに要求される通信方法(た
とえばサーバからのオブジェクトのGET、またはサーバ上のオブジェクトへの
データのPOST)が含まれる。HTTPサーバは、要求の状態および要求され
た情報を送信することによって、クライアントに応答する。その後、クライアン
トとHTTPサーバとの間の接続が終了する。
【0013】 したがってクライアントの要求は、クライアントとHTTPサーバとの間の接
続の確立、要求の実行、および接続の終了からなる。HTTPサーバは、接続が
終了した後、要求に関するいかなる情報も保持しない。したがって、HTTPは
無国籍プロトコルである。すなわち、クライアントはHTTPサーバに対してい
くつかの要求を実行できるが、個々の要求はそれぞれ互いに独立して処理される
。サーバには、以前の要求に関する記憶がいっさいない。
【0014】 インターネット資源(たとえばHTTPサーバ、ファイル、またはプログラム
)を識別するにはアドレス指定方式が使用される。このアドレス指定方式は、U
niform Resource Locator(URL)と呼ばれる。UR
Lは、サーバにアクセスするときに使用するプロトコル(たとえばHTTP)、
サーバが実行中のサイトのインターネット・ドメイン名、サーバのポート番号、
およびサーバのファイル構造内にある資源の位置を含む。
【0015】 WWWはハイパーテキストとして知られる概念を使用する。ハイパーテキスト
は、他の情報に直接移動するためのリンクを文書内に作成する機能を提供する。
リンクを起動するには、ハイパーテキスト・リンク(たとえば語または句)をク
リックするだけでよい。ハイパーテキスト・リンクは、現在の情報を供給したサ
イトとは異なるサイトに格納されている情報に移動することができる。URLは
、追加情報の場所を識別するためのリンクに関連付けられている。リンクが起動
すると、クライアントのブラウザはこのリンクを使用して、URLに指定された
サイトにあるデータにアクセスする。
【0016】 クライアントの要求がファイルに関するものであれば、HTTPサーバはその
ファイルを探してそれをクライアントに送信する。HTTPサーバは、ゲートウ
ェイ・プログラムに作業を委任する機能も備える。Common Gatewa
y Interface(CGI)仕様は、HTTPサーバがゲートウェイ・プ
ログラムと通信するときに使用するメカニズムを定義するものである。ゲートウ
ェイ・プログラムはURLを使用して参照される。HTTPサーバはURLに指
定されたプログラムを起動し、CGIメカニズムを使用して、クライアントが送
信したプログラム・データをゲートウェイ・プログラムに渡す。データは、コマ
ンド行引数、標準入力、または環境変数を介して、サーバからゲートウェイ・プ
ログラムに渡される。ゲートウェイ・プログラムはこのデータを処理し、CGI
を使用して(たとえば標準入力を介して)その応答をサーバに返す。サーバは、
HTTPを使用してそのデータをクライアントに転送する。
【0017】 ブラウザは、情報をページまたは文書(「webページ」または「webサイ
ト」と呼ばれる)としてクライアント/ユーザに表示する。WWWでページを表
示するための形式を定義するには、言語が使用される。この言語はハイパーテキ
スト・マークアップ言語(HTML)と呼ばれる。WWWページは、HTML文
書としてクライアントに伝送される。クライアント側で実行中のブラウザがこの
文書を構文解析し、HTML文書内の情報に基づいてページを表示する。
【0018】 HTMLは、互いにネストされたHTML要素からなる構造言語である。HT
ML文書はテキストファイルであって、その中でタグと呼ばれる一定の文字列が
文書の領域をマークし、それらに特別な意味を割り当てる。これらの領域がHT
ML要素と呼ばれる。各要素には名前、すなわちタグがある。要素は、要素の特
性を指定する属性を有することができる。ブロックまたは構成要素には、たとえ
ば番号なしリスト、テキスト・ボックス、チェック・ボックス、ラジオ・ボタン
が含まれる。各ブロックは、名前、タイプ、および値などの特性を有する。以下
に、HTML文書の構造例を示す。 <HTML> <HEAD> ...文書ヘッドで有効な要素 </HEAD> <BODY> ...文書本体で有効な要素 </BODY> </HTML>
【0019】 各HTML要素は、対の文字「<」と「>」で区切られる。HTML要素の名
前は区切り文字内に含まれる。名前と区切り文字の組み合わせをマーカまたはタ
グと呼ぶ。各要素は、そのマーカによって識別される。ほとんどの場合、各要素
には開始マーカおよび終了マーカがある。終了マーカは、文字「<」の後に他の
文字「/」を含めることで識別される。
【0020】 HTMLは階層型言語である。HTML要素を除き、他のすべての要素は他の
要素に格納される。HTML要素は文書全体を含む。これは、格納されたテキス
トをHTML文書として識別する。HEAD要素はHTML要素内に格納され、
HTML文書に関する情報を含む。BODY要素はHTML内に格納される。B
ODY要素は、表示されるすべてのテキストおよび他の情報を含む。他のHTM
L要素については、HTML参考資料に記載されている。
【0021】 ドメイン名サーバ コンピュータ・ユーザは、コンピュータ・システム上にあるブラウザからイン
ターネットまたはwebをナビゲートする。ユーザがwebサイトにアクセスす
るには、webサイトのホスト名(またはドメイン名)をブラウザに入力する。
これは、リンクをクリックする、ツール・バー・ボタンを起動する、またはロケ
ーション・フィールドに手動で名前またはアドレスを入力して「実行」を押すこ
とによって達成できる。ブラウザのクライアントが使用する名前は、たとえばw
ww.sun.comなどのホスト名として知られる。入力される名前は、所期
のwebサーバの実際のインターネット・プロトコル(IP)アドレスではない
。実際のIPアドレスは、webサイト・データを提供するwebサーバを一意
に位置付ける数字の文字列である。「Domain Name System(
DNS)」と呼ばれる世界的な分散型データベース・システムは、サーバ名と関
連付けられたIPアドレスとの間にマッピングを提供する。
【0022】 各クライアント(またはホスト)は、(ドメイン名をIPアドレスに、または
その逆にマッピングする場合に)その照会に答える意志のあるネーム・サーバで
構成されるか、そうでなければそれらのネーム・サーバについて知っている。こ
のようなネーム・サーバは、そのホストの「ローカル・ネーム・サーバ」と呼ば
れる。webブラウザなどのクライアント・アプリケーション・ソフトウェアは
、サーバ名からIPアドレスへの変換を取得するために、「DNSレゾルバ」と
呼ばれるローカル・ライブラリも使用する。次にこのレゾルバが所定のローカル
DNSネーム・サーバに接触して変換を取得する。DNSネーム・サーバは、以
前に解釈された名前のキャッシュを維持することができる。より具体的に言えば
、典型的な名前の解釈プロセスはクライアント側に2つのホストを必要とする。
「asha.eng.sun.com」で作業をしているユーザが、「whit
ehouse.gov」のアドレスを取得したい場合を考えてみる。クライアン
ト・ブラウザは、ローカル・レゾルバ(asha.eng.sun.comで実
行中の現在の例で、ブラウザ・プロセスそれ自体に付属のライブラリ)と対話す
ることになる。このローカル・レゾルバは比較的数の少ないローカル・ネーム・
サーバ、たとえば「ns.sun.com」の1つへ進む。ここでns.sun
.comは、クライアント側ネーム・サーバと呼ばれる。クライアント側ネーム
・サーバは、whitehouse.govのIPアドレスを決定するために外
界と通信し、ブラウザ・プロセスの一部であるレゾルバにこの情報を転送する。
【0023】 DNSは、ホスト名を数値アドレス(インターネット・プロトコルまたはIP
アドレスとして知られる)に変換するサーバのグローバル・ネットワークであり
、さらに名前のマッピングにIPアドレスも提供する。DNSサーバは、ネーム
・サーバおよびレゾルバからなる。ネーム・サーバは、レゾルバによって供給さ
れたホスト名の正しいアドレスを供給することで実行可能であれば、レゾルバの
要求に応答する。図1を参照すると、ステップ100で、ユーザはドメイン名を
ブラウザに入力する。ステップ102で、ブラウザは、ドメイン名をIPアドレ
スに変換するようにDNSレゾルバに要求する。ステップ104で、レゾルバは
、すでに使用可能な有効(期限満了になっていない)マッピングがあるかどうか
を調べるためにそのキャッシュを検索する。キャッシュが有効マッピングを持っ
ていれば、ステップ116でIPアドレスをブラウザに返す。キャッシュにマッ
ピングがなければ、ステップ106で、レゾルバはこの要求をローカル・ネーム
・サーバに転送する。
【0024】 すべてのネーム・サーバは、ルート(.)ドメインにDNSサービスを提供す
る少なくとも1つの他のネーム・サーバを知っている。したがって、ステップ1
08で、ローカル・ネーム・サーバは任意の周知のドメインのネーム・サーバに
接触する。たとえば、ホスト名が「www.java.sun.com」であり
、ローカル・ネーム・サーバがネーム・サーバ「java.sun.com」の
アドレスを知らない場合、次のレベルのドメイン、すなわち「sun.com」
のアドレスを知っているかどうかを調べる。ローカル・ネーム・サーバが「su
n.com」のアドレスを知らない場合は、次のレベルのドメイン、すなわち「
.com」のアドレスを知っているかどうかを調べる。ローカル・ネーム・サー
バが「.com」のアドレスを知らない場合は、ルート・ネーム・サーバ「.」
に接触する。ステップ110で、ローカル・ネーム・サーバは、接触されたネー
ム・サーバから完全なドメインのアドレスを取得する(そのネーム・サーバがア
ドレスを知っている場合)。そうでなければステップ110で、ローカル・ネー
ム・サーバは、接触されたネーム・サーバから次のレベルのドメインのアドレス
を取得する。たとえば、ローカル・ネーム・サーバが「.com」のネーム・サ
ーバに接触し、そのネーム・サーバが完全なアドレスを知らない場合、「.co
m」ネーム・サーバは「sun.com」のドメイン・アドレスを返す。その後
、完全なドメイン・アドレスが取得されるまで、ステップ108および110が
繰り返される。前述の例に進むと、ローカル・ネーム・サーバは「java.c
om」ネーム・サーバに接触して、「java.sun.com」のアドレスを
取得する。次にローカル・ネーム・サーバは「java.sun.com」のネ
ーム・サーバに接触し、「www.java.sun.com」のアドレスを取
得する。ネーム・サーバに対して要求が実行されると、多数のネットワーク・ル
ータ(「ルータ」)が、所望のネーム・サーバに到達するまでその要求を1つの
場所から別の場所に転送することが多い。
【0025】 いったん、中間のまたは完全なIPアドレスが取得されると、将来の要求がロ
ーカル・キャッシュから完全に処理できるように、ステップ114でそのアドレ
スがキャッシュに保存される。したがって、代替ドメインの要求(たとえば「f
tp.sun.com」の要求)が受け取られると、ローカル・ネーム・サーバ
は、ルート・ドメイン・サーバまたは中間ネーム・サーバ(たとえば「.com
」ネーム・サーバ)との通信を繰り返すことなく、ネーム・サーバ(たとえば「
sun.com」)に直接接触することができる。ステップ116で、IPアド
レスがブラウザに返される。いったんIPアドレスが知られると、ブラウザはそ
のアドレスのwebサーバと通信し、要求されたwebページまたは他の情報を
取り出す。
【0026】 DNSネットワークの動作については、下記に記載されている。 P.V.Mockapetris「Domain names − conce
pts and facilities」,RFC 1034、1987年11
月。 P.V.Mockapetris「Domain names − imple
mentation and specification」,RFC 103
5、1987年11月。
【0027】 DNSサーバの問題点 DNS情報がローカル・ネーム・サーバにキャッシュされると、キャッシュさ
れた情報は、その特定のローカル・ネーム・サーバにアクセスするクライアント
だけしか使用できない(たとえば、同じインターネット・サービス・プロバイダ
のクライアントまたは同じ組織のメンバ)。したがって、2人のユーザが異なる
ローカル・ネーム・サーバにアクセスし、それぞれのユーザが同じIPアドレス
を要求すると、どちらの要求も、必要な情報を取得するために様々なルータを介
してネーム・サーバのチェーンに到達しなければならなくなる。
【0028】 たとえば、ニュージーランドの異なる大学にいる2人のユーザが、DNSにw
ww.sun.comのIPアドレスを照会した場合、どちらの要求も、ローカ
ル・キャッシングのいかなる恩恵も受けずに、米国のns.sun.comにあ
るローカル・ネーム・サーバによって処理される。図2は、従来技術の他の例を
示す図である。クライアントCl1 212およびCl2 214は、ローカル・
ネーム・サーバDNS1 220を利用するSUNネットワーク200の一部で
ある。クライアントCl3 216およびCl4 218は、ローカル・ネーム・
サーバDNS2 222を利用するNSCPネットワーク204の一部である。
クライアントCl1 212が、オーストラリアのシドニーにあるSYDNEY
2000ネットワーク208のIPアドレスに関する情報を要求すると、その
要求はSYDNEY 2000 208ネットワークのローカル・ネーム・サー
バns.syd.au 224で処理される。ルータ210は、要求をCl1
らローカル・ネーム・サーバ220に転送し、これがインターネット206上に
あるルータ210を介して、SYDNEY 2000ネットワーク208および
ネーム・サーバ224に達するまで要求を転送する。その後要求は、ローカル・
ネーム・サーバ220に返されるまでルータ210を介して同じ経路で返送され
、ここでキャッシュされる。
【0029】 同じローカルDNSネーム・サーバにアクセスするクライアントだけが、キャ
ッシング情報からの恩恵を受ける。したがって、上記の例では、Cl2だけがC
1要求およびその結果生じるキャッシュ済み情報からの恩恵を受ける。Cl4
www.syd.auのDNS変換を要求した場合、キャッシュ済み情報の恩恵
は受けず、情報はオーストラリアまでの全行程を要求および伝送された後、返送
される。したがって、DNS1およびDNS2はどちらもオーストラリアから関連
情報を取得し、個々のネットワーク200、204、および208ならびにイン
ターネット206上にトラフィックを作成する。
【0030】 ネットワークは、いくつかの層に分けることができる。たとえば、ネットワー
ク層と呼ばれる1つの層がロケーション間での情報転送に備え、アプリケーショ
ン層と呼ばれる別の層がネットワークを横切って渡される情報の構文解析および
処理に備えることができる。ドメイン・ネーム・システム(DNS)によって提
供されるような名前の解釈は、アプリケーション層プロトコルである。ネットワ
ーク・ルータ210はネットワーク層プロトコルのみに関係し、DNS要求をそ
の所望の宛先に転送する。したがってルータ210は、パケットで転送する情報
の構文解析または処理は実行しない。
【0031】 ネットワーク・トラフィックの削減 ネットワーク・トラフィックを削減するための従来技術の方法は、webペー
ジおよびHTML情報をキャッシュするための方法を提供してきた。このような
従来技術の2つの方法が、アクティブ・ネットワークおよびトランスペアレント
・プロキシと呼ばれる。
【0032】 アクティブ・ネットワーク ルータは、トラフィックの転送および切り換えをできる限り速く行うための専
用マシンである。アクティブ・ネットワークでは、特有のルータがwebおよび
他の非DNS情報のパケットを処理するように構成される。特別に構成されたル
ータを配置するために、特有の地理的位置が選択される。したがってアクティブ
・ネットワークの性能は、更新されたルータの配置戦略に基づいている。
【0033】 トランスペアレント・プロキシ トランスペアレント・プロキシは、ほとんどの場合、大規模な企業およびイン
ターネット・サービス・プロバイダが自社のwebトラフィックを削減するため
に使用する。典型的なセットアップでは、ドメイン管理者が、すべてのweb要
求(たとえば80などのポート番号で識別される)が自動的にプロキシ・サーバ
に迂回するようにルータを構成する(「トランスペアレント・プロキシ」)。プ
ロキシ・サーバ(またはプロキシ)とは、ここに(すなわちクライアントから)
伝送される要求を実行し、将来さらに迅速にアクセスできるようにフェッチされ
た文書または情報のコピーをある程度の期間保管して、一般的に要求される情報
へのアクセス速度を上げるサーバのことである。プロキシによるこの情報および
フェッチ済み文書の格納および取り出しのことをキャッシングと呼び、プロキシ
内に維持される情報のことをキャッシュまたはプロキシ・キャッシュと呼ぶ。プ
ロキシに所望の情報がない場合、プロキシは適切なwebサーバに要求を送信し
(いくつかのルータを介して処理することができる)、その後このサーバは、情
報をキャッシュするためにプロキシに返す。プロキシは所望の情報を獲得すると
、この情報を要求元のクライアントに提供する。
【0034】 従来技術の方法は、DNSトラフィックを最適化するためのいかなる方法も提
供しない。現在、インターネット上のトラフィックのうち約10%がDNSトラ
フィックからなる。さらに、DNS情報はほとんど変化しない(IPアドレスは
ネットワーク上でコンピュータが移動したときでさえ同じままであることが多い
)ので、DNSエントリの有効性は、webを介して伝送されるデータの有効性
よりもかなり長い場合がある。したがって、DNSトラフィックを最適化および
処理するための効率的な方法が必要である。
【0035】 (発明の概要) DNSトラフィックをトランスペアレントに処理するための方法および装置で
ある。インターネット上にある情報にドメイン名を使用してアクセスするには、
ドメイン名にマッピングするインターネット・プロトコル(IP)アドレスを決
定しなければならない。ドメイン・ネーム・システム(DNS)は、アドレスお
よびドメイン名情報を伝送および処理するために利用される。DNSトラフィッ
クは、インターネット・ネットワーク・トラフィックの約10%を構成する。
【0036】 クライアントがネーム・サーバに対して、ドメイン名をIPアドレスに変換す
るように要求すると、所望の情報を維持しているネーム・サーバが見つかるまで
、この要求は1つのネットワーク・ルータから他のネットワーク・ルータに転送
される。ネットワーク・ルータは情報を調べずに、単に宛先ネーム・サーバまで
の経路に沿って情報を転送する。
【0037】 本発明の1つまたは複数の実施態様は、情報がDNSトラフィックからなり、
情報を構文解析し、アドレス情報(あれば)をキャッシュし、その後所望の情報
をネーム・サーバに再転送したことを認識する、更新済みルータを備える。した
がって、同じアドレス情報に関する別の要求がルータに転送されると、ルータは
、その要求を遠方のネーム・サーバに転送するのではなく、応答を要求側に提供
することができる。この方法では、ルータがDNSトラフィックを中断してDN
S情報をキャッシュするので、異なるネーム・サーバを利用するクライアントが
、キャッシュ済みの情報から恩恵を受けることができるようにする。このような
更新済みルータは、DNS応答での待ち時間を削減し、ネットワーク・トラフィ
ックを削減する。
【0038】 (発明の詳細な説明) 本発明は、DNSトラフィックをトランスペアレントにキャッシュするための
方法および装置である。以下の説明では、本発明の実施形態についてさらに徹底
的に説明するために、多数の特有な詳細を記載する。ただし当分野の技術者であ
れば、本発明がこれらの特有な詳細なしに実施できることが明らかであろう。他
の例では、本発明を不明瞭にしないために、よく知られた特徴については詳細に
記述していない。
【0039】 コンピュータ実行環境の実施形態(ハードウェア) 本発明の一実施形態は、図3に示されたコンピュータ300などの汎用コンピ
ュータ上で実行されるコンピュータ読取り可能コード形式、またはこのようなコ
ンピュータ上で実行中のバイトコード・クラス・ファイル形式の、コンピュータ
・ソフトウェアとして実施することができる。キーボード310およびマウス3
11が、双方向システム・バス318に結合されている。キーボードおよびマウ
スは、ユーザ入力をコンピュータ・システムに導入し、そのユーザ入力をプロセ
ッサ313に送るためのものである。マウス311およびキーボード310に加
えて、あるいはこれらに代えて、他の好適な入力デバイスを使用してもよい。双
方向システム・バス318に結合されたI/O(入力/出力)ユニット319は
、プリンタ、A/V(オーディオ/ビデオ)I/OなどのようなI/O要素を表
す。
【0040】 コンピュータ300には、ビデオ・メモリ314、メイン・メモリ315、お
よび大容量記憶装置312が含まれ、これらはすべて、キーボード310、マウ
ス311、およびプロセッサ313と共に双方向システム・バス318に結合さ
れる。大容量記憶装置312には、磁気、光、または磁気光の記憶システム、あ
るいは任意の他の使用可能な大容量記憶装置技術などの、固定媒体および取外し
可能媒体の両方が含まれることがある。バス318には、たとえばビデオ・メモ
リ314またはメイン・メモリ315をアドレス指定するための、32のアドレ
ス行が含まれることがある。システム・バス318には、たとえばプロセッサ3
13、メイン・メモリ315、ビデオ・メモリ314、および大容量記憶装置3
12などの構成要素間ならびにこれらの中でデータを転送するための、32ビッ
トのデータ・バスが含まれることがある。あるいは、別々のデータおよびアドレ
ス行の代わりに、複数のデータ/アドレス行を使用することができる。
【0041】 本発明の一実施形態では、プロセッサ313は、680×0プロセッサなどの
Motorolaによって製造されたマイクロプロセッサまたは80×86など
のIntelによって製造されたマイクロプロセッサ、Pentiumプロセッ
サ、あるいはSun Microsystems,Inc.からのSPARCマ
イクロプロセッサである。ただし、任意の他の好適なマイクロプロセッサまたは
マイクロコンピュータを利用することができる。メイン・メモリ315は、ダイ
ナミック・ランダム・アクセス・メモリ(DRAM)からなる。ビデオ・メモリ
314は、デュアルポートを備えたビデオ・ランダム・アクセス・メモリである
。ビデオ・メモリ314の1つのポートは、ビデオ増幅器316に結合される。
ビデオ増幅器316は、陰極線管(CRT)ラスタ・モニタ317を駆動するの
に使用される。ビデオ増幅器316は従来技術でよく知られており、任意の好適
な装置で実施することができる。この回路は、ビデオ・メモリ314に格納され
たピクセル・データを、モニタ317が使用するのに好適なラスタ信号に変換す
る。モニタ317は、グラフィック・イメージを表示するのに好適なモニタ・タ
イプである。
【0042】 コンピュータ300には、バス318に結合された通信インターフェース32
0が含まれるであろう。通信インターフェース320は、ネットワーク・リンク
321を介してローカル・ネットワーク322に結合される2方向データ通信を
行う。たとえば、通信インターフェース320が統合サービス・デジタル通信網
(ISDN)カードまたはモデムである場合、通信インターフェース320は、
ネットワーク・リンク321の一部を含む、対応するタイプの電話回線へのデー
タ通信接続を行う。通信インターフェース320がローカル・エリア・ネットワ
ーク(LAN)カードの場合、通信インターフェース320は、ネットワーク・
リンク321を介して互換性のあるLANにデータ通信接続を行う。無線リンク
も可能である。任意のこのような実施では、通信インターフェース320が様々
なタイプの情報を表すデジタル・データ・ストリームを搬送する電気信号、電磁
信号、または光信号を送受信する。
【0043】 ネットワーク・リンク321は、典型的には1つまたは複数のネットワークを
介して他のデータ・デバイスにデータを通信する。たとえば、ネットワーク・リ
ンク321は、ローカル・サーバ・コンピュータ323に、またはインターネッ
ト・サービス・プロバイダ(ISP)324によって操作されるデータ機器に、
ローカル・ネットワーク322を介して接続する。次にISP 324が、現在
一般的に「インターネット」325と呼ばれているワールド・ワイド・パケット
・データ通信ネットワークを介して、データ通信サービスを行う。ローカル・ネ
ットワーク322およびインターネット325は、どちらもデジタル・データ・
ストリームを搬送する電気信号、電磁信号、または光信号を使用する。デジタル
・データをコンピュータ300との間で搬送する、様々なネットワークを経由す
る信号ならびにネットワーク・リンク321上にあって通信インターフェース3
20を経由する信号は、例示的に情報を移送する搬送波の形式をとる。
【0044】 コンピュータ300は、ネットワーク、ネットワーク・リンク321、および
通信インターフェース320を経由して、プログラム・コードを含むメッセージ
の送信およびデータの受信が実行できる。インターネットの例では、リモート・
サーバ・コンピュータ326がアプリケーション・プログラムについて要求され
たコードを、インターネット325、ISP 324、ローカル・ネットワーク
322、および通信インターフェース320を介して伝送することができる。
【0045】 受け取ったコードは、受け取ったままの状態でプロセッサ313によって実行
し、さらに/あるいは後で実行するために大容量記憶装置312または他の不揮
発性記憶装置に格納することができる。この方法では、コンピュータ300は搬
送波の形式でアプリケーション・コードを取得することができる。
【0046】 アプリケーション・コードは、任意の形式のコンピュータ・プログラム製品に
埋め込むことができる。コンピュータ・プログラム製品には、コンピュータ読取
り可能コードを格納または移送するように構成された媒体、またはコンピュータ
読取り可能コードを埋め込むことができる媒体が含まれる。コンピュータ・プロ
グラム製品の例には、CD−ROMディスク、ROMカード、フロッピィ・ディ
スク、磁気テープ、コンピュータ・ハード・ドライブ、ネットワーク上のサーバ
、および搬送波が含まれる。
【0047】 上記のコンピュータ・システムは、例示のために示したものにすぎない。本発
明の一実施形態は、どのようなタイプのコンピュータ・システムあるいはプログ
ラミング環境または処理環境でも実施することができる。
【0048】 DNSトラフィックをトランスペアレントにキャッシュするためのソフトウェア
装置の実施形態 本発明の1つまたは複数の実施形態は、ネットワーキングの層状化モデルおよ
び異なる層間のピア関係を検討することによって説明できる。ネットワーク層で
は、何らかのタイプのワイヤで接続された各ルータ間にピア関係が存在する。高
位のアプリケーション層では、DNSエンティティ(たとえばDNSレゾルバお
よびローカル・ネーム・サーバ)が間にある複数のホップ(たとえばルータ)と
のピア関係を有する。ネットワーク層にあるルータ(ネットワーク層のホップ)
は、アプリケーション層プロトコルからの情報を検証しない。ルータは単に、D
NSクライアントとDNSサーバとの間で情報をトランスペアレントに転送する
だけである。
【0049】 本発明の1つまたは複数の実施形態では、ネットワークの層状化モデルが乱さ
れる(violate)。DNSトラフィックは1マシンから他のマシンへネーム・サ
ービス・ポートを使用して送られる。DNSトラフィックは、通常、特有のDN
Sポート(たとえばポート53)から着信し、ここへ伝送される。したがってル
ータは、すべてのIPパケット内に存在するポート情報に基づいて、DNSトラ
フィックが伝送されるときとwebまたは他のトラフィックが伝送されるときと
を識別する機能を有する。
【0050】 中間ルータ(またはネットワーク・プロトコル層内のホップ)が、DNS情報
がインターネットを横切って伝送されているパケット内にあることを識別すると
、ルータは層状化モデルを乱して、ルータがアプリケーション・プロトコルのメ
ンバであるかのようにパケット内の情報を検証する。その後、情報は構文解析お
よびキャッシュされる。したがってルータは、ネーム・サーバからのDNS応答
をスヌープし、中断された応答をキャッシュする。さらにルータはDNS要求も
中断して、要求をキャッシュから処理できるかどうかを判定する。キャッシュが
要求された情報を含む場合、ルータはDNS照会に応答する。キャッシュが要求
された情報を含まない場合、ルータはネーム・サーバへの経路に沿って次のルー
タまたはホップに要求を転送する。
【0051】 図1の従来技術のシステムを参照すると、ステップ106で、レゾルバは要求
をローカル・ネーム・サーバに転送し、ステップ108で、最下位ドメイン名の
ネーム・サーバに接触する。本発明の1つまたは複数の実施形態では、転送ステ
ップ106および接触ステップ108が、伝送を中断する可能性のあるルータを
介して処理される。ルータは、中断された伝送からの情報のパケットを検証し、
任意の必要な情報をキャッシュに格納する。さらにステップ110で、ネーム・
サーバから情報が取得され、ローカル・ネーム・サーバに返送される場合、本発
明の1つまたは複数の実施形態では、ルータが再度伝送を中断し、情報を構文解
釈し、アドレス情報がローカル・ネーム・サーバまで渡される途中にこれをキャ
ッシュする。
【0052】 図5は、本発明の1つまたは複数の実施形態により、更新済みのルータが実行
するプロセスを実証する図である。このプロセスはステップ500から開始され
る。ステップ502では、ルータはポート情報を検証して、現在の情報がDNS
トラフィックであるか何らかの他のタイプのトラフィック(たとえばwebトラ
フィック)であるかを判定する。情報がDNSトラフィックでなければ、ルータ
は単に通常どおりに実行し、ステップ512で要求をその宛先である次のホップ
に転送する。
【0053】 情報がDNSトラフィックであれば、ルータはステップ504でその情報を構
文解析する。ステップ506で、ルータは構文解析された情報(たとえば要求さ
れたアドレス情報)がそのキャッシュ内にあるかどうかを判定する。情報がキャ
ッシュ内にない場合、ルータは、ステップ510で関連情報をキャッシュ内に格
納し、ステップ512で要求を情報経路内にある次のホップに転送する。情報が
ルータのキャッシュ内にある場合、ステップ508でルータは要求された情報を
要求元に返す。この方法では、更新済みのルータがそれ自体のキャッシュを維持
し、DNS変換要求を処理することができる。
【0054】 あるいは、ステップ502とステップ504の間で、情報がDNSトラフィッ
クであれば、ルータはDNS情報を自動的に事前構成済みのホストに転送する。
ルータは、インターネット・トラフィックのタイプを認識し、指定されたタイプ
のインターネット・トラフィックを特有の場所またはホストに転送するように構
成されている。いったんホストが情報を受け取ると、ホストは残りのステップ5
04〜514を実行する。たとえば、ホストはステップ504で情報を構文解析
し、ステップ506で有効な情報についてそれ自体のキャッシュを検索する。キ
ャッシュに格納する何らかの情報がある(すなわちDNS情報が返される)と、
ステップ510で情報はホストのキャッシュに格納される。このような実施形態
では、ルータがパケットを分類して構成済みホストに迂回させ、ホストがすべて
の追加機能を実行する。
【0055】 図4を参照すると、本発明の1つまたは複数の実施形態では、図4で定義され
るように、1つまたは複数のルータ210は、DNS情報を中断、構文解析、お
よびキャッシュするように修正されている。たとえば、ルータ404および40
6を新しく、すなわち更新することができる。したがって、Cl1 212がns
.syd.au 224からのDNS変換を要求すると、この要求はルート40
0を介してルータ210ならびに更新済みルータ404および406に沿って転
送される。ただし、更新済みルータ404は、これがDNSトラフィックである
かどうかを判定し、そのネットワーク層を乱して要求を中断する。ルータ404
は、要求された情報を構文解析し、そのキャッシュ内にあるかどうかを判定する
。要求された情報がそのキャッシュ内にある場合、ルータ404は(ルート40
0に沿って)結果をCl1 212に返す。要求された情報がそのキャッシュ内
にない場合は、要求を経路400内の次のホップに転送するだけである。ルータ
406は、伝送がDNSトラフィックであることが判定されると、要求を中断し
てそのキャッシュを検索する。関連情報がそのキャッシュ内にないことが判定さ
れると、ルータ406は要求を経路400内の次のホップに転送する。要求はロ
ーカル・ネーム・サーバns.syd.au 224に達するまで転送される。
あるいは、前述のように1つまたは複数の実施形態では、ルータが要求(DNS
トラフィックである場合)をキャッシュおよび処理機能を維持する構成済みのホ
ストに転送する。
【0056】 要求はns.syd.au 224によって処理され、経路400に沿ってC
1 212に返される。情報がCl1 212に戻される途中でルータ406に
達すると、ルータ406は要求を中断し、ルータまたは構成済みホストがアドレ
ス情報を構文解析して、そのアドレス情報をキャッシュ内に格納する。その後ル
ータ406は、この結果を経路400に沿って次のホップに転送する。経路40
0に沿った更新済みルータまたは構成済みホストは、それぞれ結果をそのキャッ
シュ内に格納する。
【0057】 前述の要求に続き、Cl4が同様のDNS変換を要求すると、要求はルート4
02に沿って転送されることになる。ただしルータ406が要求をDNSトラフ
ィックとして識別し、ルータ406が要求を中断し、ルータ406または構成済
みホストが要求を構文解析し、キャッシュを検索して、要求された情報を経路4
02上にある前のホップに返す。したがって、Cl4による要求はルータ406
または構成済みホストでローカルに処理され、オーストラリアのns.syd.
au 224で処理される必要がない。
【0058】 前述のように、本発明の1つまたは複数の実施形態に従い、更新済みのルータ
は他のルータからの追加の処理を実行する。前述のような、また図5に示される
ようなルータによる処理には、DNSトラフィックの一部の表示、情報の構文解
析、キャッシュ格納のためのデータベースの維持、およびキャッシュでの情報検
索が含まれる。
【0059】 DNSネーム・サーバの中には、同じホスト名に関するクライアントの要求に
対して、異なる答えを返すものがある。このような応答は、ロード・バランシン
グの考察(たとえば複数のサーバを横切るネットワーク・トラフィックのバラン
スをとろうとすること)に基づくものであるか、またはクライアントを「近接」
ホストに向けるように選択されることがある。このような方式を使用すると、本
発明の1つまたは複数の実施形態に従ったトランスペアレントなDNSキャッシ
ングの効果を低下させてしまう可能性がある。方式の中には、可能な限り最大数
のクライアントに情報を提供するために、キャッシュ可能データ(たとえばwe
bトラフィックをキャッシュできるルータ)の戦略的な地理的配置を提供するも
のがある。参照により本明細書に組み込まれた「Method and App
aratus for Effective Traffic Localiz
ation Through Domain Name System」と題す
る係属中の特許出願第09/081860号に記載された地理的方式は、どのネ
ットワーク・ルータが本発明の1つまたは複数の実施形態に従って更新されるか
を判定するのに使用されるときにはうまく機能する。このような地理的方式では
、ロード・バランシングおよびトラフィック・ローカライゼーションの所望の目
標を引き続き達成するためのクライアント側の計算によって、数多くの(すべて
ではない場合)DNSクライアントに適用可能なように、返された情報が慎重に
提供される。このようなシナリオは、ネットワークの負荷ならびにDNS変換に
見られる待ち時間を減少させる。
【0060】 したがって、情報を取り出す際に内容の特徴を符号化するための方法および装
置が、1つまたは複数の特有の実施形態と共に記載される。本発明は、特許請求
の範囲およびその均等物の全範囲によって定義される。
【図面の簡単な説明】
【図1】 DNS情報を処理するための従来技術の方法を示す図である。
【図2】 いくつかのネットワーク間の関係を実証する図である。
【図3】 本発明の1つまたは複数の実施形態に好適な実行環境を提供することができる
コンピュータ・システムの一実施形態を示す構成図である。
【図4】 本発明の1つまたは複数の実施形態に従って、いくつかのネットワーク間の関
係およびDNSトラフィックの経路を実証する図である。
【図5】 本発明の1つまたは複数の実施形態に従い、更新済みルータによって実行され
るステップを示す図である。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,CY, DE,DK,ES,FI,FR,GB,GR,IE,I T,LU,MC,NL,PT,SE),OA(BF,BJ ,CF,CG,CI,CM,GA,GN,GW,ML, MR,NE,SN,TD,TG),AP(GH,GM,K E,LS,MW,SD,SL,SZ,UG,ZW),E A(AM,AZ,BY,KG,KZ,MD,RU,TJ ,TM),AE,AL,AM,AT,AU,AZ,BA ,BB,BG,BR,BY,CA,CH,CN,CR, CU,CZ,DE,DK,DM,EE,ES,FI,G B,GD,GE,GH,GM,HR,HU,ID,IL ,IN,IS,JP,KE,KG,KP,KR,KZ, LC,LK,LR,LS,LT,LU,LV,MD,M G,MK,MN,MW,MX,NO,NZ,PL,PT ,RO,RU,SD,SE,SG,SI,SK,SL, TJ,TM,TR,TT,UA,UG,UZ,VN,Y U,ZA,ZW (71)出願人 901 SAN ANTONIO ROAD PALO ALTO,CA 94303,U. S.A. (72)発明者 シューバ,クリストフ アメリカ合衆国・94041・カリフォルニア 州・マウンテン ビュー・ホープ ストリ ート ナンバー1・473 (72)発明者 ベーアー,ジェフリー アメリカ合衆国・94306・カリフォルニア 州・パロ アルト・コロラド アベニュ・ 531 Fターム(参考) 5K030 GA03 HA08 HD03 HD09 LB05 LD17 【要約の続き】 ータを備える。したがって、同じアドレス情報に関する 別の要求がルータに転送されると、ルータは、その要求 を遠方のネーム・サーバに転送するのではなく、応答を 要求側に提供することができる。この方法では、ルータ はDNSトラフィックを中断してDNS情報をキャッシ ュするので、異なるネーム・サーバを利用するクライア ントが、キャッシュ済みの情報から恩恵を受けることが できるようにする。このような更新済みルータは、DN S応答での待ち時間を削減し、ネットワーク・トラフィ ックを削減する。

Claims (21)

    【特許請求の範囲】
  1. 【請求項1】 情報の要求をネットワーク・ルータに伝送すること、 前記伝送された要求を構文解釈すること、 前記要求された情報についてキャッシュを検索すること、および 前記要求された情報が前記キャッシュ内にあれば、前記要求された情報を返す
    すること Dを含むNSトラフィックをトランスペアレントに処理する方法。
  2. 【請求項2】 前記要求された情報が前記キャッシュ内になければ、前記要
    求を前記要求の次のホップに転送すること、 前記要求された情報を受け取ること、 前記要求された情報を構文解析すること、 前記要求された情報を前記キャッシュ内に格納すること、および 前記要求された情報を前記要求された情報の次のホップに転送することをさら
    に含む請求項1に記載の方法。
  3. 【請求項3】 前記情報がインターネット・プロトコル・アドレス情報であ
    る請求項1に記載の方法。
  4. 【請求項4】 前記ネットワーク・ルータが、地理的配置に基づいて1つま
    たは複数のDNSクライアントに適用可能である請求項1に記載の方法。
  5. 【請求項5】 前記受け取りステップが、前記要求された情報のネーム・サ
    ーバからの伝送を含む請求項2に記載の方法。
  6. 【請求項6】 プロセッサと、 前記プロセッサに結合されたメモリと、 DNSトラフィックをトランスペアレントに処理するように構成された前記プ
    ロセッサによって実行されるコードとを含むシステムであって、 前記コードが 情報の要求をネットワーク・ルータに伝送する方法と、 前記伝送された要求を構文解析する方法と、 前記要求された情報についてキャッシュを検索する方法と、 前記要求された情報が前記キャッシュ内にあれば、前記要求された情報を返
    す方法とを含むシステム。
  7. 【請求項7】 前記コードが、 前記要求された情報が前記キャッシュ内になければ、前記要求を前記要求の次
    のホップに転送する方法と、 前記要求された情報を受け取る方法と、 前記要求された情報を構文解析する方法と、 前記要求された情報を前記キャッシュ内に格納する方法と、 前記要求された情報を前記要求された情報の次のホップに転送する方法とをさ
    らに含む請求項6に記載のシステム。
  8. 【請求項8】 前記情報がインターネット・プロトコル・アドレス情報であ
    る請求項6に記載のシステム。
  9. 【請求項9】 前記ネットワーク・ルータが、地理的配置に基づいて1つま
    たは複数のDNSクライアントに適用可能である請求項6に記載のシステム。
  10. 【請求項10】 前記要求された情報を受け取る方法のための前記コードが
    、前記要求された情報をネーム・サーバから伝送する方法を含む請求項7に記載
    のシステム。
  11. 【請求項11】 DNSトラフィックをトランスペアレントに処理するよう
    に構成された、そこで実施されるコンピュータ読取り可能プログラム・コードを
    有するコンピュータ使用可能媒体を含むコンピュータ・プログラム製品であって
    、前記コンピュータ・プログラム製品が、 コンピュータに、情報の要求をネットワーク・ルータに伝送させるように構成
    されたコンピュータ読取り可能コードと、 コンピュータに、前記伝送された要求を構文解析させるように構成されたコン
    ピュータ読取り可能コードと、 コンピュータに、前記要求された情報についてキャッシュを検索させるように
    構成されたコンピュータ読取り可能コードと、 コンピュータに、前記要求された情報が前記キャッシュ内にあれば、前記要求
    された情報を返させるように構成された、コンピュータ読取り可能コードと を含むコンピュータ・プログラム製品。
  12. 【請求項12】 コンピュータに、前記要求された情報が前記キャッシュ内
    になければ、前記要求を前記要求の次のホップに転送させるように構成されたコ
    ンピュータ読取り可能コードと、 コンピュータに、前記要求された情報を受け取らせるように構成されたコンピ
    ュータ読取り可能コードと、 コンピュータに、前記要求された情報を構文解析させるように構成されたコン
    ピュータ読取り可能コードと、 コンピュータに、前記要求された情報を前記キャッシュ内に格納させるように
    構成されたコンピュータ読取り可能コードと、 コンピュータに、前記要求された情報を前記要求された情報の次のホップに転
    送させるように構成されたコンピュータ読取り可能コードとをさらに含む請求項
    11に記載のコンピュータ・プログラム製品。
  13. 【請求項13】 前記情報がインターネット・プロトコル・アドレス情報で
    ある請求項11に記載のコンピュータ・プログラム製品。
  14. 【請求項14】 前記ネットワーク・ルータが、地理的配置に基づいて1つ
    または複数のDNSクライアントに適用可能である請求項11に記載のコンピュ
    ータ・プログラム製品。
  15. 【請求項15】 コンピュータに受け取らせるように構成された前記コンピ
    ュータ読取り可能コードが、コンピュータに、前記要求された情報をネーム・サ
    ーバから伝送させるように構成されたコンピュータ読取り可能コードを含む請求
    項12に記載のコンピュータ・プログラム製品。
  16. 【請求項16】 前記キャッシュが前記ネットワーク・ルータによって維持
    される請求項1に記載の方法。
  17. 【請求項17】 前記キャッシュが構成済みホストによって維持される請求
    項1に記載の方法。
  18. 【請求項18】 前記キャッシュが前記ネットワーク・ルータによって維持
    される請求項6に記載のシステム。
  19. 【請求項19】 前記キャッシュが構成済みホストによって維持される請求
    項6に記載のシステム。
  20. 【請求項20】 前記キャッシュが前記ネットワーク・ルータによって維持
    される請求項11に記載のコンピュータ・プログラム製品。
  21. 【請求項21】 前記キャッシュが構成済みホストによって維持される請求
    項11に記載のコンピュータ・プログラム製品。
JP2000569559A 1998-09-09 1999-09-01 Dnsトラフィックをトランスペアレントに処理するための方法および装置 Pending JP2002524979A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15063098A 1998-09-09 1998-09-09
US09/150,630 1998-09-09
PCT/US1999/020158 WO2000014938A2 (en) 1998-09-09 1999-09-01 Method and apparatus for transparently processing dns traffic

Publications (1)

Publication Number Publication Date
JP2002524979A true JP2002524979A (ja) 2002-08-06

Family

ID=22535372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000569559A Pending JP2002524979A (ja) 1998-09-09 1999-09-01 Dnsトラフィックをトランスペアレントに処理するための方法および装置

Country Status (7)

Country Link
EP (1) EP1110361A2 (ja)
JP (1) JP2002524979A (ja)
KR (1) KR20010086381A (ja)
CN (1) CN1317191A (ja)
AU (1) AU5803599A (ja)
IL (1) IL141873A0 (ja)
WO (1) WO2000014938A2 (ja)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7418504B2 (en) 1998-10-30 2008-08-26 Virnetx, Inc. Agile network protocol for secure communications using secure domain names
US6502135B1 (en) 1998-10-30 2002-12-31 Science Applications International Corporation Agile network protocol for secure communications with assured system availability
US10511573B2 (en) 1998-10-30 2019-12-17 Virnetx, Inc. Agile network protocol for secure communications using secure domain names
CA2723504C (en) 1998-10-30 2014-04-29 Virnetx, Inc. An agile network protocol for secure communications with assured system availability
US6826616B2 (en) 1998-10-30 2004-11-30 Science Applications International Corp. Method for establishing secure communication link between computers of virtual private network
US6694358B1 (en) 1999-11-22 2004-02-17 Speedera Networks, Inc. Performance computer network method
US7925713B1 (en) * 1999-11-22 2011-04-12 Akamai Technologies, Inc. Method for operating an integrated point of presence server network
US6405252B1 (en) 1999-11-22 2002-06-11 Speedera Networks, Inc. Integrated point of presence server network
US7590739B2 (en) 1999-11-22 2009-09-15 Akamai Technologies, Inc. Distributed on-demand computing system
EP1109375A3 (en) * 1999-12-18 2004-02-11 Roke Manor Research Limited Improvements in or relating to long latency or error prone links
GB9929884D0 (en) * 1999-12-18 2000-02-09 Roke Manor Research Transparent DNS cache
US7000028B1 (en) 2000-06-02 2006-02-14 Verisign, Inc. Automated domain name registration
US7114008B2 (en) 2000-06-23 2006-09-26 Cloudshield Technologies, Inc. Edge adapter architecture apparatus and method
US7003555B1 (en) 2000-06-23 2006-02-21 Cloudshield Technologies, Inc. Apparatus and method for domain name resolution
US9444785B2 (en) 2000-06-23 2016-09-13 Cloudshield Technologies, Inc. Transparent provisioning of network access to an application
US6728785B1 (en) 2000-06-23 2004-04-27 Cloudshield Technologies, Inc. System and method for dynamic compression of data
US6829654B1 (en) 2000-06-23 2004-12-07 Cloudshield Technologies, Inc. Apparatus and method for virtual edge placement of web sites
US7032031B2 (en) 2000-06-23 2006-04-18 Cloudshield Technologies, Inc. Edge adapter apparatus and method
US8204082B2 (en) 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
AU2001281367A1 (en) * 2000-08-01 2002-02-13 Verisign, Inc. Resolving hierarchical addresses using servers load balancer
US7210022B2 (en) 2001-05-15 2007-04-24 Cloudshield Technologies, Inc. Apparatus and method for interconnecting a processor to co-processors using a shared memory as the communication interface
US7082502B2 (en) 2001-05-15 2006-07-25 Cloudshield Technologies, Inc. Apparatus and method for interfacing with a high speed bi-directional network using a shared memory to store packet data
KR100568231B1 (ko) 2003-08-11 2006-04-07 삼성전자주식회사 도메인 네임 서비스 시스템 및 방법
CN100418089C (zh) * 2003-08-20 2008-09-10 苹果公司 加速本地高速缓存中资源记录到期的方法和装置
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
CA2586763C (en) 2004-11-08 2013-12-17 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
EP1866767B1 (en) 2005-03-16 2018-04-18 III Holdings 12, LLC Automatic workload transfer to an on-demand center
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
EP3203374B1 (en) 2005-04-07 2021-11-24 III Holdings 12, LLC On-demand access to compute resources
US20070078996A1 (en) * 2005-10-04 2007-04-05 Wei-Che Chen Method for managing a network appliance and transparent configurable network appliance
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
CN102404416B (zh) * 2010-09-16 2016-06-15 中兴通讯股份有限公司 一种获取dns的方法和隧道网关设备
US10270755B2 (en) 2011-10-03 2019-04-23 Verisign, Inc. Authenticated name resolution
US9426087B2 (en) 2012-06-28 2016-08-23 Dolby Laboratories Licensing Corporation Reduced system latency for dominant speaker
US9634935B2 (en) 2013-04-24 2017-04-25 Secured Connectivity, Llc Method, name server, and system for directing network traffic utilizing profile records
KR101850802B1 (ko) * 2013-05-16 2018-04-20 콘비다 와이어리스, 엘엘씨 향상된 발견을 위한 시스템들 및 방법들
US9900281B2 (en) 2014-04-14 2018-02-20 Verisign, Inc. Computer-implemented method, apparatus, and computer-readable medium for processing named entity queries using a cached functionality in a domain name system
CA2994257C (en) * 2015-07-02 2022-03-15 Reliaquest Holdings, Llc Threat intelligence system and method
CN105491110B (zh) * 2015-11-23 2018-06-29 北京天地互连信息技术有限公司 基于http或https的根服务器扩展方法和网络
US10999240B1 (en) 2016-08-31 2021-05-04 Verisign, Inc. Client controlled domain name service (DNS) resolution
US11032127B2 (en) 2017-06-26 2021-06-08 Verisign, Inc. Resilient domain name service (DNS) resolution when an authoritative name server is unavailable
CN113468445A (zh) * 2021-05-24 2021-10-01 北京旷视科技有限公司 请求处理方法、装置、电子设备和计算机可读介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2845207B2 (ja) * 1996-08-15 1999-01-13 日本電気株式会社 アドレス解決装置

Also Published As

Publication number Publication date
KR20010086381A (ko) 2001-09-10
IL141873A0 (en) 2002-03-10
EP1110361A2 (en) 2001-06-27
AU5803599A (en) 2000-03-27
WO2000014938A3 (en) 2000-07-27
WO2000014938A2 (en) 2000-03-16
CN1317191A (zh) 2001-10-10

Similar Documents

Publication Publication Date Title
JP2002524979A (ja) Dnsトラフィックをトランスペアレントに処理するための方法および装置
US9602613B2 (en) Method and system for accelerating browsing sessions
US6567857B1 (en) Method and apparatus for dynamic proxy insertion in network traffic flow
US6519646B1 (en) Method and apparatus for encoding content characteristics
KR100293373B1 (ko) 인터네트워크를위한공통캐시의생성및이용방법과그시스템
EP1706832B1 (en) Improved user interface
US6792461B1 (en) System and method to manage data to a plurality of proxy servers through a router by application level protocol and an authorized list
USRE43247E1 (en) Method and apparatus for communicating information over low bandwidth communications networks
US7080158B1 (en) Network caching using resource redirection
US6480853B1 (en) Systems, methods and computer program products for performing internet searches utilizing bookmarks
US7058727B2 (en) Method and apparatus load balancing server daemons within a server
US20040122951A1 (en) Method and apparatus for providing Web users with a click-to-contact service
US20060271641A1 (en) Method and system for object prediction
US6961751B1 (en) Method, apparatus, and article of manufacture for providing enhanced bookmarking features for a heterogeneous environment
US20020156896A1 (en) System and method for providing a gateway between mobile two-way messaging devices and remote computer networks
US7072687B2 (en) System for transferring an address list and method
US20010056476A1 (en) System and method for accessing a server connected to an IP network through a non-permanent connection
JP2000122958A (ja) サ―バによる文書の提供方法及び媒体
US6672775B1 (en) Cross-machine web page download and storage
WO2001050331A2 (en) Method and apparatus for selecting and delivering internet based advertising
US6408296B1 (en) Computer implemented method and apparatus for enhancing access to a file
US20020078076A1 (en) Simulator disposed between a server and a client system
US20020120683A1 (en) Method and apparatus for supplying network path bookmark information remotely to a mobile device
WO1999060459A2 (en) Method and apparatus for effective traffic localization through domain name system
US6799215B1 (en) Method and apparatus for providing logical unit definitions for telenet servers