JPH114261A - 動的ルーティング方法及びプログラム記憶装置 - Google Patents

動的ルーティング方法及びプログラム記憶装置

Info

Publication number
JPH114261A
JPH114261A JP14096498A JP14096498A JPH114261A JP H114261 A JPH114261 A JP H114261A JP 14096498 A JP14096498 A JP 14096498A JP 14096498 A JP14096498 A JP 14096498A JP H114261 A JPH114261 A JP H114261A
Authority
JP
Japan
Prior art keywords
server
class
mapping
request
requester
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.)
Granted
Application number
JP14096498A
Other languages
English (en)
Other versions
JP2970760B2 (ja
Inventor
Shiirun Yu Philip
フィリップ・シールン・ユ
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH114261A publication Critical patent/JPH114261A/ja
Application granted granted Critical
Publication of JP2970760B2 publication Critical patent/JP2970760B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/44Distributed routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1014Server selection for load balancing based on the content of a request
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1025Dynamic adaptation of the criteria on which the server selection is based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1038Load balancing arrangements to avoid a single path through a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1012Server selection for load balancing based on compliance of requirements or conditions with available server resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 サーバのキャッシング効率や負荷平衡を向上
させるためにサーバの集合またはクラスタでのオブジェ
クト要求の動的ルーティング方法を提供すること。 【解決手段】 サーバ上のルーティング情報はメタ情報
を要求への応答に便乗させて動的に更新することができ
る。サーバでのキャッシュ・ヒット率を向上させるため
サーバ選択が要求オブジェクトの識別子(例:URL)
の因子となる。区画化方法によってオブジェクト識別子
をクラスにマッピングできる。また、リクエスタ・ノー
ドはサーバ割り当てテーブルを保守して各クラスをサー
バ選択にマッピングする。クラス−サーバ割り当てテー
ブルは作業負荷の変化に伴って動的に変化し、サーバ容
量にも影響する。リクエスタ・ノードはクラス−サーバ
割り当ての動的な変化について「オンデマンド」ベース
で通知を受けるだけでよい。

Description

【発明の詳細な説明】
【0001】本発明は次の同時係属の米国特許出願に関
連する。1997年7月2日出願のP.ユー(Yu)の
「A Method and Apparatus f
orDynamic Interval−based
Balancing」という名称の米国特許出願第08
/798385号(IBM整理番号YO997028)
及び1996年5月12日(仮)出願のディアス(Di
as)他の「A Computer System a
nd Method for Load Balanc
ing with Selective Contro
l」という名称の米国特許出願(暫定)第60/031
849号(IBM整理番号YO996−252)に関連
する。これらの同時出願及び本発明は共に米国ニューヨ
ーク州Armonkのインターナショナル・ビジネス・
マシーンズ・コーポレイションを譲受人としている。こ
れらの同時係属の出願に記載された内容はそのまま本明
細書に参照として組み込まれている。
【0002】
【発明の属する技術分野】本発明は一般にインターネッ
ト環境でのプロキシ・サーバやウェブ・サーバなどのサ
ーバの集合体またはクラスタ間での負荷の均衡をとるこ
とに関する。本発明の詳細な態様はクライアント要求へ
の応答に便乗したメタ・データを用いたルーティング情
報の更新方法に関する。さらに別の態様はキャッシング
効率を最適化する負荷の均衡をとる方法に関する。
【0003】用語集 本明細書で使用する用語の一部は辞書にある意味もある
が、次の用語集も役立つであろう。
【0004】インターネット 一連のTCP/IPプロトコルを使用するネットワーク
及びゲートウェイからなるネットワーク。
【0005】クライアント クライアントとは、コマンドをサーバに発行してそのコ
マンドに対応するタスクを実行させるコンピュータであ
る。
【0006】サーバ 他のコンピュータのコマンドに従ってタスクを実行する
任意のコンピュータがサーバである。ウェブ・サーバは
通常1つまたは複数のクライアントをサポートする。
【0007】ワールド・ワイド・ウェブ(WWWまたは
ウェブ) 強調表示した言葉や関心がある語句(ハイパーリンク)
をクリックしてサーバ相互間及びデータベース相互間で
インターネット・スイッチ上で情報を検索するためのイ
ンターネットのアプリケーション。インターネットWW
Wサーバはクライアントをサポートし、情報を提供す
る。ウェブはすべての資源がURLとしてアドレス指定
され、HTMLを使ってURLに対応する情報を表示
し、他のURLへポイントアンドクリックによるインタ
フェースを提供するインターネットと考えられる。
【0008】ユニバーサル・リソース・ロケータ(UR
L) インターネット上の情報を一意的に識別する、またはア
ドレス指定する方法。Eメール・アドレスのウェブ・ド
キュメント・バージョンまたは完全に資格があるネット
ワーク・ファイル名。これらはハーパーリンクでアクセ
ス可能である。URLの1例は、「http://ww
w.philipyu.com.:80/table.
html」である。ここでURLは4つのコンポーネン
トを備える。左から始めて、最初は残りのロケータ
と":"で区別される使用プロトコルで規定する。2番目
は対象ホストのホスト名またはIPアドレスである。こ
れは左側が「//」で、右側が「/」で区切られ、任意
選択として":"で区切られる。ポート番号は任意選択
で、左側はホスト名「:」で区切られ、右側は「/」で
区切られる。4番目のコンポーネントは実際のファイル
名またはプログラム名である。この例では、「.htm
l」の拡張子はHTMLファイルであることを示す。
【0009】ハイパーテキスト・マークアップ言語(H
TML) HTMLはとりわけウェブ・サーバが使用してドキュメ
ントを作成し、ウェブ・クライアントから表示できる他
のウェブ・ドキュメントへ接続するための言語である。
HTMLはハイパーテキスト・ドキュメントを使用す
る。
【0010】ハイパーテキスト転送プロトコル(HTT
P) HTTPはクライアントからサーバへのすべての要求が
独立して扱われるということを意味するステートレス・
プロトコルの例である。サーバは以前のコネクションの
記録を持たない。URLの最初の「http:」はht
tpを使ってファイルを検索する必要があることを示
す。
【0011】インターネット・ブラウザまたはウェブ・
ブラウザ httpなどのインターネット・プロトコルを実行して
その実行結果をユーザの画面に表示するクラフィカル・
インタフェース。ブラウザはユーザがインターネットの
「サーフィン」をする際のデスクトップ画面、ディレク
トリ及び検索ツールを備えたインターネットのツアー・
ガイドとして機能できる。この適用分野ではウェブ・ブ
ラウザはワールド・ワイド・ウェブと通信するクライア
ント・サービスである。
【0012】クライアント・キャッシュ クライアント・キャッシュは通常クライアントがアクセ
スするオブジェクトの1次キャッシュとして使用され
る。WWW環境では、クライアント・キャッシュは通常
ウェブ・ブラウザによって実施され、現在の起動の間に
オブジェクトをチャッシングする、すなわち、非持続性
キャッシュであるか、複数の起動にまたがってオブジェ
クトをキャッシングできる。
【0013】キャッシング・プロキシ クライアントのためにエージェントとして動作し、オブ
ジェクトのキャッシングされたコピーを見つけるネット
ワーク内の専用サーバ。キャッシング・プロキシは、ク
ライアント・キャッシュからのキャッシュ欠落の結果と
して起動されるため、通常は2次またはそれ以上のレベ
ルのキャッシュとして動作する。
【0014】HTTPデーモン(HTTPD) ハイパーテキスト・マープアップ言語及び共通ゲートウ
ェイ・インタフェース機能を備えたサーバ。HTTPD
は通常、イントラネットに上のマシンへのハードウェア
接続とTCP/IPカプリングなどのインターネットへ
のアクセスを提供するアクセス・エージェントによって
サポートされる。
【0015】
【従来の技術】ワールド・ワイド・ウェブ(WWW)上
のトラフィックは指数関数的に増加している。大規模な
組織または領域へのゲートウェイにあるプロキシ・サー
バはコンピュータ・ノードの集合を含むことができる。
同様に、人気が高い(ホットな)Webサイトでは、コ
ンピュータ・ノードの集合(またはクラスタ)がアクセ
ス需要をサポートするために使用される。
【0016】サーバ・クラスタを高パフォーマンスに保
つには、ノードの集合間で負荷を分散する必要がある。
これは同一のオブジェクト要求をローカライズする方法
でクラスタ内の任意のサーバのキャッシュ・ヒット率を
最適化する必要性によって軽減される。
【0017】IBM S/390 Sysplexなど
のマルチプロセッサまたは複数のノード環境での負荷平
衡の以前の処理は主にインカミング・タスクまたはユー
ザ・セッションごとに複数の汎用資源の1つを選択する
スケジューリング・アルゴリズムに焦点を合わせてい
た。スケジューラはすべてのインカミング・タスクまた
はユーザ・セッションのスケジューリングを制御するた
め、資源選択のキャッシングは行われない。
【0018】地理的に分散した複製サイト間に負荷平衡
を行う周知の方法の1つは、ラウンドロビン・ドメイン
・ネーム・サーバ(RR−DNS)アプローチとして知
られる。Computer Network and
ISDN Systems、第27巻、1994年、p
p.68−74所収のカッツ(Katz.),E、バト
ラー(Butler),M.、及びマグラス(McGr
ath),R.の論文「A Scaleable HT
TP Server: The NCSA Proto
type」では、ウェブ・サーバ・ノードのセット全体
でノードの負荷平衡を行う方法が紹介されている。ここ
で、分散サイトのセットがURL(例えばwww.ho
tsite.com)によって表されている。この分散
サイトのクラスタ・サブドメインはそのサブドメイン・
ネーム・サーバで定義される。サブドメイン・ネーム・
サーバは名前解決要求を異なるIPアドレス(分散クラ
スタ内の)へラウンドロビン方式でマッピングする。こ
のように、クライアントのサブセットは複製サイトのそ
れぞれに割り当てられる。ネットワーク・トラフィック
を軽減するために、マッピング要求はサーバ要求ごとに
は発行されない。その代わりにマッピング要求の結果が
「タイムトゥリブ」(TTL)間隔だけ保存される。
TTL間隔内に発行されたその後の要求は以前のマッピ
ングを保持しているので同じサーバ・ノードへルーティ
ングされる。
【0019】RR−DNS方式の問題は、分散サイト間
の負荷の不均衡が招来される可能性があることである
(例えば、ディアス(Dias),D.M.,キッシュ
(Kish),W.、マッカージー(Mukherje
e)R.、及びテワリ(Tewari),R.の「A
Scaleable and Highly Avai
lable Web Server」、Proc.41
st IEEE Computer Society
Intl.Conf.(COMPCON) 1996、
Technologies for the Info
rmationSuperhighway,pp.85
−92、1996年2月を参照)。負荷の不均衡はネッ
トワーク内のさまざまなゲートウェイ、ファイアウォー
ル、及びドメイン・ネーム・サーバでの名前とIPアド
レス間の対応のキャッシングによって引き起こされる場
合がある。このように、TTL間隔の間はこれらのゲー
トウェイ、ファイアウォール、及びドメイン・ネーム・
サーバを介してルーティングされる新しいクライアント
要求はすべてキャッシュに記憶された単一のサイトに割
り当てられる。当業者はTTL値を減らすことだけでは
問題の解決にならないことを理解するであろう。実際、
多くのネーム・サーバは小さいTTLの値を受け付けな
い場合が多い。さらに重要なこととして、TTLの値を
小さくしても不均衡に分散されたクライアント要求率に
起因する負荷の偏りは是正されない可能性がある。
【0020】ローカル・クラスタまたはノードでの負荷
平衡の1つの方法は、アタナシオ(Attanasi
o),クレメント(Clement)R.及びスミス
(Smith),ステファン(Stephen)E.,
「A Virtual Multi−processo
r Implemented by an Encap
sulated Cluster of Loosel
y Coupled Computers」、IBM
Research Report RC 18442、
1992年及び参照により本明細書にそのまま組み込ま
れる「Methodand Apparatus fo
r Making a Clusterof Comp
uters Appear as a Single
Host」1994年12月6日の米国特許第5371
852号に記載されたいわゆるTCPルータを使用する
方法である。ここでは、TCPルータのアドレスだけが
クライアントに提示されている。TCPルータは着信要
求をクラスタのノード間にラウンドロビン法またはノー
ド上の負荷に基づいて分散する。このTCPルータ方法
はノードのローカル・クラスタに限定されることに注意
されたい。
【0021】さらに最近になって、本明細書に参照によ
りそのまま組み込まれているコエアジャンニ(Cola
janni),M.、ユー(Yu),P.、及びディア
ス(Dias),D.の論文「Scheduling
Algorithms for Distribute
d Web Servers」、IBM Resear
ch Report,RC20680,1997年1月
では、ゲートウェイをその要求率に従って複数の層に分
割する複数層ラウンドロビン方式が記述されている。各
層からの要求はラウンドロビン・アルゴリズムを使って
別々にスケジューリングされる。この方式は同種の分散
サーバ環境を処理することもできる。
【0022】上記の方法のいずれにおいても、目標はサ
ーバの集合の間で負荷を分散することである。動的ルー
ティング決定は、要求されているオブジェクトの識別を
考慮しない。換言すると、同じオブジェクトへの複数の
要求は別々のサーバへルーティングされて負荷が分散さ
れる。この方法によって、地域のウェブ・ページの潜在
的な数は膨大になり得るためにプロキシ・サーバでは特
に高いキャッシュ・ヒット率を抑えることができる。ウ
ェブ・サーバ・クラスタ内ではそれぞれの区画に異なる
(仮想)ホスト名またはIPを割り当てる静的区画がウ
ェブ・ページに対して行われるが、この静的区画方式は
動的な負荷の変更に柔軟に対応できず、さらにスケーラ
ブルでもない。
【0023】以上のように、改良された負荷平衡方法及
び同一のオブジェクト要求をローカライズすることでク
ラスタ内で負荷平衡を行うだけでなくクラスタ内の任意
のサーバのヒット率を最適化するサーバ・クラスタ内の
装置が必要とされる。本発明はこのような必要性に対処
する。
【0024】さらに、作業負荷条件に従って各サーバに
オブジェクト・スペースのサブセットを動的に処理する
方法を割り当て、オブジェクトに関連付けられたサブス
ペースに割り当てられたサーバへオブジェクト要求をル
ーティングする改良されたルーティング方法も必要とさ
れる。本発明はこのような必要性にも対処する。
【0025】
【発明が解決しようとする課題】上記の必要性に従っ
て、本発明の目的は、サーバのキャッシング効率及び負
荷平衡、または負荷平衡のみのいずれかを考慮するサー
バの集合でのオブジェクト要求の動的なルーティングを
行う改良された方法及び装置である。
【0026】本発明はルーティング要求への応答にメタ
情報を「便乗させる」ことでサーバ・ルーティング情報
を動的に更新できる機能をさらに備える。本発明はまた
要求オブジェクトの識別(例えばURL)に基づいてサ
ーバをマッピングし、作業負荷条件が変更された場合に
このマッピングを動的に更新することでサーバでのキャ
ッシュ・ヒット率を改善できる他の機能も備える。イン
ターネット環境では、サーバの集合はこれに限定されな
いが、プロキシ・サーバ・クラスタまたはウェブ・サー
バ・クラスタを含むことができる。
【0027】サーバ・ノードの集合でオブジェクト要求
を動的にルーティングする本発明の機能を備えた方法
は、メタ情報を要求オブジェクトに便乗させるステップ
と、メタ情報に従ってサーバ割り当てを行うためのルー
ティング情報を動的に更新するステップを含む。
【0028】
【課題を解決するための手段】サーバ・ノードの集合で
オブジェクト要求を動的にルーティングしながらキャッ
シュ・ヒット率を最適化する本発明の機能を備えた方法
は、オブジェクト識別をクラスにマッピングし、クラス
及びクラス−サーバ割り当てテーブルに従ってサーバを
割り当てるステップをさらに含む。
【0029】本発明は「オンデマンド」ベースでリクエ
スタ・ノードにクラス−サーバ割り当ての動的な変更を
通知できる他の機能をさらに含む。クラス−サーバ割り
当ては作業負荷の変化に応じて動的に変更できる。この
変更をすべての潜在的なリクエスタへ同報通信するコス
トを避けるため、またはリクエスタに要求が送信される
たびにまずマッピングを取得させるために、サーバはそ
のクラスの処理を割り当てられていないオブジェクト要
求の処理を継続できるという点で有利である。ただし、
サーバは返送されたオブジェクト(または応答)のヘッ
ダで新しいクラス−サーバ割り当てに関する情報を示す
ことができる。
【0030】さらに、メタ情報を要求オブジェクトに便
乗させる本発明の機能はインターネットの従来のDNS
ルーティングにも応用でき、これによってサーバ・クラ
スタの負荷平衡を向上させられる。これはサーバ割り当
て(キャッシュ・ヒット改良のための)のためにオブジ
ェクトのURL(またはオブジェクト・クラス)を使用
するという概念と区別しなくてはならない。DNSルー
ティングはアドレス・マッピングの有効間隔(TTL)
を備える。本発明はサーバ割り当てをTTLより小さい
間隔で生成し、真の負荷条件をよりよく反映するための
機能を備える。サーバ割り当ての変更を返送されたオブ
ジェクトに便乗させてトラフィックの追加を回避し、将
来の要求を新しいサーバへ送信できる。
【0031】本発明は、負荷の均衡をとるためクラス−
サーバ割り当てを作業負荷需要に基づいて動的かつ増分
的に変更できる他の特徴をさらに有する。
【0032】本発明のさらに別の機能によれば、インタ
ーネット環境でPICSプロトコルを使ってさまざまな
タイプの情報の通信を行うことができる。PICSを使
ってサーバは要求が廃止されたクラス−サーバ・マッピ
ング・エントリに基づいて新しいクラス−サーバ・マッ
ピングにメタ情報を便乗できる。またPICSを使って
リクエスタはコーディネータに現在のクラス−サーバ・
マッピングを照会することができる。
【0033】当業者は本発明がワールド・ワイド・ウェ
ブだけでなく一般の分散環境に適用できることを理解す
るであろう。
【0034】
【発明の実施の形態】図1は本発明に適用可能なインタ
ーネット環境の図である。図示のように、リクエスタ
(110〜153)は従来のプロキシ・サーバ・ノード
(118、125〜127)と、クライアント・ワーク
ステーション及びパーソナル・コンピュータ(PC)
(110、112、120、150〜153)のすべて
を含むことができ、ネットワーク(105)に接続され
る。プロキシ・サーバ、ワークステーション、及びPC
は当業では周知である。プロキシ・サーバの例はIBM
が販売するインターネット接続サーバ(ICS)であ
る。リクエスタはサービス・クラスタ(103)にネッ
トワーク(105)経由でサービスを要求する。ネット
ワークの例は、これに限定されないが、インターネッ
ト、ワールド・ワイド・ウェブ(WWW)、イントラネ
ット、及びローカル・エリア・ネットワーク(LAN)
を含む。サーバ・クラスタは高トラフィック需要を処理
する複数のサーバ・ノード(161〜163)を含む。
サーバ・クラスタはプロキシ・サーバまたはウェブ・サ
ーバ・クラスタでよい。クラスタ内のサーバは、これに
限定されないが、IBMがS/390 SYSPLE
X、SP2、またはRS6000ワークステーションの
商標名で販売する製品を含む。従来と同様、各要求はク
ラスタ内のすべてのサーバが処理できる。一般のサービ
ス要求はワールド・ワイド・ウェブ(WWW)ページへ
のアクセス、リモート・ファイル転送、電子メール、及
びトランザクション・サポートを含む。
【0035】要求は原則としてどのサーバ・ノードでも
処理できるが、同じオブジェクトの単一サーバ・ノード
へのルーティング要求はそのサーバ・ノードでのキャッ
シュ・ヒット率の向上を、したがって性能の改善をもた
らす。以下に説明するように、本発明はクラスタ内のサ
ーバ・ノード間の負荷平衡だけでなく高いキャッシュ・
ヒット率を実現する機能を備える。
【0036】概要によって、本発明によるルーティング
方法はオブジェクトの論理識別またはシンボル名(例:
URL)を使って、要求を処理するサーバを選択する。
オブジェクト識別子をクラスにマッピングする区画方法
も提供される。また好ましくは要求ノードが各クラスを
選択したサーバに割り当てるためのクラス−サーバ割り
当てテーブル(図3)を保守する。好ましい区画方法は
従来のハッシュ関数を使ってオブジェクトURLを任意
の数のハッシュ・クラスにハッシュする方法である。ハ
ッシュ関数が好ましくは与えられ、アービトレータ23
5(図2)によってすべての参加サーバ及びリクエスタ
・ノードから認識できる。
【0037】アービトレータ235は各サーバの負荷を
監視し、クラス−サーバ割り当てを動的に更新して負荷
平衡を向上させる。本発明はサーバ103によってクラ
ス−サーバ割り当てが動的に変更された場合にリクエス
タ・ノードに「オンデマンド」で通知する方法も提供す
る。
【0038】リクエスタ・ノードからの要求はサーバ・
クラスタ103に到達する前にいくつかの中間リクエス
タ・ノード(すなわち、プロキシ・サーバ)を経由する
必要がある。例えばノード150はサーバ・クラスタ1
03に到達する前に2つのレベルのプロキシ・ノード1
25及び118を経由する必要がある。サーバ・クラス
タがプロキシ・サーバ・クラスタの場合、サーバの選択
はプロキシ・サーバ・クラスタ103に最も近いリクエ
スタ110〜120によって行われるのが好ましい。ウ
ェブ・サーバ・クラスタの場合、ウェブ・サーバの選択
はパス上の中間リクエスタで実行できる。
【0039】本発明はリクエスタとサーバ・ノード間で
「便乗された」メタデータを使ってルーティング情報を
効率的に送受信する機能をさらに備える。HTTPの実
施形態では情報交換は既存のウェブ・プロトコルを使っ
てオブジェクト・ヘッダ内にメタデータとして含むこと
ができる。PICS(「インターネット・コンテンツ用
プラットフォーム」)は電子コンテンツに関するメタ情
報を送信する方法を規定する。PICSはウェブ・コン
ソーシアム・プロトコル勧告(http://www.
w3.org/PICSを参照)である。PICSは
「このコンテンツにはどの程度のヌーディティが関連付
けられているか。」などの値に基づいた評価ラベルを送
信するために初めて使用されたが、メタ情報のフォーマ
ット及び意味は完全に一般的である。PICSでは、電
子コンテンツに関するメタ情報は、情報の「評価サービ
ス」またはproducer−and−intende
d−usage(プロデューサアンドインテンデッドユ
ーセージ)に従ってグループ化され、そのグループの1
つで任意の数のカテゴリまたは大きさを持つ情報が送信
できる。各カテゴリはある範囲の使用できる値を備え、
特定のコンテンツに関して特定のカテゴリが単一の値ま
たは複数の値を備えることができる。さらに、メタ情報
グループ(「PICSラベル」として知られる)は満了
情報を含むことができる。また、PICSラベルが複数
を電子コンテンツに付与する機能もある。特定の電子コ
ンテンツの各PICSラベルは独立してコンテンツに追
加または削除できる。
【0040】例えば、「評価サービス」フィールドが
「SafeSurf」評価システムによる値ベースの評
価ラベルを含むことを示す単一のPICSラベルを備え
たサーバからイメージ・ファイルを送信できる。本発明
によれば、イメージ・ファイルは企業プロキシを通過す
る際にその「評価サービス」フィールドがクラス−サー
バ割り当て情報を含むことを示す第2のPICSラベル
を受信することができる。第2のPICSラベルは部門
プロキシを通過する際にはがすことができる。このよう
に、クライアント・コンピュータは第1のPICSラベ
ルだけを参照することができる。HTTPプロトコルは
PICSをサポートする要求ヘッダ及び応答ヘッダで増
強されている。NNTPなどの他の共通アプリケーショ
ン・プロトコルを定義する専門機関は現在PICSサポ
ートの追加も検討している。これらのプロトコルの一部
として、必要なPICSラベル・タイプのリストを要求
を付けて含ませることができる。PICSはまた中央ラ
ベル局サーバからPICS情報を受信するための照会フ
ォーマットを規定する。PICSラベルの例は(PIC
S−1.1「http://the.rating.s
ervice」label for「http://t
he.content」exp「1997.07.01
T08:15−1500」r(n4s3v210))で
「n」「s」「v」「l」は各種メタ情報タイプの送信
名でこのコンテンツの適用可能な値は4(nの場合)、
3(sの場合)、2(vの場合)及び0(lの場合)で
ある。ID「http://the.rating.s
ervice」を認識するソフトウェアだけがこれらの
カテゴリ及び値の解釈方法を認識できる。
【0041】好ましい実施形態では、2種類の異なるP
ICSラベルが使用される。最初の種類のPICSラベ
ルは「再割り当て」ラベルまたは(Rラベル)と呼ば
れ、クラスタ内のサーバ・ノードが返送されたオブジェ
クトのオブジェクト・クラスの「現在の」サーバ割り当
てを示すのに用いる。第2の種類のPICSラベルは
「割り当て」ラベルまたは(Aラベル)と呼ばれ、リク
エスタがこの場合にラベル局機能を提供するアービトレ
ータからのオブジェクトのURlの現在のサーバ割り当
てを決定するために用いる。
【0042】図2に本発明の機能を備えたネットワーク
(201)及びシステムの例を詳述する。図示のよう
に、リクエスタ・ノード(202〜203)を使ってネ
ットワーク(201)を介して要求を発行できるコンピ
ュータ・ノードが表される。リクエスタ・ノードは好ま
しくはCPU(260)、RAMなどのメモリ(26
3)、及びDASDまたはディスクなどの記憶装置(2
65)、またはその他の安定化磁気、電気、または光記
憶あるいはこれらのすべてを含む。メモリ(263)
は、好ましくは安定化プログラム記憶(265)からメ
モリ(263)へロードされてCPU(260)で実行
されるコンピュータ実行可能コードとして実施される、
本発明によるリクエスタ203論理(詳細は図13を参
照して後述)を含む。当業者はリクエスタ(203)論
理をネットワーク(201)経由でリクエスタへダウン
ロードしてCPU(260)で実行できることを理解す
るであろう。リクエスタ203論理はオブジェクト要求
生成ルーチン(267)(詳細は図14に図示)を含
み、クラス−サーバ割り当てテーブル(270)のコピ
ーを保守する。
【0043】アービトレータ(235)はサーバ・トラ
フィックを監視できるすべての従来のコンピュータ・ノ
ードを表し、「クラス−サーバ」割り当てを調整でき
る。アービトレータ(235)は好ましくはCPU(2
40)、RAMなどのメモリ(245)、及びDASD
などの記憶装置(242)、またはその他の安定化磁
気、電気、または光記憶あるいはこれらのすべてを含
む。メモリ(245)は、好ましくはプログラム記憶
(242)からメモリ(245)へロードされてCPU
(240)で実行されるコンピュータ実行可能コードと
して実施される、本発明によるアービトレータ論理(詳
細は図9で図示)を含む。アービトレータ論理はわかり
やすくするために図の例でのみ、マッピング要求ハンド
ラ(248)と、統計及び評価ルーチン(250)を含
むいくつかのコンポーネントに分割されている。これら
のコンポーネントは図12及び10を参照してそれぞれ
詳述する。保守される主要なデータ構造はクラス−プロ
キシ割り当てテーブル(225)である。クラス−プロ
キシ割り当てテーブル(225)上の動作を各種コンポ
ーネントに関して説明する。
【0044】サーバ1...M(206〜208)はデ
ータ/オブジェクトへのアクセスまたはリクエスタ(2
03)の要求によるファイル転送あるいはその両方の提
供などのサービス要求を処理することができるすべての
従来のコンピュータ・ノードを含むことができる。サー
バ・ノード(208)はCPU(227)、メモリ(2
10)、及びDASDなどの記憶装置(230)、また
はその他の安定化磁気、電気、または光記憶装置あるい
はそれらの組合せを含む。メモリ(210)は、好まし
くは記憶装置(230)からメモリ(210)へロード
されてCPU(227)で実行されるコンピュータ実行
可能コードとして実施される、本発明によるサーバ論理
(詳細は図4で図示)を含む。サーバ・ノード論理はわ
かりやすくするために図の例でのみ、オブジェクト要求
ハンドラ(212)と、オブジェクト・ハンドラ(21
4)と、統計報告ルーチン(218)を含むいくつかの
コンポーネントに分割されている。これらのコンポーネ
ントはそれぞれ図7、5、及び8でそれぞれ詳述する。
また、キャッシュ・マネジャ(220)を含み、クラス
タ・サーバ割り当てテーブル(225)のコピーを維持
する。
【0045】図3にN=16及びM=3、ただしNは好
ましくはオブジェクト・クラスの数、すなわち、ハッシ
ュまたは割り当てテーブルのサイズ、Mはサーバ数であ
る割り当てテーブル(225、270)の例を示す。C
(.)をクラスkをサーバC(k)に割り当てる割り当
てテーブル(225、270)とする。再度図2を参照
すると、アービトレータ(235)及びクラスタ内の各
サーバ(206、208)ノードだけでなくリクエスタ
・ノード(202、203)も割り当てテーブル(22
5、270)のコピーを保守できる。リクエスタのテー
ブル(270)は一般に最新のものではない、すなわ
ち、サーバ(208)またはアービトレータ(235)
割り当てテーブル(225)と同期をとっていない。本
発明は各テーブルの同期を確保するためにコストがかか
る更新メッセージを送信する必要がない機能を備え、好
ましくは便乗させられたメタ・データを使って「オンデ
マンド」でクラス−サーバ・マッピングを更新する。
【0046】図4に本発明によってCPU(227)上
で実行されるメモリ(210)に記憶されたサーバ(2
08)論理の例を示す。C(.)をクラスkをサーバC
(k)に割り当てる割り当てテーブル(225、27
0)とする。図示のように、ステップ410でサーバは
入力を待つ。ステップ415で、受信した入力によって
異なる処置がとられる。受信した入力がオブジェクト要
求の場合、ステップ420でオブジェクト要求ハンドラ
212が起動される。オブジェクト要求ハンドラの詳細
な例は図7を参照しながら記述する。ステップ430
で、受信した入力がオブジェクトの場合、ステップ44
0でオブジェクト・ハンドラ214が起動される。オブ
ジェクト・ハンドラの詳細な例は図5を参照しながら記
述する。ステップ445で、受信した入力が統計収集要
求(アービトレータからの)の場合、ステップ460で
統計報告ルーチン(218)が起動される。統計報告ル
ーチンの詳細な例は図8を参照しながら記述する。ステ
ップ450で、受信した入力が割り当てテーブル更新要
求(アービトレータからの)の場合、C(k),k=
1,...,Mがステップ465でこれに従って更新さ
れる。本発明では扱わない他のタイプの入力の場合(従
来のHTTP「プル」要求またはFTP要求などの)、
該当する各種ハンドラ(470)が起動できる。
【0047】図5にオブジェクト・ハンドラ(214)
の例を示す。ステップ510で、受信したオブジェクト
のオブジェクト・クラス(図7のステップ750を参
照)が割り当てテーブルに示されるようにこのサーバに
割り当てられたクラスに属する場合、ステップ515で
キャッシュ・マネジャ220が起動される。キャッシュ
・マネジャはこのオブジェクトをキャッシングするかど
うかを決定し、キャッシングする場合は現在キャッシン
グされているどのオブジェクトを交換するかを決定す
る。次にステップ530で、オブジェクトはリクエスタ
へ返送される。ステップ510で、受信したオブジェク
トのオブジェクト・クラスがこのサーバに割り当てられ
たクラスに属していない(割り当てテーブルからわかる
ように)場合、ステップ520で動的再割り当てルーチ
ンが起動される。動的再割り当てルーチンの詳細な例は
図6を参照しながら記述する。
【0048】図6に動的再割り当てルーチン(ステップ
520)の例を示す。図示のように、ステップ610
で、オブジェクト・クラスを処理するための該当するサ
ーバid(またはIPアドレス)が割り当てテーブル
(図3)から決定される。ステップ620で、カテゴリ
値がオブジェクトのこのクラス(図3)を処理するため
に割り当てられるサーバ(図3)を示すRラベルがオブ
ジェクト・ヘッダに挿入される。
【0049】図7にオブジェクト要求ハンドラ212の
例を示す。図示のように、ステップ710で、オブジェ
クトがローカル・バッファ内にある場合、割り当てテー
ブル(225)がチェックされてオブジェクト・クラス
(図3)をこのサーバで処理するかがステップ720で
決定される。処理しない場合、動的再割り当てルーチン
が起動される(図6)。ステップ740で、オブジェク
トはリクエスタへ返送される。ステップ710で、オブ
ジェクトがローカル・キャッシュにないと判明した場
合、ステップ750でオブジェクト取得要求が(リクエ
スタのために)送信される。
【0050】以下の説明では、CS(j,i)をサーバ
jが受信した(現在の測定間隔中に)クラスiのオブジ
ェクト要求数とし、CA(i)をすべてのサーバが受信
したクラスi内のオブジェクトに対する要求総数とす
る。さらに、SA(j)をサーバjに割り当てられたオ
ブジェクト・クラス要求数とする。
【0051】図8に統計報告ルーチン(218)の例を
示す。図示のように、ステップ810で、サーバjはそ
のロード情報CS(i,j)(ただしi=1,...,
N)をアービトレータへ送信する。ステップ820で、
CS(i,j)(ただしi=1,...,N)はゼロに
リセットされる、すなわち、リセットされて新しい収集
または測定間隔のカウントが開始される。
【0052】図9にアービトレータ論理(235)の例
を示す。ステップ910で、アービトレータは入力待ち
となる。ステップ920で、マッピング要求が検出され
ると、マッピング要求ハンドラ(248)がステップ9
40で起動される(マッピング要求ハンドラ(248)
の詳細な例は図12を参照しながら説明する)。ステッ
プ930で、統計収集間隔のタイマの満了が検出される
と、アービトレータはステップ950で統計及び評価ル
ーチン(250)を実行する(統計及び評価ルーチン
(250)の詳細な例は図10を参照しながら説明す
る)。ステップ960で、更新要求が更新割り当てテー
ブルを備えたすべてのサーバへ送信される。
【0053】図10に統計及び評価ルーチン(250)
の例を示す。図示のように、ステップ1010で、統計
収集要求がすべてのサーバへ送信されてサーバj、ただ
しj=1,...,MからCS(j,i)、ただしi=
1,...,Mの値が計算される。ステップ1020
で、CA(i)がクラスごとに計算される(各クラスi
の全サーバでの要求総数)。ステップ1030で、SA
(j)が各サーバjについて計算される(各サーバjの
割り当てられたクラスへの要求総数)。ステップ104
0で、サーバ上の負荷の上限値THが計算される。TH
は平均負荷より高い分画(d)であると定義することが
好ましい。例えば、dが0.2とは負荷平衡の目標が平
均値の20%を超えるサーバが全くないことを意味す
る。ステップ1050で、いずれかのサーバの負荷が上
限値THを超えると、再割り当てルーチンが起動されて
クラス−サーバ割り当てが調整され、負荷平衡が向上す
る。再割り当てルーチンの詳細な例は図11を参照しな
がら説明する。ステップ1070で、統計収集タイマが
所望の統計収集間隔の長さにリセットされる。
【0054】図11に再割り当てルーチン(ステップ1
060)の例を示す。ステップ1110で、TOは負荷
上限値(TH)を超えたサーバ・セットを含む。ステッ
プ1115で、kをTOで最も負荷が高いサーバのイン
デックスとする。ステップ1120で、TUは負荷上限
値を超えなかったサーバのセットを含む。ステップ11
25で、lをTUで最も負荷が低いサーバのインデック
スとする。ステップ1130でiをクラス負荷CA
(i)が最小のサーバkに割り当てられたクラスとす
る。ステップ1135で、サーバlへのクラスiの再割
り当てによってサーバlの負荷が上限値を超えない場
合、すなわち、SA(l)+CA(i)<=THの場
合、クラスiはステップ1140でサーバkからサーバ
lに再割り当てされる(C(i)をlに変更して)SA
(l)及びSA(k)。ステップ1145で、SA
(l)とSA(k)は更新されてクラス再割り当てを反
映する。特に、SA(l)はCA(i)によってインク
リメントされ、SA(k)はCA(i)によってデクリ
メントされる。そうでない場合、ステップ1160でサ
ーバlは過負荷のサーバから負荷を受け入れることがで
きないためTUから削除される。ステップ1150で、
サーバkの負荷が上限値をまだ超える場合、すなわち、
SA(k)>THの場合、ステップ1130が再実行さ
れる。そうでない場合、ステップ1155でサーバkは
負荷が上限値をもはや超えていないため、TOから削除
される。ステップ1170で、TOが空きでない場合、
ステップ1115が再実行される。ステップ1165
で、TUが空きでない場合、ステップ1125が再実行
される。
【0055】当業者は本発明の精神と範囲を逸脱せずに
本発明の別の実施形態と拡張形態を採用できることを容
易に理解するであろう。例えばステップ1140で、再
割り当ては単一のクラス(図3)をサーバkからサーバ
lへ移動して負荷の不均衡を軽減する簡易型の貪欲な方
法である。この拡張形態では、負荷平衡を向上させられ
る場合にはサーバkの単一のクラスをサーバlの別のク
ラスと交換することができる。ステップ1135で、サ
ーバlが負荷上限値を超えていない場合に再割り当てが
発生する。この判定基準は全体の過負荷が軽減されるか
どうかという基準に緩和することができる。さらに、ク
ラス負荷のいずれかCA(i)がTHを超える場合、各
サーバがそのクラスの要求のほんの一部を受け付ける複
数のサーバにそのクラス負荷を割り当てることができ
る。アービトレータはサーバに割り当てられた負荷の分
担部分に従って、見込みでサーバをそのクラスのリクエ
スタに割り当てることができる。同様の再割り当てがサ
ーバ(208)で実施できる。
【0056】さらに、好ましい実施形態ではクラスタ内
の全サーバは同じ処理能力があるものとされる。当業者
はこれが異種サーバを含むように容易に拡張できること
を容易に理解するであろう。異種サーバの場合は、負荷
平衡は正規化して受信した要求数を処理能力で割った値
になる。特に、SA(j)はサーバjの処理能力によっ
て正規化できる。
【0057】図11はクラス−サーバ割り当てを動的に
次第に改良する方法の例を示すことに注意されたい。当
業者はまた、本発明の精神と範囲を逸脱せずに元のクラ
ス−サーバ割り当てテーブルを提供する別の多くの方法
を用いることができることを理解するであろう。事前の
作業負荷情報が入手できない場合、ランダムまたはラウ
ンド・ロビン・クラス−サーバ割り当てが使用できる。
情報が得られる場合、最小処理時間優先(LPT)アル
ゴリズムを使用できる。各クラスはそのアクセス負荷の
降順にソートされる。リストの最上段にあるクラス(す
なわち、最も負荷が高いクラス)が最初にリストから外
されて現在割り当てられている最も負荷が低いサーバに
割り当てられる。そのサーバの割り当てられた負荷はこ
れに従って調整される。この処理がすべてのクラスが割
り当てられるまで繰り返される。
【0058】図12にマッピング要求ハンドラ(24
5)の例を示す。図示のように、ステップ1210で、
オブジェクトid(例:URL)が例えば従来のハッシ
ングその他の方法でそのクラスにマッピングされる。こ
の方法は例えば論理的にURL論理の最初の4バイトと
URLの最後の4バイトの論理和をとり、得られた数字
をハッシュ・テーブル・サイズで除算することで実行で
きる。余りの数は0とハッシュ・テーブル・サイズ、マ
イナス1の間の数字になる。この余りの数はハッシュ・
テーブルへのインデックスを表す。ステップ1220
で、クラス−サーバ・マッピングが割り当てテーブル
(225)から決定される。ステップ1230で、マッ
ピング情報がリクエスタへ送信される。
【0059】図13にリクエスタ(203)論理の例を
示す。ステップ1310で、リクエスタは入力待ちとな
る。ステップ1315で、オブジェクト要求に関してス
テップ1320でオブジェクト要求生成ルーチンが起動
される。オブジェクト要求生成ルーチンはサーバ・キャ
ッシュでのローカリティを向上させるためにオブジェク
ト識別子(例:URL)に基づいてどのサーバ(IP)
アドレスを選択するか決定する。オブジェクト要求生成
ルーチンの詳細は図14を参照しながら説明する。ステ
ップ1315で、受信した入力がオブジェクト要求でな
い場合、処理はステップ1350へ進む。ステップ13
50で、(以前に要求された)オブジェクトが返送され
た場合、ステップ1360で、オブジェクト(HTT
P)ヘッダに再割り当てラベル(Rラベル)が含まれて
いるかチェックされる。含まれている場合、ステップ1
365で、ローカル割り当てテーブル(270)が更新
されてクラス−サーバ割り当ての変更を反映する。ステ
ップ1370で、受信したオブジェクトが処理される。
ステップ1325で、(ステップ1440で以前に要求
された)マッピング要求が返送されると、ステップ13
30で、(ペンディングの)オブジェクト要求が指定さ
れたサーバへ送信される。ステップ1340で、ローカ
ル割り当てテーブル(270)が更新されてマッピング
する要求に基づくクラス−サーバ再割り当ての変更を反
映する。ステップ1335で、本発明の対象ではない他
のタイプの入力(プッシュ・オブジェクトなど)に関し
て、該当する各種ハンドラを起動できる。
【0060】図14にオブジェクト要求生成(267)
論理の例を示す。図示のように、ステップ1410で、
オブジェクトはそのオブジェクト・クラスにマッピング
される。ステップ1420で、該当するサーバがクラス
−サーバ割り当てテーブルにない場合、ステップ144
0でマッピング要求がアービトレータへ送信される(オ
ブジェクト要求はこうして図13のステップ1330に
示すようにマッピング要求が完了するまで表示され
る)。該当するサーバがクラス−サーバ割り当てテーブ
ルにある場合、ステップ1430で、オブジェクト要求
はクラス−サーバ割り当てテーブルが指定するサーバへ
送信される。
【0061】当業者は本発明の精紳と範囲を逸脱するこ
となく本発明のさまざまな拡張形態が使用できることを
容易に理解するであろう。例えば、オブジェクト要求生
成ルーチン(ステップ1440)で、マッピング要求を
発行する代わりにクラスタ内の任意のサーバが選択でき
る。マッピング要求テーブルはそれぞれのクラス−サー
バ・マッピングの有効な間隔を含むこともできる。この
間隔が満了すると、そのクラスの次のオブジェクト要求
に応答してマッピング要求を発行する(ステップ144
0で)ことができる。
【0062】当業者はまた本発明がサーバへの階層的な
オブジェクト識別子のマッピングに適用できることを理
解するであろう。例えば、図15に示すように、本発明
は従来のドメイン・ネーム・サーバ(DNS)またはT
CPベースのルーティングとの連携動作が可能である。
ここで、クラス−サーバ割り当てテーブルは好ましくは
各クラス(図3)を仮想サーバに割り当てる。仮想サー
バの数はサーバ・クラスタ内のサーバの実際の数より多
い。次にDNS(167)及びTCPルータは各仮想サ
ーバをクラスタ内の実サーバの1つに動的にマッピング
する。
【0063】さらに、メタ情報を要求されたオブジェク
トに便乗させることでサーバ位置に関するルーティング
情報を更新するという概念を使ってインターネット内で
の従来のDNSルーティングを更新できる。この処理
は、オブジェクトのURL(またはクラス)を使ってサ
ーバ割り当てを実行してキャッシュ・ヒット率を向上さ
せる機能とは無関係である。DNSルーティングは複製
の情報を備えた複数のウェブ・サーバ間で負荷平衡を試
みるだけである(例として、コラジャンニ(Colaj
anni),M.,ユー(Yu),P.,ディアス(D
ias),D.,の「Scheduling Algo
rithms for Distributed We
b Servers」、IBM Research R
eport、RC20680、1997年1月を参
照)。従来のDNSは各ネーム−アドレス・マッピング
のTTL間隔を備える。このマッピングは各種ネーム・
サーバでキャッシングされる。この結果、DNSはクラ
スタの負荷平衡に使用された場合には制御範囲が限定さ
れる。本発明によれば、クラスタ内のサーバが過負荷に
なると、代替サーバIPアドレスが返送されるオブジェ
クトに(好ましくはPICSラベルまたは同等の機構を
使って)「便乗でき」(ネットワーク・トラフィックを
追加せずに)、トラフィック・フローをクラスタ内の他
のサーバへ転送して負荷平衡を向上させることができ
る。
【0064】好ましい実施形態では、DNS(167)
は各リクエスタから発行される要求の数を収集し、リク
エスタ−サーバ割り当てテーブルを生成してサーバ間の
負荷の平衡を保つ。(異種サーバの場合、割り当てられ
た負荷をサーバの処理能力に比例させることができ
る。)(ネーム−アドレス)マッピング要求がDNS
(167)に到着すると、サーバ(161...16
3)が割り当てテーブルのリクエスタ名(またはIPア
ドレス)に基づいて割り当てられる。マッピングは階層
構造でマルチレベル、例えば、URL=>クラス=>仮
想サーバ=>サーバという図式になる。DNS(16
7)は負荷統計を収集し、TTLよりも(はるかに)短
い測定間隔に基づいて割り当てテーブル(225)を更
新することができる。このように、新しい割り当てテー
ブルを迅速に生成して負荷条件をより正確に反映させら
れる。すべてのサーバ(161...163)はDNS
(167)から最新バージョンの割り当てテーブル(2
25)を入手する。前記と同様に、リクエスタ(11
0...153)はこの変更を通知される必要がない。
リクエスタは以前の(ネーム−アドレス)マッピングに
基づいて要求を送信できる。ただし、サーバがそのサー
バに割り当てられていないリクエスタから要求を受信し
た場合、リクエスタに将来要求を発行する先のサーバ
(161...163)を通知する。現在の要求はその
まま処理され、新しい割り当て情報はPICSその他の
機構を使って、応答または返送されるオブジェクトに便
乗させられる。サーバが過負荷になった場合、DNS
(167)へアラーム信号を送信できる。アラームを受
信するたびに、DNS(167)は割り当てテーブルを
再計算してすべての過負荷状態のサーバに割り当てられ
た要求の数を軽減できる。リクエスタは割り当てテーブ
ルがクラス−サーバ割り当てになるようにクラスに区画
することもできる。
【0065】DNS(167)ルーティング論理の例を
図15を参照しながら説明する。リクエスタ(110)
がDNS(167)によってサーバ(162)が割り当
てられているものとする。従来技術では、このマッピン
グはあるTTL間隔、例えば、5分間のTTL間隔だけ
有効である。本発明によれば、更新された割り当てテー
ブルは例えば1分間というより短い間隔で生成でき、リ
クエスタ(110)は負荷を減らされたサーバ(16
3)に割り当てられる。リクエスタ(110)はこの時
点では変更を知る必要がない。リクエスタは同じサーバ
(162)へ次の要求を送信する。ただし、サーバ(1
62)はDNS(167)から新しい割り当てテーブル
を受信している。サーバ(162)は要求を処理する
が、リクエスタ(110)へ返送するオブジェクトにメ
ッセージを便乗させてサーバ(163)へ将来の要求を
送信する。これでトラフィックを追加せずにTTLの悪
影響を除去できる。
【0066】当業者は本発明の動的ルーティング方法
が、リクエスタの一部がルーティング・プロトコルを認
識せずキャッシュ・ヒット率及び負荷平衡を向上させる
協動に参加しない既存のプロキシ/クライアント・ステ
ーションである異種リクエスタ環境でも有効であるとい
うことをさらに理解するであろう。
【0067】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0068】(1)オブジェクト要求を処理するサーバ
・ノードの集合が用いる動的ルーティング方法であっ
て、メタ情報を要求されたオブジェクトに便乗させるス
テップと、メタ情報に従ってサーバに対するルーティン
グ情報を動的に更新するステップを含む方法。 (2)サーバ・ノード間で負荷を平衡させるステップ
と、要求されたオブジェクトのキャッシュ・ヒット率を
最適化するステップをさらに含む上記(1)に記載の方
法。 (3)サーバ・ノード間で負荷を平衡させるステップを
さらに含む上記(1)に記載の方法。 (4)サーバの集合がインターネット環境でのプロキシ
・サーバのクラスタまたはウェブ・サーバのクラスタを
含む上記(1)に記載の方法。 (5)オブジェクト要求を処理する複数のプロキシ・サ
ーバ・ノード間の動的ルーティング方法であって、要求
されたオブジェクトのオブジェクト識別子に従ってサー
バを割り当てるステップと、前記割り当てステップに応
答して、更新されたサーバ割り当てをオブジェクト・リ
クエスタに通知するステップを含む方法。 (6)オブジェクト要求を処理する複数のウェブ・サー
バ・ノード間の動的ルーティング方法であって、同じホ
スト名またはアドレスに向けられたオブジェクト要求
を、要求されたオブジェクトの識別子に従ってクラスタ
内の異なるサーバに割り当てるステップと、更新された
サーバ割り当てを、オブジェクト・リクエスタに通知す
るステップと、オブジェクト・リクエスタが後続のオブ
ジェクト要求に対する要求されたオブジェクトの更新さ
れたサーバ割り当てを動的に保守するステップを含む方
法。 (7)オブジェクト識別子の階層的マッピングに従って
サーバを割り当てるステップをさらに含む上記(1)に
記載の方法。 (8)オブジェクト識別子がURLである上記(7)に
記載の方法。 (9)オブジェクト識別子をクラスにマッピングするス
テップと、クラス及びクラス−サーバ割り当てテーブル
に基づいてサーバを割り当てるステップをさらに含む上
記(2)に記載の方法。 (10)前記マッピング・ステップがオブジェクト識別
子をハッシュ・テーブル経由でクラスまたはハッシュ・
クラスにマッピングするステップをさらに含む上記
(9)に記載の方法。 (11)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(2)に記載の方法。 (12)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(2)
に記載の方法。 (13)前記負荷平衡ステップが各クラスに関連付けら
れた負荷の関数としてのクラスをサーバ・ノードに割り
当てるステップをさらに含む上記(2)に記載の方法。 (14)前記負荷平衡ステップがクラスをサーバに増加
方向に再び割り当てるステップをさらに含む上記(2)
に記載の方法。 (15)前記便乗ステップがPICSプロトコルの使用
を含みルーティング情報を更新する上記(1)に記載の
方法。 (16)各要求元ノードがオブジェクトの現在のサーバ
割り当て要求を送信するステップをさらに含む上記
(1)に記載の方法。 (17)前記要求送信ステップがPICSプロトコルを
使って要求されたオブジェクトのクラスに基づいて現在
のサーバ割り当てを決定する上記(16)に記載の方
法。 (18)オブジェクト識別子の階層マッピングに従って
サーバを割り当てるステップが、各クラスタを仮想サー
バ・ノードに割り当てるステップと、仮想サーバ・ノー
ドを実際のサーバ・ノードの動的にマッピングするステ
ップをさらに含む上記(7)に記載の方法。 (19)サーバ・ノードの集合が、前記の動的マッピン
グ・ステップがネーム−アドレス・マッピング及びネー
ム−アドレス・マッピングに関連付けられたタイムトゥ
リブ(TTL)間隔を含み、DNSがTTLより短い間
隔で実際のサーバ・ノードに仮想サーバ・ノードを動的
にマッピングするステップと、更新されたサーバのマッ
ピングをすべてのサーバに通知するステップをさらに含
み、前記メタ情報が更新されたサーバのマッピングを含
み、前記の動的にルーティング要求を更新するステップ
が更新されたサーバ・マッピングに従って後続のオブジ
ェクト要求をルーティングするステップを含むドメイン
・ネーム・サーバ(DNS)を含む上記(18)に記載
の方法。 (20)サーバ・ノードの集合がTCPルータを含み、
ルータが実際のプロキシ・ノードに仮想サーバ・ノード
を動的にマッピングするステップをさらに含む上記(1
8)に記載の方法。 (21)すべてのリクエスタが前記の動的更新ステップ
を実行するように適合されてはいない異種リクエスタ環
境をさらに含む上記(1)に記載の方法。 (22)前記サーバ割り当てステップがオブジェクト識
別子の階層マッピングに従ってサーバを割り当てるステ
ップを含む上記(5)に記載の方法。 (23)オブジェクト識別子をクラスにマッピングする
ステップと、クラス及びクラス−サーバ割り当てテーブ
ルに基づいてサーバを割り当てるステップをさらに含む
上記(5)に記載の方法。 (24)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(5)に記載の方法。 (25)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(5)
に記載の方法。 (26)前記オブジェクト要求割り当てステップがオブ
ジェクト識別子の階層マッピングに従ってオブジェクト
要求を割り当てるステップを含む上記(6)に記載の方
法。 (27)オブジェクト識別子をクラスにマッピングする
ステップと、クラス及びクラス−サーバ割り当てテーブ
ルに基づいてサーバを割り当てるステップをさらに含む
上記(6)に記載の方法。 (28)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(6)に記載の方法。 (29)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(6)
に記載の方法。 (30)サーバ・ノードの集合への要求をクラスタ内の
異なるサーバに割り当てることができるサーバ・ノード
の集合の動的なルーティング方法であって、リクエスタ
がリクエスタ識別子またはIPアドレスのいずれかを含
むマッピング要求を定期的にサーバに送信するステップ
と、前記のリクエスタ識別子またはIPアドレスのいず
れかをリクエスタ負荷及びサーバ容量のいずれかに基づ
いてサーバ・ノードの集合内のサーバにマッピングする
ステップと、前記マッピング・ステップに応答してサー
バ・マッピングをすべてのサーバに送信するステップ
と、サーバのいずれかがそのサーバに割り当てられてい
ないリクエスタから要求を受信した場合に、サーバがリ
クエスタにリクエスタ−サーバ割り当ての変更を通知す
るステップを含む方法。 (31)リクエスタに通知する前記ステップが、サーバ
が要求を処理するステップをさらに含む上記(30)に
記載の方法。 (32)リクエスタ識別子またはIPアドレスをクラス
に区画化するステップと、アービトレータ・サーバとサ
ーバの集合にあるクラス−サーバ割り当てテーブルを保
守するステップをさらに含む上記(30)に記載の方
法。 (33)アービトレータ・サーバがインターネット環境
のDNSを含む上記(32)に記載の方法。 (34)オブジェクト識別子またはIPアドレスの階層
マッピングに従ってサーバを割り当てるステップをさら
に含む上記(3)に記載の方法。 (35)リクエスタ識別子をクラスにマッピングし、ク
ラスに基づいてサーバを割り当てるステップをさらに含
む上記(3)に記載の方法。 (36)サーバが更新されたメタ情報をリクエスタへ送
信し、リクエスタが割り当てを更新するステップをさら
に含む上記(3)に記載の方法。 (37)マシン上で実行され、オブジェクト要求を処理
するサーバ・ノードの集合でオブジェクト要求を動的に
ルーティングする方法ステップを実行する命令プログラ
ムを明らかに実施したマシン可読プログラム記憶装置で
あって、前記方法ステップが、メタ情報を要求されたオ
ブジェクトに便乗させるステップと、メタ情報に従って
サーバ割り当てに対するルーティング情報を動的に更新
するステップを含むプログラム記憶装置。 (38)サーバ・ノード間で負荷を平衡させるステップ
と、要求されたオブジェクトのキャッシュ・ヒット率を
最適化するステップをさらに含む上記(37)に記載の
プログラム記憶装置。 (39)サーバ・ノード間で負荷を平衡させるステップ
をさらに含む上記(37)に記載のプログラム記憶装
置。 (40)サーバの集合がインターネット環境でのプロキ
シ・サーバのクラスタまたはウェブ・サーバのクラスタ
を含む上記(37)に記載のプログラム記憶装置。 (41)マシン上で実行され、オブジェクト要求を処理
するサーバ・ノードの集合でオブジェクト要求を動的に
ルーティングする方法ステップを実行する命令プログラ
ムを明らかに実施したマシン可読プログラム記憶装置で
あって、前記方法ステップが、要求されたオブジェクト
のオブジェクト識別子に従ってサーバを割り当てるステ
ップと、前記割り当てステップに応答して、更新された
サーバ割り当てをオブジェクト・リクエスタに通知する
ステップを含むプログラム記憶装置。 (42)前記サーバ割り当てステップがオブジェクト識
別子の階層マッピングに従ってサーバを割り当てるステ
ップを含む上記(41)に記載のプログラム記憶装置。 (43)オブジェクト識別子をクラスにマッピングする
ステップと、クラス及びクラス−サーバ割り当てテーブ
ルに基づいてサーバを割り当てるステップをさらに含む
上記(41)に記載のプログラム記憶装置。 (44)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(41)に記載のプログラム記憶装置。 (45)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(4
1)に記載のプログラム記憶装置。 (46)マシン上で実行され、オブジェクト要求を処理
する複数のウェブ・サーバ・ノードでオブジェクト要求
を動的にルーティングする方法ステップを実行する命令
プログラムを明らかに実施したマシン可読プログラム記
憶装置であって、前記方法ステップが、同じホスト名ま
たはアドレスに向けられたオブジェクト要求を、要求さ
れたオブジェクトの識別子に従ってクラスタ内の異なる
サーバに割り当てるステップと、更新されたサーバ割り
当てを、オブジェクト・リクエスタに通知するステップ
と、オブジェクト・リクエスタが後続のオブジェクト要
求に対する要求されたオブジェクトの更新されたサーバ
割り当てを動的に保守するステップを含むプログラム記
憶装置。 (47)前記オブジェクト要求割り当てステップがオブ
ジェクト識別子の階層マッピングに従ってオブジェクト
要求を割り当てるステップを含む上記(46)に記載の
プログラム記憶装置。 (48)オブジェクト識別子をクラスにマッピングする
ステップと、クラス及びクラス−サーバ割り当てテーブ
ルに基づいてサーバを割り当てるステップをさらに含む
上記(46)に記載のプログラム記憶装置。 (49)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(46)に記載のプログラム記憶装置。 (50)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(4
6)に記載のプログラム記憶装置。 (51)オブジェクト識別子の階層マッピングに従って
サーバを割り当てるステップをさらに含む上記(37)
に記載のプログラム記憶装置。 (52)オブジェクト識別子がURLである上記(5
1)に記載のプログラム記憶装置。 (53)オブジェクト識別子の階層マッピングに従って
サーバを割り当てるステップが、各クラスタを仮想サー
バ・ノードに割り当てるステップと、仮想サーバ・ノー
ドを実際のサーバ・ノードに動的にマッピングするステ
ップをさらに含む上記(51)に記載のプログラム記憶
装置。 (54)サーバ・ノードの集合が、前記の動的マッピン
グ・ステップがネーム−アドレス・マッピング及びネー
ム−アドレス・マッピングに関連付けられたタイムトゥ
リブ(TTL)間隔を含み、DNSがTTLより短い間
隔で実際のサーバ・ノードに仮想サーバ・ノードを動的
にマッピングするステップと、更新されたサーバのマッ
ピングをすべてのサーバに通知するステップをさらに含
み、前記メタ情報が更新されたサーバのマッピングを含
み、前記の動的なルーティング要求を更新するステップ
が更新されたサーバ・マッピングに従って後続のオブジ
ェクト要求をルーティングするステップを含むドメイン
・ネーム・サーバ(DNS)を含む上記(53)に記載
のプログラム記憶装置。 (55)サーバ・ノードの集合がTCPルータを含み、
ルータが実際のプロキシ・ノードに仮想サーバ・ノード
を動的にマッピングするステップをさらに含む上記(5
3)に記載のプログラム記憶装置。 (56)オブジェクト識別子をクラスにマッピングする
ステップと、クラス及びクラス−サーバ割り当てテーブ
ルに基づいてサーバを割り当てるステップをさらに含む
上記(38)に記載のプログラム記憶装置。 (57)前記マッピング・ステップがオブジェクト識別
子をハッシュ・テーブル経由でクラスまたはハッシュ・
クラスにマッピングするステップをさらに含む上記(5
6)に記載のプログラム記憶装置。 (58)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にアー
ビトレータにマッピング要求を発行するステップと、前
記マッピング・ステップに応答してクラス−サーバ割り
当てテーブルを更新するステップを含む、サーバ選択の
ためのリクエスタ・ノードでクラス−サーバ割り当てテ
ーブルを保守するステップを含む、割り当て要求トラフ
ィックを軽減するリクエスタでのサーバ選択方法が提供
される上記(38)に記載のプログラム記憶装置。 (59)各オブジェクト要求のオブジェクト識別子をク
ラスにマッピングするステップと、クラス−サーバ割り
当てテーブルに有効なサーバ割り当てがない場合にサー
バを選択するステップと、前記選択ステップに応答して
クラス−サーバ割り当てテーブルを選択したサーバで更
新するステップを含む、サーバ選択のためのリクエスタ
・ノードでクラス−サーバ割り当てテーブルを保守する
ステップを含む、割り当て要求トラフィックを軽減する
リクエスタでのサーバ選択方法が提供される上記(3
8)に記載のプログラム記憶装置。 (60)前記負荷平衡ステップが各クラスに関連付けら
れた負荷の関数としてのクラスをサーバ・ノードに割り
当てるステップをさらに含む上記(38)に記載のプロ
グラム記憶装置。 (61)前記負荷平衡ステップがクラスをサーバに増加
方向に再び割り当てるステップをさらに含む上記(3
8)に記載のプログラム記憶装置。 (62)前記便乗ステップがPICSプロトコルの使用
を含みルーティング情報を更新する上記(37)に記載
のプログラム記憶装置。 (63)各要求元ノードがオブジェクトの現在のサーバ
割り当て要求を送信するステップをさらに含む上記(3
7)に記載のプログラム記憶装置。 (64)前記要求送信ステップがPICSプロトコルを
使って要求されたオブジェクトのクラスに基づいて現在
のサーバ割り当てを決定する上記(63)に記載のプロ
グラム記憶装置。 (65)すべてのリクエスタが前記の動的更新ステップ
を実行するように適合されてはいない異種リクエスタ環
境をさらに含む上記(37)に記載のプログラム記憶装
置。 (66)オブジェクト識別子またはIPアドレスの階層
マッピングに従ってサーバを割り当てるステップをさら
に含む上記(39)に記載のプログラム記憶装置。 (67)リクエスタ識別子をクラスにマッピングし、ク
ラスに基づいてサーバを割り当てるステップをさらに含
む上記(39)に記載のプログラム記憶装置。 (68)サーバが更新されたメタ情報をリクエスタへ送
信し、リクエスタが割り当てを更新するステップをさら
に含む上記(39)に記載のプログラム記憶装置。 (69)マシン上で実行され、オブジェクト要求を処理
するサーバ・ノードの集合でオブジェクト要求を動的に
ルーティングする方法ステップを実行する命令プログラ
ムを明らかに実施したマシン可読プログラム記憶装置で
あって、前記方法ステップが、リクエスタがリクエスタ
識別子またはIPアドレスのいずれかを含むマッピング
要求を定期的にサーバに送信するステップと、前記のリ
クエスタ識別子またはIPアドレスのいずれかをリクエ
スタ負荷及びサーバ容量のいずれかに基づいてサーバ・
ノードの集合内のサーバにマッピングするステップと、
前記マッピング・ステップに応答してサーバ・マッピン
グをすべてのサーバに送信するステップと、サーバのい
ずれかがそのサーバに割り当てられていないリクエスタ
から要求を受信した場合に、サーバがリクエスタにリク
エスタ−サーバ割り当ての変更を通知するステップを含
むプログラム記憶装置。 (70)リクエスタに通知する前記ステップが、サーバ
が要求を処理するステップをさらに含む上記(69)に
記載のプログラム記憶装置。 (71)リクエスタ識別子またはIPアドレスをクラス
に区画化するステップと、アービトレータ・サーバとサ
ーバの集合にあるクラス−サーバ割り当てテーブルを保
守するステップをさらに含む上記(69)に記載のプロ
グラム記憶装置。 (72)アービトレータ・サーバがインターネット環境
のDNSを含む上記(71)に記載のプログラム記憶装
置。
【図面の簡単な説明】
【図1】本発明に適用できるインターネット環境を示す
図である。
【図2】本発明の機能を備える一般環境の例を示す詳細
図である。
【図3】「クラス−サーバ」割り当てテーブルの例を示
す図である。
【図4】図2のサーバ論理の例を示す図である。
【図5】サーバのオブジェクト・ハンドラの例を示す図
である。
【図6】サーバのオブジェクト・ハンドラの動的最割り
当てルーチンの例を示す図である。
【図7】サーバのオブジェクト要求ハンドラの例を示す
図である。
【図8】サーバの統計報告ルーチンの例を示す図であ
る。
【図9】図2のアービトレータ論理の例を示す図であ
る。
【図10】アービトレータの統計及び評価ルーチンの例
を示す図である。
【図11】アービトレータの統計及び評価ルーチンの再
割り当てルーチンの例を示す図である。
【図12】アービトレータのマッピング要求ハンドラの
例を示す図である。
【図13】図2のリクエスタ論理の例を示す図である。
【図14】リクエスタ論理のオブジェクト要求の生成例
を示す図である。
【図15】ドメイン・ネーム・サーバ(DNS)を含む
図1のサーバ・クラスタの例を示す図である。
【符号の説明】
103 サーバ・クラスタ 105 ネットワーク 110 リクエスタ1 112 PC 118 リクエスタ・ノードK 120 PC 125 プロキシ・サーバ・ノード 126 プロキシ・サーバ 127 プロキシ・サーバ 150 PC 151 PC 152 PC 153 PC 161 サーバ・ノード 162 サーバ・ノード 163 サーバ・ノード 201 ネットワーク 202 リクエスタ・ノード1 203 リクエスタ・ノードK 205 サーバ・クラスタ 206 サーバ1 208 サーバM 210 メモリ 212 オブジェクト要求ハンドラ 214 オブジェクト・ハンドラ 218 統計報告ルーチン 220 キャッシュ・マネジャ 225 割り当てテーブル 227 CPU 230 記憶装置 235 アービトレータ 240 CPU 242 プログラム記憶 245 メモリ 248 マッピング要求ハンドラ 250 統計及び評価 260 CPU 263 メモリ 265 記憶装置 267 オブジェクト要求の生成ルーチン 270 割り当てテーブル

Claims (40)

    【特許請求の範囲】
  1. 【請求項1】オブジェクト要求を処理するサーバ・ノー
    ドの集合が用いる動的ルーティング方法であって、 メタ情報を要求されたオブジェクトに便乗させるステッ
    プと、 メタ情報に従ってサーバに対するルーティング情報を動
    的に更新するステップを含む方法。
  2. 【請求項2】サーバ・ノード間で負荷を平衡させるステ
    ップと、 要求されたオブジェクトのキャッシュ・ヒット率を最適
    化するステップをさらに含む請求項1に記載の方法。
  3. 【請求項3】サーバ・ノード間で負荷を平衡させるステ
    ップをさらに含む請求項1に記載の方法。
  4. 【請求項4】サーバの集合がインターネット環境でのプ
    ロキシ・サーバのクラスタまたはウェブ・サーバのクラ
    スタを含む請求項1に記載の方法。
  5. 【請求項5】オブジェクト要求を処理する複数のプロキ
    シ・サーバ・ノード間の動的ルーティング方法であっ
    て、 要求されたオブジェクトのオブジェクト識別子に従って
    サーバを割り当てるステップと、 前記割り当てステップに応答して、更新されたサーバ割
    り当てをオブジェクト・リクエスタに通知するステップ
    を含む方法。
  6. 【請求項6】オブジェクト要求を処理する複数のウェブ
    ・サーバ・ノード間の動的ルーティング方法であって、 同じホスト名またはアドレスに向けられたオブジェクト
    要求を、要求されたオブジェクトの識別子に従ってクラ
    スタ内の異なるサーバに割り当てるステップと、 更新されたサーバ割り当てを、オブジェクト・リクエス
    タに通知するステップと、 オブジェクト・リクエスタが後続のオブジェクト要求に
    対する要求されたオブジェクトの更新されたサーバ割り
    当てを動的に保守するステップを含む方法。
  7. 【請求項7】オブジェクト識別子の階層的マッピングに
    従ってサーバを割り当てるステップをさらに含む請求項
    1に記載の方法。
  8. 【請求項8】オブジェクト識別子がURLである請求項
    7に記載の方法。
  9. 【請求項9】オブジェクト識別子をクラスにマッピング
    するステップと、 クラス及びクラス−サーバ割り当てテーブルに基づいて
    サーバを割り当てるステップをさらに含む請求項2に記
    載の方法。
  10. 【請求項10】前記マッピング・ステップがオブジェク
    ト識別子をハッシュ・テーブル経由でクラスまたはハッ
    シュ・クラスにマッピングするステップをさらに含む請
    求項9に記載の方法。
  11. 【請求項11】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にアービトレータにマッピング要求を発行
    するステップと、 前記マッピング・ステップに応答してクラス−サーバ割
    り当てテーブルを更新するステップを含む、サーバ選択
    のためのリクエスタ・ノードでクラス−サーバ割り当て
    テーブルを保守するステップを含む、割り当て要求トラ
    フィックを軽減するリクエスタでのサーバ選択方法が提
    供される請求項2に記載の方法。
  12. 【請求項12】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にサーバを選択するステップと、 前記選択ステップに応答してクラス−サーバ割り当てテ
    ーブルを選択したサーバで更新するステップを含む、サ
    ーバ選択のためのリクエスタ・ノードでクラス−サーバ
    割り当てテーブルを保守するステップを含む、割り当て
    要求トラフィックを軽減するリクエスタでのサーバ選択
    方法が提供される請求項2に記載の方法。
  13. 【請求項13】前記負荷平衡ステップが各クラスに関連
    付けられた負荷の関数としてのクラスをサーバ・ノード
    に割り当てるステップをさらに含む請求項2に記載の方
    法。
  14. 【請求項14】前記負荷平衡ステップがクラスをサーバ
    に増加方向に再び割り当てるステップをさらに含む請求
    項2に記載の方法。
  15. 【請求項15】前記便乗ステップがPICSプロトコル
    の使用を含みルーティング情報を更新する請求項1に記
    載の方法。
  16. 【請求項16】各要求元ノードがオブジェクトの現在の
    サーバ割り当て要求を送信するステップをさらに含む請
    求項1に記載の方法。
  17. 【請求項17】前記要求送信ステップがPICSプロト
    コルを使って要求されたオブジェクトのクラスに基づい
    て現在のサーバ割り当てを決定する請求項16に記載の
    方法。
  18. 【請求項18】オブジェクト識別子の階層マッピングに
    従ってサーバを割り当てるステップが、各クラスタを仮
    想サーバ・ノードに割り当てるステップと、 仮想サーバ・ノードを実際のサーバ・ノードの動的にマ
    ッピングするステップをさらに含む請求項7に記載の方
    法。
  19. 【請求項19】サーバ・ノードの集合が、前記の動的マ
    ッピング・ステップがネーム−アドレス・マッピング及
    びネーム−アドレス・マッピングに関連付けられたタイ
    ムトゥリブ(TTL)間隔を含み、 DNSがTTLより短い間隔で実際のサーバ・ノードに
    仮想サーバ・ノードを動的にマッピングするステップ
    と、 更新されたサーバのマッピングをすべてのサーバに通知
    するステップをさらに含み、 前記メタ情報が更新されたサーバのマッピングを含み、 前記の動的にルーティング要求を更新するステップが更
    新されたサーバ・マッピングに従って後続のオブジェク
    ト要求をルーティングするステップを含むドメイン・ネ
    ーム・サーバ(DNS)を含む請求項18に記載の方
    法。
  20. 【請求項20】サーバ・ノードの集合がTCPルータを
    含み、ルータが実際のプロキシ・ノードに仮想サーバ・
    ノードを動的にマッピングするステップをさらに含む請
    求項18に記載の方法。
  21. 【請求項21】すべてのリクエスタが前記の動的更新ス
    テップを実行するように適合されてはいない異種リクエ
    スタ環境をさらに含む請求項1に記載の方法。
  22. 【請求項22】前記サーバ割り当てステップがオブジェ
    クト識別子の階層マッピングに従ってサーバを割り当て
    るステップを含む請求項5に記載の方法。
  23. 【請求項23】オブジェクト識別子をクラスにマッピン
    グするステップと、 クラス及びクラス−サーバ割り当てテーブルに基づいて
    サーバを割り当てるステップをさらに含む請求項5に記
    載の方法。
  24. 【請求項24】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にアービトレータにマッピング要求を発行
    するステップと、 前記マッピング・ステップに応答してクラス−サーバ割
    り当てテーブルを更新するステップを含む、サーバ選択
    のためのリクエスタ・ノードでクラス−サーバ割り当て
    テーブルを保守するステップを含む、割り当て要求トラ
    フィックを軽減するリクエスタでのサーバ選択方法が提
    供される請求項5に記載の方法。
  25. 【請求項25】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にサーバを選択するステップと、 前記選択ステップに応答してクラス−サーバ割り当てテ
    ーブルを選択したサーバで更新するステップを含む、サ
    ーバ選択のためのリクエスタ・ノードでクラス−サーバ
    割り当てテーブルを保守するステップを含む、割り当て
    要求トラフィックを軽減するリクエスタでのサーバ選択
    方法が提供される請求項5に記載の方法。
  26. 【請求項26】前記オブジェクト要求割り当てステップ
    がオブジェクト識別子の階層マッピングに従ってオブジ
    ェクト要求を割り当てるステップを含む請求項6に記載
    の方法。
  27. 【請求項27】オブジェクト識別子をクラスにマッピン
    グするステップと、 クラス及びクラス−サーバ割り当てテーブルに基づいて
    サーバを割り当てるステップをさらに含む請求項6に記
    載の方法。
  28. 【請求項28】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にアービトレータにマッピング要求を発行
    するステップと、 前記マッピング・ステップに応答してクラス−サーバ割
    り当てテーブルを更新するステップを含む、サーバ選択
    のためのリクエスタ・ノードでクラス−サーバ割り当て
    テーブルを保守するステップを含む、割り当て要求トラ
    フィックを軽減するリクエスタでのサーバ選択方法が提
    供される請求項6に記載の方法。
  29. 【請求項29】各オブジェクト要求のオブジェクト識別
    子をクラスにマッピングするステップと、 クラス−サーバ割り当てテーブルに有効なサーバ割り当
    てがない場合にサーバを選択するステップと、 前記選択ステップに応答してクラス−サーバ割り当てテ
    ーブルを選択したサーバで更新するステップを含む、サ
    ーバ選択のためのリクエスタ・ノードでクラス−サーバ
    割り当てテーブルを保守するステップを含む、割り当て
    要求トラフィックを軽減するリクエスタでのサーバ選択
    方法が提供される請求項6に記載の方法。
  30. 【請求項30】サーバ・ノードの集合への要求をクラス
    タ内の異なるサーバに割り当てることができるサーバ・
    ノードの集合の動的なルーティング方法であって、 リクエスタがリクエスタ識別子またはIPアドレスのい
    ずれかを含むマッピング要求を定期的にサーバに送信す
    るステップと、 前記のリクエスタ識別子またはIPアドレスのいずれか
    をリクエスタ負荷及びサーバ容量のいずれかに基づいて
    サーバ・ノードの集合内のサーバにマッピングするステ
    ップと、 前記マッピング・ステップに応答してサーバ・マッピン
    グをすべてのサーバに送信するステップと、 サーバのいずれかがそのサーバに割り当てられていない
    リクエスタから要求を受信した場合に、サーバがリクエ
    スタにリクエスタ−サーバ割り当ての変更を通知するス
    テップを含む方法。
  31. 【請求項31】リクエスタに通知する前記ステップが、
    サーバが要求を処理するステップをさらに含む請求項3
    0に記載の方法。
  32. 【請求項32】リクエスタ識別子またはIPアドレスを
    クラスに区画化するステップと、 アービトレータ・サーバとサーバの集合にあるクラス−
    サーバ割り当てテーブルを保守するステップをさらに含
    む請求項30に記載の方法。
  33. 【請求項33】アービトレータ・サーバがインターネッ
    ト環境のDNSを含む請求項32に記載の方法。
  34. 【請求項34】オブジェクト識別子またはIPアドレス
    の階層マッピングに従ってサーバを割り当てるステップ
    をさらに含む請求項3に記載の方法。
  35. 【請求項35】リクエスタ識別子をクラスにマッピング
    し、クラスに基づいてサーバを割り当てるステップをさ
    らに含む請求項3に記載の方法。
  36. 【請求項36】サーバが更新されたメタ情報をリクエス
    タへ送信し、リクエスタが割り当てを更新するステップ
    をさらに含む請求項3に記載の方法。
  37. 【請求項37】マシン上で実行され、オブジェクト要求
    を処理するサーバ・ノードの集合でオブジェクト要求を
    動的にルーティングする方法ステップを実行する命令プ
    ログラムを明らかに実施したマシン可読プログラム記憶
    装置であって、前記方法ステップが、 メタ情報を要求されたオブジェクトに便乗させるステッ
    プと、 メタ情報に従ってサーバ割り当てに対するルーティング
    情報を動的に更新するステップを含むプログラム記憶装
    置。
  38. 【請求項38】マシン上で実行され、オブジェクト要求
    を処理するサーバ・ノードの集合でオブジェクト要求を
    動的にルーティングする方法ステップを実行する命令プ
    ログラムを明らかに実施したマシン可読プログラム記憶
    装置であって、前記方法ステップが、 要求されたオブジェクトのオブジェクト識別子に従って
    サーバを割り当てるステップと、 前記割り当てステップに応答して、更新されたサーバ割
    り当てをオブジェクト・リクエスタに通知するステップ
    を含むプログラム記憶装置。
  39. 【請求項39】マシン上で実行され、オブジェクト要求
    を処理する複数のウェブ・サーバ・ノードでオブジェク
    ト要求を動的にルーティングする方法ステップを実行す
    る命令プログラムを明らかに実施したマシン可読プログ
    ラム記憶装置であって、前記方法ステップが、 同じホスト名またはアドレスに向けられたオブジェクト
    要求を、要求されたオブジェクトの識別子に従ってクラ
    スタ内の異なるサーバに割り当てるステップと、 更新されたサーバ割り当てを、オブジェクト・リクエス
    タに通知するステップと、 オブジェクト・リクエスタが後続のオブジェクト要求に
    対する要求されたオブジェクトの更新されたサーバ割り
    当てを動的に保守するステップを含むプログラム記憶装
    置。
  40. 【請求項40】マシン上で実行され、オブジェクト要求
    を処理するサーバ・ノードの集合でオブジェクト要求を
    動的にルーティングする方法ステップを実行する命令プ
    ログラムを明らかに実施したマシン可読プログラム記憶
    装置であって、前記方法ステップが、 リクエスタがリクエスタ識別子またはIPアドレスのい
    ずれかを含むマッピング要求を定期的にサーバに送信す
    るステップと、 前記のリクエスタ識別子またはIPアドレスのいずれか
    をリクエスタ負荷及びサーバ容量のいずれかに基づいて
    サーバ・ノードの集合内のサーバにマッピングするステ
    ップと、 前記マッピング・ステップに応答してサーバ・マッピン
    グをすべてのサーバに送信するステップと、サーバのい
    ずれかがそのサーバに割り当てられていないリクエスタ
    から要求を受信した場合に、サーバがリクエスタにリク
    エスタ−サーバ割り当ての変更を通知するステップを含
    むプログラム記憶装置。
JP14096498A 1997-05-30 1998-05-22 動的ルーティング方法及びプログラム記憶装置 Expired - Lifetime JP2970760B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/866461 1997-05-30
US08/866,461 US6351775B1 (en) 1997-05-30 1997-05-30 Loading balancing across servers in a computer network

Publications (2)

Publication Number Publication Date
JPH114261A true JPH114261A (ja) 1999-01-06
JP2970760B2 JP2970760B2 (ja) 1999-11-02

Family

ID=25347676

Family Applications (1)

Application Number Title Priority Date Filing Date
JP14096498A Expired - Lifetime JP2970760B2 (ja) 1997-05-30 1998-05-22 動的ルーティング方法及びプログラム記憶装置

Country Status (5)

Country Link
US (1) US6351775B1 (ja)
JP (1) JP2970760B2 (ja)
KR (1) KR100318779B1 (ja)
CN (1) CN1113503C (ja)
TW (1) TW451117B (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127320A (ja) * 1997-07-03 1999-01-29 Fujitsu Ltd パケット中継制御方法,パケット中継装置およびプログラム記憶媒体
KR20030021114A (ko) * 2001-09-05 2003-03-12 주식회사 미리텍 부하분산기
JP2003521067A (ja) * 2000-01-28 2003-07-08 ウィリアムズ コミュニケーションズ, エルエルシー 起点サーバとクライアントとの間のメディアリソースリクエストおよび/または応答を書き換えるシステムおよび方法
US7107348B2 (en) 2001-03-27 2006-09-12 Fujitsu Limited Packet relay processing apparatus
US7389510B2 (en) 2003-11-06 2008-06-17 International Business Machines Corporation Load balancing of servers in a cluster
JP2008536229A (ja) * 2005-04-14 2008-09-04 インターナショナル・ビジネス・マシーンズ・コーポレーション 遠隔呼び出しパフォーマンスを向上する多重レベル・キャッシュの装置、方法、及びプログラム製品
US7565432B2 (en) 2001-04-02 2009-07-21 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7817647B2 (en) 2005-04-22 2010-10-19 Microsoft Corporation Flower-petal resolutions for PNRP
WO2012165892A2 (ko) * 2011-06-02 2012-12-06 주식회사 비씨클라우드 동적 웹 라우팅 방법
US8510372B2 (en) 2009-08-10 2013-08-13 Hitachi, Ltd. Gateway system and control method

Families Citing this family (382)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6026452A (en) * 1997-02-26 2000-02-15 Pitts; William Michael Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data
US6718387B1 (en) * 1997-12-10 2004-04-06 Sun Microsystems, Inc. Reallocating address spaces of a plurality of servers using a load balancing policy and a multicast channel
US6185598B1 (en) * 1998-02-10 2001-02-06 Digital Island, Inc. Optimized network resource location
US8060613B2 (en) * 1998-02-10 2011-11-15 Level 3 Communications, Llc Resource invalidation in a content delivery network
US6963914B1 (en) * 1998-09-01 2005-11-08 Lucent Technologies Inc. Method and apparatus for retrieving a network file using a logical reference
US6535509B2 (en) 1998-09-28 2003-03-18 Infolibria, Inc. Tagging for demultiplexing in a network traffic server
US6205477B1 (en) * 1998-10-20 2001-03-20 Cisco Technology, Inc. Apparatus and method for performing traffic redirection in a distributed system using a portion metric
JP2000172657A (ja) * 1998-12-08 2000-06-23 Fujitsu Ltd 分散処理システム、分散処理方法、その方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体、サーバ装置およびクライアント装置
EP1860519B1 (en) * 1999-02-26 2011-07-27 Henry Haugland Mass Generation of Individual Virtual Servers, Virtual Web Sites and Virtual Web Objects
US8375127B1 (en) * 1999-03-31 2013-02-12 International Business Machines Corporation Method and system for using virtual URLs for load balancing
US6505254B1 (en) * 1999-04-19 2003-01-07 Cisco Technology, Inc. Methods and apparatus for routing requests in a network
WO2000068856A2 (en) 1999-05-11 2000-11-16 Webvan Group, Inc. Electronic commerce enabled delivery system and method
US7370005B1 (en) * 1999-05-11 2008-05-06 Peter Ham Inventory replication based upon order fulfillment rates
US7177825B1 (en) 1999-05-11 2007-02-13 Borders Louis H Integrated system for ordering, fulfillment, and delivery of consumer products using a data network
US6888836B1 (en) * 1999-05-26 2005-05-03 Hewlett-Packard Development Company, L.P. Method for allocating web sites on a web hosting cluster
US20010049741A1 (en) * 1999-06-18 2001-12-06 Bryan D. Skene Method and system for balancing load distribution on a wide area network
US7146354B1 (en) * 1999-06-18 2006-12-05 F5 Networks, Inc. Method and system for network load balancing with a compound data structure
US6970933B1 (en) 1999-07-15 2005-11-29 F5 Networks, Inc. Enabling application level persistence between a server and another resource over a network
US7287084B1 (en) 1999-07-15 2007-10-23 F5 Networks, Inc. Enabling encryption of application level persistence between a server and a client
US7346695B1 (en) 2002-10-28 2008-03-18 F5 Networks, Inc. System and method for performing application level persistence
US6615235B1 (en) * 1999-07-22 2003-09-02 International Business Machines Corporation Method and apparatus for cache coordination for multiple address spaces
US6567857B1 (en) * 1999-07-29 2003-05-20 Sun Microsystems, Inc. Method and apparatus for dynamic proxy insertion in network traffic flow
US6629148B1 (en) * 1999-08-27 2003-09-30 Platform Computing Corporation Device and method for balancing loads between different paths in a computer system
US6772225B1 (en) * 1999-09-30 2004-08-03 International Business Machines Corporation Policy enabled web caching
US7386432B1 (en) * 1999-11-01 2008-06-10 Medical Learning Co., Inc./Web Simulator Web simulator
KR100333632B1 (ko) * 1999-11-10 2002-04-25 백덕호 동적 아이피 주소 기반의 서버 접속 방법 및 시스템
US6681251B1 (en) * 1999-11-18 2004-01-20 International Business Machines Corporation Workload balancing in clustered application servers
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
US6976258B1 (en) 1999-11-30 2005-12-13 Ensim Corporation Providing quality of service guarantees to virtual hosts
US6742039B1 (en) * 1999-12-20 2004-05-25 Intel Corporation System and method for connecting to a device on a protected network
US7117263B1 (en) * 2000-02-01 2006-10-03 Hewlett-Packard Development Company, L.P. Apparatus and method for processing requests from an external queue in a TCP/IP-based application system
US6711607B1 (en) 2000-02-04 2004-03-23 Ensim Corporation Dynamic scheduling of task streams in a multiple-resource system to ensure task stream quality of service
US6754716B1 (en) 2000-02-11 2004-06-22 Ensim Corporation Restricting communication between network devices on a common network
US6865601B1 (en) * 2000-02-11 2005-03-08 Hewlett-Packard Development Company L.P. Method for allocating web sites on a web server cluster based on balancing memory and load requirements
US7343421B1 (en) * 2000-02-14 2008-03-11 Digital Asset Enterprises Llc Restricting communication of selected processes to a set of specific network addresses
US6748593B1 (en) 2000-02-17 2004-06-08 International Business Machines Corporation Apparatus and method for starvation load balancing using a global run queue in a multiple run queue system
US6658449B1 (en) * 2000-02-17 2003-12-02 International Business Machines Corporation Apparatus and method for periodic load balancing in a multiple run queue system
US7506034B2 (en) * 2000-03-03 2009-03-17 Intel Corporation Methods and apparatus for off loading content servers through direct file transfer from a storage center to an end-user
US7428540B1 (en) 2000-03-03 2008-09-23 Intel Corporation Network storage system
US7203731B1 (en) 2000-03-03 2007-04-10 Intel Corporation Dynamic replication of files in a network storage system
US6952737B1 (en) * 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
US7281168B1 (en) 2000-03-03 2007-10-09 Intel Corporation Failover architecture for local devices that access remote storage
US7266555B1 (en) 2000-03-03 2007-09-04 Intel Corporation Methods and apparatus for accessing remote storage through use of a local device
US6948003B1 (en) 2000-03-15 2005-09-20 Ensim Corporation Enabling a service provider to provide intranet services
US6862623B1 (en) * 2000-04-14 2005-03-01 Microsoft Corporation Capacity planning for server resources
AU2001257058A1 (en) * 2000-04-17 2001-10-30 Circadence Corporation System and method for on-network storage services
US7240283B1 (en) 2000-11-10 2007-07-03 Narasimha Rao Paila Data transmission and rendering techniques implemented over a client-server system
US6985937B1 (en) 2000-05-11 2006-01-10 Ensim Corporation Dynamically modifying the resources of a virtual server
US6907421B1 (en) 2000-05-16 2005-06-14 Ensim Corporation Regulating file access rates according to file type
US7299291B1 (en) * 2000-05-18 2007-11-20 Akamai Technologies, Inc. Client-side method for identifying an optimum server
US7020698B2 (en) * 2000-05-31 2006-03-28 Lucent Technologies Inc. System and method for locating a closest server in response to a client domain name request
US6751646B1 (en) * 2000-06-01 2004-06-15 Sprint Communications Company L.P. Method and apparatus for implementing CORBA compliant name services incorporating load balancing features
US8281022B1 (en) * 2000-06-30 2012-10-02 Emc Corporation Method and apparatus for implementing high-performance, scaleable data processing and storage systems
US7318107B1 (en) 2000-06-30 2008-01-08 Intel Corporation System and method for automatic stream fail-over
US7099915B1 (en) * 2000-06-30 2006-08-29 Cisco Technology, Inc. Server load balancing method and system
US7020709B1 (en) * 2000-06-30 2006-03-28 Intel Corporation System and method for fault tolerant stream splitting
US7143024B1 (en) 2000-07-07 2006-11-28 Ensim Corporation Associating identifiers with virtual processes
US6909691B1 (en) 2000-08-07 2005-06-21 Ensim Corporation Fairly partitioning resources while limiting the maximum fair share
WO2002019716A1 (en) * 2000-08-31 2002-03-07 Mixed Signals Technologies, Inc. Systems and method for interacting with users over a communications network
US7065712B2 (en) * 2000-09-01 2006-06-20 Nippon Telegraph And Telephone Corp. Scheme for posting advertisements on comprehensive information viewing device
US6871210B1 (en) * 2000-09-05 2005-03-22 International Business Machines Corporation Automatic allocation of least loaded boot server to PXE client on a network VIA DHCP server
US7707305B2 (en) * 2000-10-17 2010-04-27 Cisco Technology, Inc. Methods and apparatus for protecting against overload conditions on nodes of a distributed network
US7383355B1 (en) * 2000-11-01 2008-06-03 Sun Microsystems, Inc. Systems and methods for providing centralized management of heterogeneous distributed enterprise application integration objects
US7089293B2 (en) * 2000-11-02 2006-08-08 Sun Microsystems, Inc. Switching system method for discovering and accessing SCSI devices in response to query
KR100459951B1 (ko) * 2000-11-04 2004-12-03 주식회사 다산네트웍스 맥 어드레스 치환을 이용한 서버 로드 밸런싱 방법 및 장치
KR100454980B1 (ko) * 2000-11-13 2004-11-08 주식회사 다산네트웍스 가상 드라이버를 이용한 라우터 및 라우팅방법
WO2002049278A2 (en) * 2000-11-22 2002-06-20 Azoth Technologies, Inc. Method, architecture, and apparatus for dynamic content translation and switching
US6980521B1 (en) 2000-11-29 2005-12-27 Cisco Technology, Inc. Method and apparatus for per session load balancing with improved load sharing in a packet switched network
US20020065922A1 (en) * 2000-11-30 2002-05-30 Vijnan Shastri Method and apparatus for selection and redirection of an existing client-server connection to an alternate data server hosted on a data packet network (DPN) based on performance comparisons
US6904602B1 (en) 2000-11-30 2005-06-07 Sprint Communications Company L.P. Method and apparatus for implementing persistence in trader services associated with a computer system
US7219354B1 (en) 2000-12-22 2007-05-15 Ensim Corporation Virtualizing super-user privileges for multiple virtual processes
US7233914B1 (en) 2000-12-27 2007-06-19 Joyo Wijaya Technique for implementing item substitution for unavailable items relating to a customer order
US7266556B1 (en) 2000-12-29 2007-09-04 Intel Corporation Failover architecture for a distributed storage system
US7587500B2 (en) * 2001-01-10 2009-09-08 Xcelera Distributed selection of a content server
US7035911B2 (en) 2001-01-12 2006-04-25 Epicrealm, Licensing Llc Method and system for community data caching
US20020147784A1 (en) * 2001-04-06 2002-10-10 Stephen Gold User account handling on aggregated group of multiple headless computer entities
US7308423B1 (en) 2001-03-19 2007-12-11 Franklin Goodhue Woodward Technique for handling sales of regulated items implemented over a data network
US7555561B2 (en) * 2001-03-19 2009-06-30 The Aerospace Corporation Cooperative adaptive web caching routing and forwarding web content data broadcasting method
US6871347B2 (en) * 2001-04-13 2005-03-22 Interland, Inc. Method and apparatus for facilitating load balancing across name servers
US7571215B2 (en) * 2001-07-16 2009-08-04 Bea Systems, Inc. Data replication protocol
JP2003029932A (ja) * 2001-07-18 2003-01-31 Hitachi Ltd ディスク制御装置
TW576061B (en) * 2001-08-13 2004-02-11 Via Tech Inc Device and method for load balancing of packet switching
US7490161B2 (en) * 2001-08-22 2009-02-10 Nokia Inc. Method and system for implementing OSPF redundancy
US7028030B2 (en) 2001-08-30 2006-04-11 Bea Systems, Inc. Cluster caching with concurrency checking
US20030046230A1 (en) * 2001-08-30 2003-03-06 Jacobs Dean Bernard Method for maintaining account consistency
AU2002313826B2 (en) * 2001-08-30 2008-01-24 Oracle International Corporation Cluster caching with concurrency checking
US7113980B2 (en) * 2001-09-06 2006-09-26 Bea Systems, Inc. Exactly once JMS communication
KR100418562B1 (ko) * 2001-09-06 2004-02-14 주식회사 기지소프트 다중전송을 위한 중계경로 생성방법
US6993566B2 (en) * 2001-09-13 2006-01-31 International Business Machines Corporation Entity self-clustering and host-entity communication such as via shared memory
US20030055971A1 (en) * 2001-09-19 2003-03-20 Menon Rama R. Providing load balancing in delivering rich media
US7260644B1 (en) * 2001-09-26 2007-08-21 Cisco Technology, Inc. Apparatus and method for re-directing a client session
US6968368B2 (en) * 2001-09-28 2005-11-22 Rockwell Electronic Commerce Technologies, Llc Streaming announcements to agents of an ACD
US7283538B2 (en) * 2001-10-12 2007-10-16 Vormetric, Inc. Load balanced scalable network gateway processor architecture
US7958199B2 (en) * 2001-11-02 2011-06-07 Oracle America, Inc. Switching systems and methods for storage management in digital networks
US7149809B2 (en) * 2001-11-13 2006-12-12 One Touch Systems System for reducing server loading during content delivery
US20030105830A1 (en) * 2001-12-03 2003-06-05 Duc Pham Scalable network media access controller and methods
US20030105797A1 (en) * 2001-12-04 2003-06-05 Dan Dolev Dynamic load balancing among a set of servers
KR100426306B1 (ko) * 2001-12-11 2004-04-08 한국전자통신연구원 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법
US7580972B2 (en) * 2001-12-12 2009-08-25 Valve Corporation Method and system for controlling bandwidth on client and server
US7373406B2 (en) 2001-12-12 2008-05-13 Valve Corporation Method and system for effectively communicating file properties and directory structures in a distributed file system
US8108687B2 (en) 2001-12-12 2012-01-31 Valve Corporation Method and system for granting access to system and content
US7243226B2 (en) 2001-12-12 2007-07-10 Valve Corporation Method and system for enabling content security in a distributed system
US7290040B2 (en) * 2001-12-12 2007-10-30 Valve Corporation Method and system for load balancing an authentication system
US6925461B2 (en) * 2001-12-17 2005-08-02 At&T Corp. Parallel random proxy usage for large scale web access
US7360034B1 (en) * 2001-12-28 2008-04-15 Network Appliance, Inc. Architecture for creating and maintaining virtual filers on a filer
KR100827493B1 (ko) * 2002-01-04 2008-05-06 엘지전자 주식회사 애니캐스트 서비스 지원 방법 및 그 시스템
KR100428767B1 (ko) * 2002-01-11 2004-04-28 삼성전자주식회사 트래픽 정보를 이용한 가입자 라우팅 설정 방법 및 이를위한 기록매체
US7356592B2 (en) * 2002-01-24 2008-04-08 International Business Machines Corporation Method and apparatus for web farm traffic control
US9167036B2 (en) 2002-02-14 2015-10-20 Level 3 Communications, Llc Managed object replication and delivery
DE10206903A1 (de) * 2002-02-19 2003-09-04 Siemens Ag Softwareapplikation, Softwarearchitektur und Verfahren zur Erstellung von Softwareapplikationen, insbesondere für MES-Systeme
AU2003217599A1 (en) * 2002-02-22 2003-09-09 Bea Systems, Inc. System and method for using a data replication service to manage a configuration repository
US7512702B1 (en) * 2002-03-19 2009-03-31 Cisco Technology, Inc. Method and apparatus providing highly scalable server load balancing
US7047315B1 (en) * 2002-03-19 2006-05-16 Cisco Technology, Inc. Method providing server affinity and client stickiness in a server load balancing device without TCP termination and without keeping flow states
US7962630B2 (en) * 2002-05-10 2011-06-14 Oracle International Corporation Method and mechanism for implementing tagged session pools
US7254639B1 (en) 2002-05-20 2007-08-07 Cisco Technology, Inc. Methods and apparatus for directing packets among a group of processors
US7418492B1 (en) 2002-06-20 2008-08-26 P-Cube Ltd. System and a method for testing network communication devices
US7380002B2 (en) * 2002-06-28 2008-05-27 Microsoft Corporation Bi-directional affinity within a load-balancing multi-node network interface
US20040010786A1 (en) * 2002-07-11 2004-01-15 Microsoft Corporation System and method for automatically upgrading a software application
US6931530B2 (en) 2002-07-22 2005-08-16 Vormetric, Inc. Secure network file access controller implementing access control and auditing
US7334124B2 (en) * 2002-07-22 2008-02-19 Vormetric, Inc. Logical access block processing protocol for transparent secure file storage
US6678828B1 (en) * 2002-07-22 2004-01-13 Vormetric, Inc. Secure network file access control system
US6944715B2 (en) * 2002-08-13 2005-09-13 International Business Machines Corporation Value based caching
US7185067B1 (en) * 2002-08-27 2007-02-27 Cisco Technology, Inc. Load balancing network access requests
US7430755B1 (en) 2002-09-03 2008-09-30 Fs Networks, Inc. Method and system for providing persistence in a secure network access
US20040131059A1 (en) * 2002-09-19 2004-07-08 Ram Ayyakad Single-pass packet scan
US7216164B1 (en) 2002-10-09 2007-05-08 Cisco Technology, Inc. Methods and apparatus for determining the performance of a server
US7143288B2 (en) * 2002-10-16 2006-11-28 Vormetric, Inc. Secure file system server architecture and methods
US7774325B2 (en) * 2002-10-17 2010-08-10 Intel Corporation Distributed network attached storage system
KR100472952B1 (ko) * 2002-10-30 2005-03-10 한국전자통신연구원 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법
US7386611B2 (en) * 2002-12-10 2008-06-10 International Business Machines Corporation Apparatus and methods for co-location and offloading of web site traffic based on traffic pattern recognition
US7353276B2 (en) * 2003-02-13 2008-04-01 Microsoft Corporation Bi-directional affinity
US7979694B2 (en) * 2003-03-03 2011-07-12 Cisco Technology, Inc. Using TCP to authenticate IP source addresses
JP4038147B2 (ja) * 2003-04-17 2008-01-23 株式会社日立製作所 情報処理システム
US7185096B2 (en) * 2003-05-27 2007-02-27 Sun Microsystems, Inc. System and method for cluster-sensitive sticky load balancing
US6973654B1 (en) * 2003-05-27 2005-12-06 Microsoft Corporation Systems and methods for the repartitioning of data
US7676551B1 (en) * 2003-06-25 2010-03-09 Microsoft Corporation Lookup partitioning storage system and method
US20050060391A1 (en) * 2003-09-16 2005-03-17 International Business Machines Corporation Autonomic cluster-based optimization
US7269603B1 (en) 2003-12-17 2007-09-11 Sprint Communications Company L.P. Enterprise naming service system and method
US7693991B2 (en) * 2004-01-16 2010-04-06 International Business Machines Corporation Virtual clustering and load balancing servers
CN100370770C (zh) * 2004-03-03 2008-02-20 华为技术有限公司 实现网络长连接倒换的方法
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
CA2558892A1 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for a self-optimizing reservation in time of compute resources
US7428588B2 (en) * 2004-04-08 2008-09-23 International Business Machines Corporation Method for distributing and geographically load balancing location aware communication device client-proxy applications
US8057307B2 (en) * 2004-04-08 2011-11-15 International Business Machines Corporation Handling of players and objects in massive multi-player on-line games
US8230085B2 (en) * 2004-04-12 2012-07-24 Netapp, Inc. System and method for supporting block-based protocols on a virtual storage appliance executing within a physical storage appliance
US20050232408A1 (en) * 2004-04-15 2005-10-20 Hodson Jeffrey D System for contact system entities beyond end-points to track state availability and capabilites by implementing SIP presence technologies
US7434087B1 (en) 2004-05-21 2008-10-07 Sun Microsystems, Inc. Graceful failover using augmented stubs
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US7757236B1 (en) 2004-06-28 2010-07-13 Oracle America, Inc. Load-balancing framework for a cluster
US8601101B1 (en) 2004-06-28 2013-12-03 Oracle America, Inc. Cluster communications framework using peer-to-peer connections
JP4526886B2 (ja) * 2004-07-05 2010-08-18 株式会社日立製作所 無線装置、無線通信システムの制御方法、及び無線通信システム
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
US20060089965A1 (en) * 2004-10-26 2006-04-27 International Business Machines Corporation Dynamic linkage of an application server and a Web server
US7788671B2 (en) * 2004-11-01 2010-08-31 International Business Machines Corporation On-demand application resource allocation through dynamic reconfiguration of application cluster size and placement
CA2827035A1 (en) 2004-11-08 2006-05-18 Adaptive Computing Enterprises, Inc. System and method of providing system jobs within a compute environment
US7540025B2 (en) * 2004-11-18 2009-05-26 Cisco Technology, Inc. Mitigating network attacks using automatic signature generation
CN100391211C (zh) * 2004-11-19 2008-05-28 清华大学 一种分层网络的路由域关系管理及调整方法
US7568224B1 (en) 2004-12-06 2009-07-28 Cisco Technology, Inc. Authentication of SIP and RTP traffic
US7596618B2 (en) * 2004-12-07 2009-09-29 Hewlett-Packard Development Company, L.P. Splitting a workload of a node
US8782231B2 (en) * 2005-03-16 2014-07-15 Adaptive Computing Enterprises, Inc. Simple integration of on-demand compute environment
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US7620733B1 (en) 2005-03-30 2009-11-17 Cisco Technology, Inc. DNS anti-spoofing using UDP
CA2603577A1 (en) 2005-04-07 2006-10-12 Cluster Resources, Inc. On-demand access to compute resources
US8782120B2 (en) 2005-04-07 2014-07-15 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
US7693050B2 (en) * 2005-04-14 2010-04-06 Microsoft Corporation Stateless, affinity-preserving load balancing
US7730531B2 (en) * 2005-04-15 2010-06-01 Microsoft Corporation System and method for detection of artificially generated system load
US20070143460A1 (en) * 2005-12-19 2007-06-21 International Business Machines Corporation Load-balancing metrics for adaptive dispatching of long asynchronous network requests
US20070162702A1 (en) * 2006-01-06 2007-07-12 Yang Lei System and method for acquiring data from a cache in a distributed network
US9128766B1 (en) * 2006-04-24 2015-09-08 Hewlett-Packard Development Company, L.P. Computer workload redistribution schedule
US7970856B2 (en) * 2006-06-02 2011-06-28 International Business Machines Corporation System and method for managing and distributing assets over a network
US8566452B1 (en) 2006-08-03 2013-10-22 F5 Networks, Inc. Intelligent HTTP based load-balancing, persistence, and application traffic management of SSL VPN tunnels
US8799918B2 (en) * 2006-09-11 2014-08-05 Microsoft Corporation Dynamic network load balancing using roundtrip heuristic
US8156557B2 (en) * 2007-01-04 2012-04-10 Cisco Technology, Inc. Protection against reflection distributed denial of service attacks
US20080172679A1 (en) * 2007-01-11 2008-07-17 Jinmei Shen Managing Client-Server Requests/Responses for Failover Memory Managment in High-Availability Systems
CN101296176B (zh) * 2007-04-25 2010-12-22 阿里巴巴集团控股有限公司 一种基于群集的数据处理方法和装置
US8874518B2 (en) 2007-06-06 2014-10-28 International Business Machines Corporation System, method and program product for backing up data
US8028090B2 (en) * 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8645524B2 (en) 2007-09-10 2014-02-04 Microsoft Corporation Techniques to allocate virtual network addresses
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
AU2007231759B2 (en) * 2007-10-30 2011-05-26 Canon Kabushiki Kaisha Adaptive content caching
US8127235B2 (en) 2007-11-30 2012-02-28 International Business Machines Corporation Automatic increasing of capacity of a virtual space in a virtual world
ES2387625T3 (es) * 2007-12-17 2012-09-27 Nokia Siemens Networks Oy Encaminamiento de consulta en un sistema de base de datos distribuida
US20090164919A1 (en) 2007-12-24 2009-06-25 Cary Lee Bates Generating data for managing encounters in a virtual world environment
US8015144B2 (en) 2008-02-26 2011-09-06 Microsoft Corporation Learning transportation modes from raw GPS data
US8972177B2 (en) 2008-02-26 2015-03-03 Microsoft Technology Licensing, Llc System for logging life experiences using geographic cues
US8966121B2 (en) * 2008-03-03 2015-02-24 Microsoft Corporation Client-side management of domain name information
US7930427B2 (en) * 2008-03-03 2011-04-19 Microsoft Corporation Client-side load balancing
US7991879B2 (en) 2008-03-03 2011-08-02 Microsoft Corporation Internet location coordinate enhanced domain name system
US8458298B2 (en) * 2008-03-03 2013-06-04 Microsoft Corporation Failover in an internet location coordinate enhanced domain name system
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8392482B1 (en) * 2008-03-31 2013-03-05 Amazon Technologies, Inc. Versioning of database partition maps
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US8156243B2 (en) * 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US8321568B2 (en) * 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content management
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US7962597B2 (en) 2008-03-31 2011-06-14 Amazon Technologies, Inc. Request routing based on class
US8606996B2 (en) 2008-03-31 2013-12-10 Amazon Technologies, Inc. Cache optimization
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US9762692B2 (en) * 2008-04-04 2017-09-12 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US8930538B2 (en) 2008-04-04 2015-01-06 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US10924573B2 (en) 2008-04-04 2021-02-16 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US8881167B2 (en) * 2008-04-28 2014-11-04 International Business Machines Corporation Load balancing in network based telephony applications
US9071608B2 (en) 2008-04-28 2015-06-30 International Business Machines Corporation Method and apparatus for load balancing in network based telephony application
US7925785B2 (en) 2008-06-27 2011-04-12 Microsoft Corporation On-demand capacity management
US9407681B1 (en) 2010-09-28 2016-08-02 Amazon Technologies, Inc. Latency measurement in resource requests
US9912740B2 (en) 2008-06-30 2018-03-06 Amazon Technologies, Inc. Latency measurement in resource requests
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
EP2184681A1 (en) * 2008-10-31 2010-05-12 HSBC Holdings plc Capacity control
US8073940B1 (en) 2008-11-17 2011-12-06 Amazon Technologies, Inc. Managing content delivery network service providers
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8060616B1 (en) 2008-11-17 2011-11-15 Amazon Technologies, Inc. Managing CDN registration by a storage provider
US8065417B1 (en) 2008-11-17 2011-11-22 Amazon Technologies, Inc. Service provider registration by a content broker
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
US9063226B2 (en) * 2009-01-14 2015-06-23 Microsoft Technology Licensing, Llc Detecting spatial outliers in a location entity dataset
US8336049B2 (en) * 2009-02-05 2012-12-18 Vmware, Inc. Virtual machine utility computing method and system
JP5081847B2 (ja) * 2009-02-20 2012-11-28 株式会社日立製作所 マルチプロセッサによるパケット処理装置およびパケット処理方法
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
US8397073B1 (en) 2009-09-04 2013-03-12 Amazon Technologies, Inc. Managing secure content in a content delivery network
US9009177B2 (en) 2009-09-25 2015-04-14 Microsoft Corporation Recommending points of interests in a region
US8433771B1 (en) 2009-10-02 2013-04-30 Amazon Technologies, Inc. Distribution network with forward resource propagation
US8560604B2 (en) 2009-10-08 2013-10-15 Hola Networks Ltd. System and method for providing faster and more efficient data communication
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
US9495338B1 (en) 2010-01-28 2016-11-15 Amazon Technologies, Inc. Content distribution network
US9205328B2 (en) 2010-02-18 2015-12-08 Activision Publishing, Inc. Videogame system and method that enables characters to earn virtual fans by completing secondary objectives
US8612134B2 (en) * 2010-02-23 2013-12-17 Microsoft Corporation Mining correlation between locations using location history
US9261376B2 (en) * 2010-02-24 2016-02-16 Microsoft Technology Licensing, Llc Route computation based on route-oriented vehicle trajectories
US10288433B2 (en) * 2010-02-25 2019-05-14 Microsoft Technology Licensing, Llc Map-matching for low-sampling-rate GPS trajectories
JP5521675B2 (ja) * 2010-03-19 2014-06-18 富士通株式会社 処理割当装置、処理割当方法及びコンピュータプログラム
US9667569B1 (en) * 2010-04-29 2017-05-30 Amazon Technologies, Inc. System and method for adaptive server shielding
US8719198B2 (en) 2010-05-04 2014-05-06 Microsoft Corporation Collaborative location and activity recommendations
US9682324B2 (en) 2010-05-12 2017-06-20 Activision Publishing, Inc. System and method for enabling players to participate in asynchronous, competitive challenges
US9593957B2 (en) 2010-06-04 2017-03-14 Microsoft Technology Licensing, Llc Searching similar trajectories by locations
US8904395B2 (en) * 2010-07-26 2014-12-02 International Business Machines Corporation Scheduling events in a virtualized computing environment based on a cost of updating scheduling times or mapping resources to the event
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US9003035B1 (en) 2010-09-28 2015-04-07 Amazon Technologies, Inc. Point of presence management in request routing
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US8819283B2 (en) 2010-09-28 2014-08-26 Amazon Technologies, Inc. Request routing in a networked environment
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US8452874B2 (en) 2010-11-22 2013-05-28 Amazon Technologies, Inc. Request routing processing
US9391949B1 (en) 2010-12-03 2016-07-12 Amazon Technologies, Inc. Request routing processing
US8626950B1 (en) 2010-12-03 2014-01-07 Amazon Technologies, Inc. Request routing processing
US8755283B2 (en) 2010-12-17 2014-06-17 Microsoft Corporation Synchronizing state among load balancer components
US8825813B2 (en) 2010-12-28 2014-09-02 Microsoft Corporation Distributed network coordinate system based on network performance
US8612550B2 (en) 2011-02-07 2013-12-17 Microsoft Corporation Proxy-based cache content distribution and affinity
US8732268B2 (en) 2011-04-19 2014-05-20 Microsoft Corporation Global traffic management using modified hostname
US10467042B1 (en) 2011-04-27 2019-11-05 Amazon Technologies, Inc. Optimized deployment based upon customer locality
US9055076B1 (en) 2011-06-23 2015-06-09 Amazon Technologies, Inc. System and method for distributed load balancing with load balancer clients for hosts
US8812727B1 (en) 2011-06-23 2014-08-19 Amazon Technologies, Inc. System and method for distributed load balancing with distributed direct server return
KR101078227B1 (ko) * 2011-06-29 2011-11-01 (주)토마토시스템 사용자별로 특화된 로직을 제공하는 방법 및 서버시스템
US8966012B2 (en) * 2011-08-31 2015-02-24 Metaswitch Networks Ltd Processing data and operating a communications device
US8533804B2 (en) 2011-09-23 2013-09-10 Loyal3 Holdings, Inc. User login with redirect to home network
US8468129B2 (en) 2011-09-23 2013-06-18 Loyal3 Holdings, Inc. Asynchronous replication of databases of peer networks
US9754226B2 (en) 2011-12-13 2017-09-05 Microsoft Technology Licensing, Llc Urban computing of route-oriented vehicles
US20130166188A1 (en) 2011-12-21 2013-06-27 Microsoft Corporation Determine Spatiotemporal Causal Interactions In Data
US8861527B1 (en) * 2011-12-30 2014-10-14 Emc Corporation Network-assisted routing for topology-aware overlay networks
US8904009B1 (en) 2012-02-10 2014-12-02 Amazon Technologies, Inc. Dynamic content delivery
US10021179B1 (en) 2012-02-21 2018-07-10 Amazon Technologies, Inc. Local resource delivery network
US9172674B1 (en) 2012-03-21 2015-10-27 Amazon Technologies, Inc. Managing request routing information utilizing performance information
KR101358794B1 (ko) 2012-03-28 2014-02-10 에스케이브로드밴드주식회사 이상 패킷 차단 시스템 및 방법
US10623408B1 (en) 2012-04-02 2020-04-14 Amazon Technologies, Inc. Context sensitive object management
KR101619686B1 (ko) 2012-04-25 2016-05-10 엠파이어 테크놀로지 디벨롭먼트 엘엘씨 네트워크 기반 컴퓨팅을 위한 워크로드 예측
US9154551B1 (en) 2012-06-11 2015-10-06 Amazon Technologies, Inc. Processing DNS queries to identify pre-processing information
US8805990B2 (en) 2012-07-12 2014-08-12 Microsoft Corporation Load balancing for single-address tenants
CN103634346B (zh) * 2012-08-23 2018-05-22 腾讯科技(深圳)有限公司 网络数据中心的数据分发方法和系统
US9525659B1 (en) 2012-09-04 2016-12-20 Amazon Technologies, Inc. Request routing utilizing point of presence load information
US9323577B2 (en) 2012-09-20 2016-04-26 Amazon Technologies, Inc. Automated profiling of resource usage
US9135048B2 (en) 2012-09-20 2015-09-15 Amazon Technologies, Inc. Automated profiling of resource usage
US9363154B2 (en) * 2012-09-26 2016-06-07 International Business Machines Corporaion Prediction-based provisioning planning for cloud environments
US9246998B2 (en) 2012-10-16 2016-01-26 Microsoft Technology Licensing, Llc Load balancer bypass
US10205698B1 (en) 2012-12-19 2019-02-12 Amazon Technologies, Inc. Source-dependent address resolution
US10137376B2 (en) 2012-12-31 2018-11-27 Activision Publishing, Inc. System and method for creating and streaming augmented game sessions
CN103118076B (zh) * 2013-01-11 2015-05-13 烽火通信科技股份有限公司 升级服务器集群系统及其负载均衡方法
CN103227838B (zh) * 2013-05-10 2015-09-30 中国工商银行股份有限公司 一种多重负载均衡处理装置与方法
US9229794B1 (en) 2013-05-16 2016-01-05 Ca, Inc. Signaling service interface module
US9294391B1 (en) 2013-06-04 2016-03-22 Amazon Technologies, Inc. Managing network computing components utilizing request routing
US9241044B2 (en) 2013-08-28 2016-01-19 Hola Networks, Ltd. System and method for improving internet communication by using intermediate nodes
US20170011133A1 (en) * 2014-03-31 2017-01-12 Open Garden Inc. System and method for improving webpage loading speeds
US10286326B2 (en) 2014-07-03 2019-05-14 Activision Publishing, Inc. Soft reservation system and method for multiplayer video games
US11351466B2 (en) 2014-12-05 2022-06-07 Activision Publishing, Ing. System and method for customizing a replay of one or more game events in a video game
US10118099B2 (en) 2014-12-16 2018-11-06 Activision Publishing, Inc. System and method for transparently styling non-player characters in a multiplayer video game
US10091096B1 (en) 2014-12-18 2018-10-02 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10033627B1 (en) 2014-12-18 2018-07-24 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US10097448B1 (en) 2014-12-18 2018-10-09 Amazon Technologies, Inc. Routing mode and point-of-presence selection service
US9917738B2 (en) * 2015-01-13 2018-03-13 Accenture Global Services Limited Intelligent device data router
US10225326B1 (en) 2015-03-23 2019-03-05 Amazon Technologies, Inc. Point of presence based data uploading
US9819567B1 (en) 2015-03-30 2017-11-14 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887932B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9887931B1 (en) 2015-03-30 2018-02-06 Amazon Technologies, Inc. Traffic surge management for points of presence
US9832141B1 (en) 2015-05-13 2017-11-28 Amazon Technologies, Inc. Routing based request correlation
US10315113B2 (en) 2015-05-14 2019-06-11 Activision Publishing, Inc. System and method for simulating gameplay of nonplayer characters distributed across networked end user devices
US11057446B2 (en) 2015-05-14 2021-07-06 Bright Data Ltd. System and method for streaming content from multiple servers
US10616179B1 (en) 2015-06-25 2020-04-07 Amazon Technologies, Inc. Selective routing of domain name system (DNS) requests
US9774512B1 (en) 2015-07-08 2017-09-26 Introspec Ltd Measuring server availability and managing traffic in adaptive bitrate media delivery
US10471348B2 (en) 2015-07-24 2019-11-12 Activision Publishing, Inc. System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks
US10097566B1 (en) 2015-07-31 2018-10-09 Amazon Technologies, Inc. Identifying targets of network attacks
US9794281B1 (en) 2015-09-24 2017-10-17 Amazon Technologies, Inc. Identifying sources of network attacks
US9774619B1 (en) 2015-09-24 2017-09-26 Amazon Technologies, Inc. Mitigating network attacks
US9742795B1 (en) 2015-09-24 2017-08-22 Amazon Technologies, Inc. Mitigating network attacks
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10245509B2 (en) 2015-10-21 2019-04-02 Activision Publishing, Inc. System and method of inferring user interest in different aspects of video game streams
US10376781B2 (en) 2015-10-21 2019-08-13 Activision Publishing, Inc. System and method of generating and distributing video game streams
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
FR3046008A1 (fr) * 2015-12-18 2017-06-23 Tdf Systeme de repartition de charge geolocalise
US10187457B1 (en) * 2015-12-23 2019-01-22 Github, Inc. Using read weight affinities to optimize the reading of block cache data
US9578050B1 (en) 2016-01-29 2017-02-21 International Business Machines Corporation Service delivery controller for learning network security services
US9930110B2 (en) * 2016-03-02 2018-03-27 International Business Machines Corporation Dynamic client-based leader election
US10300390B2 (en) 2016-04-01 2019-05-28 Activision Publishing, Inc. System and method of automatically annotating gameplay of a video game based on triggering events
US10075551B1 (en) 2016-06-06 2018-09-11 Amazon Technologies, Inc. Request management for hierarchical cache
US10110694B1 (en) 2016-06-29 2018-10-23 Amazon Technologies, Inc. Adaptive transfer rate for retrieving content from a server
US10540265B2 (en) 2016-06-30 2020-01-21 International Business Machines Corporation Using test workload run facts and problem discovery data as input for business analytics to determine test effectiveness
US10346289B2 (en) 2016-06-30 2019-07-09 International Business Machines Corporation Run time workload threshold alerts for customer profiling visualization
US10380010B2 (en) 2016-06-30 2019-08-13 International Business Machines Corporation Run time and historical workload report scores for customer profiling visualization
US9992086B1 (en) 2016-08-23 2018-06-05 Amazon Technologies, Inc. External health checking of virtual private cloud network environments
US10033691B1 (en) 2016-08-24 2018-07-24 Amazon Technologies, Inc. Adaptive resolution of domain name requests in virtual private cloud network environments
US10664786B2 (en) 2016-09-08 2020-05-26 International Business Machines Corporation Using run time and historical customer profiling and analytics to determine customer test vs. production differences, and to enhance customer test effectiveness
US10521751B2 (en) 2016-09-08 2019-12-31 International Business Machines Corporation Using customer profiling and analytics to understand, rank, score, and visualize best practices
US10467128B2 (en) 2016-09-08 2019-11-05 International Business Machines Corporation Measuring and optimizing test resources and test coverage effectiveness through run time customer profiling and analytics
US10592911B2 (en) 2016-09-08 2020-03-17 International Business Machines Corporation Determining if customer characteristics by customer geography, country, culture or industry may be further applicable to a wider customer set
US10643168B2 (en) 2016-09-08 2020-05-05 International Business Machines Corporation Using customer and workload profiling and analytics to determine, score, and report portability of customer and test environments and workloads
US10423579B2 (en) 2016-09-08 2019-09-24 International Business Machines Corporation Z/OS SMF record navigation visualization tooling
US10586242B2 (en) 2016-09-08 2020-03-10 International Business Machines Corporation Using customer profiling and analytics to understand customer workload complexity and characteristics by customer geography, country and culture
US10684939B2 (en) 2016-09-08 2020-06-16 International Business Machines Corporation Using workload profiling and analytics to understand and score complexity of test environments and workloads
US10394701B2 (en) * 2016-09-14 2019-08-27 International Business Machines Corporation Using run time and historical customer profiling and analytics to iteratively design, develop, test, tune, and maintain a customer-like test workload
US10628840B2 (en) 2016-09-14 2020-04-21 International Business Machines Corporation Using run-time and historical customer profiling and analytics to determine and score customer adoption levels of platform technologies
US10643228B2 (en) 2016-09-14 2020-05-05 International Business Machines Corporation Standardizing customer and test data and information collection for run time and historical profiling environments and workload comparisons
US10621072B2 (en) 2016-09-14 2020-04-14 International Business Machines Corporation Using customer profiling and analytics to more accurately estimate and generate an agile bill of requirements and sprints for customer or test workload port
US10505961B2 (en) 2016-10-05 2019-12-10 Amazon Technologies, Inc. Digitally signed network address
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10938884B1 (en) 2017-01-30 2021-03-02 Amazon Technologies, Inc. Origin server cloaking using virtual private cloud network environments
US10503613B1 (en) 2017-04-21 2019-12-10 Amazon Technologies, Inc. Efficient serving of resources during server unavailability
US10713223B2 (en) 2017-06-01 2020-07-14 Salesforce.Com, Inc. Opportunistic gossip-type dissemination of node metrics in server clusters
US10693951B2 (en) 2017-06-01 2020-06-23 Salesforce.Com, Inc. Decentralized, resource aware load distribution in a distributed system
US11075987B1 (en) 2017-06-12 2021-07-27 Amazon Technologies, Inc. Load estimating content delivery network
US10447648B2 (en) 2017-06-19 2019-10-15 Amazon Technologies, Inc. Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
EP4191981A1 (en) 2017-08-28 2023-06-07 Bright Data Ltd. Improving content fetching by selecting tunnel devices grouped according to geographic location
US10642739B2 (en) 2017-09-11 2020-05-05 Cisco Technology, Inc. Distributed coordination of caching and processing by networking devices
US10742593B1 (en) 2017-09-25 2020-08-11 Amazon Technologies, Inc. Hybrid content request routing system
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10974150B2 (en) 2017-09-27 2021-04-13 Activision Publishing, Inc. Methods and systems for improved content customization in multiplayer gaming environments
US11040286B2 (en) 2017-09-27 2021-06-22 Activision Publishing, Inc. Methods and systems for improved content generation in multiplayer gaming environments
US10765948B2 (en) 2017-12-22 2020-09-08 Activision Publishing, Inc. Video game content aggregation, normalization, and publication systems and methods
CN110086840B (zh) * 2018-01-26 2022-03-11 浙江宇视科技有限公司 图像数据存储方法、装置及计算机可读存储介质
US10592578B1 (en) 2018-03-07 2020-03-17 Amazon Technologies, Inc. Predictive content push-enabled content delivery network
JP6597823B2 (ja) * 2018-03-23 2019-10-30 日本電気株式会社 ロードバランシング装置、通信システム、制御方法及びプログラム
US10778757B1 (en) 2018-06-18 2020-09-15 Amazon Technologies, Inc. Load balancing traffic via dynamic DNS record TTLs
US10862852B1 (en) 2018-11-16 2020-12-08 Amazon Technologies, Inc. Resolution of domain name requests in heterogeneous network environments
US11025747B1 (en) 2018-12-12 2021-06-01 Amazon Technologies, Inc. Content request pattern-based routing system
US11679330B2 (en) 2018-12-18 2023-06-20 Activision Publishing, Inc. Systems and methods for generating improved non-player characters
US11470176B2 (en) * 2019-01-29 2022-10-11 Cisco Technology, Inc. Efficient and flexible load-balancing for clusters of caches under latency constraint
EP3750079A4 (en) 2019-02-25 2022-01-12 Bright Data Ltd SYSTEM AND METHOD FOR URL EXTRACTION CHALLENGE MECHANISM
EP4030318A1 (en) 2019-04-02 2022-07-20 Bright Data Ltd. System and method for managing non-direct url fetching service
US11097193B2 (en) 2019-09-11 2021-08-24 Activision Publishing, Inc. Methods and systems for increasing player engagement in multiplayer gaming environments
EP3800866A1 (en) * 2019-10-03 2021-04-07 Palantir Technologies Inc. Systems and methods for managing queries from different types of client applications
US11712627B2 (en) 2019-11-08 2023-08-01 Activision Publishing, Inc. System and method for providing conditional access to virtual gaming items
CN112925636A (zh) * 2019-12-06 2021-06-08 北京沃东天骏信息技术有限公司 一种请求调度、处理方法和装置
US11351459B2 (en) 2020-08-18 2022-06-07 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values
US11524234B2 (en) 2020-08-18 2022-12-13 Activision Publishing, Inc. Multiplayer video games with virtual characters having dynamically modified fields of view
US11323355B1 (en) 2021-09-01 2022-05-03 Microsoft Technology Licensing, Llc Partition abstraction in distributed computing systems

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5371852A (en) 1992-10-14 1994-12-06 International Business Machines Corporation Method and apparatus for making a cluster of computers appear as a single host on a network
JP2520563B2 (ja) * 1993-05-19 1996-07-31 日本電気株式会社 パケット交換網
US5544313A (en) * 1994-05-11 1996-08-06 International Business Machines Corporation Baton passing optimization scheme for load balancing/configuration planning in a video-on-demand computer system
US5526414A (en) * 1994-10-26 1996-06-11 Northern Telecom Limited Dynamically controlled routing using virtual nodes
JPH08214063A (ja) 1995-02-07 1996-08-20 Fujitsu Ltd インテリジェントネットワークの負荷分散方法
US5828847A (en) * 1996-04-19 1998-10-27 Storage Technology Corporation Dynamic server switching for maximum server availability and load balancing
US5864535A (en) * 1996-09-18 1999-01-26 International Business Machines Corporation Network server having dynamic load balancing of messages in both inbound and outbound directions
US6078943A (en) * 1997-02-07 2000-06-20 International Business Machines Corporation Method and apparatus for dynamic interval-based load balancing
US5930348A (en) * 1997-03-20 1999-07-27 Northern Telecom Limited Dynamically controlled routing of calls in intelligent networks

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1127320A (ja) * 1997-07-03 1999-01-29 Fujitsu Ltd パケット中継制御方法,パケット中継装置およびプログラム記憶媒体
JP2003521067A (ja) * 2000-01-28 2003-07-08 ウィリアムズ コミュニケーションズ, エルエルシー 起点サーバとクライアントとの間のメディアリソースリクエストおよび/または応答を書き換えるシステムおよび方法
US7433958B2 (en) 2001-03-27 2008-10-07 Fujitsu Limited Packet relay processing apparatus
US7107348B2 (en) 2001-03-27 2006-09-12 Fujitsu Limited Packet relay processing apparatus
US7565432B2 (en) 2001-04-02 2009-07-21 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
US7962651B2 (en) 2001-04-02 2011-06-14 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
KR20030021114A (ko) * 2001-09-05 2003-03-12 주식회사 미리텍 부하분산기
US7389510B2 (en) 2003-11-06 2008-06-17 International Business Machines Corporation Load balancing of servers in a cluster
US8104042B2 (en) 2003-11-06 2012-01-24 International Business Machines Corporation Load balancing of servers in a cluster
JP2008536229A (ja) * 2005-04-14 2008-09-04 インターナショナル・ビジネス・マシーンズ・コーポレーション 遠隔呼び出しパフォーマンスを向上する多重レベル・キャッシュの装置、方法、及びプログラム製品
US7817647B2 (en) 2005-04-22 2010-10-19 Microsoft Corporation Flower-petal resolutions for PNRP
US8510372B2 (en) 2009-08-10 2013-08-13 Hitachi, Ltd. Gateway system and control method
WO2012165892A2 (ko) * 2011-06-02 2012-12-06 주식회사 비씨클라우드 동적 웹 라우팅 방법
WO2012165892A3 (ko) * 2011-06-02 2013-03-28 주식회사 비씨클라우드 동적 웹 라우팅 방법

Also Published As

Publication number Publication date
CN1113503C (zh) 2003-07-02
JP2970760B2 (ja) 1999-11-02
TW451117B (en) 2001-08-21
US6351775B1 (en) 2002-02-26
KR19980087398A (ko) 1998-12-05
CN1202772A (zh) 1998-12-23
KR100318779B1 (ko) 2002-06-20

Similar Documents

Publication Publication Date Title
KR100318779B1 (ko) 인터넷에서의동적경로배정방법및장치
KR100295004B1 (ko) 동적시간격에기초한부하균형을위한방법및장치
EP1116112B1 (en) Load balancing in a network environment
EP1125416B1 (en) System for responding to a resource request
US6122666A (en) Method for collaborative transformation and caching of web objects in a proxy network
US6119143A (en) Computer system and method for load balancing with selective control
US7373644B2 (en) Automated server replication
US7111300B1 (en) Dynamic allocation of computing tasks by second distributed server set
US8578053B2 (en) NAS load balancing system
US7565450B2 (en) System and method for using a mapping between client addresses and addresses of caches to support content delivery
US6490615B1 (en) Scalable cache
RU2156546C2 (ru) Балансировка нагрузки через процессоры компьютера-сервера
US7343422B2 (en) System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
JPH04230567A (ja) 計算システムのための分散型構成プロフィル
EP1116109A1 (en) Load balancing for replicated services
JP2002169694A (ja) ネットワーク上のpxeクライアントにdhcpサーバを介してブート・サーバを自動的に割り当てる方法とシステム
JP2000322395A (ja) オブジェクト・レンダリングの分散配置のための協調プロキシ・システムの方法および装置
JPH10240701A (ja) コンピュータ・ネットワークおよびサーバ間で作業負荷のバランスをとる方法
KR20010075542A (ko) 협동 캐시 서버의 부하 조정 방법
JP2012038152A (ja) 接続管理システム、及びシンクライアントシステムにおける接続管理サーバの連携方法
EP1470692B1 (en) Method and system for workload balancing in a network of computer systems
AU2001250169B2 (en) Retrieving and processing stored information using a distributed network of remote computers
KR20040056074A (ko) 그리드 네트워크에서 그리드 자원에 대한 정보를 제공하는장치 및 방법과 그 프로세스를 기록한 컴퓨터 판독가능한기록매체
CN109788062A (zh) 输电系统服务器负载均衡方法
AU2001250169A1 (en) Retrieving and processing stored information using a distributed network of remote computers

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070827

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080827

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090827

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100827

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20100827

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110827

Year of fee payment: 12

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

Free format text: PAYMENT UNTIL: 20120827

Year of fee payment: 13

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

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 14

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

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 14

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20130827

Year of fee payment: 14

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term