JP2003345679A - サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法 - Google Patents
サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法Info
- Publication number
- JP2003345679A JP2003345679A JP2002154538A JP2002154538A JP2003345679A JP 2003345679 A JP2003345679 A JP 2003345679A JP 2002154538 A JP2002154538 A JP 2002154538A JP 2002154538 A JP2002154538 A JP 2002154538A JP 2003345679 A JP2003345679 A JP 2003345679A
- Authority
- JP
- Japan
- Prior art keywords
- server
- client
- mediation
- state
- mediation device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Computer And Data Communications (AREA)
Abstract
ム及び仲介装置並びに誤り隠蔽方法を提供する。 【解決手段】 クライアント50とサーバ20の間に仲
介装置30を複数介在させ、該仲介装置30が、クライ
アント50からの処理要求をサーバに転送するとともに
サーバ20から受信した前記処理要求に対する応答結果
のうち正当なものを要求元のクライアント50に転送す
る一方、全ての仲介装置30のうち常に一の仲介装置3
0のみがクライアント・サーバ間の処理要求及び応答結
果の転送を行う状態(active状態)となるように
前記転送処理を制御する。
Description
Bサーバ・認証サーバ等のインターネットビジネス用シ
ステムや通信網のノードシステムなどのように長時間の
連続運転が求められるサーバシステムに関する。
トに対して常にサービスを適切に提供する必要がある。
すなわち、サーバシステムの「誤り」を隠蔽し、「障害
(Failure)」発生を防止する必要がある。ここ
で「障害」とはシステムの機能損失を意味する。「障
害」発生要因の具体例としては例えばハードウェアにお
けるバグや故障、ソフトウェアにおけるバグなどが挙げ
られる。そして、これら「障害」の原因を「フォール
ト」と呼ぶ。仮にシステムに「フォールト」が存在して
いても、そのことが直ちに「障害」を引き起こすとは限
らず潜在することもある。「フォールト」が原因で障害
が表面化することを「誤り(Error)」という。そ
して、「誤り」が発生したシステムが正常な状態から逸
脱すると「障害」が発生する。なお、「誤り」はバグや
故障などの狭義の「フォールト」のみが原因ではなく、
例えば間欠故障やオペレータの設定ミスや操作ミスなど
も「誤り」の原因となる。
頼性サーバシステムの一例として、出願人は特願200
1−256511号「サーバシステム,仲介装置,クラ
イアントサーバ型システムにおける誤り隠蔽方法」を提
案した。この高信頼性サーバシステムの一例について図
20を参照して説明する。なお、ここではクライアント
に対してWebサービスを提供するシステムについて例
示する。
図20に示すように、クライアント1041の要求を受
け取り、該要求に対する応答を返す高信頼性サーバ10
20と、高信頼性サーバ1020とクライアント104
1との間に介在する仲介装置1030を備えている。
ーバで構成されている。図20の例では、高信頼性サー
バ1020は、三つのサーバ1021,1022,10
23で構成されている。各サーバは、正常に稼働してい
れば、同じ要求に対してそれぞれ同じ応答を返す。
0を介してクライアント1041からの要求を受け取り
後述する適切なタイミングで高信頼性サーバ1020へ
該要求を転送し、高信頼性サーバ1020からの応答の
正当性をチェックして正しい応答をクライアント104
1へ返す制御部1031と、高信頼性サーバ1020の
各サーバ1021,1022,1023の状態を管理す
るサーバ管理表1032とを備えている。制御部103
1は、サーバ管理表1032に対してどのサーバが正常
又は障害であるかを登録し、このサーバ管理表1032
を参照して、どのサーバにクライアント1041からの
要求を処理させるかを判断する。サーバ管理表1032
は、サーバを識別するためのサーバID,サーバのIP
アドレス,サーバの稼働情報から構成される。
を用いて、ネットワーク1050を経由して高信頼性サ
ーバ1020にWebページを要求する。
明する。クライアント1041が高信頼性サーバシステ
ム1010へWebページ要求メッセージ1110を送
信すると、制御部1031はこの要求メッセ時1110
を受け取り、サーバ管理表1032を見て、正常なサー
バへ転送する。例えば、サーバ管理表1032において
サーバ1021,1022,1023が正常であれば、
制御部1031は要求メッセージ1110のコピー11
11,1112,1113を作り、それぞれをサーバ1
021,1022,1023へ転送する。
1を受け取り、応答1121を制御部1031へ返す。
同様に、サーバ1022は応答1122を、サーバ10
23は応答1123を制御部1031へ返す。制御部1
031は、応答1121,1122,1123で多数決
を行い、多数派の応答を正常と判断してクライアント1
041へ応答1120を返す。
致の応答があった場合、その応答を返したサーバは障害
であると制御部1031は判断し、サーバ管理表103
2の稼働状態を情報を「正常」から「障害」へ変更す
る。以後、制御部1031は障害となったサーバへはク
ライアントからの要求を転送しない。
が提案した高信頼性サーバシステムでは、クライアント
からの要求を受け取った制御部は複数のサーバへ該要求
を転送し、該要求に対するサーバからの応答を受け取り
多数決を実行するという方式を採用している。これによ
り、あるサーバが仮に障害となり誤った応答を制御部へ
返したとしても、多数決によってその誤りを隠蔽するこ
とができる。しかしながら、制御部自体が障害となった
場合にはシステムダウンしてしまうという問題があっ
た。
であり、その目的とするところは、可用性が高く連続運
転に適したサーバシステム及び仲介装置並びに誤り隠蔽
方法を提供することにある。
に、本願発明は、クライアントサーバ型システムにおい
て、クライアントとサーバの間に仲介装置を複数介在さ
せ、該仲介装置が、クライアントからの処理要求をサー
バに転送するとともにサーバから受信した前記処理要求
に対する応答結果のうち正当なものを要求元のクライア
ントに転送する一方、全ての仲介装置のうち常に一の仲
介装置のみがクライアント・サーバ間の処理要求及び応
答結果の転送を行う状態(active状態)となるよ
うに前記転送処理を制御することを特徴とする。
の処理要求及び応答結果を転送している一の仲介装置が
障害となっても、他の正常な仲介装置によって前記転送
を継続できるので、システム全体のダウンを防ぎ、より
可用性の高いクライアントサーバ型システムを構築でき
る。
実施の形態にかかる高信頼性サーバシステムについて図
面を参照して説明する。図1は第1の実施の形態に係る
高信頼性サーバシステムの全体構成を説明するブロック
図である。なお、本実施の形態ではクライアントに対し
て認証サービスを提供するシステム、具体的にはサーバ
がRADIUSサーバであるシステムについて例示す
る。
に示すように、クライアント50からの処理要求に対し
て応答を返す高信頼性サーバ20と、高信頼性サーバ2
0とクライアント50との間に介在する複数の仲介装置
30とを備えている。図1の例では、仲介装置30とし
て2つの仲介装置30a及び30bを備えている。
トコル体系は不問である。本実施の形態ではTCP/I
Pプロトコルスイートを用いた。なお、TCP/IPプ
ロトコルスイートは、TCP及びIPを狭義に表すもの
ではなく、UDPやARPなどを含む広義のプロトコル
体系を意味する。
で構成される。図1の例では、高信頼性サーバ20は、
三つのサーバ21,22,23で構成されている。各サ
ーバは、正常に稼働していれば、同じ要求に対してそれ
ぞれ同じ応答を返す。ここで、各サーバ21,22,2
3は、コンピュータ上などで動作するソフトウェアで実
装しても良いし、ハードウェアで実装しても良い。すな
わち、高信頼性サーバ20は、複数のハードウェアによ
って実現してもよいし、一台のハードウェア上に複数の
サーバを実装することによって実現してもよい。なお、
図1の例では、各サーバ21,22,23に、それぞれ
180.10.1.1、180.10.1.2、18
0.10.1.3というIPアドレスが付されている。
レス及びMACアドレスが付されている。図1の例で
は、仲介装置30aには、IPアドレスとして175.
10.1.1が、MACアドレスとしてaa:aa:a
a:aa:aa:01が付されており、仲介装置30b
には、IPアドレスとして175.10.1.2が、M
ACアドレスとしてaa:aa:aa:aa:aa:0
2が付されている。
してクライアント50からの要求を受け取り、高信頼性
サーバ20へ転送し、高信頼性サーバ20からの応答の
正当性をチェックして正しい応答をクライアント50へ
返すサーバ制御部31と、高信頼性サーバ20の各サー
バ21,22,23の状態を管理するサーバ管理表32
と、仲介装置30a,30bの状態を管理する仲介装置
管理表33と、仲介装置間で正常状態か障害状態かを確
認するとともに、サーバ管理表32と仲介装置管理表3
3の情報をやりとりする仲介装置制御部34とを備えて
いる。
対してどのサーバが正常又は障害であるかを登録し、こ
のサーバ管理表32を参照して、どのサーバにクライア
ント50からの要求を処理させるかを判断する。
2に示すように、サーバ管理表32は、各サーバを識別
するためのサーバID,サーバのIPアドレス,サーバ
の稼働状態情報から構成される。図2の例では各サーバ
の状態が正常である場合を示している。
図3に示すように、仲介装置管理表33は、各仲介装置
を識別するための仲介装置ID,仲介装置のIPアドレ
ス,仲介装置の稼働状態情報から構成される。仲介装置
の稼働情報は、後述する三つの状態(active,b
ackup,down)を取り得る。図3の例では仲介
装置30aがactiveであり、仲介装置30bがb
ackupである状態を示している。
の仲介装置30のうち一つだけがactive状態(ク
ライアント50とサーバ20に対して処理を行っている
状態)、(2)backup状態(active状態の
仲介装置の障害に備えて待機している状態)、(3)d
own状態(障害などが原因でactive状態になる
ことができない状態)を取りうる。図1の例では、仲介
装置30aがactive状態であり、仲介装置30b
はbackup状態である。
だけがVIA(Virtual IP Addres
s:仮想IPアドレス)を持っている。VIAは、仲介
装置30が持っている通常のIPアドレスとは別に、別
名のIPアドレスをエイリアスすることで実現する。こ
のVIPによってクライアント50は、複数の装置で構
成される高信頼性サーバシステム10を単一の装置であ
るかの如くみなすことができる。したがって、仲介装置
30の状態が変動しても、クライアント50では高信頼
性サーバシステム10と通信するために改造や設定を変
更する必要がない。例えば、図1の例では、activ
e状態である仲介装置30が175.10.1.100
のVIPを持っているが、これはクライアント50にと
っては図4のように175.10.1.100というI
Pアドレスを持った仮想的に単一のRADIUSサーバ
のように見える。
の場合、一定周期毎にサーバ管理表32と仲介装置管理
表33の内容を他の仲介装置30の仲介装置制御部34
へ送信する。一方、仲介装置制御部34は、backu
p状態の場合、他の仲介装置制御部34からの前記メッ
セージを受け取ったら、その内容をそれぞれサーバ管理
表32と仲介装置管理表33へ反映する。これにより、
各仲介装置30のサーバ管理表32及び仲介装置管理表
33の同期を図っている。backup状態の仲介装置
制御部34は、一定時間待っても他の仲介装置制御部3
4からメッセージを受け取れなかった場合、当該仲介装
置30が障害になったと判断し、自身のサーバ制御部3
1を起動して仲介装置30をactive状態とする。
に、サーバ管理表32に蓄積されているサーバの稼働状
態情報と実際のサーバの稼働情報が不一致となる場合が
ある。この状態を修正するために、仲介装置制御部34
は、サーバ制御部31を起動する前にサーバ21,2
2,23に稼働状態を問い合わせるメッセージを送信
し、それぞれの応答から「正常」又は「障害」を判定
し、サーバ管理表32を修正する。
になる時に、仲介装置管理表33も修正する。例えば、
仲介装置30aが障害となって仲介装置30bがact
ive状態になる場合は、仲介装置30bをactiv
e,仲介装置30aをdownと変更する。
態になる時に、VIPに関する情報を修正する。つま
り、仲介装置制御部34は、自身の仲介装置30に17
5.10.1.100のVIPをエイリアスすると同時
に、自身の仲介装置30が所属しているネットワークに
Gratuitous ARP(RFC2002参照)
をブロードキャストすることにより、該ネットワークに
接続されている機器におけるARPテーブル中のVIP
のMACアドレスを、新しくactive状態になった
仲介装置30のMACアドレスに更新する。例えば、仲
介装置30aがactive状態、仲介装置30bがb
ackup状態の場合で、仲介装置30aが障害になっ
て仲介装置30bがactive状態になる場合、各通
信機器のARPテーブルのVIPに対するMACアドレ
スの情報をaa:aa:aa:aa:aa:01からa
a:aa:aa:aa:aa:02へ変更する。これ
は、各通信機器のARPテーブルのVIPの情報が古い
ために、新しくactive状態になった仲介装置30
bと通信できない状態を防ぐためである。
ウェアで実装しても良いし、ハードウェアで実装しても
よい。本実施の形態では、仲介装置30a,30bをそ
れぞれ異なるハードウェア上に構築した。
経由して高信頼性サーバシステム10に認証サービスあ
るいはアカウンティングサービスなどを要求する。
至図8を参照して説明する。まず、active状態に
おける仲介装置30の、クライアント・サーバ間の処理
要求及び応答結果の転送処理について説明する。ここで
は、図1〜図3で例示しているように、各サーバ21,
22,23が正常であり、且つ、仲介装置30aがac
tive状態、仲介装置30bがbackup状態であ
る場合について説明する。図5は、active状態に
おける仲介装置の動作を説明するフローチャート、図6
クライアントからの処理要求の流れを説明する図、図7
はサーバからの応答結果の流れを説明する図である。
らの要求を受信したかどうかを確認し(ステップSA
1)、要求がなかった場合には再び要求受信をチェック
する。クライアント50から要求があった場合、サーバ
管理表32で稼働状態が「正常」になっているサーバへ
クライアント50からの処理要求を転送する(ステップ
SA2)。以上の処理によるクライアント50からの処
理要求の流れを図6の太線矢印で示した。
答をチェックする(ステップSA3)。タイムアウトで
ない場合、何れかのサーバからの応答を受信したかどう
かをチェックする(ステップSA4)。何れのサーバか
らも応答を受信していない場合、再びタイムアウトのチ
ェックを行う(ステップSA3)。何れかのサーバから
の応答を受信した場合、要求を送信した各サーバの全て
からの応答を受信したかどうかをチェックする(ステッ
プSA5)。全ての応答が揃ってない場合、再びタイム
アウトのチェックを行う(ステップSA3)。
ーバがあるかどうかをチェックする(ステップSA
6)。障害になったサーバがあるかどうかを判断する方
法としては、例えば、複数の応答で多数決を行う方法
や、応答に含まれるデータの正当性をチェックする方法
などが挙げられる。後者のデータ正当性のチェックと方
法しては、例えば、(1)有り得ないコードが含まれて
いる場合には障害と判断する、(2)あるはずのコード
が含まれていない場合には障害と判断する、などが挙げ
られる。障害になったサーバがある場合、サーバ管理表
32に、該当するサーバの稼働状態を「障害」と登録す
る(ステップSA7)。
へ送信する(ステップSA8)。以上の処理による全て
のサーバ21,22,23から応答された応答結果の流
れを図7に示した。また、例としてサーバ23が障害と
なった場合のサーバ管理表32を図8に示す。
サーバがない場合、正常な応答をクライアント50へ送
信する(ステップSA8)。
アウトになった場合、すなわち応答を返さないサーバが
存在する場合、当該サーバは障害であると判断し、サー
バ管理表32に、該当するサーバの稼働情報を「障害」
と登録し(ステップSA9)、正常な応答をクライアン
ト50へ送信する(ステップSA8)。
ップSA8)後は、再びクライアント50からの要求を
チェックする(ステップSA1)。
構成する各サーバ21,22,23のうち「障害」とな
ったサーバへは、クライアント50からの要求は転送さ
れず、高信頼性サーバシステム10から切り離されたこ
とになる。
30の、仲介装置管理処理について図9を参照して説明
する。
4は、一定期間スリープした後(ステップSB1)、他
の仲介装置制御部34からの組み込み要求(後述するス
テップSD3)があるかどうかをチェックする(ステッ
プSB2)。なお、「組み込み」とは、本高信頼性サー
バシステム10を構成する装置となるための処理を意味
し、例えば電源投入時などに実施される処理である。
求があった場合、その仲介装置30の情報(IPアドレ
スなど)を仲介装置管理表33へ記憶し(ステップSB
9)、その仲介装置制御部34へ応答を返す(ステップ
SB10)。
仲介装置30があるかどうかを仲介装置管理表33を参
照してチェックする(ステップSB3)。backup
の仲介装置30がある場合、サーバ管理表32と仲介装
置管理表33の内容をbackup状態の仲介装置制御
部34へ送信する(ステップSB4)。その後、bac
kup状態の仲介装置制御部34からの応答を確認する
ためにタイマを設定し(ステップSB5)、タイムアウ
トをチェックする(ステップSB6)。
介装置30からの応答がない場合(ステップSB7)、
再びタイムアウトのチェックを行う(ステップSB
6)。タイムアウトせずに、backup状態の仲介装
置30からの応答(後述するステップSC5)を受信し
た場合(ステップSB7)、再びスリープする(ステッ
プSB1)。タイムアウトした場合、当該backup
状態の仲介装置30に障害が生じた判断し、該仲介装置
30について仲介装置管理表33の情報をbackup
からdownに変更し(ステップSB8)、再びスリー
プする(ステップSB1)。
p装置がない場合(例えば、全てdownしている場合
など)、再びスリープする(ステップSB1)。
30の動作について図10を参照して説明する。
は、前記ステップSB4におけるactive状態の仲
介装置制御部34からのデータ受信を確認するためにタ
イマを設定し(ステップSC1)、タイムアウトしたか
どうかをチェックする(ステップSC2)。タイムアウ
トせず、かつ、active状態の仲介装置30からの
パケットを受信していない場合(ステップSC3)、再
びタイムアウトのチェックを行う(ステップSC2)。
せず、かつ、active状態の仲介装置30からのパ
ケットを受信した場合(ステップSC3)、サーバ管理
表32と仲介装置管理表33へ該パケットの内容を記録
し(ステップSC4)、記録が完了したことを通知する
ためにactive状態の仲介装置30へ応答を返す
(ステップSC5)。その後、再びタイマを設定し(ス
テップSC1)、タイムアウトのチェックを行う(ステ
ップSC2)。
した場合、active状態であった仲介装置30に障
害が生じた判断し、以後、自身の仲介装置30がact
ive状態になるための処理を行う(ステップSC6〜
SC10)。具体的には、仲介装置制御部34は、全て
のサーバ21,22,23の稼働状態を調査し、サーバ
管理表32の内容を修正する(ステップSC6)。次
に、仲介装置管理表33において、active状態だ
った仲介装置30aはdown、backup状態だっ
た自身の仲介装置30bはactiveと変更する(ス
テップSC7)。次に、自身のサーバ制御部31を起動
し、サーバ制御部31は図5を参照して説明した動作を
開始する(ステップSC8)。次に、仲介装置制御部3
4は、自身の仲介装置30に175.10.1.100
のVIPをエイリアスし(ステップSC9)、Grat
uitous ARPをブロードキャストして他の通信
装置のARPテーブルを更新する(ステップC10)。
以後、図9を参照して前述したactive状態の仲介
装置30として動作する。
が障害となってシステムダウンし、代わりにbacku
p状態であった仲介装置30bがactive状態にな
った様子を図11に示す。また、その時の仲介装置30
bの仲介装置管理表33bの内容を図12に示す。
テム10へ組み込む場合の仲介装置制御部の動作につい
て図13を参照して説明する。
電源が投入された後に手段でコマンドを投入することに
よって行われるほか、電源投入時に自動的に組み込み処
理が実行される。例えば、仲介装置30のOSとしてU
NIX(登録商標)系マシンを利用している場合であれ
ば、/etc/init.dの下にshell scr
iptを設定しておいて、電源が入ると同時に自動で起
動するようにしてもよい。
対する応答を確認するためにタイマを設定し(ステップ
SD1)、タイムアウトかどうかをチェックする(ステ
ップSD2)。
態の仲介装置30へ組み込み要求を送信する(ステップ
SD3)。ここで、active状態の仲介装置30は
VIPで通信可能なため、仲介装置制御部34はVIP
宛てに送信すればよい。active状態の仲介装置3
0から応答が返ってきた場合(ステップSD4)、自身
の仲介装置30はbackup状態になるために、以
後、仲介装置制御部34は図10を参照して説明した動
作(backup状態時の仲介装置制御部34の動作)
を行う。active状態の仲介装置30から応答が返
ってこない場合(ステップSD4)、再びタイムアウト
のチェックを行う(ステップSD2)。
した場合、active状態の仲介装置30は存在しな
いと判断し、以後、自身の仲介装置30がactive
状態となるための処理を行う(ステップSD5〜SD1
0)。具体的には、全てのサーバ21,22,23の稼
働状態を調査し、サーバ管理表32を作成する(ステッ
プSD5)。次に、仲介装置管理表33を作成する(ス
テップSD6)。ここでは自身の仲介装置30しか存在
しないため、自身の仲介装置30の項目をactive
とする。次に、サーバ制御部31を起動する(ステップ
SD7)。以後、サーバ制御部31は図5を参照して説
明した処理を行う。次に、仲介装置制御部34は、VI
P(175.10.1.100)をエイリアスし(ステ
ップSD8)、Gratuitous ARPをブロー
ドキャストして各通信機器のARPテーブルを更新する
(ステップSD9)。
の形態に係る高信頼性サーバシステムについて図面を参
照して説明する。図14は第2の実施の形態に係る高信
頼性サーバシステムの全体構成を説明するブロック図で
ある。
点は、3つの仲介装置30を備えている点にある。これ
に伴い、仲介装置30の動作が異なる。以下に相違点に
ついて説明する。
システム10は、3つの仲介装置30を備えている。図
14の例では、仲介装置30aがactive状態であ
り、仲介装置30b,30cがbackup状態であ
る。
tive状態の仲介装置30が障害になった場合に、b
ackupからactiveになる装置に優先度が決め
られている。図14の例では、仲介装置30bが優先度
1(最も優先度が高い)、仲介装置30cが優先度2で
あり、それぞれbackup(1)のように数字を付け
ることで優先度を識別する。したがって、図14の例の
場合には、各仲介装置30の仲介装置管理表33は図1
5に示すようになる。
装置制御部34の処理フローを示す。図において図9を
参照して説明した第1の実施の形態と同じステップには
同じ符号で示し、その説明は省略する。
SB4と対応するステップSBB4では、「全ての」b
ackup状態の仲介装置30へサーバ管理表32と仲
介装置管理表33の内容を送信する(ステップSBB
4)。
ackup状態の仲介装置30から応答を受信したかど
うかをチェックする。さらに、ステップSBB8では、
応答が来なかったbackup状態の仲介装置30の全
てをdownに変更する。その後、ステップSBB12
では、正常なbackup状態の仲介装置30の優先度
を繰り上げるように変更する。例えば、仲介装置30b
がdownしたが仲介装置30cは正常である場合、図
17に示すように仲介装置30bの状態はdownに変
更され、仲介装置30cの状態はbackup(1)
(優先度1のbackup状態)に変更される。
御部34の処理フローを示す。図10と同じステップは
同じ符号で示してある。図において、図10を参照して
説明した第1の実施の形態と同じステップには同じ符号
で示し、その説明は省略する。
てタイムアウトした場合、自身がbackup(1)か
どうかをチェックする(ステップSCC11)。bac
kup(1)でない場合(ステップSCC11)、仲介
装置管理表33のbackup状態の優先度を一つずつ
上げ、backup(1)はactiveに変更する
(ステップSCC12)。自身がbackup(1)の
場合、全てのサーバの稼働状態を調査し、サーバ管理表
32を修正する(ステップSC6)。次に、仲介装置管
理表33の内容を変更する、つまり、自分自身(bac
kup(1))をactiveにし、それ以外のbac
kupの優先度を一つずつ繰り上げる(ステップSCC
7)。図19に、図14及び図15の状態で仲介装置3
0bに障害が生じた場合の仲介装置管理表33の例を示
す。
性サーバシステム10によれば、高信頼性サーバ20と
クライアント50との間で処理要求及び応答結果の転送
を行う仲介装置30を複数備えており、しかも転送処理
を実施している仲介装置30に障害が生じた場合でも他
の仲介装置30により転送処理が継続される。すなわ
ち、可用性の高いシステムとなる。
り、本発明はこれに限定されるものではない。本発明の
範囲は特許請求の範囲によって示されており、この特許
請求の範囲の意味に入る全ての変形例は本発明に含まれ
るものである。
同じ実装である必要はない。すなわち、バージョン,仕
様,プログラム言語,コンパイラの種類,コンパイラオ
プション,ハードウェアかソフトウェアか、などが異な
っていても良い。さらに、サーバは一つの部品で構成さ
れていても複数の部品で構成されていてもよい。
部,サーバ管理表,仲介装置制御部を一つの仲介装置に
実装し、サーバは別の装置で実装しているが、高信頼性
サーバシステムの各構成要素の実装上の物理的位置関係
は任意である。すなわち、例えば、各構成要素を一つの
コンピュータ上に実装しても良いし、異なるコンピュー
タ上に実装しても良い。また、一部を同一のコンピュー
タに実装しても良い。
トが一つの場合を想定しているが、クライアントが複数
であってもよい。その場合、上記実施の形態では、仲介
装置が一のクライアントの処理(図5のフローチャー
ト)を実行中に他のクライアントからの要求があった場
合、一のクライアントの処理が終了するまで他のクライ
アントの処理が待たされることになる(なぜならば、図
5のステップSA1で新しい要求の処理を開始するた
め)。これを避けるために、複数のプロセスやスレッド
を起動し、それぞれのクライアントに対して図5の処理
を並列に動作させるように実装してもよい。
が2又は3備えたシステムについて説明したが、4つ以
上の仲介装置30備えていても良い。
状態の仲介装置30にVIPを付すことにより、障害が
生じてbackup状態の仲介装置30に転送処理が移
行しても、クライアント50からは同じアドレスでアク
セスできるようにしている。また、転送処理の移行の際
にはactive状態になった仲介装置30からGra
tuitous ARPを発することにより、移行処理
を迅速且つ円滑に行っていた。これらの処理はプロトコ
ル体系としてTCP/IPプロトコルスイートを用いた
のものであるが、他のプロトコル体系であっても同等の
機能を有していれば本発明を実施できる。
仲介装置を冗長化することによって、より信頼性が向上
するという効果が得られる。
ムの全体構成を説明するブロック図
のように見えるかを説明する図
明するフローチャート
図
例を説明する図
明するフローチャート
説明するフローチャート
場合の高信頼性サーバシステムのブロック図
場合の仲介装置管理表の一例を示す図
ャート
テムの全体構成を説明するブロック図
説明するフローチャート
場合の仲介装置管理表の一例を説明する図
説明するフローチャート
場合の仲介装置管理表の一例を説明する図
説明するブロック図
バ、21,22,23…サーバ、30…仲介装置、31
…サーバ制御部、32…サーバ管理表、33…仲介装置
管理表、34…仲介装置制御部、40…ネットワーク、
50…クライアント
Claims (11)
- 【請求項1】 クライアントサーバ型システムにおける
サーバ側のシステムにおいて、 クライアントからの処理要求をサーバに転送するととも
にサーバから受信した前記処理要求に対する応答結果の
うち正当なものを要求元のクライアントに転送する転送
手段を備えた仲介装置を複数設けるとともに、 前記仲介装置は、全ての仲介装置のうち常に一の仲介装
置のみがクライアント・サーバ間の処理要求及び応答結
果の転送を行う状態(active状態)となるように
前記転送手段の動作を制御する制御手段を備えたことを
特徴とするサーバシステム。 - 【請求項2】 前記仲介装置は、他の仲介装置の障害を
検出する障害検出手段を備えたことを特徴とする請求項
1記載のサーバシステム。 - 【請求項3】 前記仲介装置の制御手段は、自仲介装置
がactive状態の場合は、前記障害検出手段により
障害が検出された他の仲介装置をシステムから切り離す
ことを特徴とする請求項2記載のサーバシステム。 - 【請求項4】 前記仲介装置の制御手段は、自仲介装置
の転送手段がクライアント・サーバ間の処理要求及び転
送結果の転送を行うように動作していない状態(bac
kup状態)であり、且つ、前記障害検出手段がact
ive状態の仲介装置の障害を検出した場合は、自仲介
装置がactive状態となるように転送手段を制御す
ることを特徴とする請求項2又は3何れか1項記載のサ
ーバシステム。 - 【請求項5】 backup状態の仲介装置には各々優
先度が定められており、backup状態の仲介装置の
制御手段は、前記障害検出手段がactive状態の仲
介装置の障害を検出した場合は、backup状態の各
仲介装置の優先度のうち自仲介装置の優先度が最も高い
ときには自仲介装置がactive状態となるように転
送手段を制御し、自仲介装置の優先度よりも高い優先度
の仲介装置があるときには自仲介装置の優先度を繰り上
げることを特徴とする請求項2乃至4何れか1項記載の
サーバシステム。 - 【請求項6】 active状態の仲介装置にのみ仮想
アドレスを付したことを特徴とする請求項1乃至5何れ
か1項記載のサーバシステム。 - 【請求項7】 クライアント・サーバ・仲介装置間の通
信としてTCP/IPプロトコルスイートを用い、ac
tive状態の仲介装置にのみネットワーク層における
仮想IPアドレスを付したことを特徴とする請求項6記
載のサーバシステム。 - 【請求項8】 backup状態からactive状態
となった仲介装置は、前記仮想アドレスと仲介装置を一
意に特定可能なアドレスとの対応関係の更新を指示する
パケットをネットワークに送出することを特徴とする請
求項6又は7何れか1項記載のサーバシステム。 - 【請求項9】 クライアント・サーバ・仲介装置間の通
信としてTCP/IPプロトコルスイートを用い、仮想
IPアドレスとMACアドレスとの対応関係を更新する
Gratuitous ARPをブロードキャストする
ことを特徴とする請求項8記載のサーバシステム。 - 【請求項10】 クライアントサーバ型システムにおけ
るサーバ側のシステムにおいてクライアントとサーバの
間に介在する仲介装置であって、 クライアントからの処理要求をサーバに転送するととも
にサーバから受信した前記処理要求に対する応答結果の
うち正当なものを要求元のクライアントに転送する転送
手段と、 クライアント・サーバ間に介在する複数の仲介装置のう
ち常に一の仲介装置のみがクライアント・サーバ間の処
理要求及び応答結果の転送を行う状態(active状
態)となるように前記転送手段の動作を制御する制御手
段とを備えたことを特徴とする仲介装置。 - 【請求項11】 クライアントサーバ型システムにおい
てサーバで発生した誤りをクライアントに対して隠蔽す
る方法において、 クライアントとサーバの間に、クライアントからの処理
要求をサーバに転送するとともにサーバから受信した前
記処理要求に対する応答結果のうち正当なものを要求元
のクライアントに転送する転送手段を有する仲介装置を
複数介在させ、 各仲介装置は、全ての仲介装置のうち常に一の仲介装置
のみがクライアント・サーバ間の処理要求及び応答結果
の転送を行う状態(active状態)となるように前
記転送手段の動作を制御することを特徴とするクライア
ントサーバ型システムにおける誤り隠蔽方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002154538A JP2003345679A (ja) | 2002-05-28 | 2002-05-28 | サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002154538A JP2003345679A (ja) | 2002-05-28 | 2002-05-28 | サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003345679A true JP2003345679A (ja) | 2003-12-05 |
Family
ID=29771322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002154538A Pending JP2003345679A (ja) | 2002-05-28 | 2002-05-28 | サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003345679A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011524563A (ja) * | 2008-06-03 | 2011-09-01 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ノード間でのデバイス・エラー情報の同期化 |
WO2016056473A1 (ja) * | 2014-10-07 | 2016-04-14 | 日本電信電話株式会社 | 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体 |
-
2002
- 2002-05-28 JP JP2002154538A patent/JP2003345679A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011524563A (ja) * | 2008-06-03 | 2011-09-01 | インターナショナル・ビジネス・マシーンズ・コーポレーション | ノード間でのデバイス・エラー情報の同期化 |
WO2016056473A1 (ja) * | 2014-10-07 | 2016-04-14 | 日本電信電話株式会社 | 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体 |
JPWO2016056473A1 (ja) * | 2014-10-07 | 2017-08-17 | 日本電信電話株式会社 | 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体 |
US11496893B2 (en) | 2014-10-07 | 2022-11-08 | Nippon Telegraph And Telephone Corporation | Secure computation system and relay device, and method, program, and recording medium thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5983360A (en) | Information processing system with communication system and hot stand-by change-over function therefor | |
US6928576B2 (en) | Backup gateway apparatus and home network system | |
US7987266B2 (en) | Failover in proxy server networks | |
US6108701A (en) | Soft switch extension for internet protocol applications | |
US7590886B2 (en) | Method and apparatus for facilitating device redundancy in a fault-tolerant system | |
US6389551B1 (en) | Method of preventing false or unnecessary failovers in a high availability cluster by using a quorum service | |
US20040153709A1 (en) | Method and apparatus for providing transparent fault tolerance within an application server environment | |
US7441035B2 (en) | Reliable server pool | |
WO1998049620A1 (en) | Redundant server failover in networked environment | |
JPH103440A (ja) | 計算機システム | |
JP2004032103A (ja) | ネットワークシステム及びサーバ切り替え方法 | |
JP2004171370A (ja) | 冗長構成におけるクライアント/サーバ間のアドレス制御方式および方法 | |
JP7161008B2 (ja) | アプリケーション冗長化管理システムおよびアプリケーション冗長化管理方法 | |
JPH09259096A (ja) | ネットワーク高信頼化方式及びシステム | |
JP2009265690A (ja) | クラスタシステム及びプログラム | |
JP5039975B2 (ja) | ゲートウェイ装置 | |
US20100229029A1 (en) | Independent and dynamic checkpointing system and method | |
JP2003345679A (ja) | サーバシステム、仲介装置、及び、クライアントサーバ型システムにおける誤り隠蔽方法 | |
JP2011203941A (ja) | 情報処理装置、監視方法、および監視プログラム | |
KR20030048503A (ko) | 이중화 서버 구조의 데이터 동기화를 위한 통신 시스템 및방법 | |
JP2021061478A (ja) | 中継装置、中継システム、及び中継プログラム | |
JP4167089B2 (ja) | サーバシステム及びクライアントサーバ型システムにおける誤り隠蔽方法 | |
JP2009003491A (ja) | クラスタシステムにおけるサーバ切り替え方法 | |
KR100383490B1 (ko) | 고가용성 네트워크 구현방법 | |
JP4133738B2 (ja) | 高速ネットワークアドレス引継ぎ方法、ネットワーク装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040806 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070314 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070515 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071023 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080130 |