JP2009265690A - Cluster system and program - Google Patents

Cluster system and program Download PDF

Info

Publication number
JP2009265690A
JP2009265690A JP2008110571A JP2008110571A JP2009265690A JP 2009265690 A JP2009265690 A JP 2009265690A JP 2008110571 A JP2008110571 A JP 2008110571A JP 2008110571 A JP2008110571 A JP 2008110571A JP 2009265690 A JP2009265690 A JP 2009265690A
Authority
JP
Japan
Prior art keywords
address
server
arp
arp request
source
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2008110571A
Other languages
Japanese (ja)
Other versions
JP4703682B2 (en
Inventor
Soji Kageyama
壮志 影山
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
Toshiba Digital Solutions Corp
Original Assignee
Toshiba Corp
Toshiba Solutions 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, Toshiba Solutions Corp filed Critical Toshiba Corp
Priority to JP2008110571A priority Critical patent/JP4703682B2/en
Publication of JP2009265690A publication Critical patent/JP2009265690A/en
Application granted granted Critical
Publication of JP4703682B2 publication Critical patent/JP4703682B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To surely use an IP address to be succeeded from a main system server by a stand-by server even when it is not possible to stop the use of an IP address on a main system server where any failure is generated. <P>SOLUTION: In a cluster system, a stand-by system server 20 is provided with a control table for registering the information of an ARP request by using a specific IP address to be used by a service to be provided by a main system server 10 as a target IP address. A communication control device 23 of the stand-by system server 20 is configured to transmit an ARP response (disturbing packet) 54 in which a false physical address is set as a transmission origin physical address in the case of succeeding the specific IP address as the result of the detection of a failure 51 of the main system server, and to transmit an ARP response 55 in which the physical address and specific IP address of the stand-by server 20 are respectively set as the transmission origin physical address and the transmission origin IP address to the transmission origin of the ARP request shown by the information registered in the control table. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、クライアントからTCP/IPネットワークを介して送信された特定のリクエストを受信することにより当該特定のリクエストの示すサービスを当該特定のリクエストを送信したクライアントに提供する主系サーバと、当該主系サーバの障害の検知した場合に、当該主系サーバが提供するサービスと当該サービスで使用する特定IPアドレスとを引き継ぐ待機系サーバとから構成されるクラスタシステム及びプログラムに関する。   The present invention includes a main server that provides a service indicated by a specific request to the client that has transmitted the specific request by receiving the specific request transmitted from the client via the TCP / IP network; The present invention relates to a cluster system and a program comprising a service provided by the primary server and a standby server that takes over a specific IP address used in the service when a failure of the primary server is detected.

近年、サーバの冗長性を高めるため、主系サーバと待機系サーバとを用意し、主系サーバでの障害発生時に、主系サーバがクライアントに提供していたサービス(サービスを提供する機能)を待機系サーバに引き継がせるシステム(いわゆるクラスタシステム)が広く普及している。このようなシステムにおいて、待機系サーバはサービスの引き継ぎ時に、例えば特許文献1に記載されているように、主系サーバが使用していた特定IPアドレス(引き継ぎIPアドレス)も同時に引き継ぐ。これによりクライアントは、サーバ間のサービスの引き継ぎを意識することなく、サービスを引き継いだ待機系サーバ(つまり新たに稼動系として機能するサーバ)にアクセスすることができる。
特開平10−105424公報(段落0008、0011−0013)
In recent years, in order to increase server redundancy, a primary server and a standby server have been prepared, and the service (function to provide services) that the primary server provided to clients when a failure occurred on the primary server. A system (so-called cluster system) that can be taken over by a standby server is widely used. In such a system, the standby server also takes over the specific IP address (takeover IP address) used by the main server at the same time as described in Patent Document 1, for example, when taking over the service. Thus, the client can access the standby server that has taken over the service (that is, the server that newly functions as the active system) without being aware of the takeover of the service between the servers.
JP-A-10-105424 (paragraphs 0008, 0011-0013)

上述のようなシステムでは、主系サーバの障害発生時に、当該主系サーバが上記特定IPアドレス(引き継ぎIPアドレス)の使用を停止することが前提となる。しかし実際には、主系サーバが例えば高負荷状態でスローダウンしているような場合に、当該主系サーバで特定IPアドレスの使用を停止できない状態が発生する。このような状態でも、待機系サーバは障害を検知して特定IPアドレスを引き継ぐため、主系・待機系の両サーバが同一の特定IPアドレスを使用するIPアドレス競合状態となる。   In the system as described above, it is assumed that when the failure of the primary server occurs, the primary server stops using the specific IP address (takeover IP address). However, in reality, when the primary server is slowed down in a high load state, for example, a state where the use of the specific IP address cannot be stopped in the primary server occurs. Even in such a state, since the standby server detects a failure and takes over the specific IP address, both the primary and standby servers enter an IP address conflict state in which the same specific IP address is used.

IPアドレス競合状態が発生した場合、以下の2つの問題が発生する。   When an IP address race condition occurs, the following two problems occur.

待機系サーバは、IPアドレス(引き継ぎIPアドレス)を引き継ぐと、IPアドレスの変更(引き継ぎIPアドレスへの変更)を当該待機系サーバが属するセグメント上の全てのノード(サーバ及びクライアント)に通知するためのGratuitous ARP(アドレス解決プロトコル)要求を、例えばブロードキャストで送信する。障害が発生した主系サーバは、当該主系サーバのARP要求、ARP応答を処理する機能が有効な場合、待機系サーバからのGratuitous ARPに対して、IPアドレス競合を通知するためのARP応答を待機系サーバに送信する。これにより待機系サーバでのIPアドレスの引き継ぎ(引き継ぎIPアドレスの設定)は失敗となる。更に主系サーバは、待機系サーバのアドレス変更を無効にするために、Gratuitous ARPを上記セグメント上の全てのノードに送信する。これにより、引き継ぎIPアドレスは主系サーバに戻されてしまう。   When the standby server takes over the IP address (takeover IP address), it notifies the change of the IP address (change to the takeover IP address) to all nodes (servers and clients) on the segment to which the standby server belongs. The Gratuitous ARP (Address Resolution Protocol) request is transmitted by broadcast, for example. If the function of processing the ARP request and ARP response of the primary server is enabled, the primary server in which the failure has occurred sends an ARP response for notifying the Gratuitous ARP from the standby server of the IP address conflict. Send to the standby server. As a result, the takeover of the IP address in the standby server (setting of the takeover IP address) fails. Further, the primary server transmits a Gratuitous ARP to all nodes on the segment in order to invalidate the address change of the standby server. As a result, the takeover IP address is returned to the primary server.

IPアドレス(引き継ぎIPアドレス)の引き継ぎ後、クライアント(またはルータを経由している場合ルータ)が、引き継ぎIPアドレスにアクセスするためARP要求を送信すると、主系・待機系の両サーバからARP応答が送信される。もし、クライアントが障害状態にある主系サーバのARP応答を後に受信したならば、当該クライアントは主系サーバに対し通信を行うことになり、通信障害が発生する。   After the takeover of the IP address (takeover IP address), when the client (or a router via a router) sends an ARP request to access the takeover IP address, an ARP response is received from both the primary and standby servers. Sent. If the client receives the ARP response of the main server in the failed state later, the client communicates with the main server, and a communication failure occurs.

本発明は上記事情を考慮してなされたものでその目的は、障害が発生した主系サーバ上でIPアドレスの使用を停止できない場合でも、待機系サーバが主系サーバから引き継ぐIPアドレスを確実に使用できるクラスタシステム及びプログラムを提供することにある。   The present invention has been made in consideration of the above circumstances, and its purpose is to ensure that the standby server takes over the IP address taken over from the primary server even if the use of the IP address cannot be stopped on the failed primary server. An object of the present invention is to provide a cluster system and a program that can be used.

本発明の1つの観点によれば、TCP/IPネットワークに接続された主系サーバであって、前記TCP/IPネットワークにより接続されたクライアントから送信された特定のリクエストを受信した場合、当該特定のリクエストの示すサービスを当該特定のリクエストを送信した前記クライアントに提供する主系サーバと、前記主系サーバと通信を行うことにより前記主系サーバを監視して、前記主系サーバの障害の検知した場合には、前記主系サーバが提供するサービスと当該サービスで使用するIPアドレスとを引き継ぐ待機系サーバとを具備するクラスタシステムが提供される。前記待機サーバは、前記主系サーバの前記サービスで使用するIPアドレスを宛先とするARP要求の情報を登録するための管理テーブルと、前記主系サーバの障害を検知した結果、前記主系サーバが提供するサービスで使用するIPアドレスを引き継ぐ際に、偽の物理アドレス及び前記管理テーブルに登録されている情報の示すARP要求の送信元IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第1のARP応答を送信し、且つ前記管理テーブルに登録されている情報の示すARP要求の送信元に対し、前記待機系サーバ自身の物理アドレス及び前記引き継いだIPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第2のARP応答を送信する通信制御手段とを含む。   According to one aspect of the present invention, when a specific request transmitted from a client connected to a TCP / IP network is received from a client connected to the TCP / IP network, the specific server A main server that provides the service indicated by the request to the client that has transmitted the specific request, and the main server is monitored by communicating with the main server, and a failure of the main server is detected. In this case, a cluster system is provided that includes a service provided by the primary server and a standby server that takes over the IP address used in the service. The standby server detects the failure of the primary server as a result of detecting a management table for registering ARP request information destined for the IP address used for the service of the primary server, When taking over the IP address used in the service to be provided, the fake physical address and the source IP address of the ARP request indicated by the information registered in the management table are set as the source physical address and the source IP address, respectively. To the source of the ARP request indicated by the information registered in the management table, the physical address of the standby server itself and the inherited IP address are respectively the source Communication control means for transmitting the second ARP response set as the physical address and the source IP address; No.

本発明によれば、主系サーバが提供するサービスで使用される特定IPアドレスを待機系サーバが引き継ぐ際に、偽の物理アドレス及び管理テーブルに登録されている情報の示すARP要求の送信元IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第1のARP応答が送信されるため、主系サーバによる特定IPアドレスを使用した送信を無効にすることができる。つまり主系サーバがARP要求に応答することを防ぐことができる。更に本発明によれば、待機系サーバが上記特定IPアドレスを引き継ぐ際に、待機系サーバ自身の物理アドレス及び特定IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第2のARP応答を管理テーブルに登録されている情報の示すARP要求の送信元(クライアント)に送信することで、特定IPアドレスを待機系サーバで引き継いだことを、当該ARP要求の送信元に通知することができる。   According to the present invention, when the standby server takes over the specific IP address used in the service provided by the primary server, the source IP of the ARP request indicated by the fake physical address and the information registered in the management table Since the first ARP response in which the addresses are set as the transmission source physical address and the transmission source IP address is transmitted, transmission using the specific IP address by the primary server can be invalidated. That is, it is possible to prevent the main server from responding to the ARP request. Further, according to the present invention, when the standby server takes over the specific IP address, the physical address and the specific IP address of the standby server itself are set as the source physical address and the source IP address, respectively. By sending an ARP response to the ARP request source (client) indicated by the information registered in the management table, the standby server notifies the ARP request source that the specific IP address has been taken over. Can do.

これにより本発明においては、障害が発生した主系サーバ上でIPアドレス(特定IPアドレス)の使用を停止できない場合でも、主系サーバがARP要求に応答することを防ぐと共に、ARP要求の送信元(クライアント)が主系サーバに通信データを送信することを防ぎ、待機系サーバが当該IPアドレス(つまり主系サーバから引き継ぐIPアドレス)を確実に使用でき、ARP要求の送信元が待機系サーバに通信データを送信することができる。   As a result, in the present invention, even when the use of the IP address (specific IP address) cannot be stopped on the failed primary server, the primary server is prevented from responding to the ARP request and the source of the ARP request is transmitted. (Client) is prevented from transmitting communication data to the primary server, the standby server can reliably use the IP address (that is, the IP address taken over from the primary server), and the source of the ARP request is sent to the standby server. Communication data can be transmitted.

以下、本発明の実施の形態につき図面を参照して説明する。
図1は本発明の一実施形態に係るクラスタシステムの構成を示すブロック図である。図1のクラスタシステムは、主系サーバ10と待機系サーバ20とから構成される。主系サーバ10と待機系サーバ20は、例えばTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルを適用するネットワーク(TCP/IPネットワーク)30によって相互接続される。ネットワーク30には、クライアント(クライアント端末)40を含む複数のクライアントが接続されている。つまり、主系サーバ10、待機系サーバ20及び、クライアント40を含む複数のクライアントは、同一セグメント上に存在する。但し、図1では、クライアント40以外のクライアントは省略されている。
Embodiments of the present invention will be described below with reference to the drawings.
FIG. 1 is a block diagram showing a configuration of a cluster system according to an embodiment of the present invention. The cluster system in FIG. 1 includes a main server 10 and a standby server 20. The main server 10 and the standby server 20 are interconnected by a network (TCP / IP network) 30 to which, for example, a TCP / IP (Transmission Control Protocol / Internet Protocol) protocol is applied. A plurality of clients including a client (client terminal) 40 are connected to the network 30. That is, a plurality of clients including the main server 10, the standby server 20, and the client 40 exist on the same segment. However, in FIG. 1, clients other than the client 40 are omitted.

主系サーバ10及び待機系サーバ20はサーバコンピュータである。図1では、サーバコンピュータ(サーバ)10及び20を、それぞれ便宜的に主系サーバ10及び待機系サーバ20と表記している。但し、主系サーバ10及び待機系サーバ20の両サーバの状態は固定的なものではない。例えば、あるサービスの提供については、サーバ10及び20のうちの一方が主系サーバとして、他方が待機系サーバとして機能し、別のサービスの提供については、上記一方が待機系サーバとして、上記他方が主系サーバとして機能することも可能である。また、主系サーバ10に障害が発生したならば、待機系サーバ20が新たに主系サーバとして機能して、主系サーバ10がクライアントに提供していたサービスとと当該サービスで使用されるIPアドレス(特定IPアドレス)とを引き継ぐ。   The main server 10 and the standby server 20 are server computers. In FIG. 1, server computers (servers) 10 and 20 are represented as a main server 10 and a standby server 20 for convenience. However, the states of both the primary server 10 and the standby server 20 are not fixed. For example, for the provision of a certain service, one of the servers 10 and 20 functions as a primary server and the other functions as a standby server, and for the provision of another service, the one serves as a standby server and the other Can also function as a primary server. If a failure occurs in the primary server 10, the standby server 20 newly functions as the primary server, and the service provided to the client by the primary server 10 and the IP used for the service. Take over the address (specific IP address).

クライアント40は例えばパーソナルコンピュータ(PC)である。クライアント40は、ネットワーク30を経由して、サーバ10または20を利用する。。   The client 40 is, for example, a personal computer (PC). The client 40 uses the server 10 or 20 via the network 30. .

サーバ10及び20上では、それぞれサービスプロセス11及び21が動作する。サービスプロセス11及び21は、ネットワーク30上のクライアント40のようなPCから利用可能なサービス(例えば、Webサービス、データベースサービスなど)を提供する。図1では、サーバ10及び20上に、それぞれ1つのサービスプロセス11及び21が存在するが、複数のサービスプロセスが存在することも可能である。また、サービスプロセス11及び21が提供するサービスの内容が異なっていてもよい。   Service processes 11 and 21 operate on the servers 10 and 20, respectively. The service processes 11 and 21 provide services (for example, Web services, database services, etc.) that can be used from a PC such as the client 40 on the network 30. In FIG. 1, one service process 11 and 21 exist on the servers 10 and 20, respectively, but a plurality of service processes may exist. The contents of services provided by the service processes 11 and 21 may be different.

主系サーバ10は、クラスタ制御装置12、通信制御装置13及びネットワークインタフェース(ネットワークIF)14を含む。待機系サーバ20は、クラスタ制御装置22、通信制御装置23及びネットワークIF24を含む。   The primary server 10 includes a cluster control device 12, a communication control device 13, and a network interface (network IF) 14. The standby server 20 includes a cluster control device 22, a communication control device 23, and a network IF 24.

クラスタ制御装置12及び22は、例えば専用の通信路を介して相互に通信することで通信相手となる(クラスタ制御装置を含む)サーバの障害発生を検知する。クラスタ制御装置12及び22は、障害が発生したサーバが主系サーバとして機能している場合、当該主系サーバから待機系サーバへのサービスプロセスと当該サービスプロセスで使用されるIPアドレス(特定IPアドレス)の引き継ぎを制御する。このクラスタ制御装置12及び22間の通信はハートビート通信と呼ばれる。   The cluster control devices 12 and 22 detect the occurrence of a failure in a server (including the cluster control device) as a communication partner by communicating with each other via, for example, a dedicated communication path. When the server in which the failure has occurred functions as a primary server, the cluster control devices 12 and 22 provide a service process from the primary server to the standby server and an IP address (specific IP address) used in the service process. ) Is taken over. This communication between the cluster control devices 12 and 22 is called heartbeat communication.

主系サーバ(図1では主系サーバ10)で障害が発生した場合、この引き継ぎ制御により、当該主系サーバ上で起動していたサービスプロセス(図1ではサービスプロセス11)及び当該サービスプロセスの提供するサービスで使用していたIPアドレス(サービスに対応付けられたIPアドレス)が待機系サーバ(図1では待機系サーバ20)に引き継がれる。これにより待機系サーバは(新たに稼動系サーバとして機能して)、クライアントに対し主系サーバから待機系サーバのサービスの引き継ぎを意識させずにサービスを提供する。   When a failure occurs in the primary server (primary server 10 in FIG. 1), a service process (service process 11 in FIG. 1) started on the primary server and provision of the service process by this takeover control The IP address (IP address associated with the service) used in the service to be taken over is taken over by the standby server (standby server 20 in FIG. 1). As a result, the standby server (newly functioning as an active server) provides services to the client without being aware of the takeover of the service of the standby server from the main server.

サーバの障害には様々な種類があり、その検出方法も様々である。本実施形態では、主系サーバ10での障害の発生のためにクラスタ制御装置12及び22間の通信(ハートビート通信)が途絶えて、クラスタ制御装置22が主系サーバ10の障害を検知する場合を想定する。   There are various types of server failures and detection methods. In the present embodiment, communication between the cluster control devices 12 and 22 (heartbeat communication) is interrupted due to the occurrence of a failure in the primary server 10, and the cluster control device 22 detects a failure in the primary server 10. Is assumed.

通信制御装置13及び23は、自身を含むサーバが主系サーバとして機能している場合には動作しない。図1の状態では、通信制御装置13は動作しない。一方、通信制御装置23は、主系サーバ10(主系サーバとして機能しているサーバ)のMAC(Media Access Control)アドレス(物理アドレス)を問い合わせる通信(つまり引き継ぎIPアドレスをターゲットIPアドレスとする通信)をネットワークIF24を介して監視することにより、当該主系サーバ10の通信相手となるクライアントのリストを保持する。通信制御装置23は、主系サーバ10で障害が発生した場合に、引き継ぎIPアドレスを待機系サーバ20で使用できるように、上記リストに基づき、主系サーバ10及びクライアントに対し、通信を制御するための通信データを送信する。   The communication control devices 13 and 23 do not operate when a server including itself functions as a primary server. In the state of FIG. 1, the communication control device 13 does not operate. On the other hand, the communication control device 23 inquires about the MAC (Media Access Control) address (physical address) of the main server 10 (the server functioning as the main server) (that is, communication using the takeover IP address as the target IP address). ) Is monitored via the network IF 24, and a list of clients that are communication partners of the main server 10 is held. The communication control device 23 controls communication with respect to the main server 10 and the client based on the above list so that the takeover IP address can be used by the standby server 20 when a failure occurs in the main server 10. Communication data for transmission.

本実施形態の特徴は、従来主系サーバの障害により待機系サーバがIPアドレスを引き継いだ際に発生する可能性のあるIPアドレス競合の問題を解決することにある。この問題の解決のために本実施形態で適用される待機系サーバ20は、主系サーバ10の通信を無効にする妨害パケットと、クライアント40を含むクライアント群にアドレスの引き継ぎを通知するARP応答とを送信する仕組みを有している。以下、この仕組みの概要について図1を参照して説明する。   The feature of this embodiment is to solve the problem of IP address conflict that may occur when the standby server takes over the IP address due to a failure of the conventional primary server. In order to solve this problem, the standby server 20 applied in the present embodiment includes an interference packet that invalidates communication of the primary server 10, and an ARP response that notifies the client group including the client 40 of address takeover. It has a mechanism to transmit. The outline of this mechanism will be described below with reference to FIG.

まず、主系サーバ10で図1において障害51が発生したものとする。すると、待機系サーバ20上のクラスタ制御装置22は主系サーバ10の障害検知52を行う。クラスタ制御装置22は、通信制御装置23に対しアドレス制御要求53を送出する。   First, it is assumed that the failure 51 in FIG. Then, the cluster control device 22 on the standby server 20 performs a failure detection 52 of the primary server 10. The cluster control device 22 sends an address control request 53 to the communication control device 23.

通信制御装置23は、クラスタ制御装置22からのアドレス制御要求53を受け取ると、主系サーバ10がクライアント40を含むクライアント群(以下の説明では、煩雑さを避けるために単にクライアント40と表現する)に通信データを送信するのを妨害するために、当該主系サーバ10に妨害パケット54を送信する。この妨害パケット54には、存在しないMACアドレス(物理アドレス)を使用したARP応答が用いられる。続いて通信制御装置23は、クライアント40が、引き継ぎIPアドレス宛の通信データを、待機系サーバ20に送信するようにするため、当該待機系サーバ20のMACアドレスを使用したARP応答55をクライアント40に対し送信する。   When the communication control device 23 receives the address control request 53 from the cluster control device 22, the main server 10 includes a client group including the client 40 (in the following description, simply expressed as the client 40 in order to avoid complexity). In order to prevent the communication data from being transmitted to the main server 10, an interference packet 54 is transmitted to the main server 10. An ARP response using a non-existing MAC address (physical address) is used for the disturbing packet 54. Subsequently, the communication control device 23 sends an ARP response 55 using the MAC address of the standby server 20 to the client 40 so that the client 40 transmits the communication data addressed to the takeover IP address to the standby server 20. Send to.

次に、本実施形態で適用されるIPアドレス引き継ぎ時の通信シーケンスについて、図2のシーケンスチャート、及び図3乃至図5を参照して説明する。図3はARP要求のフォーマットと当該ARP要求に含まれている送信元MACアドレス及び送信元IPアドレスが登録されるリストとの関係を示す図、図4は妨害パケットのフォーマット、図5はARP応答のフォーマットである。   Next, a communication sequence at the time of IP address takeover applied in the present embodiment will be described with reference to the sequence chart of FIG. 2 and FIGS. 3 to 5. 3 is a diagram showing the relationship between the format of the ARP request and the list in which the source MAC address and source IP address included in the ARP request are registered, FIG. 4 is the format of the jamming packet, and FIG. 5 is the ARP response. Format.

クライアント40は、MACアドレスが不明なサーバ(図1では主系サーバ10)との間の通信を開始する際には、引き継ぎIPアドレスに対応するMACアドレスを取得するため、当該引き継ぎIPアドレスをターゲットIPアドレスとする図3に示すフォーマットのARP要求をブロードキャストで送信する(ステップS1)。待機系サーバ20は、クライアント40が送信したARP要求(引き継ぎIPアドレスをターゲットIPアドレスとするARP要求)に含まれている送信元MACアドレス及び送信元IPアドレスを、それぞれ図3において矢印A11及びA12で示されるように、引き継ぎIPアドレスの通信相手のリスト(後述するアドレス管理テーブル233に保持されるリスト)に追加する(ステップS2)。このリストには、クライアント40を含む複数のクライアント(ここでは3つのクライアント)の送信元MACアドレス及び送信元IPアドレスが登録される。   When the client 40 starts communication with a server (the primary server 10 in FIG. 1) whose MAC address is unknown, the client 40 acquires the MAC address corresponding to the takeover IP address, and therefore targets the takeover IP address. An ARP request in the format shown in FIG. 3 as an IP address is transmitted by broadcast (step S1). The standby server 20 indicates the transmission source MAC address and transmission source IP address included in the ARP request (the ARP request with the takeover IP address as the target IP address) transmitted by the client 40 by using arrows A11 and A12 in FIG. As shown in (2), it is added to a list of communication partners of the takeover IP address (a list held in an address management table 233 described later) (step S2). In this list, source MAC addresses and source IP addresses of a plurality of clients (here, three clients) including the client 40 are registered.

このように本実施形態においては、主系サーバ10が引き継ぎIPアドレスを使用している状態において、当該引き継ぎIPアドレスに対応付けられたサービス(当該引き継ぎIPアドレスを使用するサービス)の提供を受けるクライアントを待機系サーバ20が検出するのに、当該クライアントによる通信開始時にブロードキャストで送信されるARP要求が利用される。これにより、クライアントを待機系サーバ20が検出するのに、特別なネットワーク機器等を必要としない。またARP要求(ARPパケット)は、ルータを超えた先に存在するクライアント(つまり待機系サーバ20とはネットワークアドレスが異なるクライアント)の場合、ルータが全て代わりに実行する。このため、待機系サーバ20が管理する上記リストに登録される送信元MACアドレス及び送信元IPアドレスの数を少なくできる。   As described above, in the present embodiment, in a state where the primary server 10 uses a takeover IP address, a client that receives a service associated with the takeover IP address (a service using the takeover IP address) is provided. Is detected by the standby server 20, an ARP request transmitted by broadcast at the start of communication by the client is used. Thus, no special network device or the like is required for the standby server 20 to detect the client. Further, in the case of a client existing beyond the router (that is, a client having a network address different from that of the standby server 20), all the ARP requests (ARP packets) are executed by the router instead. For this reason, it is possible to reduce the number of source MAC addresses and source IP addresses registered in the list managed by the standby server 20.

主系サーバ10は、クライアント40からのARP要求に応じて、自身のMACアドレスを通知するためのARP応答を送信する(ステップS3)。クライアント40は、主系サーバ10からのARP応答で通知されたMACアドレスを用いて、当該通知されたMACアドレスを宛先MACアドレスとすると共に、引き継ぎIPアドレスを宛先IPアドレスとする通信データを、当該主系サーバ10に送信する(ステップS4)。このようにして主系サーバ10とクライアント40との間で通信が行われる。この主系サーバ10とクライアント40との間の通信は、通常のTCP/IPにおける通信と同様である。   In response to the ARP request from the client 40, the primary server 10 transmits an ARP response for notifying its own MAC address (step S3). The client 40 uses the MAC address notified by the ARP response from the primary server 10 as the destination MAC address as the notified MAC address and the communication data with the takeover IP address as the destination IP address. It transmits to the main server 10 (step S4). In this way, communication is performed between the main server 10 and the client 40. Communication between the main server 10 and the client 40 is the same as communication in normal TCP / IP.

やがて主系サーバ10で障害51が発生したものとする。すると待機系サーバ20は、主系サーバ10の障害を検知して(ステップS5)、当該主系サーバ10が上記リストに登録されているクライアント(例えばクライアント40)に通信データを送信するのを妨害するための図4に示すフォーマットの妨害パケットを送信する(ステップS6)。図4から明らかなように、本実施形態では妨害パケットに、送信元MACアドレスとして偽のMACアドレスが設定された、主系サーバ10宛のARP応答が使用される。ここで偽のMACアドレスとは、実在しないMACアドレスを指す。本実施形態では、MACアドレスの上位3バイトであるベンダIDに存在しない値が設定されたMACアドレスを、偽のMACアドレスとして用いる。この妨害パケットの送信元IPアドレスには、上記リストに登録されているクライアントのIPアドレスが設定される。   It is assumed that a failure 51 has occurred in the main server 10 before long. Then, the standby server 20 detects a failure of the primary server 10 (step S5) and prevents the primary server 10 from transmitting communication data to a client (for example, the client 40) registered in the list. 4 is transmitted (step S6). As apparent from FIG. 4, in this embodiment, an ARP response addressed to the primary server 10 in which a fake MAC address is set as the source MAC address is used for the disturbing packet. Here, the fake MAC address refers to a MAC address that does not exist. In this embodiment, a MAC address in which a value that does not exist in the vendor ID, which is the upper 3 bytes of the MAC address, is set as a fake MAC address. The IP address of the client registered in the list is set as the transmission source IP address of the disturbing packet.

主系サーバ10は、ARP応答を受信すると、自身が保持しているARPテーブル(MACアドレスとIPアドレスとを対応付けたテーブル)を、当該パケットに含まれている送信元MACアドレス及び送信元IPアドレスにより書き換える。したがって主系サーバ10が、本実施形態のように待機系サーバ20からの妨害パケット、つまり送信元MACアドレスとして偽のMACアドレスが設定されたARP応答を受信した場合には、妨害パケット(ARP応答)に含まれている送信元IPアドレスに対応してARPテーブルに登録されているMACアドレスが、当該妨害パケットに含まれている偽のMACアドレスに書き換えられる。これにより主系サーバ10のARPテーブルは無効化される。   When the main server 10 receives the ARP response, the main server 10 stores the ARP table (table in which the MAC address and the IP address are associated with each other) held by the main server 10 in accordance with the source MAC address and the source IP included in the packet. Rewrite by address. Therefore, when the primary server 10 receives a disturbing packet from the standby server 20, that is, an ARP response in which a fake MAC address is set as the source MAC address, as in the present embodiment, the disturbing packet (ARP response The MAC address registered in the ARP table corresponding to the transmission source IP address included in () is rewritten to the fake MAC address included in the disturbing packet. As a result, the ARP table of the primary server 10 is invalidated.

主系サーバ10は、妨害パケットを受信すると、通信データを偽のMACアドレス宛に送信する(ステップS8)。このため、主系サーバ10(つまりARPテーブルが無効化された主系サーバ10)は図2において記号×で示されるように、妨害パケットに含まれている送信元IPアドレスのクライアントと通信できない状態となる。   When the main server 10 receives the jamming packet, it transmits the communication data to a fake MAC address (step S8). For this reason, the primary server 10 (that is, the primary server 10 in which the ARP table is invalidated) cannot communicate with the client of the source IP address included in the disturbing packet, as indicated by the symbol x in FIG. It becomes.

一方、待機系サーバ20は妨害パケットを送信すると(ステップS6)、上記リストに登録されているクライアント(例えばクライアント40)が引き継ぎIPアドレス宛の通信データを当該待機系サーバ20に送信するようにするため、当該クライアント(クライアント40)に対し送信元MACアドレスとして待機系サーバ20のMACアドレスが設定された図5に示すフォーマットのARP応答を、Gratuitous ARP(以下、G−ARPと称する)の代わりに送信する(ステップS7)。   On the other hand, when the standby server 20 transmits a disturbing packet (step S6), a client (for example, client 40) registered in the list transmits communication data addressed to the takeover IP address to the standby server 20. Therefore, an ARP response in the format shown in FIG. 5 in which the MAC address of the standby server 20 is set as the transmission source MAC address for the client (client 40) is used instead of the Gratuitous ARP (hereinafter referred to as G-ARP). Transmit (step S7).

待機系サーバ20は、妨害パケットの送信(ステップS6)とARP応答の送信(ステップS7)とを、上記リストに登録されている全てのIPアドレス(クライアントのIPアドレス)について繰り返す。   The standby server 20 repeats the transmission of the disturbing packet (step S6) and the transmission of the ARP response (step S7) for all the IP addresses (client IP addresses) registered in the list.

周知のように、G−ARPは、指定されたIPアドレスとMACアドレスの対応付けを、ネットワーク上の(同一のネットワークアドレスを持つ)各ノードに通知するためブロードキャストで送信される。そのため、G−ARPは主系サーバにも送信され、IPアドレス競合の問題が発生する。そこで本実施形態では、引き継ぎIPアドレスに対する(主系サーバ10から待機系サーバ20への)MACアドレスの変更を、当該引き継ぎIPアドレス(のサーバ)と通信していたクライアントのみに通知するために、ARP応答が使用される。これによりIPアドレス競合が発生するのを防止できる。   As is well known, the G-ARP is transmitted by broadcast in order to notify each node (having the same network address) on the network of the correspondence between the designated IP address and the MAC address. For this reason, G-ARP is also transmitted to the primary server, causing a problem of IP address conflict. Therefore, in the present embodiment, in order to notify only the client communicating with the takeover IP address (the server) of the change of the MAC address (from the primary server 10 to the standby server 20) with respect to the takeover IP address, An ARP response is used. This prevents IP address conflicts from occurring.

次に、本実施形態で適用される、IPアドレス引き継ぎ後におけるクライアント40と待機系サーバ20との間の通信の開始時の通信シーケンスについて、図6のシーケンスチャートを参照して説明する。なお、待機系サーバ20はIPアドレス引き継ぎ後、主系サーバとして機能する。しかし、以降の説明では便宜的に、待機系サーバ20の名称を変えずに、待機系サーバ20と表現する。   Next, a communication sequence at the start of communication between the client 40 and the standby server 20 after the IP address takeover applied in the present embodiment will be described with reference to the sequence chart of FIG. The standby server 20 functions as a primary server after taking over the IP address. However, in the following description, for the sake of convenience, the standby server 20 is expressed as the standby server 20 without changing its name.

クライアント(例えばクライアント40)は、MACアドレスが不明なサーバとの間で引き継ぎIPアドレスを宛先IPアドレスとする通信を開始する際には、前記ステップS1と同様に、引き継ぎIPアドレスに対応するMACアドレスを取得するため、当該引き継ぎIPアドレスをターゲットIPアドレスとするARP要求をブロードキャストで送信する(ステップS11)。待機系サーバ20は、クライアント(クライアント40)が送信した引き継ぎIPアドレスをターゲットIPアドレスとするARP要求を受信して、当該ARP要求に含まれている送信元MACアドレス及び送信元IPアドレスを、前記リスト(引き継ぎIPアドレスの通信相手のリスト)に追加する。   When a client (for example, client 40) starts communication with a server whose MAC address is unknown as a destination IP address, the MAC address corresponding to the takeover IP address is the same as in step S1. ARP request with the takeover IP address as the target IP address is transmitted by broadcast (step S11). The standby server 20 receives an ARP request with the takeover IP address transmitted by the client (client 40) as the target IP address, and determines the source MAC address and the source IP address included in the ARP request as described above. Add to list (communication partner list of takeover IP address).

次に待機系サーバ20は、主系サーバ10に対し妨害パケットを送信する(ステップS12)。この妨害パケットは、前記ステップS6で用いられる図4に示す妨害パケットと同一のものである。即ちステップS12で主系サーバ10に送信される妨害パケットには、ターゲットMACアドレスとして偽のMACアドレスが設定されたARP応答が用いられる。これにより、以降に主系サーバ10がクライアント(クライアント40)に対して送信するARP応答(ステップS15)を、図6において記号×で示されるように無効にすることができる。   Next, the standby server 20 transmits an interference packet to the main server 10 (step S12). This jamming packet is the same as the jamming packet shown in FIG. 4 used in step S6. That is, an ARP response in which a fake MAC address is set as the target MAC address is used for the disturbing packet transmitted to the main server 10 in step S12. Thereby, the ARP response (step S15) that is subsequently transmitted from the main server 10 to the client (client 40) can be invalidated as indicated by the symbol x in FIG.

その後、待機系サーバ20は、クライアント(クライアント40)からのARP要求(ステップS11)に対するARP応答(つまり自身のMACアドレスを通知するためのARP応答)を当該クライアント(クライアント40)に対して送信する(ステップS13)。クライアント40は、待機系サーバ20からのARP応答で通知されたMACアドレスを用いて、引き継ぎIPアドレスを宛先IPアドレスとする通信データを当該待機系サーバ20に送信する。このようにして待機系サーバ20とクライアント40との間で通信が行われる(ステップS14)。この待機系サーバ20(つまり主系サーバとして機能しているサーバ20)とクライアント40との間の通信は、通常のTCP/IPにおける通信と同様である。   Thereafter, the standby server 20 transmits an ARP response (that is, an ARP response for notifying its own MAC address) to the ARP request (step S11) from the client (client 40) to the client (client 40). (Step S13). The client 40 transmits communication data with the takeover IP address as the destination IP address to the standby server 20 using the MAC address notified by the ARP response from the standby server 20. In this way, communication is performed between the standby server 20 and the client 40 (step S14). Communication between the standby server 20 (that is, the server 20 functioning as the main server) and the client 40 is the same as communication in normal TCP / IP.

以上の説明から明らかなように本実施形態によれば、待機系サーバ20のIPアドレス引き継ぎ時に主系サーバ10とIPアドレス競合することなく、引き継ぎIPアドレスと通信しているクライアントに、アドレスの引き継ぎを通知することができる。   As is apparent from the above description, according to the present embodiment, when the standby server 20 takes over the IP address, the IP server does not compete with the primary server 10, and the client that is communicating with the takeover IP address takes over the address. Can be notified.

図7は、待機系サーバ20が有する通信制御装置23の構成を示すブロック図である。なお、主系サーバ10が有する通信制御装置13も図7の通信制御装置23と同様の構成を有している。   FIG. 7 is a block diagram illustrating a configuration of the communication control device 23 included in the standby server 20. Note that the communication control device 13 included in the main server 10 has the same configuration as the communication control device 23 of FIG.

図7の通信制御装置23は、通信制御部231、サーバ情報テーブル232、アドレス管理テーブル233及びアドレス引き継ぎ状態テーブル234を含む。サーバ情報テーブル232、アドレス管理テーブル233及びアドレス引き継ぎ状態テーブル234は、記憶部235に保持される。   7 includes a communication control unit 231, a server information table 232, an address management table 233, and an address takeover state table 234. The server information table 232, the address management table 233, and the address takeover state table 234 are held in the storage unit 235.

通信制御部231は、待機系サーバ20(サーバコンピュータ)が当該サーバ20のオペレーティングシステム(OS)上で動作する特定のソフトウェアプログラムを例えば当該サーバ20の外部記憶装置から主記憶装置に読み込んで実行することにより実現されるものとする。通信制御部231は、ネットワークIF24から通信データを受け取り、処理を行う。通信制御部231はまた、クラスタ制御装置22からのアドレスの制御要求を受け処理を行う。   The communication control unit 231 reads and executes a specific software program that operates on the operating system (OS) of the server 20 from, for example, an external storage device of the server 20 to the main storage device. To be realized. The communication control unit 231 receives communication data from the network IF 24 and performs processing. The communication control unit 231 also performs processing upon receiving an address control request from the cluster control device 22.

サーバ情報テーブル232は、サーバ情報を保持・管理するのに用いられる。本実施形態においてサーバ情報テーブル232は、当該サーバ情報テーブル232を有する待機系サーバ20の情報(自系サーバ情報)としての自系のMACアドレス、及び他のサーバ(ここでは主系サーバ10)の情報(他系サーバ情報)としての他系のMACアドレス、及び引き継ぎIPアドレスを保持する。サーバ情報テーブル232は、通信制御装置23内の後述するARP要求受信部231aがクラスタ制御装置22から当該通信制御装置23を機能させるための初期設定情報を受け取ることにより、当該ARP要求受信部231aによって初期設定される。この初期設定情報は、自系のMACアドレス、他系のMACアドレス及び引き継ぎIPアドレスを含む。図8はサーバ情報テーブル232のデータ構造例を示す。   The server information table 232 is used to hold and manage server information. In this embodiment, the server information table 232 includes the MAC address of the local system as information (local server information) of the standby server 20 having the server information table 232, and other servers (in this case, the primary server 10). It holds the MAC address of the other system as information (other server information) and the takeover IP address. The server information table 232 is received by the ARP request receiving unit 231a when an ARP request receiving unit 231a (to be described later) in the communication control device 23 receives initial setting information for causing the communication control device 23 to function from the cluster control device 22. Initialized. The initial setting information includes the own system MAC address, the other system MAC address, and the takeover IP address. FIG. 8 shows an example of the data structure of the server information table 232.

アドレス管理テーブル233は、引き継ぎIPアドレス(を引き継いでいるサーバ)の通信相手のリストを管理するのに用いられる。本実施形態においてアドレス管理テーブル233は、通信相手の情報として当該通信相手のMACアドレス及びIPアドレスの対を保持する。アドレス管理テーブル233には、引き継ぎIPアドレスをターゲットIPアドレスとするARP要求(つまり引き継ぎIPアドレスに対するARP要求)をARP要求受信部231aが受信した際に、当該ARP要求に含まれている送信元MACアドレス及び送信元IPアドレスが、当該通信制御部231によって追加設定される。つまりアドレス管理テーブル233には、引き継ぎIPアドレスをターゲットIPアドレスとするARP要求の情報が登録される。図9はアドレス管理テーブル233のデータ構造例を示す。   The address management table 233 is used to manage a list of communication partners of the takeover IP address (the server taking over). In the present embodiment, the address management table 233 holds a pair of a MAC address and an IP address of the communication partner as information on the communication partner. In the address management table 233, when the ARP request receiving unit 231a receives an ARP request having the takeover IP address as the target IP address (that is, an ARP request for the takeover IP address), the transmission source MAC included in the ARP request is included. The address and the source IP address are additionally set by the communication control unit 231. That is, in the address management table 233, information on an ARP request having the takeover IP address as the target IP address is registered. FIG. 9 shows an example of the data structure of the address management table 233.

図7には1つのアドレス管理テーブル233だけが示されている。しかし実際には、異なる引き継ぎIPアドレス毎にアドレス管理テーブル233が用意される。その理由は、図1に示すクラスタシステムがクライアントに対して提供可能なサービス毎に引き継ぎIPアドレスが使用されるためである。但し、本実施形態では説明の簡略化のために、待機系サーバ20の通信制御装置23が、図7に示すように1つのアドレス管理テーブル233を有しているものとする。   FIG. 7 shows only one address management table 233. However, actually, an address management table 233 is prepared for each different takeover IP address. This is because the takeover IP address is used for each service that the cluster system shown in FIG. 1 can provide to the client. However, in this embodiment, for simplification of explanation, it is assumed that the communication control device 23 of the standby server 20 has one address management table 233 as shown in FIG.

アドレス引き継ぎ状態テーブル234は、自系のサーバ(ここでは待機系サーバ20)のIPアドレス引き継ぎ状態を示すフラグ情報、即ち自系サーバが引き継ぎIPアドレスを引き継いだ状態(引き継ぎIPアドレスが使用可能な状態)であるかどうかを示すフラグ情報を保持する。本実施形態では、引き継ぎIPアドレスが使用可能な状態を「yes」のように表記し、引き継ぎIPアドレスが使用可能でない状態を「no」のように表記する。アドレス引き継ぎ状態テーブル234は、サーバ情報テーブル232と同様に、ARP要求受信部231aがクラスタ制御装置22から上記初期設定情報を受け取ることにより、当該ARP要求受信部231aによって初期設定される。ここではアドレス引き継ぎ状態テーブル234は、「no」を示すIPアドレス引き継ぎ状態に初期設定される。この引き継ぎ状態は、主系サーバ(図1では主系サーバ10)で障害が発生すると、クラスタ制御装置22からのアドレスの制御要求を受けて、ARP要求受信部231aによって「yes」に変更される。図10はアドレス引き継ぎ状態テーブル234のデータ構造例を示す。図10の例では、アドレス引き継ぎ状態テーブル234は、引き継ぎIPアドレスが使用可能な状態であることを示す「yes」に設定されている。   The address takeover state table 234 is flag information indicating an IP address takeover state of the local server (here, the standby server 20), that is, a state where the local server has taken over the takeover IP address (a state where the takeover IP address is usable). ) Is held. In the present embodiment, a state where the takeover IP address is usable is represented as “yes”, and a state where the takeover IP address is not usable is represented as “no”. Similar to the server information table 232, the address takeover state table 234 is initialized by the ARP request receiving unit 231a when the ARP request receiving unit 231a receives the initial setting information from the cluster control device 22. Here, the address takeover state table 234 is initially set to an IP address takeover state indicating “no”. This takeover state is changed to “yes” by the ARP request reception unit 231a in response to an address control request from the cluster control device 22 when a failure occurs in the primary server (primary server 10 in FIG. 1). . FIG. 10 shows an example of the data structure of the address takeover state table 234. In the example of FIG. 10, the address takeover state table 234 is set to “yes” indicating that the takeover IP address is in a usable state.

通信制御部231はARP要求受信部231a及び妨害パケット・ARP応答送信部231bから構成される。
ARP要求受信部231aは、クラスタ制御装置22からの通信制御装置23を機能させるための要求に従い、サーバ情報テーブル232及びアドレス引き継ぎ状態テーブル234の初期設定を行う(処理P1)。
The communication control unit 231 includes an ARP request receiving unit 231a and a disturbing packet / ARP response transmitting unit 231b.
The ARP request receiving unit 231a performs initial setting of the server information table 232 and the address takeover state table 234 in accordance with a request from the cluster control device 22 for causing the communication control device 23 to function (processing P1).

ARP要求受信部231aはまた、クラスタ制御装置22からアドレスの制御要求を受け取り、アドレス引き継ぎ状態テーブル234の示す状態を「yes」に変更する(処理P2)。この処理P2は、後述するように、図2に示されるステップS6,S7に相当する処理を含む。   The ARP request receiving unit 231a also receives an address control request from the cluster control device 22, and changes the state indicated by the address takeover state table 234 to “yes” (process P2). This process P2 includes processes corresponding to steps S6 and S7 shown in FIG. 2, as will be described later.

ARP要求受信部231aは更に、ネットワークIF24からARP要求を受け取り、当該ARP要求に応じてアドレス管理テーブル233の更新を行うと共に、妨害パケット・ARP応答送信部231bにパケット送信を要求する(処理P3)。   The ARP request receiving unit 231a further receives an ARP request from the network IF 24, updates the address management table 233 according to the ARP request, and requests packet transmission from the disturbing packet / ARP response transmitting unit 231b (processing P3). .

次にARP要求受信部231aによる上記処理P1の手順について、図11のフローチャート、及び図12乃至図14を参照して説明する。図12は初期設定情報の一例を示す図、図13は図12に示す初期設定情報に従って初期設定されたサーバ情報テーブル232の一例を示す図、図14は初期設定されたアドレス引き継ぎ状態テーブル234の一例を示す図である。   Next, the procedure of the process P1 performed by the ARP request receiving unit 231a will be described with reference to the flowchart of FIG. 11 and FIGS. 12 shows an example of the initial setting information, FIG. 13 shows an example of the server information table 232 initialized according to the initial setting information shown in FIG. 12, and FIG. It is a figure which shows an example.

まずARP要求受信部231aが、クラスタ制御装置22からの通信制御装置23を機能させるための要求に従い当該クラスタ制御装置22から初期設定情報を受け取った(入力した)ものとする。この初期設定情報は、図12に示すように、自系サーバ(待機系サーバ20)のMACアドレス、他系サーバ(主系サーバ10)のMACアドレス及び引き継がIPアドレスを含む。   First, it is assumed that the ARP request receiving unit 231a receives (inputs) the initial setting information from the cluster control device 22 in accordance with a request for causing the communication control device 23 to function from the cluster control device 22. As shown in FIG. 12, this initial setting information includes the MAC address of the local server (standby server 20), the MAC address of the other server (main server 10), and the takeover IP address.

ARP要求受信部231aはクラスタ制御装置22からの初期設定情報に従い、サーバ情報テーブル232に、自系サーバのMACアドレス、他系サーバのMACアドレス及び引き継ぎIPアドレスを初期設定する(ステップS21)。これにより、サーバ情報テーブル232は図13のように初期設定される。またARP要求受信部231aは、アドレス引き継ぎ状態テーブル234の示す状態を図14に示すように「no」に初期設定する(ステップS22)。   The ARP request receiver 231a initializes the MAC address of the local server, the MAC address of the other server, and the takeover IP address in the server information table 232 according to the initial setting information from the cluster control device 22 (step S21). Thereby, the server information table 232 is initialized as shown in FIG. Further, the ARP request receiving unit 231a initializes the state indicated by the address takeover state table 234 to “no” as shown in FIG. 14 (step S22).

次に、ARP要求受信部231aによる上記処理P2の手順について、図15のフローチャートを参照して説明する。   Next, the procedure of the process P2 by the ARP request receiving unit 231a will be described with reference to the flowchart of FIG.

まず、アドレス管理テーブル233及びアドレス引き継ぎ状態テーブル234が、それぞれ図9及び図14に示す状態にあるものとする。このような状態で、ARP要求受信部231aがクラスタ制御装置22からアドレスの制御要求を受け取ったものとする。するとARP要求受信部231aは、アドレス引き継ぎ状態テーブル234の示す状態を「no」(図14参照)から図10に示すように「yes」に変更する(ステップS31)。これにより待機系サーバ20は、引き継ぎIPアドレスを当該サーバ20内に設定して当該IPアドレスを引き継いだ状態、つまり主系サーバとして機能できる状態となる。   First, it is assumed that the address management table 233 and the address takeover state table 234 are in the states shown in FIGS. 9 and 14, respectively. In this state, it is assumed that the ARP request receiving unit 231a receives an address control request from the cluster control device 22. Then, the ARP request receiving unit 231a changes the state indicated in the address takeover state table 234 from “no” (see FIG. 14) to “yes” as shown in FIG. 10 (step S31). As a result, the standby server 20 sets the takeover IP address in the server 20 and takes over the IP address, that is, the standby server 20 can function as the main server.

次にARP要求受信部231aは、図9に示すアドレス管理テーブル233の全てのエントリのデータ(つまりMACアドレス及びIPアドレスの対)に基づき以下の処理を行う。   Next, the ARP request receiving unit 231a performs the following processing based on data of all entries (that is, a pair of MAC address and IP address) in the address management table 233 shown in FIG.

まずARP要求受信部231aは、アドレス管理テーブル233から未処理のMACアドレス及びIPアドレスの対を1つ取り出す(ステップS32a)。次にARP要求受信部231aは、取り出されたMACアドレス及びIPアドレスの対を妨害パケット・ARP応答送信部231bに渡して、パケット(妨害パケット及びARP応答)の送信を要求する(ステップS32b)。ARP要求受信部231aは、上記ステップS32a及び32bを、アドレス管理テーブル233に保持されている全てのMACアドレス及びIPアドレスの対について繰り返し実行する(ステップS32)。このステップS32の実行により、ARP要求受信部231aは処理P2を終了する。   First, the ARP request receiving unit 231a extracts one unprocessed MAC address / IP address pair from the address management table 233 (step S32a). Next, the ARP request receiving unit 231a passes the pair of the extracted MAC address and IP address to the disturbing packet / ARP response transmitting unit 231b, and requests transmission of the packet (disturbing packet and ARP response) (step S32b). The ARP request receiving unit 231a repeats the above steps S32a and 32b for all the MAC address and IP address pairs held in the address management table 233 (step S32). By executing step S32, the ARP request receiving unit 231a ends the process P2.

図16は、図9に示すアドレス管理テーブル233に基づいて上記ステップS32が繰り返される場合に、ARP要求受信部231aから妨害パケット・ARP応答送信部231bに順次送られるMACアドレス及びIPアドレスの対の列を示す。   FIG. 16 shows a pair of MAC address and IP address sequentially sent from the ARP request receiving unit 231a to the disturbing packet / ARP response transmitting unit 231b when step S32 is repeated based on the address management table 233 shown in FIG. Indicates a column.

次に、ARP要求受信部231aによる上記処理P3の手順について、図17のフローチャート、及び図18のARP要求パケットとアドレス管理テーブル233と妨害パケット・ARP応答送信部231bに送られるデータとの対応関係を示す図を参照して説明する。   Next, regarding the procedure of the process P3 by the ARP request receiving unit 231a, the correspondence between the flowchart of FIG. 17 and the ARP request packet of FIG. This will be described with reference to the drawings.

まずARP要求受信部231aがネットワークIF24からARP要求パケットを受信したものとする。するとARP要求受信部231aは、受信されたARP要求パケットに含まれているターゲットIPアドレスがサーバ情報テーブル232に保持されている引き継ぎIPアドレスであるかを判定する(ステップS41)。ターゲットIPアドレスが引き継ぎIPアドレスでない場合、ARP要求受信部231aは処理を終了する。   First, it is assumed that the ARP request receiving unit 231a receives an ARP request packet from the network IF 24. Then, the ARP request receiving unit 231a determines whether the target IP address included in the received ARP request packet is a takeover IP address held in the server information table 232 (step S41). If the target IP address is not the takeover IP address, the ARP request receiving unit 231a ends the process.

これに対し、ターゲットIPアドレスが引き継ぎIPアドレスである場合、ARP要求受信部231aは受信されたARP要求パケットに含まれている送信元MACアドレス及び送信元IPアドレスを、それぞれ図18において矢印A21及びA22で示すように、アドレス管理テーブル233(つまりMACアドレス及びIPアドレスの対のリスト)に追加登録する(ステップS42)。このステップS42は、図2のステップS2に相当する。ステップS42はまた、図6のステップS11でクライアントから送信されたARP要求を待機系サーバ20が受信した場合の処理にも相当する。   On the other hand, when the target IP address is the takeover IP address, the ARP request receiving unit 231a indicates the source MAC address and the source IP address included in the received ARP request packet by the arrows A21 and A21 in FIG. As indicated by A22, it is additionally registered in the address management table 233 (that is, a list of MAC address and IP address pairs) (step S42). This step S42 corresponds to step S2 in FIG. Step S42 also corresponds to a process when the standby server 20 receives the ARP request transmitted from the client in step S11 of FIG.

次にARP要求受信部231aは、アドレス引き継ぎ状態テーブル234を参照して、当該テーブル234の示す状態が「yes」であるかを判定する(ステップS43)。アドレス引き継ぎ状態テーブル234の示す状態が「no」の場合、ARP要求受信部231aは処理を終了する。   Next, the ARP request receiving unit 231a refers to the address takeover state table 234 and determines whether the state indicated by the table 234 is “yes” (step S43). When the state shown in the address takeover state table 234 is “no”, the ARP request receiving unit 231a ends the process.

これに対し、アドレス引き継ぎ状態テーブル234の示す状態が「yes」である場合、ARP要求受信部231aは妨害パケット・ARP応答送信部231bに、ステップS42でアドレス管理テーブル233に登録されたMACアドレス及びIPアドレス、つまり受信されたARP要求パケットに含まれている送信元MACアドレス及び送信元IPアドレスを、それぞれ図18において矢印A23及びA24で示すように渡して、パケットの送信を要求する(ステップS44)。これによりARP要求受信部231aは処理を終了する。   On the other hand, when the state shown in the address takeover state table 234 is “yes”, the ARP request receiving unit 231a sends the MAC address registered in the address management table 233 in step S42 to the disturbing packet / ARP response transmitting unit 231b. The IP address, that is, the source MAC address and the source IP address included in the received ARP request packet are respectively passed as indicated by arrows A23 and A24 in FIG. 18 to request transmission of the packet (step S44). ). Thereby, the ARP request receiving unit 231a ends the process.

次に、妨害パケット・ARP応答送信部231bの処理手順について、図19のフローチャート、及び図20の入力データと妨害パケットとサーバ情報テーブル232とARP応答との関係を示す図を参照して説明する。   Next, the processing procedure of the jamming packet / ARP response transmission unit 231b will be described with reference to the flowchart in FIG. 19 and the diagram showing the relationship between the input data, the jamming packet, the server information table 232, and the ARP response in FIG. .

まず妨害パケット・ARP応答送信部231bが、ARP要求受信部231aによる前記ステップS32bの実行に応じて、当該ARP要求受信部231aからMACアドレス及びIPアドレスを受け取ったものとする。すると妨害パケット・ARP応答送信部231bは、ARP要求受信部231aから受け取った(入力された)MACアドレス及びIPアドレスのうちのIPアドレスと、サーバ情報テーブル232とに基づき、他系のサーバ(ここでは主系サーバ10)宛ての妨害パケットを生成し、当該妨害パケットをネットワークIF24を介して当該他系のサーバ(主系サーバ10)に送信する(ステップS51)。ここで、妨害パケットには、図20に示すように、送信元MACアドレスとして既に述べたような偽のMACアドレスが設定された、主系サーバ10宛のARP応答パケットが使用される。この妨害パケット(ARP応答パケット)の宛先MACアドレス及びターゲットMACアドレスとして、それぞれ図20において矢印A31及びA32で示すように、サーバ情報テーブル232に登録されている他系のMACアドレスが設定される。また、妨害パケットの宛先ターゲットIPアドレスとして、図20において矢印A33で示すように、サーバ情報テーブル232に登録されている引き継ぎIPアドレスが設定される。また、妨害パケットの送信元IPアドレスとして、図20において矢印A34で示すように、ARP要求受信部231aから受け取ったIPアドレス(図20の例では、102.168.10.20)が設定される。   First, it is assumed that the disturbing packet / ARP response transmission unit 231b receives the MAC address and the IP address from the ARP request reception unit 231a in response to the execution of step S32b by the ARP request reception unit 231a. Then, the interfering packet / ARP response transmission unit 231b receives another server (here, the IP address of the MAC address and the IP address received (input) from the ARP request reception unit 231a and the server information table 232). Then, a disturbing packet addressed to the main server 10) is generated, and the disturbing packet is transmitted to the other server (main server 10) via the network IF 24 (step S51). Here, as shown in FIG. 20, an ARP response packet addressed to the primary server 10 in which a fake MAC address as described above is set as the transmission source MAC address is used as the disturbing packet. As the destination MAC address and the target MAC address of this disturbing packet (ARP response packet), as shown by arrows A31 and A32 in FIG. 20, respectively, the MAC addresses of other systems registered in the server information table 232 are set. Further, the takeover IP address registered in the server information table 232 is set as the destination target IP address of the disturbing packet, as indicated by an arrow A33 in FIG. Further, the IP address received from the ARP request receiving unit 231a (102.168.10.20 in the example of FIG. 20) is set as the source IP address of the disturbing packet as indicated by an arrow A34 in FIG. .

次に妨害パケット・ARP応答送信部231bは、ARP要求受信部231aから受け取ったMACアドレス及びIPアドレスと、サーバ情報テーブル232とに基づき、クライアント宛てのARP応答パケットを生成して、当該ARP応答パケットをクライアントに対し送信する(ステップS52)。ここで、ARP応答パケットの宛先MACアドレス及びターゲットMACアドレスとして、それぞれ図20において矢印A35及びA36で示すように、ARP要求受信部231aから受け取ったMACアドレス(図20の例では、cc:cc:cc:cc:cc:cc)が設定される。また、ARP応答のターゲットIPアドレスとして、図20において矢印A37で示すように、ARP要求受信部231aから受け取ったIPアドレスが設定される。また、ARP応答の送信元MACアドレスとして、図20において矢印A38で示すように、サーバ情報テーブル232に登録されている自系のMACアドレスが設定される。また、ARP応答の送信元IPアドレスとして、図20において矢印A39で示すように、サーバ情報テーブル232に登録されている引き継ぎIPアドレスが設定される。   Next, the jamming packet / ARP response transmission unit 231b generates an ARP response packet addressed to the client based on the MAC address and IP address received from the ARP request reception unit 231a and the server information table 232, and the ARP response packet Is transmitted to the client (step S52). Here, as the destination MAC address and target MAC address of the ARP response packet, as indicated by arrows A35 and A36 in FIG. 20, respectively, the MAC address received from the ARP request receiving unit 231a (in the example of FIG. 20, cc: cc: cc: cc: cc: cc) is set. Also, as the target IP address of the ARP response, the IP address received from the ARP request receiving unit 231a is set as indicated by an arrow A37 in FIG. Further, as the source MAC address of the ARP response, as shown by an arrow A38 in FIG. 20, the own system MAC address registered in the server information table 232 is set. Further, the takeover IP address registered in the server information table 232 is set as the source IP address of the ARP response, as indicated by an arrow A39 in FIG.

[変形例]
上記実施形態では、主系サーバ10に送信される妨害パケットが当該主系サーバ10で受信されない状態、或いはクライアントに送信されるARP応答が当該クライアントで受信されない状態が発生すると、システムとして正しく動作しなくなる可能性がある。このような状態は、例えば妨害パケットまたはARP応答がネットワーク30上で消失するような場合に発生する。また、主系サーバ10が、引き継ぎIPアドレスの使用を停止できないような、高負荷状態に代表されるスローダウン状態に陥っている場合にも、当該主系サーバ10で妨害パケットが受信されない可能性がある。
[Modification]
In the above embodiment, when a state in which a disturbing packet transmitted to the primary server 10 is not received by the primary server 10 or an ARP response transmitted to the client is not received by the client occurs, the system operates correctly. There is a possibility of disappearing. Such a situation occurs, for example, when a jamming packet or ARP response is lost on the network 30. Further, even when the primary server 10 is in a slow-down state typified by a high load state where the use of the takeover IP address cannot be stopped, there is a possibility that the primary server 10 will not receive a disturbing packet. There is.

そこで、妨害パケット及びARP応答が、それぞれ主系サーバ及びクライアントで受信されない状態が発生した場合に対処可能とする、上記実施形態の変形例について説明する。本変形例の特徴は、妨害パケット及びARP応答を、待機系サーバ20(内の妨害パケット・ARP応答送信部231b)から定期的に繰り返し送信することにある。本変形例で適用されるシステムの構成、及びサーバの構成は上記実施形態と同様であるものとする。そこで、以下の説明では、図1及び図7を援用する。但し、本変形例で適用されるサーバ情報テーブル232のデータ構造は、後述するように、上記実施形態で適用されるサーバ情報テーブル232のそれと相違する。   Therefore, a modified example of the above-described embodiment will be described that can cope with a case where a jamming packet and an ARP response are not received by the primary server and the client, respectively. The feature of this modification is that the interfering packet and the ARP response are periodically and repeatedly transmitted from the standby server 20 (the interfering packet / ARP response transmitting unit 231b). It is assumed that the system configuration and the server configuration applied in this modification are the same as those in the above embodiment. Therefore, FIG. 1 and FIG. 7 are used in the following description. However, the data structure of the server information table 232 applied in the present modification is different from that of the server information table 232 applied in the above embodiment, as will be described later.

次に、上記実施形態の変形例で適用されるIPアドレス引き継ぎ時の通信シーケンスについて、図21のシーケンスチャートを参照して説明する。図21において、図2のシーケンスチャートと同様の部分には、同一参照符号を付してある。   Next, a communication sequence at the time of IP address takeover applied in the modification of the above embodiment will be described with reference to the sequence chart of FIG. In FIG. 21, the same parts as those in the sequence chart of FIG.

まず、本変形例においても、上記実施形態の図2のシーケンスチャートと同様に、ステップS1乃至S8が行われる。本変形例が上記実施形態と相違するのは、待機系サーバ20が妨害パケット及びARP応答を、それぞれステップS6及びS7で送信した後、一定の時間間隔で、妨害パケットの送信(ステップS6a)及びARP応答の送信(ステップS7a)を繰り返す点である。この時間間隔(定期送信間隔)の情報は、サーバ10及び20の初期設定時に当該設定されるものとする。   First, also in the present modification, steps S1 to S8 are performed as in the sequence chart of FIG. 2 of the above embodiment. This modified example is different from the above embodiment in that the standby server 20 transmits the disturbing packet and the ARP response in steps S6 and S7, respectively, and then transmits the disturbing packet at a certain time interval (step S6a) and The point is that the transmission of the ARP response (step S7a) is repeated. Information on this time interval (periodic transmission interval) is set when the servers 10 and 20 are initially set.

次に、上記実施形態の変形例で適用されるアドレス引き継ぎ後におけるクライアント40と待機系サーバ20との間の通信の開始時の通信シーケンスについて、図22のシーケンスチャートを参照して説明する。図22において、図6のシーケンスチャートと同様の部分には、同一参照符号を付してある。   Next, a communication sequence at the start of communication between the client 40 and the standby server 20 after address takeover applied in the modification of the above embodiment will be described with reference to the sequence chart of FIG. In FIG. 22, the same reference numerals are attached to the same parts as those in the sequence chart of FIG.

まず、本変形例においても、上記実施形態の図6のシーケンスチャートと同様に、ステップS11乃至S16が行われる。本変形例が上記実施形態と相違するのは、待機系サーバ20が妨害パケット及びARP応答を、それぞれステップS12及びS13で送信した後、一定の時間間隔で、妨害パケットの送信(ステップS12a)及びARP応答の送信(ステップS13a)を繰り返す点である。この時間間隔(定期送信間隔)の情報は、サーバ10及び20の初期設定時に設定されるものとする。   First, also in the present modification, steps S11 to S16 are performed as in the sequence chart of FIG. 6 of the above embodiment. This modified example is different from the above embodiment in that the standby server 20 transmits the disturbing packet and the ARP response in steps S12 and S13, respectively, and then transmits the disturbing packet at a certain time interval (step S12a) and The point is that the transmission of the ARP response (step S13a) is repeated. Information on this time interval (periodic transmission interval) is set when the servers 10 and 20 are initially set.

上記定期送信間隔の設定を可能とするために、本変形例では、上記実施形態とは異なるデータ構造のサーバ情報テーブルが用いられる。但し便宜的に、本変形例で適用されるサーバ情報テーブルも、上記実施形態で適用されるサーバ情報テーブル232と同様に、サーバ情報テーブル232と称する。   In order to enable the setting of the regular transmission interval, a server information table having a data structure different from that of the above embodiment is used in the present modification. However, for the sake of convenience, the server information table applied in the present modification is also referred to as a server information table 232, similar to the server information table 232 applied in the above embodiment.

図23は、本変形例で適用されるサーバ情報テーブル232のデータ構造例を示す。図23に示されるように、本変形例で適用されるサーバ情報テーブル232は、自系のMACアドレス、他系のMACアドレス及び、引き継ぎIPアドレスに加えて、定期送信間隔を示す情報(定期送信間隔情報)を保持する。つまり、本変形例で適用されるサーバ情報テーブル232に保持される情報は、上記実施形態で適用されるサーバ情報テーブル232に保持される情報に、定期送信間隔情報が追加されたものである。この定期送信間隔情報は、図21における妨害パケットの送信(ステップS6a)及びARP応答の送信(ステップS7a)を繰り返す時間間隔と、図22における妨害パケットの送信(ステップS12a)及びARP応答の送信(ステップS13a)を繰り返す時間間隔を示す。   FIG. 23 shows an example of the data structure of the server information table 232 applied in this modification. As shown in FIG. 23, the server information table 232 applied in the present modification example includes information indicating a periodic transmission interval (periodic transmission) in addition to the own system MAC address, the other system MAC address, and the takeover IP address. Hold interval information). That is, the information held in the server information table 232 applied in this modification is obtained by adding periodic transmission interval information to the information held in the server information table 232 applied in the above embodiment. The periodic transmission interval information includes the time interval for repeating the transmission of the disturbing packet (step S6a) and the transmission of the ARP response (step S7a) in FIG. 21, the transmission of the disturbing packet (step S12a) and the transmission of the ARP response in FIG. The time interval for repeating step S13a) is shown.

サーバ情報テーブル232は、通信制御装置23内のARP要求受信部231aがクラスタ制御装置22から当該通信制御装置23を機能させるための初期設定情報を受け取ることにより、当該ARP要求受信部231aによって初期設定される。この初期設定情報は、上記実施形態と異なり、自系のMACアドレス、他系のMACアドレス及び引き継ぎIPアドレスに加えて定期送信間隔情報を含む。   The server information table 232 is initialized by the ARP request receiving unit 231a when the ARP request receiving unit 231a in the communication control device 23 receives initial setting information for causing the communication control device 23 to function from the cluster control device 22. Is done. Unlike the above embodiment, this initial setting information includes periodic transmission interval information in addition to the own system MAC address, the other system MAC address, and the takeover IP address.

次に、本変形例で適用されるARP要求受信部231aの動作について説明する。ARP要求受信部231aは、以下に述べる処理P11乃至P14を実行する。
まずARP要求受信部231aは、クラスタ制御装置22からの通信制御装置23を機能させるための要求に従い、サーバ情報テーブル232及びアドレス引き継ぎ状態テーブル234の初期設定を行う(処理P11)。
Next, the operation of the ARP request receiving unit 231a applied in this modification will be described. The ARP request receiving unit 231a executes processes P11 to P14 described below.
First, the ARP request receiving unit 231a performs initial setting of the server information table 232 and the address takeover state table 234 according to a request from the cluster control device 22 for causing the communication control device 23 to function (processing P11).

ARP要求受信部231aはまた、クラスタ制御装置22からアドレスの制御要求を受け取り、アドレス引き継ぎ状態テーブル234の示す状態を「yes」に変更する(処理P12)。この処理P12は、図2に示されるステップS6,S7に相当する処理を含む。   The ARP request receiving unit 231a also receives an address control request from the cluster control device 22, and changes the state indicated by the address takeover state table 234 to “yes” (process P12). This process P12 includes processes corresponding to steps S6 and S7 shown in FIG.

ARP要求受信部231aはまた、ネットワークIF24からARP要求を受け取り、アドレス管理テーブル233の更新を行うと共に、妨害パケット・ARP応答送信部231bにパケット送信を要求する(処理P13)。   The ARP request receiving unit 231a also receives the ARP request from the network IF 24, updates the address management table 233, and requests packet transmission from the disturbing packet / ARP response transmitting unit 231b (process P13).

ARP要求受信部231aは更に、サーバ情報テーブル232に登録されている全アドレスに対し、妨害パケット及びARP応答を、サーバ情報テーブル232に登録されている定期送信間隔情報の示す時間間隔(定期送信間隔)で妨害パケット・ARP応答送信部231bによって送信(定期送信)させるために、当該送信部231bにパケット送信を要求する(処理P14)。以下の説明では、妨害パケット及びARP応答を、妨害パケット・ARP応答と表現することもある。   The ARP request receiving unit 231a further transmits the disturbing packet and the ARP response to all addresses registered in the server information table 232 in a time interval (periodic transmission interval) indicated by the periodic transmission interval information registered in the server information table 232. ) In order to transmit (periodic transmission) by the interfering packet / ARP response transmission unit 231b (step P14). In the following description, the jamming packet and the ARP response may be expressed as a jamming packet / ARP response.

ここで、上記処理P11は、ARP要求受信部231aがクラスタ制御装置22から受け取る情報(初期設定情報)に、妨害パケット・ARP応答の定期送信間隔を示す情報が追加されている点と、ARP要求受信部231aがサーバ情報テーブル232に設定する情報として定期送信間隔情報が追加されている点を除き、上記実施形態における処理P1と同様である。上記処理P12及びP13は、上記実施形態における処理P2及びP3と同様である。   Here, in the process P11, information indicating the periodic transmission interval of the disturbing packet / ARP response is added to the information (initial setting information) received by the ARP request receiving unit 231a from the cluster control device 22, and the ARP request Except that periodic transmission interval information is added as information set in the server information table 232 by the receiving unit 231a, the processing is the same as the processing P1 in the above embodiment. The processes P12 and P13 are the same as the processes P2 and P3 in the embodiment.

上記処理P14は、本変形例で追加された処理である。そこで、ARP要求受信部231aによる上記処理P14の手順について、図24のフローチャートを参照して説明する。   The process P14 is a process added in the present modification. Therefore, the procedure of the process P14 by the ARP request receiving unit 231a will be described with reference to the flowchart of FIG.

ARP要求受信部231aは、妨害パケット・ARP応答の定期送信のために、以下の処理を繰り返し実行する。この繰り返しは、通信制御装置23自体が停止または再起動されるまで終了することなく実行されるものとする。   The ARP request receiving unit 231a repeatedly executes the following processing in order to periodically transmit jamming packets and ARP responses. This repetition is executed without ending until the communication control device 23 itself is stopped or restarted.

ARP要求受信部231aは、アドレス引き継ぎ状態テーブル234を参照して、当該テーブル234の示す状態が「yes」であるかを判定する(ステップS61)。アドレス引き継ぎ状態テーブル234の示す状態が「no」の場合、ARP要求受信部231aは後述するステップS64を実行する。   The ARP request reception unit 231a refers to the address takeover state table 234 and determines whether the state indicated by the table 234 is “yes” (step S61). When the state shown in the address takeover state table 234 is “no”, the ARP request receiving unit 231a executes Step S64 described later.

これに対し、アドレス引き継ぎ状態テーブル234の示す状態が「yes」の場合、ARP要求受信部231aは、主系サーバ10及びクライアント(アドレス管理テーブル233に登録されている全てのMACアドレス及びIPアドレスの対で指定されるクライアント)に、それぞれ、妨害パケット及びARP応答を妨害パケット・ARP応答送信部231bによって送信させる処理を実行する(ステップS62)。このステップS62は、以下に詳述するように、上記実施形態のステップS32(図15参照)と同様である。   On the other hand, when the state shown in the address takeover state table 234 is “yes”, the ARP request receiving unit 231a includes the primary server 10 and the client (all MAC addresses and IP addresses registered in the address management table 233). A process of causing the interfering packet and the ARP response to be transmitted by the interfering packet / ARP response transmitting unit 231b is executed (step S62). This step S62 is the same as step S32 (see FIG. 15) of the above embodiment, as will be described in detail below.

まずARP要求受信部231aは、アドレス管理テーブル233から、未処理のMACアドレス及びIPアドレスの対を1つ取り出す(ステップS62a)。次にARP要求受信部231aは、取り出されたMACアドレス及びIPアドレスの対を妨害パケット・ARP応答送信部231bに渡して、パケット(妨害パケット・ARP応答)の送信を要求する(ステップS62b)。このARP要求受信部231aからのパケットの送信の要求に対する妨害パケット・ARP応答送信部231bの処理は、上記実施形態と同様に図19のフローチャートに従って実行される。   First, the ARP request receiving unit 231a extracts one unprocessed MAC address / IP address pair from the address management table 233 (step S62a). Next, the ARP request receiving unit 231a passes the pair of the extracted MAC address and IP address to the disturbing packet / ARP response transmitting unit 231b and requests transmission of the packet (disturbing packet / ARP response) (step S62b). The processing of the disturbing packet / ARP response transmitter 231b in response to the packet transmission request from the ARP request receiver 231a is executed according to the flowchart of FIG. 19 as in the above embodiment.

ARP要求受信部231aは、上記ステップS62a及び62bを、アドレス管理テーブル233に保持されている全てのMACアドレス及びIPアドレスの対について繰り返し実行する(ステップS62)。するとARP要求受信部231aは、サーバ情報テーブル232に設定されている定期送信間隔情報の示す時間間隔(定期送信間隔)の期間だけ待機する(ステップS63)。
ARP要求受信部231aは、以上のステップS61乃至63を繰り返し実行する。
The ARP request receiving unit 231a repeatedly executes the above steps S62a and 62b for all MAC address and IP address pairs held in the address management table 233 (step S62). Then, the ARP request receiving unit 231a waits for a time interval (periodic transmission interval) indicated by the periodic transmission interval information set in the server information table 232 (step S63).
The ARP request receiving unit 231a repeatedly executes the above steps S61 to S63.

このように本変形例においては、主系サーバ10の障害発生時通信中であったクライアントに対しては、待機系サーバ20のMACアドレスが送信元MACアドレスとして設定されたARP応答パケットを、待機系サーバ20に対しては、偽のMACアドレスが送信元MACアドレスとして設定されたARP応答パケット(妨害パケット)を、待機系サーバ20から定期的に送信することで、例えば一時的に両ARP応答パケットがネットワーク30上で消失するといった要因でクライアント及び待機系サーバ20に受信されない状態が発生しても、クライアントが待機系サーバ20に通信データを送信することを防ぐことができる。   As described above, in this modification, for the client that was communicating at the time of failure of the primary server 10, the ARP response packet in which the MAC address of the standby server 20 is set as the transmission source MAC address is waited. By periodically transmitting from the standby server 20 an ARP response packet (interfering packet) in which a fake MAC address is set as a transmission source MAC address to the active server 20, for example, both ARP responses are temporarily received. Even if the client and the standby server 20 do not receive the packet due to the loss of the packet on the network 30, it is possible to prevent the client from transmitting communication data to the standby server 20.

なお、本発明は、上記実施形態またはその変形例そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態またはその変形例に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態またはその変形例に示される全構成要素から幾つかの構成要素を削除してもよい。   In addition, this invention is not limited to the said embodiment or its modification example as it is, A component can be deform | transformed and embodied in the range which does not deviate from the summary in an implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of constituent elements disclosed in the embodiment or its modification. For example, you may delete a some component from all the components shown by embodiment or its modification.

本発明の一実施形態に係るクラスタシステムの構成を示すブロック図。1 is a block diagram showing a configuration of a cluster system according to an embodiment of the present invention. 同実施形態で適用されるIPアドレス引き継ぎ時の通信シーケンスを示すシーケンスチャート。The sequence chart which shows the communication sequence at the time of the IP address taking over applied in the embodiment. ARP要求のフォーマットと当該ARP要求に含まれている送信元MACアドレス及び送信元IPアドレスが登録されるリストとの関係を示す図。The figure which shows the relationship between the format of an ARP request | requirement, and the list | wrist in which the transmission origin MAC address and transmission origin IP address which are contained in the said ARP request | requirement are registered. 妨害パケットのフォーマット。Interfering packet format. ARP応答のフォーマット。ARP response format. 同実施形態で適用される、IPアドレス引き継ぎ後におけるクライアントと待機系サーバとの間の通信の開始時の通信シーケンスを示すシーケンスチャート。The sequence chart which shows the communication sequence at the time of the start of communication between the client and standby server after IP address taking over applied in the embodiment. 図1に示される待機系サーバが有する通信制御装置の構成を示すブロック図The block diagram which shows the structure of the communication control apparatus which the standby system server shown by FIG. 1 has. 図7に示されるサーバ情報テーブルのデータ構造例を示す図。The figure which shows the data structure example of the server information table shown by FIG. 図7に示されるアドレス管理テーブルのデータ構造例を示す図。The figure which shows the example of a data structure of the address management table shown by FIG. 図7に示されるアドレス引き継ぎ状態テーブルのデータ構造例を示す図。The figure which shows the example of a data structure of the address takeover state table shown by FIG. 同実施形態で適用される、ARP要求受信部による処理P1の手順を示すフローチャート。The flowchart which shows the procedure of the process P1 by the ARP request | requirement receiving part applied in the embodiment. クラスタ制御装置からARP要求受信部に渡される初期設定情報の一例を示す図。The figure which shows an example of the initial setting information passed to a ARP request | requirement receiving part from a cluster control apparatus. 図12に示す初期設定情報に従って初期設定されたサーバ情報テーブルの一例を示す図。The figure which shows an example of the server information table initialized according to the initialization information shown in FIG. 初期設定されたアドレス引き継ぎ状態テーブルの一例を示す図。The figure which shows an example of the address takeover state table initialized. 同実施形態で適用される、ARP要求受信部による処理P2の手順を示すフローチャート。The flowchart which shows the procedure of the process P2 by the ARP request | requirement receiving part applied in the embodiment. ARP要求受信部から妨害パケット・ARP応答送信部に順次送られるMACアドレス及びIPアドレスの対の列を示す図。The figure which shows the series of a MAC address and IP address pair sent from the ARP request receiving unit to the disturbing packet / ARP response transmitting unit in sequence. 同実施形態で適用される、ARP要求受信部による処理P3の手順を示すフローチャート。6 is a flowchart showing a procedure of processing P3 performed by the ARP request receiving unit, applied in the embodiment. ARP要求パケットとアドレス管理テーブルと妨害パケット・ARP応答送信部に送られるデータとの対応関係を示す図。The figure which shows the correspondence of the data sent to an ARP request | requirement packet, an address management table, and a disturbance packet and ARP response transmission part. 同実施形態で適用される、妨害パケット・ARP応答送信部の処理手順を示すフローチャート。The flowchart which shows the process sequence of the disturbance packet and ARP response transmission part applied in the embodiment. 妨害パケット・ARP応答送信部への入力データと妨害パケットとサーバ情報テーブルとARP応答との関係を示す図。The figure which shows the relationship between the input data to a disturbance packet and ARP response transmission part, a disturbance packet, a server information table, and an ARP response. 同実施形態の変形例で適用されるIPアドレス引き継ぎ時の通信シーケンスを示すシーケンスチャート。The sequence chart which shows the communication sequence at the time of the IP address taking over applied in the modification of the embodiment. 同実施形態の変形例で適用されるアドレス引き継ぎ後におけるクライアントと待機系サーバとの間の通信の開始時の通信シーケンスを示すシーケンスチャート。The sequence chart which shows the communication sequence at the time of the start of communication between the client and standby server after the address taking over applied in the modification of the embodiment. 同変形例で適用されるサーバ情報テーブルのデータ構造例を示す図。The figure which shows the data structural example of the server information table applied in the modification. 同変形例で適用されるARP要求受信部による処理P14の手順を示すフローチャート。The flowchart which shows the procedure of the process P14 by the ARP request | requirement receiving part applied in the modification.

符号の説明Explanation of symbols

10…主系サーバ、11,12…サービスプロセス、12,22…クラスタ制御装置、13,23…通信制御装置、14,24…ネットワークIF、20…待機系サーバ、30…ネットワーク、40…クライアント、231…通信制御部、231a…ARP要求受信部、231b…妨害パケット・ARP応答送信部、232…サーバ情報テーブル、233…アドレス管理テーブル、234…アドレス引き継ぎ状態テーブル。   DESCRIPTION OF SYMBOLS 10 ... Main system server, 11, 12 ... Service process, 12, 22 ... Cluster controller, 13, 23 ... Communication controller, 14, 24 ... Network IF, 20 ... Standby server, 30 ... Network, 40 ... Client, 231 ... Communication control unit, 231a ... ARP request receiving unit, 231b ... Interfering packet / ARP response transmission unit, 232 ... Server information table, 233 ... Address management table, 234 ... Address takeover state table.

Claims (6)

TCP/IPプロトコルを適用するネットワークに接続された主系サーバであって、前記ネットワークを介してクライアントから送信された特定のリクエストに応じたサービスを当該クライアントに提供する主系サーバと、前記主系サーバの障害を検知した場合、前記主系サーバが提供するサービスと当該サービスで使用される特定IPアドレスとを引き継ぐ待機系サーバとを具備し、
前記待機系サーバは、
前記主系サーバが提供するサービスで使用される前記特定IPアドレスをターゲットIPアドレスとするARP要求の情報を登録するための管理テーブルと、
前記主系サーバの障害を検知した結果、前記主系サーバが提供するサービスで使用される前記特定IPアドレスを引き継ぐ際に、偽の物理アドレス及び前記管理テーブルに登録されている情報の示すARP要求の送信元IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第1のARP応答を送信し、且つ前記管理テーブルに登録されている情報の示すARP要求の送信元に対し、前記待機系サーバ自身の物理アドレス及び前記特定IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第2のARP応答を送信する通信制御手段とを含む
ことを特徴とするクラスタシステム。
A main server connected to a network to which a TCP / IP protocol is applied, the main server providing a service corresponding to a specific request transmitted from the client via the network; and the main server When a server failure is detected, it comprises a standby server that takes over the service provided by the primary server and the specific IP address used in the service,
The standby server is
A management table for registering information of an ARP request with the specific IP address used as a target IP address used in the service provided by the primary server;
As a result of detecting a failure of the primary server, an ARP request indicating a fake physical address and information registered in the management table when taking over the specific IP address used in the service provided by the primary server The first ARP response set as the source physical address and the source IP address, respectively, and the source of the ARP request indicated by the information registered in the management table, A communication control means for transmitting a second ARP response in which the physical address of the standby server itself and the specific IP address are set as a source physical address and a source IP address, respectively. .
前記通信制御手段は、前記特定IPアドレスを引き継いだ後、当該特定IPアドレスがターゲットIPアドレスとして設定されたARP要求を受信した場合、偽の物理アドレス及び前記管理テーブルに登録されている情報の示すARP要求の送信元IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第3のARP応答を送信し、且つ前記管理テーブルに登録されている情報の示すARP要求の送信元に対し、前記待機系サーバ自身の物理アドレス及び前記特定IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第4のARP応答を送信することを特徴とする請求項1記載のクラスタシステム。   When the communication control means receives the ARP request in which the specific IP address is set as the target IP address after taking over the specific IP address, the communication control means indicates a fake physical address and information registered in the management table The source IP address of the ARP request transmits a third ARP response set as the source physical address and the source IP address, respectively, and the source of the ARP request indicated by the information registered in the management table The cluster according to claim 1, wherein the standby server itself transmits a fourth ARP response in which the physical address and the specific IP address are set as a transmission source physical address and a transmission source IP address, respectively. system. 前記管理テーブルに登録される前記ARP要求の情報は、当該ARP要求の送信元物理アドレス及び送信元IPアドレスを含み、
前記通信制御手段は、前記特定IPアドレスを宛先とするARP要求を受信するARP要求受信手段であって、当該ARP要求の受信に応じて当該ARP要求に含まれている送信元物理アドレス及び送信元IPアドレスを前記管理テーブルに登録するARP要求受信手段を含む
ことを特徴とする請求項1または2記載のクラスタシステム。
The information of the ARP request registered in the management table includes a source physical address and a source IP address of the ARP request,
The communication control means is an ARP request receiving means for receiving an ARP request destined for the specific IP address, and a transmission source physical address and a transmission source included in the ARP request in response to reception of the ARP request The cluster system according to claim 1, further comprising: an ARP request receiving unit that registers an IP address in the management table.
前記通信制御手段は、前記特定IPアドレスを引き継ぐ際に、前記第1のARP応答及び前記第2のARP応答を定期的に送信することを特徴とする請求項3記載のクラスタシステム。   4. The cluster system according to claim 3, wherein the communication control unit periodically transmits the first ARP response and the second ARP response when taking over the specific IP address. 前記通信制御手段は、前記特定IPアドレスを引き継いだ後、前記第3のARP応答及び前記第4のARP応答を定期的に送信することを特徴とする請求項4記載のクラスタシステム。   5. The cluster system according to claim 4, wherein the communication control unit periodically transmits the third ARP response and the fourth ARP response after taking over the specific IP address. クライアントからTCP/IPネットワークを介して送信された特定のリクエストを受信することにより当該特定のリクエストに応じたサービスを当該クライアントに提供する主系サーバと共に前記TCP/IPネットワークに接続されてクラスタシステムを構成する待機系サーバであって、前記主系サーバの障害の検知した場合には、前記主系サーバが提供するサービスと当該サービスで使用される特定IPアドレスとを引き継ぐ待機系サーバに、
前記主系サーバが提供するサービスで使用される前記特定IPアドレスをターゲットIPアドレスとするARP要求を受信して、当該受信されたARP要求の情報を管理テーブルに登録するステップと、
前記主系サーバの障害を検知した結果、前記主系サーバが提供するサービスで使用される前記特定IPアドレスを引き継ぐ際に、偽の物理アドレス及び前記管理テーブルに登録されている情報の示すARP要求の送信元IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第1のARP応答を送信するステップと、
前記第1のARP応答の送信の後、前記待機系サーバ自身の物理アドレス及び前記特定IPアドレスが、それぞれ送信元物理アドレス及び送信元IPアドレスとして設定された第2のARP応答を送信するステップと
を実行させるためのプログラム。
A cluster system is connected to the TCP / IP network together with a main server that provides a service corresponding to the specific request by receiving the specific request transmitted from the client via the TCP / IP network. A standby server configured to detect a failure of the primary server, to a standby server that takes over the service provided by the primary server and a specific IP address used in the service,
Receiving an ARP request with the specific IP address used in the service provided by the primary server as a target IP address, and registering information of the received ARP request in a management table;
As a result of detecting a failure of the primary server, an ARP request indicating a fake physical address and information registered in the management table when taking over the specific IP address used in the service provided by the primary server Transmitting a first ARP response in which the source IP addresses are set as the source physical address and the source IP address, respectively.
After transmitting the first ARP response, transmitting a second ARP response in which the physical address of the standby server itself and the specific IP address are set as a source physical address and a source IP address, respectively. A program for running
JP2008110571A 2008-04-21 2008-04-21 Cluster system and program Expired - Fee Related JP4703682B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008110571A JP4703682B2 (en) 2008-04-21 2008-04-21 Cluster system and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008110571A JP4703682B2 (en) 2008-04-21 2008-04-21 Cluster system and program

Publications (2)

Publication Number Publication Date
JP2009265690A true JP2009265690A (en) 2009-11-12
JP4703682B2 JP4703682B2 (en) 2011-06-15

Family

ID=41391511

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008110571A Expired - Fee Related JP4703682B2 (en) 2008-04-21 2008-04-21 Cluster system and program

Country Status (1)

Country Link
JP (1) JP4703682B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2012042607A1 (en) * 2010-09-29 2014-02-03 株式会社トライテック Distributed computing system
JP2014179866A (en) * 2013-03-15 2014-09-25 Nec Corp Server, network device, server system, and communication destination determination method
JP2015073314A (en) * 2014-12-01 2015-04-16 株式会社日立製作所 Server device group and network system
JPWO2015015544A1 (en) * 2013-07-29 2017-03-02 富士通株式会社 Information processing system, apparatus, method, and program
CN106789257A (en) * 2016-12-23 2017-05-31 航天星图科技(北京)有限公司 A kind of cloud system server state visual management method
WO2020057445A1 (en) * 2018-09-19 2020-03-26 华为技术有限公司 Communication system, method, and device
CN114731300A (en) * 2019-10-08 2022-07-08 日立安斯泰莫株式会社 Communication system, electronic control device, and communication method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0993244A (en) * 1995-09-26 1997-04-04 Mitsubishi Electric Corp Multiple system
JPH10105424A (en) * 1996-09-26 1998-04-24 Okinawa Nippon Denki Software Kk Method for assigning ip address of duplex server
JP2007141129A (en) * 2005-11-22 2007-06-07 Hitachi Ltd System switching method, computer system and program
JP2008028456A (en) * 2006-07-18 2008-02-07 Toshiba Corp Computer system capable of taking over service and ip address, and program

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0993244A (en) * 1995-09-26 1997-04-04 Mitsubishi Electric Corp Multiple system
JPH10105424A (en) * 1996-09-26 1998-04-24 Okinawa Nippon Denki Software Kk Method for assigning ip address of duplex server
JP2007141129A (en) * 2005-11-22 2007-06-07 Hitachi Ltd System switching method, computer system and program
JP2008028456A (en) * 2006-07-18 2008-02-07 Toshiba Corp Computer system capable of taking over service and ip address, and program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2012042607A1 (en) * 2010-09-29 2014-02-03 株式会社トライテック Distributed computing system
JP2014179866A (en) * 2013-03-15 2014-09-25 Nec Corp Server, network device, server system, and communication destination determination method
JPWO2015015544A1 (en) * 2013-07-29 2017-03-02 富士通株式会社 Information processing system, apparatus, method, and program
JP2015073314A (en) * 2014-12-01 2015-04-16 株式会社日立製作所 Server device group and network system
CN106789257A (en) * 2016-12-23 2017-05-31 航天星图科技(北京)有限公司 A kind of cloud system server state visual management method
CN106789257B (en) * 2016-12-23 2019-03-05 中科星图股份有限公司 A kind of cloud system server state visual management method
WO2020057445A1 (en) * 2018-09-19 2020-03-26 华为技术有限公司 Communication system, method, and device
CN114731300A (en) * 2019-10-08 2022-07-08 日立安斯泰莫株式会社 Communication system, electronic control device, and communication method
CN114731300B (en) * 2019-10-08 2024-04-09 日立安斯泰莫株式会社 Communication system, electronic control device, and communication method

Also Published As

Publication number Publication date
JP4703682B2 (en) 2011-06-15

Similar Documents

Publication Publication Date Title
JP4703682B2 (en) Cluster system and program
US7228459B2 (en) Apparatus and method that provides a primary server and a backup server that both support a RADIUS client and share an IP address
US7885180B2 (en) Address resolution request mirroring
EP1697843B1 (en) System and method for managing protocol network failures in a cluster system
US10191760B2 (en) Proxy response program, proxy response device and proxy response method
JP2010220066A (en) Network monitoring device and network monitoring method
JP2010114665A (en) Method of controlling communication data and computer system
JP2010103695A (en) Cluster system, cluster server and cluster control method
JP2005295124A (en) Path table synchronizing method, network device, and path table synchronizing program
US20140365606A1 (en) Information processing apparatus, information processing method, and program
JP4279298B2 (en) Computer system and program capable of taking over service and IP address
JP5039975B2 (en) Gateway device
JP2006352719A (en) Apparatus, method for monitoring network, network system, network monitoring method and network communication method
JPWO2010046977A1 (en) COMMUNICATION CONTROL PROGRAM, COMMUNICATION CONTROL DEVICE, COMMUNICATION CONTROL SYSTEM, AND COMMUNICATION CONTROL METHOD
JP2007251818A (en) Program, method and device for transmission control
US20080144634A1 (en) Selective passive address resolution learning
JP2009003491A (en) Server switching method in cluster system
JP2018061148A (en) Communication device, relay device, communication system, and communication method
JP6248822B2 (en) Communication address management system, building management system, and communication address management program
US9634987B2 (en) Obtaining a MAC address from an external source
JP6014068B2 (en) Relay device, relay method, and computer program
JP6002642B2 (en) Communication node, network system, and device control method
WO2022254517A1 (en) Communication system and communication control method
US9019964B2 (en) Methods and systems for routing application traffic
US20230370332A1 (en) Computer system and communication method

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101119

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: 20110208

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110308

R150 Certificate of patent or registration of utility model

Ref document number: 4703682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees