JP2004515834A - 分散型ウェブ・サービング・システム - Google Patents
分散型ウェブ・サービング・システム Download PDFInfo
- Publication number
- JP2004515834A JP2004515834A JP2001587260A JP2001587260A JP2004515834A JP 2004515834 A JP2004515834 A JP 2004515834A JP 2001587260 A JP2001587260 A JP 2001587260A JP 2001587260 A JP2001587260 A JP 2001587260A JP 2004515834 A JP2004515834 A JP 2004515834A
- Authority
- JP
- Japan
- Prior art keywords
- content
- client
- database
- server
- secondary server
- 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.)
- Withdrawn
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1021—Server selection for load balancing based on client or server locations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
- G06F16/9574—Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1038—Load balancing arrangements to avoid a single path through a load balancer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/10015—Access to distributed or replicated servers, e.g. using brokers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
- Multi Processors (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
コンテンツをプライマリ・サーバからクライアントに配信するための分散型ウェブ・サービング・システムが、前記クライアントにアクセス可能なデータベースを有する。前記データベースに含まれる情報に基づき、前記プライマリ・サーバからのコンテンツのコピーをどのセコンダリ・サーバから取得するのかを、前記クライアント自身が特定することができる。前記システムには、前記プライマリ・サーバ以外に、前記コンテンツを前記クライアントに配信するためのプロセッサも含まれる。このため、クライアントの最初のコンテンツ要求への前記プライマリ・サーバの割り込みの必要がない。
Description
【0001】
発明の分野
本発明は、ウェブ・サービング・システムに関し、より詳細には分散型ウェブ・サービング・システムに関する。
【0002】
発明の背景
従来のインターネット上でのコンテンツ配信システムには、大量のデータ通信が限られた数のコンテンツ配信プライマリ・サーバに集中するという欠点がある。この問題は、複数のセコンダリ・コンテンツ・サーバからなる分散型システムを設けて、プライマリ・サーバ上の利用可能なコンテンツをこれらのセコンダリ・コンテンツ・サーバにある程度複製させることで、ある程度までは緩和される。ブラウザは、プライマリ・サーバに対してではなく、これらのセコンダリ・サーバのうちの1つに対してコンテンツを要求することによって、競合するデータ通信量が少なくなり、より迅速にサービスを受けることが可能となる。
【0003】
しかしながら、セコンダリ・サーバ・システムは、その存在をブラウザが認知している場合においてのみ有用である。この認知は、周知の分散型ウェブ・サービング・システムにおいては、プライマリ・サーバに、クライアントのコンテンツ要求に応えて、そのコンテンツをどのセコンダリ・ウェブ・サーバから取得可能であるかを示すデータを提供させることで行われる。
【0004】
上記の方法で、要求を行っている各クライアントへのサービス提供に要する応答時間を短縮できるものの、この方法では、最初のコンテンツ要求の度にプライマリ・サーバの割込みが必要となるという問題を解決することはできない。この従来の方法で解決できるのは、要求を行っているクライアントへのプライマリ・サーバの応答を、時間のかかるコンテンツのダウンロードから、コンテンツの一部又は全ての探索命令へと変えるという点のみである。
【0005】
要求を行っているクライアントにとって、従来の方法では、2つのネットワーク・アクセス事象が必要とされる。第1のネットワーク・アクセス事象では、前記要求を行っているクライアントが、求めるコンテンツをどこで取得すればよいかをプライマリ・サーバに質問する。次に、第2のネットワーク・アクセス事象で、前記要求を行っているクライアントが、前記第1のネットワーク・アクセス事象で特定されたセコンダリ・サーバに接続する。このような非効率的な方法は、様々な意味で、例えばある百貨店に電話をかけて、特定の百貨店で販売されている商品についての情報を得て、その百貨店の電話番号を尋ね、電話を一旦切り、その百貨店に新たに電話をかけることに似ている。
【0006】
発明の概要
本発明のシステム及び方法は、要求を行っているクライアントにデータベースを提供することで、前述の問題点を解決するものである。前記データベースに格納されている情報から、前記クライアントは、所望のコンテンツを迅速に配信することの可能な最適セコンダリ・サーバを特定することができる。本システムは、クライアントにこのような能力を付与し、とりわけ、前記クライアントにセコンダリ・サーバへのポインタを提供することで、各コンテンツ要求へのプライマリ・サーバの割込みを不要としたものである。
【0007】
本発明のシステムには、プライマリ・サーバからコンテンツを受信し、前記コンテンツを要求に応えてクライアントに送信するための、前記プライマリ・サーバとの間で通信可能な少なくとも1つのセコンダリ・サーバが含まれる。前記システムには、前記プライマリ・サーバからリモートであり、かつ前記クライアントにアクセス可能であるデータベースが更に含まれる。このデータベースには、前記所望のコンテンツに通じる情報が格納されている。前記システムには、前記プライマリ・サーバ以外に、前記所望のコンテンツを前記クライアントに送信するためのプロセッサが更に含まれる。
【0008】
一実施例においては、前記データベースに、前記コンテンツのコピーを記憶しているセコンダリ・サーバに通じる情報が格納されている。そのような情報の例には、前記所望の情報を記憶しているか否かの問合せ対象である複数のセコンダリ・サーバを列挙したリストや、複数のセコンダリ・サーバと、前記複数のセコンダリ・サーバのそれぞれに記憶されているコンテンツとを共に列挙したリストが含まれる。
【0009】
前記プライマリ・サーバにかかる処理負荷を軽減する目的で、前記データベースは通常、例えばプロキシ・サーバ上又はセコンダリ・サーバ上のクライアントに記憶されているローカルなデータベースである。
【0010】
前記システムに、前記データベースを提供するための、及び、必要な場合には、前記複数のセコンダリ・サーバを列挙したリストの変更又は前記複数のセコンダリ・サーバ上に記憶されているコンテンツを列挙したリストの変更に応えて前記データベースを更新するための管理サーバが更に含まれてもよい。
【0011】
本発明のこれらの及びその他の特徴は、以下の詳細な説明及び添付の図面を参照することで明らかとなろう。
【0012】
発明の詳細な説明
図1を参照すると、コンテンツをクライアント12に配信するための分散型ウェブ・サービング・システム10に、前記コンテンツのオリジナルのコピーを記憶しているプライマリ・サーバ14が含まれる。プライマリ・サーバ14は、複数のセコンダリ・サーバ16a−nとデータ通信可能であり、これらのセコンダリ・サーバのそれぞれが、プライマリ・サーバ14上に記憶されている前記オリジナルのコンテンツの全部又は一部のコピーを記憶していてもよいが、必ずしもそうでなくてもよい。選択された複数のセコンダリ・サーバ16a−nへのプライマリ・サーバ14からのコンテンツの配信は、前記複数のセコンダリ・サーバ16a−nと前記プライマリ・サーバ14との双方とデータ通信可能な管理サーバ18の制御下で行われる。
【0013】
クライアント12があるウェブ・ページを検索する際に、そのウェブ・ページに複数のオブジェクトが埋め込まれていてもよい。幾つかの場合においては、前記ウェブ・ページの幾つかの部分はプライマリ・サーバ14から検索され、その他の部分は複数のセコンダリ・サーバ16a−nから検索される。「コンテンツ」という用語は、あるウェブ・ページに埋め込まれた特定の複数のオブジェクトを包含するものとして、かつ、そのウェブ・ページ全体を包含するものとして意図されている。
【0014】
管理サーバ18は、プライマリ・サーバ14上に記憶されている特定のコンテンツを、複数のセコンダリ・サーバ16a−nのうちのいずれかが受信する場合には、どのセコンダリ・サーバが受信するのかを調べる。特定のセコンダリ・サーバ16bが特定のコンテンツを受信すると管理サーバ18が判定した場合には、管理サーバ18は、そのコンテンツを複製させ、この複製を、プライマリ・サーバ14から前記特定のセコンダリ・サーバ16bへと送信させる。プライマリ・サーバ14上の前記コンテンツが変更された場合には、管理サーバ18は、そのコンテンツの更新されたコピーを、適切なセコンダリ・サーバ16a−nへと送信させる。
【0015】
クライアント12に、そのような要求の全てをプライマリ・サーバ14に集中させるのではなく、複数のセコンダリ・サーバ16a−nのうちの1つからコンテンツを検索させることで、コンテンツを上記のように複製し、プライマリ・サーバ14への負荷を軽減することが可能となる。これに伴い、プライマリ・サーバ14の稼働に要する帯域幅も縮小される。しかし、この利点を実現するためには、クライアント12は、前記コンテンツがプライマリ・サーバ14以外の場所から入手可能であることを、何らかの方法で認知しなければならない。
【0016】
図1に図示するように、クライアント12と管理サーバ18とは、双方ともにデータベース20と通信可能である。このデータベース20は、通常は、例えばクライアント12か又はプロキシ・サーバ上にローカルに記憶されている。又は、前記データベースが、管理サーバ18に記憶されていてもよい。また、前記データベースが、そのコンテンツの一部が管理サーバ18上に、残りのコンテンツがクライアント12上にと分散された形で記憶されていてもよい。ここで重要なのは、データベース20中に格納されている情報が、クライアントの最初のコンテンツ要求中へのプライマリ・サーバ14の割込みが不要であるような具合に、1つ又は複数の場所に記憶されているという点である。
【0017】
データベース20には、クライアント12を目的のコンテンツへと導く情報が格納されている。クライアント12がDNSシステムをバイパスできるように、この情報に前記複数のセコンダリ・サーバのIPアドレスが含まれていてもよい。この情報は、必要に応じて、管理サーバ18によって更新される。クライアント12は、図2及び図3を参照して述べる方法で前記データベースと対話するためのインターフェース・ソフトウェア21を実行する。
【0018】
第1の実施例においては、データベース20に、複数のセコンダリ・サーバ16a−nを列挙したリストと、前記リスト中の各セコンダリ・サーバ上に記憶されているコンテンツとが格納されている。データベース20には、各セコンダリ・サーバとクライアント12との間の地理的関係を示す情報も格納されており、更に、各セコンダリ・サーバ16a−nとクライアント12との間のトポロジカルな関係を示す情報も任意に格納されている。この情報から、クライアント12が、コンテンツ検索に要する時間を最も短縮すると予想されるセコンダリ・サーバ16a−cを決定してもよい。前記クライアントが、次に、前記セコンダリ・サーバに対して、前記所望のコンテンツを記憶しているか否かの問合せを行ってもよい。
【0019】
ここで図2を参照すると、この第1の実施例では、前記クライアント又は前記管理サーバのいずれかによって実行されるセットアップ・ソフトウェアが、前記サーバからのコンテンツ受信に要すると予測されるサービス時間に対応した順番に、前記複数のセコンダリ・サーバを順位付けする(ステップ22)。プライマリ・サーバからのデータ検索要求に応えて、前記クライアント上で実行されるインターフェース・ソフトウェア21が、カウンタを初期化し(ステップ24)、前記データベースを探索して、プライマリ・サーバが、前記カウンタの現在の値によって特定されるセコンダリ・サーバに前記所望のコンテンツを既に記憶させているか否かを調べる(ステップ26)。前記セコンダリ・サーバに前記所望のコンテンツが既に記憶されている場合には、クライアントは前記セコンダリ・サーバに対し、前記所望のコンテンツのコピーを要求するメッセージを送信する(ステップ28)。前記セコンダリ・サーバに前記所望のコンテンツが記憶されていない場合には、クライアントは、更なるセコンダリ・サーバが存在するか否かをチェックする(ステップ30)。更なるセコンダリ・サーバが存在する場合には、クライアントは前記カウンタをインクリメントさせ(ステップ32)、前記カウンタの新たな値によって特定されるセコンダリ・サーバについて上記のステップを繰り返す。更なるセコンダリ・サーバが存在しない場合には、クライアントは、プライマリ・サーバに対し、前記所望のコンテンツのコピーを要求するメッセージを送信する(ステップ34)。
【0020】
本発明の第2の実施例においては、データベース20には、複数のセコンダリ・サーバ16a−nを列挙したリストのみが格納されている。前記データベース20には、各セコンダリ・サーバとクライアント12との間の地理的関係を示す情報も格納されており、更に、各セコンダリ・サーバ16a−nとクライアント12との間のトポロジカルな関係を示す情報も任意に格納されている。この情報から、クライアント12が、コンテンツ検索に要する時間を最も短縮すると予想されるセコンダリ・サーバ16a−nを決定してもよい。
【0021】
ここで図3を参照すると、この第2の実施例では、前記クライアント又は前記管理サーバのいずれかによって実行されるセットアップ・ソフトウェアが、前記サーバからのコンテンツ受信に要すると予測されるサービス時間に対応した順番に、前記複数のセコンダリ・サーバを順位付けする(ステップ36)。プライマリ・サーバからのデータ検索要求に応えて、前記クライアント上で実行されるインターフェース・ソフトウェア21が、カウンタを初期化し(ステップ38)、前記カウンタにより特定されるサーバに対して、前記所望のコンテンツが前記セコンダリ・サーバに既に記憶されているか否かの問合せを行う(ステップ40)。クライアントは、次に、前記セコンダリ・サーバからの応答に基づき、前記サーバが前記所望のコンテンツのコピーを保有しているか否かを調べる(ステップ42)。前記セコンダリ・サーバが前記所望のコンテンツのコピーを保有している場合には、クライアントは前記セコンダリ・サーバにメッセージを送信して、前記所望のコンテンツのコピーを要求する(ステップ44)。前記セコンダリ・サーバが前記所望のコンテンツのコピーを保有していない場合には、クライアントは、問合せ対象となりうる更なるセコンダリ・サーバが存在するか否かをチェックする(ステップ46)。問合せ対象となりうる更なるセコンダリ・サーバが存在する場合には、クライアントは前記カウンタをインクリメントさせ(ステップ48)、前記カウンタの新たな値によって特定されるセコンダリ・サーバについて上記のステップを繰り返す。問合せ対象となりうる更なるセコンダリ・サーバが存在しない場合には、クライアントは、プライマリ・サーバに対し、前記所望のコンテンツのコピーを直接に要求するメッセージを送信する(ステップ50)。
【0022】
分散型ウェブ・サービング・システム10は、所望のコンテンツの検索先として最適なセコンダリ・サーバをクライアントが選択する際の誤りを訂正するための誤り訂正ソフトウェア23を任意に有する。前記誤りは、例えば、クライアント12上に記憶されたデータベース20が使用廃止されているか、又はデータベース20に誤った情報が格納されているといった場合であってもよい。これらのような状況下では、クライアント12は、所望のコンテンツを、例えば最適でないセコンダリ・サーバ又は、最適であるが前記所望のコンテンツのコピーを保有していないセコンダリ・サーバなどの誤ったセコンダリ・サーバから取得しようと試みるであろう。
【0023】
前記誤り訂正ソフトウェア23は、多くの場合前記誤ったセコンダリ・サーバ上で実行されるが、前記クライアントの誤りを認識し、前記クライアントのアイデンティティを調べる。前記クライアントのアイデンティティを識別すると、誤り訂正ソフトウェア23は、前記データベース20の別の一コピーを使用して、前記クライアントの要求を満たすために利用可能な最適セコンダリ・サーバを特定する。誤り訂正ソフトウェア23の役割は、要約すると、前記クライアントのオリジナルの誤った最適セコンダリ・サーバの特定を繰り返すことである。前記誤ったセコンダリ・サーバが、誤った又は使用廃止されている情報が格納されていないデータベースにアクセス可能である限り、誤り訂正ソフトウェア23は、前記クライアントにとって最適なセコンダリ・サーバを正しく特定するであろう。次に、前記誤ったセコンダリ・サーバが、前記最適なセコンダリ・サーバのドメイン名又はIPアドレスのいずれであってもよい前記アイデンティティを、クライアント12に返信してもよい。又は、前記誤ったセコンダリ・サーバ自身が、前記最適なセコンダリ・サーバから前記所望のコンテンツを検索して、前記コンテンツをクライアント12に送信してもよい。
【0024】
分散型ウェブ・サービング・システム10は、所望のコンテンツの検索先として最適なセコンダリ・サーバをクライアントが選択する際の誤りを訂正するための誤り訂正ソフトウェア23を任意に有する。前記誤りは、例えば、クライアント12上に記憶されたデータベース20が使用廃止されているか、又はデータベース20に誤った情報が格納されているといった場合であってもよい。これらのような状況下では、クライアント12は、所望のコンテンツを、例えば最適でないセコンダリ・サーバ又は、最適であるが前記所望のコンテンツのコピーを保有していないセコンダリ・サーバなどの誤ったサーバから取得しようと試みるであろう。
【0025】
前記誤ったセコンダリ・サーバ上で実行される誤り訂正ソフトウェア23は、前記クライアントの誤りを認識し、前記クライアントのアイデンティティを調べ、これを自身のローカルなデータベースに関する情報と一緒に用いて、前記クライアントの要求を満たすために利用可能な最適セコンダリ・サーバを特定する。前記誤り訂正ソフトウェアの役割は、要約すると、前記クライアントのオリジナルの誤った最適セコンダリ・サーバの特定を繰り返すことである。前記誤り訂正ソフトウェアが、誤った又は使用廃止されている情報が格納されていないデータベースにアクセス可能である限り、前記誤ったセコンダリ・サーバは、前記クライアントにとって最適なセコンダリ・サーバを正しく特定するであろう。次に、前記誤ったセコンダリ・サーバが、前記最適なセコンダリ・サーバの前記アイデンティティを、前記クライアントに返信してもよい。又は、前記誤ったセコンダリ・サーバ自身が、前記最適なセコンダリ・サーバから前記所望のコンテンツを検索して、前記コンテンツを前記クライアントに送信してもよい。
【0026】
本発明の方法及びシステムにおいては、プライマリ・サーバ14が各コンテンツ要求に割り込む必要がないので、プライマリ・サーバ14によって費やされる処理オーバーヘッドが軽減されることが明らかである。特に、プライマリ・サーバ14が、コンテンツ要求の度に、前記コンテンツをクライアント12に配信する最適なセコンダリ・サーバ16bを決定する必要がない。代わりに、本発明の方法及びシステムでは、クライアント12自身が、所望のコンテンツの入手元として最適なセコンダリ・サーバ16bを決定することが可能である。このことは、を格納しているデータベース20を維持することによって、実現される。
【0027】
第1の実施例においては、プライマリ・サーバ14によって実行されることのない処理が、クライアント12によって実行される。クライアント12による前記処理を補助するために、管理サーバ18が、データベース20中の重要な情報を提供し、前記情報を頻繁に更新する。第2の実施例においては、前記同じ処理が、クライアント12と、前記クライアントの問合せに応答する複数のセコンダリ・サーバ16a−nとの間で分割される。この第2の実施例においては、クライアント12にアクセス可能なデータベース20は、各セコンダリ・サーバ16a−n上の利用可能なコンテンツをリストする必要がない。従って、この第2の実施例においては、管理サーバ18が大規模なデータベース20を作成してこれを頻繁に更新する必要がない。
【0028】
この第2の実施例においては、短いセットアップ手順の間に一度だけ、管理サーバ18がデータベース20をクライアント12に送るだけでよい。通常は、クライアント12がプライマリ・サーバ14からコンテンツを検索する最初の試みの際に、プライマリ・サーバ14が、クライアント12に対して、クライアント12が次にプライマリ・サーバ14からドキュメントを入手する機会があった場合の前記入手の迅速化を図るために、前記データベース20を受け取ることができることを示すメッセージを送信する。クライアント12がこのオファーを辞退する場合には、プライマリ・サーバ14は、通常の方法でコンテンツを前記クライアントに直接に配信するか、又は前記コンテンツを提供することの可能な、例えばサーバ16bなどのセコンダリ・サーバへのポインタをクライアント12に送ることにより、配信する。
【0029】
上記の説明は、クライアントが適切なセコンダリ・サーバを特定するタスクを実行する一実施例を挙げたものであるが、このタスクを、クライアントの代理として稼働する、プライマリ・サーバ以外の別のプロセッサが実行してもよい。例えば、前記データベースへのアクセスが可能な管理サーバ又はプロキシ・サーバが、クライアントに代わってこのタスクを実行してもよい。誤り訂正ソフトウェアに関して先に説明したように、セコンダリ・サーバがクライアントの代わりにこの機能を実行してもよい。これらの場合に共通しているのは、プライマリ・サーバ以外のプロセッサがこのタスクを実行するという点であり、これら全ての場合において、プライマリ・サーバは、クライアントの最初のコンテンツ要求に割り込む必要がない。
【0030】
上述の複数の実施例で、本発明の主題を実現するシステム及び方法を説明したが、これらの実施例は、単に本発明を実施することの可能な方法の例を挙げたものであり、本発明の範囲全体を表すものではない。ここで新規であると訴え、特許証による保護を求めるところは:
【図面の簡単な説明】
【図1】図1は、本発明の原理を組み込んだ分散型ウェブ・サービング・システムの構成を図示したものである。
【図2】図2は、図1に図示するシステムによってインプリメントされる、所望のコンテンツをクライアントに配信するための一方法を図示したものである。
【図3】図3は、図1に図示するシステムによってインプリメントされる、所望のコンテンツをクライアントに配信するための別の一方法を図示したものである。
発明の分野
本発明は、ウェブ・サービング・システムに関し、より詳細には分散型ウェブ・サービング・システムに関する。
【0002】
発明の背景
従来のインターネット上でのコンテンツ配信システムには、大量のデータ通信が限られた数のコンテンツ配信プライマリ・サーバに集中するという欠点がある。この問題は、複数のセコンダリ・コンテンツ・サーバからなる分散型システムを設けて、プライマリ・サーバ上の利用可能なコンテンツをこれらのセコンダリ・コンテンツ・サーバにある程度複製させることで、ある程度までは緩和される。ブラウザは、プライマリ・サーバに対してではなく、これらのセコンダリ・サーバのうちの1つに対してコンテンツを要求することによって、競合するデータ通信量が少なくなり、より迅速にサービスを受けることが可能となる。
【0003】
しかしながら、セコンダリ・サーバ・システムは、その存在をブラウザが認知している場合においてのみ有用である。この認知は、周知の分散型ウェブ・サービング・システムにおいては、プライマリ・サーバに、クライアントのコンテンツ要求に応えて、そのコンテンツをどのセコンダリ・ウェブ・サーバから取得可能であるかを示すデータを提供させることで行われる。
【0004】
上記の方法で、要求を行っている各クライアントへのサービス提供に要する応答時間を短縮できるものの、この方法では、最初のコンテンツ要求の度にプライマリ・サーバの割込みが必要となるという問題を解決することはできない。この従来の方法で解決できるのは、要求を行っているクライアントへのプライマリ・サーバの応答を、時間のかかるコンテンツのダウンロードから、コンテンツの一部又は全ての探索命令へと変えるという点のみである。
【0005】
要求を行っているクライアントにとって、従来の方法では、2つのネットワーク・アクセス事象が必要とされる。第1のネットワーク・アクセス事象では、前記要求を行っているクライアントが、求めるコンテンツをどこで取得すればよいかをプライマリ・サーバに質問する。次に、第2のネットワーク・アクセス事象で、前記要求を行っているクライアントが、前記第1のネットワーク・アクセス事象で特定されたセコンダリ・サーバに接続する。このような非効率的な方法は、様々な意味で、例えばある百貨店に電話をかけて、特定の百貨店で販売されている商品についての情報を得て、その百貨店の電話番号を尋ね、電話を一旦切り、その百貨店に新たに電話をかけることに似ている。
【0006】
発明の概要
本発明のシステム及び方法は、要求を行っているクライアントにデータベースを提供することで、前述の問題点を解決するものである。前記データベースに格納されている情報から、前記クライアントは、所望のコンテンツを迅速に配信することの可能な最適セコンダリ・サーバを特定することができる。本システムは、クライアントにこのような能力を付与し、とりわけ、前記クライアントにセコンダリ・サーバへのポインタを提供することで、各コンテンツ要求へのプライマリ・サーバの割込みを不要としたものである。
【0007】
本発明のシステムには、プライマリ・サーバからコンテンツを受信し、前記コンテンツを要求に応えてクライアントに送信するための、前記プライマリ・サーバとの間で通信可能な少なくとも1つのセコンダリ・サーバが含まれる。前記システムには、前記プライマリ・サーバからリモートであり、かつ前記クライアントにアクセス可能であるデータベースが更に含まれる。このデータベースには、前記所望のコンテンツに通じる情報が格納されている。前記システムには、前記プライマリ・サーバ以外に、前記所望のコンテンツを前記クライアントに送信するためのプロセッサが更に含まれる。
【0008】
一実施例においては、前記データベースに、前記コンテンツのコピーを記憶しているセコンダリ・サーバに通じる情報が格納されている。そのような情報の例には、前記所望の情報を記憶しているか否かの問合せ対象である複数のセコンダリ・サーバを列挙したリストや、複数のセコンダリ・サーバと、前記複数のセコンダリ・サーバのそれぞれに記憶されているコンテンツとを共に列挙したリストが含まれる。
【0009】
前記プライマリ・サーバにかかる処理負荷を軽減する目的で、前記データベースは通常、例えばプロキシ・サーバ上又はセコンダリ・サーバ上のクライアントに記憶されているローカルなデータベースである。
【0010】
前記システムに、前記データベースを提供するための、及び、必要な場合には、前記複数のセコンダリ・サーバを列挙したリストの変更又は前記複数のセコンダリ・サーバ上に記憶されているコンテンツを列挙したリストの変更に応えて前記データベースを更新するための管理サーバが更に含まれてもよい。
【0011】
本発明のこれらの及びその他の特徴は、以下の詳細な説明及び添付の図面を参照することで明らかとなろう。
【0012】
発明の詳細な説明
図1を参照すると、コンテンツをクライアント12に配信するための分散型ウェブ・サービング・システム10に、前記コンテンツのオリジナルのコピーを記憶しているプライマリ・サーバ14が含まれる。プライマリ・サーバ14は、複数のセコンダリ・サーバ16a−nとデータ通信可能であり、これらのセコンダリ・サーバのそれぞれが、プライマリ・サーバ14上に記憶されている前記オリジナルのコンテンツの全部又は一部のコピーを記憶していてもよいが、必ずしもそうでなくてもよい。選択された複数のセコンダリ・サーバ16a−nへのプライマリ・サーバ14からのコンテンツの配信は、前記複数のセコンダリ・サーバ16a−nと前記プライマリ・サーバ14との双方とデータ通信可能な管理サーバ18の制御下で行われる。
【0013】
クライアント12があるウェブ・ページを検索する際に、そのウェブ・ページに複数のオブジェクトが埋め込まれていてもよい。幾つかの場合においては、前記ウェブ・ページの幾つかの部分はプライマリ・サーバ14から検索され、その他の部分は複数のセコンダリ・サーバ16a−nから検索される。「コンテンツ」という用語は、あるウェブ・ページに埋め込まれた特定の複数のオブジェクトを包含するものとして、かつ、そのウェブ・ページ全体を包含するものとして意図されている。
【0014】
管理サーバ18は、プライマリ・サーバ14上に記憶されている特定のコンテンツを、複数のセコンダリ・サーバ16a−nのうちのいずれかが受信する場合には、どのセコンダリ・サーバが受信するのかを調べる。特定のセコンダリ・サーバ16bが特定のコンテンツを受信すると管理サーバ18が判定した場合には、管理サーバ18は、そのコンテンツを複製させ、この複製を、プライマリ・サーバ14から前記特定のセコンダリ・サーバ16bへと送信させる。プライマリ・サーバ14上の前記コンテンツが変更された場合には、管理サーバ18は、そのコンテンツの更新されたコピーを、適切なセコンダリ・サーバ16a−nへと送信させる。
【0015】
クライアント12に、そのような要求の全てをプライマリ・サーバ14に集中させるのではなく、複数のセコンダリ・サーバ16a−nのうちの1つからコンテンツを検索させることで、コンテンツを上記のように複製し、プライマリ・サーバ14への負荷を軽減することが可能となる。これに伴い、プライマリ・サーバ14の稼働に要する帯域幅も縮小される。しかし、この利点を実現するためには、クライアント12は、前記コンテンツがプライマリ・サーバ14以外の場所から入手可能であることを、何らかの方法で認知しなければならない。
【0016】
図1に図示するように、クライアント12と管理サーバ18とは、双方ともにデータベース20と通信可能である。このデータベース20は、通常は、例えばクライアント12か又はプロキシ・サーバ上にローカルに記憶されている。又は、前記データベースが、管理サーバ18に記憶されていてもよい。また、前記データベースが、そのコンテンツの一部が管理サーバ18上に、残りのコンテンツがクライアント12上にと分散された形で記憶されていてもよい。ここで重要なのは、データベース20中に格納されている情報が、クライアントの最初のコンテンツ要求中へのプライマリ・サーバ14の割込みが不要であるような具合に、1つ又は複数の場所に記憶されているという点である。
【0017】
データベース20には、クライアント12を目的のコンテンツへと導く情報が格納されている。クライアント12がDNSシステムをバイパスできるように、この情報に前記複数のセコンダリ・サーバのIPアドレスが含まれていてもよい。この情報は、必要に応じて、管理サーバ18によって更新される。クライアント12は、図2及び図3を参照して述べる方法で前記データベースと対話するためのインターフェース・ソフトウェア21を実行する。
【0018】
第1の実施例においては、データベース20に、複数のセコンダリ・サーバ16a−nを列挙したリストと、前記リスト中の各セコンダリ・サーバ上に記憶されているコンテンツとが格納されている。データベース20には、各セコンダリ・サーバとクライアント12との間の地理的関係を示す情報も格納されており、更に、各セコンダリ・サーバ16a−nとクライアント12との間のトポロジカルな関係を示す情報も任意に格納されている。この情報から、クライアント12が、コンテンツ検索に要する時間を最も短縮すると予想されるセコンダリ・サーバ16a−cを決定してもよい。前記クライアントが、次に、前記セコンダリ・サーバに対して、前記所望のコンテンツを記憶しているか否かの問合せを行ってもよい。
【0019】
ここで図2を参照すると、この第1の実施例では、前記クライアント又は前記管理サーバのいずれかによって実行されるセットアップ・ソフトウェアが、前記サーバからのコンテンツ受信に要すると予測されるサービス時間に対応した順番に、前記複数のセコンダリ・サーバを順位付けする(ステップ22)。プライマリ・サーバからのデータ検索要求に応えて、前記クライアント上で実行されるインターフェース・ソフトウェア21が、カウンタを初期化し(ステップ24)、前記データベースを探索して、プライマリ・サーバが、前記カウンタの現在の値によって特定されるセコンダリ・サーバに前記所望のコンテンツを既に記憶させているか否かを調べる(ステップ26)。前記セコンダリ・サーバに前記所望のコンテンツが既に記憶されている場合には、クライアントは前記セコンダリ・サーバに対し、前記所望のコンテンツのコピーを要求するメッセージを送信する(ステップ28)。前記セコンダリ・サーバに前記所望のコンテンツが記憶されていない場合には、クライアントは、更なるセコンダリ・サーバが存在するか否かをチェックする(ステップ30)。更なるセコンダリ・サーバが存在する場合には、クライアントは前記カウンタをインクリメントさせ(ステップ32)、前記カウンタの新たな値によって特定されるセコンダリ・サーバについて上記のステップを繰り返す。更なるセコンダリ・サーバが存在しない場合には、クライアントは、プライマリ・サーバに対し、前記所望のコンテンツのコピーを要求するメッセージを送信する(ステップ34)。
【0020】
本発明の第2の実施例においては、データベース20には、複数のセコンダリ・サーバ16a−nを列挙したリストのみが格納されている。前記データベース20には、各セコンダリ・サーバとクライアント12との間の地理的関係を示す情報も格納されており、更に、各セコンダリ・サーバ16a−nとクライアント12との間のトポロジカルな関係を示す情報も任意に格納されている。この情報から、クライアント12が、コンテンツ検索に要する時間を最も短縮すると予想されるセコンダリ・サーバ16a−nを決定してもよい。
【0021】
ここで図3を参照すると、この第2の実施例では、前記クライアント又は前記管理サーバのいずれかによって実行されるセットアップ・ソフトウェアが、前記サーバからのコンテンツ受信に要すると予測されるサービス時間に対応した順番に、前記複数のセコンダリ・サーバを順位付けする(ステップ36)。プライマリ・サーバからのデータ検索要求に応えて、前記クライアント上で実行されるインターフェース・ソフトウェア21が、カウンタを初期化し(ステップ38)、前記カウンタにより特定されるサーバに対して、前記所望のコンテンツが前記セコンダリ・サーバに既に記憶されているか否かの問合せを行う(ステップ40)。クライアントは、次に、前記セコンダリ・サーバからの応答に基づき、前記サーバが前記所望のコンテンツのコピーを保有しているか否かを調べる(ステップ42)。前記セコンダリ・サーバが前記所望のコンテンツのコピーを保有している場合には、クライアントは前記セコンダリ・サーバにメッセージを送信して、前記所望のコンテンツのコピーを要求する(ステップ44)。前記セコンダリ・サーバが前記所望のコンテンツのコピーを保有していない場合には、クライアントは、問合せ対象となりうる更なるセコンダリ・サーバが存在するか否かをチェックする(ステップ46)。問合せ対象となりうる更なるセコンダリ・サーバが存在する場合には、クライアントは前記カウンタをインクリメントさせ(ステップ48)、前記カウンタの新たな値によって特定されるセコンダリ・サーバについて上記のステップを繰り返す。問合せ対象となりうる更なるセコンダリ・サーバが存在しない場合には、クライアントは、プライマリ・サーバに対し、前記所望のコンテンツのコピーを直接に要求するメッセージを送信する(ステップ50)。
【0022】
分散型ウェブ・サービング・システム10は、所望のコンテンツの検索先として最適なセコンダリ・サーバをクライアントが選択する際の誤りを訂正するための誤り訂正ソフトウェア23を任意に有する。前記誤りは、例えば、クライアント12上に記憶されたデータベース20が使用廃止されているか、又はデータベース20に誤った情報が格納されているといった場合であってもよい。これらのような状況下では、クライアント12は、所望のコンテンツを、例えば最適でないセコンダリ・サーバ又は、最適であるが前記所望のコンテンツのコピーを保有していないセコンダリ・サーバなどの誤ったセコンダリ・サーバから取得しようと試みるであろう。
【0023】
前記誤り訂正ソフトウェア23は、多くの場合前記誤ったセコンダリ・サーバ上で実行されるが、前記クライアントの誤りを認識し、前記クライアントのアイデンティティを調べる。前記クライアントのアイデンティティを識別すると、誤り訂正ソフトウェア23は、前記データベース20の別の一コピーを使用して、前記クライアントの要求を満たすために利用可能な最適セコンダリ・サーバを特定する。誤り訂正ソフトウェア23の役割は、要約すると、前記クライアントのオリジナルの誤った最適セコンダリ・サーバの特定を繰り返すことである。前記誤ったセコンダリ・サーバが、誤った又は使用廃止されている情報が格納されていないデータベースにアクセス可能である限り、誤り訂正ソフトウェア23は、前記クライアントにとって最適なセコンダリ・サーバを正しく特定するであろう。次に、前記誤ったセコンダリ・サーバが、前記最適なセコンダリ・サーバのドメイン名又はIPアドレスのいずれであってもよい前記アイデンティティを、クライアント12に返信してもよい。又は、前記誤ったセコンダリ・サーバ自身が、前記最適なセコンダリ・サーバから前記所望のコンテンツを検索して、前記コンテンツをクライアント12に送信してもよい。
【0024】
分散型ウェブ・サービング・システム10は、所望のコンテンツの検索先として最適なセコンダリ・サーバをクライアントが選択する際の誤りを訂正するための誤り訂正ソフトウェア23を任意に有する。前記誤りは、例えば、クライアント12上に記憶されたデータベース20が使用廃止されているか、又はデータベース20に誤った情報が格納されているといった場合であってもよい。これらのような状況下では、クライアント12は、所望のコンテンツを、例えば最適でないセコンダリ・サーバ又は、最適であるが前記所望のコンテンツのコピーを保有していないセコンダリ・サーバなどの誤ったサーバから取得しようと試みるであろう。
【0025】
前記誤ったセコンダリ・サーバ上で実行される誤り訂正ソフトウェア23は、前記クライアントの誤りを認識し、前記クライアントのアイデンティティを調べ、これを自身のローカルなデータベースに関する情報と一緒に用いて、前記クライアントの要求を満たすために利用可能な最適セコンダリ・サーバを特定する。前記誤り訂正ソフトウェアの役割は、要約すると、前記クライアントのオリジナルの誤った最適セコンダリ・サーバの特定を繰り返すことである。前記誤り訂正ソフトウェアが、誤った又は使用廃止されている情報が格納されていないデータベースにアクセス可能である限り、前記誤ったセコンダリ・サーバは、前記クライアントにとって最適なセコンダリ・サーバを正しく特定するであろう。次に、前記誤ったセコンダリ・サーバが、前記最適なセコンダリ・サーバの前記アイデンティティを、前記クライアントに返信してもよい。又は、前記誤ったセコンダリ・サーバ自身が、前記最適なセコンダリ・サーバから前記所望のコンテンツを検索して、前記コンテンツを前記クライアントに送信してもよい。
【0026】
本発明の方法及びシステムにおいては、プライマリ・サーバ14が各コンテンツ要求に割り込む必要がないので、プライマリ・サーバ14によって費やされる処理オーバーヘッドが軽減されることが明らかである。特に、プライマリ・サーバ14が、コンテンツ要求の度に、前記コンテンツをクライアント12に配信する最適なセコンダリ・サーバ16bを決定する必要がない。代わりに、本発明の方法及びシステムでは、クライアント12自身が、所望のコンテンツの入手元として最適なセコンダリ・サーバ16bを決定することが可能である。このことは、を格納しているデータベース20を維持することによって、実現される。
【0027】
第1の実施例においては、プライマリ・サーバ14によって実行されることのない処理が、クライアント12によって実行される。クライアント12による前記処理を補助するために、管理サーバ18が、データベース20中の重要な情報を提供し、前記情報を頻繁に更新する。第2の実施例においては、前記同じ処理が、クライアント12と、前記クライアントの問合せに応答する複数のセコンダリ・サーバ16a−nとの間で分割される。この第2の実施例においては、クライアント12にアクセス可能なデータベース20は、各セコンダリ・サーバ16a−n上の利用可能なコンテンツをリストする必要がない。従って、この第2の実施例においては、管理サーバ18が大規模なデータベース20を作成してこれを頻繁に更新する必要がない。
【0028】
この第2の実施例においては、短いセットアップ手順の間に一度だけ、管理サーバ18がデータベース20をクライアント12に送るだけでよい。通常は、クライアント12がプライマリ・サーバ14からコンテンツを検索する最初の試みの際に、プライマリ・サーバ14が、クライアント12に対して、クライアント12が次にプライマリ・サーバ14からドキュメントを入手する機会があった場合の前記入手の迅速化を図るために、前記データベース20を受け取ることができることを示すメッセージを送信する。クライアント12がこのオファーを辞退する場合には、プライマリ・サーバ14は、通常の方法でコンテンツを前記クライアントに直接に配信するか、又は前記コンテンツを提供することの可能な、例えばサーバ16bなどのセコンダリ・サーバへのポインタをクライアント12に送ることにより、配信する。
【0029】
上記の説明は、クライアントが適切なセコンダリ・サーバを特定するタスクを実行する一実施例を挙げたものであるが、このタスクを、クライアントの代理として稼働する、プライマリ・サーバ以外の別のプロセッサが実行してもよい。例えば、前記データベースへのアクセスが可能な管理サーバ又はプロキシ・サーバが、クライアントに代わってこのタスクを実行してもよい。誤り訂正ソフトウェアに関して先に説明したように、セコンダリ・サーバがクライアントの代わりにこの機能を実行してもよい。これらの場合に共通しているのは、プライマリ・サーバ以外のプロセッサがこのタスクを実行するという点であり、これら全ての場合において、プライマリ・サーバは、クライアントの最初のコンテンツ要求に割り込む必要がない。
【0030】
上述の複数の実施例で、本発明の主題を実現するシステム及び方法を説明したが、これらの実施例は、単に本発明を実施することの可能な方法の例を挙げたものであり、本発明の範囲全体を表すものではない。ここで新規であると訴え、特許証による保護を求めるところは:
【図面の簡単な説明】
【図1】図1は、本発明の原理を組み込んだ分散型ウェブ・サービング・システムの構成を図示したものである。
【図2】図2は、図1に図示するシステムによってインプリメントされる、所望のコンテンツをクライアントに配信するための一方法を図示したものである。
【図3】図3は、図1に図示するシステムによってインプリメントされる、所望のコンテンツをクライアントに配信するための別の一方法を図示したものである。
Claims (51)
- プライマリ・サーバからクライアントにコンテンツを配信するためのシステムであって、前記システムが:
前記コンテンツを前記プライマリ・サーバから受信するために前記プライマリ・サーバと通信可能であり、かつ前記コンテンツを前記クライアントに送信するために前記クライアントと通信可能である、セコンダリ・サーバと、
前記クライアントにアクセス可能なデータベースであって、前記コンテンツに通じる情報が格納された、データベースと;
前記コンテンツの前記クライアントへの送信に最適なセコンダリ・サーバを特定すべく前記データベースにアクセスするための、前記プライマリ・サーバ以外のプロセッサと;
を備えた、システム。 - 前記プロセッサが、前記クライアント、前記セコンダリ・サーバ、プロキシ・サーバ又は管理サーバからなる群から選択される、請求項1に記載のシステム。
- 前記コンテンツに通じる前記情報に、前記コンテンツのコピーを記憶しているか否かの問合せ対象であるセコンダリ・サーバに通じる情報が含まれる、請求項1に記載のシステム。
- 前記コンテンツに通じる前記情報に、前記セコンダリ・サーバ上の利用可能なコンテンツを列挙したリストが含まれる、請求項1に記載のシステム。
- 前記データベースが、前記クライアントに対してローカルなデータベースである、請求項1に記載のシステム。
- 前記データベースが前記クライアント上に記憶されている、請求項5に記載のシステム。
- 前記データベースがプロキシ・サーバ上に記憶されている、請求項5に記載のシステム。
- 前記クライアントにアクセス可能な前記データベースを提供するための管理サーバを更に備えた、請求項1に記載のシステム。
- 前記データベースを更新するための管理サーバを更に備えた、請求項1に記載のシステム。
- 誤って特定されたセコンダリ・サーバ上で実行される誤り訂正ソフトウェアを更に備えた、請求項1に記載のシステム。
- 前記誤り訂正ソフトウェアに、正しいセコンダリ・サーバを決定し、前記正しいセコンダリ・サーバに通じる情報を前記クライアントに送信するための複数の命令が含まれる、請求項10に記載のシステム。
- 前記誤り訂正ソフトウェアに、正しいセコンダリ・サーバを決定し、前記コンテンツを前記正しいセコンダリ・サーバから検索し、前記コンテンツを前記クライアントに送信するための複数の命令が含まれる、請求項10に記載のシステム。
- プライマリ・サーバからクライアントにコンテンツを配信するためのシステムであって、前記システムが:
前記プライマリ・サーバと通信可能な複数のセコンダリ・サーバであって、前記複数のセコンダリ・サーバの一部分集合上に前記コンテンツが記憶されている、複数のセコンダリ・サーバと;
前記クライアントにアクセス可能なデータベースであって、前記コンテンツに通じる情報が格納された、データベースと;
を備えた、システム。 - 前記コンテンツに通じる前記情報に、前記コンテンツのコピーを記憶しているか否かの問合せ対象であるセコンダリ・サーバに通じる情報が含まれる、請求項13に記載のシステム。
- 前記コンテンツに通じる前記情報に、前記セコンダリ・サーバ上の利用可能なコンテンツを列挙したリストが含まれる、請求項13に記載のシステム。
- プライマリ・サーバからクライアントにコンテンツを配信するための方法であって、前記方法に:
前記クライアントと通信可能なセコンダリ・サーバ上に前記コンテンツのコピーを記憶することと;
前記クライアントにアクセス可能なデータベースを、前記セコンダリ・サーバ上の前記コンテンツに通じる情報について更新することと;
が含まれる、方法。 - 前記データベースを更新することに、前記セコンダリ・サーバに通じる情報を前記データベースに追加することが含まれる、請求項16に記載の方法。
- 前記データベースを更新することに、前記セコンダリ・サーバ上の利用可能なコンテンツを示す情報を前記データベースに追加することが含まれる、請求項16に記載の方法。
- 前記データベースを前記クライアント上に記憶することが更に含まれる、請求項16に記載の方法。
- 前記データベースをプロキシ・サーバ上に記憶することが更に含まれる、請求項16に記載の方法。
- 前記クライアントにアクセス可能な前記データベースを提供することが更に含まれる、請求項16に記載の方法。
- 前記データベースを更新することが更に含まれる、請求項16に記載の方法。
- プライマリ・サーバからクライアントにコンテンツを配信するためのソフトウェアがその上に符号化されているコンピュータ読取り可能な媒体であって、前記ソフトウェアに:
前記クライアントと通信可能なセコンダリ・サーバ上に前記コンテンツのコピーを記憶するための命令と;
前記クライアントにアクセス可能なデータベースを、前記コンテンツに通じる情報について更新するための命令と;
が含まれる、コンピュータ読取り可能な媒体。 - 前記データベースを更新するための前記命令に、前記セコンダリ・サーバに通じる情報を前記データベースに追加するための命令が含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- 前記データベースを更新するための前記命令に、前記セコンダリ・サーバ上の利用可能なコンテンツを示す情報を前記データベースに追加するための命令が含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- 前記ソフトウェアに、前記データベースを前記クライアント上に記憶するための命令が更に含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- 前記ソフトウェアに、前記データベースをプロキシ・サーバ上に記憶するための命令が更に含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- 前記ソフトウェアに、前記クライアントにアクセス可能な前記データベースを提供するための命令が更に含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- 前記ソフトウェアに、前記データベースを更新するための命令が更に含まれる、請求項23に記載のコンピュータ読取り可能な媒体。
- クライアントが所望のコンテンツをセコンダリ・サーバから検索することを可能にするためのソフトウェアがその上に符号化されている、コンピュータ読取り可能な媒体であって、前記ソフトウェアに、プライマリ・サーバからクライアントへの命令が含まれ、前記ソフトウェアに:
前記クライアントを、前記セコンダリ・サーバ上の前記コンテンツに通じる情報が格納されたデータベースへと導くための命令と;
前記コンテンツを前記セコンダリ・サーバから検索するための命令と;
が含まれる、コンピュータ読取り可能な媒体。 - 前記セコンダリ・サーバ上の前記コンテンツに通じる情報が格納された前記データベースが更に含まれる、請求項30に記載のコンピュータ読取り可能な媒体。
- 前記コンテンツに通じる前記情報に、前記コンテンツのコピーを記憶しているか否かの問合せ対象であるセコンダリ・サーバに通じる情報が含まれる、請求項31に記載のコンピュータ読取り可能な媒体。
- 前記コンテンツに通じる前記情報に、前記セコンダリ・サーバ上の利用可能なコンテンツを列挙したリストが含まれる、請求項31に記載のコンピュータ読取り可能な媒体。
- 前記ソフトウェアに、前記データベースの更新のために前記管理サーバを前記データベースにアクセスさせるための命令が更に含まれる、請求項30に記載のコンピュータ読取り可能な媒体。
- 所望のコンテンツをセコンダリ・サーバから検索するための方法であって、前記方法に:
前記所望のコンテンツに通じる情報が格納されたデータベースに対して問合せを行うことであって、前記情報に、複数のセコンダリ・サーバが含まれることと;
前記複数のセコンダリ・サーバから、前記所望のコンテンツのコピーを記憶している最適なセコンダリ・サーバを選択することと;
前記所望のコンテンツを、前記最適なセコンダリ・サーバから検索することと;
が含まれる方法。 - 最適なセコンダリ・サーバを選択することに、前記データベースからの情報に基づき、前記最適なセコンダリ・サーバから前記クライアントへのコンテンツ提供に要すると予測されるサービス時間を特定することが含まれる、請求項35に記載の方法。
- 最適なセコンダリ・サーバを選択することに、前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定することが含まれる、請求項35に記載の方法。
- 前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定することに、前記データベースからの情報に基づき、あるセコンダリ・サーバが前記所望のコンテンツにアクセス可能であるか否かを調べることが含まれる、請求項37に記載の方法。
- 前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定することに、前記セコンダリ・サーバが前記所望のコンテンツにアクセス可能であるか否かの問合せをあるセコンダリ・サーバに対して行うことが含まれる、請求項37に記載の方法。
- 前記データベースの更新のために、管理サーバを前記データベースにアクセスさせることが更に含まれる、請求項35に記載の方法。
- 所望のコンテンツをセコンダリ・サーバから検索するためのソフトウェアがその上に符号化されている、コンピュータ読取り可能な媒体であって、前記ソフトウェアに:
前記所望のコンテンツに通じる情報が格納されたデータベースに対して問合せを行うための手段であって、前記情報に複数のセコンダリ・サーバが含まれる手段と;
前記複数のセコンダリ・サーバから、前記所望のコンテンツのコピーを記憶している最適なセコンダリ・サーバを選択するための手段と;
前記所望のコンテンツを、前記最適なセコンダリ・サーバから検索するための手段と;
が含まれる、コンピュータ読取り可能な媒体。 - 最適なセコンダリ・サーバを選択するための前記手段に、前記データベースからの情報に基づき、前記最適なセコンダリ・サーバから前記クライアントへのコンテンツ提供に要すると予測されるサービス時間を特定するための手段が含まれる、請求項41に記載の方法。
- 最適なセコンダリ・サーバを選択するための前記手段に、前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定するための手段が含まれる、請求項41に記載の方法。
- 前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定することに、前記データベースからの情報に基づき、あるセコンダリ・サーバが前記所望のコンテンツにアクセス可能であるか否かを調べることが含まれる、請求項43に記載の方法。
- 前記所望のコンテンツへのアクセスが可能なセコンダリ・サーバを特定することに、あるセコンダリ・サーバに対して、前記セコンダリ・サーバが前記所望のコンテンツにアクセス可能であるか否かの問合せを行うことが含まれる、請求項43に記載の方法。
- 前記データベースの更新のために、管理サーバを前記データベースにアクセスさせることが更に含まれる、請求項41に記載の方法。
- プライマリ・サーバからクライアントにコンテンツを配信するためのシステムであって、前記システムが:
前記プライマリ・サーバから前記コンテンツを受信すべく前記プライマリ・サーバと通信を行うための、及び前記コンテンツを前記クライアントに提供すべく前記クライアントと通信を行うための、サービング手段と;
前記コンテンツに通じる情報を記憶するための記憶手段と;
前記コンテンツの前記クライアントへの送信に最適なサービング手段を特定すべく前記記憶手段にアクセスするための手段と;
を備えたシステム。 - 前記コンテンツに通じる前記情報に、前記記憶されたコンテンツのコピーにアクセス可能であるか否かの問合せ対象である通信手段に通じる情報が含まれる、請求項47に記載のシステム。
- 前記コンテンツに通じる前記情報に、前記サービング手段上の利用可能なコンテンツを列挙したリストが含まれる、請求項47に記載のシステム。
- 前記記憶手段を前記クライアントに提供するための手段が更に含まれる、請求項47に記載のシステム。
- 前記記憶手段を更新するための手段が更に含まれる、請求項47に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US57541400A | 2000-05-19 | 2000-05-19 | |
PCT/US2001/014905 WO2001090943A2 (en) | 2000-05-19 | 2001-05-09 | Distributed internet content delivery system |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004515834A true JP2004515834A (ja) | 2004-05-27 |
Family
ID=24300225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001587260A Withdrawn JP2004515834A (ja) | 2000-05-19 | 2001-05-09 | 分散型ウェブ・サービング・システム |
Country Status (5)
Country | Link |
---|---|
JP (1) | JP2004515834A (ja) |
AU (1) | AU2001261293A1 (ja) |
DE (1) | DE10196218T1 (ja) |
GB (1) | GB2379307B (ja) |
WO (1) | WO2001090943A2 (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2389431A (en) | 2002-06-07 | 2003-12-10 | Hewlett Packard Co | An arrangement for delivering resources over a network in which a demand director server is aware of the content of resource servers |
AU2003250444A1 (en) * | 2002-08-26 | 2004-03-11 | Koninklijke Philips Electronics N.V. | Internet device providing quality and link information |
US7546342B2 (en) * | 2004-05-14 | 2009-06-09 | Microsoft Corporation | Distributed hosting of web content using partial replication |
US20060282434A1 (en) * | 2005-06-13 | 2006-12-14 | Nokia Corporation | Access to fragmented database system |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2281793A (en) * | 1993-09-11 | 1995-03-15 | Ibm | A data processing system for providing user load levelling in a network |
US5828847A (en) * | 1996-04-19 | 1998-10-27 | Storage Technology Corporation | Dynamic server switching for maximum server availability and load balancing |
US5774660A (en) * | 1996-08-05 | 1998-06-30 | Resonate, Inc. | World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network |
-
2001
- 2001-05-09 AU AU2001261293A patent/AU2001261293A1/en not_active Abandoned
- 2001-05-09 DE DE10196218T patent/DE10196218T1/de not_active Withdrawn
- 2001-05-09 GB GB0227022A patent/GB2379307B/en not_active Expired - Fee Related
- 2001-05-09 WO PCT/US2001/014905 patent/WO2001090943A2/en active Application Filing
- 2001-05-09 JP JP2001587260A patent/JP2004515834A/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
GB2379307B (en) | 2004-07-28 |
GB0227022D0 (en) | 2002-12-24 |
AU2001261293A1 (en) | 2001-12-03 |
GB2379307A (en) | 2003-03-05 |
WO2001090943A3 (en) | 2003-12-24 |
WO2001090943A2 (en) | 2001-11-29 |
DE10196218T1 (de) | 2003-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11909639B2 (en) | Request routing based on class | |
US11194719B2 (en) | Cache optimization | |
US10264062B2 (en) | Request routing using a popularity identifier to identify a cache component | |
US10574787B2 (en) | Translation of resource identifiers using popularity information upon client request | |
US20050240574A1 (en) | Pre-fetching resources based on a resource lookup query | |
US20060224670A1 (en) | File distribution method and client terminal implementing the same | |
US20070150602A1 (en) | Distributed and Replicated Sessions on Computing Grids | |
KR20000048930A (ko) | 데이터 통신망용 터널링 장치 및 터널링 소프트웨어 | |
JP2002525749A (ja) | インターネットキャッシングシステム、方法およびそのシステムの構成 | |
US6138152A (en) | Technique for effectively serving information objects through a communication network | |
JPH07311744A (ja) | 資源所在位置検出方式 | |
JP6540063B2 (ja) | 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム | |
JP2004515834A (ja) | 分散型ウェブ・サービング・システム | |
JP2000089996A (ja) | 情報処理装置およびデータベースシステム | |
JP4774814B2 (ja) | サーバアクセス制御システム、サーバアクセス制御方法およびサーバアクセス制御プログラム | |
JP2003140956A (ja) | ファイル共有プロキシシステム及びファイル共有制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080805 |