[go: up one dir, main page]

JP4028627B2 - Client server system and communication management method for client server system - Google Patents

Client server system and communication management method for client server system Download PDF

Info

Publication number
JP4028627B2
JP4028627B2 JP27898597A JP27898597A JP4028627B2 JP 4028627 B2 JP4028627 B2 JP 4028627B2 JP 27898597 A JP27898597 A JP 27898597A JP 27898597 A JP27898597 A JP 27898597A JP 4028627 B2 JP4028627 B2 JP 4028627B2
Authority
JP
Japan
Prior art keywords
server
lan
lan interface
communication link
physical address
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 - Fee Related
Application number
JP27898597A
Other languages
Japanese (ja)
Other versions
JPH10224378A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP27898597A priority Critical patent/JP4028627B2/en
Publication of JPH10224378A publication Critical patent/JPH10224378A/en
Application granted granted Critical
Publication of JP4028627B2 publication Critical patent/JP4028627B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Small-Scale Networks (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、LAN(ローカル・エリア・ネットワーク)環境において、ある計算機の通信装置を他の計算機の通信装置で肩代わりする方式に係わるクライアントサーバシステムおよびクライアントサーバシステムの通信管理方法に関する。
【0002】
【従来の技術】
従来の計算機クラスタ、ホットスタンバイなどの技術では、ある計算機に故障が発生し、処理を継続できなくなった場合、代替の計算機が処理を引き継ぐことが行われている。
【0003】
クラスタには、さまざまな方式があるが、その一例として、図11を用いてクラスタ処理の引継ぎを説明する。主系サーバ101、並びに待機系サーバ110があり、処理引継ぎを行うクラスタ制御SW(ソフトウェア)が動作している。通常時、各サーバはそれぞれに別の処理を実行する。クラスタ制御SWは、制御用通信リンク120を用いて相手が正しく動作しているかどうかを定期的に検査する。
【0004】
主系サーバ101に故障が発生し、主系サーバ101のクラスタ制御SWがそれを検知した場合、主系サーバ101は処理を停止し、待機系サーバ110のクラスタ制御SWに通知する。或いは、待機系サーバ110のクラスタ制御SWが定期的に主系サーバ101を検査した際に主系サーバ101の故障を検知する。上記のいずれに於いても待機系サーバ110のクラスタ制御SWは、主系サーバ101が処理を停止したことを検知できる。
【0005】
次に、待機系サーバ110は、主系サーバ101で実行されていた処理を引き継ぐことを開始する。引き継ぐべき処理は予め定義しておくことが必要である。処理を引き継ぐために必要なことは、以下の2点である。
(1)どの計算機で実行しても、同一の結果が出る環境を整える
例えば、データベースサービスを主系サーバが行っていた場合、待機系サーバでそのサービスを引き継ぐためには、データベースファイルに、主系サーバが処理を停止していても、待機系サーバがアクセスできることが必要になる。
(2)通信先の切り替え
ネットワークを通じて、他の計算機と通信している場合は、相手の計算機にわからないように、通信相手を主系サーバから待機系サーバに切り替える。
【0006】
上記(1)を実現するための方法が提案されているが、ここでの説明は省略する。ここでは(2)の通信先の切り替えについて説明する。
主系サーバ101が他の計算機に提供しているサービスは、ネットワークを通じて、要求やその結果をやりとりする。主系サーバ101と通信を行う他の計算機は、主系サーバ101に故障が発生し、主系サーバ101が処理を停止しても、主系サーバ101宛で通信を行い続ける。
【0007】
これらの通信を待機系サーバ110で引き継ぐために、主系サーバ101のアドレス宛のパケットを待機系サーバ110が受信し、主系サーバ101のアドレスからパケットを送信する。TCP/IPでは、IPアドレスを複数持つことができるので、この機能を使う。
【0008】
通常時には、待機系サーバ110は自身のIPアドレスのみを受信している。主系サーバ101が処理を停止した後、待機系サーバ110のクラスタ制御SWは、主系サーバ101のIPアドレスも受信できるようにTCP/IPソフトウェアに設定をする。これで、主系サーバ101のパケットを受信でき、他の計算機は主系サーバ101が停止したことによる変更をしなくてよい。
【0009】
主系サーバ101が復帰すれば、待機系サーバ110は肩代わりしていたサービスを停止し、通信に関しても主系サーバ101のパケットを受信するのを中止する。尚、上記技術として特開平8−212095が存在する。
【0010】
【発明が解決しようとする課題】
しかしながら上述従来技術においては、主系サーバのLAN121に対する通信装置に故障があると、待機系サーバ110が主系サーバ101宛の通信を引き受けるために、待機系サーバ110が、主系サーバ101のLAN121の物理アドレスではなく、各トランスポート(TCP/IP,NETBEUIなど)毎にある論理アドレスすべてを受信するように変更を通知しなければならないという問題があった。
【0011】
本発明は上記事情を考慮して成されたもので、上記不具合を解消し、主系サーバのLANの物理アドレスを待機系サーバが受信可能としたクライアントサーバシステムおよびクライアントサーバシステムの通信管理方法を提供することを目的とする。
【0012】
【課題を解決するための手段】
記目的を達成するため、本発明のクライアントサーバシステムは、主系サーバ及び待機系サーバを有してなるクライアントサーバシステムにおいて、前記主系サーバと前記待機系サーバとの間を接続する専用の通信リンクと、前記主系サーバおよび前記待機系サーバとLANとの間に介在して設けられ、計算機のLANインタフェースが接続される複数個のポートを有し、各ポート先のLANインタフェースの物理アドレスを記憶して、LANから取り込んだ当該記憶している物理アドレス宛てのパケットを、前記複数個のポートの中の該当のポート先のLANインタフェースのみに転送するLANスイッチと、を具備し、前記主系サーバは、自サーバのLANインタフェースを用いたLAN経由の通信処理が実行不可能となる故障が発生した場合、自サーバのLANインタフェースの物理アドレスを前記専用の通信リンクを介して前記待機系サーバに通知すると共に、前記専用の通信リンクを介して前記LAN経由の通信処理用のパケットの送受信を代行する旨を前記専用の通信リンクを介して前記待機系サーバに依頼する手段を具備し、前記待機系サーバは、前記専用の通信リンクを介した前記LAN経由の通信処理用のパケットの送受信の代行を前記専用の通信リンクを介して前記主系サーバから依頼された場合、前記LANからのパケットをすべて受信するモードに自サーバのLANインタフェースを設定すると共に、前記専用の通信リンクを介して通知された前記主系サーバのLANインタフェースの物理アドレスを送信元アドレスとするパケットを自サーバのLANインタフェースを用いて前記LANに送出して、前記主系サーバのLANインタフェースの物理アドレス宛てのパケットを自サーバのLANインタフェースに転送するように前記LANスイッチに学習させる手段を具備する、ことを特徴とする。
【0013】
た、本発明のクライアントサーバシステムの通信管理方法は、主系サーバと、待機系サーバと、前記主系サーバと前記待機系サーバとの間を接続する専用の通信リンクと、前記主系サーバおよび前記待機系サーバとLANとの間に介在して設けられ、計算機のLANインタフェースが接続される複数個のポートを有し、各ポート先のLANインタフェースの物理アドレスを記憶して、LANから取り込んだ当該記憶している物理アドレス宛てのパケットを、前記複数個のポートの中の該当のポート先のLANインタフェースのみに転送するLANスイッチとをを有してなるクライアントサーバシステムの通信管理方法であって、前記主系サーバは、自サーバのLANインタフェースを用いたLAN経由の通信処理が実行不可能となる故障が発生した場合、自サーバのLANインタフェースの物理アドレスを前記専用の通信リンクを介して前記待機系サーバに通知すると共に、前記専用の通信リンクを介して前記LAN経由の通信処理用のパケットの送受信を代行する旨を前記専用の通信リンクを介して前記待機系サーバに依頼し、前記待機系サーバは、前記専用の通信リンクを介した前記LAN経由の通信処理用のパケットの送受信の代行を前記専用の通信リンクを介して前記主系サーバから依頼された場合、前記専用の通信リンクを介して通知された前記主系サーバのLANインタフェースの物理アドレスを送信元アドレスとするパケットを自サーバのLANインタフェースを用いて前記LANに送出し、前記主系サーバのLANインタフェースの物理アドレス宛てのパケットを、自サーバのLANインタフェースに転送するように前記LANスイッチに学習させる、ことを特徴とする。
【0020】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態を説明する。尚、この実施形態では、説明を分かりやすくするために、主系サーバ、待機系サーバと名づけているが、主系サーバと待機系サーバに本質的な違いはなく、それぞれ別の処理を独立に行うことが可能である。
(第一の実施形態)
図1は本発明の実施形態に於けるシステム構成を示すブロック図である。尚、ここでは主系サーバ1の各構成要素を主として説明を行うが、待機系サーバ10もまったく同様の構成であってよい。
【0021】
上記各サーバ1,10に於いて、トランスポート5,14は、LANインタフェース2,11、並びにLANドライバ3,12を介して受け取ったパケットを、サーバプロセス7,16に渡す役割を果たす。ここでは、説明を分かり易くするためにトランスポートをTCP/IPとする。
【0022】
LANインタフェース2,11は、LAN21に対してパケットの送受信を行う装置である。予め指定された物理アドレス宛のパケットがLAN21上に発信されると受信を行い、LANドライバ3,12に通知する。また、LANドライバ3,12から渡されたパケットをLAN21上に発信する。ここでは、説明を分かり易くするために、LANはイーサネットであるとする。
【0023】
LANドライバ3,12は、LANインタフェース2,11を制御する。LANインタフェース2,11が受信したパケットをトランスポート5,14が使用できるデータに加工し、トランスポート5,14、通信管理部4,13へ渡す。また、トランスポート5,14より渡されたデータから、LAN21上へ発信するパケットを作成し、LANインタフェース2,11を介してLAN21上に発信させる。また、LANインタフェース2,11を使用している際に、その故障を検知し、通信管理部4,13に通知する。
【0024】
通信リンク20は、上記各サーバ1,10の間の通信を行う専用のリンクである。
サーバプロセス7,16は、ネットワーク上の他の計算機から利用可能なサービスを提供する。例えば、データベースサービスなどを行う。複数のサーバプロセス7,16が存在でき、且つ主系サーバ1と待機系サーバ10でそのサービスの内容が異なってもよい。
【0025】
クライアント22は、主系サーバ1、待機系サーバ10のサービスをLANを経由して利用する計算機である。クライアントも複数存在することができる。
通信管理部4,13は、主系サーバ1、待機系サーバ10の故障の状態を保持し、正常時、故障発生時の処理を制御する。保持する状態としては、両サーバが正常、自サーバに故障発生、他サーバに故障発生、両サーバに故障発生の4つである。故障はさまざまな種類があり、その検出もさまざまであるが、本発明の実施形態においては、LAN21を通じての通信処理のみが行えない場合だけが関係する。従って、LAN21を通じての通信処理のみが行えず、その他の処理がすべて行える場合のみを故障として扱う。
【0026】
例えば、LANインタフェース2が使用不能になったときがこの故障にあたる。LANインタフェース2の故障は、LANドライバ3がパケットの送受信を行った場合に検知できる。
【0027】
さらに、クラスタ制御部6が定期的にLANドライバ3を通じてLANインタフェース2を検査するなどの方法を取ることもできる。
また、待機系サーバ10から主系サーバ1へLAN21経由でデータを送信し、その内容を検査することで、正しく動作しているかどうかを検査する方法も考えられる。
【0028】
また、故障からの回復を診断する方法もさまざまである。例えば、故障の発生していない待機系サーバ10のLANインタフェース11からLANインタフェース2へパケットを送信し、受信できるかどうかを定期的に確認する。或いは主系サーバ1内で故障から回復したかどうかを検査する処理を定期的に行うなどが考えられる。
【0029】
本発明では、故障発生、回復の検出は、主系サーバ1のハードウェア、或いはLANドライバ3などのソフトウェアが行い、通信管理部4へ通知を行う、或いは通信管理部4が自身で行うものとする。
【0030】
図4に通信管理部4の状態変化を示す。通信管理部4は、主系サーバ1(自サーバ)の故障を検出すると、自サーバに故障発生の状態になり、通信リンク20を通じて待機系サーバ20の通信管理部13に通知する。
【0031】
待機系サーバ20の通信管理部13は通知を受けて、他サーバに故障発生の状態となる(RB)。
また、故障から回復した場合、自身の状態を両サーバ正常にし、故障通知と同様に通信管理部13に通知する。
【0032】
通信管理部13は通知を受け、両サーバ正常の状態に変化する(RA)。
両サーバとも故障の場合は、後述するように複数のLANインタフェースを持つ場合のみ可能である。ここでは、説明のためにLANインタフェースは一つとし、複数の場合は、その違いのみを後述する。従って、両サーバとも故障の場合は、通信を肩代わりできない。
【0033】
通信管理部4が、本発明の特徴である故障時の通信の切り替えを行う部分である。通信管理部4は、実際のLANへの通信を制御するLANドライバと、トランスポートの間に位置し、この間のデータのやり取りを制御する。また、故障時には、通信リンク20を通じて、通信管理部13と通信を行う。
【0034】
通信管理部4は、LANドライバ3を通して、LANインタフェース2の故障を検知することができる。また、LANドライバ3から渡されたLANからの受信パケットのアドレスを検査することができ、さらには、LANドライバ3は渡されたパケットをLANに送信するだけの機能であるので、送信パケットのアドレスを変更することもできる。
【0035】
上記通信管理部4の動作処理手順を図5にフローチャートで示す。
ステップ60及び62で、故障通知か送信或いは受信処理かを判断する。ステップ66からは受信処理である。また、他サーバの通信管理部からと自サーバからの通知、データの送受信の両方を処理している。例えばステップ70で他サーバへデータを送ると、他サーバの通信管理部は、これを送信処理としてステップ62の処理へ入り、他サーバ故障としてステップ64,65の流れを実行する。
【0036】
次に、通常時、故障時に分けて、通信の方法を説明する。
図2の通常時の通信処理を示す概念図を用いて、通常時の処理を説明する。
通信管理部4、13ともに両サーバ正常の状態であり、それぞれのサーバは、内蔵するLANインタフェースを用いて通信を行う。
【0037】
サーバプロセスが発信するデータは、トランスポート5、通信管理部4、LANドライバ3によって処理されて、LANインタフェース2を通じLAN21へ送信される。LAN21からLANインタフェース2宛てに到着したパケットは、逆の経路を辿ってサーバプロセス7へ届く。
【0038】
通信管理部4は、両サーバ正常の状態にあり、送信、受信されるデータをトランスポート5とLANドライバ3の間で中継するのみである。
次に、図3の故障発生時の通信処理を示す概念図を用いて、主系サーバ1に故障が発生した場合を例にして、故障時の処理を説明する。通信管理部4が故障を検知し、状態を自サーバ故障とする。
【0039】
次に、故障発生を通信リンク20を通じて通信管理部13へ通知する。その通知に、相手に肩代わりしてもらいたい物理アドレスを併せて送信する。通信管理部13は故障通知を受け取って、他サーバ故障の状態となる。
【0040】
自サーバ故障の状態となった通信管理部4は、サーバプロセス7等から送られてくるLAN21へ送信すべきデータを、通信リンク20を通して、通信管理部13へ送る。また、逆に通信管理部13から送られてきた受信データをサーバプロセス7へ渡す。
【0041】
他サーバ故障の状態となっている通信管理部13は、LAN21からLANインタフェース11の物理アドレス宛てに到着したパケットや、サーバプロセス16が出すパケットを通常時と同様に送受信する。障害通知を主系サーバ1から受け取ると、LANドライバ12を使ってLANインタフェース11がLANインタフェース2の物理アドレス宛てのパケットも受信するように設定を変更する。
【0042】
通信管理部4から通信リンク20を通じて送られてくるパケットは、LANインタフェース2の物理アドレスから送信されたパケットとして、LANインタフェース11から送信する。具体的には、パケットの送信者のアドレスにLANインタフェース2の物理アドレスが入ったパケットをLAN21へ送出する。
【0043】
LANインタフェース11が受信したLANインタフェース2宛のパケットは、通信管理部13において、パケットの宛先を見ることで、主系サーバ1宛てか、待機系サーバ10宛てかを判断することができる。待機系サーバ10宛のものは、通常時の処理と同様、そのままトランスポート14へ渡す。主系サーバ1宛てのものは、通信リンク20を通じて、通信管理部4へ送信する。
【0044】
主系サーバ1の故障がなくなり、主系サーバ1が通信を再開できるようになった場合を説明する。
通信管理部4が故障がなくなったことを検知したとする。通信リンク20を用いて、通信管理部13へ通知し、両通信管理部とも状態を両サーバ正常の状態とする。
【0045】
以後のデータ送受信は、図2のようにそれぞれのサーバが、自身のLANインタフェースを用いて行う状態となる。LANインタフェースが複数ある場合でも、対応することが可能である。但し、主系サーバ1が接続しているLANには、待機系サーバ10も必ず接続している必要がある。
【0046】
通信管理部4が、待機系サーバ10の通信管理部13へ故障通知を出す際に、どのLANに接続しているLANインタフェースが故障したかを示す情報を合わせて送れば、これまで説明した方法で、待機系サーバ10が主系サーバ1の送受信を肩代わりできる。この場合は、どのLANと通信が不可能かという情報を保持し動作を決定すればよい。
【0047】
LANインタフェースの種類によっては、LAN21から受信する物理アドレスを1つしか設定できないものがある。上記説明では、主系サーバ1の分と、待機系サーバ10の分の合わせて2つの物理アドレスが受け取れることが前提となっている。この場合には、待機系サーバ10のLANドライバ12は、LANインタフェースを、LAN21に送信されるすべてのパケットを受信するモードに変更する。
【0048】
LANドライバ12は、受信したパケットをすべて通信管理部13へ中継する。通信管理部13は、受信したパケットから待機系サーバ10宛てのパケットと主系サーバ1宛てのパケットのみを選び出す処理を行うことで、この問題を解決することができる。
【0049】
上記したように本実施形態によれば、主系サーバ1に障害が発生し、通信処理ができなくなった場合に、待機系サーバ10のLANインタフェース11を通じて通信処理を継続することができる。
【0050】
また、トランスポートが使用する論理アドレスではなく、LAN21の物理アドレスを肩代わりする形を取るので、LAN21上の他の計算機に通知して、論理アドレスと物理アドレスの組み合わせを変更しなくてよい。
【0051】
さらに、クライアント22によっては、その内部に論理アドレスと物理アドレスの組み合わせを静的に保持し、待機系サーバ10からの通知で変更できない場合がある。この実施形態では、クライアントのこの組み合わせを変更せずに、待機系サーバ10が主系サーバ1の代わりに受信を行っているので、このようなクライアントがLAN21上にあっても対応することが可能である。
(第二の実施形態)
上記した第一の実施形態において、LANインタフェースの種類によっては、物理アドレスを1つしか受信できない仕様のものがある。このようなLANインタフェースを持つ待機系サーバが、第一の実施形態のように主系サーバの物理アドレス宛てのパケットも受信しようとする場合、すでに述べたように、すべてのパケットを受信し、その中から、待機系サーバのLANインタフェースの物理アドレス宛と、主系サーバのLANインタフェースの物理アドレス宛てのパケットを選別する処理を通信管理部が行う必要がある。
【0052】
この場合、LANインタフェースはLAN上のすべてのパケットを受信するために、処理が非常に多くなること、また、待機系サーバの通信管理部も処理が非常に多くなる等の問題がある。
【0053】
そこで、図6に示すように、一般に使用されているLANスイッチ30を使用するシステム構成を第二の実施形態として説明する。尚、図6に於いて上記第一の実施形態と同様な構成要件については図1と同様な符号を付してその説明を省略する。
【0054】
LANスイッチ30は、ここでは、イーサネットで使用するイーサスイッチとする。イーサスイッチは、計算機のLANインタフェースが接続する複数のポートを持つ。ポートの先には、一台の計算機だけではなくハブで接続した複数の計算機であってもよい。
【0055】
イーサスイッチは、ポートから出されるパケットをスキャンし、各ポートに接続されている計算機のLANインタフェースの物理アドレスを、ポートごとに記憶する。
【0056】
各ポートに接続されていると記憶した物理アドレス宛のパケットをイーサスイッチが受け取ると、そのポートにのみパケットを送信し、他のパケットには送信しない。
【0057】
通常のハブなどでは、すべてのポートに必ずパケットを送信するが、上記のように接続されているポートにのみパケットを送信することで、余計なトラフィックを抑えることができる。
【0058】
通常時、故障時とも、第一の実施形態と同じ動作を行う。但し、通信管理部13が、主系サーバ1の通信を肩代わりする動作を開始するときに、LAN21に対し、主系サーバ1のLANインタフェース2の物理アドレスを送信元アドレスとするパケットを、ブロードキャスト、或いはLANインタフェース11宛に送信する。
【0059】
これにより、LANスイッチ30は、LANインタフェース2の物理アドレス宛のパケットをLANインタフェース11が接続しているポートに送信するように学習する。
【0060】
上述したように本実施形態によれば,第一の実施形態の効果に加えて、以下の効果がある。すなわち、イーサスイッチが行うパケットのフィルタリングにより、待機系サーバのLANインタフェースに到着するパケットが少なくなり、障害時の待機系サーバの処理が第一の実施形態の場合より少なくなる。
(第三の実施形態)
前記従来技術で述べたように、論理アドレスを肩代わりする場合に、LAN上のクライアント22に影響を与えることなく、論理アドレスを肩代わりすることができる。
【0061】
この実施形態を図7乃至図10を用いて説明する。
この実施形態は、上記した第一の実施形態の構成に加えて、パケットフィルタ40を加えたシステム構成である。尚、図中、上記第一の実施形態と同様の構成要素については図1と同様の符号を付してその説明を省略する。
【0062】
まず、図8を参照してパケットフィルタ40について説明する。
図8に示すように、パケットフィルタ40は、計算機のLANインタフェースが接続するポート41を複数個備え、変換するパケットのアドレスを貯えるアドレス変換表42と、各ポートから到着するパケットを監視し、アドレスの書き換えをアドレス変換表42に基づいて行うフィルタ43とを内部にもつ。
【0063】
パケットフィルタ40は、通常のLAN21のハブと同様に、ポートから到着したパケットを他のポート全部へ伝達する。その際に、アドレス変換表42の元アドレス51に登録されているアドレスを送信先に持つパケットが到着すると、その送信先を新アドレス52に記録されているものと置き換えて、すべてのポートへ伝達する。また、パケットの送信元アドレスに関しても同様に変換を行う。
【0064】
パケットフィルタ40に上記のようなアドレスの置き換えを指示するために、パケットフィルタ40は、自身を特定する物理アドレスを持つ。
LAN21に接続している計算機が、パケットフィルタ40を制御するためには、パケットフィルタ40の物理アドレス宛に、元アドレスと、新アドレスをパケットに格納して送信する。
【0065】
パケットフィルタ40は、そのパケットを受信して、アドレス変換表42に登録する。また、元アドレス(アドレスの値をAとする)と新アドレスが同じアドレスとなっているデータを含むパケットを受け取ると、アドレス変換表42の元アドレスがAのエントリを検索し、エントリがあれば、それを削除する。
【0066】
尚、パケットフィルタ40は、上記第二の実施形態で述べたLANスイッチの機能を合わせ持つ構成であってもよい。
通信管理部4,13は、通常時は、第一の実施形態と同様に動作する。
【0067】
次に、故障時を説明する。第一の実施形態と同様、主系サーバ1が故障したとする。故障通知、通信管理部4、13の状態変化、主系サーバ1の通信管理部4の動作は、第一の実施形態と同様である。
【0068】
異なるのは、待機系サーバ10の通信管理部13が行う、通信の肩代わりの動作と位置である。これを図10を用いて説明する。
通信管理部4,13は、トランスポートとサーバプロセスの間に位置する。
【0069】
通信管理部13は、通信管理部4から故障通知を受け取ると、トランスポート14に、主系サーバ1のトランスポート5の論理アドレス(TCP/IPではIPアドレス)宛てのパケットも受信できるように指示する。
【0070】
一般に使用されるTCP/IPなどのトランスポート14は、複数の論理アドレスを扱うことができるようになっているものが殆どであるので、これには特別な仕組みは必要ない。
【0071】
通常のトランスポートでは、効率をあげるために、LAN上の他のクライアントが、LAN上のマシンの論理アドレスと物理アドレスの組を内部にキャッシュしている。
【0072】
新しい論理アドレスの使用を待機系サーバ10が開始する場合、特に本実施形態では、すでに主系サーバ1の物理アドレスと組になっていた論理アドレスを引き継ぐために、このキャッシュの破棄が必須となる。これらのキャッシュを破棄するために、ブロードキャストを行ったり、パケットをLAN上に送信するなどの動作が通常は行われる。
【0073】
LAN上のクライアントが保持しているであろう論理アドレスと物理アドレスの組のキャッシュを更新させるための動作を行わなくてよい。その理由を次に説明する。
【0074】
通信管理部13は、次に、パケットフィルタ40に対して、主系サーバ1のLANインタフェース2の物理アドレスを元アドレス、待機系サーバ10のLANインタフェース11の物理アドレスを新アドレスとする組のデータを含むパケットを送信する。
【0075】
パケットフィルタ40はこのパケットを受信し、上記物理アドレスの組をアドレス変換表42に記録する。このようにすることで、LANインタフェース2宛てのパケットは、LANインタフェース11に、パケットフィルタ40が届くことを保証することになる。従って、LAN上のクライアントは主系サーバ1のLANインタフェース2宛にパケットを送信し続けるが、実際に受信するのは待機系サーバ10となる。
【0076】
LANインタフェース11で受信したパケットは、LANドライバ12、トランスポート14を通って、通信管理部13に届く。通信管理部13は、パケットの宛先の論理アドレスを見て、主系サーバ宛か、待機系サーバ宛かを判断することができ、パケットをそれぞれに振り分ける。
【0077】
次に、主系サーバ1の故障が直った場合について説明する。この際は上記第一の実施形態と同様に故障が直ったことを検知すると、通信管理部4は、通信管理部13に通知する。
【0078】
通信管理部13は、トランスポート14に対し、これまで肩代わりしていた主系サーバ1の論理アドレスを扱うことを中止するように、トランスポート14に通知する。
【0079】
さらに、パケットフィルタ40に対し、元アドレス、新アドレスともに主系サーバ1のLANインタフェース2の物理アドレスであるパケットをパケットフィルタ40に送信して、パケットのアドレスの変換を停止することを指示する。
【0080】
これで、パケットフィルタ40によるパケットの振り替えが中止され、主系サーバ1でパケットが受信できるようになり、待機系サーバ10では、自身宛てのパケットのみが受信できる状態に戻ることができる。
【0081】
上述した実施形態によれば、クライアントが保持している論理アドレス、物理アドレスのキャッシュに影響を与えることなく、待機系サーバが主系サーバのパケットを受信することができるようになる。
【0082】
また、第一及び第二の実施形態で述べたように受信する物理アドレスが1つしか指定できないLANインタフェースを用いる場合に、すべてのパケットを受信するモードを使用する必要がない。
(第四の実施形態)
上述したすべての実施形態において、主系サーバ1と待機系サーバ10は、故障時に専用の通信リンク20を用いて、待機系サーバ10による通信の代替のためのデータのやり取りを行っていた。
【0083】
この実施形態では主系サーバ1、並びに待機系サーバ10が、複数のLANにつながっており、複数のLANインタフェースに故障が発生し、通信ができなくなる状況になっても、少なくとも一つは通信できるLANがあれば、専用の通信リンクの代わりにLANを用いて、上記の故障通知、データのやり取りを行うことができる。この実施形態によれば、主系サーバと待機系サーバの間に専用の通信リンクが必要ない。
【0084】
なお。この発明の手法は、ソフトウェアとしての実現が可能であるため、コンピュータによって実行させることのできるプログラムとして、フロッピィディスク、光ディスクおよび半導体メモリなどのコンピュータ読取り可能な記録媒体に格納して頒布することが可能である。そして、この記録媒体の内容を読取ったコンピュータは、その読取ったプログラムを実行制御することによって、前述した処理の実行を実現する。
【0085】
【発明の効果】
以上詳記したように本発明によれば、トランスポート(TCP/IPなど)の論理アドレス(IPアドレス)と、LANの物理アドレスの組み合わせを変更するために、LAN上の他の計算機に通知を出す必要がない。また、複数のトランスポートを使用していた場合は、それぞれのトランスポートごとに処理が必要であるが、本発明ではLANの物理アドレスのレベルでパケットの送受信を代替するため、その必要がない。
【0086】
また、本発明によれば、LANスイッチを用いることで、待機系のLANインタフェースに到着するパケットが少なくなり、待機系サーバとそのLANインタフェースに対する負荷をより小さくすることができる。
【0087】
また、本発明によれば、パケットの物理アドレスを変換することができ、且つそれを動的に行うことができる。
さらに、本発明によれば、トランスポートが管理する論理アドレスを肩代わりするがLAN上の他のクライアントに対し論理アドレスと物理アドレスの組み合わせを変更させずに済むという効果を奏する。
【図面の簡単な説明】
【図1】本発明の第一実施形態に係るシステムの構成を示すブロック図。
【図2】上記実施形態に於ける通常時の通信処理を示す概念図。
【図3】上記実施形態に於ける故障発生時の通信処理を示す概念図。
【図4】上記実施形態に於ける状態遷移図。
【図5】上記実施形態に於ける通信管理部の処理手順を示すフローチャート。
【図6】本発明の第二実施形態に係るLANスイッチを使用したシステムの構成を示すブロック図。
【図7】本発明の第三実施形態に係るパケットフィルタを用いた構成例を示すブロック図。
【図8】上記実施形態に於けるパケットフィルタの構成を示す図。
【図9】上記実施形態に於けるアドレス変換テーブルの構成を示す図。
【図10】上記実施形態に於ける故障時の通信処理を示す概念図。
【図11】従来のシステムによる通信処理を示す概念図。
【符号の説明】
1…主系サーバ、
2…LANインタフェース、
3…LANドライバ、
4…通信管理部、
5…トランスポート、
6…クラスタ制御部、
7…サーバプロセス、
10…待機系サーバ、
11…LANインタフェース、
12…LANドライバ、
13…通信管理部、
14…トランスポート、
16…サーバプロセス、
20…通信リンク、
21…LAN、
22…クライアント、
30…LANスイッチ、
40…パケットフィルタ、
41…ポート、
42…アドレス変換表、
43…フィルタ。
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a client server system related to a system in which a communication device of one computer is replaced with a communication device of another computer in a LAN (local area network) environment. And client server system communication management method About.
[0002]
[Prior art]
In conventional techniques such as computer cluster and hot standby, when a failure occurs in a computer and the processing cannot be continued, an alternative computer takes over the processing.
[0003]
There are various types of clusters. As an example, taking over of cluster processing will be described with reference to FIG. There are a primary server 101 and a standby server 110, and a cluster control SW (software) that takes over processing is operating. Normally, each server performs a different process. The cluster control SW periodically checks whether the other party is operating correctly using the control communication link 120.
[0004]
When a failure occurs in the primary server 101 and the cluster control SW of the primary server 101 detects this, the primary server 101 stops the process and notifies the cluster control SW of the standby server 110. Alternatively, a failure of the primary server 101 is detected when the cluster control SW of the standby server 110 periodically inspects the primary server 101. In any of the above, the cluster control SW of the standby server 110 can detect that the main server 101 has stopped processing.
[0005]
Next, the standby server 110 starts to take over the processing that has been executed by the primary server 101. The process to be taken over needs to be defined in advance. The following two points are necessary to take over the processing.
(1) Prepare an environment that produces the same results regardless of the computer
For example, if the primary server provides a database service, the standby server must be able to access the database file even if the primary server has stopped processing in order to take over the service on the standby server. become.
(2) Switching communication destination
When communicating with other computers via the network, the communication partner is switched from the primary server to the standby server so that the partner computer is not aware.
[0006]
Although a method for realizing the above (1) has been proposed, description thereof is omitted here. Here, switching of the communication destination (2) will be described.
Services provided by the primary server 101 to other computers exchange requests and results through the network. Other computers that communicate with the primary server 101 continue to communicate with the primary server 101 even if a failure occurs in the primary server 101 and the primary server 101 stops processing.
[0007]
In order to take over these communications by the standby server 110, the standby server 110 receives a packet addressed to the address of the primary server 101, and transmits a packet from the address of the primary server 101. Since TCP / IP can have a plurality of IP addresses, this function is used.
[0008]
Normally, standby server 110 receives only its own IP address. After the primary server 101 stops processing, the cluster control SW of the standby server 110 sets the TCP / IP software so that the IP address of the primary server 101 can also be received. Thus, the packet of the primary server 101 can be received, and other computers do not have to make a change due to the stop of the primary server 101.
[0009]
If the primary server 101 returns, the standby server 110 stops the service that it has taken over and stops receiving the packet of the primary server 101 for communication. JP-A-8-212095 exists as the above technique.
[0010]
[Problems to be solved by the invention]
However, in the above-described prior art, if there is a failure in the communication device for the LAN 121 of the primary server, the standby server 110 takes over the communication addressed to the primary server 101, so that the standby server 110 is connected to the LAN 121 of the primary server 101. There is a problem that the change must be notified so as to receive all the logical addresses for each transport (TCP / IP, NETBEUI, etc.) instead of the physical address of the network.
[0011]
The present invention has been made in view of the above circumstances, and has solved the above problems, and enables a standby server to receive the physical address of the LAN of the primary server. And client server system communication management method The purpose is to provide.
[0012]
[Means for Solving the Problems]
Up To achieve the purpose, The client server system of the present invention In a client server system having a primary server and a standby server, a dedicated communication link for connecting the primary server and the standby server; It is provided between the main server and the standby server and the LAN, has a plurality of ports to which the LAN interface of the computer is connected, and stores the physical address of the LAN interface of each port destination. A LAN switch that transfers packets addressed to the stored physical address taken in from the LAN to only the LAN interface of the corresponding port destination among the plurality of ports, and the primary server includes: When a failure that makes it impossible to execute communication processing via the LAN using the local server's LAN interface occurs, the physical address of the local server's LAN interface is notified to the standby server via the dedicated communication link. , Acting as a proxy for sending and receiving packets for communication processing via the LAN via the dedicated communication link Means for requesting the standby server via a dedicated communication link, the standby server acting as a proxy for sending and receiving packets for communication processing via the LAN via the dedicated communication link The main server is set to a mode for receiving all packets from the LAN, and the main interface notified via the dedicated communication link is set. A packet having the physical address of the local server's LAN interface as the source address is sent to the LAN using the local server's LAN interface, and the packet addressed to the physical address of the primary server's LAN interface is transmitted to the local server's LAN interface. Means for causing the LAN switch to learn to forward to It is characterized by that.
[0013]
Ma The present invention The client server system communication management method includes a main server, a standby server, a dedicated communication link connecting the main server and the standby server, the main server, and the standby server. And a plurality of ports connected to the computer's LAN interface, storing the physical address of the LAN interface of each port destination, and storing that taken in from the LAN A client server system communication management method comprising: a LAN switch that transfers a packet addressed to a physical address to only a LAN interface of a corresponding port destination among the plurality of ports. When a failure occurs that makes it impossible to execute communication processing via the LAN using the local server's LAN interface. Notifying the standby server via the dedicated communication link of the physical address of the local server's LAN interface, and acting as a proxy for sending and receiving packets for communication processing via the LAN via the dedicated communication link Requesting the standby server via the dedicated communication link, the standby server using the dedicated communication link as a proxy for sending and receiving packets for communication processing via the LAN via the dedicated communication link. When a request is received from the primary server via the dedicated server link, a packet having a physical address of the LAN interface of the primary server notified via the dedicated communication link as a source address is transmitted using the LAN interface of the local server. The packet sent to the LAN and addressed to the physical address of the LAN interface of the primary server Wherein to learn the LAN switch to forward to the LAN interface, It is characterized by that.
[0020]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings. In this embodiment, the primary server and the standby server are named for ease of explanation, but there is no essential difference between the primary server and the standby server, and separate processing is performed independently. Is possible.
(First embodiment)
FIG. 1 is a block diagram showing a system configuration in an embodiment of the present invention. Here, each component of the main server 1 will be mainly described, but the standby server 10 may have the same configuration.
[0021]
In the servers 1 and 10, the transports 5 and 14 serve to pass packets received via the LAN interfaces 2 and 11 and the LAN drivers 3 and 12 to the server processes 7 and 16. Here, for ease of explanation, the transport is assumed to be TCP / IP.
[0022]
The LAN interfaces 2 and 11 are devices that transmit and receive packets to and from the LAN 21. When a packet addressed to a physical address designated in advance is transmitted on the LAN 21, the packet is received and notified to the LAN drivers 3 and 12. Further, the packet delivered from the LAN drivers 3 and 12 is transmitted on the LAN 21. Here, in order to make the explanation easy to understand, it is assumed that the LAN is Ethernet.
[0023]
The LAN drivers 3 and 12 control the LAN interfaces 2 and 11. Packets received by the LAN interfaces 2 and 11 are processed into data that can be used by the transports 5 and 14 and transferred to the transports 5 and 14 and the communication management units 4 and 13. Further, a packet to be transmitted to the LAN 21 is created from the data passed from the transports 5 and 14 and is transmitted to the LAN 21 through the LAN interfaces 2 and 11. Further, when the LAN interfaces 2 and 11 are used, the failure is detected and notified to the communication management units 4 and 13.
[0024]
The communication link 20 is a dedicated link for performing communication between the servers 1 and 10.
The server processes 7 and 16 provide services that can be used from other computers on the network. For example, a database service is performed. A plurality of server processes 7 and 16 can exist, and the contents of the service may differ between the primary server 1 and the standby server 10.
[0025]
The client 22 is a computer that uses the services of the primary server 1 and the standby server 10 via the LAN. There can be multiple clients.
The communication management units 4 and 13 hold the failure state of the primary server 1 and the standby server 10 and control processing when the failure occurs and when it is normal. There are four states to be held: both servers are normal, a failure has occurred in the own server, a failure has occurred in another server, and a failure has occurred in both servers. There are various types of failures and detections are various, but in the embodiment of the present invention, only the case where communication processing through the LAN 21 cannot be performed is concerned. Therefore, only communication processing through the LAN 21 cannot be performed, and only when all other processing can be performed is treated as a failure.
[0026]
For example, this failure occurs when the LAN interface 2 becomes unusable. A failure of the LAN interface 2 can be detected when the LAN driver 3 transmits / receives a packet.
[0027]
Further, the cluster control unit 6 can periodically take a method of inspecting the LAN interface 2 through the LAN driver 3.
Another possible method is to check whether the server is operating correctly by transmitting data from the standby server 10 to the main server 1 via the LAN 21 and checking the contents thereof.
[0028]
There are also various methods for diagnosing recovery from failures. For example, a packet is transmitted from the LAN interface 11 of the standby server 10 in which no failure has occurred to the LAN interface 2 to periodically check whether it can be received. Alternatively, it is conceivable to periodically perform a process for checking whether or not the main server 1 has recovered from the failure.
[0029]
In the present invention, detection of failure occurrence and recovery is performed by the hardware of the primary server 1 or software such as the LAN driver 3 to notify the communication management unit 4 or by the communication management unit 4 itself. To do.
[0030]
FIG. 4 shows a state change of the communication management unit 4. When the communication management unit 4 detects a failure of the primary server 1 (own server), the communication management unit 4 enters a failure state in the own server and notifies the communication management unit 13 of the standby server 20 through the communication link 20.
[0031]
Upon receiving the notification, the communication management unit 13 of the standby server 20 enters a state where a failure has occurred in another server (RB).
Further, when recovering from the failure, both servers are made normal, and the communication management unit 13 is notified in the same manner as the failure notification.
[0032]
The communication management unit 13 receives the notification and changes to a normal state of both servers (RA).
If both servers are out of order, it is possible only when a plurality of LAN interfaces are provided as will be described later. Here, for the sake of explanation, only one LAN interface is used, and when there are a plurality of LAN interfaces, only the difference will be described later. Therefore, if both servers fail, communication cannot be taken over.
[0033]
The communication management unit 4 is a part for switching communication at the time of failure, which is a feature of the present invention. The communication management unit 4 is located between the LAN driver that controls communication to the actual LAN and the transport, and controls data exchange between them. Further, when a failure occurs, communication with the communication management unit 13 is performed through the communication link 20.
[0034]
The communication management unit 4 can detect a failure of the LAN interface 2 through the LAN driver 3. Further, the address of the received packet from the LAN passed from the LAN driver 3 can be inspected. Further, since the LAN driver 3 is a function only for transmitting the passed packet to the LAN, the address of the transmitted packet Can also be changed.
[0035]
FIG. 5 is a flowchart showing the operation processing procedure of the communication management unit 4.
In steps 60 and 62, it is determined whether it is failure notification or transmission or reception processing. From step 66, it is a reception process. It also handles both notifications from other servers' communication management units and from its own server, and data transmission / reception. For example, when data is sent to another server in step 70, the communication management unit of the other server enters the process of step 62 as a transmission process, and executes the flow of steps 64 and 65 as the other server failure.
[0036]
Next, the communication method will be described separately for the normal time and the failure time.
The normal process will be described with reference to the conceptual diagram showing the normal communication process in FIG.
Both of the communication management units 4 and 13 are in a normal state, and each server communicates using a built-in LAN interface.
[0037]
Data transmitted by the server process is processed by the transport 5, the communication management unit 4, and the LAN driver 3 and transmitted to the LAN 21 through the LAN interface 2. A packet that arrives from the LAN 21 to the LAN interface 2 follows the reverse path and reaches the server process 7.
[0038]
The communication management unit 4 is in a normal state of both servers, and only relays data transmitted and received between the transport 5 and the LAN driver 3.
Next, the process at the time of failure will be described using the case where a failure has occurred in the primary server 1 as an example using the conceptual diagram showing the communication processing at the time of failure in FIG. The communication management unit 4 detects the failure and sets the state as the own server failure.
[0039]
Next, the communication management unit 13 is notified of the failure occurrence through the communication link 20. The notification is sent together with the physical address that the other party wants to take over. The communication management unit 13 receives the failure notification and enters into a state of failure of other servers.
[0040]
The communication management unit 4 in a state of failure of its own server transmits data to be transmitted to the LAN 21 transmitted from the server process 7 or the like to the communication management unit 13 through the communication link 20. Conversely, the reception data sent from the communication management unit 13 is passed to the server process 7.
[0041]
The communication management unit 13 in the other server failure state transmits / receives a packet arriving from the LAN 21 to the physical address of the LAN interface 11 and a packet issued by the server process 16 in the same manner as in normal times. When a failure notification is received from the primary server 1, the LAN interface 12 is used to change the setting so that the LAN interface 11 also receives packets addressed to the physical address of the LAN interface 2.
[0042]
A packet transmitted from the communication management unit 4 through the communication link 20 is transmitted from the LAN interface 11 as a packet transmitted from the physical address of the LAN interface 2. Specifically, a packet in which the physical address of the LAN interface 2 is included in the address of the packet sender is sent to the LAN 21.
[0043]
The communication management unit 13 can determine whether the packet addressed to the LAN interface 2 received by the LAN interface 11 is addressed to the primary server 1 or the standby server 10 by looking at the packet destination. The server addressed to the standby server 10 is transferred to the transport 14 as it is in the normal processing. Those addressed to the main server 1 are transmitted to the communication management unit 4 through the communication link 20.
[0044]
A case will be described in which the failure of the primary server 1 disappears and the primary server 1 can resume communication.
It is assumed that the communication management unit 4 detects that a failure has disappeared. The communication link 20 is used to notify the communication management unit 13 so that both communication management units are in a normal state on both servers.
[0045]
The subsequent data transmission / reception is performed by each server using its own LAN interface as shown in FIG. Even when there are a plurality of LAN interfaces, it is possible to cope with them. However, the standby server 10 must be connected to the LAN to which the main server 1 is connected.
[0046]
If the communication management unit 4 sends a failure notification to the communication management unit 13 of the standby server 10 together with information indicating the LAN interface connected to which LAN has failed, the method described so far Thus, the standby server 10 can take over transmission / reception of the main server 1. In this case, what is necessary is just to hold | maintain the information of which LAN communication is impossible and to determine operation | movement.
[0047]
Depending on the type of LAN interface, only one physical address received from the LAN 21 can be set. In the above description, it is assumed that two physical addresses can be received in total for the primary server 1 and the standby server 10. In this case, the LAN driver 12 of the standby server 10 changes the LAN interface to a mode for receiving all packets transmitted to the LAN 21.
[0048]
The LAN driver 12 relays all received packets to the communication management unit 13. The communication management unit 13 can solve this problem by performing a process of selecting only packets addressed to the standby server 10 and packets addressed to the primary server 1 from the received packets.
[0049]
As described above, according to the present embodiment, when a failure occurs in the primary server 1 and communication processing cannot be performed, the communication processing can be continued through the LAN interface 11 of the standby server 10.
[0050]
Since the physical address of the LAN 21 is used instead of the logical address used by the transport, it is not necessary to notify other computers on the LAN 21 and change the combination of the logical address and the physical address.
[0051]
Further, depending on the client 22, there is a case where a combination of a logical address and a physical address is statically held therein and cannot be changed by a notification from the standby server 10. In this embodiment, since the standby server 10 receives data instead of the main server 1 without changing this combination of clients, it is possible to cope with such a client on the LAN 21. It is.
(Second embodiment)
In the first embodiment described above, there are specifications that can receive only one physical address depending on the type of LAN interface. When the standby server having such a LAN interface tries to receive a packet addressed to the physical address of the primary server as in the first embodiment, as described above, it receives all the packets, The communication management unit needs to perform processing for selecting packets addressed to the physical address of the LAN interface of the standby server and the physical address of the LAN interface of the primary server.
[0052]
In this case, since the LAN interface receives all packets on the LAN, there is a problem that the processing becomes very large, and the communication management unit of the standby server also has a large amount of processing.
[0053]
Therefore, as shown in FIG. 6, a system configuration using a commonly used LAN switch 30 will be described as a second embodiment. In FIG. 6, the same components as those in the first embodiment are denoted by the same reference numerals as those in FIG. 1, and the description thereof is omitted.
[0054]
Here, the LAN switch 30 is an Ethernet switch used in Ethernet. The Ethernet switch has a plurality of ports to which the LAN interface of the computer is connected. At the end of the port, not only one computer but also a plurality of computers connected by a hub may be used.
[0055]
The Ethernet switch scans a packet output from a port and stores the physical address of the LAN interface of the computer connected to each port for each port.
[0056]
When the Ethernet switch receives a packet addressed to a physical address stored as being connected to each port, the packet is transmitted only to that port and not transmitted to other packets.
[0057]
In a normal hub or the like, packets are always transmitted to all ports, but extra traffic can be suppressed by transmitting packets only to the ports connected as described above.
[0058]
The same operation as that of the first embodiment is performed at both the normal time and the time of failure. However, when the communication management unit 13 starts an operation to take over the communication of the primary server 1, it broadcasts a packet with the physical address of the LAN interface 2 of the primary server 1 as the transmission source address to the LAN 21. Alternatively, it is transmitted to the LAN interface 11.
[0059]
Thereby, the LAN switch 30 learns to transmit a packet addressed to the physical address of the LAN interface 2 to the port to which the LAN interface 11 is connected.
[0060]
As described above, according to the present embodiment, in addition to the effects of the first embodiment, there are the following effects. In other words, the packet filtering performed by the Ethernet switch reduces the number of packets arriving at the LAN interface of the standby server, and the processing of the standby server at the time of failure is less than in the first embodiment.
(Third embodiment)
As described in the prior art, when a logical address is taken over, the logical address can be taken over without affecting the client 22 on the LAN.
[0061]
This embodiment will be described with reference to FIGS.
This embodiment has a system configuration in which a packet filter 40 is added to the configuration of the first embodiment described above. In the figure, components similar to those in the first embodiment are denoted by the same reference numerals as those in FIG. 1 and description thereof is omitted.
[0062]
First, the packet filter 40 will be described with reference to FIG.
As shown in FIG. 8, the packet filter 40 includes a plurality of ports 41 to which the LAN interface of the computer is connected, an address conversion table 42 for storing addresses of packets to be converted, and a packet arriving from each port, and monitoring addresses Is internally provided with a filter 43 that performs the rewriting based on the address conversion table 42.
[0063]
The packet filter 40 transmits a packet arriving from a port to all other ports in the same manner as a normal LAN 21 hub. At that time, when a packet having the address registered in the original address 51 of the address conversion table 42 arrives, the destination is replaced with the one recorded in the new address 52 and transmitted to all ports. To do. Also, the packet source address is converted in the same manner.
[0064]
In order to instruct the packet filter 40 to replace the address as described above, the packet filter 40 has a physical address that identifies itself.
In order for the computer connected to the LAN 21 to control the packet filter 40, the original address and the new address are stored in the packet and transmitted to the physical address of the packet filter 40.
[0065]
The packet filter 40 receives the packet and registers it in the address conversion table 42. When a packet including data whose new address is the same address as the original address (address value is A) is received, the entry in the address conversion table 42 is searched for the original address A. Delete it.
[0066]
The packet filter 40 may be configured to have the LAN switch function described in the second embodiment.
The communication managers 4 and 13 operate in the same manner as in the first embodiment during normal times.
[0067]
Next, the time of failure will be described. As in the first embodiment, it is assumed that the primary server 1 has failed. The failure notification, the state change of the communication management units 4 and 13, and the operation of the communication management unit 4 of the primary server 1 are the same as in the first embodiment.
[0068]
The difference is the operation and position in place of communication performed by the communication management unit 13 of the standby server 10. This will be described with reference to FIG.
The communication managers 4 and 13 are located between the transport and the server process.
[0069]
When the communication management unit 13 receives the failure notification from the communication management unit 4, the communication management unit 13 instructs the transport 14 to receive a packet addressed to the logical address (IP address in TCP / IP) of the transport 5 of the primary server 1. To do.
[0070]
Since most of the transports 14 such as TCP / IP that are generally used can handle a plurality of logical addresses, a special mechanism is not necessary for this.
[0071]
In normal transport, in order to increase efficiency, other clients on the LAN cache a set of logical and physical addresses of machines on the LAN.
[0072]
When the standby server 10 starts using a new logical address, particularly in this embodiment, the cache address must be discarded in order to take over the logical address already paired with the physical address of the primary server 1. . In order to discard these caches, operations such as broadcasting and transmitting packets on the LAN are usually performed.
[0073]
There is no need to perform an operation for updating a cache of a set of logical addresses and physical addresses that a client on the LAN will hold. The reason will be described next.
[0074]
Next, the communication management unit 13 sets a set of data for the packet filter 40 with the physical address of the LAN interface 2 of the primary server 1 as the original address and the physical address of the LAN interface 11 of the standby server 10 as the new address. Send a packet containing
[0075]
The packet filter 40 receives this packet and records the set of physical addresses in the address conversion table 42. By doing so, the packet addressed to the LAN interface 2 is guaranteed to reach the LAN interface 11 by the packet filter 40. Accordingly, the client on the LAN continues to send packets to the LAN interface 2 of the primary server 1, but actually receives the standby server 10.
[0076]
Packets received by the LAN interface 11 reach the communication management unit 13 through the LAN driver 12 and the transport 14. The communication management unit 13 can determine whether the packet is addressed to the primary server or the standby server by looking at the logical address of the packet destination, and distributes the packet to each.
[0077]
Next, a case where the failure of the primary server 1 is corrected will be described. In this case, when it is detected that the failure has been corrected as in the first embodiment, the communication management unit 4 notifies the communication management unit 13.
[0078]
The communication management unit 13 notifies the transport 14 to stop handling the logical address of the primary server 1 that has taken over.
[0079]
Further, the packet filter 40 is instructed to transmit the packet that is the physical address of the LAN interface 2 of the primary server 1 to the packet filter 40 with both the original address and the new address, and stop the packet address conversion.
[0080]
Thus, the packet transfer by the packet filter 40 is stopped, the primary server 1 can receive the packet, and the standby server 10 can return to a state where only the packet addressed to itself can be received.
[0081]
According to the embodiment described above, the standby server can receive the packet of the primary server without affecting the logical address and physical address caches held by the client.
[0082]
Also, as described in the first and second embodiments, when a LAN interface that can specify only one physical address is used, it is not necessary to use a mode for receiving all packets.
(Fourth embodiment)
In all the embodiments described above, the primary server 1 and the standby server 10 exchange data for substituting communication by the standby server 10 using the dedicated communication link 20 in the event of a failure.
[0083]
In this embodiment, the primary server 1 and the standby server 10 are connected to a plurality of LANs, and even if a failure occurs in a plurality of LAN interfaces and communication becomes impossible, at least one can communicate. If there is a LAN, the above-mentioned failure notification and data exchange can be performed using a LAN instead of a dedicated communication link. According to this embodiment, no dedicated communication link is required between the primary server and the standby server.
[0084]
Note that. Since the technique of the present invention can be realized as software, it can be stored and distributed in a computer-readable recording medium such as a floppy disk, an optical disk, and a semiconductor memory as a program that can be executed by a computer. It is. Then, the computer that has read the contents of the recording medium implements the above-described processing by controlling the execution of the read program.
[0085]
【The invention's effect】
As described above in detail, according to the present invention, in order to change the combination of the logical address (IP address) of a transport (such as TCP / IP) and the physical address of the LAN, a notification is sent to other computers on the LAN. There is no need to put it out. Further, when a plurality of transports are used, processing is required for each transport. However, in the present invention, since transmission / reception of packets is substituted at the physical address level of the LAN, this is not necessary.
[0086]
Further, according to the present invention, by using the LAN switch, the number of packets that arrive at the standby LAN interface is reduced, and the load on the standby server and the LAN interface can be further reduced.
[0087]
Further, according to the present invention, the physical address of the packet can be converted and can be dynamically performed.
Furthermore, according to the present invention, the logical address managed by the transport is taken over, but there is an effect that it is not necessary to change the combination of the logical address and the physical address for other clients on the LAN.
[Brief description of the drawings]
FIG. 1 is a block diagram showing the configuration of a system according to a first embodiment of the present invention.
FIG. 2 is a conceptual diagram showing a normal communication process in the embodiment.
FIG. 3 is a conceptual diagram showing communication processing when a failure occurs in the embodiment.
FIG. 4 is a state transition diagram in the embodiment.
FIG. 5 is a flowchart showing a processing procedure of a communication management unit in the embodiment.
FIG. 6 is a block diagram showing the configuration of a system using a LAN switch according to the second embodiment of the present invention.
FIG. 7 is a block diagram showing a configuration example using a packet filter according to a third embodiment of the present invention.
FIG. 8 is a diagram showing a configuration of a packet filter in the embodiment.
FIG. 9 is a diagram showing a configuration of an address conversion table in the embodiment.
FIG. 10 is a conceptual diagram showing communication processing when a failure occurs in the embodiment.
FIG. 11 is a conceptual diagram showing communication processing by a conventional system.
[Explanation of symbols]
1 ... Main server,
2 ... LAN interface
3 ... LAN driver,
4. Communication management department
5 ... Transport,
6 ... Cluster controller,
7 ... Server process,
10: Standby server,
11 ... LAN interface,
12 ... LAN driver,
13 ... Communication management department,
14 ... Transport,
16 ... Server process,
20 ... communication link,
21 ... LAN,
22 ... Client,
30 ... LAN switch,
40 ... Packet filter,
41 ... Port,
42 ... address conversion table,
43. Filter.

Claims (2)

主系サーバ及び待機系サーバを有してなるクライアントサーバシステムにおいて、
前記主系サーバと前記待機系サーバとの間を接続する専用の通信リンクと、
前記主系サーバおよび前記待機系サーバとLANとの間に介在して設けられ、計算機のLANインタフェースが接続される複数個のポートを有し、各ポート先のLANインタフェースの物理アドレスを記憶して、LANから取り込んだ当該記憶している物理アドレス宛てのパケットを、前記複数個のポートの中の該当のポート先のLANインタフェースのみに転送するLANスイッチと、
を具備し、
前記主系サーバは、
自サーバのLANインタフェースを用いたLAN経由の通信処理が実行不可能となる故障が発生した場合、自サーバのLANインタフェースの物理アドレスを前記専用の通信リンクを介して前記待機系サーバに通知すると共に、前記専用の通信リンクを介して前記LAN経由の通信処理用のパケットの送受信を代行する旨を前記専用の通信リンクを介して前記待機系サーバに依頼する手段を具備し、
前記待機系サーバは、
前記専用の通信リンクを介した前記LAN経由の通信処理用のパケットの送受信の代行を前記専用の通信リンクを介して前記主系サーバから依頼された場合、前記LANからのパケットをすべて受信するモードに自サーバのLANインタフェースを設定すると共に、前記専用の通信リンクを介して通知された前記主系サーバのLANインタフェースの物理アドレスを送信元アドレスとするパケットを自サーバのLANインタフェースを用いて前記LANに送出して、前記主系サーバのLANインタフェースの物理アドレス宛てのパケットを自サーバのLANインタフェースに転送するように前記LANスイッチに学習させる手段を具備する、
ことを特徴とするクライアントサーバシステム。
In a client server system having a main server and a standby server,
A dedicated communication link connecting the primary server and the standby server;
It is provided between the main server and the standby server and the LAN, has a plurality of ports to which the LAN interface of the computer is connected, and stores the physical address of the LAN interface of each port destination. A LAN switch for transferring packets addressed to the stored physical address taken in from the LAN only to the LAN interface of the corresponding port destination among the plurality of ports;
Comprising
The primary server is
When a failure that makes it impossible to execute communication processing via the LAN using the local server's LAN interface occurs, the physical address of the local server's LAN interface is notified to the standby server via the dedicated communication link. And means for requesting the standby server via the dedicated communication link to perform transmission and reception of packets for communication processing via the LAN via the dedicated communication link,
The standby server is
A mode for receiving all packets from the LAN when the primary server is requested via the dedicated communication link to send and receive packets for communication processing via the LAN via the dedicated communication link. The LAN interface of the own server is set in the local server, and a packet having the physical address of the LAN interface of the primary server notified via the dedicated communication link as a transmission source address is transmitted using the LAN interface of the own server. And a means for causing the LAN switch to learn to forward a packet addressed to the physical address of the LAN interface of the primary server to the LAN interface of the local server.
A client-server system.
主系サーバと、待機系サーバと、前記主系サーバと前記待機系サーバとの間を接続する専用の通信リンクと、前記主系サーバおよび前記待機系サーバとLANとの間に介在して設けられ、計算機のLANインタフェースが接続される複数個のポートを有し、各ポート先のLANインタフェースの物理アドレスを記憶して、LANから取り込んだ当該記憶している物理アドレス宛てのパケットを、前記複数個のポートの中の該当のポート先のLANインタフェースのみに転送するLANスイッチとをを有してなるクライアントサーバシステムの通信管理方法であって、
前記主系サーバは、
自サーバのLANインタフェースを用いたLAN経由の通信処理が実行不可能となる故障が発生した場合、自サーバのLANインタフェースの物理アドレスを前記専用の通信リンクを介して前記待機系サーバに通知すると共に、前記専用の通信リンクを介して前記LAN経由の通信処理用のパケットの送受信を代行する旨を前記専用の通信リンクを介して前記待機系サーバに依頼し、
前記待機系サーバは、
前記専用の通信リンクを介した前記LAN経由の通信処理用のパケットの送受信の代行を前記専用の通信リンクを介して前記主系サーバから依頼された場合、前記LANからのパケットをすべて受信するモードに自サーバのLANインタフェースを設定すると共に、前記専用の通信リンクを介して通知された前記主系サーバのLANインタフェースの物理アドレスを送信元アドレスとするパケットを自サーバのLANインタフェースを用いて前記LANに送出して、前記主系サーバのLANインタフェースの物理アドレス宛てのパケットを、自サーバのLANインタフェースに転送するように前記LANスイッチに学習させる、
ことを特徴とするクライアントサーバシステムの通信管理方法。
Provided between a primary server, a standby server, a dedicated communication link connecting the primary server and the standby server, and between the primary server, the standby server, and the LAN A plurality of ports to which the LAN interface of the computer is connected, storing the physical address of the LAN interface of each port destination, and receiving the packet addressed to the stored physical address taken from the LAN A communication management method for a client server system having a LAN switch that transfers only to a LAN interface of a corresponding port among the ports,
The primary server is
When a failure that makes it impossible to execute communication processing via the LAN using the local server's LAN interface occurs, the physical address of the local server's LAN interface is notified to the standby server via the dedicated communication link. Requesting the standby server via the dedicated communication link to perform transmission and reception of packets for communication processing via the LAN via the dedicated communication link;
The standby server is
A mode for receiving all packets from the LAN when the primary server is requested via the dedicated communication link to send and receive packets for communication processing via the LAN via the dedicated communication link. The LAN interface of the own server is set in the local server, and a packet having the physical address of the LAN interface of the primary server notified via the dedicated communication link as a transmission source address is transmitted using the LAN interface of the own server. And the LAN switch learns the packet addressed to the physical address of the LAN interface of the primary server to be transferred to the LAN interface of the local server.
A communication management method for a client-server system.
JP27898597A 1996-12-02 1997-10-13 Client server system and communication management method for client server system Expired - Fee Related JP4028627B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP27898597A JP4028627B2 (en) 1996-12-02 1997-10-13 Client server system and communication management method for client server system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP8-321743 1996-12-02
JP32174396 1996-12-02
JP27898597A JP4028627B2 (en) 1996-12-02 1997-10-13 Client server system and communication management method for client server system

Publications (2)

Publication Number Publication Date
JPH10224378A JPH10224378A (en) 1998-08-21
JP4028627B2 true JP4028627B2 (en) 2007-12-26

Family

ID=26553127

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27898597A Expired - Fee Related JP4028627B2 (en) 1996-12-02 1997-10-13 Client server system and communication management method for client server system

Country Status (1)

Country Link
JP (1) JP4028627B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3111935B2 (en) 1997-08-15 2000-11-27 日本電気株式会社 LAN emulation server redundant system
WO2000079397A1 (en) * 1999-06-23 2000-12-28 Fujitsu Limited Network protocol controller and network protocol controlling method, and recorded medium on which network protocol controlling program is recorded
US6865157B1 (en) * 2000-05-26 2005-03-08 Emc Corporation Fault tolerant shared system resource with communications passthrough providing high availability communications
JP4747758B2 (en) * 2005-09-21 2011-08-17 日立電線株式会社 Network equipment
JP4768558B2 (en) * 2006-09-19 2011-09-07 株式会社東芝 Network monitoring method and monitoring apparatus

Also Published As

Publication number Publication date
JPH10224378A (en) 1998-08-21

Similar Documents

Publication Publication Date Title
US6208616B1 (en) System for detecting errors in a network
US6597700B2 (en) System, device, and method for address management in a distributed communication environment
US6760859B1 (en) Fault tolerant local area network connectivity
US6052733A (en) Method of detecting errors in a network
US5781715A (en) Fault-tolerant bridge/router with a distributed switch-over mechanism
US6938092B2 (en) TCP offload device that load balances and fails-over between aggregated ports having different MAC addresses
US6134678A (en) Method of detecting network errors
JP4680919B2 (en) Redundant routing capabilities for network node clusters
US20060256801A1 (en) Gateway system
US6105151A (en) System for detecting network errors
US6594776B1 (en) Mechanism to clear MAC address from Ethernet switch address table to enable network link fail-over across two network segments
JP2004519024A (en) System and method for managing a cluster containing multiple nodes
US20060206611A1 (en) Method and system for managing programs with network address
US20040221207A1 (en) Proxy response apparatus
JP2004032224A (en) Server takeover system and method
US20030101275A1 (en) Information processing system accessed through network and control method of packet transfer load
WO1998049620A1 (en) Redundant server failover in networked environment
JP4964666B2 (en) Computer, program and method for switching redundant communication paths
JPH09259096A (en) Network high reliability method and system
JP4028627B2 (en) Client server system and communication management method for client server system
JPH09293059A (en) Distributed system and operation management method thereof
JP4133738B2 (en) High-speed network address takeover method, network device, and program
AU2001249114B2 (en) Non-fault tolerant network nodes in a multiple fault tolerant network
JP2007133542A (en) Information takeover system, information takeover method, active node and standby node
US7428589B2 (en) Network system, network control method, and signal sender/receiver

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20041013

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070409

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071009

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071012

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

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20101019

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees