WO2009064126A2 - Method for load balancing of server and apparatus for thereof - Google Patents

Method for load balancing of server and apparatus for thereof Download PDF

Info

Publication number
WO2009064126A2
WO2009064126A2 PCT/KR2008/006701 KR2008006701W WO2009064126A2 WO 2009064126 A2 WO2009064126 A2 WO 2009064126A2 KR 2008006701 W KR2008006701 W KR 2008006701W WO 2009064126 A2 WO2009064126 A2 WO 2009064126A2
Authority
WO
WIPO (PCT)
Prior art keywords
server
data
request message
data request
client
Prior art date
Application number
PCT/KR2008/006701
Other languages
French (fr)
Other versions
WO2009064126A3 (en
Inventor
Yun-Geun Lee
Original Assignee
Cdnetworks Co., Ltd.
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 Cdnetworks Co., Ltd. filed Critical Cdnetworks Co., Ltd.
Publication of WO2009064126A2 publication Critical patent/WO2009064126A2/en
Publication of WO2009064126A3 publication Critical patent/WO2009064126A3/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers

Definitions

  • the present invention relates to a load balancing method of a server, and more particularly, to a load balancing method and a load balancing apparatus allowing a different server to transmit data when a server originally determined to transmit the data among plural servers transmitting the data to a client through a communication network cannot transmit data for reasons of an increase in processing load and the like.
  • one client and one server may be connected to each other and the server may process the request from the client.
  • one server or plural servers may process plural clients' requests.
  • a apparatus specifying one server from plural servers and allowing the specified server to transmit data to the client so as to carry out the load balancing is called load balancer, load balancing apparatus(or device), or global load balancer (GLB)and others depending on positions thereof.
  • FIG. 1 is a diagram illustrating a configuration of a load balancing system to which the invention can be applied.
  • the load balancing system includes a client 100, a DNS (Domain
  • Name System server 110
  • load balancer 120 server 110
  • plural servers 130 server 130
  • an address of abc.com is first input to an address window of a web browser installed in the client 100 so as for the client 100 to access a server.
  • the input address is regenerated in a DNS query, which is transmitted to the DNS server 110.
  • the DNS server 110 transmits an IP (Internet Protocol) address corresponding to the relevant domain to the client 100.
  • IP Internet Protocol
  • the DNS server receives an IP address corresponding to the optimal server from the load balancer 120 and transmits the received IP address to the client 100.
  • the client 100 having received the IP address accesses the corresponding server 130, for example, server 1 130a in FIG. 1, by the use of the received IP address and receives data.
  • the past load balancing method enables to more efficiently transmit data by allowing the load balancer managing information on the plural servers to determine the optimal server that can transmit data to the client.
  • An advantage of some aspects of the invention is that it provides a load balancing method of a server and a load balancing apparatus enabling a different server to optimally transmit data, even when a condition of a specific server is changed while a client is being connected to the specific server and data cannot be optimally transmitted.
  • Another advantage of some aspects of the invention is that it provides a load balancing method of a server and a load balancing apparatus not increasing a processing load of the load balancing apparatus to reduce the load of the load balancing apparatus.
  • the load balancing method is embodied in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers and is carried out by the servers, the load balancing method including the steps of: (a) receiving a data request message from the client; and (b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message.
  • the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information.
  • the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
  • the destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
  • the reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
  • the DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
  • the data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
  • information on the server capable of transmitting data among the plurality of servers may be IP address information of the server capable of transmitting data from the load balancer.
  • step of (b) when it is not possible to transmit the data to the client in response to the received data request message, it is possible to allow a server capable of transmitting data among the plurality of servers to transmit the data.
  • the load balancing apparatus allows a server to perform a load balancing operation in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers.
  • the load balancing apparatus includes: server information receiver receiving information on the other servers other than the server performing the load balancing operation; and a destination information replacing unit replacing destination information included in a data request message received from the client with address information on a different server.
  • the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as the destination information.
  • the server selects one server suitable for transmitting data among the plurality of servers and allows the destination information replacing unit to replace the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
  • the destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
  • the reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
  • the DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
  • the data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
  • the destination information replacing unit may receive IP address information of the server capable of transmitting data from the load balancer and replace the destination information.
  • the load balancing apparatus may allow a server capable of transmitting data among the plurality of servers to transmit the data.
  • the load balancing apparatus may further include a load checking unit checking whether the server having received the data request message from the client can transmit data corresponding to the data request message to the client.
  • a recording medium having recorded a program for embodying a load balancing method.
  • the recording medium has recorded a program of instruction words that can be read and executed by a digital processor so as to embody the load balancing method in a content transmitting system including a client, a DNS server, a load balancer, and a plurality of servers, the load balancing method being carried out by the servers, the load balancing method including: (a) receiving a data request message from the client; and (b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message.
  • the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information.
  • the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data correspond ing to the data request message.
  • the destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
  • the reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
  • the DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
  • the data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
  • information on the server capable of transmitting data among the plurality of servers may be IP address information of the server capable of transmitting data from the load balancer.
  • step of (b) when it is not possible to transmit the data to the client in response to the received data request message, it is possible to allow a server capable of transmitting data among the plurality of servers to transmit the data.
  • FIG. 1 is a diagram schematically illustrating a configuration of a load balancing system to which a load balancing method according to an embodiment of the invention can be applied.
  • FIG. 2 is a diagram schematically illustrating a configuration of a data request message transmitted to a server in the load balancing system.
  • FIG. 3 is a diagram schematically illustrating a load balancing method according to an exemplary embodiment of the invention.
  • FIG. 4 is a diagram illustrating a configuration of a server to which the load balancing method according to the exemplary embodiment of the invention can be applied.
  • FIG. 5 is a flow diagram illustrating a procedure of embodying the load balancing method according to the exemplary embodiment of the invention.
  • a load balancing method according to an exemplary embodiment of the invention will be described now with reference to a load balancing system including the load balancer shown in FIG. 1.
  • a client transmits a DNS query to a DNS server, the client receives an IP address in response to the DNS query and accesses a server transmit data, the reception of the IP address and the selection of the server are performed by the load balancer.
  • FIG. 2 is a diagram schematically illustrating a configuration of a data request message that is transmitted to a contents server in the past load balancing system.
  • the data request message includes source information 200, destination information 210, and test information 220.
  • the source information 200 indicates information on a apparatus transmitting the data request message, that is, the client.
  • the destination information 210 indicates information on a apparatus transmitting the data, that is, the server.
  • the text information 220 indicates information on a kind of requested data.
  • the source information 200 and the destination information include address information such as IP information of the client and the server connected through a communication network.
  • the data request message is transmitted to the corresponding server and the corresponding server transmits the requested data to the client.
  • the different server by allowing the server having received the data request message to replace the destination information with destination information indicating a different server and transmit the data request message to the different server, the different server can be made to transmit the requested data to the client.
  • FIG. 3 is a diagram schematically illustrating an application of the load balancing method according to the embodiment of the invention.
  • IP address is received from the DNS server using the DNS query and the data request message is transmitted to server 1 using the received IP address is assumed.
  • the client has to transmit a DNS query to the DNS server again, receive an IP address again, and access a server to transmit data.
  • server 1 330a when server 1 330a receives a data request message but server 1 330a cannot transmit data, server 1 replaces the destination information included in the data request message with address information of a different server (for example, server 2 330b in FIG. 3) and transmits the data request message to server 2 330b.
  • server 1 replaces the destination information included in the data request message with address information of a different server (for example, server 2 330b in FIG. 3) and transmits the data request message to server 2 330b.
  • Server 2 330b receives the data request message, analyzes the received data request message, and transmits data to the client 300, whereby it is possible to transmit the data originally requested for by the client 300.
  • server 1 330a can determine a different server (for example, server 2 330b in FIG. 3) by receiving information on the servers from the load balancer 320.
  • the server first having received the data request message may receive current status information from the other servers, determine a server capable of transmitting data, and replace the destination information in the data request message, thereby allowing a different server to transmit the data to the client 300.
  • the load balancer 320 is also generally included. Accordingly, without adding any particular function or configuration to the load balancer 320, it is possible to receive status information of the plural servers and to allow the servers to use the status information.
  • the server 330a need not receive the status information of the respective servers from the other servers 330b and 33b to determine a server to finally replace the destination information, it is possible to relatively reduce the load of the server 330a performing the load balancing function.
  • FIG. 4 is a diagram illustrating a configuration of a server to which the load balancing method according to the embodiment of the invention can be applied.
  • a server as a digital processor to which the load balancing method according to the embodiment of the invention can be applied includes a load checking unit 400, a server information receiver 410, and a destination information replacing unit 420.
  • the load checking unit 400 checks the quantity of data that the server currently transmits to the client 300 and checks whether the server can additionally transmit data to the other client and the like.
  • the server information receiver 410 receives the status information of the servers and the address information of the servers from the other servers or the load balancer 320, when it cannot transmit data in response to the data request message received from the client 300.
  • the destination information replacing unit 420 replaces the destination information with the address information of the server capable of currently transmitting data to the client 300 on the basis of the server information received by the server information receiver 410 to transmit the data request message to the corresponding server.
  • This server configuration enables to transmit data requested by the client 300 by changing the destination information in the original data request message to the address information of the server capable of transmitting the data.
  • a procedure for embodying the load balancing method according to the embodiment of the invention will be described with reference to the server configuration to which the load balancing method can be applied.
  • FIG. 5 is a flow diagram illustrating a procedure for embodying the load balancing method according to the embodiment of the invention.
  • the server determines that it can transmit data to the client 300 (S504)
  • the server transmits the requested data to the client 300 using the source and text information included in the data request message from the client 300 (S512).
  • the server determines that it cannot transmit data to the client 300, as described above, the server receives the information of other servers from the load balancer 320, detects a different server capable of transmitting data (S506), and replaces the destination information in the data request message with the address information of the detected server (S508).
  • the data request message is transmitted to the corresponding server (S510) and the corresponding server receiving the data request message transmits data to the client 300 in accordance with the data request message (S512).
  • abc.com when abc.com is input to an address window of a web browser of the client, the client generates a DNS query and transmits the DNS query.
  • the DNS server transmits the IP address information of abc.com, that is, one of 123.456.78.901, 123.456.78.902, and 123.456.78.903, to the client, or receives the information on the optimal server from the load balancer and transmits the IP address information of the corresponding server to the client.
  • the client transmits the data request message to the corresponding server and receives data such as web pages therefrom.
  • 123.456.78.901 receives the data request message from the client but cannot currently transmit the data because of its overload, the server with the IP address of 123.456.78.901 replaces the IP address of 123.456.78.901 as the destination information included in the data request message with the IP address of 123.456.78.902.
  • the data request message is transmitted to the server with the IP address of 123.456.78.902, and the corresponding server analyzes the source information and the text information and transmits the data to the client.
  • the load balancing method according to the embodiment of the invention can be embodied in programs and can be recorded in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, and the like).
  • a computer-readable recording medium CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, and the like.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A load balancing method of a server and a load balancing apparatus are provided. In the load balancing method, a data request message is received from the client and one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message is allowed to transmit the data in response to the received data request message. The data request message includes information on the server, which is selected by com¬ munication of the client with the DNS server and the load balancer, as destination information. When it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and replaces destination information included in the received data request message with address in¬ formation of the selected server to transmit the data corresponding to the data request message. Even when a condition of a server requested for data by the client is changed, it is possible to allow another optimal server to transmit the data, thereby reducing a data transfer rate and a time.

Description

Description
METHOD FOR LOAD BALANCING OF SERVER AND APPARATUS FOR THEREOF
Technical Field
[1] The present invention relates to a load balancing method of a server, and more particularly, to a load balancing method and a load balancing apparatus allowing a different server to transmit data when a server originally determined to transmit the data among plural servers transmitting the data to a client through a communication network cannot transmit data for reasons of an increase in processing load and the like. Background Art
[2] With the recent development of communication networks such as Internet along with the development of digital processors such as computers, various data are transmitted and received through the communication networks. Particularly, among various digital processors connected to the communication networks to transmit and receive data, a digital processor providing data is generally called server and a digital processor requesting for and receiving data is called client.
[3] In a system including serves and clients, one client and one server may be connected to each other and the server may process the request from the client. Alternatively, one server or plural servers may process plural clients' requests.
[4] On the other hand, when plural servers process a client's request, it is efficient that a server having a small processing load or the optimal server depending on the status of the communication network processes the client s request so as to more smoothly process the client's request. Determining the optimal server from the plural servers to process the client's request is called load distribution or load balancing.
[5] A apparatus specifying one server from plural servers and allowing the specified server to transmit data to the client so as to carry out the load balancing is called load balancer, load balancing apparatus(or device), or global load balancer (GLB)and others depending on positions thereof.
[6] A past load balancing method embodied in such a load balancing system will be described now in detail with reference to FIG. 1.
[7] FIG. 1 is a diagram illustrating a configuration of a load balancing system to which the invention can be applied.
[8] As shown in FIG. 1, the load balancing system includes a client 100, a DNS (Domain
Name System) server 110, a load balancer 120, and plural servers 130.
[9] In the past load balancing method embodied in the load balancing system, for example, an address of abc.com is first input to an address window of a web browser installed in the client 100 so as for the client 100 to access a server.
[10] The input address is regenerated in a DNS query, which is transmitted to the DNS server 110. The DNS server 110 transmits an IP (Internet Protocol) address corresponding to the relevant domain to the client 100. In this course, when plural servers 130a, 130b, 130c, ... corresponding to abc.com exist, the DNS server receives an IP address corresponding to the optimal server from the load balancer 120 and transmits the received IP address to the client 100.
[11] The client 100 having received the IP address accesses the corresponding server 130, for example, server 1 130a in FIG. 1, by the use of the received IP address and receives data.
[12] The past load balancing method enables to more efficiently transmit data by allowing the load balancer managing information on the plural servers to determine the optimal server that can transmit data to the client.
[13] However, when a change in condition of the corresponding server such as an increase in request for data transmission from other clients occurs while the IP address is being transmitted from the load balancer to the client through the DNS server or the client is accessing the corresponding server by the use of the transmitted IP address, the data transmission may not carried out optimally.
[14] In this case, since the client should receive again the IP address of a server, which data should be transmitted from, by the use of the DNS server and the load balancer, the time for receiving data is elongated.
Disclosure of Invention
Technical Problem
[15] An advantage of some aspects of the invention is that it provides a load balancing method of a server and a load balancing apparatus enabling a different server to optimally transmit data, even when a condition of a specific server is changed while a client is being connected to the specific server and data cannot be optimally transmitted.
[16] Another advantage of some aspects of the invention is that it provides a load balancing method of a server and a load balancing apparatus not increasing a processing load of the load balancing apparatus to reduce the load of the load balancing apparatus.
[17] Other goals of the invention will be easily understood from the following description.
Technical Solution
[18] According to an aspect of the invention, there is provided a load balancing method.
[19] The load balancing method is embodied in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers and is carried out by the servers, the load balancing method including the steps of: (a) receiving a data request message from the client; and (b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message. Here, the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information. When it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
[20] The destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
[21] The reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
[22] The DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
[23] In the step of (a), the data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
[24] In the step of (b), information on the server capable of transmitting data among the plurality of servers may be IP address information of the server capable of transmitting data from the load balancer.
[25] In the step of (b), when it is not possible to transmit the data to the client in response to the received data request message, it is possible to allow a server capable of transmitting data among the plurality of servers to transmit the data.
[26] According to another aspect of the invention, there is provided a load balancing apparatus.
[27] The load balancing apparatus allows a server to perform a load balancing operation in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers. The load balancing apparatus includes: server information receiver receiving information on the other servers other than the server performing the load balancing operation; and a destination information replacing unit replacing destination information included in a data request message received from the client with address information on a different server. Here, the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as the destination information. When it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and allows the destination information replacing unit to replace the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
[28] The destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
[29] The reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
[30] The DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
[31] The data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
[32] As the information on the server capable of transmitting data among the plurality of servers, the destination information replacing unit may receive IP address information of the server capable of transmitting data from the load balancer and replace the destination information.
[33] When it is not possible to transmit the data to the client in response to the received data request message, the load balancing apparatus may allow a server capable of transmitting data among the plurality of servers to transmit the data.
[34] The load balancing apparatus may further include a load checking unit checking whether the server having received the data request message from the client can transmit data corresponding to the data request message to the client.
[35] According to another aspect of the invention, there is provided a recording medium having recorded a program for embodying a load balancing method.
[36] The recording medium has recorded a program of instruction words that can be read and executed by a digital processor so as to embody the load balancing method in a content transmitting system including a client, a DNS server, a load balancer, and a plurality of servers, the load balancing method being carried out by the servers, the load balancing method including: (a) receiving a data request message from the client; and (b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message. Here, the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information. When it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data correspond ing to the data request message.
[37] The destination information included in the data request message includes address information of the server to receive the data request message and the address information of the server to receive the data request message may be IP address information corresponding to domain name information of the server and being received from the DNS server.
[38] The reception of the IP address information corresponding to the domain name information of the server as the address information of the server to receive the data request message from the DNS server can be carried out by generating a DNS query using the domain name and transmitting the DNS query to the DNS server.
[39] The DNS server can receive the IP address information from the load balancer performing a load balancing operation on the plural servers.
[40] In the step of (a), the data request message may include: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
[41] In the step of (b), information on the server capable of transmitting data among the plurality of servers may be IP address information of the server capable of transmitting data from the load balancer.
[42] In the step of (b), when it is not possible to transmit the data to the client in response to the received data request message, it is possible to allow a server capable of transmitting data among the plurality of servers to transmit the data.
[43] Other goals, advantages, and features of the invention will be clearly understood from the following detailed description of exemplary embodiments with reference to the accompanying drawings. Brief Description of Drawings
[44] FIG. 1 is a diagram schematically illustrating a configuration of a load balancing system to which a load balancing method according to an embodiment of the invention can be applied. [45] FIG. 2 is a diagram schematically illustrating a configuration of a data request message transmitted to a server in the load balancing system. [46] FIG. 3 is a diagram schematically illustrating a load balancing method according to an exemplary embodiment of the invention. [47] FIG. 4 is a diagram illustrating a configuration of a server to which the load balancing method according to the exemplary embodiment of the invention can be applied. [48] FIG. 5 is a flow diagram illustrating a procedure of embodying the load balancing method according to the exemplary embodiment of the invention.
Mode for the Invention [49] Hereinafter, exemplary embodiments of the invention will be described in detail with reference the accompanying drawings. To facilitate the entire understanding of the invention, like reference numerals in the drawings reference like elements. [50] A load balancing method according to an exemplary embodiment of the invention will be described now with reference to a load balancing system including the load balancer shown in FIG. 1. [51] As described above, in the past load balancing method, a client transmits a DNS query to a DNS server, the client receives an IP address in response to the DNS query and accesses a server transmit data, the reception of the IP address and the selection of the server are performed by the load balancer. [52] In the embodiment of the invention, the selection of a server is performed by receiving the IP address as described above, but when the selected server cannot transmit data, a different server can be made to transmit the data. [53] The different server can be made to transmit the data by allowing the selected server to change a request message from the client. [54] A configuration of the data request message which the client transmits to the server will be described now with reference to FIG. 2. [55] FIG. 2 is a diagram schematically illustrating a configuration of a data request message that is transmitted to a contents server in the past load balancing system. [56] As shown in FIG. 2, the data request message includes source information 200, destination information 210, and test information 220. [57] The source information 200 indicates information on a apparatus transmitting the data request message, that is, the client. The destination information 210 indicates information on a apparatus transmitting the data, that is, the server. The text information 220 indicates information on a kind of requested data.
[58] On the other hand, the source information 200 and the destination information include address information such as IP information of the client and the server connected through a communication network.
[59] With reference to the IP addresses included in the source and destination information, the data request message is transmitted to the corresponding server and the corresponding server transmits the requested data to the client.
[60] In the embodiment of the invention, by allowing the server having received the data request message to replace the destination information with destination information indicating a different server and transmit the data request message to the different server, the different server can be made to transmit the requested data to the client.
[61] That is, by allowing a server to replace the destination information included in the data request message with different destination information without additionally installing any particular apparatus or equipment in the communication network, the server having received the data request message can be made to perform the load balancing function.
[62] The application of the load balancing method will be described in more detail with reference to FIG. 3.
[63] FIG. 3 is a diagram schematically illustrating an application of the load balancing method according to the embodiment of the invention.
[64] In FIG. 3, the process described with reference to FIG. 1, that is, the case where the
IP address is received from the DNS server using the DNS query and the data request message is transmitted to server 1 using the received IP address is assumed.
[65] In the past load balancing method, when server 1 having received the data request message from the client cannot currently transmit the data, the client cannot receive specific data such as web pages or contents.
[66] Accordingly, the client has to transmit a DNS query to the DNS server again, receive an IP address again, and access a server to transmit data.
[67] However, in the embodiment of the invention, when server 1 330a receives a data request message but server 1 330a cannot transmit data, server 1 replaces the destination information included in the data request message with address information of a different server (for example, server 2 330b in FIG. 3) and transmits the data request message to server 2 330b.
[68] Server 2 330b receives the data request message, analyzes the received data request message, and transmits data to the client 300, whereby it is possible to transmit the data originally requested for by the client 300.
[69] On the other hand, server 1 330a can determine a different server (for example, server 2 330b in FIG. 3) by receiving information on the servers from the load balancer 320.
[70] Without employing the load balancer 320, the server first having received the data request message may receive current status information from the other servers, determine a server capable of transmitting data, and replace the destination information in the data request message, thereby allowing a different server to transmit the data to the client 300.
[71] However, when plural servers 330a, 330b, 330n are included, the load balancer 320 is also generally included. Accordingly, without adding any particular function or configuration to the load balancer 320, it is possible to receive status information of the plural servers and to allow the servers to use the status information.
[72] Since the server 330a need not receive the status information of the respective servers from the other servers 330b and 33b to determine a server to finally replace the destination information, it is possible to relatively reduce the load of the server 330a performing the load balancing function.
[73] The configuration of the server performing the load balancing function will be described now with reference to FIG. 4.
[74] FIG. 4 is a diagram illustrating a configuration of a server to which the load balancing method according to the embodiment of the invention can be applied.
[75] As shown in FIG. 4, a server as a digital processor to which the load balancing method according to the embodiment of the invention can be applied includes a load checking unit 400, a server information receiver 410, and a destination information replacing unit 420.
[76] The load checking unit 400 checks the quantity of data that the server currently transmits to the client 300 and checks whether the server can additionally transmit data to the other client and the like.
[77] In a load balancing system including the past load balancer, the load checking unit
400 performs serves to transmit the status information of the servers to determine whether the servers can transmit data to the client.
[78] The server information receiver 410 receives the status information of the servers and the address information of the servers from the other servers or the load balancer 320, when it cannot transmit data in response to the data request message received from the client 300.
[79] The destination information replacing unit 420 replaces the destination information with the address information of the server capable of currently transmitting data to the client 300 on the basis of the server information received by the server information receiver 410 to transmit the data request message to the corresponding server.
[80] This server configuration enables to transmit data requested by the client 300 by changing the destination information in the original data request message to the address information of the server capable of transmitting the data. A procedure for embodying the load balancing method according to the embodiment of the invention will be described with reference to the server configuration to which the load balancing method can be applied.
[81] FIG. 5 is a flow diagram illustrating a procedure for embodying the load balancing method according to the embodiment of the invention.
[82] As shown in FIG. 5, in the load balancing method according to the embodiment of the invention, when a data request message for requesting for transmitting data is received from the client 300 (S500), the server checks its load to determine whether it can transmit data to the client 300 (S502).
[83] When the server determines that it can transmit data to the client 300 (S504), the server transmits the requested data to the client 300 using the source and text information included in the data request message from the client 300 (S512).
[84] When the server determines that it cannot transmit data to the client 300, as described above, the server receives the information of other servers from the load balancer 320, detects a different server capable of transmitting data (S506), and replaces the destination information in the data request message with the address information of the detected server (S508).
[85] When the destination information is replaced, the data request message is transmitted to the corresponding server (S510) and the corresponding server receiving the data request message transmits data to the client 300 in accordance with the data request message (S512).
[86] The load balancing method in the server will be described now in comparison with the pat load balancing method.
[87] First, it is assumed that the domain address of the server which the client intends to access is abc.com, the number of web servers providing the web page of abc.com is three, the IP addresses thereof are 123.456.78.901, 123.456.78.902, and 123.456.78.903.
[88] In the past load balancing method, when abc.com is input to an address window of a web browser of the client, the client generates a DNS query and transmits the DNS query. The DNS server transmits the IP address information of abc.com, that is, one of 123.456.78.901, 123.456.78.902, and 123.456.78.903, to the client, or receives the information on the optimal server from the load balancer and transmits the IP address information of the corresponding server to the client.
[89] When the IP address information transmitted to the client is 123.456.78.901, the client transmits the data request message to the corresponding server and receives data such as web pages therefrom.
[90] On the contrary, when the server with the IP address of 123.456.78.901 receives the data request message from the client but cannot currently transmit the data because of its overload, the client cannot receive the data but should request the DNS server for a new IP address.
[91] However, in the embodiment of the invention, when the server with the IP address of
123.456.78.901 receives the data request message from the client but cannot currently transmit the data because of its overload, the server with the IP address of 123.456.78.901 replaces the IP address of 123.456.78.901 as the destination information included in the data request message with the IP address of 123.456.78.902.
[92] In this case, the data request message is transmitted to the server with the IP address of 123.456.78.902, and the corresponding server analyzes the source information and the text information and transmits the data to the client.
[93] That is, by replacing the IP address of 123.456.78.901 with the IP address of
123.456.78.902, it is possible to transmit the requested data to the client.
[94] The load balancing method according to the embodiment of the invention can be embodied in programs and can be recorded in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, and the like).
[95] The above-mentioned exemplary embodiments of the invention are intended to exemplify the invention and various corrections, modifications, and additions can be made thereto by those skilled in the art without departing from the spirit and scope of the invention. The corrections, modifications, and additions are naturally included in the appended claims. Industrial Applicability
[96] In the load balancing method and the load balancing apparatus according to the invention, it is possible to enable a different server to optimally transmit data, even when a condition of a specific server is changed while a client is being connected to the specific server and thus data cannot be optimally transmitted, thereby reducing the data transfer rate and time.
[97] It is also possible not to increase the processing load of the load balancing apparatus, thereby reducing the load of the load balancing apparatus.

Claims

Claims
[1] A load balancing method embodied in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers, the load balancing method being carried out by the servers, the load balancing method comprising the steps of:
(a) receiving a data request message from the client; and
(b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message, wherein the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information, and wherein when it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
[2] The load balancing method according to claim 1, wherein the data request message in the step of (a) includes: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
[3] The load balancing method according to claim 1, wherein information on the server capable of transmitting data among the plurality of servers in the step of (b) is IP address information of the server capable of transmitting data from the load balancer.
[4] A load balancing apparatus allowing a server to perform a load balancing operation in a contents transmitting system including a client, a domain name system (DNS) server, a load balancer, and a plurality of servers, the load balancing apparatus comprising: server information receiver receiving information on the other servers other than the server performing the load balancing operation; and a destination information replacing unit replacing destination information included in a data request message received from the client with address in- formation on a different server, wherein the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as the destination information, and wherein when it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and allows the destination information replacing unit to replace the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
[5] The load balancing apparatus according to claim 4, wherein the data request message includes: source information including address information of the client; destination information including address information of the server receiving the data request message; and text information including contents information of the data to be received from the server.
[6] The load balancing apparatus according to claim 4, wherein as the destination information on the server capable of transmitting data among the plurality of servers, the destination information replacing unit receives IP address information of the server capable of transmitting data from the load balancer and replaces the destination information.
[7] The load balancing apparatus according to claim 4, further comprising a load checking unit checking whether the server having received the data request message from the client can transmit data corresponding to the data request message to the client.
[8] A recording medium having recorded a program of instruction words that can be read and executed by a digital processor so as to embody a load balancing method in a content transmitting system including a DNS server, a load balancer, and a plurality of servers, the load balancing method being carried out by the servers, the load balancing method comprising the steps of:
(a) receiving a data request message from the client; and
(b) allowing one server, which is suitable for transmitting data, among the plurality of servers including the server having received the data request message to transmit the data in response to the received data request message, wherein the data request message includes information on the server, which is selected by communication of the client with the DNS server and the load balancer, as destination information, and wherein when it is difficult for the server having received the data request message to transmit the data, the server selects one server suitable for transmitting data among the plurality of servers and replaces the destination information included in the received data request message with address information of the selected server to transmit the data corresponding to the data request message.
PCT/KR2008/006701 2007-11-14 2008-11-13 Method for load balancing of server and apparatus for thereof WO2009064126A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020070116313A KR100950182B1 (en) 2007-11-14 2007-11-14 Method for load balancing of server and apparatus for thereof
KR10-2007-0116313 2007-11-14

Publications (2)

Publication Number Publication Date
WO2009064126A2 true WO2009064126A2 (en) 2009-05-22
WO2009064126A3 WO2009064126A3 (en) 2009-07-09

Family

ID=40639316

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2008/006701 WO2009064126A2 (en) 2007-11-14 2008-11-13 Method for load balancing of server and apparatus for thereof

Country Status (2)

Country Link
KR (1) KR100950182B1 (en)
WO (1) WO2009064126A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9414091B2 (en) 2008-08-01 2016-08-09 Qualcomm Incorporated Video encoder with an integrated temporal filter
CN111193778A (en) * 2019-12-16 2020-05-22 武汉思为同飞网络技术股份有限公司 Method, device, equipment and medium for WEB service load balancing

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101419436B1 (en) * 2012-12-14 2014-08-13 (주)씨디네트웍스 Method and apparatus for Domain name service
EP2866386B1 (en) 2013-08-26 2020-01-22 Jeong Hoan Seo Domain name system and domain name service method based on user information
KR101569857B1 (en) * 2014-06-20 2015-11-27 서정환 Method and system for detecting client causing network problem using client route control system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020035225A (en) * 2000-11-04 2002-05-11 남민우 Method and apparatus of server load balancing using MAC address translation
US20020194335A1 (en) * 2001-06-19 2002-12-19 Maynard William Pat Method and apparatus for load balancing

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7620687B2 (en) * 2004-06-25 2009-11-17 Telcordia Technologies, Inc. Distributed request routing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020035225A (en) * 2000-11-04 2002-05-11 남민우 Method and apparatus of server load balancing using MAC address translation
US20020194335A1 (en) * 2001-06-19 2002-12-19 Maynard William Pat Method and apparatus for load balancing

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9414091B2 (en) 2008-08-01 2016-08-09 Qualcomm Incorporated Video encoder with an integrated temporal filter
CN111193778A (en) * 2019-12-16 2020-05-22 武汉思为同飞网络技术股份有限公司 Method, device, equipment and medium for WEB service load balancing
CN111193778B (en) * 2019-12-16 2022-08-09 武汉思为同飞网络技术股份有限公司 Method and device for balancing WEB service load

Also Published As

Publication number Publication date
KR20090049936A (en) 2009-05-19
WO2009064126A3 (en) 2009-07-09
KR100950182B1 (en) 2010-03-29

Similar Documents

Publication Publication Date Title
US20210021692A1 (en) Translation of resource identifiers using popularity information upon client request
US20210297365A1 (en) Request routing based on class
US9800539B2 (en) Request routing management based on network components
US10264062B2 (en) Request routing using a popularity identifier to identify a cache component
US9160703B2 (en) Request routing management based on network components
US20190044787A1 (en) Point of presence management in request routing
US20200195753A1 (en) Request routing utilizing client location information
EP2294515B1 (en) Request routing using network computing components
EP3567881B1 (en) Request routing and updating routing information utilizing client location information
US20100042724A1 (en) Contents delivery system and method, web server and contents provider dns server thereof
WO2009064126A2 (en) Method for load balancing of server and apparatus for thereof
JP5806067B2 (en) Server apparatus and server apparatus control method

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

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08850485

Country of ref document: EP

Kind code of ref document: A2