JP2002288148A - Distributed server system - Google Patents

Distributed server system

Info

Publication number
JP2002288148A
JP2002288148A JP2001085584A JP2001085584A JP2002288148A JP 2002288148 A JP2002288148 A JP 2002288148A JP 2001085584 A JP2001085584 A JP 2001085584A JP 2001085584 A JP2001085584 A JP 2001085584A JP 2002288148 A JP2002288148 A JP 2002288148A
Authority
JP
Japan
Prior art keywords
server
processing
load
client
servers
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
JP2001085584A
Other languages
Japanese (ja)
Other versions
JP4712995B2 (en
Inventor
Katsuki Inamura
勝樹 稲村
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.)
Kyocera Corp
KDDI Corp
KDDI Research Inc
Original Assignee
Kyocera Corp
KDDI Corp
KDDI R&D Laboratories Inc
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 Kyocera Corp, KDDI Corp, KDDI R&D Laboratories Inc filed Critical Kyocera Corp
Priority to JP2001085584A priority Critical patent/JP4712995B2/en
Publication of JP2002288148A publication Critical patent/JP2002288148A/en
Application granted granted Critical
Publication of JP4712995B2 publication Critical patent/JP4712995B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a distributed server system capable of load distribution in response to the change of load state with the lapse of time. SOLUTION: The system monitors the load state of a server 101 which is executing processing of a client terminal 103, and to prevent the load from increasing with the lapse of time, performs transfer of incomplete processing between servers by an agent program automatically. A packet used in the first server is capsulated and communication with a server 102 taking over the processing is executed.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、データの処理やア
プリケーションの実行などを行うサーバ・クライアント
型のシステムに関するものであって、特にサーバの負担
を軽減するために複数のサーバを設置し、分散処理を行
う分散サーバシステムにおいて、サーバの変更に伴う処
理の継続作業を引き継ぎ可能とするための改良に関する
ものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a server-client type system for processing data, executing applications, and the like. In particular, in order to reduce the load on the server, a plurality of servers are installed and distributed. The present invention relates to an improvement in a distributed server system that performs a process so that a continuation of a process accompanying a server change can be taken over.

【0002】[0002]

【従来の技術】サーバ・クライアント型のシステムは、
複数のクライアント端末から処理要求が1つのサーバに
集中すると、サーバおよびネットワークに負荷が生じ、
要求された処理の実行速度が著しく低下してしまうとい
う問題がある。
2. Description of the Related Art A server / client type system includes:
When processing requests from a plurality of client terminals concentrate on one server, a load is generated on the server and the network,
There is a problem that the execution speed of the requested processing is significantly reduced.

【0003】このため前記負荷の発生を分散させるため
に、同様の処理を行えるサーバを複数台用意し、複数の
処理要求が発生した場合に各サーバに処理を分散し、負
荷の一極集中を回避する分散サーバという概念が導入さ
れるようになった。
For this reason, in order to distribute the generation of the load, a plurality of servers capable of performing the same processing are prepared, and when a plurality of processing requests are generated, the processing is distributed to the respective servers so that the concentration of the load is concentrated. The concept of avoiding distributed servers has been introduced.

【0004】[0004]

【発明が解決しようとする課題】しかし従来の分散サー
バシステムで行われている分散処理は、クライアントか
らの最初の処理要求時に行う通信手続きにおいて、負荷
の軽いサーバを検知し、そのサーバのみとアクセスする
ことを決定してしまい、他のサーバとのアクセスを行い
たい場合は再度通信手続きをとる必要が生じる。もし、
処理途中で他のサーバにアクセスを移す場合は、処理を
最後まで終えてから他のサーバへ再度通信手続きを行う
か、もしくは、処理途中の処理を破棄し、他のサーバへ
再度通信手続きを行い、破棄した処理を最初からやり直
すことになる。
However, in the distributed processing performed in the conventional distributed server system, in a communication procedure performed at the time of the first processing request from a client, a server with a light load is detected and only the server is accessed. If the user decides to do so and wants to access another server, it is necessary to repeat the communication procedure. if,
When transferring access to another server in the middle of the process, perform the communication procedure to the other server again after completing the process, or discard the process in the middle of the process and perform the communication procedure to the other server again. Therefore, the discarded process is redone from the beginning.

【0005】近年、企業や学校などにおけるLANの整
備、また携帯電話、無線LANなどの無線通信手段によ
り、クライアント端末は屋内外や接続時間を問わずネッ
トワークに接続することが可能となった。その結果、あ
る時刻においては負荷の軽かったサーバが、数分後には
クライアント端末からの処理の要求の増加とともに負荷
が上がっていくというように、一つのサーバで行う様々
な処理にともなう負荷状態も短時間ごとに大きな変動が
起こるようになった。
[0005] In recent years, client terminals can be connected to a network regardless of indoors or outdoors and connection time by providing a LAN in a company or a school, or by wireless communication means such as a mobile phone and a wireless LAN. As a result, the load state associated with various processing performed by a single server also increases, such as that the server with a light load at a certain time increases in load with the increase in processing requests from client terminals within a few minutes. Large fluctuations occur every short time.

【0006】従来は、サーバに対して処理の要求を行う
クライアント端末は多くなり、サーバの負荷が短時間に
変化することは想定されなかった。このため、従来の分
散サーバシステムにおいては、クライアント端末からの
処理の要求時にサーバの負荷状態にしたがって、負荷の
軽いサーバがその処理を行うだけのものであった。
Conventionally, the number of client terminals requesting a server for processing has increased, and it has not been assumed that the load on the server changes in a short time. For this reason, in a conventional distributed server system, when a process is requested from a client terminal, a server with a light load only performs the process according to the load state of the server.

【0007】クライアント端末の数が飛躍的に増加する
と、それぞれのクライアント端末からの要求が多種多様
になり、サーバで行う処理の種類ごとに負荷の値や処理
時間が大きく異なることになる。このため、時間経過と
ともにそれぞれのサーバの負荷状態が大きく変動するこ
とになり、サーバ間の負荷に大きな違いが生じてしま
う。
[0007] When the number of client terminals increases dramatically, requests from each client terminal become diversified, and the load value and processing time greatly differ depending on the type of processing performed by the server. For this reason, the load state of each server fluctuates greatly with the passage of time, and a significant difference occurs in the load between the servers.

【0008】短時間で変化する負荷状態に対応してサー
バ間で負荷を分散していくためには、サーバの負荷を常
に監視し、接続しているサーバの負荷が上昇したら他の
負荷の軽いサーバに切り替えていく必要がある。
In order to distribute the load among the servers in response to the load state which changes in a short time, the load on the server is constantly monitored, and when the load on the connected server increases, the other loads are light. You need to switch to the server.

【0009】しかしながら、従来の分散サーバシステム
は時間ごとに変化する負荷を監視し、サーバの負荷の変
化に従い適宜サーバの接続を他のサーバに引き継ぐ手続
きを行うような設計がなされていない。また、再度通信
手続きを行いサーバを移動させた場合、処理を中途で破
棄し、別のサーバにて再度手続きすることになり、負荷
を増加させることになる。
However, the conventional distributed server system has not been designed to monitor the load that changes with time and to perform a procedure for appropriately taking over the connection of the server to another server according to the change in the load on the server. In addition, when the communication procedure is performed again and the server is moved, the processing is discarded halfway and the procedure is performed again on another server, which increases the load.

【0010】この結果、サーバの負荷が短時間で変化
し、接続していたサーバよりも負荷が軽いサーバが存在
しても、クライアントは最初のサーバで引き続き処理を
行うことになり、負荷の重いサーバで作業を継続するこ
ととなり、効率的な負荷分散ができないという問題点が
ある。
As a result, even if the load on the server changes in a short time and there is a server whose load is lighter than that of the connected server, the client will continue processing on the first server, and the load will be heavy. There is a problem in that work is continued on the server, and efficient load distribution cannot be performed.

【0011】クライアント端末の処理要求を手助けする
ものとして、エージェントプログラム技術がある。エー
ジェントプログラム技術とは、クライアント端末のユー
ザが行っていた処理を、ユーザに代わって自動的に実行
するものである。このときユーザの行う処理を事前にプ
ログラミングしてあるので、その処理に関してユーザは
意識することなく行われることになる。
[0011] Agent program technology is one that assists the processing request of the client terminal. The agent program technology automatically executes a process performed by a user of a client terminal on behalf of the user. At this time, since the processing performed by the user is programmed in advance, the processing is performed without the user being conscious of the processing.

【0012】しかしながら、従来のエージェントプログ
ラム技術は、クライアント端末の要求する処理を最初の
段階ですべて決定し、その処理をすべてエージェントプ
ログラムに行ってもらうものか、処理の結果が得られた
ときにクライアント端末へ通信パケットを送信するとい
ったものになっており、サーバの負荷を分散するような
機能を有していない。
However, in the conventional agent program technology, all processes required by a client terminal are determined at an initial stage, and all the processes are performed by an agent program. It transmits communication packets to terminals and does not have a function to distribute the load on the server.

【0013】上記のように、様々なクライアント端末か
らの処理の要求で短時間に大きく変化していく負荷に対
して、現在のクライアント・サーバシステムやエージェ
ントプログラム技術では、その処理状態に依存しない継
続手続きを考慮した設計がなされておらず、対応しきれ
ているとは言い難い。
As described above, in the current client-server system and agent program technology, continuation that does not depend on the processing state is applied to a load that greatly changes in a short time due to processing requests from various client terminals. It is hard to say that it was not designed to take the procedure into account and was not able to handle it.

【0014】従って、本発明の目的は、上記従来技術の
問題点を解消し、サーバの負荷の時間変化も考慮に入
れ、サーバでの負荷が重くなったときに接続設定やパケ
ットのヘッダ情報の大規模な変更などの手続きを行うこ
となく、中途状態の処理を他のサーバに引き継げるよう
にすることで、簡単にサーバの有効利用を行えるように
することである。
[0014] Accordingly, an object of the present invention is to solve the above-mentioned problems of the prior art, taking into account the time change of the server load, and when the load on the server becomes heavier, the connection setting and the header information of the packet. The purpose of the present invention is to enable the effective use of a server to be easily performed by allowing another server to take over the processing in an intermediate state without performing a procedure such as a large-scale change.

【0015】[0015]

【課題を解決するための手段】上記目的を達成するため
請求項1の発明は、ネットワークを介して接続されてい
る双方向で通信可能な少なくとも1台のクライアント端
末と複数台のサーバから成り、上記クライアント端末の
要求する処理を実行中のサーバからそのサーバの負荷に
応じて他のサーバに上記処理を引き継がせる処理継続実
行手段を備えたことを要旨とする。
According to a first aspect of the present invention, there is provided a communication system comprising at least one client terminal capable of bidirectional communication and a plurality of servers connected via a network. The gist of the present invention is to provide a process continuation execution unit that allows another server to take over the above process from a server that is executing the process requested by the client terminal according to the load on the server.

【0016】請求項2の発明は、請求項1の発明におい
て、前記サーバには、実行可能な処理の負荷の閾値が設
定され、前記処理継続実行手段は実行中の処理の負荷が
上記閾値を越えた時、他のサーバへの処理の引き継ぎを
開始するようになっていることを要旨とする。
According to a second aspect of the present invention, in the first aspect of the present invention, a threshold value of an executable process load is set in the server, and the processing continuation executing means sets the load of the process being executed to the threshold value. The point is that when it exceeds the limit, it will start taking over the process to another server.

【0017】請求項3の発明は、請求項2の発明におい
て、前記処理継続実行手段は、前記閾値を越えない範囲
で前記他のサーバへ処理の引き継ぎを行わせるようにな
っていることを要旨とする。
According to a third aspect of the present invention, in the second aspect of the invention, the processing continuation executing means is configured to cause the other server to take over the processing within a range not exceeding the threshold value. And

【0018】請求項4の発明は、請求項1乃至3のいず
れかの発明において、前記処理継続実行手段は、前記サ
ーバの処理の負荷を検知し、サーバ間の負荷分散におけ
る中途状態の処理のサーバ間での引き継ぎを実行するエ
ージェントプログラムを有することを要旨とする。
According to a fourth aspect of the present invention, in any one of the first to third aspects of the present invention, the processing continuation executing means detects a processing load of the server, and executes processing in an intermediate state in load distribution between servers. The point is to have an agent program that executes takeover between servers.

【0019】請求項5の発明は、請求項1乃至4のいず
れかの発明において、前記クライアント端末が、前記サ
ーバに対して通信用パケットをカプセル化したパケット
を前記他のサーバに通信するようになっていることを要
旨とする。
According to a fifth aspect of the present invention, in any one of the first to fourth aspects of the present invention, the client terminal communicates a packet encapsulating a communication packet to the server to the other server. It is assumed that it has become.

【0020】請求項6の発明は、請求項5の発明におい
て、上記カプセル化したパケットは、前記サーバのアド
レスであるヘッダと処理用データから成る通信用パケッ
トを、送信データとしてカプセル化したものに前記他の
サーバのアドレスであるヘッダを付加して成ることを要
旨とする。
According to a sixth aspect of the present invention, in the fifth aspect of the present invention, the encapsulated packet is obtained by encapsulating, as transmission data, a communication packet including a header which is an address of the server and processing data. The gist of the invention is to add a header which is the address of the other server.

【0021】上述した各発明の構成により、接続中のサ
ーバの負荷が増大したときに、接続設定やパケットのヘ
ッダ情報の大規模な変更などの手続きを行うことなく、
中途状態の処理を他のサーバに引き継げることが可能と
なり、クライアント端末が接続するサーバを他の負荷の
軽いサーバに切り替えていくことが可能となり、サーバ
間で負荷を効率よく分散し、サーバ資源の有効利用を可
能とする。
With the configuration of each of the above-mentioned inventions, when the load on the connected server increases, the procedure for setting up the connection and changing the header information of the packet on a large scale is not performed.
Intermediate processing can be taken over by another server, the server connected to the client terminal can be switched to another server with a lighter load, the load can be efficiently distributed among the servers, and server resources can be saved. Enable effective use.

【0022】[0022]

【発明の実施の形態】本発明は、例えば、ネットワーク
を介して接続されている双方向で通信可能な複数のクラ
イアントと複数のサーバからなるサーバ・クライアント
型システムに適用される。このシステムはクライアント
端末と、前記クライアント端末からの要求に伴い処理を
行うことができる2台以上のサーバ(サーバ1、サーバ
2)がある。前記サーバ1が前記クライアント端末の要
求に基づく処理の実行中に、前記処理引継実行手段は、
前記サーバ1の負荷が増大したときに、前記サーバ1と
前記サーバ2との間で負荷を分散させる目的で、前記要
求に伴う処理を前記サーバ1から前記サーバ2に引き継
ぐ際に、前記サーバ1での処理状態に関わらず、前記サ
ーバ2に継続的に処理を引き継がせる。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS The present invention is applied to, for example, a server-client type system comprising a plurality of clients and a plurality of servers which can be communicated bidirectionally via a network. This system includes a client terminal and two or more servers (server 1 and server 2) that can perform processing in response to a request from the client terminal. While the server 1 is executing a process based on a request from the client terminal, the process takeover execution means:
When the load accompanying the request is taken over from the server 1 to the server 2 for the purpose of distributing the load between the server 1 and the server 2 when the load on the server 1 increases, the server 1 Irrespective of the processing state of the server 2, the server 2 continuously takes over the processing.

【0023】この場合すべてのサーバに耐えられる負荷
の閾値を設定し、現状の負荷の値が前記閾値を越えた時
に処理の引き継ぎを開始するようにしてもよい。また、
すべてのサーバにおいて、上記閾値とサーバ2の現状の
負荷の値を比較し、現状の負荷の値が前記閾値の値まで
達していないときは、前記閾値を超えない範囲でサーバ
2に処理の引き継ぎを引き受けさせるようにしてもよ
い。更に、前記手段は前記クライアント端末を使用して
いるユーザの代わりに、前記サーバの負荷を検知し、サ
ーバ間の負荷分散における中途状態の処理のサーバ間で
の引き継ぎを自動的に行うエージェントプログラムを有
するようにしてもよい。
In this case, a threshold value of a load that can withstand all servers may be set, and when the current load value exceeds the threshold value, the processing may be started. Also,
In all the servers, the threshold value is compared with the current load value of the server 2, and when the current load value does not reach the threshold value, the server 2 takes over the processing within a range not exceeding the threshold value. May be accepted. Further, the means may include an agent program which detects a load of the server on behalf of a user using the client terminal and automatically takes over the processing in the middle state in the load distribution between the servers between the servers. You may have it.

【0024】[0024]

【実施例】以下に本発明の分散サーバシステムの一実施
例について、図面により説明する。図1は本発明の分散
サーバシステムにおいて、クライアント−サーバ間をエ
ージェントが動いていく様子を示す。太い波線(10
5,110)は通信中を、実線(106〜109)はエ
ージェントプログラムの移動を表す。サーバA(10
1)とクライアントC(103)とがネットワーク10
4を介して通信中のときに(105)、サーバA(10
1)の負荷が閾値を越えたとする。クライアントC(1
03)にて、サーバA(101)と行っていた処理を継
続するため、サーバA(101)は、負荷を分散させる
ためサーバ間の処理の引き継ぎを行うことを通知するた
めにクライアントC(103)に他のサーバへの処理の
継続手続きを行うエージェントを発信する(106)。
エージェントを受け取ったクライアントC(103)は
事前に引き継ぎを行うかどうかを設定しておき、引き継
ぎを行うときはエージェントにクライアントの位置情報
を通知し、サーバA(101)にそのエージェントを引
き渡す(107)。エージェントを受け取ったサーバA
(101)は、クライアントC(103)から引き継ぎ
の依頼があったとき、サーバA(101)でそのとき行
っていた処理と現在までの処理の状態をあらわす処理変
数を取り込み、ネットワーク104上を探索し、エージ
ェントはサーバA(101)よりも負荷の状態が閾値ま
で余裕のあるサーバ(ここではサーバB(102)とす
る)を発見したら、サーバB(102)に処理変数とク
ライアントの位置情報を通知する(108)。エージェ
ントはサーバB(102)の位置情報(アドレス)を取
り込んで、クライアントC(103)に戻る(10
9)。クライアントC(103)はエージェントからサ
ーバB(102)の位置情報を取得し、サーバB(10
2)において処理の継続実行をする(110)。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the distributed server system of the present invention will be described below with reference to the drawings. FIG. 1 shows how an agent moves between a client and a server in the distributed server system of the present invention. Thick wavy line (10
5, 110) indicates that communication is in progress, and solid lines (106 to 109) indicate movement of the agent program. Server A (10
1) and the client C (103) are connected to the network 10
4 (105), the server A (10)
It is assumed that the load of 1) exceeds a threshold. Client C (1
03), the server A (101) continues the processing that was being performed with the server A (101), and the client A (103) notifies the client C (103) that the processing is to be taken over between the servers in order to distribute the load. ), An agent for performing a continuation procedure of processing to another server is transmitted (106).
The client C (103) that has received the agent sets in advance whether or not to take over, and when taking over, notifies the agent of the location information of the client, and hands over the agent to the server A (101) (107). ). Server A that received the agent
(101), when a request for takeover is received from the client C (103), the server A (101) fetches processing variables representing the processing being performed at that time and the state of the processing up to now, and searches the network 104. If the agent finds a server (here, the server B (102)) whose load status is more than the threshold value than the server A (101), the agent sends the processing variable and the position information of the client to the server B (102). Notification is made (108). The agent takes in the location information (address) of the server B (102) and returns to the client C (103) (10
9). The client C (103) acquires the position information of the server B (102) from the agent, and
In 2), the process is continuously executed (110).

【0025】図2は、エージェントプログラムのフロー
を示す。同図において、サーバAの負荷が許容された負
荷の閾値を超過すると(S201)、エージェントプロ
グラムはクライアントCに処理引き継ぎを行うことを通
知する(S202)。クライアントCは処理の引き継ぎ
を行うかどうかをあらかじめ決めておき(S203)、
引き継ぎを行わない場合はその旨をサーバAに通知する
(S204)。引き継ぎを行う場合、エージェントプロ
グラムは自動的にクライアントCのアドレスを取得しサ
ーバAに返信する(S205)。エージェントプログラ
ムはサーバAからそのときの処理状態を示す処理変数を
取得し(S206)、ネットワーク上のサーバの探索を
行う(S207)。ここで負荷が閾値まで余裕のあるサ
ーバが存在するかどうかの判断を行い(S208)、負
荷が閾値まで余裕のあるサーバBが存在した場合、サー
バBにクライアントCのアドレスと処理変数を通知し
(S209)、サーバBのアドレスを取得する(S21
0)。その後クライアントCに帰還し、クライアントC
がサーバBのアドレスを取得することでサーバBにおい
て処理の継続が行える(S211)。また負荷が閾値ま
で余裕のあるサーバが存在するかどうかの判断において
(S208)、負荷が閾値まで余裕のあるサーバが存在
しないときは、エージェントプログラムはサーバAに戻
り処理変数を差し戻す(S212)。その後エージェン
トプログラムはクライアントに送信されるが、このとき
アドレス情報を持たずに戻ってきており、このときはサ
ーバAで引き続き処理を行うことを意味する(S21
3)。
FIG. 2 shows the flow of the agent program. In the figure, when the load of the server A exceeds the allowable load threshold (S201), the agent program notifies the client C that the processing is to be taken over (S202). The client C determines in advance whether to take over the processing (S203),
If the handover is not performed, the server A is notified of the fact (S204). When taking over, the agent program automatically acquires the address of the client C and returns it to the server A (S205). The agent program acquires a processing variable indicating the processing state at that time from the server A (S206), and searches for a server on the network (S207). Here, it is determined whether or not there is a server with a sufficient load up to the threshold (S208). If there is a server B with a sufficient load up to the threshold, the server B is notified of the address and the processing variable of the client C. (S209), the address of the server B is obtained (S21)
0). Then returns to Client C, Client C
By acquiring the address of the server B, the server B can continue the processing (S211). When it is determined whether there is a server having a load with a margin up to the threshold (S208), if there is no server with a load with a margin up to the threshold, the agent program returns to the server A and returns the processing variable (S212). . Thereafter, the agent program is transmitted to the client, but at this time returns without having the address information, which means that the server A continues the processing (S21).
3).

【0026】上記の通り、本発明で用いられるエージェ
ントプログラムの内容は、サーバの負荷が設定されてい
る閾値を超過したときに、サーバは負荷分散のための処
理引き継ぎの通知をクライアントに行い、ユーザに代わ
ってクライアントのアドレスとそのサーバが生成した処
理変数を取り込み、ネット上を徘徊して負荷が閾値まで
余裕のあるサーバを探索し、もし存在するならクライア
ントのアドレスと処理変数を新しいサーバに通知し、存
在しなければ引き続き元のサーバへクライアントのアド
レスと処理変数の通知を行うステップを有している。
As described above, the content of the agent program used in the present invention is such that when the load on the server exceeds a set threshold value, the server notifies the client of the processing takeover for load distribution, Instead, it takes in the client address and the processing variables generated by that server, searches the network for a server with a load that can afford the threshold, and if present, notifies the new server of the client address and processing variables. If not, the method further includes a step of notifying the original server of the client address and the processing variable.

【0027】なお、上記処理変数はそれぞれサーバで処
理の引き継ぎが行えるように、その引き継ぎに必要とな
る情報である使用アプリケーション名、処理中のデー
タ、処理中の作業状態を数値データ化したものである。
この処理変数はサーバA,Bで共通のものとする。
Each of the above processing variables is a numerical data of an application name, data being processed, and a working state being processed, which are information required for the server to be able to take over the processing. is there.
This processing variable is common to the servers A and B.

【0028】図3は、サーバBに引き継いだ後の通信用
パケットのカプセル化のためのコーティングの例を示
す。サーバBに引き継がれた後において、処理用データ
34をクライアントが発信するとき、クライアント側で
今まで送っていたヘッダ情報31が付加されているパケ
ット36を送信データ35としてカプセル化し、サーバ
Bのヘッダ情報32を付加した新たなパケット33を生
成してサーバBに送信する。受け取ったサーバBでは受
信したパケット33から送信データ35を取得する。送
信データ35のヘッダ情報31から、処理用データ34
を元に処理の継続作業を行う。これにより、クライアン
ト側はアドレス変換などの手続きを行うことなく、サー
バAと通信していたパケットのヘッダ情報31をそのま
ま利用する形でサーバBと通信を行える。
FIG. 3 shows an example of a coating for encapsulating a communication packet after taking over to the server B. When the client sends out the processing data 34 after being handed over to the server B, the client 36 encapsulates the packet 36 to which the header information 31 that has been sent so far is added as transmission data 35, and A new packet 33 to which the information 32 is added is generated and transmitted to the server B. The server B that has received the transmission data 35 from the received packet 33. From the header information 31 of the transmission data 35, the processing data 34
Continuation of the processing based on the As a result, the client can communicate with the server B using the header information 31 of the packet communicated with the server A without performing a procedure such as address conversion.

【0029】上記の通りパケットのカプセル化を行うこ
とで、サーバBとの通信用パケットを得るようにすれ
ば、元の通信用のパケットに直接手を加える必要がな
い。これにより、処理の途中でサーバの変更が行われて
も、パケット情報は何ら変更されていないので、負荷の
状態によるサーバ間の処理の引き継ぎが行われ、サーバ
Aに送信中であったパケットが分断されてサーバBへ送
信されたとしても、元の通信用パケットのヘッダ情報を
元に送信の継続判断が行える。
As described above, if a packet for communication with the server B is obtained by encapsulating the packet, it is not necessary to directly modify the original packet for communication. As a result, even if the server is changed in the middle of the processing, the packet information is not changed at all, so that the processing between the servers is taken over according to the load state, and the packet being transmitted to the server A is Even if the data is divided and transmitted to the server B, the continuation of the transmission can be determined based on the header information of the original communication packet.

【0030】カプセル化されたパケットは、外側のパケ
ット情報32によってサーバBに送信された後、そのサ
ーバBがカプセル解除を行い、内部のパケットを読み取
って処理を行う。内部のパケット情報をサーバBが知る
ことができるので、サーバBはどのクライアントからの
サーバAでの処理を引き継いだかを判断することができ
る。
After the encapsulated packet is transmitted to the server B by the outer packet information 32, the server B decapsulates and reads the internal packet to perform processing. Since the server B can know the internal packet information, the server B can determine which client has taken over the processing in the server A.

【0031】[0031]

【発明の効果】以上説明した通り、本発明の分散サーバ
システムを用いれば、短時間で大きく変化する負荷の状
況に応じて、接続設定やパケットのヘッダ情報の大規模
な変更などの手続きを行うことなく、中途状態の処理を
他のサーバに引き継げることが可能となり、接続するサ
ーバを負荷の軽いサーバに切り換えていくことが可能と
なり、サーバ間で効率のよい負荷の分散が行え、サーバ
資源の有効利用を可能とする。
As described above, according to the distributed server system of the present invention, procedures such as connection setting and large-scale change of packet header information are performed in accordance with the load situation that changes greatly in a short time. Without interruption, it is possible to take over the processing in the middle state to another server, switch the connected server to a server with a lighter load, perform efficient load distribution between servers, and Enable effective use.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の一実施例における処理継続の流れを示
す図である。
FIG. 1 is a diagram showing a flow of processing continuation in one embodiment of the present invention.

【図2】上記実施例におけるエージェントプログラムの
フローチャートを示す図である。
FIG. 2 is a diagram showing a flowchart of an agent program in the embodiment.

【図3】上記実施例における移動後の処理用パケットの
カプセル化を示す概略図である。
FIG. 3 is a schematic diagram showing encapsulation of a processing packet after movement in the embodiment.

【符号の説明】[Explanation of symbols]

31 サーバAと、クライアントCに関するヘッダ情報 32 サーバBと、クライアントCに関するヘッダ情報 33 サーバBへの送信パケット 34 処理用データ 35 送信データ 36 サーバAへの送信パケット 101 サーバA 102 サーバB 103 クライアント端末C 104 ネットワーク 31 header information on server A and client C 32 header information on server B and client C 33 transmission packet to server B 34 processing data 35 transmission data 36 transmission packet to server A 101 server A 102 server B 103 client terminal C104 network

───────────────────────────────────────────────────── フロントページの続き (72)発明者 稲村 勝樹 東京都渋谷区神宮前6−27−8 株式会社 京セラディーディーアイ未来通信研究所内 Fターム(参考) 5B045 GG01 GG04 5B089 GA11 JA11 KA06 KB04  ────────────────────────────────────────────────── ─── Continuing on the front page (72) Inventor Katsuki Inamura 6-27-8 Jingumae, Shibuya-ku, Tokyo F-term in Kyocera D.I.

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 ネットワークを介して接続されている双
方向で通信可能な少なくとも1台のクライアント端末と
複数台のサーバから成り、上記クライアント端末の要求
する処理を実行中のサーバからそのサーバの負荷に応じ
て他のサーバに上記処理を引き継がせる処理継続実行手
段を備えたことを特徴とする分散サーバシステム。
1. A server, comprising at least one client terminal capable of bidirectional communication and a plurality of servers connected via a network, wherein a server executing a process requested by the client terminal loads the server. A processing continuation executing means for causing another server to take over the above processing in response to the request.
【請求項2】 前記サーバには、実行可能な処理の負荷
の閾値が設定され、前記処理継続実行手段は実行中の処
理の負荷が上記閾値を越えた時、他のサーバへの処理の
引き継ぎを開始するようになっていることを特徴とする
請求項1記載の分散サーバシステム。
2. A threshold value of an executable process load is set in the server, and the process continuation executing means takes over the process to another server when the load of the process being executed exceeds the threshold value. 2. The distributed server system according to claim 1, wherein the distributed server system is started.
【請求項3】 前記処理継続実行手段は、前記閾値を越
えない範囲で前記他のサーバへ処理の引き継ぎを行わせ
るようになっていることを特徴とする請求項2記載の分
散サーバシステム。
3. The distributed server system according to claim 2, wherein said processing continuation executing means causes the other server to take over the processing within a range not exceeding the threshold value.
【請求項4】 前記処理継続実行手段は、前記サーバの
処理の負荷を検知し、サーバ間の負荷分散における中途
状態の処理のサーバ間での引き継ぎを実行するエージェ
ントプログラムを有することを特徴とする請求項1乃至
3のいずれかに記載の分散サーバシステム。
4. The processing continuation execution means includes an agent program for detecting a processing load of the server and executing a transfer of a processing in an intermediate state between servers in load distribution between the servers. The distributed server system according to claim 1.
【請求項5】 前記クライアント端末が、前記サーバに
対して通信用パケットをカプセル化したパケットを前記
他のサーバに通信するようになっていることを特徴とす
る請求項1乃至4のいずれかに記載の分散サーバシステ
ム。
5. The server according to claim 1, wherein the client terminal communicates a packet encapsulating a communication packet to the server to the other server. A distributed server system as described.
【請求項6】 上記カプセル化したパケットは、前記サ
ーバのアドレスであるヘッダと処理用データから成る通
信用パケットを、送信データとしてカプセル化したもの
に前記他のサーバのアドレスであるヘッダを付加して成
ることを特徴とする請求項5記載の分散サーバシステ
ム。
6. The encapsulated packet is obtained by encapsulating, as transmission data, a communication packet including a header, which is an address of the server, and processing data, and adding a header, which is an address of the other server, to transmission data. 6. The distributed server system according to claim 5, comprising:
JP2001085584A 2001-03-23 2001-03-23 Distributed server system Expired - Fee Related JP4712995B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001085584A JP4712995B2 (en) 2001-03-23 2001-03-23 Distributed server system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001085584A JP4712995B2 (en) 2001-03-23 2001-03-23 Distributed server system

Publications (2)

Publication Number Publication Date
JP2002288148A true JP2002288148A (en) 2002-10-04
JP4712995B2 JP4712995B2 (en) 2011-06-29

Family

ID=18941070

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001085584A Expired - Fee Related JP4712995B2 (en) 2001-03-23 2001-03-23 Distributed server system

Country Status (1)

Country Link
JP (1) JP4712995B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412801B2 (en) 2003-08-08 2013-04-02 Onkyo Corporation Network AV system
US9973575B2 (en) 2014-03-31 2018-05-15 Fujitsu Limited Distributed processing system and control method
CN111506429A (en) * 2020-04-21 2020-08-07 江西省机电设备招标有限公司 Multi-bidding task parallel management system and bidding method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152699A (en) * 1993-11-29 1995-06-16 Canon Inc Method, device and system for information processing
JPH1069467A (en) * 1996-08-27 1998-03-10 Toshiba Corp Data access system for server in distributed computer system
JPH1084385A (en) * 1996-09-10 1998-03-31 Nippon Telegr & Teleph Corp <Ntt> Communication connection device with servers and communication connection method
JP2000155736A (en) * 1998-11-24 2000-06-06 Nec Corp Method for distributing service request and address converting device

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152699A (en) * 1993-11-29 1995-06-16 Canon Inc Method, device and system for information processing
JPH1069467A (en) * 1996-08-27 1998-03-10 Toshiba Corp Data access system for server in distributed computer system
JPH1084385A (en) * 1996-09-10 1998-03-31 Nippon Telegr & Teleph Corp <Ntt> Communication connection device with servers and communication connection method
JP2000155736A (en) * 1998-11-24 2000-06-06 Nec Corp Method for distributing service request and address converting device

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8412801B2 (en) 2003-08-08 2013-04-02 Onkyo Corporation Network AV system
US9973575B2 (en) 2014-03-31 2018-05-15 Fujitsu Limited Distributed processing system and control method
CN111506429A (en) * 2020-04-21 2020-08-07 江西省机电设备招标有限公司 Multi-bidding task parallel management system and bidding method

Also Published As

Publication number Publication date
JP4712995B2 (en) 2011-06-29

Similar Documents

Publication Publication Date Title
US11418620B2 (en) Service request management
RU2595752C2 (en) Multichannel connections in file system sessions
US8788665B2 (en) Method and system for optimizing a network by independently scaling control segments and data flow
WO2018133454A1 (en) Method for controlling remote service access path, and relevant apparatus
EP3352428B1 (en) Load sharing method and system
US20120331160A1 (en) Multi-path transmission control protocol proxy service
US8463880B2 (en) Method and system for removing a tunnel between portal points
EP2566135A1 (en) Cloud-based mainframe integration system and method
US8601139B2 (en) Multiple core session initiation protocol (SIP)
JP2002051086A (en) Gatekeeper and load distributing method therefor
JP2008525132A (en) Mobile online game system and communication method between mobile game terminals
EP1244262A1 (en) Redirection of client requests
JP2008293492A (en) Intelligent failback in load-balanced network environment
JP2017517220A (en) OpenFlow communication method and system, control unit, and service gateway
US20150127837A1 (en) Relay apparatus and data transfer method
CN112468529A (en) Session management method and device
RU2317650C2 (en) Communication system, computer-filter of messages of equivalent nodes and method for processing messages from equivalent nodes
WO2008079414A1 (en) Protocol-neutral channel-based application communication
WO2023116165A1 (en) Network load balancing method and apparatus, electronic device, medium, and program product
JP2002288148A (en) Distributed server system
JP2002118568A (en) Distributed server system
JP2003115795A (en) Communication system, server for use therein, agent control method, agent control program
JP6616452B2 (en) Adding a communication session via a host in a new denial of service mode
CN114025016B (en) Data forwarding method, device and storage medium
WO2017206644A1 (en) Method and device for controlling load balancing of uplink home gateway

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20040908

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20070906

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080227

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100601

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100802

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110315

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110324

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees