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

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

Info

Publication number
JP2970760B2
JP2970760B2 JP14096498A JP14096498A JP2970760B2 JP 2970760 B2 JP2970760 B2 JP 2970760B2 JP 14096498 A JP14096498 A JP 14096498A JP 14096498 A JP14096498 A JP 14096498A JP 2970760 B2 JP2970760 B2 JP 2970760B2
Authority
JP
Japan
Prior art keywords
server
class
requester
request
mapping
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.)
Expired - Lifetime
Application number
JP14096498A
Other languages
English (en)
Other versions
JPH114261A (ja
Inventor
フィリップ・シールン・ユ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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)
  • Computational Linguistics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (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)

Description

【発明の詳細な説明】
【0001】本発明は次の同時係属の米国特許出願
即ち1997年7月2日出願の米国特許出願第08/7
98385号(IBM整理番号YO997028)
び1996年5月12日(仮)出願の米国特許出願第
0/031849号(IBM整理番号YO9962
2)に関連する。これらの関連出願及び本発明は共に
出願人を譲受人としている。これらの関連出願に記載さ
れた内容は、本明細書において援用する
【0002】
【発明の属する技術分野】本発明は一般にインターネッ
ト環境でのプロキシ・サーバやウェブ・サーバなどのサ
ーバの集合またはクラスタ間での負荷の化を行う
とに係る。本発明の詳細な態様はクライアント要求への
応答に便乗(piggyback)したメタ・データ(以下「メ
タ情報」とも称す)を用いたルーティング情報の更新方
法に係る。さらに別の態様はキャッシング効率を最適化
する負荷の化方法に係る
【0003】用語集 本明細書で使用する用語の一部は辞書にある意味もある
が、次の用語集も役立つであろう。
【0004】インターネット 一連のTCP/IPプロトコルを使用するネットワーク
及びゲートウェイからなるネットワーク。
【0005】クライアント クライアントとは、コマンドをサーバに発行してそのコ
マンドに対応するタスクを実行させるコンピュータであ
る。
【0006】サーバ 他のコンピュータのコマンドに従ってタスクを実行する
任意のコンピュータがサーバである。ウェブ・サーバは
通常1つまたは複数のクライアントをサポートする。
【0007】ワールド・ワイド・ウェブ(WWWまたは
ウェブ) 強調表示した言葉や関心がある語句(ハイパーリンク)
をクリックしてサーバ相互間及びデータベース相互間で
リンクを張りつつ、インターネット上で情報を検索する
ためのインターネットのアプリケーション。インターネ
ット上のウェブ・サーバはクライアントをサポートし、
情報を提供する。ウェブをインターネットとして見なす
ことができるのは、全ての資源がURLとしてアドレス
指定され、そしてこれがHTMLを使用してURLに対
応する情報を表示するとともに、他のURLへポイン
及びクリックによるインタフェースを提供するからで
る。
【0008】ユニバーサル・リソース・ロケータ(UR
L) インターネット上の情報を一意的に識別する、またはア
ドレス指定する方法。Eメール・アドレスのウェブ・ド
キュメント・バージョンまたは完全に識別されたネット
ワーク・ファイル名。これらはハパーリンクでアクセ
ス可能である。URLの1例は、「http://www.philipy
u.com.:80/table.html」である。ここでURLは4つの
構成要素を有する。左から始めて、最初は残りのロケー
タと:で区別され使用すべきプロトコル規定す
る。2番目は対象ホストのホスト名またはIPアドレス
である。これは左側が「//」で、右側が「/」または
意選択としての「:で区切られる。ポート番号は任意
選択で、左側はホスト名「:」で区切られ、右側は「/」
で区切られる。4番目の構成要素は実際のファイル名ま
たはプログラム名である。この例では、「.html」の拡
張子はHTMLファイルであることを示す。
【0009】ハイパーテキスト・マークアップ言語(H
TML) HTMLは、クライアントが表示できるように、ウェブ
・サーバがドキュメントを作成しこれを接続するための
言語である。HTMLはハイパーテキスト・ドキュメン
トを使用する。
【0010】ハイパーテキスト転送プロトコル(HTT
P) HTTPはクライアントからサーバへの全ての要求が独
立して扱われるということを意味するステートレス・プ
ロトコルの例である。サーバは以前の接続の記録を持た
ない。URLの最初の「http:」はHTTPプロトコル
を使用してファイルを検索する必要があることを示す。
【0011】インターネット・ブラウザまたはウェブ・
ブラウザHTTP などのインターネット・プロトコルを実行して
その実行結果をユーザの画面に表示するクラフィカル・
インタフェース。ブラウザはユーザがインターネットの
「サーフィン」をする際のデスクトップ画面、ディレク
トリ及び検索ツールを備えたインターネットのツアー・
ガイドとして機能できる。この適用分野ではウェブ・ブ
ラウザはWWWと通信するクライアント・サービスであ
る。
【0012】クライアント・キャッシュ クライアント・キャッシュは通常クライアントがアクセ
スするオブジェクトの1次キャッシュとして使用され
る。WWW環境では、クライアント・キャッシュは通常
ウェブ・ブラウザによって実され、現在の呼び出し
(invocation)の間にオブジェクトをャッシングす
る、即ち、非持続性キャッシュであるか、複数の呼び出
にまたがってオブジェクトをキャッシングできる。
【0013】キャッシング・プロキシ クライアントのためにエージェントとして動作し、オブ
ジェクトのキャッシングされたコピーを見つけるネット
ワーク内の専用サーバ。キャッシング・プロキシは、ク
ライアント・キャッシュからのキャッシュ・ミスの結果
として呼び出さされるため、通常は2次またはそれ以上
のレベルのキャッシュとして動作する。
【0014】HTTPデーモン(HTTPD) ハイパーテキスト・マーアップ言語及び共通ゲートウ
ェイ・インタフェース機能を有するサーバ。HTTPD
は通常、イントラネット上のマシンへのハードウェア接
続とTCP/IP結合などのインターネットへのアクセ
スを提供するアクセス・エージェントによってサポート
される。
【0015】
【従来の技術】W上のトラフィックは指数関数的に
増加している。大規模な組織または領域へのゲートウェ
イにあるプロキシ・サーバはコンピュータ・ノードの集
合を含むことができる。同様に、人気が高い(ホット
な)ウェブ・サイトでは、コンピュータ・ノードの集合
(またはクラスタ)がアクセス・デマンドをサポートす
るために使用される。
【0016】サーバ・クラスタ内で高パフォーマンス
達成するには、ノードの集合間で負荷を平衡化(分散
化)する必要がある。これは同一のオブジェクト要求を
ローカライズすることによって、クラスタ内の任意のサ
ーバのキャッシュ・ヒット率を最適化する必要性によっ
て軽減される。
【0017】IBM社の「S/390 Sysple
などのマルチプロセッサまたは複数のノード環境
おける負荷平衡化に係る以前の開発目標主に入力
スクまたはユーザ・セッションごとに複数の汎用資源の
1つを選択するスケジューリング・アルゴリズムに焦点
を合わせていた。スケジューラは全て入力タスクまた
はユーザ・セッションのスケジューリングを制御する
のであって、資源選択のキャッシングわない。
【0018】地理的に分散した複製サイト間負荷平衡
を行う周知の方法の1つは、ラウンドロビンドメイ
ン・ネーム・サーバ(RR−DNS)として知られる。
E. Katz, et al., "A Scaleable HTTP Server: The NCS
A Prototype", Computer Network and ISDN Systems, V
o. 27, 1994, pp. 68-74 という論文 では、1組のウェ
ブ・サーバ・ノード間でノードの負荷平衡を行うため
にRR−DNS方式使用されている。ここで、1組の
分散サイトが1つのURL(例えばwww.hotsite.co
m)によって表されている。この分散サイトのクラスタ
・サブドメインはそのサブドメイン・ネーム・サーバで
定義される。このサブドメイン・ネーム・サーバは
前解決要求を(分散クラスタ内の)異なるIPアドレ
ラウンドロビン式にマッピングする。このように、ク
ライアントのサブセットは複製サイトの各々に割り当て
られる。ネットワーク・トラフィックを軽減するため
に、マッピング要求はサーバ要求ごとには発行されな
い。その代わりにマッピング要求の結果が「タイム
トゥリブ」(time-to-live:TTL)期間だけ保存さ
れる。 TTL期間中に発行された後続要求は以前のマ
ッピングを保持しているので同じサーバ・ノードへルー
ティングされる。
【0019】RR−DNS方式の問題は、分散サイト間
の負荷の不均衡が生じ得ることである(例えば、D.M.Di
as, et al., "A Scaleable and Highly Available Web
Server", Proc. 41st IEEE Computer Society Intl. Co
nf. (COMPCON) 1996, Technologies for the Informati
on Superhighway, pp. 85-92, Feb. 1996 を参照)。負
荷の不均衡を生じさせる原因として、名前とIPアド
レスとの間の関連付け(アソシエーション)を、ネット
ワーク内の種々のゲートウェイ、ファイアウォール、及
びドメイン・ネーム・サーバにおいてキャッシングする
ことがある。このように、TTL期間の間はこれらの
ゲートウェイ、ファイアウォール、及びドメイン・ネー
ム・サーバを介してルーティングされる新しいクライア
ント要求の全ては、キャッシュに記憶された単一のサ
イトに割り当てられる。当業者には明らかなように、
TL期間の値を減少させることだけでは問題の解決にな
らない。実際、多くのネーム・サーバは小さいTTL
の値を受け付けないことが多い。さらに重要なこと
、TTL期間の値を単に小さくするだけでは、不均衡
に分散されたクライアント要求率に起因する負荷の偏り
是正できないという点である
【0020】ローカル・クラスタまたはノードの負荷
を平衡化する1つの方法は、いわゆるTCPルータを使
用するというものである(例えば、 C. R. Attanasio,
et al., "A Virtual Multi-processor Implemented by
an Encapsulated Cluster ofLoosely Coupled Computer
s", IBM Research Report RC 18442, 1992 及び本明細
書において援用する米国特許第5371852号を参
照)。ここでは、TCPルータのアドレスだけがクライ
アントに提示されている。TCPルータは着信要求をク
ラスタのノード間にラウンドロビンまたはノード上
の負荷に基づいて分散する。このTCPルータ方法はノ
ードのローカル・クラスタに限定されることに注意され
たい。
【0021】さらに最近になって、本明細書において援
用する M. Colajanni, et al., "Scheduling Algorithm
s for Distributed Web Servers", IBM Research Repor
t, RC20680, Jan. 1997 という論文では、複数のゲート
ウェイをそれぞれの要求率に従って複数の層に分割する
複数層ラウンドロビン方式が記述されている。各層から
の要求はラウンドロビン・アルゴリズムを使って別々に
スケジューリングされる。この方式は同種(homogeneou
s)の分散サーバ・アーキテクチャ取り扱うこともで
きる。
【0022】上記の方法のいずれにおいても、目標はサ
ーバの集合の間で負荷を平衡することである。動的ル
ーティング決定は、要求されているオブジェクトの識
別を考慮しない。換言すると、負荷を平衡化するため
に、一のオブジェクトに対する複数の要求別々のサ
ーバへルーティングすることができる。この方法によ
と、参照される別個のウェブ・ページの潜在的な数
大になり得るのでキャッシュ・ヒット率が低下し、この
ことはプロキシ・サーバについては特に厳しいものとな
る。ウェブ・サーバ・クラスタ内ではそれぞれの区画
に異なる(仮想)ホスト名またはIPを割り当てるよう
にして静的区画ウェブ・ページに対して作成すること
ができるが、この静的区画方式は動的な負荷の変更に柔
軟に対応できず、さらにスケーラブルでもない。
【0023】以上のように、当分野で要請されているサ
ーバ・クラスタ用の改良された負荷平衡方法とは、
ラスタ間の負荷平衡を行うだけでなく、同一のオブジ
ェクト要求をローカライズすることにより、クラスタ内
の任意のサーバにおけるキャッシュ・ヒット率を最適化
することができるようなものである。本発明はこのよう
要請に対処する。
【0024】さらに、別の観点から云えば、当分野で要
請されているサーバ・クラスタ用の改良された負荷平衡
化方法とは、作業負荷状態に従ってオブジェクト・スペ
ースのサブセットを動的に処理するように各サーバを割
り当てるとともに、オブジェクトに関連するサブスペー
スに割り当てられたサーバに対しオブジェクト要求をル
ーティングすることができるようなものである。本発明
はこのような要請にも対処する。
【0025】
【発明が解決しようとする課題】上記の要請に従って、
本発明の目的は、複数のサーバのキャッシング効率及び
負荷平衡度を考慮するか、または負荷平衡みを考慮
してこれらのサーバの集合の間でのオブジェクト要求の
動的なルーティングを行う改良された方法を提供するこ
である。
【0026】本発明はルーティング要求への応答にメ
タ情報を「便乗させる」ことによりサーバのルーティ
ング情報を動的に更新できる機能を有する。また本発明
要求オブジェクトの識別(例えばURL)に基
づいてサーバをマッピングするとともに、作業負荷状態
が変更された場合にこのマッピングを動的に更新するこ
により、サーバにおけるキャッシュ・ヒット率を改善
できる他の機能も有する。インターネット環境では、サ
ーバの集合は、プロキシ・サーバ・クラスタまたはウェ
ブ・サーバ・クラスタを含むことができるが、これに限
定されない
【0027】サーバ・ノードの集合の間でオブジェクト
要求を動的にルーティングするための本発明の機能を
する方法は、メタ情報を要求されたオブジェクトに便乗
させるステップと、このメタ情報に従ってサーバ割り当
のルーティング情報を動的に更新するステップを含
む。
【0028】
【課題を解決するための手段】キャッシュ・ヒット率を
最適化しつつ、サーバ・ノードの集合の間でオブジェク
ト要求動的ルーティングを行うための本発明の機能
有する方法は、オブジェクト識別をクラスにマッピ
ングするステップと当該クラス及びクラス−サーバ割
り当てテーブルに基づいてサーバを割り当てるステップ
をさらに含む。
【0029】本発明は、リクエスタ・ノードに対しクラ
ス−サーバ割り当ての動的な変更を「オンデマンド」ベ
ースで通知できる他の機能をさらに有する。クラス−サ
ーバ割り当ては作業負荷状態の変化に応じて動的に変
し得る。この変更を全ての潜在的なリクエスタへ同報
通信するか、または求が送信されるたびにまずリクエ
スタにマッピングを取得させることに伴うコストを避け
ために、サーバは、特定のクラス処理するように
り当てられていない場合であっても、オブジェクト要求
サービスを継続できという点で有利である。し、
サーバは返送されたオブジェクト(または応答)のヘ
ッダ内に、新しいクラス−サーバ割り当てに関する情報
を示すことができる。
【0030】さらに、メタ情報を要求オブジェクトに便
乗させるための本発明の機能は、サーバ・クラスタ内の
負荷平衡度を改善するために、インターネットの通常
DNSルーティングにも応用できる。これは、オブジェ
クトのURL(またはオブジェクト・クラス)を使用
てサーバ割り当てを行うことによりキャッシュ・ヒット
率を改良するという概念と区別しなくてはならない。D
NSルーティングはアドレス・マッピングの有効期間
(TTL)を有する。本発明はサーバ割り当てをTTL
より小さい期間で生成することにより、真の負荷状態
よりよく反映するための機能を有する。サーバ割り当て
の変更を返送されたオブジェクトに便乗させることがで
きるので、トラフィックの追加を回避し、将来の要求を
新しいサーバへ送信するように通知することができる。
【0031】本発明は、負荷を平衡化するための作業負
荷デマンドに基づいて、クラス−サーバ割り当てを動的
に且漸増(インクリメント式)に変更できる他の特
徴をさらに有する。
【0032】本発明のさらに別の機能によれば、インタ
ーネット環境内で、PICS(Platform for Internet
Content Selection:インターネット・コンテンツ選択
用プラットフォーム)プロトコルを使用して、種々の
イプの情報の通信を行うことができる。陳腐化した(古
い)クラス−サーバ・マッピング・エントリに基づいて
要求がサーバに向けられるとき、サーバは、PICSを
使用して新しいクラス−サーバ・マッピングに関する
タ情報を便乗させることができる。またリクエスタは、
PICSを使用して、アービトレータ対し現在のクラ
ス−サーバ・マッピングを照会することができる。
【0033】当業者には明らかなように、本発明はWW
だけでなく一般の分散環境に適用できる。
【0034】
【発明の実施の形態】図1は本発明に適用可能なイン
ターネット環境を示す。図示のように、リクエスタ(1
10〜153)は通常のプロキシ・サーバ・ノード(1
18、125〜127)と、クライアント・ワークステ
ーション及びパーソナル・コンピュータ(PC)(11
0、112、120、150〜153)の任意のもの
含むことができ、ネットワーク(105)に接続され
る。プロキシ・サーバ、ワークステーション、及びPC
は当分野では周知である。プロキシ・サーバの例はIB
が販売するインターネット接続サーバ(IC
S)である。リクエスタは、ネットワーク(105)
経由で、サーバ・クラスタ(103)からのサービスを
要求する。ネットワークの例は、インターネット、W
W、イントラネット、及びローカル・エリア・ネットワ
ーク(LAN)を含むが、これに限定されない。サーバ
・クラスタは高トラフィック需要を処理する複数のサー
バ・ノード(161〜163)を含む。サーバ・クラス
103はプロキシ・サーバまたはウェブ・サーバ・ク
ラスタでよい。クラスタ103内のサーバは、IBM
S/390 SYSPLEXSP2、また
RS6000」の商標名で販売する製品を含むが、
これに限定されない。従来と同様、各要求はクラスタ
03内の任意のサーバが処理できる。代表的なサービス
要求は、ウェブ・ページへのアクセス、リモート・ファ
イル転送、電子メール、及びトランザクション・サポー
トを含む。
【0035】要求は原則としてどのサーバ・ノードでも
処理できるが、同一のオブジェクトに対する複数のルー
ティング要求を単一サーバ・ノードへ送信すると、
のサーバ・ノードにおけるキャッシュ・ヒット率の向上
を、従って性能の改善をもたらすことができる後述
るように、本発明はクラスタ103内のサーバ・ノード
間の負荷平衡だけでなく高いキャッシュ・ヒット率
を実現する機能も有する。
【0036】簡述すると、本発明ルーティング方法
オブジェクトの識またはシンボル名(例:UR
L)を使用して、要求を処理すべきサーバを選択する。
オブジェクト識別子をクラスにマッピングするための
方法も提供される。またリクエスタ・ノードは、
クラスを選択したサーバに割り当てるためのクラス−サ
ーバ割り当てテーブル(図3)を保することが好まし
。好ましい区画方法は、通常のハッシュ関数を使
オブジェクトURLを所定数のハッシュ・クラ
スにハッシュする。このハッシュ関数は、アービトレー
タ235(図2)によって、全ての参加サーバ及びリク
エスタ・ノードに知らされることが好ましい。
【0037】アービトレータ235は各サーバの負荷
を監視し、クラス−サーバ割り当てを動的に更新して負
荷平衡を向上させる。本発明はクラス−サーバ割り
当てが動的に変更された場合に、サーバ・クラスタ10
3によって、リクエスタ・ノードに「オンデマンド」
ースで通知する方法も提供する。
【0038】リクエスタ・ノードからの要求はサーバ
・クラスタ103に到達する前に、幾つかの中間リクエ
スタ・ノード(即ち、プロキシ・サーバ)を経由する必
要がある。例えばノード150はサーバ・クラスタ1
03に到達する前に2つのレベルのプロキシ・ノード
125及び118を経由する必要がある。もしサーバ・
クラスタ103がプロキシ・サーバ・クラスタであれ
、サーバの選択はプロキシ・サーバ・クラスタ10
3に最も近いリクエスタ110〜120によって行われ
るのが好ましい。ウェブ・サーバ・クラスタの場合、ウ
ェブ・サーバの選択はパス上の中間リクエスタで実行で
きる。
【0039】本発明はリクエスタとサーバ・ノード
間で「便乗された」メタ情報を使用しルーティン
グ情報を効率的に通信するための機能をさらに有する。
HTTPの実施形態では情報交換は既存のウェブ・プ
ロトコルを使用してオブジェクト・ヘッダ内メタ情報
として含めることができる。PICS(インターネット
・コンテンツ選択用プラットフォーム)は電子コンテン
ツに関するメタ情報を送信する方法を規定する。PIC
Sはウェブ・コンソーシアム・プロトコル勧告(http:/
/www.w3.org/PICS を参照)である。PICSは「この
コンテンツにはどの程度の裸体画像が関連すか」など
値を基礎とする評価ラベルを送信するために初めて
使用されたが、メタ情報のフォーマット及び意味は完全
に一般的である。PICSでは、電子コンテンツに関す
るメタ情報は、情報の「評価サービス」または「生産者
及び予定用途(producer-and-intended-usage)」に従
ってグループ化され、そのグループの1つで任意の数
のカテゴリまたは大きさを持つ情報が送信できる。各カ
テゴリはある範囲の許容値を有しコンテンツの特定の
部分に関しては、特定のカテゴリが単一の値または複数
の値を有することができる。さらに、メタ情報グループ
(「PICSラベル」として知られる)は満了情報を含
むことができる。また、PICSラベルを、電子コンテ
ンツの複数の部分に付与する機能もある。電子コンテン
ツの特定の部分に対する各PICSラベルは独立して
コンテンツに追加または削除できる。
【0040】例えば、サーバから送信可能なイメージ・
ファイルに単一のPICSラベルを付与し、その「評価
サービス」フィールドにおいて、これが「SafeSurf」評
価システムによる値ベースの評価ラベルを保持すること
を示すことができる。本発明によれば、このイメージ・
ファイルは企業プロキシを通過する際に第2のPIC
Sラベルを受け取り、その「評価サービス」フィールド
において、これがクラス−サーバ割り当て情報を保持す
ことを示すことができる。第2のPICSラベルは
部門プロキシを通過する際に除去できる。このように、
クライアント・コンピュータは第1のPICSラベル
だけを参照することができる。HTTPプロトコルは
PICSをサポートする要求ヘッダ及び応答ヘッダで増
強されている。NNTPなどの他の共通アプリケーショ
ン・プロトコルを定義する専門機関は現在PICSサ
ポートの追加も検討している。これらのプロトコルの一
部として、所望のPICSラベル・タイプのリストを
要求付けて含ませることができる。またPICSは
央ラベル局サーバからPICS情報を受信するための
照会フォーマットを規定する。PICSラベルのサンプ
例は(PICS-1.1"http://the.rating.service" labe
l for "http://the.content" exp "1997.07.01T08:15-1
500" r(n 4 s 3 v 2 1 0))である。但し、 'n' 's' '
v' '1' は、種々のメタ情報タイプの送信名であり、
のコンテンツ適用可能な値は4(nの場合)、3
(sの場合)、2(vの場合)及び0(lの場合)であ
る。ID"http://the.rating.service" を認識するソフ
トウェアだけがこれらのカテゴリ及び値の解釈方法を
認識できる。
【0041】好ましい実施形態では、2種類のPICS
ラベルが使用される。最初の種類のPICSラベルは
「再割り当て」ラベル(Rラベル)と呼ばれ、返送され
たオブジェクトのオブジェクト・クラスに対する「現在
の」サーバ割り当てを示すため、クラスタ内のサーバ
・ノードによって使用される。第2の種類のPICSラ
ベルは「割り当て」ラベル(Aラベル)と呼ばれ、ラ
ル局機能を提供するアービトレータ235らオブジェ
クトのURの現在のサーバ割り当てを決定するため
、リクエスタによって使用される
【0042】図2は、本発明の機能を有するネットワー
ク(201)及びシステムの詳細な例を示す。図示のよ
うに、リクエスタ・ノード(202〜203)は、ネッ
トワーク(201)を介して要求を発行できるコンピュ
ータ・ノード。リクエスタ・ノードは好ましく
はCPU(260)、RAMなどのメモリ(263)、
及びDASDまたはディスクなどの記憶装置(265
含む。メモリ(263)は、本発明によるリクエスタ
203論理(詳細は図13を参照して後述)を記憶す
る。この論理は、CPU(260)による実行のため
に、記憶装置(265)からメモリ(263)へロード
可能なコンピュータ実行可能コードとして実施される
とが好ましい。当業者には明らかなように、CPU(2
60)による実行のために、リクエスタ(203)論理
をネットワーク(201)経由でリクエスタへダウンロ
ードしてもよい。リクエスタ203論理はオブジェクト
要求生成ルーチン(267)(詳細は図14に図示)を
含み、クラス−サーバ割り当てテーブル(270)のコ
ピーを保する。
【0043】アービトレータ(235)はサーバ・ト
ラフィックを監視し且つ「クラス−サーバ」割り当てを
調整できる、任意のコンピュータ・ノードを表す。アー
ビトレータ(235)は好ましくはCPU(24
0)、RAMなどのメモリ(245)、及びDASDな
どの記憶装置(242)を含む。メモリ(245)は、
本発明のアービトレータ論理(詳細は図9に図示)を記
憶する。この論理は、CPU(240)による実行のた
めに、記装置(242)からメモリ(245)へロー
可能なコンピュータ実行可能コードとして実施される
ことが好ましい。このアービトレータ論理は、説明の便
宜上、マッピング要求ハンドラ(248)と、統計及び
評価ルーチン(250)を含む幾つかの構成要素に分割
されているものとする。これらの構成要素図12及
び10を参照してそれぞれ詳述する。保される主要な
データ構造はクラス−プロキシ割り当てテーブル(2
25)である。このクラス−プロキシ割り当てテーブル
(225)上の動作を種々の構成要素に関して説明す
る。
【0044】サーバ1M(206〜208)は、リ
エスタ(203)によって要求されたファイル転送及び
データ/オブジェクトへのアクセスの提供などのサービ
ス要求を処理する、任意のコンピュータ・ノードを含む
ことができる。サーバ・ノード(208)はCPU
(227)、メモリ(210)、及びDASDなどの記
憶装置(230)を含む。メモリ(210)は、本発明
のサーバ論理(詳細は図4に図示)を記憶するこの論
理は、CPU(227)による実行のために、記憶装置
(230)からメモリ(210)へロード可能なコンピ
ュータ実行可能コードとして実施されることが好まし
い。この論理は、説明の便宜上、オブジェクト要求ハン
ドラ(212)と、オブジェクト・ハンドラ(214)
と、統計報告ルーチン(218)を含む幾つかの構成要
に分割されているものとする。これらの構成要素は、
7、5、及び8を参照してそれぞれ詳述する。また、
キャッシュ・マネジャ(220)を含むほか、クラス
サーバ割り当てテーブル(225)のコピーを持す
る。
【0045】図3は、N=16及びM=3である場合
の、割り当てテーブル(225、270)の例を示す。
但し、Nはオブジェクト・クラスの数、即ちハッシュま
たは割り当てテーブルのサイズであり、Mはサーバ
である。C(.)をクラスkをサーバC(k)に割り
当てる割り当てテーブル(225、270)とする。再
度図2を参照すると、アービトレータ(235)及びク
ラスタ内の各サーバ(206、208)ノードだけでな
リクエスタ・ノード(202、203)も割り当て
テーブル(225、270)のコピーを保できる。
般に、リクエスタのテーブル(270)は最新のもので
はない、即ち、サーバ(208)またはアービトレータ
(235)割り当てテーブル(225)と同期されて
いない。本発明が有する機能割り当てテーブルの
同期を維持するためにコストがかかる更新メッセージを
送信する必要性を取り除き、好ましくは便乗されたメタ
情報を使用して「オンデマンド」ベースでクラス−サー
バ・マッピングを更新する。
【0046】図4は本発明に従ってCPU(227)
上で実行されるようにメモリ(210)に記憶された
サーバ(208)論理の例を示す。C(.)をクラス
kをサーバC(k)に割り当てる割り当てテーブル(2
25、270)とする。図示のように、ステップ410
でサーバは入力を待機する。ステップ415で、受信し
た入力に依存し異なるアクションられる。もし
受信した入力がオブジェクト要求であれば、ステップ4
20でオブジェクト要求ハンドラ212が呼び出され
る。オブジェクト要求ハンドラの詳細は図7を参照し
述する。ステップ430で、もし受信した入力がオブ
ジェクトであれば、ステップ440でオブジェクト・
ハンドラ214が呼び出される。オブジェクト・ハンド
ラの詳細は図5を参照して後述する。ステップ445
で、もし受信した入力が(アービトレータからの)統計
収集要求であれば、ステップ460で統計報告ルーチ
ン(218)が呼び出される。統計報告ルーチンの詳
図8を参照して後述する。ステップ450で、もし
信した入力が(アービトレータからの)割り当てテーブ
ル更新要求であればステップ465で、C(k)(但
し、k=1)が更新される。本発明では扱わない他
のタイプの入力(通常のHTTP「プル」要求またはF
TP要求など)の場合、該当するハンドラ(470)
呼び出すことができる。
【0047】図5は、オブジェクト・ハンドラ(21
4)の例を示す。ステップ510で、もし受信したオブ
ジェクトのオブジェクト・クラス(図7のステップ75
0を参照割り当てテーブルによって示されるよう
このサーバに割り当てられたクラスに属していれ
、ステップ515でキャッシュ・マネジャ220が
呼び出される。キャッシュ・マネジャ220このオ
ブジェクトをキャッシングするかどうかを決定し、キャ
ッシングする場合は現在キャッシングされているどの
オブジェクトを換するかを決定する。次にステップ5
30で、オブジェクトはリクエスタへ返送される。ステ
ップ510で、もし受信したオブジェクトのオブジェク
ト・クラスが(割り当てテーブルから分かるように)
のサーバに割り当てられたクラスに属していなければ、
ステップ520で動的再割り当てルーチンが呼び出
れる。動的再割り当てルーチンの詳細は図6を参照し
述する。
【0048】図6は、動的再割り当てルーチン(ステッ
プ520)の例を示す。図示のように、ステップ610
で、オブジェクト・クラスを処理すべき該当するサーバ
id(またはIPアドレス)が割り当てテーブル
(図3)から決定される。ステップ620で、Rラベル
がオブジェクトのヘッダ内に挿入され、そのカテゴリ値
オブジェクトのこのクラス(図3)を処理するため
に割り当てられサーバ(図3)を識別する。
【0049】図7は、オブジェクト要求ハンドラ212
の例を示す。図示のように、ステップ710で、もし
ブジェクトがローカル・バッファ内にあればステップ
720で、割り当てテーブル(225)が検査されて
オブジェクト・クラス(図3)をこのサーバで処理する
が決定される。もしそうでなければ、動的再割り当て
ルーチン(図6)呼び出される。ステップ740で、
オブジェクトはリクエスタへ返送される。ステップ71
0で、もしオブジェクトがローカルキャッシュされて
いないことが分かれば、ステップ750でオブジェク
取得するための要求が(リクエスタのために)送信
される。
【0050】以下の説明では、CS(j,i)を、(現
在の測定期間中に)サーバjが受信したクラスiのオ
ブジェクトに対する要求数とし、CA(i)を、全て
のサーバが受信したクラスi内のオブジェクトに対する
要求総数とする。さらに、SA(j)をサーバjに
割り当てられたオブジェクト・クラスに対する要求の総
数とする。
【0051】図8は、統計報告ルーチン(218)の例
を示す。図示のように、ステップ810で、サーバjは
その負荷情報CS(i,j)(i=1N)をア
ービトレータへ送信する。ステップ820で、CS
)(i=1N)はゼロにリセットされ
る、即ち、リセットされて新しい収集または測定期間
カウントが開始される。
【0052】図9は、アービトレータ論理(235)の
例を示す。ステップ910で、アービトレータは入力
機する。ステップ920で、もしクラス−サーバ・
ッピング要求が検出されるのであればステップ940
で、マッピング要求ハンドラ(248)が呼び出され
マッピング要求ハンドラ(248)の詳細は図12
を参照して後述。ステップ930で、もし統計収集
期間に対するタイマの満了が検出されるのであれば
テップ950で、アービトレータは統計及び評価ルーチ
ン(250)を実行する。統計及び評価ルーチン(25
0)の詳細は図10を参照して後述る。ステップ96
0で、更新要求が更新済みの割り当てテーブルを備えた
全てのサーバへ送信される。
【0053】図10は、統計及び評価ルーチン(25
0)の例を示す。図示のように、ステップ1010で、
統計収集要求が全てのサーバへ送信されてサーバjか
らCS(j,i)(但し、i=1〜N,j=1〜M)
値が入手される。ステップ1020で、CA(i)が
クラスごとに計算される(各クラスiごとの全サーバ
要求総数)。ステップ1030で、SA(j)が各
サーバjごとに計算される(各サーバjの割り当てられ
たクラスに対する要求総数)。ステップ1040で、
サーバ上の負荷の上限値THが計算される。THは平均
負荷より高い小数(d)であると定義することが好まし
い。例えば、d0.2という値を取るこ とができる
が、このこと負荷平衡の目標が平均値の20%を
超えるサーバが全くないようにすることを意味する。ス
テップ1050で、もし任意のサーバの負荷が上限値T
Hを超えれば、再割り当てルーチンが呼び出されてクラ
ス−サーバ割り当てが調整されるので良好な負荷平衡
を行うことができる。再割り当てルーチンの詳細は
11を参照して後述する。ステップ1070で、統計収
集タイマが所望の統計収集期間の長さにリセットされ
る。
【0054】図11は、再割り当てルーチン(ステップ
1060)の例を示す。ステップ1110で、TOを、
負荷上限値(TH)を超えたサーバの集合を含むもの
とする。ステップ1115で、kをTOで最も負荷
が高いサーバのインデックスとする。ステップ1120
で、TUを、負荷上限値を超えなかったサーバの集合
を含むものとする。ステップ1125で、lをTU
で最も負荷が低いサーバのインデックスとする。ステッ
プ1130でiをクラス負荷CA(i)が最小のサ
ーバkに割り当てられたクラスとする。ステップ113
5で、もしサーバlへのクラスiの再割り当てによって
サーバlの負荷が上限値を超えなければ即ち、SA
(l)+CA(i)<=THであればステップ114
0で、(C(i)をlに変更して)クラスiはサーバk
からサーバlに再割り当てされる。ステップ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
の別のクラスと交換することができる。ステップ11
35で、再割り当てが生ずるのは、サーバlが負荷
限値を超えていない場合だけである。この判定基準は
全体の過負荷状態が軽減されるかどうかを測定すること
に緩和することができる。さらに、もし任意のクラス負
荷CA(i)がTHを超えればそのクラス負荷を複数
のサーバに割り当てることにより、各サーバがそのクラ
スに対する要求の一部を受け付けるようにすることがで
きる。アービトレータはサーバに割り当てられた負荷
一部に従って、(特定のクラスについて)サーバをリ
クエスタに確率的に割り当てることができる。同様の再
割り当てがサーバ(208)で実できる。
【0056】さらに、好ましい実施形態ではクラスタ
内の全てのサーバは同じ処理能力を有するものと仮定
れる。当業者には明らかなように、これ異種(hetero
geneous)サーバを含むように容易に拡張できる。異種
サーバの場合、負荷平衡化は、受信した要求を反映
するように、これを処理能力で除算して、正規化するこ
とができる具体的には、SA(j)はサーバjの処理
能力によって正規化できる。
【0057】図11はクラス−サーバ割り当てを漸増
的に且つ動的に改良する方法の例を示すことに注意され
たい。当業者には明らかなように、本発明の要旨の範囲
内で初期のクラス−サーバ割り当てテーブルを提供す
ために、多くの代替方法を用いることができる。もし
業負荷情報が事前に入手不能であれば、ランダムまた
はラウンド・ロビン式のクラス−サーバ割り当てが使用
できる。さもなければ、最小処理時間優先(LPT)ア
ルゴリズムを使用できる。各クラスはそのアクセス負荷
の降順にソートされる。リストの最上にあるクラス
即ち、最も負荷が高いクラス)が最初にリストから
されて現在割り当てられている最も負荷が低いサー
バに割り当てられる。そのサーバの割り当てられた負荷
はこれに従って調整される。この処理は全てのクラスが
割り当てられるまで繰り返される。
【0058】図12は、マッピング要求ハンドラ(24
5)の例を示す。図示のように、ステップ1210で、
オブジェクトid(例:URL)が例えば通常のハッ
シングその他の方法を通して、そのクラスにマッピング
される。この方法は例えばULの最初の4バイトと
URLの最後の4バイトの論理和をり、得られた数字
をハッシュ・テーブルサイズで除算することで実行で
きる。剰余は0とハッシュ・テーブルサイズから1を
減じた値の間の数字になる。この剰余はハッシュ・テー
ブルへのインデックスを表す。ステップ1220で、ク
ラス−サーバ・マッピングが割り当てテーブル(22
5)から決定される。ステップ1230で、マッピング
情報がリクエスタへ信される。
【0059】図13は、リクエスタ(203)論理の例
を示す。ステップ1310で、リクエスタは入力
る。ステップ1315で、もしオブジェクト要求があ
ればステップ1320で、オブジェクト要求生成ルー
チンが呼び出される。オブジェクト要求生成ルーチン
サーバ・キャッシュにおける良好な局所性を得る
めにオブジェクト識別子(例:URL)に基づいて
択すべきサーバ(IP)アドレスを決定する。オブジェ
クト要求生成ルーチンの詳細は図14を参照して後述
る。ステップ1315で、もし受信した入力がオブジェ
クト要求でなければ、処理はステップ1350へ進む。
ステップ1350で、もし(以前に要求された)オブジ
ェクトが返送されるのであれば、ステップ1360で、
オブジェクト(HTTP)ヘッダに再割り当てラベル
(Rラベル)が含まれているか検査される。もしそうで
あれば、ステップ1365で、クラス−サーバ割り当て
の変更を反映するように、ローカル割り当てテーブル
(270)が更新される。ステップ1370で、受信し
たオブジェクトが処理される。ステップ1325で、
(ステップ1440で以前に要求された)マッピング
要求が返送されるのであれば、ステップ1330で、
保留中の)オブジェクト要求が指定されたサーバへ送
信される。ステップ1340で、クラス−サーバ再割り
当ての変更を反映するように、マッピング要求に基づい
ローカル割り当てテーブル(270)が更新され
る。ステップ1335で、本発明の対象ではない他の
タイプの入力(プッシュ・オブジェクトなど)に関し
て、該当する種々のハンドラを呼び出すことができる。
【0060】図14は、オブジェクト要求生成(26
7)論理の例を示す。図示のように、ステップ1410
で、オブジェクトはそのオブジェクト・クラスにマッピ
ングされる。ステップ1420で、もし対応するサーバ
がクラス−サーバ割り当てテーブルから利用不能であれ
、ステップ1440でマッピング要求がアービトレ
ータへ送信される(こうして図13のステップ1330
に示すようにマッピング要求が完了するまで、オブジェ
クト要求は遅延される)。さもなければ、ステップ14
30で、オブジェクト要求はクラス−サーバ割り当て
テーブルが指定するサーバへ送信される。
【0061】当業者には明らかなように、本発明の要旨
の範囲内で、本発明のさまざまな拡張形態が使用でき
る。例えば、オブジェクト要求生成ルーチン(ステップ
1440)で、マッピング要求を発行する代わりに
ラスタ内の任意のサーバが選択できる。マッピング要求
テーブルは、各クラス−サーバ・マッピングの有効な
を含むこともできる。この期間が満了すると、そのク
ラスの次のオブジェクト要求に応答して、(ステップ
1440のように)マッピング要求を発行することがで
きる。
【0062】当業者には明らかなように、本発明は、
ーバへの階層的なオブジェクト識別子のマッピングにも
適用できる。例えば、図15に示すように、本発明は
のドメイン・ネーム・サーバ(DNS)またはTCP
ベースのルーティングとの連携動作が可能である。ここ
で、クラス−サーバ割り当てテーブルは好ましくは各
クラス(図3)を仮想サーバに割り当てる。仮想サーバ
の数はサーバ・クラスタ内のサーバの実際の数より多
い。次にDNS(167)及びTCPルータは、各仮想
サーバをクラスタ内の実サーバの1つに動的にマッピン
グすることができる
【0063】さらに、メタ情報を要求されたオブジェク
トに便乗させることによりサーバ位置に関するルーティ
ング情報を更新するという概念を使用しインターネ
ット環境内で通常のDNSルーティングを更新できる。
この処理は、キャッシュ・ヒット率を向上させるために
オブジェクトのURL(またはクラス)を使用してサー
バ割り当てを実行するという機能とは独立している。D
NSルーティングは製情報を有する複数のウェブ・
サーバ間で負荷平衡を試みるだけである(例えばM.
Colajanni et al., "Scheduling Algorithms for Dist
ributed Web Servers", IBM Research Report, RC2068
0, Jan. 1997 を参照)。通常のDNSは、各ネーム−
アドレス・マッピングごとにTTL期間有する。この
マッピングは、種々のネーム・サーバでキャッシングさ
れる。この結果として得られるDNSは、クラスタの負
荷平衡化に使用され場合には制御範囲が限定される
ことになる。本発明によれば、もしクラスタ内のサーバ
が過負荷状態になれば、代替的なサーバIPアドレスが
(好ましくはPICSラベルまたは同等の機構を使用し
て)返送されるオブジェクトに(追加のネットワーク・
トラフィックなしに)「便乗でき」、トラフィック・フ
ローをクラスタ内の他のサーバへ転送して負荷平衡
向上させることができる。
【0064】好ましい実施形態では、DNS(167)
各リクエスタから発行される要求の数を収集し、リ
クエスタ−サーバ割り当てテーブルを生成してサーバ間
負荷を平衡させる(異種サーバの場合、割り当てられ
た負荷をサーバの処理能力に比例させることができ
)。(ネーム−アドレス)マッピング要求がDNS
(167)に到着すると、サーバ(161163)
割り当てテーブルのリクエスタ名(またはIPア
ドレス)に基づいて割り当てられる。このマッピング
は、階層的、しかもマルチレベル例えば、URL=
>クラス=>仮想サーバ=>サーバになる。DNS
(167)は、TTLよりも(遙かに)短い測定期間に
基づいて、負荷統計を収集し、割り当てテーブル(22
5)を更新することができる。このように、新しい割り
当てテーブルを迅速に生成して負荷状態をより正確に反
映させられる。全てのサーバ(161163)は
NS(167)から最新バージョンの割り当てテーブル
(225)を入手する。前記と同様に、リクエスタ(1
10153)はこの変更を通知される必要がない。
リクエスタは以前の(ネーム−アドレス)マッピング
に基づいて要求を送信できる。し、もしサーバがそ
のサーバにもはや割り当てられていないリクエスタから
要求を受信すればこのサーバは、当該リクエスタに
将来要求の宛先となるべきサーバ(16116
3)を通知する。現在の要求はそのまま処理され、新し
い割り当て情報はPICSその他の機構を使用して、応
答または返送されるオブジェクトに便乗させられる。サ
ーバが過負荷状態になった場合、このサーバは、DNS
(167)へアラーム信号を送信できる。アラームを受
信するたびに、DNS(167)は割り当てテーブル
を再計算して任意の過負荷状態のサーバに割り当てられ
た要求の数を減少させることができる。リクエスタは
割り当てテーブルがクラス−サーバ割り当てになるよう
、複数のクラスに区画することもできる。
【0065】図15を参照して、DNS(167)ルー
ティング論理の例を説明する。DNS(167)を通し
て、リクエスタ(110)にサーバ(162)が割り当
てられているものと仮定する。従来技術では、このマッ
ピングはあるTTL期間、例えば、5分間のTTL期間
だけ有効である。本発明によれば、更新された割り当て
テーブルは例えば1分間というより短い間隔で生成で
き、リクエスタ(110)は負荷を減らされたサーバ
(163)割り当てられる。リクエスタ(110)
この時点では変更を知る必要がない。リクエスタは
同じサーバ(162)へ次の要求を送信する。し、サ
ーバ(162)はDNS(167)から新しい割り当
てテーブルを受信している。サーバ(162)は要求を
処理するが、リクエスタ(110)へ返送するオブジェ
クトにメッセージを便乗させることにより、リクエスタ
(110)に対し、将来の要求をサーバ(163)へ送
信するように通知する。こうすることトラフィック
を追加せずにTTLの悪影響を除去できる。
【0066】当業者には明らかなように、本発明の動的
ルーティング方法異種リクエスタ環境でも有効であ
る。この異種リクエスタ環境とは、リクエスタの一部が
通常のプロキシ/クライアント・ステーションであり、
これらのステーションがルーティング・プロトコルを認
識せず、しかもキャッシュ・ヒット率及び負荷平衡
向上させるという協動作業に参加しないようなものであ
【図面の簡単な説明】
【図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 割り当てテーブル
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平8−214063(JP,A) 特開 平10−150470(JP,A) 特開 平9−265460(JP,A) (58)調査した分野(Int.Cl.6,DB名) H04L 12/28 H04L 12/56 G06F 13/00 351 - 357

Claims (24)

    (57)【特許請求の範囲】
  1. 【請求項1】リクエスタからのオブジェクト要求を処理
    するサーバの集合内でオブジェクト要求を動的にルーテ
    ィングするための方法であって、(a)オブジェクト要求を受信したサーバにおいて、要
    求されたオブジェクトに対する現在のサーバ割り当てを
    示すメタ情報を、 要求されたオブジェクトに便乗させ
    当該オブジェクトを返送するステップと、(b)前記返送されたオブジェクトを受信したリクエス
    タにおいて、前記 メタ情報に従ってサーバ割り当て用の
    ルーティング情報を動的に更新するステップを含む
    前記方法。
  2. 【請求項2】前記集合内のサーバ間で負荷を平衡させる
    ステップと、前記 要求されたオブジェクトに対するキャッシュ・ヒッ
    ト率を最適化するステップをさらに含む請求項1に
    記載の方法。
  3. 【請求項3】前記集合内のサーバ間で負荷を平衡させる
    ステップをさらに含む請求項1に記載の方法。
  4. 【請求項4】前記集合がインターネット環境における
    プロキシ・サーバのクラスタまたはウェブ・サーバのク
    ラスタから成る、請求項1に記載の方法。
  5. 【請求項5】リクエスタからのオブジェクト要求を処理
    する複数のプロキシ・サーバ間でオブジェクト要求を
    ルーティングするための方法であって、(a) 要求されたオブジェクトのオブジェクト識別子
    クラスにマッピングするステップと、(b)前記クラス及びクラス−サーバ割り当てテーブル
    に基づいてサーバを割り当てるステップと、 (c)記ステップ(b)に応答して、更新されたサー
    バ割り当てをリクエスタに通知するステップを含む
    前記方法。
  6. 【請求項6】リクエスタからのオブジェクト要求を処理
    する複数のウェブ・サーバ間でオブジェクト要求を動的
    ルーティングするための方法であって、(a)一のホスト名またはアドレスに向けられたオブ
    ジェクト要求を、要求されたオブジェクトの識別子に従
    ってクラスタ内の異なるサーバに割り当てるステップ
    と、(b) 更新されたサーバ割り当てを、リクエスタに通知
    するステップと、(c)リ クエスタにおいて、要求されたオブジェクト
    の更新されたサーバ割り当てを後続のオブジェクト要
    のために動的に保するステップを含む、前記
    法。
  7. 【請求項7】前記負荷平衡させるステップが各クラ
    スに関連する負荷の関数として、クラスをサーバに割り
    当てるステップをさらに含む請求項2に記載の方法。
  8. 【請求項8】前記負荷平衡させるステップが、クラス
    の総数よりも少ない数のクラスをサーバに漸増的再割
    り当てるステップをさらに含む請求項2に記載の方
    法。
  9. 【請求項9】前記ステップ(a)、前記ルーティング
    情報を更新するためにPICSプロトコル使用する、
    請求項1に記載の方法。
  10. 【請求項10】各リクエスタ、要求されたオブジェク
    の現在のサーバ割り当て要求を通知するステップを
    さらに含む請求項1に記載の方法。
  11. 【請求項11】前記通知するステップが、要求されたオ
    ブジェクトのクラスに基づいて前記現在のサーバ割り当
    てを決定するためにPICSプロトコルを使用する、
    求項10に記載の方法。
  12. 【請求項12】オブジェクト識別子をクラスにマッピン
    グするステップと、前記 クラス及びクラス−サーバ割り当てテーブルに基づ
    いてサーバを割り当てるステップをさらに含む請求
    2または6に記載の方法。
  13. 【請求項13】前記マッピングするステップがオブジ
    ェクト識別子をハッシュ・テーブル経由でクラスまたは
    ハッシュ・クラスにマッピングするステップをさらに含
    請求項12に記載の方法。
  14. 【請求項14】リクエスタにおいて、サーバ選択用のク
    ラス−サーバ割り当てテーブルを保持するステップをさ
    らに含み、 前記クラス−サーバ割り当てテーブルを保持するステッ
    プが、 各オブジェクト要求のオブジェクト識別子をクラスにマ
    ッピングするステップと、前記 クラス−サーバ割り当てテーブル内に、前記マッピ
    ングされたクラスに対応する有効なサーバ割り当てが存
    在しなければ、アービトレータに対しマッピング要求を
    発行するステップと、 前記マッピング要求に応答して前記アービトレータから
    返送されるクラス−サーバ再割り当て情報に基づいて、
    前記クラス−サーバ割り当てテーブルを更新するステッ
    を含む、請求項2、5または6に記載の方法。
  15. 【請求項15】リクエスタからのオブジェクト要求を処
    理するサーバの集合内でオブジェクト要求を動的にルー
    ティングするための方法であって、(a)リ クエスタ識別子及びIPアドレスのいずれかを
    含むマッピング要求をリクエスタからサーバに定期的
    送信するステップと、(b) 前記リクエスタ識別子及びIPアドレスのいずれ
    かを、サーバの負荷状態及びサーバの処理能力のいずれ
    かに基づいて、前記集合内のサーバにマッピングするス
    テップと、(c)記ステップ(b)に応答してサーバ・マッピ
    ングを全てのサーバに送信するステップと、(d) いずれかサーバが当該サーバに割り当てられて
    いないリクエスタから要求を受信した場合に当該
    サーバが当該リクエスタに対しリクエスタ−サーバ割り
    当ての変更を通知するステップを含む、前記方法。
  16. 【請求項16】前記ステップ(d)が、前記いずれかの
    サーバによって前記要求を処理するステップをさらに含
    請求項15に記載の方法。
  17. 【請求項17】前記リクエスタ識別子及びIPアドレス
    のいずれかをクラスに区画化するステップと、 アービトレータ及び前記集合内のサーバにおいてクラス
    −サーバ割り当てテーブルを保するステップをさら
    に含む請求項15に記載の方法。
  18. 【請求項18】前記アービトレータが、インターネット
    環境におけるドメイン・ネーム・サーバ(DNS)から
    成る、請求項17に記載の方法。
  19. 【請求項19】リクエスタ識別子をクラスにマッピング
    し、当該クラスに基づいてサーバを割り当てるステップ
    をさらに含む請求項3に記載の方法。
  20. 【請求項20】サーバが更新されたメタ情報をリクエス
    タへ信し、リクエスタが当該更新されたメタ情報に従
    って前記ルーティング情報を更新するステップをさらに
    含む請求項3に記載の方法。
  21. 【請求項21】リクエスタからのオブジェクト要求を処
    理するサーバの集合でオブジェクト要求を動的にルー
    ティングするための方法ステップを実するようにマシ
    ン上で実行可能な命令プログラムを有形的に且つマシン
    可読形式で記憶するプログラム記憶装置であって、前記
    方法ステップが、(a)オブジェクト要求を受信したサーバにおいて、要
    求されたオブジェクトに対する現在のサーバ割り当てを
    示すメタ情報を、 要求されたオブジェクトに便乗させ
    当該オブジェクトを返送するステップと、(b)前記返送されたオブジェクトを受信したリクエス
    タにおいて、前記 メタ情報に従ってサーバ割り当て用の
    ルーティング情報を動的に更新するステップを含む
    前記プログラム記憶装置。
  22. 【請求項22】リクエスタからのオブジェクト要求を処
    理するサーバの集合でオブジェクト要求を動的にルー
    ティングするための方法ステップを実するようにマシ
    ン上で実行可能な命令プログラムを有形的に且つマシン
    可読形式で記憶するプログラム記憶装置であって、前記
    方法ステップが、(a) 要求されたオブジェクトのオブジェクト識別子
    クラスにマッピングするステップと、(b)前記クラス及びクラス−サーバ割り当てテーブル
    に基づいてサーバを割り当てるステップと、 (c)記ステップ(b)に応答して、更新されたサー
    バ割り当てをリクエスタに通知するステップを含む
    前記プログラム記憶装置。
  23. 【請求項23】リクエスタからのオブジェクト要求を処
    理する複数のウェブ・サーバでオブジェクト要求を動
    的にルーティングするための方法ステップを実する
    うにマシン上で実行可能な命令プログラムを有形的に且
    マシン可読形式で記憶するプログラム記憶装置であっ
    て、前記方法ステップが、(a)一のホスト名またはアドレスに向けられたオブ
    ジェクト要求を、要求されたオブジェクトの識別子に従
    ってクラスタ内の異なるサーバに割り当てるステップ
    と、(b) 更新されたサーバ割り当てを、リクエスタに通知
    するステップと、(c)リ クエスタにおいて、前記要求されたオブジェク
    前記更新されたサーバ割り当てを後続のオブジ
    ェクト要求のために動的に保するステップを含む
    前記プログラム記憶装置。
  24. 【請求項24】リクエスタからのオブジェクト要求を処
    理するサーバの集合でオブジェクト要求を動的にルー
    ティングするための方法ステップを実するようにマシ
    ン上で実行可能な命令プログラムを有形的に且つマシン
    可読形式で記憶するプログラム記憶装置であって、前記
    方法ステップが、(a)リ クエスタ識別子及びIPアドレスのいずれかを
    含むマッピング要求を、リクエスタからサーバに定期的
    送信するステップと、(b)記リクエスタ識別子及びIPアドレスのいずれ
    かを、サーバの負荷状態及びサーバの処理能力のいずれ
    かに基づいて、前記集合内のサーバにマッピングするス
    テップと、(c)記ステップ(b)に応答してサーバ・マッピ
    ングをてのサーバに信するステップと、(d)いずれかの サーバが当該サーバに割り当てられて
    いないリクエスタから要求を受信した場合に、当該サー
    バが当該リクエスタに対しリクエスタ−サーバ割り当て
    の変更を通知するステップを含む、前記プログラム記
    憶装置。
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 JPH114261A (ja) 1999-01-06
JP2970760B2 true 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)

Families Citing this family (393)

* 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
JP3372455B2 (ja) * 1997-07-03 2003-02-04 富士通株式会社 パケット中継制御方法,パケット中継装置およびプログラム記憶媒体
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
US7949779B2 (en) * 1998-02-10 2011-05-24 Level 3 Communications, Llc Controlling subscriber information rates in a content delivery network
US6185598B1 (en) * 1998-02-10 2001-02-06 Digital Island, Inc. Optimized network resource location
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 分散処理システム、分散処理方法、その方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体、サーバ装置およびクライアント装置
ATE518182T1 (de) * 1999-02-26 2011-08-15 Henry Haugland Massenerzeugung einzelner virtuellen servern, virtuellen webseiten sowie virtuellen webobjekten
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
US7370005B1 (en) * 1999-05-11 2008-05-06 Peter Ham Inventory replication based upon order fulfillment rates
AU4839300A (en) 1999-05-11 2000-11-21 Webvan Group, Inc. Electronic commerce enabled delivery system and method
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
US7146354B1 (en) * 1999-06-18 2006-12-05 F5 Networks, Inc. Method and system for network load balancing with a compound data structure
US20010049741A1 (en) * 1999-06-18 2001-12-06 Bryan D. Skene Method and system for balancing load distribution on a wide area network
US7346695B1 (en) 2002-10-28 2008-03-18 F5 Networks, Inc. System and method for performing application level persistence
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
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
US7925713B1 (en) 1999-11-22 2011-04-12 Akamai Technologies, Inc. Method for operating an integrated point of presence server network
US6694358B1 (en) 1999-11-22 2004-02-17 Speedera Networks, Inc. Performance computer network method
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
WO2001055878A1 (en) * 2000-01-28 2001-08-02 Ibeam Broadcasting Corporation A system and method for rewriting a media resource request and/or response between origin server and client
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
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
US6754716B1 (en) 2000-02-11 2004-06-22 Ensim Corporation Restricting communication between network devices on a common network
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
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
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
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
AU2001259075A1 (en) * 2000-04-17 2001-10-30 Circadence Corporation System and method for web serving
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
US7020709B1 (en) * 2000-06-30 2006-03-28 Intel Corporation System and method for fault tolerant stream splitting
US7099915B1 (en) * 2000-06-30 2006-08-29 Cisco Technology, Inc. Server load balancing method and system
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
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
DE60144335D1 (de) * 2000-08-31 2011-05-12 Goldpocket Interactive Inc Systeme und verfahren für die interaktion mit benutzern in einem kommunikationsnetzwerk
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
US8949471B2 (en) * 2000-11-02 2015-02-03 Oracle America, Inc. TCP/UDP acceleration
KR100459951B1 (ko) * 2000-11-04 2004-12-03 주식회사 다산네트웍스 맥 어드레스 치환을 이용한 서버 로드 밸런싱 방법 및 장치
KR100454980B1 (ko) * 2000-11-13 2004-11-08 주식회사 다산네트웍스 가상 드라이버를 이용한 라우터 및 라우팅방법
US20020129162A1 (en) * 2000-11-22 2002-09-12 Mcgregor Gregory M. 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
JP3963690B2 (ja) * 2001-03-27 2007-08-22 富士通株式会社 パケット中継処理装置
US7065587B2 (en) 2001-04-02 2006-06-20 Microsoft Corporation Peer-to-peer name resolution protocol (PNRP) and multilevel cache for use therewith
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
CN1285047C (zh) * 2001-08-30 2006-11-15 Bea系统公司 具有并行检查的群集高速缓存
US20030046230A1 (en) * 2001-08-30 2003-03-06 Jacobs Dean Bernard Method for maintaining account consistency
US7028030B2 (en) 2001-08-30 2006-04-11 Bea Systems, Inc. Cluster caching with concurrency checking
KR20030021114A (ko) * 2001-09-05 2003-03-12 주식회사 미리텍 부하분산기
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 서버간 로드 분산 처리 방법
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
US7392390B2 (en) * 2001-12-12 2008-06-24 Valve Corporation Method and system for binding kerberos-style authenticators to single clients
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
WO2003073206A2 (en) * 2002-02-22 2003-09-04 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
US7337226B2 (en) 2002-05-10 2008-02-26 Oracle International Corporation Method and mechanism for implementing dynamic sizing of 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
US7774466B2 (en) * 2002-10-17 2010-08-10 Intel Corporation Methods and apparatus for load balancing storage nodes in a distributed storage area network 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
US7389510B2 (en) 2003-11-06 2008-06-17 International Business Machines Corporation Load balancing of servers in a cluster
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
WO2005089241A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method for providing object triggers
US8057307B2 (en) * 2004-04-08 2011-11-15 International Business Machines Corporation Handling of players and objects in massive multi-player on-line games
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
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
US8271980B2 (en) 2004-11-08 2012-09-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
US8631130B2 (en) 2005-03-16 2014-01-14 Adaptive Computing Enterprises, Inc. Reserving resources in an on-demand compute environment from a local 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
US20060248547A1 (en) * 2005-04-14 2006-11-02 International Business Machines Corporation Multi-level cache apparatus and method for enhanced remote invocation performance
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
US7817647B2 (en) 2005-04-22 2010-10-19 Microsoft Corporation Flower-petal resolutions for PNRP
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
US7991910B2 (en) 2008-11-17 2011-08-02 Amazon Technologies, Inc. Updating routing information based on client location
US8028090B2 (en) 2008-11-17 2011-09-27 Amazon Technologies, Inc. Request routing utilizing client location information
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
EP2073505B1 (en) * 2007-12-17 2012-04-04 Nokia Siemens Networks Oy Query routing in distributed database system
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
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
US7930427B2 (en) * 2008-03-03 2011-04-19 Microsoft Corporation Client-side load balancing
US8392482B1 (en) 2008-03-31 2013-03-05 Amazon Technologies, Inc. Versioning of database partition maps
US8156243B2 (en) 2008-03-31 2012-04-10 Amazon Technologies, Inc. Request routing
US8447831B1 (en) 2008-03-31 2013-05-21 Amazon Technologies, Inc. Incentive driven content delivery
US8533293B1 (en) 2008-03-31 2013-09-10 Amazon Technologies, Inc. Client side cache management
US7970820B1 (en) 2008-03-31 2011-06-28 Amazon Technologies, Inc. Locality based content distribution
US8321568B2 (en) * 2008-03-31 2012-11-27 Amazon Technologies, Inc. Content 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
US8601090B1 (en) 2008-03-31 2013-12-03 Amazon Technologies, Inc. Network resource identification
US9762692B2 (en) 2008-04-04 2017-09-12 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)
CN102047244B (zh) 2008-04-04 2013-02-27 第三雷沃通讯有限责任公司 在内容分发网络(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
US7925782B2 (en) 2008-06-30 2011-04-12 Amazon Technologies, Inc. Request routing using network computing components
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
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
US8732309B1 (en) 2008-11-17 2014-05-20 Amazon Technologies, Inc. Request routing utilizing cost information
US8521880B1 (en) 2008-11-17 2013-08-27 Amazon Technologies, Inc. Managing content delivery network service providers
US8122098B1 (en) 2008-11-17 2012-02-21 Amazon Technologies, Inc. Managing content delivery network service providers by a content broker
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
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 株式会社日立製作所 マルチプロセッサによるパケット処理装置およびパケット処理方法
US8412823B1 (en) 2009-03-27 2013-04-02 Amazon Technologies, Inc. Managing tracking information entries in resource cache components
US8688837B1 (en) 2009-03-27 2014-04-01 Amazon Technologies, Inc. Dynamically translating resource identifiers for request routing using popularity information
US8756341B1 (en) 2009-03-27 2014-06-17 Amazon Technologies, Inc. Request routing utilizing popularity information
US8521851B1 (en) 2009-03-27 2013-08-27 Amazon Technologies, Inc. DNS query processing using resource identifiers specifying an application broker
US8782236B1 (en) 2009-06-16 2014-07-15 Amazon Technologies, Inc. Managing resources using resource expiration data
JP5288204B2 (ja) * 2009-08-10 2013-09-11 株式会社日立製作所 ゲートウェイシステム及び制御方法
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
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US10877695B2 (en) 2009-10-30 2020-12-29 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
US9003035B1 (en) 2010-09-28 2015-04-07 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
US10097398B1 (en) 2010-09-28 2018-10-09 Amazon Technologies, Inc. Point of presence management in request routing
US9712484B1 (en) 2010-09-28 2017-07-18 Amazon Technologies, Inc. Managing request routing information utilizing client identifiers
US10958501B1 (en) 2010-09-28 2021-03-23 Amazon Technologies, Inc. Request routing information based on client IP groupings
US8468247B1 (en) 2010-09-28 2013-06-18 Amazon Technologies, Inc. Point of presence management in request routing
US8938526B1 (en) 2010-09-28 2015-01-20 Amazon Technologies, Inc. Request routing management based on network components
US8577992B1 (en) 2010-09-28 2013-11-05 Amazon Technologies, Inc. Request routing management based on network components
US8930513B1 (en) 2010-09-28 2015-01-06 Amazon Technologies, Inc. Latency measurement in resource requests
US8924528B1 (en) 2010-09-28 2014-12-30 Amazon Technologies, Inc. Latency measurement in resource requests
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
KR20120134287A (ko) * 2011-06-02 2012-12-12 주식회사 비씨클라우드 동적 웹 라우팅 방법
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
US9083743B1 (en) 2012-03-21 2015-07-14 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 中国工商银行股份有限公司 一种多重负载均衡处理装置与方法
US9448862B1 (en) 2013-05-16 2016-09-20 Ca, Inc. Listening for externally initiated requests
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
US10376792B2 (en) 2014-07-03 2019-08-13 Activision Publishing, Inc. Group composition matchmaking 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
US10097448B1 (en) 2014-12-18 2018-10-09 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
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
US9887931B1 (en) 2015-03-30 2018-02-06 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
US9819567B1 (en) 2015-03-30 2017-11-14 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
US11185784B2 (en) 2015-10-08 2021-11-30 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10099140B2 (en) 2015-10-08 2018-10-16 Activision Publishing, Inc. System and method for generating personalized messaging campaigns for video game players
US10232272B2 (en) 2015-10-21 2019-03-19 Activision Publishing, Inc. System and method for replaying video game streams
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
US10270878B1 (en) 2015-11-10 2019-04-23 Amazon Technologies, Inc. Routing for origin-facing points of presence
US10049051B1 (en) 2015-12-11 2018-08-14 Amazon Technologies, Inc. Reserved cache space in content delivery networks
US10257307B1 (en) 2015-12-11 2019-04-09 Amazon Technologies, Inc. Reserved cache space in content delivery networks
FR3046008A1 (fr) * 2015-12-18 2017-06-23 Tdf Systeme de repartition de charge geolocalise
US10348639B2 (en) 2015-12-18 2019-07-09 Amazon Technologies, Inc. Use of virtual endpoints to improve data transmission rates
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
US10226703B2 (en) 2016-04-01 2019-03-12 Activision Publishing, Inc. System and method of generating and providing interactive annotation items based on triggering events in a video game
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
US10380010B2 (en) 2016-06-30 2019-08-13 International Business Machines Corporation Run time and historical workload report scores for customer profiling visualization
US10346289B2 (en) 2016-06-30 2019-07-09 International Business Machines Corporation Run time workload threshold alerts 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
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
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
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
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
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
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
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
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
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
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
US10469513B2 (en) 2016-10-05 2019-11-05 Amazon Technologies, Inc. Encrypted network addresses
US10500498B2 (en) 2016-11-29 2019-12-10 Activision Publishing, Inc. System and method for optimizing virtual games
US10831549B1 (en) 2016-12-27 2020-11-10 Amazon Technologies, Inc. Multi-region request-driven code execution system
US10372499B1 (en) 2016-12-27 2019-08-06 Amazon Technologies, Inc. Efficient region selection system for executing request-driven code
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
LT3767493T (lt) 2017-08-28 2023-03-10 Bright Data Ltd. Būdas pagerinti turinio parsisiuntimą, naudojant tunelinius įrenginius
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
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
US10561945B2 (en) 2017-09-27 2020-02-18 Activision Publishing, Inc. Methods and systems for incentivizing team cooperation in multiplayer gaming environments
US10864443B2 (en) 2017-12-22 2020-12-15 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
LT4075304T (lt) 2019-02-25 2023-07-25 Bright Data Ltd. Turinio parsisiuntimo, naudojant url bandymų mechanizmą, sistema ir būdas
EP4027618B1 (en) 2019-04-02 2024-07-31 Bright Data Ltd. Managing a 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
CN112925636B (zh) * 2019-12-06 2024-10-18 北京沃东天骏信息技术有限公司 一种请求调度、处理方法和装置
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
US20230229519A1 (en) * 2022-01-14 2023-07-20 Goldman Sachs & Co. LLC Task allocation across processing units of a distributed system

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

Also Published As

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

Similar Documents

Publication Publication Date Title
JP2970760B2 (ja) 動的ルーティング方法及びプログラム記憶装置
US6122666A (en) Method for collaborative transformation and caching of web objects in a proxy network
US7565450B2 (en) System and method for using a mapping between client addresses and addresses of caches to support content delivery
US6311216B1 (en) Method, computer program product, and system for client-side deterministic routing and URL lookup into a distributed cache of URLS
US7577754B2 (en) System and method for controlling access to content carried in a caching architecture
US7343422B2 (en) System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
US7725596B2 (en) System and method for resolving network layer anycast addresses to network layer unicast addresses
US6377991B1 (en) Method, computer program product, and system for migrating URLs within a dynamically changing distributed cache of URLs
US6078943A (en) Method and apparatus for dynamic interval-based load balancing
US7908337B2 (en) System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content
JP4413426B2 (ja) 最適化されたネットワーク・リソース・ロケーション
US6341311B1 (en) Directing data object access requests in a distributed cache
US5924116A (en) Collaborative caching of a requested object by a lower level node as a function of the caching status of the object at a higher level node
RU2156546C2 (ru) Балансировка нагрузки через процессоры компьютера-сервера
US6490615B1 (en) Scalable cache
KR100255498B1 (ko) 동적 페이지 링크 리타겟팅 방법
KR20010075542A (ko) 협동 캐시 서버의 부하 조정 방법
WO2001080014A2 (en) System and method for on-network storage services
Rabinovich Issues in web content replication
EP1227638B1 (en) High performance client-server communication system
EP1277327B1 (en) System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content
Bochmann et al. Scalability of web-based electronic commerce systems
WO2001084802A2 (en) System and method for using uniform resource locators to map application layer content names to network layer anycast addresses
WO2001084803A2 (en) System and method for resolving network layer anycast addresses to network layer unicast addresses

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