JP2003108537A - ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム - Google Patents

ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム

Info

Publication number
JP2003108537A
JP2003108537A JP2001278227A JP2001278227A JP2003108537A JP 2003108537 A JP2003108537 A JP 2003108537A JP 2001278227 A JP2001278227 A JP 2001278227A JP 2001278227 A JP2001278227 A JP 2001278227A JP 2003108537 A JP2003108537 A JP 2003108537A
Authority
JP
Japan
Prior art keywords
server
processing
network
client
service request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2001278227A
Other languages
English (en)
Inventor
Hidekazu Tazoe
英一 田添
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
Priority to JP2001278227A priority Critical patent/JP2003108537A/ja
Priority to US10/242,105 priority patent/US20030051042A1/en
Publication of JP2003108537A publication Critical patent/JP2003108537A/ja
Withdrawn 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/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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【課題】 過大な設備投資をすることなく、ネットワー
ク上のサービス要求の効果的な負荷分散を実現する。 【解決手段】 ネットワークに接続された窓口サーバを
追加する。クライアントから窓口サーバにサービス要求
が送信されると、窓口サーバは当該サービス要求に対し
てテーブルから処理サーバを選択し、選択された処理サ
ーバの情報をクライアントに送信する。その後の処理は
クライアントと選択された処理サーバの間で行われる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータネッ
トワーク上のサーバへのサービス要求の集中に対して負
荷分散を行い、混雑度を緩和するために有効な技術に関
する。
【0002】
【従来の技術】ネットワークに接続されたコンピュータ
を利用する場合、通常、ユーザはクライアント・コンピ
ュータを操作し、ネットワークを通じてサーバ・コンピ
ュータにサービスを要求する。サーバはサービス要求に
応じて処理を行い処理結果をクライアントに返す。近
年、コンピュータ・ネットワークの利用、特にインター
ネットの普及が進み、ネットワークのユーザが急激に増
加している。それに伴い、ネットワーク上を行き交うサ
ービス要求(トラフィック)の数量も爆発的に増加して
いる。そのため、あるサーバに対するサービス要求が集
中する場合があり、そのサーバに対するトラフィック量
がサーバの処理能力を超えることがある。そのような場
合、サーバが過負荷となりサービス要求の処理が遅滞す
るケースや、最悪処理が不可能となるケースが増加して
いる。この問題に対する対策の1つとして、クライアン
トからのサービス要求を1のサーバで処理するのではな
く、複数のサーバに割り振る負荷分散という手法があ
る。負荷分散の手法を使用することにより、個々のサー
バが処理すべきサービス要求の数量を減らすことがで
き、サービス要求の処理の遅滞を緩和することが可能と
なる。
【0003】従来技術の負荷分散の方法として、図7に
示すシステムにより実現されるDNSラウンドロビン方
式がある。簡単に言えば、DNSラウンドロビン方式は
インターネットなどのTCP/IPのネットワークで、
ホスト名からIPアドレスを割り出すサービスを提供す
るDNS(Domain Name System)サ
ーバに複数の処理サーバ(サービス要求に対する実際の
サービス処理を行うサーバ)の情報を記述したテーブル
60を準備し、クライアントからのサービス要求に対し
てテーブル内に記述された処理サーバを順に割り当てて
サービスを提供するという負荷分散の方法である。ユー
ザがクライアント10を操作してURL(Unifor
m Resource Locator。TCP/IP
ネットワーク上のリソースのアドレス・ロケーションを
表す。)を指定し、ネットワーク20を介してサービス
を要求すると、近くのDNSサーバ30に問い合わせが
行われる。DNSサーバ30がテーブル60に記述され
た複数の処理サーバ50a−50nのいずれかを選択し
てIPアドレスの割り当てを行う。割り当てられた処理
サーバがサービスの処理を実行し、結果をクライアント
10に返す。
【0004】また別の従来技術の負荷分散の方法とし
て、図8に示すシステムにより実現されるディスパッチ
ャ方式がある。ディスパッチャ方式では図7に示すよう
に、すべてのサービス要求のディスパッチ(割り当て)
を行うディスパッチャ・サーバ70を処理サーバ50a
−50nの間に設置する。ユーザはクライアント10を
操作してディスパッチャ・サーバ70に対してサービス
を要求する。DNSサーバ30によりIPアドレスへの
変換が行われ、ディスパッチャ・サーバ70へのアクセ
スが行われる。その後、サービス要求に応じてディスパ
ッチャ・サーバ70が処理サーバ50a−50nのいず
れかを選択し、選択した処理サーバに対してサービス要
求を割り当てる。割り当てられた処理サーバがサービス
の処理を実行、結果をディスパッチャ・サーバ70を通
じてクライアント10に返す。
【0005】
【発明が解決しようとする課題】しかし、前記の従来技
術の負荷分散の方法では以下のような問題がある。すな
わち、DNSラウンドロビン方式では、ネットワーク上
に存在するすべてのDNSのテーブルを書き換える必要
があるため、テーブルの書き換えが完了するまでに相当
の時間を要する。このため、処理サーバの構成の変化に
対して迅速な対応が困難となり、割り当ての際に漏れが
生じる場合がある。例えば、新たに処理サーバを増設し
た場合に、当該増設の情報を書き加えられていないDN
Sを使用しているクライアントはDNSが書き換わるま
で増設した処理サーバを利用することができないといっ
た事態が起こり得る。
【0006】一方、ディスパッチャ方式は、すべてのト
ラフィックがディスパッチャ・サーバを通過するため、
ディスパッチャ・サーバの処理能力が全体の隘路となり
得るという問題を内包する。そのため、ディスパチャ・
サーバが隘路となるのを避けるため、ディスパッチャ・
サーバの処理能力を挙げる必要があり、システムが大規
模かつ複雑になる傾向がある。結果、ハードウェア・ソ
フトウェアに対する設備投資が大きなものとなり、か
つ、内容処理が複雑であるがゆえにセキュリティ・ホー
ルなどのセキュリティ上の問題が混入しやすい。
【0007】本発明はかかる問題を解決するためになさ
れたものであり、大きな設備投資を必要としないシンプ
ルで効果的な負荷分散の実現する技術を提供することを
主な目的とする。
【0008】
【課題を解決するための手段】本発明の概略を説明すれ
ば、以下の通りである。すなわち前述の目的は、ネット
ワークに接続されたクライアント、窓口サーバと複数の
処理サーバからなるコンピュータシステムにおいてサー
ビス要求の負荷を分散する方法であって、クライアント
から窓口サーバのアドレスを指定して窓口サーバに対し
サービス要求を行うステップと、前記サービス要求に応
じて窓口サーバがサービス要求を処理するサーバを前記
複数の処理サーバより選択するステップと、処理サーバ
の選択情報を窓口サーバからクライアントに送信するス
テップとを含む方法によって達成される。処理サーバの
選択情報が窓口サーバから送信された後は、クライアン
トに対するサービス処理は当該選択された処理サーバに
より行われる。
【0009】また、前述の方法において、テーブルに1
以上の特定のネットワーク上のリソースのアドレス・ロ
ケーションとそれらに対する処理内容を記述し、窓口サ
ーバがサービス要求からネットワーク上のリソースのア
ドレス・ロケーションを切り出し、当該切り出されたア
ドレス・ロケーションとテーブル内のアドレス・ロケー
ションを比較して処理内容を決定し、当該処理内容の処
理を行うようにすることができる。
【0010】さらに、前述の方法において、ネットワー
クをTCP/IPネットワークとし、アドレス・ロケー
ションをURLとし、クライアントにより送信されるサ
ービス要求をHTTPプロトコルに従うリクエストと
し、処理サーバの選択情報の送信はリクエストに対する
HTTPプロトコルに従うレスポンスであるようにし、
窓口サーバがサービス要求内のGET文からURLを切
り出し、HTTP302によりクライアントに処理サー
バの選択情報をネットワークを通じて送信するようにす
ることができる。
【0011】かかる方法によれば、システムの構成の変
更に対しては窓口サーバが参照するテーブルを書き換え
れば良いだけなので、DNSラウンドロビン方式に比較
して変化に対して迅速な対応が可能な負荷分散を行うこ
とができる。また、窓口サーバは初めの問い合わせの時
にアクセスされるだけなので、ディスパッチャ方式のよ
うにディスパッチャ・サーバが処理の隘路になるような
ことも少ない。
【0012】この方法は処理が単純であるので、実装が
容易であり、かつ、プログラムの開発量もほとんど必要
なく実現が可能である。また、かかる単純さは人為的ミ
スに起因する潜在的なバグ(セキュリティ・ホールな
ど)の発生を抑えることに寄与し、外部からの攻撃に対
してロバストになる。また、装置の小型化(小デバイス
化)にも寄与し、安価なシステム構築を可能とする。
【0013】なお、本発明は、前記した方法としての発
明の他、「コンピュータシステム」あるいは「窓口サー
バ」として把握することも可能である。また、本発明に
おいてHTTPには、セキュリティ機能を付加したプロ
トコルであるHTTPSなども含まれるものとする。
【0014】
【発明の実施の形態】以下、本発明の実施の形態を図面
に基づいて詳細に説明する。ただし、本発明は多くの異
なる態様で実施することが可能であり、本実施の形態の
記載内容に限定して解釈すべきではない。なお、実施の
形態の全体を通して同じ要素には同じ番号を付してい
る。
【0015】以下の実施の形態では、主に方法またはシ
ステムについて説明するが、当業者であれば明らかな通
り、本発明はコンピュータで使用可能なプログラムとし
ても実施できる。したがって、本発明は、ハードウェア
としての実施形態、ソフトウェアとしての実施形態また
はソフトウェアとハードウェアとの組合せの実施形態を
とることができる。プログラムは、ハードディスク、C
D−ROM、光記憶装置または磁気記憶装置等の任意の
コンピュータ可読媒体に記録できる。
【0016】図1は、本発明のサービス要求の負荷分散
を適用するシステム構成の一例を示した概念図である。
本実施の形態のシステムは、クライアント10、ネット
ワーク20、DNSサーバ30、テーブル60を格納し
た窓口サーバ40、および複数の処理サーバ50a−5
0nが含まれる。
【0017】クライアント10は、周知のインターネッ
トに接続可能な端末で当業者は適宜実現可能である。ま
た、クライアント10とネットワーク20の接続は、ダ
イアルアップ接続等によりISP(Internet
Service Provier、図示せず)を介して
行うとよい。クライアント10からISPへの接続はダ
イアルアップ接続に限られず、例えば、専用線、ADS
L(Asymmetric Digital Subs
criber Line)、CATV(Cable T
elevision)等を用いた常時接続により行って
もよい。
【0018】ネットワーク20は、クライアント10、
窓口サーバ40、処理サーバ50a−50nなどを接続
する通信経路であり、一例としてインターネットにより
実現することができる。インターネットであるネットワ
ーク20は良く知られたように、TCP/IP(Tra
nsmission Control Protoco
l/Internet Protocol)を用いてシ
ステム間を接続する。ネットワーク20ではグローバル
アドレスまたはローカルアドレスで表されるIPアドレ
スによって相互に通信するシステムが特定される。
【0019】DNSサーバ30は、一般的には、ホスト
名からIPアドレスを割り出すサービスを提供し、本実
施の形態においては、クライアントが窓口サーバ40に
サービスをリクエストした場合や処理サーバがクライア
ント10に実際にサービスを提供する場合などにホスト
名からIPアドレスを割り出すサービスを提供する。
【0020】窓口サーバ40は、処理サーバ50a−5
0nに関する情報を記載したテーブル60を格納してお
り、クライアント10からサービス要求があった場合
に、テーブル60を参照して当該サービス要求に対し実
際にサービスを処理すべき処理サーバを選択し、クライ
アントに選択した処理サーバに関する情報を通知するサ
ービスを提供する。本実施の形態においては、窓口サー
バ40のホスト名は"www.ibm.com"であるとする。図3
に示すように、テーブル60には後述する処理サーバ5
0a−50nのホスト名がリスト記述されている。
【0021】処理サーバ50a−50nは、クライアン
ト10からのサービス要求を実際に処理するためのサー
バである。具体的に本実施の形態においては、クライア
ント10からのサービス要求はDNSサーバ30を使用
し、ネットワーク20を通じて窓口サーバ40に送られ
る。当該サービス要求に応じて、窓口サーバ40はサー
ビス要求を実際処理するサーバとして、処理サーバ50
a−50nのいずれかを選択する。どの処理サーバを選
択したかの情報がクライアント10に通知され、当該サ
ービス要求を処理するにあたっての、クライアント10
と処理サーバの対応が確立される。以降は、クライアン
ト10と選択された処理サーバでやりとりが行われ、サ
ービス要求に対する結果がクライアント10に提供され
る。本実施の形態においては、処理サーバ50a−50
nのホスト名は"www-1.ibm.com"、"www-2.ibm.com"…"w
ww-n.ibm.com"であるとする。
【0022】クライアント10、DNSサーバ30、窓
口サーバ40、処理サーバ50a−50nは、そのハー
ドウェア構成として、たとえば、中央演算処理装置(C
PU)、主記憶装置(メインメモリ:RAM)、不揮発
性記憶装置(ROM)、コプロセッサ、キャッシュメモ
リ、入出力制御装置(I/O)、ハードディスク装置等
の外部記憶装置、インターネット等のネットワークに接
続可能な通信手段等、一般的ハードウェア資源を備える
コンピュータシステムを例示できる。コンピュータシス
テムには、パーソナルコンピュータ、ワークステーショ
ン、メインフレームコンピュータ等各種のコンピュータ
が含まれ、PDA(PersonalData Ass
istant)などのより小型のコンピュータも含める
ことができる。
【0023】クライアント10、DNSサーバ30、窓
口サーバ40、処理サーバ50a−50nは、それらハ
ードウェア資源を活用するためのオペレーティングシス
テムあるいはミドルウェア等のソフトウェアを備えるこ
とが好ましい。
【0024】以降、本発明の第1の実施の形態を説明す
る。図2は、第1の実施の形態のサービス要求の負荷分
散の処理の流れの一例を示した図である。
【0025】第1の実施の形態では、まずステップ10
0においてクライアント10は窓口サーバ40のURL
を指定してサービスを要求する。本実施の形態において
は、サービス要求はHTTPプロトコルに従ってなされ
る。HTTPプロトコルはIETF(Internet
Engineering Task Force)に
より管理されるRFC2616にHTTP1.1が規定
されており、当業者には周知である。もちろんHTTP
1.0など、他のバージョンのHTTPプロトコルを使
用しても本発明は実現可能である。クライアント10か
らのサービス要求はDNSサーバ30でIPアドレス変
換がなされ、その内容が窓口サーバ40に到着する。
【0026】次に、ステップ300において、クライア
ント10からのサービス要求を受け取った窓口サーバ4
0は、テーブル60を使用してサービス要求を処理すべ
き処理サーバを選択する。処理サーバの選択は、例え
ば、テーブル内のホスト名のリストからを順に割り当て
るようにしてもよいし、窓口サーバに処理サーバの混雑
度を測定する機能を設け、混雑度が低いものに割り当て
るようにしても実現できる。この処理は、HTTPプロ
トコルによるサービス要求の内容を解析する必要が全く
ないので極めて軽い処理となる。
【0027】次に、ステップ400において、ステップ
300で選択された処理サーバの情報を窓口サーバ40
からクライアント10へ伝送する。このとき、HTTP
302(リダイレクション)を使用するとよい。なお、
HTTP302はあるサーバに来たサービス要求を別の
サーバに振り替える(リダイレクト)するためのもので
あり、詳細は前述のRFC2616(HTTP1.1)
の10.3.3章に規定されている。
【0028】次に、ステップ500において、選択され
た処理サーバの情報を受け取ったクライアント10は、
当該処理サーバに対して、受け取った情報を使用してア
クセスをする。ステップ400においてHTTP302
が使用された場合は、ユーザはクライアント10でHT
TPプロトコル対応のブラウザを使用し、リダイレクシ
ョンを自動で行う機能を利用することができる。
【0029】次に、ステップ600に進み、サービスの
提供がすべて完了するまではステップ600からNoの
矢印を通じてステップ500に戻りクライアント10と
割り当てられた処理サーバの間でやりとりが繰り返し行
われる。(具体的な処理内容の詳細な説明は省略す
る。)サービスの提供がすべて完了した場合は、ステッ
プ600からYesの矢印を通じてステップ700に進
み、処理は終了する。
【0030】第1の実施の形態によれば、クライアント
からサービス要求が送信されると、窓口サーバは当該サ
ービス要求に対し、テーブルから処理サーバを選択し、
選択された処理サーバの情報をクライアントに送信し、
以降の処理はクライアントと割り当てられた処理サーバ
の間で行われる。いわば、窓口サーバは処理サーバをク
ライアントに紹介するだけであり、窓口サーバ自身には
ほとんど負荷はかからない。また、紹介の処理自体も非
常に単純で軽いものであるので窓口サーバは極めて簡便
な構成で実現が可能である。
【0031】次に、本発明の第2の実施の形態を説明す
る。第2の実施の形態においては、テーブル60に追加
の情報を持たせ、その情報を使用して窓口サーバに拡張
機能を提供することができるようにされている。図4
は、本実施の形態のサービス要求の負荷分散の処理の流
れの一例を示した図である。
【0032】まず、第2の実施の形態においてはステッ
プ1000でクライアントから窓口サーバへのサービス
要求が発信される。この処理は第1の実施の形態のステ
ップ100と同様の手法で実現することができる。
【0033】次に、ステップ1100において、クライ
アント10からのサービス要求を受け取った窓口サーバ
40は、サービス要求内を解析してサービス要求がされ
ているURLを切り出す。図5にHTTPプロトコルに
従ったサービス要求の内容を示す。窓口サーバ40はサ
ービス要求内のGET文(引数の場所にあるデータを取
得する命令を記述する文)からURLを求める。URL
は、ホスト名とGET文の引数から簡単に求める。例え
ば、この場合は窓口サーバ40のホスト名が"www.ibm.c
om"であり、GET文の引数が"/shop1/index.htm"であ
るので、URLは"http://www.ibm.com/shop1/index.ht
m"と求められる。なお、GET文以外の行(メッセージ
・ヘッダやボディー)は以降の処理において不要であ
り、そのまま廃棄することができる。その結果、この処
理は非常に軽いものとすることができる。
【0034】次に、ステップ1200に進み、窓口サー
バ40はステップ1100で求めたURLと追加の情報
を持たせたテーブル60を使用してサービス要求を処理
する処理サーバとその処理内容を決定する。追加の情報
を持たせたテーブル60の例を図6に示す。第1の実施
形態においてはテーブル60には処理サーバのホスト名
を記述されているだけだが、第2の実施形態において
は、サービス要求より切り出したURLおよびリダイレ
クション先URL、リダイレクションの条件(処理内
容)が記述されている。
【0035】図6の例では、表の第1カラムで、サービ
ス要求より切り出したURLが"http://www.ibm.com/sh
op1"の下階層であった場合に"http://www-1.ibm.co
m"、"http://www-2.ibm.com"、"http://www-3.ibm.com"
の3台のサーバでサービスを割り振ることが宣言されて
いる。また、第2カラムでは、サービス要求より切り出
したURLが"http://www.ibm.com/shop2"の下階層であ
り、かつ、混雑度が高い場合に、"http://www-4.ibm.co
m/msg/shop2_busy_msg.htm"に存在するファイルにリダ
イレクトを行う様に宣言され、当該ファイルをメッセー
ジとして表示する様に設定されている。第3カラムで
は、第1カラム、第2カラムに宣言された場合以外は"h
ttp://www-5.ibm.com"…"http://www-n.ibm.com"にサー
ビス要求の処理を割り振ることが宣言されている。な
お、第2カラムの宣言を実現するためには窓口サーバ4
0に処理サーバの混雑度を測定する手段が必要である
が、かかる技術は周知であり、適宜当業者は当該機能を
窓口サーバ40に持たせることができる。
【0036】図5のサービス要求は、ステップ1100
においてURLが"http://www.ibm.com/shop1/index.ht
m"であるので、ステップ1200で図6のテーブル60
の第1カラムの場合に該当すると判断され、"http://ww
w-1.ibm.com"、"http://www-2.ibm.com"、"http://www-
3.ibm.com"のいずれかが当該サービス要求を処理する処
理サーバに選択される。
【0037】次に、ステップ1300においてステップ
1200で選択された処理サーバの情報がクライアント
10に送信される。この送信は、HTTP302を含
む、第1の実施の形態と同様の手法で実現ができる。H
TTP302が使用された場合は、ユーザはクライアン
ト10でHTTPプロトコル対応のブラウザを使用し、
リダイレクションを自動で行う機能を利用することがで
きる。
【0038】ステップ1500に進み、第1の実施の形
態と同様に、サービスの提供がすべて完了するまではス
テップ1500からNoの矢印を通じてステップ140
0に戻りクライアント10と割り当てられた処理サーバ
の間でやりとりが繰り返し行われる。サービスの提供が
すべて完了した場合は、ステップ1500からYesの
矢印を通じてステップ1600に進み、処理は終了す
る。
【0039】第2の実施の形態によれば、URLとそれ
に対応するリダイレクション先URLおよびリダイレク
ションの条件が記述されたテーブルが用意される。クラ
イアントからサービス要求が送信されると、窓口サーバ
は当該サービス要求からURLが切り出される。切り出
されたURLとリダイレクションの条件に応じた処理サ
ーバ(リダイレクション先URL)がテーブルを使用し
て選択され、選択された処理サーバの情報をクライアン
トに送信し、以降の処理はクライアントと割り当てられ
た処理サーバの間で行われる。この構成においても、処
理はなお単純で軽いものであるといえ、窓口サーバは簡
便な構成で実現が可能である。
【0040】上記の本発明の好適な実施例は、説明を目
的として記述されたものあって、すべての実施態様を記
述するものではなく、実施例に開示された形式に発明を
限定する意図ではない。例えば、実施の形態では窓口サ
ーバと処理サーバを別のサーバとして構成しているが、
窓口サーバ自身が、処理サーバの役割を兼ねる構成とし
てもよい。また、テーブルを1つのファイルで実現する
ように記載したが、複数のファイルにしてもよいし、テ
ーブルを窓口サーバに蓄積するのでなく、別のサーバや
記憶装置に蓄積し、それをネットワークを介して参照す
るようにしてもよい。上記の開示によれば、多くの変更
例とバリエーションが実現可能である。本発明の範囲は
発明の詳細な説明の記載により制限されるのではなく、
特許請求の範囲により定まるものであることに留意され
たい。上記の仕様、例、データにより本発明の一態様の
製造および使用が完全に説明される。本発明の多くの実
施例が本発明の精神と範囲を離れることなく実現され
る。
【0041】
【効果】本発明によれば、既存のシステムにシンプルな
構成の窓口サーバを追加するだけで、過大な設備投資を
することなく、効果的なサービス要求の負荷分散を実現
できる。システムの構成の変更に対しては窓口サーバが
参照するテーブルを書き換えれば良いだけなので、DN
Sラウンドロビン方式に比較して変化に対して迅速な対
応が可能な負荷分散を実現することができる。また、窓
口サーバは初めの問い合わせの時にアクセスされるだけ
なので、例えば、クライアントからの処理がNページを
必要とする場合、窓口サーバが扱うメッセージ数はディ
スパッチャ方式の1/Nで済み、ディスパッチャ方式の
ようにディスパッチャ・サーバが処理の隘路になるよう
なこともない。また、テーブルに追加の情報を加え、か
つ、窓口サーバに適宜応じた機能を設けることにより、
よりきめこまやかな負荷分散を実現することも可能であ
る。さらに、窓口サーバは非常に単純な構成にすること
が可能であるので実装が容易であり、かつ、プログラム
の開発量も少量で実現が可能である。また、かかる単純
さは人為的ミスに起因する潜在的なバグ(セキュリティ
・ホールなど)の発生を抑えることに寄与し、外部から
の攻撃に対してロバストになる。また、装置の小型化
(小デバイス化)にも寄与し、安価なシステム構築を可
能とする。
【図面の簡単な説明】
【図1】 本発明の負荷分散方法を適用するシステム構
成の一例を示した概念図である。
【図2】 本発明の第1の実施の形態における負荷分散
方法の処理の流れを示したフローチャートである。
【図3】 本発明の第1の実施の形態における負荷分散
方法において窓口サーバが使用するテーブルの内容であ
る。
【図4】 本発明の第2の実施の形態における負荷分散
方法の処理の流れを示したフローチャートである。
【図5】 本発明の第2の実施の形態における負荷分散
方法におけるクライアントからのサービス要求の内容で
ある。
【図6】 本発明の第2の実施の形態における負荷分散
方法において窓口サーバが使用するテーブルの内容であ
る。
【図7】 従来技術のDNSラウンドロビン方式による
負荷分散方法を適用するシステム構成の一例を示した概
念図である。
【図8】 従来技術のディスパッチャ方式による負荷分
散方法を適用するシステム構成の一例を示した概念図で
ある。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 田添 英一 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 Fターム(参考) 5B045 GG02

Claims (15)

    【特許請求の範囲】
  1. 【請求項1】 ネットワークに接続されたクライアン
    ト、複数の処理サーバ、窓口サーバを有するコンピュー
    タシステムにおけるクライアントからのサービス要求の
    負荷分散方法であって、 前記ネットワークを通じて、前記クライアントからのサ
    ービス要求を前記窓口サーバで受信するステップと、 前記サービス要求に応じて、前記窓口サーバが前記複数
    の処理サーバに関する情報を記述したテーブルを参照し
    て当該サービス要求を処理すべきサーバを前記複数の処
    理サーバより選択するステップと、 前記窓口サーバから前記クライアントに前記処理サーバ
    の選択情報を前記ネットワークを通じて送信するステッ
    プとを含み、 前記処理サーバの選択情報が前記窓口サーバにより送信
    された後は、前記クライアントに対するサービス処理が
    当該選択された前記処理サーバにより行われる、 方法。
  2. 【請求項2】 前記ネットワークはTCP/IPネット
    ワークであり、前記クライアントにより送信される前記
    サービス要求はHTTPプロトコルに従うリクエストで
    あり、前記処理サーバの選択情報の送信は前記リクエス
    トに対するHTTPプロトコルに従うレスポンスである
    請求項1記載の方法。
  3. 【請求項3】 前記レスポンスをHTTP302として
    実現する請求項2記載の方法。
  4. 【請求項4】 前記サービス要求は、ネットワーク上の
    リソースのアドレス・ロケーションを指定して行われ、 前記テーブルには、1以上の特定のネットワーク上のリ
    ソースのアドレス・ローケーションと当該アドレス・ロ
    ケーションに対する処理内容が記述され、 前記窓口サーバは、前記サービス要求からネットワーク
    上のリソースのアドレス・ロケーションを切り出し、当
    該切り出されたアドレス・ロケーションと前記テーブル
    内のアドレス・ロケーションを比較して処理内容を決定
    し、当該処理内容の処理を行う、請求項1に記載の方
    法。
  5. 【請求項5】 前記ネットワークはTCP/IPネット
    ワークであり、前記アドレス・ロケーションはURLで
    あり、前記クライアントにより送信される前記サービス
    要求はHTTPプロトコルに従うリクエストであり、前
    記処理サーバの選択情報の送信は前記リクエストに対す
    るHTTPプロトコルに従うレスポンスであり、 前記窓口サーバは、前記サービス要求内のGET文から
    URLを切り出し、HTTP302により前記クライア
    ントに前記処理サーバの選択情報を前記ネットワークを
    通じて送信する、請求項4記載の方法。
  6. 【請求項6】 ネットワークに接続された窓口サーバ、
    複数の処理サーバを有するコンピュータシステムであっ
    て、 前記ネットワークに接続されたクライアントからのサー
    ビス要求に対するサービス処理を行う複数の処理サーバ
    と、 前記サービス要求に応じて、前記複数の処理サーバに関
    する情報を記述したテーブルを参照して当該サービス要
    求を処理すべきサーバを前記複数の処理サーバより選択
    し、前記クライアントに前記処理サーバの選択情報を前
    記ネットワークを通じて送信する窓口サーバとを含み、 前記処理サーバの選択情報が前記窓口サーバにより送信
    された後は、前記クライアントに対するサービス処理が
    当該選択された前記処理サーバにより行われる、 コンピュータシステム。
  7. 【請求項7】 前記ネットワークはTCP/IPネット
    ワークであり、前記クライアントにより送信される前記
    サービス要求はHTTPプロトコルに従うリクエストで
    あり、前記処理サーバの選択情報の送信を前記リクエス
    トに対するHTTPプロトコルに従うレスポンスである
    請求項6記載のコンピュータシステム。
  8. 【請求項8】 前記レスポンスをHTTP302として
    実現する請求項7記載のコンピュータシステム。
  9. 【請求項9】 前記サービス要求は、ネットワーク上の
    リソースのアドレス・ロケーションを指定して行われ、 前記テーブルには、1以上の特定のネットワーク上のリ
    ソースのアドレス・ローケーションと当該アドレス・ロ
    ケーションに対する処理内容が記述され、 前記窓口サーバは、前記サービス要求からネットワーク
    上のリソースのアドレス・ロケーションを切り出し、当
    該切り出されたアドレス・ロケーションと前記テーブル
    内のアドレス・ロケーションを比較して処理内容を決定
    し、当該処理内容の処理を行う、請求項6に記載のコン
    ピュータシステム。
  10. 【請求項10】 前記ネットワークはTCP/IPネッ
    トワークであり、前記アドレス・ロケーションはURL
    であり、前記クライアントにより送信される前記サービ
    ス要求はHTTPプロトコルに従うリクエストであり、
    前記処理サーバの選択情報の送信は前記リクエストに対
    するHTTPプロトコルに従うレスポンスであり、 前記窓口サーバは、前記サービス要求内のGET文から
    URLを切り出し、HTTP302により前記クライア
    ントに前記処理サーバの選択情報を前記ネットワークを
    通じて送信する、請求項9記載のコンピュータシステ
    ム。
  11. 【請求項11】 クライアント、複数の処理サーバが接
    続されたネットワークに接続された窓口サーバあって、 前記クライアントからネットワークを通じてサービス要
    求を受け取る手段と、 前記サービス要求に応答して、前記複数の処理サーバに
    関する情報を記述したテーブルを参照して当該サービス
    要求を処理すべきサーバを前記複数の処理サーバより選
    択する手段と、 前記クライアントに前記処理サーバの選択情報を前記ネ
    ットワークを通じて送信する手段とを有し、 前記処理サーバの選択情報が前記窓口サーバにより送信
    された後は、前記クライアントに対するサービス処理が
    当該選択された前記処理サーバにより行われる、 窓口サーバ。
  12. 【請求項12】 前記ネットワークはTCP/IPネッ
    トワークであり、前記クライアントにより送信される前
    記サービス要求はHTTPプロトコルに従うリクエスト
    であり、前記処理サーバの選択情報の送信を前記リクエ
    ストに対するHTTPプロトコルに従うレスポンスであ
    る請求項11記載の窓口サーバ。
  13. 【請求項13】 前記レスポンスをHTTP302とし
    て実現する請求項12記載の窓口サーバ。
  14. 【請求項14】 前記サービス要求は、ネットワーク上
    のリソースのアドレス・ロケーションを指定して行わ
    れ、 前記テーブルには、1以上の特定のネットワーク上のリ
    ソースのアドレス・ローケーションと当該アドレス・ロ
    ケーションに対する処理内容が記述され、 前記窓口サーバは、前記サービス要求からネットワーク
    上のリソースのアドレス・ロケーションを切り出し、当
    該切り出されたアドレス・ロケーションと前記テーブル
    内のアドレス・ロケーションを比較して処理内容を決定
    し、当該処理内容の処理を行う、請求項11に記載の窓
    口サーバ。
  15. 【請求項15】 前記ネットワークはTCP/IPネッ
    トワークであり、前記アドレス・ロケーションはURL
    であり、前記クライアントにより送信される前記サービ
    ス要求はHTTPプロトコルに従うリクエストであり、
    前記処理サーバの選択情報の送信は前記リクエストに対
    するHTTPプロトコルに従うレスポンスであり、 前記窓口サーバは、前記サービス要求内のGET文から
    URLを切り出し、HTTP302により前記クライア
    ントに前記処理サーバの選択情報を前記ネットワークを
    通じて送信する、請求項14記載の窓口サーバ。
JP2001278227A 2001-09-13 2001-09-13 ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム Withdrawn JP2003108537A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001278227A JP2003108537A (ja) 2001-09-13 2001-09-13 ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム
US10/242,105 US20030051042A1 (en) 2001-09-13 2002-09-12 Load balancing method and system for allocation of service requests on a network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001278227A JP2003108537A (ja) 2001-09-13 2001-09-13 ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム

Publications (1)

Publication Number Publication Date
JP2003108537A true JP2003108537A (ja) 2003-04-11

Family

ID=19102630

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001278227A Withdrawn JP2003108537A (ja) 2001-09-13 2001-09-13 ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム

Country Status (2)

Country Link
US (1) US20030051042A1 (ja)
JP (1) JP2003108537A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008059610A1 (fr) * 2006-11-14 2008-05-22 Sony Computer Entertainment Inc. Système de traitement d'informations, dispositif de traitement d'informations et procédé de traitement d'informations
JP2008250767A (ja) * 2007-03-30 2008-10-16 Mitsubishi Electric Information Systems Corp 分散ストレージシステム
US8041822B2 (en) 2005-05-11 2011-10-18 Hitachi, Ltd. Service network system and server device
JP2012226654A (ja) * 2011-04-21 2012-11-15 Mitsubishi Electric Corp 情報処理装置
JP2012533792A (ja) * 2009-07-15 2012-12-27 アリババ・グループ・ホールディング・リミテッド インスタントメッセージセッションの管理

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003099413A (ja) * 2001-09-25 2003-04-04 Nec Commun Syst Ltd 分散処理システム
US8661158B2 (en) 2003-12-10 2014-02-25 Aventail Llc Smart tunneling to resources in a network
US8590032B2 (en) 2003-12-10 2013-11-19 Aventail Llc Rule-based routing to resources through a network
WO2006044820A2 (en) 2004-10-14 2006-04-27 Aventail Corporation Rule-based routing to resources through a network
US8516116B2 (en) * 2006-11-30 2013-08-20 Accenture Global Services Limited Context-based routing of requests in a service-oriented architecture
US8260940B1 (en) * 2007-06-29 2012-09-04 Amazon Technologies, Inc. Service request management
JP5200639B2 (ja) * 2008-04-09 2013-06-05 株式会社リコー 画像形成装置、情報処理方法、及びプログラム
JP2009290729A (ja) * 2008-05-30 2009-12-10 Ricoh Co Ltd 画像形成装置、情報処理方法、及びプログラム
US8266324B2 (en) * 2008-06-12 2012-09-11 International Business Machines Corporation Domain specific domain name service
US8996607B1 (en) * 2010-06-04 2015-03-31 Amazon Technologies, Inc. Identity-based casting of network addresses
PL2512105T3 (pl) * 2011-04-15 2018-01-31 Deutsche Telekom Ag Inżynieria ruchu sieciowego
US9811248B1 (en) 2014-07-22 2017-11-07 Allstate Institute Company Webpage testing tool
CN106331775B (zh) * 2015-06-17 2019-10-01 阿里巴巴集团控股有限公司 设备连接方法、装置和智能电视系统
CN108111590A (zh) * 2017-12-15 2018-06-01 安徽长泰信息安全服务有限公司 一种基于多服务节点的数据处理系统及其方法
US10887428B2 (en) 2019-05-09 2021-01-05 Toyota Motor Engineering & Manufacturing North America, Inc. Methods and systems for allocating service requests from mobile objects among edge servers
US11455890B2 (en) 2020-03-23 2022-09-27 Toyota Motor Eng & Mfg North America, Inc. Traffic-adaptive deployment of vehicle functions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08137808A (ja) * 1994-11-04 1996-05-31 Hitachi Ltd トランザクション処理方法
JPH10307783A (ja) * 1997-05-07 1998-11-17 N T T Data:Kk サイトアクセス制御システム及び記録媒体
JP2002334012A (ja) * 2001-05-10 2002-11-22 Nippon Telegr & Teleph Corp <Ntt> サービス要求処理方法及びその実施システム並びにその処理プログラムと記録媒体

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5931904A (en) * 1996-10-11 1999-08-03 At&T Corp. Method for reducing the delay between the time a data page is requested and the time the data page is displayed
US6026474A (en) * 1996-11-22 2000-02-15 Mangosoft Corporation Shared client-side web caching using globally addressable memory
US6282548B1 (en) * 1997-06-21 2001-08-28 Alexa Internet Automatically generate and displaying metadata as supplemental information concurrently with the web page, there being no link between web page and metadata
US6226642B1 (en) * 1997-09-11 2001-05-01 International Business Machines Corporation Content modification of internet web pages for a television class display
US6175869B1 (en) * 1998-04-08 2001-01-16 Lucent Technologies Inc. Client-side techniques for web server allocation
US6061715A (en) * 1998-04-30 2000-05-09 Xerox Corporation Apparatus and method for loading and reloading HTML pages having cacheable and non-cacheable portions
US6928477B1 (en) * 1999-11-18 2005-08-09 International Business Machines Corporation Availability and scalability in clustered application servers by transmitting expected loads of clients to load balancer
US6742044B1 (en) * 2000-05-10 2004-05-25 Cisco Technology, Inc. Distributed network traffic load balancing technique implemented without gateway router
US7222150B1 (en) * 2000-08-15 2007-05-22 Ikadega, Inc. Network server card and method for handling requests received via a network interface
US20020152293A1 (en) * 2001-01-31 2002-10-17 Hahn Terry G. Dynamic server directory for distributed computing system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08137808A (ja) * 1994-11-04 1996-05-31 Hitachi Ltd トランザクション処理方法
JPH10307783A (ja) * 1997-05-07 1998-11-17 N T T Data:Kk サイトアクセス制御システム及び記録媒体
JP2002334012A (ja) * 2001-05-10 2002-11-22 Nippon Telegr & Teleph Corp <Ntt> サービス要求処理方法及びその実施システム並びにその処理プログラムと記録媒体

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8041822B2 (en) 2005-05-11 2011-10-18 Hitachi, Ltd. Service network system and server device
WO2008059610A1 (fr) * 2006-11-14 2008-05-22 Sony Computer Entertainment Inc. Système de traitement d'informations, dispositif de traitement d'informations et procédé de traitement d'informations
JP2008123344A (ja) * 2006-11-14 2008-05-29 Sony Computer Entertainment Inc 情報処理システム、情報処理装置、および情報処理方法
JP2008250767A (ja) * 2007-03-30 2008-10-16 Mitsubishi Electric Information Systems Corp 分散ストレージシステム
JP4696089B2 (ja) * 2007-03-30 2011-06-08 三菱電機インフォメーションシステムズ株式会社 分散ストレージシステム
JP2012533792A (ja) * 2009-07-15 2012-12-27 アリババ・グループ・ホールディング・リミテッド インスタントメッセージセッションの管理
JP2012226654A (ja) * 2011-04-21 2012-11-15 Mitsubishi Electric Corp 情報処理装置

Also Published As

Publication number Publication date
US20030051042A1 (en) 2003-03-13

Similar Documents

Publication Publication Date Title
JP2003108537A (ja) ネットワーク上のサーバに対するサービス要求の負荷分散の方法およびシステム
US11805184B2 (en) Content delivery systems and methods
US11184462B2 (en) Selecting an instance of a resource using network routability information
WO2020228469A1 (zh) 一种移动边缘计算节点的选择方法、装置及系统
US7213071B2 (en) Quality of service improvements for network transactions
US7120662B2 (en) Conductor gateway prioritization parameters
US7490162B1 (en) Method and system for forwarding messages received at a traffic manager
US8706906B2 (en) Multipath routing process
US11064043B2 (en) System and method for providing an adjunct device in a content distribution network
US10182126B2 (en) Multilevel redirection in a virtual desktop infrastructure environment
US20020152307A1 (en) Methods, systems and computer program products for distribution of requests based on application layer information
EP1244262B1 (en) Redirection of client requests
KR100268838B1 (ko) 부하 분산기 및 그 부하 분산기에 의한 내용기반 정책라우팅 방법
US20180063220A1 (en) Systems and methods to provide hypertext transfer protocol 2.0 optimization through multiple links
CN117546453A (zh) 用于基于服务质量参数建立网络切片中的消息优先级的方法、系统和计算机可读介质
JP2023522785A (ja) 調和総合プロキシサービス
US12028427B2 (en) Content delivery systems and methods
CN113973086A (zh) 一种数据传输方法、装置及存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050118

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20050414

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20050419

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050715

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060307

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060605

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060613

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060906

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20070122