WO2009123078A1 - Information processing device, extension card, load distribution method, and load distribution control program - Google Patents

Information processing device, extension card, load distribution method, and load distribution control program Download PDF

Info

Publication number
WO2009123078A1
WO2009123078A1 PCT/JP2009/056419 JP2009056419W WO2009123078A1 WO 2009123078 A1 WO2009123078 A1 WO 2009123078A1 JP 2009056419 W JP2009056419 W JP 2009056419W WO 2009123078 A1 WO2009123078 A1 WO 2009123078A1
Authority
WO
WIPO (PCT)
Prior art keywords
server
servers
sessions
frame
load distribution
Prior art date
Application number
PCT/JP2009/056419
Other languages
French (fr)
Japanese (ja)
Inventor
越智則員
Original Assignee
日本電気株式会社
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 日本電気株式会社 filed Critical 日本電気株式会社
Publication of WO2009123078A1 publication Critical patent/WO2009123078A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Definitions

  • the present invention relates to an information processing apparatus, an expansion card, a load distribution method, and a load distribution control program that perform load distribution processing for distributing the load on a server.
  • requests sent from multiple clients over a network are processed by a server.
  • a load distribution device that reduces the load on the server by distributing the access to the server is generally provided between the client and the server.
  • Patent Document 1 A load distribution device for distributing the server load is described in, for example, Japanese Patent Application Laid-Open No. 2002-351 760 (hereinafter referred to as “Patent Document 1”).
  • the server load distribution device described in Patent Document 1 includes a session management table that records information related to a session and information related to a server in association with each other.
  • the server load balancer monitors network traffic to detect session status and records information about the session in the session management table.
  • the server load balancer selects an optimal server for each session based on the session management table. For example, the server load balancer selects the server with the smallest number of assigned sessions when selecting the optimum server.
  • the server load is efficiently distributed by the method described above. Disclosure of the invention
  • the processor is occupied by the load balance process of the server, which is the main process. Therefore, the load balancer can be used as a computer for other processes besides load balance. When used, the processing efficiency is very poor.
  • installing an expansion card may expand the functions of the computer or add new functions.
  • Patent Document 2J describes a packet communication card.
  • a load balancer as a computer equipped with an expansion card equipped with a network interface function.
  • the expansion card for example, a card compliant with a standard bus standard for connecting a peripheral device to a computer such as CKPeripheral Component Interconnect) Express (registered trademark of PCI SIG (Special Interest Group)) is used.
  • the expansion card functions as an Io device on the CPU bus of the computer as the main device.
  • the expansion card is generally used for the purpose of speeding up the main device by assisting the CPU of the main device.
  • the above expansion card is used for the purpose of speeding up the main device.
  • the processing process for the network' interface is handed over to the main unit processor. For this reason, when using an expansion platform equipped with a network interface, the processing speed of the processor of the main device is reduced.
  • an expansion card with a network interface installed in a computer and having a load distribution function has not yet been provided by any card vendor.
  • the present invention has been made in view of the problems of the related art as described above, and the server load distribution processing can be executed by an expansion force without applying a load to the main processing unit of the information processing apparatus. It is an object of the present invention to provide an information processing apparatus, a load balancing expansion force, a load balancing method, and a load balancing control program.
  • the information processing apparatus of the present invention includes main processing means and an expansion card that performs load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the main processing means.
  • the expansion card of the present invention is connected to an information processing apparatus including main processing means, and performs load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the main processing means.
  • the load distribution method according to the present invention performs load distribution processing for distributing a plurality of frames to a plurality of servers using a predetermined expansion card without using processing by an information processing apparatus connected to the expansion card.
  • the load distribution program of the present invention executes a load distribution process that distributes a plurality of frames to a plurality of servers without using the processing performed by the information processing device to a computer mounted on an expansion card connected to the information processing device.
  • FIG. 1 is a block diagram showing the configuration of a computer according to the first embodiment of this invention.
  • FIG. 2 is a block diagram showing the configuration of an expansion card attached to a computer according to the first embodiment of the present invention.
  • FIG. 3 is a flowchart for explaining the operation of the process processing unit of the expansion card according to the first embodiment of the present invention.
  • FIG. 4 is a diagram illustrating a configuration example of the port number table of the frame extraction unit in the process processing unit of the expansion card according to the first embodiment.
  • FIG. 5 is a diagram illustrating a configuration example of the number of sessions count table of the destination determination processing unit in the process processing unit of the expansion card according to the first embodiment.
  • FIG. 6 is a block diagram illustrating an example of the hardware configuration of the expansion card according to the first embodiment.
  • FIG. 7 is a block diagram showing only the configuration essential for the computer of the first embodiment.
  • FIG. 8 is a diagram illustrating a network configuration that realizes load distribution in the expansion card according to the fifth embodiment.
  • FIG. 1 shows the configuration of a computer according to the first embodiment of the present invention.
  • the computer 10 includes a CPU 20, a memory 30, a PCI bus 40, and an expansion card 50.
  • the PCI bus 40 is a PCI Express bus or a normal PCI bus.
  • the CPU 20 and the memory 30 constitute a main processing unit 80 that is a computer that executes various functions provided by the computer 10.
  • a program for providing various functions stored in a storage device (not shown) is loaded into the memory 30.
  • the CPU 20 implements a predetermined function by reading and executing the program.
  • the expansion card 50 performs a load distribution process that distributes the load on the server in the transport layer that applies and removes the load on the CPU 20. That is, the expansion card 50 does not use the processing of the CPU 20. 09 056419
  • the expansion card 50 performs all processes necessary for load distribution.
  • the expansion card 50 has an interface conforming to a PCI bus standard such as PCI Express.
  • the expansion force 50 is connected to the PCI bus 40 of the computer 10 which is the main device through this interface.
  • the expansion card 50 includes a process processing unit 60 that executes load distribution processing and a network interface unit 70 that connects to a server or the like via an external network.
  • the computer 10 is connected to the servers 201, 202, 203 and the client 300 on the network 100 via the network interface unit 70 of the expansion card 50.
  • the configuration of the process processing unit 60 of the expansion card 50 is shown in FIG.
  • the process processing unit 60 includes an address-filter unit 61, a frame extraction unit 62, a destination determination processing unit 63, and an address assignment unit 64.
  • the function of each component included in the process processing unit 60 will be described in detail when the operation of the process processing unit 60 is described.
  • FIG. 3 is a flowchart for explaining the operation in the process processing unit of the expansion card according to the first embodiment of the present invention.
  • the process processing unit 60 includes an address filter unit 61 and an address assignment unit 64 that perform processing in the network layer, and a frame extraction unit 62 and a destination determination processing unit 63 that perform processing in the transport layer. .
  • the process processing unit 60 filters the address of the network layer included in the frame by the address' filter unit 61, and receives only the frame addressed to the expansion card 60 (step S101).
  • the “frame” is, for example, an IP (Internet Protocol) packet or the like.
  • IP Internet Protocol
  • the filtering of the network layer address is the process of receiving only the frame that matches the IP address assigned to the expansion card 50, which is the destination IP address included in the received frame. It is.
  • the frame extraction unit 62 determines whether or not the received frame is a frame indicating a session start (hereinafter referred to as “session start frame”) (step S102).
  • session start frame is a frame in which a synchronization (SYN (synchronization)) flag is set.
  • the frame extraction unit 62 includes a port number table 6 2 a. If the received frame is a session start frame, the frame extraction unit 62 determines whether the data 'flow identifier and T JP2009 / 056419
  • the identifier of the port number is extracted. Then, the frame extraction unit 62 registers the port number for each session in the port number table 62a (step S103), and sends the received frame to the destination determination processing unit 63.
  • Data 'flow means a series of frames having the same source and destination. In order to identify the data flow, an identifier for data flow identification may be included in the frame. Alternatively, the data 'flow can be identified using a combination of port number and address. In this embodiment, it is assumed that an identifier for data-flow identification is included in a frame.
  • a configuration example of the port number table 62a is shown in FIG. As shown in FIG. 4, port numbers are registered in the port number table 62a in association with the session identification information of the currently connected session.
  • the destination determination processing unit 63 includes a session count count table 63a that counts the number of sessions in the service for each target server that is the target of load distribution.
  • the destination determination processing unit 63 refers to the “session number count” table 63a and selects “target“ server ”from the servers 201, 202, and 203 based on the number of sessions (step S104). For example, among the servers 201, 202, and 203, the number of sessions is selected as the target server.
  • the ⁇ target “server” is a server selected by the destination determination processing unit 63 as the destination of the frame received by the expansion card 60.
  • the destination determination processing unit 63 after selecting the target server, increments the number of sessions corresponding to the selected server in the session count table '63a by 1 (step S1 05). Note that the number of sessions in the session count 'table 63a counts the number of sessions in service on each server, so the increment when incrementing the number of sessions is not limited to "!. Any constant value may be used.
  • the selection criterion for the target 'server is' J with the minimum number of sessions in service /, 'is the target-target /,'.
  • Other criteria may be used as the selection criterion for /.
  • the selection criterion for the target 'server may be' the server with the number of sessions in the service 'being less than or equal to a predetermined value as the target' server '.
  • the selection criterion for the target server may be “a server whose number of sessions in service is equal to or less than a predetermined value and whose number of sessions in service is decreasing is set as a target“ server ”. The case of setting the target server selection criteria in this way will be described after the description of the processing content of step S1 13 described later.
  • the address assigning unit 64 force assigns the address of the target server selected by the destination determination processing unit 63 to the destination of the received frame (step S106), and passes through the network 'interface unit 60. 09 056419
  • step S1 07 To transfer to the destination network (step S1 07).
  • the frame extraction unit 62 determines whether the received frame is a frame indicating session disconnection (hereinafter referred to as “session disconnect frame J”).
  • session disconnect frame J a frame indicating session disconnection
  • step S108 for example, in the case of the TCP protocol, a frame with the end (nN (finalization)) flag set is fo.
  • the frame extraction unit 62 marks the corresponding session identification information in the held port number table 62. Then, the frame extraction unit 62 activates a timer (not shown) that counts the time until the corresponding session information is deleted (step S 1 09), and sends the received session disconnect frame to the destination determination processing unit 63.
  • step S1 08 If it is determined in step S1 08 that the frame is a session disconnection frame, the destination determination processing unit 63 sets in advance to decrement the number of sessions corresponding to the identification information of the target server corresponding to the frame by one. The previously set timer (not shown) is started (step S1 1 0). The address assigning unit 64 transfers the session disconnect frame to the connection destination without changing the address (step S11 1 1).
  • the frame extraction unit 62 When the frame extraction unit 62 receives a response frame before the timer power ⁇ timeout, the frame extraction unit 62 deletes the corresponding session information in the port number table 62a at that time. Alternatively, if the response frame of the corresponding session is not received until the timer times out, the frame extraction unit 62 deletes the corresponding session information in the port number table 62a when time-out occurs (step S 1 1 2).
  • the destination determination processing unit 63 When receiving a response frame before the timer times out, the destination determination processing unit 63 decrements the number of sessions of the destination server of the corresponding session disconnection frame in the session count count table 63a by one. . Alternatively, if the response frame of the corresponding session is not received until the timer times out, the destination determination processing unit 63 determines the number of sessions of the destination server of the session disconnection frame in the session count count table 63a at the time of timeout. Is decremented by 1 (step S1 1 3).
  • the target 'server selection criteria described above is “When the number of sessions in service is less than the specified value and the number of sessions in service is decreasing is set to J, which is the target' server. As described above, in step S1 13, when a predetermined condition is satisfied, the number of sessions in service is decremented, and at this time, the number of sessions in service is decremented. PT / JP2009 / 056419
  • a flag indicating a decrease in the number of services may be added. Then, in the process of S104, a server whose number of sessions in service is equal to or less than a predetermined value and whose flag indicates a decrease in the number of services may be set as a target server.
  • step S108 if the received frame is not a session disconnection frame, the process without performing any process is terminated.
  • the frame extraction unit 62 does not store the port numbers of the corresponding frames. Similarly, for these frames, the destination determination processing unit 63 does not perform the session count processing.
  • the expansion card 50 can be realized by a hardware configuration similar to that of a general computer. That is, the expansion card 50 includes a CPU 401, a main storage unit 402, a network interface unit 70, an input / output interface unit 404, an auxiliary storage unit 405, and a system bus 406 that interconnects the above components.
  • the main storage unit 402 is configured using a RAM (Random Access Memory) or the like, and is used as a data work area or a temporary data save area.
  • the input / output interface unit 404 is connected to an external device to transmit / receive data.
  • the auxiliary storage unit 405 includes a hard disk composed of a nonvolatile memory such as a ROM (Read Only Memory), a magnetic disk, and a semiconductor memory, and is connected to a CPU or the like via the input / output interface 404. Yes.
  • the auxiliary storage unit 405 may be provided in the expansion card 50.
  • the expansion card 50 realizes its operation in hardware by using circuit components such as LSI (Large Scale Integration) that incorporates hardware that realizes the functions of the process processing unit 60. Can do.
  • LSI Large Scale Integration
  • it can be realized by software processing using a CPU. That is, by storing a program for realizing the functions of the process processing unit 60 in the auxiliary storage unit 405, loading the program into the main storage unit 402 and executing it by the CPU 401, the functions of the process processing unit 60 are implemented in software. It can also be realized.
  • the expansion card 50 may be provided with a storage device such as a ROM incorporating this program. In this case, if the access time of the storage device is sufficiently short, it is not always necessary to load the program into the main storage unit 402.
  • the computer according to the present embodiment is connected to the network using the network interface unit 70 provided in the installed expansion card. Then, the process processing unit included in the expansion card selects a destination server to which the frame is transmitted, and transfers a necessary frame to the selected server. Therefore, the load on each server can be distributed without occupying the CPU of the computer that is the main device. At this time, since the CPU in the computer is not occupied, it is possible to use the CPU for other processes while executing load balancing of the server.
  • the computer transfers the session start frame to a server with a small number of sessions.
  • a client requesting processing from a server can access the server in charge of processing using a single destination address.
  • the target server is selected based on the number of sessions in service of each server.
  • the number of sessions is only used as a measure of the load status of each server, that is, the weight of processing load. Therefore, the scale indicating the load status of each server may be other than the number of sessions in service.
  • the success rate of access to the server, the response speed from the server, etc. can be used as the above measure.
  • the network is an example of a connection form of a communication path for communicating between the information processing apparatus, the client, and the server. Therefore, the network topology is arbitrary. Furthermore, any connection form can be used as long as it is a communication path capable of performing communication between the information processing apparatus and the client server.
  • FIG. 7 is a block diagram showing only the configuration essential for the computer of the first embodiment.
  • the computer 10 includes a main processing unit 80 and an expansion card 50.
  • the expansion card 50 is connected to the main processing unit 80.
  • the main processing unit 80 performs main processing, which is the original processing of the computer 10 as a computer, for example, execution of an application program.
  • the main processing unit 80 can be configured using, for example, the CPU 20 and the memory 30.
  • the expansion force 50 performs the load distribution process described above.
  • the expansion card 50 can be configured using, for example, a CPU and a memory without including a special block like the process processing unit 60. In this case, the expansion card 50 performs the load distribution process shown in the flowchart of FIG. To do. Further, the expansion card 50 may not include a block for connecting to a network such as the network 'interface unit 70. In this case, the expansion card 50 may be provided with an appropriate communication means that can communicate with the client and the server. Of course, the expansion card 50 may include a process processing unit 60 and a network 'interface unit 70. Since the operation of the load balancing process is as described above, the description is omitted.
  • the expansion card has a communication means, selects a destination server that transmits the received frame, that is, a target server, and transfers the received frame to the selected server. Therefore, it is possible to distribute the load to individual servers without using the CPU of the computer that is the main device. Therefore, the CPU can be used for other processes while performing server load balancing.
  • the configurations of the computer 10 and the expansion card 50 of the second embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG.
  • the frame extraction unit 62 of the process processing unit 60 of the second embodiment has a function that is not provided in the frame extraction unit 62 of the first embodiment. That is, the frame extraction unit 62 of the second embodiment has a function of temporarily marking the corresponding session identification information and port number in the port number table 62a when a certain session start frame is received. Then, the frame extraction unit 62 has a function of detecting a failure in access to the target session start server corresponding to the marked session at a specific time interval.
  • the destination determination processing unit 63 of the second embodiment also has a function that is not provided in the destination determination processing unit 63 of the first embodiment.
  • the destination determination processing unit 63 of the second embodiment when a failure to access the selected target server is detected, counts the number of sessions “target the server with the next smallest number of sessions from the table 63 a”. Select as a server. At this time, the destination determination processing unit 63 discards the frame that has failed to be accessed without transferring it again. Then, as a retry of access to the target “server”, the destination determination processing unit 63 sends from the address adding unit 64 a frame provided with the address of the newly selected target “server” as the destination.
  • the computer according to the second embodiment has a function of detecting a failure in access to the target server, selecting a new target-server, and performing a retry. Therefore, since the server with some problem is not used as the target 'server', the access to the target 'server is successful. This has the effect of increasing the possibility of
  • the configurations of the computer 10 and the expansion card 50 according to the third embodiment are the same as the configurations of the first embodiment shown in FIGS. 1 and 2, and a description thereof will be omitted.
  • the frame extraction unit 62 of the process processing unit 60 of the third embodiment has a function that is not provided in the frame extraction unit 62 of the first embodiment. That is, when receiving a session start frame, the frame extraction unit 62 of the third embodiment temporarily maps the corresponding session identification information and port number in the port number table 62a. Then, the frame extraction unit 62 starts a timer that counts a preset time.
  • the destination determination processing unit 63 of the third embodiment also has a function that is not provided in the destination determination processing unit 63 of the first embodiment. That is, when the timer started by the frame extraction unit 62 times out without a response from the target 'server', the destination determination processing unit 63 of the third embodiment starts from the number of sessions count 'table 63a. Next, select the server with the least number of sessions as the target server. Then, the destination determining unit 63 'in driven, the target' time to send a retry access to the server, to the newly selected target 'directed to the server, a session start frame P
  • the computer detects a delay in the response from the target server, and when the response is delayed for a predetermined time or longer, newly selects the target server and performs a retry. It has a function. Therefore, since a server with a slow response never becomes a target 'server', there is an effect that a target 'server with a quick response can be selected.
  • a computer 10 according to a fourth embodiment of the present invention will be described.
  • the configurations of the computer 10 and the expansion card 50 of the fourth embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG. 2, and a description thereof will be omitted.
  • the destination determination processing unit 63 selects a server having the smallest number of sessions as a target-server.
  • the destination determination processing unit 63 detects the load state of the server based on the change in the response time from the server, and registers the load state together with the number of sessions for each server. Then, based on the load state and the number of sessions, the destination determination processing unit 63 selects and forwards the target's server as the destination of the frame of the corresponding session. For example, If the response time is getting longer, it can be determined that the load on the server is already heavy at that time, or that the load is increasing. Therefore, a server with a light load or a server with a low load may be selected as the target server.
  • the computer according to the fourth embodiment selects a server based on the load state and the number of sessions based on the change in the length of the response time from the target server. Therefore, there is an effect that it is possible to select the target server predicting the load state of the server.
  • a computer 10 according to a fifth embodiment of the present invention will be described.
  • the configurations of the computer 10 and the expansion card 50 of the fifth embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG. 2, and a description thereof will be omitted.
  • Load balancing can also be performed on a server that provides session services using the TCP or SCTP protocol.
  • load distribution can be realized even when a session service is provided by the SCTP protocol in a network as shown in FIG. 8, for example. .
  • the first to fifth embodiments can be combined.
  • the third and fourth embodiments it is possible to select a server with a slow response, or a server with a heavy load or an increase, without selecting it as a target server. Good.
  • combinations of other embodiments are possible.
  • the computer according to the sixth embodiment of the present invention is a computer having an I / O interface for mounting an expansion card, and is a network that transmits and receives frames between the client and the server via the expansion card power and the network.
  • the expansion card of the seventh embodiment of the present invention is an expansion card that is attached to the IZO interface of a computer.
  • Network interface unit that transmits and receives frames between the client and server via the network, and a process processing unit that distributes the load on the server without imposing a load on the computer processor .
  • the load distribution method according to the eighth embodiment of the present invention is a load distribution method in an expansion card attached to an IZO interface of a computer.
  • the load distribution method is performed via a network.
  • the load distribution program according to the ninth embodiment of the present invention is a load distribution program that is executed by an expansion card installed in an IO interface of a computer. Processing to send and receive frames between the client and server via the network and process processing to distribute the server load without applying a load to the computer processor in the process processing unit of the expansion card are executed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Provided is an information processing device which can execute a load distribution process without applying a load on a main process unit of an information processing device. The information processing device includes: a main process means; and an extension card which executes a load distribution process without using a process by the main process means.

Description

明細書 情報処理装置、拡張カード、負荷分散方法及び負荷分散制御プログラム 技術分野  Information processing apparatus, expansion card, load distribution method, and load distribution control program
本発明は、サーバの負荷を分散する負荷分散処理を行う情報処理装置、拡張カード、負荷分 散方法及び負荷分散制御プログラムに関する。 背景技術  The present invention relates to an information processing apparatus, an expansion card, a load distribution method, and a load distribution control program that perform load distribution processing for distributing the load on a server. Background art
あるシステムでは、ネットワークを介して複数のクライアントから送信される要求をサーバで処 理する。このようなシステムでは、一般的に、クライアントとサーバとの間に、サーバに対するァ クセスを分散することによってサーバの負荷を軽減する負荷分散装置が設けられる。  In some systems, requests sent from multiple clients over a network are processed by a server. In such a system, a load distribution device that reduces the load on the server by distributing the access to the server is generally provided between the client and the server.
サーバの負荷を分散するための負荷分散装置は、例えば、特開 2002— 351 760号(以降、 「特許文献 1」という。)に記載されている。  A load distribution device for distributing the server load is described in, for example, Japanese Patent Application Laid-Open No. 2002-351 760 (hereinafter referred to as “Patent Document 1”).
この特許文献 1に記載されたサーバ負荷分散装置は、セッションに関する情報とサーバに関 する情報を対応付けて記録するセッション管理テーブルを備える。そのサーバ負荷分散装置は、 ネットワークのトラフィックを監視してセッションの状況を検出し、セッションに関する情報をセッ シヨン管理テーブルに記録する。さらに、そのサーバ負荷分散装置は、クライアントからのセッ シヨン開始の要求があると、セッション管理テーブルに基づいてセッション毎に最適なサーバを 選択する。例えば、そのサーバ負荷分散装置は、最適なサーバを選択するときに、割り当てら れたセッション数が最小であるサーバを選択する。以上のような方法によって、効率的なサ一 バの負荷分散が行われる。 発明の開示  The server load distribution device described in Patent Document 1 includes a session management table that records information related to a session and information related to a server in association with each other. The server load balancer monitors network traffic to detect session status and records information about the session in the session management table. In addition, when there is a session start request from a client, the server load balancer selects an optimal server for each session based on the session management table. For example, the server load balancer selects the server with the smallest number of assigned sessions when selecting the optimum server. The server load is efficiently distributed by the method described above. Disclosure of the invention
特許文献"!に記載された負荷分散装置では、メインの処理であるサーバの負荷分散処理に プロセッサが占有される。そのため、その負荷分散装置を、コンピュータとして、負荷分散以外 の他の処理にも利用する場合、処理の効率が非常に悪くなる。  In the load balancer described in the patent document "!", The processor is occupied by the load balance process of the server, which is the main process. Therefore, the load balancer can be used as a computer for other processes besides load balance. When used, the processing efficiency is very poor.
この種のコンピュータでは、拡張カードを装着することにより、コンピュータの持つ機能を拡張 したり、新たな機能を付加したりすることがある。  In this type of computer, installing an expansion card may expand the functions of the computer or add new functions.
例えば、 WO2005/01 5851号(以降、「特許文献 2Jという。 )には、パケット通信用カード 9 For example, WO2005 / 01 5851 (hereinafter referred to as “Patent Document 2J”) describes a packet communication card. 9
2  2
と CPU (Central Processing Unit)を備える、ネットワーク-ノードが記載されている。しかし、この ネットワーク■ノードは、サーバへの負荷分散を行うことはできない。 And a network node with a CPU (Central Processing Unit). However, this network node cannot perform load distribution to servers.
また、また、ネットワーク'インタフェースの機能を備える拡張カードを装着したコンピュータとし ての、負荷分散装置もある。拡張カードとしては、例えば、 P CKPeripheral Component Interconnect) Express (PCI SIG (Special Interest Group)の登録商標)等の、コンピュータに周辺 装置を接続するための標準バス規格に準拠したカードが用いられる。このような負荷分散装置 の場合、拡張カードは、メイン装置としてのコンピュータの CPUバス上の I oデバイスとして機 能する。このように、一般的に、拡張カードは、メイン装置の CPUを補助することによるメイン装 置の高速化を目的として使用される。  There is also a load balancer as a computer equipped with an expansion card equipped with a network interface function. As the expansion card, for example, a card compliant with a standard bus standard for connecting a peripheral device to a computer such as CKPeripheral Component Interconnect) Express (registered trademark of PCI SIG (Special Interest Group)) is used. In such a load balancer, the expansion card functions as an Io device on the CPU bus of the computer as the main device. As described above, the expansion card is generally used for the purpose of speeding up the main device by assisting the CPU of the main device.
上記の拡張カードは、メイン装置の高速化を目的として使用される。ネットワーク'インタフエ一 スを備える拡張カードにおける処理の場合には、ネットワーク 'インタフェースのための処理プロ セスがメイン装置のプロセッサに引き継がれる。そのため、ネットワーク 'インタフェースを備え る拡張力一ドを使用する場合、メイン装置のプロセッサの処理速度が低下するという問題があ つた。  The above expansion card is used for the purpose of speeding up the main device. In the case of processing on an expansion card with a network 'interface, the processing process for the network' interface is handed over to the main unit processor. For this reason, when using an expansion platform equipped with a network interface, the processing speed of the processor of the main device is reduced.
また、コンピュータに装着するネットワーク'インタフェース付きの拡張カードであって、負荷分 散処理の機能を備えるものは、未だいずれのカード'ベンダーからも提供されていない。  In addition, an expansion card with a network interface installed in a computer and having a load distribution function has not yet been provided by any card vendor.
本発明は、上述のような関連技術の課題に鑑みてなされたもので、情報処理装置のメイン処 理部に負荷をかけることなぐ拡張力一ドによってサーバの負荷分散処理を実行することができ る情報処理装置、負荷分散用拡張力一ド、負荷分散方法及び負荷分散制御プログラムを提供 することを目的としている。  The present invention has been made in view of the problems of the related art as described above, and the server load distribution processing can be executed by an expansion force without applying a load to the main processing unit of the information processing apparatus. It is an object of the present invention to provide an information processing apparatus, a load balancing expansion force, a load balancing method, and a load balancing control program.
本発明の情報処理装置は、メイン処理手段と、複数のフレームを複数のサーバへ分配する 負荷分散処理をメイン処理手段による処理を用いずに行う拡張カードを備える。  The information processing apparatus of the present invention includes main processing means and an expansion card that performs load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the main processing means.
本発明の拡張カードは、メイン処理手段を備える情報処理装置に接続され、複数のフレーム を複数のサーバへ分配する負荷分散処理を、メイン処理手段による処理を用いずに行う。 本発明の負荷分散方法は、所定の拡張カードを用いて、複数のフレームを複数のサーバへ 分配する負荷分散処理を、拡張カードを接続する情報処理装置による処理を用いずに行う。 本発明の負荷分散プログラムは、情報処理装置に接続される拡張カードに搭載されたコンビ ユータに、情報処理装置による処理を用いずに、複数のフレームを複数のサーバへ分配する 負荷分散処理を実行させる。  The expansion card of the present invention is connected to an information processing apparatus including main processing means, and performs load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the main processing means. The load distribution method according to the present invention performs load distribution processing for distributing a plurality of frames to a plurality of servers using a predetermined expansion card without using processing by an information processing apparatus connected to the expansion card. The load distribution program of the present invention executes a load distribution process that distributes a plurality of frames to a plurality of servers without using the processing performed by the information processing device to a computer mounted on an expansion card connected to the information processing device. Let
本発明の情報処理装置、負荷分散用拡張カード、負荷分散方法及び負荷分散制御プログラ 2009/056419 Information processing apparatus, load distribution expansion card, load distribution method, and load distribution control program of the present invention 2009/056419
3  Three
ムには、情報処理装置のメイン処理部に負荷をかけることなぐ拡張カードによってサーバの負 荷分散処理を実行することができるという効果がある。 図面の簡単な説明 This has the effect that the load distribution processing of the server can be executed by an expansion card that does not put a load on the main processing unit of the information processing apparatus. Brief Description of Drawings
図 1は、本発明の第 1の実施形態の、コンピュータの構成を示すブロック図である。  FIG. 1 is a block diagram showing the configuration of a computer according to the first embodiment of this invention.
図 2は、本発明の第 1の実施形態の、コンピュータに装着される拡張カードの構成を示すプロ ック図である。  FIG. 2 is a block diagram showing the configuration of an expansion card attached to a computer according to the first embodiment of the present invention.
図 3は、本発明の第 1の実施形態の、拡張カードのプロセス処理部における動作を説明する フローチャートである。  FIG. 3 is a flowchart for explaining the operation of the process processing unit of the expansion card according to the first embodiment of the present invention.
図 4は、第 1の実施形態の、拡張カードのプロセス処理部におけるフレーム抽出部のポート番 号テーブルの構成例を示す図である。  FIG. 4 is a diagram illustrating a configuration example of the port number table of the frame extraction unit in the process processing unit of the expansion card according to the first embodiment.
図 5は、第 1の実施形態の、拡張カードのプロセス処理部における宛先判定処理部のセッショ ン数カウント'亍一ブルの構成例を示す図である。  FIG. 5 is a diagram illustrating a configuration example of the number of sessions count table of the destination determination processing unit in the process processing unit of the expansion card according to the first embodiment.
図 6は、第 1の実施形態の、拡張カードのハードウェア構成の例を示すブロック図である。 図 7は、第 1の実施形態のコンピュータに必須の構成のみを示したブロック図である。  FIG. 6 is a block diagram illustrating an example of the hardware configuration of the expansion card according to the first embodiment. FIG. 7 is a block diagram showing only the configuration essential for the computer of the first embodiment.
図 8は、第 5の実施形態の、拡張カードにおける負荷分散を実現したネットワーク構成を示す 図である。 発明を実施するための最良の形態  FIG. 8 is a diagram illustrating a network configuration that realizes load distribution in the expansion card according to the fifth embodiment. BEST MODE FOR CARRYING OUT THE INVENTION
(第 1の実施形態) (First embodiment)
本発明を実施するための第 1の実施形態について、図面を参照して詳細に説明する。  A first embodiment for carrying out the present invention will be described in detail with reference to the drawings.
図 1に、本発明の第 1の実施形態のコンピュータの構成を示す。コンピュータ 1 0は、 CPU20, メモリ 30、 PCIバス 40、拡張カード 50を備える。 PCIバス 40は、 PCI Expressバス、又は通常 の PCIバスである。  FIG. 1 shows the configuration of a computer according to the first embodiment of the present invention. The computer 10 includes a CPU 20, a memory 30, a PCI bus 40, and an expansion card 50. The PCI bus 40 is a PCI Express bus or a normal PCI bus.
CPU20及びメモリ 30は、コンピュータ 1 0によって提供される種々の機能を実行するナこめの、 メイン処理部 80を構成する。図示しない記憶装置に格納された種々の機能を提供するプログ ラムは、メモリ 30にロードされる。 CPU20は、そのプログラムを読出して実行することによって、 所定の機能を実現する。  The CPU 20 and the memory 30 constitute a main processing unit 80 that is a computer that executes various functions provided by the computer 10. A program for providing various functions stored in a storage device (not shown) is loaded into the memory 30. The CPU 20 implements a predetermined function by reading and executing the program.
拡張カード 50は、 CPU20に負荷を力、けることなぐトランスポート 'レイヤにおけるサーバの 負荷を分散する、負荷分散処理を行う。すなわち、拡張カード 50は、 CPU20の処理を用いず 09 056419 The expansion card 50 performs a load distribution process that distributes the load on the server in the transport layer that applies and removes the load on the CPU 20. That is, the expansion card 50 does not use the processing of the CPU 20. 09 056419
に負荷分散処理を行う。つまり、拡張カード 50は、負荷分散に必要な処理のすべてを行う。 拡張カード 50は、 PCI Express等の PCIバス規格に準拠したインタフェースを備える。拡張力 —ド 50は、このインタフェースを介して、メイン装置であるコンピュータ 1 0の PCIバス 40に接続 される。 Perform load balancing processing. That is, the expansion card 50 performs all processes necessary for load distribution. The expansion card 50 has an interface conforming to a PCI bus standard such as PCI Express. The expansion force 50 is connected to the PCI bus 40 of the computer 10 which is the main device through this interface.
拡張カード 50は、図 1に示すように、負荷分散処理を実行するプロセス処理部 60と、外部の ネットワークを介してサーバ等に接続するネットワーク 'インタフェース部 70を備える。  As shown in FIG. 1, the expansion card 50 includes a process processing unit 60 that executes load distribution processing and a network interface unit 70 that connects to a server or the like via an external network.
図 1に示すように、コンピュータ 1 0は、拡張カード 50のネットワーク 'インタフェース部 70を介 して、ネットワーク 1 00上のサーバ 201、 202、 203及びクライアント 300と接続される。  As shown in FIG. 1, the computer 10 is connected to the servers 201, 202, 203 and the client 300 on the network 100 via the network interface unit 70 of the expansion card 50.
拡張カード 50のプロセス処理部 60の構成を図 2に示す。プロセス処理部 60は、アドレス-フ ィルタ部 61と、フレーム抽出部 62と、宛先判定処理部 63と、アドレス付与部 64を備える。プロ セス処理部 60が備える各構成要素の機能については、プロセス処理部 60の動作の説明の際 に詳述する。  The configuration of the process processing unit 60 of the expansion card 50 is shown in FIG. The process processing unit 60 includes an address-filter unit 61, a frame extraction unit 62, a destination determination processing unit 63, and an address assignment unit 64. The function of each component included in the process processing unit 60 will be described in detail when the operation of the process processing unit 60 is described.
以下に、図 2と図 3を参照してプロセス処理部 60の動作について説明する。図 3は、本発明 の第 1の実施形態の、拡張カードのプロセス処理部における動作を説明するフローチャートで ある。  The operation of the process processing unit 60 will be described below with reference to FIGS. FIG. 3 is a flowchart for explaining the operation in the process processing unit of the expansion card according to the first embodiment of the present invention.
プロセス処理部 60は、ネットワーク'レイヤにおける処理を行う、アドレス'フィルタ部 61とアド レス付与部 64と、トランスポ一ト 'レイヤにおける処理を行う、フレーム抽出部 62と宛先判定処 理部 63を備える。  The process processing unit 60 includes an address filter unit 61 and an address assignment unit 64 that perform processing in the network layer, and a frame extraction unit 62 and a destination determination processing unit 63 that perform processing in the transport layer. .
プロセス処理部 60は、アドレス'フィルタ部 61によって、フレームに含まれるネットワーク'レイ ャのアドレスのフィルタリングを行し、、拡張カード 60宛のフレームのみを受信する(ステップ S1 01 )。「フレーム」とは、例えば、 IP (Internet Protocol)パケット等である。フレームが IPパケット である場合は、ネットワーク'レイヤのアドレスのフィルタリングとは、受信したフレームに含まれ る宛先の IPアドレス力 拡張カード 50に割り付けられた IPアドレスと一致するフレームのみを 受信するという処理である。  The process processing unit 60 filters the address of the network layer included in the frame by the address' filter unit 61, and receives only the frame addressed to the expansion card 60 (step S101). The “frame” is, for example, an IP (Internet Protocol) packet or the like. When the frame is an IP packet, the filtering of the network layer address is the process of receiving only the frame that matches the IP address assigned to the expansion card 50, which is the destination IP address included in the received frame. It is.
フレーム抽出部 62は、受信したフレームが、セッション開始を示すフレーム(以降、「セッショ ン開始フレーム」という。)であるかどうかを判定する(ステップ S1 02)。セッション開始フレーム とは、例えば、 TCP (Transmission Control Protocol)プロトコルの場合には、同期化(SYN (synchronization) )フラグがセットされているフレームである。  The frame extraction unit 62 determines whether or not the received frame is a frame indicating a session start (hereinafter referred to as “session start frame”) (step S102). For example, in the case of the TCP (Transmission Control Protocol) protocol, the session start frame is a frame in which a synchronization (SYN (synchronization)) flag is set.
フレーム抽出部 62は、ポート番号亍ーブル 62aを備える。フレーム抽出部 62は、受信したフ レームがセッション開始フレームであれば、受信したフレームからデータ 'フローの識別子とポ T JP2009/056419 The frame extraction unit 62 includes a port number table 6 2 a. If the received frame is a session start frame, the frame extraction unit 62 determines whether the data 'flow identifier and T JP2009 / 056419
5  Five
ート番号の識別子を抽出する。そして、フレーム抽出部 62は、ポート番号亍一ブル 62aに、セッ シヨン毎にポート番号を登録し (ステップ S1 03)、受信したフレームを宛先判定処理部 63に送 る。 The identifier of the port number is extracted. Then, the frame extraction unit 62 registers the port number for each session in the port number table 62a (step S103), and sends the received frame to the destination determination processing unit 63.
「データ 'フロー」とは、送信元と宛先が同じである一連のフレ一ム群を意味する。データ'フロ 一を識別するためには、データ 'フロー識別用の識別子をフレーム内に含ませればよい。ある いは、ポート番号とアドレスの組み合わせを用いても、データ 'フローを識別することができる。 本実施形態では、データ-フロー識別用の識別子がフレーム内に含まれてし、るものとする。 ポート番号テーブル 62aの構成例を図 4に示す。図 4に示すように、ポート番号テーブル 62a には、接続中のセッションのセッション識別情報に対応させてポート番号が登録される。  “Data 'flow” means a series of frames having the same source and destination. In order to identify the data flow, an identifier for data flow identification may be included in the frame. Alternatively, the data 'flow can be identified using a combination of port number and address. In this embodiment, it is assumed that an identifier for data-flow identification is included in a frame. A configuration example of the port number table 62a is shown in FIG. As shown in FIG. 4, port numbers are registered in the port number table 62a in association with the session identification information of the currently connected session.
宛先判定処理部 63は、図 5【こ示すように、負荷分散の対象となるターゲットのサーバ毎にサ 一ビス中のセッション数をカウントするセッション数カウント'テーブル 63aを備える。宛先判定 処理部 63は、.セッション数カウント 'テーブル 63aを参照し、セッション数に基づいて、サ一バ 2 01、 202、 203の中から「ターゲット'サーバ」を選択する(ステップ S1 04)。例えば、サーバ 2 01、 202、 203の中の、セッション数力《最小のサーバをターゲット 'サーバとして選択する。 Γタ —ゲット'サーバ」とは、宛先判定処理部 63によって、拡張カード 60が受信したフレームの宛 先として選択されたサーバである。宛先判定処理部 63は、ターゲット ·サーバを選択した後、セ ッシヨン数カウント'テーブル 63aの、選択したサーバに対応するセッション数を 1だけインクリメ ントする(ステップ S1 05)。なお、セッション数カウント 'テーブル 63aのセッション数は、各サ一 バにおけるサービス中のセッション数をカウントするものであるから、セッション数をインクリメン 卜するときの増分は"!には限定されない。増分は、任意の一定値であればよい。  As shown in FIG. 5, the destination determination processing unit 63 includes a session count count table 63a that counts the number of sessions in the service for each target server that is the target of load distribution. The destination determination processing unit 63 refers to the “session number count” table 63a and selects “target“ server ”from the servers 201, 202, and 203 based on the number of sessions (step S104). For example, among the servers 201, 202, and 203, the number of sessions is selected as the target server. The Γ target “server” is a server selected by the destination determination processing unit 63 as the destination of the frame received by the expansion card 60. The destination determination processing unit 63, after selecting the target server, increments the number of sessions corresponding to the selected server in the session count table '63a by 1 (step S1 05). Note that the number of sessions in the session count 'table 63a counts the number of sessions in service on each server, so the increment when incrementing the number of sessions is not limited to "!. Any constant value may be used.
上記のステップ S1 04の処理では、ターゲット'サーバの選択基準は、「サービス中のセッショ ン数が最小のサ一 /、'をターゲット -サ一/、'とする Jである。ターゲット'サ一/ の選択基準は、他 の基準でもよい。例えば、ターゲット 'サーバの選択基準は、「サ一ビス中の'セッション数が所定 値以下のサーバをターゲット 'サーバとする」でもよい。  In the processing of step S104 above, the selection criterion for the target 'server is' J with the minimum number of sessions in service /, 'is the target-target /,'. Other criteria may be used as the selection criterion for /.For example, the selection criterion for the target 'server may be' the server with the number of sessions in the service 'being less than or equal to a predetermined value as the target' server '.
さらに、ターゲット'サーバの選択基準は、「サービス中のセッション数が所定値以下であって、 サ一ビス中のセッション数が減少しているサーバをターゲット 'サーバとする」でもよい。ターゲッ サーバの選択基準をこのように設定する場合については、後述の、.ステップ S1 1 3の処理内 容の説明の後に説明する。  Further, the selection criterion for the target server may be “a server whose number of sessions in service is equal to or less than a predetermined value and whose number of sessions in service is decreasing is set as a target“ server ”. The case of setting the target server selection criteria in this way will be described after the description of the processing content of step S1 13 described later.
その後、アドレス付与部 64力 宛先判定処理部 63が選択したターゲット'サーバのアドレス を、受信したフレームの宛先に付与し (ステップ S106)、ネットワーク 'インタフェース部 60を介 09 056419 Thereafter, the address assigning unit 64 force assigns the address of the target server selected by the destination determination processing unit 63 to the destination of the received frame (step S106), and passes through the network 'interface unit 60. 09 056419
6  6
して接続先のネットワークへ転送する(ステップ S1 07)。 To transfer to the destination network (step S1 07).
一方、ステップ S1 02で、受信したフレームがセッション開始フレームではない場合、フレーム 抽出部 62は、受信したフレームが、セッション切断を示すフレーム(以降、「セッション切断フレ ーム Jという。)であるかどうかを判定する(ステップ S108)。セッション切断フレームとは、例え ば、 TCPプロトコルの場合には、終了(nN (finalization) )フラグがセットされているフレームで foる。  On the other hand, if the received frame is not a session start frame in step S102, the frame extraction unit 62 determines whether the received frame is a frame indicating session disconnection (hereinafter referred to as “session disconnect frame J”). In step S108, for example, in the case of the TCP protocol, a frame with the end (nN (finalization)) flag set is fo.
受信したフレームがセッション切断フレームであれば、フレーム抽出部 62は、保持するポート 番号テーブル 62の該当するセッション識別情報にマーキングする。そして、フレーム抽出部 62 は、該当セッション情報を消去するまでの時間を計数するタイマ(図示ないを起動し (ステップ S 1 09)、受信したセッション切断フレームを、宛先判定処理部 63に送付する。  If the received frame is a session cut frame, the frame extraction unit 62 marks the corresponding session identification information in the held port number table 62. Then, the frame extraction unit 62 activates a timer (not shown) that counts the time until the corresponding session information is deleted (step S 1 09), and sends the received session disconnect frame to the destination determination processing unit 63.
ステップ S1 08において、セッション切断フレームであると判定されると、宛先判定処理部 63 は、そのフレームに対応するターゲット 'サーバの識別情報に対応するセッション数を 1だけデ クリメントするためにあらかじめ設定しておいたタイマ(図示なし)を起動する (ステップ S1 1 0)。 アドレス付与部 64は、セッション切断フレームにはアドレス付け替えを行わず、接続先へ転送 する(ステップ S1 1 1 )。  If it is determined in step S1 08 that the frame is a session disconnection frame, the destination determination processing unit 63 sets in advance to decrement the number of sessions corresponding to the identification information of the target server corresponding to the frame by one. The previously set timer (not shown) is started (step S1 1 0). The address assigning unit 64 transfers the session disconnect frame to the connection destination without changing the address (step S11 1 1).
フレーム抽出部 62は、タイマ力《タイムアウトするまでに応答フレームを受信した場合、その時 点で、ポート番号テーブル 62aの該当するセッション情報を消去する。あるいは、タイマがタイ ムアウトするまで、該当するセッションの応答フレームを受信しなかった場合、フレーム抽出部 62は、タイムアウトした時点で、ポート番号テーブル 62aの該当するセッション情報を消去する (ステップ S 1 1 2)。  When the frame extraction unit 62 receives a response frame before the timer power << timeout, the frame extraction unit 62 deletes the corresponding session information in the port number table 62a at that time. Alternatively, if the response frame of the corresponding session is not received until the timer times out, the frame extraction unit 62 deletes the corresponding session information in the port number table 62a when time-out occurs (step S 1 1 2).
宛先判定処理部 63は、タイマがタイムアウトするまでに応答フレームを受信した場合、その 時点で、セッション数カウント 'テーブル 63aの、該当するセッション切断フレームの宛先のサー バのセッション数を 1だけデクリメントする。あるいは、タイマがタイムアウトするまで、該当セッ シヨンの応答フレームを受信しなかった場合、宛先判定処理部 63は、タイムアウト時点で、セッ シヨン数カウント'テーブル 63aのセッション切断フレームの宛先のサーバのセッション数を 1だ けデクリメントする(ステップ S1 1 3)。  When receiving a response frame before the timer times out, the destination determination processing unit 63 decrements the number of sessions of the destination server of the corresponding session disconnection frame in the session count count table 63a by one. . Alternatively, if the response frame of the corresponding session is not received until the timer times out, the destination determination processing unit 63 determines the number of sessions of the destination server of the session disconnection frame in the session count count table 63a at the time of timeout. Is decremented by 1 (step S1 1 3).
前述の、ターゲット'サーバの選択基準を、「サービス中のセッション数が所定値以下であって、 サービス中のセッション数が減少しているサーバをターゲット'サーバとする Jと設定した場合に ついて説明する。上記のように、ステップ S1 1 3では、所定の条件が満たされると、サービス中 のセッション数がデクリメントされる。このとき、サービス中のセッション数がデクリメントされたサ P T/JP2009/056419 The target 'server selection criteria described above is “When the number of sessions in service is less than the specified value and the number of sessions in service is decreasing is set to J, which is the target' server. As described above, in step S1 13, when a predetermined condition is satisfied, the number of sessions in service is decremented, and at this time, the number of sessions in service is decremented. PT / JP2009 / 056419
7  7
—バをマーキングしておく。例えば、サービス数の減少を示すフラグを付加すればよい。そして、 S1 04の処理において、サービス中のセッション数が所定値以下であり、フラグがサービス数 の減少を示しているサーバをターゲット'サーバとすればよい。 —Mark the bar. For example, a flag indicating a decrease in the number of services may be added. Then, in the process of S104, a server whose number of sessions in service is equal to or less than a predetermined value and whose flag indicates a decrease in the number of services may be set as a target server.
なお、ステップ S1 08で、受信したフレームがセッション切断フレームでない場合、何ら処理を 行うことなぐ処理を終了する。  In step S108, if the received frame is not a session disconnection frame, the process without performing any process is terminated.
セッション開始フレーム、セッション切断フレーム(又は、セッション終了を示すフレーム)以外 のフレームについては、フレーム抽出部 62は、該当フレームのポート番号を保存しない。同様 に、これらのフレームについては、宛先判定処理部 63は、セッション数のカウント処理を行わな い。  For frames other than session start frames and session disconnect frames (or frames indicating session end), the frame extraction unit 62 does not store the port numbers of the corresponding frames. Similarly, for these frames, the destination determination processing unit 63 does not perform the session count processing.
ここで、拡張力一ド 50のハードウェア構成について、図 6を参照して説明する。  Here, the hardware configuration of the expansion force 50 will be described with reference to FIG.
図 6を参照すると、拡張カード 50は、一般的なコンピュータと同様のハードウェア構成によつ て実現することができる。すなわち、拡張カード 50は、 CPU401、主記憶部 402、ネットヮ一 ク 'インタフェース部 70、入出力インタフェース部 404、補助記憶部 405、上記各構成要素を相 互に接続するシステムバス 406を備える。主記憶部 402は、 RAM (Random Access Memory) 等を用いて構成され、データの作業領域やデータの一時退避領域に用いられる。入出力インタ フェース部 404は、外部装置と接続してデータの送受信を行う。補助記憶部 405は、 ROM (Read Only Memory)、磁気ディスク、半導体メモリ等の不揮発性メモリで構成されるハードディ スク等を含み、入出力インタフ X—ス部 404を介して CPU等と接続されている。なお、補助記憶 部 405は、拡張カード 50内に備えられてもよい。  Referring to FIG. 6, the expansion card 50 can be realized by a hardware configuration similar to that of a general computer. That is, the expansion card 50 includes a CPU 401, a main storage unit 402, a network interface unit 70, an input / output interface unit 404, an auxiliary storage unit 405, and a system bus 406 that interconnects the above components. The main storage unit 402 is configured using a RAM (Random Access Memory) or the like, and is used as a data work area or a temporary data save area. The input / output interface unit 404 is connected to an external device to transmit / receive data. The auxiliary storage unit 405 includes a hard disk composed of a nonvolatile memory such as a ROM (Read Only Memory), a magnetic disk, and a semiconductor memory, and is connected to a CPU or the like via the input / output interface 404. Yes. The auxiliary storage unit 405 may be provided in the expansion card 50.
本実施形態による拡張カード 50は、プロセス処理部 60による機能を実現するハードウェアを 組み込んだ、 LSI (Large Scale Integration)等の回路部品を用いることにより、その動作をハ一 ドウエア的に実現することができる。あるいは、図 6のように、 CPUを用いたソフトウェア処理【こ よって実現することもできる。すなわち、プロセス処理部 60による機能を実現するプログラムを、 補助記憶部 405に格納し、そのプログラムを主記憶部 402にロードして CPU401で実行する ことにより、プロセス処理部 60の機能をソフトウェア的に実現することも可能である。このプロ グラムを組み込んだ ROM等の記憶装置を拡張カード 50内に備えてもよいことはいうまでもな し、。この場合、記憶装置のアクセス'タイムが十分に短いならば、主記憶部 402へのプログラ ムのロードは必ずしも必要ではない。  The expansion card 50 according to the present embodiment realizes its operation in hardware by using circuit components such as LSI (Large Scale Integration) that incorporates hardware that realizes the functions of the process processing unit 60. Can do. Alternatively, as shown in Fig. 6, it can be realized by software processing using a CPU. That is, by storing a program for realizing the functions of the process processing unit 60 in the auxiliary storage unit 405, loading the program into the main storage unit 402 and executing it by the CPU 401, the functions of the process processing unit 60 are implemented in software. It can also be realized. Needless to say, the expansion card 50 may be provided with a storage device such as a ROM incorporating this program. In this case, if the access time of the storage device is sufficiently short, it is not always necessary to load the program into the main storage unit 402.
本実施形態においては以下のような効果が得られる。本実施形態のコンピュータは、搭載さ れた拡張カードに備えられたネットワーク 'インタフェース部 70を用いてネットワークに接続する。 そして、その拡張カードが備えるプロセス処理部がフレームを送信する宛先のサーバを選択し、 選択したサーバ宛に必要なフレームを転送する。従って、メイン装置であるコンピュータの CPU を占有することなく、個々のサーバの負荷を分散させることができる。このとき、コンピュータ内 の CPUを占有しないので、サーバの負荷分散を実行しつつ、 CPUを他のプロセス用に利用す ることができる。 In the present embodiment, the following effects are obtained. The computer according to the present embodiment is connected to the network using the network interface unit 70 provided in the installed expansion card. Then, the process processing unit included in the expansion card selects a destination server to which the frame is transmitted, and transfers a necessary frame to the selected server. Therefore, the load on each server can be distributed without occupying the CPU of the computer that is the main device. At this time, since the CPU in the computer is not occupied, it is possible to use the CPU for other processes while executing load balancing of the server.
また、本実施形態のコンピュータは、セッション開始フレームをセッション数の少ないサーバ宛 に転送する。サーバに処理の要求を行うクライアントは、単一の宛先アドレスを用いて、処理を 担当するサーバにアクセスすることができる。  In addition, the computer according to the present embodiment transfers the session start frame to a server with a small number of sessions. A client requesting processing from a server can access the server in charge of processing using a single destination address.
以上、本発明の第 1の実施形態について、図面を用いて詳述した。本発明の具体的な構成 は第 1の実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲で設計の変更が 行われた実施形態も、本発明に含まれる。  Hereinabove, the first embodiment of the present invention has been described in detail with reference to the drawings. The specific configuration of the present invention is not limited to the first embodiment, and embodiments in which design changes are made without departing from the gist of the present invention are also included in the present invention.
例えば、第 1の実施形態の情報処理装置では、各サーバのサービス中のセッション数に基づ いて、ターゲット'サーバが選択される。セッション数は、各サーバの負荷状態、すなわち、処理 負荷の重さを示す一つの尺度として使用されているに過ぎない。従って、各サーバの負荷状態 を示す尺度はサービス中のセッション数以外のものでもよい。サーバへのアクセスの成功率、 サーバからの応答速度等、応答速度の増加傾向等も、上記の尺度として利用可能である。こ れらについては、第 2、第 3及び第 4の実施形態として説明する。  For example, in the information processing apparatus of the first embodiment, the target server is selected based on the number of sessions in service of each server. The number of sessions is only used as a measure of the load status of each server, that is, the weight of processing load. Therefore, the scale indicating the load status of each server may be other than the number of sessions in service. The success rate of access to the server, the response speed from the server, etc. can be used as the above measure. These will be described as second, third and fourth embodiments.
また、第 1の実施形態において、ネットワークは、情報処理装置、クライアント、サーバ間で通 信を行うための通信経路の接続形態の一例である。従って、ネットワークのトポロジーはもちろ ん任意である。さらに、情報処理装置、クライアン サーバ間で通信を行うことができる通信経 路であれば、任意の接続形態を使用することができる。  In the first embodiment, the network is an example of a connection form of a communication path for communicating between the information processing apparatus, the client, and the server. Therefore, the network topology is arbitrary. Furthermore, any connection form can be used as long as it is a communication path capable of performing communication between the information processing apparatus and the client server.
図 7は、第 1の実施形態のコンピュータに必須の構成のみを示したブロック図である。コンビュ ータ 1 0は、メイン処理部 80と、拡張カード 50を備える。拡張カード 50は、メイン処理部 80に接 続される。  FIG. 7 is a block diagram showing only the configuration essential for the computer of the first embodiment. The computer 10 includes a main processing unit 80 and an expansion card 50. The expansion card 50 is connected to the main processing unit 80.
メイン処理部 80は、コンピュータ 1 0のコンピュータとしての本来の処理であるメイン処理、例 えば、アプリケーション 'プログラムの実行等を行う。メイン処理部 80は、例えば、 CPU20とメ モリ 30を用いて構成することができる。  The main processing unit 80 performs main processing, which is the original processing of the computer 10 as a computer, for example, execution of an application program. The main processing unit 80 can be configured using, for example, the CPU 20 and the memory 30.
拡張力一ド 50は、上述の負荷分散処理を行う。拡張カード 50は、プロセス処理部 60のような 特別なブロックを備えずに、例えば、 CPUとメモリを用いて構成することができる。この場合、拡 張カード 50は、図 3のフローチャートで示す負荷分散処理を、 CPUを用いたプログラム処理を 用いて行う。また、拡張カード 50は、ネットワーク'インタフェース部 70のようなネットワークとの 接続用のブロックを備えなくてもよい。この場合、拡張カード 50は、クライアント及びサーバと通 信を行うことができる、適当な通信手段を備えればよい。当然ながら、拡張カード 50は、プロセ ス処理部 60とネットワーク 'インタフェース部 70を備えてもよし、。負荷分散処理の動作は前述 の通りであるので、説明は省略する。 The expansion force 50 performs the load distribution process described above. The expansion card 50 can be configured using, for example, a CPU and a memory without including a special block like the process processing unit 60. In this case, the expansion card 50 performs the load distribution process shown in the flowchart of FIG. To do. Further, the expansion card 50 may not include a block for connecting to a network such as the network 'interface unit 70. In this case, the expansion card 50 may be provided with an appropriate communication means that can communicate with the client and the server. Of course, the expansion card 50 may include a process processing unit 60 and a network 'interface unit 70. Since the operation of the load balancing process is as described above, the description is omitted.
図 7のコンピュータを用いても、上述の図 1のコンピュータと同様の効果が得られる。すなわち、 拡張カードが通信手段を備え、受信したフレームを送信する宛先のサーバ、すなわち、ターゲッ ト 'サーバを選択し、選択したサーバ宛に受信したフレームを転送する。そのため、メイン装置 であるコンピュータの CPUを使用することなぐ'個々のサーバに負荷を分散させることができる。 従って、サーバの負荷分散を実行しつつ、 CPUを他のプロセス用に利用することができる。 (第 2の実施形態)  Even if the computer of FIG. 7 is used, the same effect as the computer of FIG. 1 described above can be obtained. In other words, the expansion card has a communication means, selects a destination server that transmits the received frame, that is, a target server, and transfers the received frame to the selected server. Therefore, it is possible to distribute the load to individual servers without using the CPU of the computer that is the main device. Therefore, the CPU can be used for other processes while performing server load balancing. (Second embodiment)
次いで、本発明の第 2の実施形態のコンピュータ 1 0について説明する。第 2の実施形態のコ ンピュータ 10と拡張カード 50の構成は、図 1、図 2に示した第 1の実施形態の構成と同じであ るので、これらに関する説明は省略する。  Next, the computer 10 according to the second embodiment of this invention will be described. The configurations of the computer 10 and the expansion card 50 of the second embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG.
第 2の実施形態のプロセス処理部 60のフレーム抽出部 62は、第 1の実施形態のフレーム抽 出部 62には備えられていない機能を備える。すなわち、第 2の実施形態のフレーム抽出部 62 は、あるセッション開始フレームを受信した場合、一時的にポート番号テ一ブル 62aの該当する セッション識別情報及びポート番号にマーキングする機能を備える。そして、フレーム抽出部 6 2は、ある特定の時間間隔で、マーキングしたセッションに対応するセッション開始フレームのタ 一ゲット 'サーバへのアクセスの失敗を検出する機能を備える。  The frame extraction unit 62 of the process processing unit 60 of the second embodiment has a function that is not provided in the frame extraction unit 62 of the first embodiment. That is, the frame extraction unit 62 of the second embodiment has a function of temporarily marking the corresponding session identification information and port number in the port number table 62a when a certain session start frame is received. Then, the frame extraction unit 62 has a function of detecting a failure in access to the target session start server corresponding to the marked session at a specific time interval.
また、第 2の実施形態の宛先判定処理部 63も、第 1の実施形態の宛先判定処理部 63には 備えられていない機能を備える。すなわち、第 2の実施形態の宛先判定処理部 63は、選択し たターゲット ·サーバへのアクセスの失敗が検出された場合、セッション数カウント 'テーブル 63 aから次にセッション数が少ないサーバをターゲット'サーバとして選択する。その際、宛先判定 処理部 63は、アクセスを失敗したフレームを再度転送することはせずに廃棄する。そして、ター ゲット 'サーバへのアクセスのリトライとして、宛先判定処理部 63は、新たに選択したタ一ゲッ ト 'サーバのアドレスを宛先として付与したフレームをアドレス付与部 64から送付する。  The destination determination processing unit 63 of the second embodiment also has a function that is not provided in the destination determination processing unit 63 of the first embodiment. In other words, the destination determination processing unit 63 of the second embodiment, when a failure to access the selected target server is detected, counts the number of sessions “target the server with the next smallest number of sessions from the table 63 a”. Select as a server. At this time, the destination determination processing unit 63 discards the frame that has failed to be accessed without transferring it again. Then, as a retry of access to the target “server”, the destination determination processing unit 63 sends from the address adding unit 64 a frame provided with the address of the newly selected target “server” as the destination.
以上のように、第 2の実施形態のコンピュータは、ターゲット 'サーバへのアクセスの失敗を検 出し、新たにターゲット-サーバを選択し、リトライを行う機能を備える。従って、何らかの問題を 持つサーバをターゲット'サーバとすることがないので、ターゲット 'サーバへのアクセスが成功 する可能性を高めることができるという効果がある。 As described above, the computer according to the second embodiment has a function of detecting a failure in access to the target server, selecting a new target-server, and performing a retry. Therefore, since the server with some problem is not used as the target 'server', the access to the target 'server is successful. This has the effect of increasing the possibility of
(第 3の実施形態)  (Third embodiment)
次いで、本発明の第 3の実施形態のコンピュータ 1 0について説明する。第 3の実施形態のコ ンピュータ 1 0と拡張カード 50の構成は、図 1、図 2に示した第 1の実施形態の構成と同じであ るので、これらに関する説明は省略する。  Next, the computer 10 according to the third embodiment of the present invention will be described. The configurations of the computer 10 and the expansion card 50 according to the third embodiment are the same as the configurations of the first embodiment shown in FIGS. 1 and 2, and a description thereof will be omitted.
第 3の実施形態のプロセス処理部 60のフレーム抽出部 62は、第 1の実施形態のフレーム抽 出部 62には備えられていない機能を備える。すなわち、第 3の実施形態のフレーム抽出部 62 は、あるセッション開始フレームを受信した場合、一時的にポート番号テーブル 62aの該当する セッション識別情報及びポート番号にマ一キングする。そして、フレーム抽出部 62は、予め設 定した時間を計数するタイマを起動する。  The frame extraction unit 62 of the process processing unit 60 of the third embodiment has a function that is not provided in the frame extraction unit 62 of the first embodiment. That is, when receiving a session start frame, the frame extraction unit 62 of the third embodiment temporarily maps the corresponding session identification information and port number in the port number table 62a. Then, the frame extraction unit 62 starts a timer that counts a preset time.
また、第 3の実施形態の宛先判定処理部 63も、第 1の実施形態の宛先判定処理部 63には 備えられていない機能を備える。すなわち、フレーム抽出部 62によって起動されたタイマが、タ 一ゲット 'サーバから応答がないまま、タイムアウトした場合、第 3の実施形態の宛先判定処理 部 63は、セッション数カウント'亍一ブル 63aから、次にセッション数が少ないサーバをタ一ゲッ ト 'サーバとして選択する。そして、宛先判定処理部 63は、タイム'ドリブンで、ターゲット'サー バへのアクセスのリトライとして、新たに選択したターゲット 'サーバ宛に、セッション開始フレー ムを送信する P The destination determination processing unit 63 of the third embodiment also has a function that is not provided in the destination determination processing unit 63 of the first embodiment. That is, when the timer started by the frame extraction unit 62 times out without a response from the target 'server', the destination determination processing unit 63 of the third embodiment starts from the number of sessions count 'table 63a. Next, select the server with the least number of sessions as the target server. Then, the destination determining unit 63 'in driven, the target' time to send a retry access to the server, to the newly selected target 'directed to the server, a session start frame P
以上のように、第 3の実施形態のコンピュータは、ターゲット ·サーバからの応答の遅延を検 出し、応答が所定時間以上遅延した場合には、新たにターゲット 'サーバを選択し、リトライを行 う機能を備える。従って、応答の遅いサーバがターゲット 'サーバとすることがないので、ょリ応 答の速いターゲット 'サーバを選択することができるという効果がある。  As described above, the computer according to the third embodiment detects a delay in the response from the target server, and when the response is delayed for a predetermined time or longer, newly selects the target server and performs a retry. It has a function. Therefore, since a server with a slow response never becomes a target 'server', there is an effect that a target 'server with a quick response can be selected.
(第 4の実施形態) (Fourth embodiment)
次いで、本発明の第 4の実施形態によるコンピュータ 1 0について説明する。第 4の実施形態 のコンピュータ 1 0と拡張カード 50の構成は、図 1、図 2に示した第 1の実施形態の構成と同じ であるので、これらに関する説明は省略する。  Next, a computer 10 according to a fourth embodiment of the present invention will be described. The configurations of the computer 10 and the expansion card 50 of the fourth embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG. 2, and a description thereof will be omitted.
第 1の実施形態では、宛先判定処理部 63は、セッション数が最も少ないサーバをターゲット- サーバとして選択する。第 4の実施形態では、宛先判定処理部 63は、サーバからの応答時間 の長さの変化に基づいてサーバの負荷状態を検出し、その負荷状態を各サーバ毎にセッショ ン数と共に登録する。そして、宛先判定処理部 63は、負荷状態とセッション数とに基づいて、該 当するセッションのフレームの宛先であるターゲット'サーバとして選択して転送する。例えば、 応答時間が長くなつてきている場合は、サーバの負荷がその時点で既に重いか、あるいは負 荷が増加していると判断することができる。従って、負荷が軽いサーバ、あるいは負荷が減少し ているサーバをターゲット 'サーバとして選択してもよい。 In the first embodiment, the destination determination processing unit 63 selects a server having the smallest number of sessions as a target-server. In the fourth embodiment, the destination determination processing unit 63 detects the load state of the server based on the change in the response time from the server, and registers the load state together with the number of sessions for each server. Then, based on the load state and the number of sessions, the destination determination processing unit 63 selects and forwards the target's server as the destination of the frame of the corresponding session. For example, If the response time is getting longer, it can be determined that the load on the server is already heavy at that time, or that the load is increasing. Therefore, a server with a light load or a server with a low load may be selected as the target server.
以上のように、第 4の実施形態のコンピュータは、ターゲット 'サーバからの応答時間の長さの 変化に基づく負荷状態とセッション数とに基づいてサーバを選択する。従って、サーバの負荷 状態を予測したターゲット'サーバの選択を行うことができるという効果がある。  As described above, the computer according to the fourth embodiment selects a server based on the load state and the number of sessions based on the change in the length of the response time from the target server. Therefore, there is an effect that it is possible to select the target server predicting the load state of the server.
(第 5の実施形態) (Fifth embodiment)
次いで、本発胡の第 5の実施形態のコンピュータ 1 0について説明する。第 5の実施形態のコ ンピュータ 1 0と拡張カード 50の構成は、図 1、図 2に示した第 1の実施形態の構成と同じであ るので、これらに関する説明は省略する。  Next, a computer 10 according to a fifth embodiment of the present invention will be described. The configurations of the computer 10 and the expansion card 50 of the fifth embodiment are the same as the configurations of the first embodiment shown in FIG. 1 and FIG. 2, and a description thereof will be omitted.
第 5の実施形態では、コンビュ一タ装置 1 0が装着する拡張カード 50は、トランスポート'レイ ャで、 TCi=>プロトコルだけでな SCTP (Stream Control Transmission Protocol)プロトコルで セッションの管理を行う。そして、 TCP、又は、 SCTPプロトコルでセッションのサービスを行うサ ーバにおいても負荷分散を行うことができる。  In the fifth embodiment, the expansion card 50 installed in the computer apparatus 10 is a transport layer, and manages a session using the SCTP (Stream Control Transmission Protocol) protocol that includes only the TCi => protocol. Load balancing can also be performed on a server that provides session services using the TCP or SCTP protocol.
コンピュータ 1 0の拡張力一ド 50を上記のように構成することによって、例えば、図 8に示すよ うなネットワークで、 SCTPプロトコルでセッションのサービスを行う場合にも負荷分散を実現す ることができる。  By configuring the expansion capacity 50 of the computer 10 as described above, load distribution can be realized even when a session service is provided by the SCTP protocol in a network as shown in FIG. 8, for example. .
以上好ましい実施形態と実施例をあげて本発明を説明したが、本発明は必ずしも、上記実施 形態及び実施例に限定されるものでなく、その技術的思想の範囲内において様々に変形して 実施することができる。  Although the present invention has been described with reference to the preferred embodiments and examples, the present invention is not necessarily limited to the above-described embodiments and examples, and various modifications can be made within the scope of the technical idea. can do.
さらに、第 1乃至第 5の実施形態は組み合わせることができる。例えば、第 3及び第 4の実施 形態を組み合わせて、応答の遅いサーバ、又は負荷が重い、若しくは増加しているサーバをタ 一ゲット 'サーバとせずに、他のサーバを選択できるようにしてもよい。さらに他の実施形態の 組み合わせも可能である。  Furthermore, the first to fifth embodiments can be combined. For example, by combining the third and fourth embodiments, it is possible to select a server with a slow response, or a server with a heavy load or an increase, without selecting it as a target server. Good. Furthermore, combinations of other embodiments are possible.
(第 6乃至第 9の実施形態) (Sixth to ninth embodiments)
本発明の第 6の実施形態のコンピュータは、拡張カードを装着する I/Oインタフヱ一スを備え るコンピュータであって、拡張カード力、ネットワークを介してクライアント、サーバ間でフレーム の送受信を行うネットワーク'インタフェース部と、コンピュータのプロセッサに負荷をかけること なく、サーバの負荷分散を行うプロセス処理部とを含む。  The computer according to the sixth embodiment of the present invention is a computer having an I / O interface for mounting an expansion card, and is a network that transmits and receives frames between the client and the server via the expansion card power and the network. 'Includes an interface unit and a process processing unit that distributes the server load without imposing a load on the computer processor.
本発明の第 7の実施形態の拡張カードは、コンピュータの IZOインタフェースに装着される拡 張カードであって、ネットワークを介してクライアント、サーバ間でフレームの送受信を行うネット ワーク ·インタフェース部と、コンピュータのプロセッサに負荷をかけることなく、サーバの負荷分 散を行うプロセス処理部とを含む。 The expansion card of the seventh embodiment of the present invention is an expansion card that is attached to the IZO interface of a computer. Network interface unit that transmits and receives frames between the client and server via the network, and a process processing unit that distributes the load on the server without imposing a load on the computer processor .
本発明の第 8の実施形態の負荷分散方法は、コンピュータの IZOインタフェースに装着され る拡張カードにおける負荷分散方法であって、拡張カードのネットワーク'インタフヱ一ス部にお いて、ネットワークを介してクライアント、サーバ間でフレームの送受信を行うステップと、拡張力 ードのプロセス処理部において、コンピュータのプロセッサに負荷をかけることなぐサーバの負 荷分散を行うプロセス処理ステップを含む。  The load distribution method according to the eighth embodiment of the present invention is a load distribution method in an expansion card attached to an IZO interface of a computer. In the network interface section of the expansion card, the load distribution method is performed via a network. A step of transmitting and receiving frames between the servers, and a process processing step of distributing the load of the servers without applying a load to the computer processor in the process processing unit of the expansion force mode.
本発明の第 9の実施形態の負荷分散プログラムは、コンピュータの I Oインタフェースに装 着される拡張カードで実行される負荷分散プログラムであって、拡張カードに、拡張カードのネ ットワーク 'インタフェース部において、ネットワークを介してクライアント、サーバ間でフレームの 送受信を行う処理と、拡張カードのプロセス処理部において、コンピュータのプロセッサに負荷 をかけることなぐサーバの負荷分散を行うプロセス処理を、実行させる。  The load distribution program according to the ninth embodiment of the present invention is a load distribution program that is executed by an expansion card installed in an IO interface of a computer. Processing to send and receive frames between the client and server via the network and process processing to distribute the server load without applying a load to the computer processor in the process processing unit of the expansion card are executed.
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されも のではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々 な変更をすることができる。  Although the present invention has been described with reference to the embodiments, the present invention is not limited to the above embodiments. Various changes that can be understood by those skilled in the art can be made to the configuration and details of the present invention within the scope of the present invention.
この出願は、 2008年 3月 31曰に出願された日本出願特願 2008— 090424を基礎とする 優先権を主張し、その開示の全てをここに取り込む。  This application claims priority based on Japanese Patent Application No. 2008-090424 filed on March 31, 2008, the entire disclosure of which is incorporated herein.

Claims

請求の範囲 The scope of the claims
1 .メイン処理手段と、  1. Main processing means,
複数のフレームを複数のサーバへ分配する負荷分散処理を、前記メイン処理手段による処 理を用いずに行う拡張カードと、  An expansion card that performs load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the main processing means;
を備えることを特徴とする情報処理装置。 An information processing apparatus comprising:
2.前記拡張カードは、前記複数のサーバの各々のサーバの負荷状態に基づいて、前記複数 のサーバの中から、前記フレームの送信先となる第 1のサーバを選択するプロセス処理手段を 備える  2. The expansion card includes process processing means for selecting a first server as a transmission destination of the frame from the plurality of servers based on a load state of each of the plurality of servers.
ことを特徴とする請求項 1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein:
3.前記プロセス処理手段は、前記複数のサーバの各々のサーバのサービス中のセッション数 に基づいて、前記第 1のサーバを選択する 3. The process processing means selects the first server based on the number of sessions in service of each of the plurality of servers.
ことを特徴とする請求項 2に記載の情報処理装置。 The information processing apparatus according to claim 2, wherein:
4.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が最も少ないサ ーバを、前記第 1のサーバとして選択する  4. The process processing means selects, as the first server, the server having the smallest number of sessions from the plurality of servers.
ことを特徴とする請求項 3に記載の情報処理装置。 The information processing apparatus according to claim 3.
5.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が所定の数以下 のサーバを、前記第 1のサーバとして選択する  5. The process processing means selects, as the first server, a server having the predetermined number of sessions or less from the plurality of servers.
ことを特徴とする請求項 3に記載の情報処理装置。 The information processing apparatus according to claim 3.
6.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が減少している サ一パを、前記第 1のサーバとして選択する  6. The process processing means selects, from the plurality of servers, a server whose number of sessions is reduced as the first server.
ことを特徴とする請求項 5に記載の情報処理装置。 The information processing apparatus according to claim 5, wherein:
7.前記プロセス処理手段は、前記複数のサーバの各々のサーバ毎に、サービス中のセッショ ンの数を記録するセッション数カウント 'テーブルを備える  7. The process processing means includes a session count table that records the number of sessions in service for each of the plurality of servers.
ことを特徴とする請求項 3乃至請求項 6のいずれかに記載の情報処理装置。 The information processing apparatus according to any one of claims 3 to 6, wherein:
8.前記フレームがセッション開始を示すフレームである場合、前記プロセス処理手段は、前記 セッション数カウント'テーブルの前記第 1のサーバの前記サービス中のセッション数を所定の 値だけインクリメントし、 8. When the frame is a frame indicating the start of a session, the process processing means increments the number of sessions in service of the first server in the session count 'table by a predetermined value,
前記フレームがセッション切断又は終了を示すフレームである場合、前記プロセス処理手段 は、前記セッション数カウント'亍一ブルの前記第 1のサーバの前記サービス中のセッション数 を所定の値だけデクリメントする ことを特徴とする請求項 7に記載の情報処理装置。 When the frame is a frame indicating session disconnection or termination, the process processing means decrements the number of sessions in service of the first server in the session count count by a predetermined value. The information processing apparatus according to claim 7.
9.前記プロセス処理手段は、  9. The process means is
前記第 1のサーバへのアクセスの失敗を検出した場合、前記複数のサーバの中から前記第 1のサーバの次にセッション数が少ないサーバを第 2のサーバとして選択する宛先判定処理手 段と、  A destination determination processing means for selecting, as a second server, a server having the second smallest number of sessions after the first server from the plurality of servers when a failure to access the first server is detected;
前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送する 7ドレス付与手段を備えることを特徴とする請求項 3乃至請求項 8の いずれかに記載の情報処理装置。  9. The apparatus according to claim 3, further comprising: 7-address assigning means for assigning an address of the second server to a destination of the received frame and transferring the received frame to a connection destination. The information processing apparatus according to any one of the above.
10.前記プロセス処理手段は、  10. The process processing means is:
前記第 1のサーバから応答がなかった場合、前記複数のサーバの中から前記第 1のサ一バ の次にセッション数が少ないサーバを第 2のサーバとして選択する宛先判定処理手段と、 前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ —ムを接続先へ転送するアドレス付与手段  Destination determination processing means for selecting, as a second server, a server having the next smallest number of sessions after the first server from the plurality of servers when there is no response from the first server; Address assigning means for assigning the address of the second server to the destination of the received frame and transferring the received frame to the connection destination
を備えることを特徴とする請求項 3乃至請求項 8のいずれかに記載の情報処理装置。 The information processing apparatus according to claim 3, further comprising:
1 1 .前記プロセス処理手段は、 1 1. The process processing means is:
前記サーバからの応答時間の長さの変化に基づいて前記サーバの負荷状態を検出し、前記 複数のサーバの各々のサーバ毎に前記負荷状態及びセッション数を登録し、前記負荷状態及 び前記セッション数に基づいて、前記複数のサーバの中から第 2のサーバを選択する宛先判 定処理手段と、  Detecting a load state of the server based on a change in a response time length from the server, registering the load state and the number of sessions for each of the plurality of servers, and determining the load state and the session; Destination determination processing means for selecting a second server from the plurality of servers based on the number;
前記第 2のサーバめアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送するアドレス付与手段  Address giving means for assigning the second server address to the destination of the received frame and transferring the received frame to a connection destination
を備えることを特徴とする請求項 3乃至請求項 8のいずれかに記載の情報処理装置。 The information processing apparatus according to claim 3, further comprising:
1 2.メイン処理手段を備える情報処理装置に接続され、複数のフレームを複数のサーバへ分 配する負荷分散処理を、前記メイン処理手段による処理を用いずに行う  1 2. Perform load distribution processing that distributes multiple frames to multiple servers, connected to an information processing device with main processing means, without using processing by the main processing means
ことを特徴とする拡張カード。 An expansion card characterized by that.
1 3.前記拡張カードは、  1 3.The expansion card
前記複数のサーバの各々のサーバの負荷状態に基づいて、前記複数のサーバの中から、 前記フレームの送信先となる第 1のサーバを選択するプロセス処理手段を備える  Process processing means is provided for selecting a first server as a transmission destination of the frame from the plurality of servers based on a load state of each of the plurality of servers.
ことを特徴とする請求項 1 2に記載の拡張カード。 The expansion card according to claim 12, wherein:
14·前記プロセス処理手段は、 前記複数のサーバの各々のサーバのサービス中のセッション数に基づいて、前記第 1のサ ーバを選択する 14. The process processing means is The first server is selected based on the number of sessions in service of each of the plurality of servers.
ことを特徴とする請求項 13に記載の拡張カード。 The expansion card according to claim 13.
1 5.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が最も少ない サーバを、前記第 1のサーバとして選択する  1 5. The process processing means selects, as the first server, the server having the smallest number of sessions from the plurality of servers.
ことを特徴とする請求項 14に記載の拡張カード。 15. The expansion card according to claim 14, wherein
1 6.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が所定の数以 下のサーバを、前記第 1のサーバとして選択する  1 6. The process processing means selects, as the first server, a server having a predetermined number of sessions or less from the plurality of servers.
ことを特徴とする請求項 14に記載の拡張カード。 15. The expansion card according to claim 14, wherein
1 7.前記プロセス処理手段は、前記複数のサーバの中から、前記セッション数が減少している サーバを、前記第 1のサーバとして選択する 1 7. The process processing means selects, from the plurality of servers, a server having a reduced number of sessions as the first server.
ことを特徴とする請求項 16に記載の拡張カード。 The expansion card according to claim 16, wherein:
1 8.前記プロセス処理手段は、前記複数のサーバの各々のサーバ毎に、サービス中のセッシ ヨンの数を記録するセッション数カウント'テーブルを備える  1 8. The process processing means includes a session count table that records the number of sessions in service for each of the plurality of servers.
ことを特徴とする請求項 14乃至請求項 17のいずれかに記載の拡張カード。 The expansion card according to any one of claims 14 to 17, wherein the expansion card is provided.
1 9.前記フレームがセッション開始を示すフレームである場合、前記プロセス処理手段は、前 記セッション数カウント 'テーブルの前記第 1のサーバの前記サービス中のセッシ aン数を所定 の値だけインクリメントし、  1 9. If the frame is a frame indicating the start of a session, the process processing means increments the number of sessions in service of the first server in the session count count table by a predetermined value. ,
前記フレームがセッション切断又は終了を示すフレームである場合、前記プロセス処理手段 は、前記セッション数カウント'テーブルの前記第 1のサーバの前記サービス中のセッション数 を所定の値だけデクリメントする  If the frame is a frame indicating session disconnection or termination, the process processing means decrements the number of sessions in service of the first server in the session count 'table by a predetermined value.
ことを特徴とする請求項 18に記載の拡張カード。 The expansion card according to claim 18, wherein:
20.前記プロセス処理手段は、  20. The process processing means includes:
前記第 1のサーバへのアクセスの失敗を検出した場合、前記複数のサーバの中から前記第 1のサーバの次にセッション数が少ないサーバを第 2のサーバとして選択する宛先判定処理手 段と、  A destination determination processing means for selecting, as a second server, a server having the second smallest number of sessions after the first server from the plurality of servers when a failure to access the first server is detected;
前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送するアドレス付与手段を備える  Address adding means for assigning the address of the second server to the destination of the received frame and transferring the received frame to a connection destination
ことを特徴とする請求項 14乃至請求項 19のいずれかに記載の拡張カード。 20. The expansion card according to any one of claims 14 to 19, wherein:
21 .前記プロセス処理手段は、 前記第 1のサーバから応答がなかった場合、前記複数のサーバの中から前記第 1のサーバ の次にセッション数が少ないサーバを第 2のサーバとして選択する宛先判定処理手段と、 前記第 2のサーバのアドレスを、前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送するアドレス付与手段を備える 21. The process processing means includes: If there is no response from the first server, destination determination processing means for selecting, as the second server, a server having the next smallest number of sessions after the first server from the plurality of servers, and the second server Address adding means for assigning a server address to the destination of the received frame and transferring the received frame to a connection destination is provided.
ことを特徴とする請求項 14乃至請求項 19のいずれかに記載の拡張カード。 20. The expansion card according to any one of claims 14 to 19, wherein:
22.前記プロセス処理手段は、  22. The process processing means includes:
前記サーバからの応答時間の長さの変化に基づいて前記サーバの負荷状態を検出し、前記 複数のサーバの各々のサーバ毎に前記負荷状態及びセッション数を登録し、前記負荷状態及 び前記セッション数に基づいて、前記複数のサーバの中から第 2のサーバを選択する宛先判 定処理手段と、  Detecting a load state of the server based on a change in a response time length from the server, registering the load state and the number of sessions for each of the plurality of servers, and determining the load state and the session; Destination determination processing means for selecting a second server from the plurality of servers based on the number;
前記第 2のサーバのアドレスを、前記受信したフレームの宛先に付与して、前記受信したフレ —厶を接続先へ転送するアドレス付与手段を備える  Addressing means for assigning the address of the second server to the destination of the received frame and transferring the received frame to the connection destination is provided.
ことを特徴とする請求項 14乃至請求項 1 9のいずれかに記載の拡張カード。 The expansion card according to any one of claims 14 to 19 characterized by the above-mentioned.
23.所定の拡張カードを用いて、複数のフレームを複数のサーバへ分配する負荷分散処理を、 前記拡張カードを接続する情報処理装置による処理を用いずに行う  23. Using a predetermined expansion card, load distribution processing for distributing a plurality of frames to a plurality of servers is performed without using processing by an information processing apparatus connected to the expansion card.
ことを特徴とする負荷分散方法。 A load balancing method characterized by the above.
24.前記複数のサーバの各々のサーバの負荷状態に基づいて、前記複数のサーバの中から、 前記フレームの送信先となる第 1のサーバを選択する  24. Based on a load state of each of the plurality of servers, a first server that is a transmission destination of the frame is selected from the plurality of servers.
ことを特徴とする請求項 23に記載の負荷分散方法。 24. The load distribution method according to claim 23.
25.前記複数のサーバの各々のサーバのサ一ビス中のセッション数に基づいて、前記第 1の サーバを選択する 25. Select the first server based on the number of sessions in the service of each of the plurality of servers.
ことを特徴とする請求項 24に記載の負荷分散方法。 25. The load distribution method according to claim 24.
26.前記複数のサーバの中から、前記セッション数が最も少ないサーバを、前記第 1のサーバ として選択する  26. Select the server with the smallest number of sessions as the first server from the plurality of servers.
ことを特徴とする請求項 25に記載の負荷分散方法。 26. The load distribution method according to claim 25.
27.前記複数のサーバの中から、前記セッション数が所定の数以下のサーバを、前記第 1の サーバとして選択する  27. Select a server having the predetermined number of sessions or less from the plurality of servers as the first server.
ことを特徴とする請求項 25に記載の負荷分散方法。 26. The load distribution method according to claim 25.
28.前記複数のサーバの中から、前記セッション数が減少してレ、るサーバを、前記第 1のサ一 バとして選択する ことを特徴とする請求項 27に記載の負荷分散方法。 28. From the plurality of servers, select a server having a reduced number of sessions as the first server. 28. The load distribution method according to claim 27.
29.前記複数のサーバの各々のサーバ毎に、サービス中のセッションの数を記録するセッショ ン数カウント 'テーブルを用いる  29. Use a session count table that records the number of sessions in service for each of the servers.
ことを特徴とする請求項 25乃至請求項 28のいずれかに記載の負荷分散方法。 The load balancing method according to any one of claims 25 to 28, wherein:
30.前記フレームがセッション開始を示すフレームである場合、前記セッション数カウント'テ一 ブルの前記第 1のサーバの前記サービス中のセッション数を所定の値だけインクリメントし、 前記フレームがセッション切断又は終了を示すフレームである場合、前記セッション数カウン ト-テ一ブルの前記第 1のサーバの前記サービス中のセッション数を所定の値だけデクリメント する . ことを特徴とする請求項 29に記載の負荷分散方法。 30. If the frame is a frame indicating the start of a session, the number of sessions in service of the first server of the session count table is incremented by a predetermined value, and the frame is disconnected or terminated. 30. The load distribution according to claim 29, wherein the number of sessions in service of the first server of the number of sessions count-table is decremented by a predetermined value. Method.
31 .前記第 1のサーバへのアクセスの失敗を検出した場合、前記複数のサーバの中から前記 第 1のサーバの次にセッション数が少ないサーバを第 2のサーバとして選択し、  31. When a failure to access the first server is detected, a server having the next smallest number of sessions after the first server is selected as the second server from the plurality of servers.
前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送する  Assign the address of the second server to the destination of the received frame and forward the received frame to the connection destination
ことを特徴とする請求項 25乃至請求項 30のいずれかに記載の負荷分散方法。 31. The load distribution method according to claim 25, wherein:
32.前記第 1のサーバから応答がなかった場合、前記複数のサーバの中から前記第 1のサ一 バの次にセッション数が少ないサーバを第 2のサーバとして選択し、  32. If there is no response from the first server, the server having the second smallest number of sessions after the first server is selected as the second server from the plurality of servers.
前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ ームを接続先へ転送する  Assign the address of the second server to the destination of the received frame and forward the received frame to the connection destination
ことを特徴とする請求項 25乃至請求項 30のいずれかに記載の負荷分散方法。 31. The load distribution method according to claim 25, wherein:
33.前記サーバからの応答時間の長さの変化に基づいて前記サーバの負荷状態を検出し、 前記複数のサーバの各々のサーバ毎に前記負荷状態及びセッション数を登録し、前記負荷状 態及び前記セッション数に基づいて、前記複数のサーバの中から第 2のサーバを選択し、 前記第 2のサーバのアドレスを前記受信したフレームの宛先に付与して、前記受信したフレ —ムき接続先へ転送する  33. Detecting a load state of the server based on a change in the length of response time from the server, registering the load state and the number of sessions for each server of the plurality of servers, Based on the number of sessions, a second server is selected from the plurality of servers, an address of the second server is assigned to a destination of the received frame, and the received frame connection destination Forward to
ことを特徴とする請求項 25乃至請求項 30のいずれかに記載の負荷分散方法。 31. The load distribution method according to claim 25, wherein:
34.情報処理装置に接続される拡張カードに搭載されたコンピュータに、  34. In the computer mounted on the expansion card connected to the information processing device,
前記情報処理装置による処理を用いずに、複数のフレームを複数のサーバへ分配する負荷 分散処理  Load distribution processing for distributing a plurality of frames to a plurality of servers without using processing by the information processing apparatus
を実行させることを特徴とする負荷分散プログラム。 A load distribution program characterized by causing
35.前記負荷分散処理において、前記複数のサーバの各々のサーバの負荷状態に基づいて、 前記複数のサーバの中から、前記フレームの送信先となる第 1のサーバが選択される ことを特徴とする請求項 34に記載の負荷分散プログラム。 35. In the load distribution process, a first server that is a transmission destination of the frame is selected from the plurality of servers based on a load state of each of the plurality of servers. The load balancing program according to claim 34.
36.前記負荷分散処理において、前記複数のサーバの各々のサーバのサービス中のセッショ ン数に基づいて、前記第 1のサーバが選択される  36. In the load balancing process, the first server is selected based on the number of sessions in service of each of the plurality of servers.
ことを特徴とする請求項 35に記載の負荷分散プログラム。 36. The load distribution program according to claim 35.
37.前記負荷分散処理において、前記複数のサーバの中から、前記セッション数が最も少な いサーバが、前記第 1のサーバとして選択される  37. In the load balancing process, the server having the smallest number of sessions is selected as the first server from the plurality of servers.
ことを特徴とする請求項 36に記載の負荷分散プログラム。 The load distribution program according to claim 36, wherein:
38.前記負荷分散処理において、前記複数のサーバの中から、前記セッション数が所定の数 以下のサーバが、前記第 1のサーバとして選択される 38. In the load balancing process, a server having a predetermined number of sessions or less is selected as the first server from the plurality of servers.
ことを特徴とする請求項 36に記載の負荷分散プログラム。 The load distribution program according to claim 36, wherein:
39.前記負荷分散処理において、前記複数のサーバの中から、前記セッション数が減少して いるサーノくが、前記第 1のサーバとして選択される  39. In the load balancing process, the server having the reduced number of sessions is selected from the plurality of servers as the first server.
ことを特徴とする請求項 38に記載の負荷分散プログラム。 The load distribution program according to claim 38, wherein:
40.前記負荷分散処理において、前記複数のサーバの各々のサーバ毎に、サービス中のセッ シヨンの数を記録するセッション数カウント'テーブルが用いられる  40. In the load balancing process, a session count table that records the number of sessions in service is used for each of the plurality of servers.
ことを特徴とする請求項 36乃至請求項 39のいずれかに記載の負荷分散プログラム。 40. The load distribution program according to any one of claims 36 to 39, wherein:
41 .前記負荷分散処理において、  41 In the load balancing process,
前記フレームがセッション開始を示すフレームである場合、前記セッション数カウント'テ一ブ ルの前記第 1のサーバの前記サービス中のセッション数が所定の値だけインクリメントされ、 前記フレームがセッション切断又は終了を示すフレームである場合、前記セッション数カウン ト '亍一ブルの前記第 1のサーバの前記サービス中のセッション数が前記所定の値だけデクリ メントされる  If the frame indicates a session start, the number of sessions in service of the first server of the session count count table is incremented by a predetermined value, and the frame is disconnected or terminated. The number of sessions in the service of the first server of the table is decremented by the predetermined value.
ことを特徴とする請求項 40に記載の負荷分散プログラム。 41. The load distribution program according to claim 40, wherein:
42.前記負荷分散処理において、  42. In the load balancing process,
前記第 1のサーバへのアクセスの失敗を検出した場合、前記複数のサーバの中から前記第 1のサーバの次にセッション数が少ないサーバが第 2のサーバとして選択され、  When a failure to access the first server is detected, a server having the next smallest number of sessions after the first server is selected as the second server from the plurality of servers.
前記第 2のサーバのアドレスが前記受信したフレームの宛先に付与され、  The address of the second server is given to the destination of the received frame;
前記受信したフレームが接続先へ転送される ことを特徴とする請求項 36乃至請求項 41のいずれかに記載の負荷分散プログラム。 The received frame is transferred to the connection destination 42. The load distribution program according to any one of claims 36 to 41, wherein:
43.前記負荷分散処理において、  43. In the load balancing process,
前記第 1のサーバから応答がなかった場合、前記複数のサーバの中から前記第 1のサーバ の次にセッション数が少ないサーバが第 2のサーバとして選択され、  If there is no response from the first server, a server having the next smallest number of sessions is selected as the second server from the plurality of servers,
前記第 2のサーバのアドレスが前記受信したフレームの宛先に付与され、  The address of the second server is given to the destination of the received frame;
前記受信したフレームが接続先へ転送される  The received frame is transferred to the connection destination
ことを特徴とする請求項 36乃至請求項 41のいずれかに記載の負荷分散プログラム。 42. The load distribution program according to any one of claims 36 to 41, wherein:
44.前記負荷分散処理において、  44. In the load balancing process,
前記サーバからの応答時間の長さの変化に基づいて前記サーバの負荷状態が検出され、 前記複数のザ一/ の各々のサ一/く毎に前記負荷状態及びセッション数が登録され、 前記負荷状態及び前記セッション数に基づいて、前記複数のサーバの中から第 2のサーバ が選択され、  The load state of the server is detected based on a change in the length of response time from the server, and the load state and the number of sessions are registered for each of the servers. Based on the state and the number of sessions, a second server is selected from the plurality of servers,
前記第 2のサーバのアドレスが前記受信したフレームの宛先に付与され、  The address of the second server is given to the destination of the received frame;
.前記受信したフレームが接続先へ転送される  The received frame is transferred to the connection destination
ことを特徴とする請求項 36乃至請求項 41のいずれかに記載の負荷分散プログラム。 42. The load distribution program according to any one of claims 36 to 41, wherein:
45.請求項 34乃至 44のいずれかに記載の負荷分散プログラムを記憶するコンピュータ読み 取り可能な記録媒体。  45. A computer-readable recording medium storing the load distribution program according to any one of claims 34 to 44.
PCT/JP2009/056419 2008-03-31 2009-03-24 Information processing device, extension card, load distribution method, and load distribution control program WO2009123078A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-090424 2008-03-31
JP2008090424A JP2009245131A (en) 2008-03-31 2008-03-31 Computer device, expansion card of the same, load distribution method, and program

Publications (1)

Publication Number Publication Date
WO2009123078A1 true WO2009123078A1 (en) 2009-10-08

Family

ID=41135455

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/056419 WO2009123078A1 (en) 2008-03-31 2009-03-24 Information processing device, extension card, load distribution method, and load distribution control program

Country Status (2)

Country Link
JP (1) JP2009245131A (en)
WO (1) WO2009123078A1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086679A (en) * 1994-06-23 1996-01-12 Hitachi Ltd Small-scale information processing system
JP2002351760A (en) * 2001-05-30 2002-12-06 Mitsubishi Electric Corp Device and method for decentralizing server load, and program making computer implement the same method
JP2003348184A (en) * 2002-05-27 2003-12-05 Nec Corp Communication controller

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003163689A (en) * 2001-11-28 2003-06-06 Hitachi Ltd Network linkage information processing system and method for moving access between load distributors
JP3898498B2 (en) * 2001-12-06 2007-03-28 富士通株式会社 Server load balancing system
US7307948B2 (en) * 2002-10-21 2007-12-11 Emulex Design & Manufacturing Corporation System with multiple path fail over, fail back and load balancing
JP2004295656A (en) * 2003-03-27 2004-10-21 Ntt Docomo Inc Communication system, client device, load distribution method of server device by client device
JP4916809B2 (en) * 2006-08-04 2012-04-18 日本電信電話株式会社 Load balancing control apparatus and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086679A (en) * 1994-06-23 1996-01-12 Hitachi Ltd Small-scale information processing system
JP2002351760A (en) * 2001-05-30 2002-12-06 Mitsubishi Electric Corp Device and method for decentralizing server load, and program making computer implement the same method
JP2003348184A (en) * 2002-05-27 2003-12-05 Nec Corp Communication controller

Also Published As

Publication number Publication date
JP2009245131A (en) 2009-10-22

Similar Documents

Publication Publication Date Title
US11381507B2 (en) Virtual network device and related method
US9602591B2 (en) Managing TCP anycast requests
US8825867B2 (en) Two level packet distribution with stateless first level packet distribution to a group of servers and stateful second level packet distribution to a server within the group
EP3352428A1 (en) Load sharing method, apparatus and system
JP4190455B2 (en) Load balancing apparatus and program
CN107979539B (en) Message processing method and device
JP4398354B2 (en) Relay system
JP2009175889A (en) Load balancer with band control function, and method for setting the same device
CN103220165B (en) Processing method and device for server active downtime
US20150127837A1 (en) Relay apparatus and data transfer method
US20080307099A1 (en) Storage system and priority control method
EP3896927A1 (en) Packet transmission method, apparatus, and system
US20140223026A1 (en) Flow control mechanism for a storage server
US7591011B1 (en) Assigning higher priority to transactions based on subscription level
JP2011203810A (en) Server, computer system, and virtual computer management method
US11831707B2 (en) Redirect processing for content delivery networks
WO2009123078A1 (en) Information processing device, extension card, load distribution method, and load distribution control program
CN114124737B (en) Method and device for controlling user equipment to access network
JP2006260543A (en) Method and apparatus for transmitting data to network, and method and apparatus for receiving data from network
JP6194568B2 (en) Application communication control system and application communication control method
CN116055414B (en) Data transmission method, device and router
JP5572850B2 (en) Mail delivery system, mail delivery method, and program
WO2023116458A1 (en) Communication method and apparatus, and communication system
WO2023162128A1 (en) System, method, and program for collecting data
WO2023162130A1 (en) Data collection system, method, and program

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09728429

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09728429

Country of ref document: EP

Kind code of ref document: A1