KR20080046900A - Load balancing system and method load balancing device - Google Patents

Load balancing system and method load balancing device Download PDF

Info

Publication number
KR20080046900A
KR20080046900A KR1020060116551A KR20060116551A KR20080046900A KR 20080046900 A KR20080046900 A KR 20080046900A KR 1020060116551 A KR1020060116551 A KR 1020060116551A KR 20060116551 A KR20060116551 A KR 20060116551A KR 20080046900 A KR20080046900 A KR 20080046900A
Authority
KR
South Korea
Prior art keywords
distributed server
user terminal
server
distributed
service
Prior art date
Application number
KR1020060116551A
Other languages
Korean (ko)
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 주식회사 타오네트웍스
Priority to KR1020060116551A priority Critical patent/KR20080046900A/en
Publication of KR20080046900A publication Critical patent/KR20080046900A/en

Links

Images

Classifications

    • 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/1014Server selection for load balancing based on the content of a request
    • 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/1021Server selection for load balancing based on client or server locations

Abstract

A load distributing system and method using a load distributing device are provided to process only a connection request between a user terminal and a server to reduce load concentrated on a load distributing device, thereby providing an efficient load distributing system. At least one distributing server(100) is installed in locally distributed PC(Personal Computer) rooms and has the same network connection of which the uplink/downlink bandwidth is identical with each other. A service function storage unit(150) stores the network address of at least one distributing server providing a service corresponding to each type of a service request. A load distributing device(140) discriminates at least one distributing server corresponding to the service request from a user terminal(160) referring to the service function storage unit in response to the service request received from the user terminal, selects one of at least one distributing server on the basis of a predetermined determination rule, and transmits a redirection message to the selected distributing server to the user terminal. The user terminal reconnects with the selected distributing server in response to the reception of the redirection message.

Description

부하 분산 장치를 이용한 부하 분산 시스템 및 방법 {LOAD BALANCING SYSTEM AND METHOD LOAD BALANCING DEVICE}Load balancing system and method using load balancer {LOAD BALANCING SYSTEM AND METHOD LOAD BALANCING DEVICE}

도 1은 본 발명의 일례에 따른 부하 분산 시스템의 구성도를 도시한 도면이다.1 is a diagram illustrating a configuration of a load balancing system according to an example of the present invention.

도 2는 본 발명의 일례에 따른 서비스 함수 저장부의 일례를 도시한 도면이다.2 is a diagram illustrating an example of a service function storage unit according to an example of the present invention.

도 3은 본 발명의 일례에 따른 부하 분산 장치의 일례를 도시한 도면이다.3 is a diagram illustrating an example of a load balancing device according to an example of the present invention.

도 4는 본 발명의 일례에 따른 서비스 함수 저장부의 일례를 도시한 도면이다.4 is a diagram illustrating an example of a service function storage unit according to an example of the present invention.

도 5는 본 발명의 일례에 따른 서비스 함수 저장부의 또 다른 일례를 도시한 도면이다. 5 is a diagram illustrating another example of a service function storage unit according to an example of the present invention.

도 6은 본 발명의 일례에 따른 부하 분산 시스템의 방법이 도시된 흐름도이다.6 is a flowchart illustrating a method of a load balancing system according to an example of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

100: 분산 서버100: distributed server

110: 제 1 분산 서버110: first distributed server

120: 제 2 분산 서버120: second distributed server

130: 제 n 분산 서버130: nth distributed server

140: 부하 분산 장치140: load balancer

150: 서비스 함수 저장부150: service function storage unit

160: 사용자 단말기160: user terminal

본 발명은 부하 분산 시스템 및 그 방법에 관한 것으로, 더욱 상세하게는 부하 분산 장치에 부하가 집중되는 것을 해소한 부하 분산 시스템 및 방법에 관한 것이다.The present invention relates to a load balancing system and a method thereof, and more particularly, to a load balancing system and method that eliminates the concentration of the load in the load balancer.

최근 인터넷의 발전에 따라 고성능의 서버에 대한 요구가 증가하고 있다. 이에 대응하여 고성능의 서버를 사용하는 대신 다수의 분산 서버들을 이용하여 사용자의 요구를 처리하는 시스템이 널리 사용되고 있다. 이러한 방법으로 연결 분배 방식, 대리 응답 방식, 및 도메인 네임 서버 수정 등을 통한 서버 부하 분산 방법 등이 있다.Recently, with the development of the Internet, the demand for high performance servers is increasing. In response to this, instead of using a high performance server, a system for processing a user's request using a plurality of distributed servers is widely used. These methods include connection distribution, surrogate response, and server load balancing through domain name server modification.

연결 분배 방식은 4계층(Layer-4: L4) 스위치에 의한 서버 부하 분산 방법으로서, L4 스위치를 이용하여 특정 연결되어 있는 각각의 서버의 로드(load)를 분석하여 각각의 서버로 로드를 분산시키는 방식으로, 트래픽 플로우에 따라 더 한층 정밀한 네트워크 튜닝(Tuning)과 우선 순위 부여 기능을 통해 2/3계층 스위칭 방식보다 보다 발전된 방식이다. 2계층 스위치는 MAC(Media Access Control) 어드레스 를 사용하여 스위칭 기능을 수행하고, 3계층 스위치는 IP 같은 네트워크 어드레스를 기반으로 라우팅을 하며, L4 스위치는 4계층 프로토콜의 헤더 정보를 이용하여 정책 기반의 라우팅을 수행하고, 트래픽에 대한 우선 순위부여 기능을 수행한다. L4 스위치에 의한 서버 부하 분산 방법은 DNS(domain name server)에 의존하지 않고 다수의 서버들을 하나의 가상 IP(Virtual IP: VIP) 주소로 묶어 사용자들에게는 VIP 만을 알려주고 IP 어드레스뿐 만 아니라, 4계층의 TCP/UDP 포트에서도 특정 서버에 장애가 발생하였을 경우에도 서버들간에 올바른 부하 분산이 가능하도록 한다.The connection distribution method is a server load balancing method using four-layer (Layer-4: L4) switch. The L4 switch is used to analyze the load of each server connected to a specific connection and distribute the load to each server. This method is more advanced than 2/3 layer switching through more precise network tuning and prioritization according to traffic flow. Layer 2 switches use MAC (Media Access Control) addresses to perform switching functions, Layer 3 switches route based on network addresses such as IP, and L4 switches use policy-based protocols using header information from Layer 4 protocols. Performs routing and prioritizes traffic. The server load balancing method by the L4 switch does not rely on the domain name server (DNS) and binds multiple servers to one virtual IP (VIP) address to inform users of only VIP and not only IP address but also four layers. In the TCP / UDP port, even if a specific server fails, correct load balancing among the servers is possible.

대리 응답 방식은 프록시 서버(proxy server)에서 서비스 요청을 받고 프록시 서버가 실제 서버를 대신하여 서비스를 실행하는 방식을 말하며, 네임 서버 수정을 통한 부하 분산 방식은, 도메인 네임 요청을 분석하여 요청자에게 가장 좋은 결과를 줄 수 있는 서버로 도메인 네임을 응답해 주는 방식을 말한다.The proxy response method is a method of receiving a service request from a proxy server and the proxy server executing a service on behalf of a real server. The load balancing method of modifying a name server analyzes a domain name request to impersonate a requester. This is a way of responding to domain names with a server that produces good results.

그러나, 종래의 L4 스위치를 사용하는 방식은, L4 스위치가 모든 패킷(packet)을 수신하고 해당 패킷의 커넥션 튜플(connetion tuple)을 추출하여, 커넥션 튜플에 매핑 테이블(mapping table)이 존재하는 경우에 매핑 테이블에서 튜플에 맞는 서버를 추출하여 해당 서버로 패킷을 전달하게 된다. 따라서 사용자 단말기로부터 수신된 모든 패킷은 물론 분산 서버로부터 사용자 단말기로 송신하는 모든 패킷이 L4 스위치를 거쳐가야 하므로 L4 스위치에 모든 부하가 집중되는 단점이 있다. 또한, 연결 분배 방식 및 대리 응답 방식은 L4 스위치 및 프록시 서버를 반드시 통과하여야 하므로 부하가 L4 스위치 또는 프록시 서버에 집중되는 단점이 있으 며, 도메인 네임 서버 수정 방식은 모든 도메인 네임 서버를 수정해 주어야 하므로 실제 서비스의 적용 시에 많은 시간이 소비되는 문제점이 있었다.However, in the conventional L4 switch, the L4 switch receives all packets, extracts a connection tuple of the packet, and a mapping table exists in the connection tuple. The server matching the tuple is extracted from the mapping table and the packet is forwarded to the server. Therefore, all packets received from the user terminal, as well as all packets transmitted from the distributed server to the user terminal must pass through the L4 switch has the disadvantage that all the load is concentrated on the L4 switch. In addition, the connection distribution method and surrogate response method must pass through the L4 switch and the proxy server, so that the load is concentrated on the L4 switch or the proxy server, and the domain name server modification method must modify all the domain name servers. There was a problem that a lot of time is spent in the application of the actual service.

따라서, 본 발명은 사용자 단말기로부터 수신한 서비스 요청에 대해 응답하여 사용자 단말기가 분산 서버에 액세스 하는 데에만 관여하여 처리하도록 하는 부하 분산 장치를 이용하여, 종래의 부하 분산 시스템보다 보다 빠르고 효율적인 부하 분산 시스템 및 방법을 제안하고자 한다.Accordingly, the present invention is faster and more efficient than the conventional load balancing system by using a load balancer that allows the user terminal to participate in and process only access to the distributed server in response to the service request received from the user terminal. And a method.

한편, 지역적으로 분산되어 있는 PC방의 경우 상하향 대역폭이 동일한 고가의 네트워크 연결을 가지고 있지만, 실제적으로는 다운 링크만 많이 사용할 뿐 업 링크는 거의 사용되지 않고 유휴 상태에 있는 실정이다. 따라서, 이와 같이 지역적으로 분산된 위치에 존재하는 유휴 상태의 업 링크를 효율적으로 사용하는 방법이 요구되고 있다.On the other hand, geographically dispersed PC rooms have expensive network connections with the same up-down bandwidth, but in practice, only the downlink is used a lot and the uplink is rarely used and is idle. Therefore, there is a need for a method of efficiently using an idle uplink existing in such geographically dispersed locations.

본 발명은 상기와 같은 종래기술을 개선하기 위해 안출된 것으로서, 사용 단말기와 서버간의 연결 요청만을 처리하여 부하 분산 장치로 집중되는 부하를 경감시켜, 종래의 부하 분산 시스템보다 빠르고 효율적인 부하 분산 시스템을 제공하는 것을 목적으로 한다.The present invention has been made to improve the prior art as described above, by processing only the connection request between the user terminal and the server to reduce the load concentrated on the load balancer, to provide a faster and more efficient load balancing system than the conventional load balancing system It aims to do it.

또한, 본 발명은 지역적으로 분산된 위치에 존재하는 유휴 상태의 업 링크 네트워크들을 효율적으로 이용하여 사용자의 네트워크 요구를 효율적으로 처리할 수 있도록 하는 것을 목적으로 한다.In addition, an object of the present invention is to enable efficient use of idle uplink networks in geographically dispersed locations to efficiently handle a user's network needs.

상기의 목적을 이루고 종래기술의 문제점을 해결하기 위하여, 본 발명의 일측에 따른 부하 분산 시스템은, 지역적으로 분산된 PC방에 설치되고 상하향 대역폭이 동일한 네트워크 접속을 가지는 적어도 하나 이상의 분산 서버, 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버의 네트워크 주소를 저장하는 서비스 함수 저장부, 사용자 단말기로부터 수신한 서비스 요청에 응답하여, 상기 서비스 함수 저장부를 참조하여 상기 사용자 단말기로부터의 상기 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 소정의 결정 규칙에 기초하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택하여, 상기 선택된 분산 서버로의 리다이렉션 메시지를 상기 사용자 단말기로 송신하는 부하 분산 장치 및 상기 리다이렉션 메시지의 수신에 응답하여 상기 선택된 분산 서버로 재접속하는 사용자 단말기를 포함한다.In order to achieve the above object and to solve the problems of the prior art, the load balancing system according to one aspect of the present invention, at least one distributed server installed in a geographically distributed PC room and having the same network connection up and down bandwidth, service request A service function storage for storing a network address of at least one distributed server providing a service corresponding to each of the types of services, in response to a service request received from a user terminal, from the user terminal with reference to the service function storage; A load that identifies at least one distributed server corresponding to the service request, selects one of the at least one distributed server based on a predetermined decision rule, and sends a redirection message to the selected distributed server to the user terminal. Dispersing device and above And a user terminal to reconnect to the selected distribution server in response to receiving the message collection die.

본 발명의 일측에 따르면, 상기 분산 서버는 상기 분산 서버의 유휴 대역폭을 측정하여 상기 부하 분산 장치에 보고하고, 상기 부하 분산 장치는 상기 분산 서버의 유휴 대역폭을 참조하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택한다. 상기 분산 서버는 상기 분산 서버의 파일의 전송 속도에 기초하여 상기 유휴 대역폭을 측정할 수 있다. 또한, 상기 리다이렉션 메시지는, HTTP 리다이렉션 메시지일 수 있다.According to one aspect of the present invention, the distributed server measures the idle bandwidth of the distributed server and reports to the load balancer, wherein the load balancer refers to one of the at least one distributed server with reference to the idle bandwidth of the distributed server Select. The distributed server may measure the idle bandwidth based on a transmission speed of a file of the distributed server. The redirection message may be an HTTP redirection message.

본 발명의 또 다른 일측에 따른 부하 분산 장치는, 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버의 네트워크 주소를 저장하는 서비스 함수 저장부, 사용자 단말기로부터 서비스 요청을 수신하는 네트 워크 수신부, 상기 서비스 함수 저장부를 참조하여 상기 사용자 단말기로부터의 상기 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 소정의 결정 규칙에 기초하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택하는 분산 서버 결정부, 상기 선택된 분산 서버로의 리다이렉션 메시지를 생성하는 응답 생성부 및 상기 생성된 리다이렉션 메시지를 상기 사용자 단말기로 송신하는 네트워크 송신부를 포함한다.Load balancing device according to another aspect of the present invention, a service function storage unit for storing the network address of at least one or more distributed server providing a service corresponding to each of the type of service request, receiving a service request from the user terminal A distributed network that identifies at least one distributed server corresponding to the service request from the user terminal by referring to a network receiver and the service function storage, and selects one of the at least one distributed server based on a predetermined decision rule And a server determiner, a response generator for generating a redirect message to the selected distributed server, and a network transmitter for transmitting the generated redirect message to the user terminal.

본 발명의 또 다른 일측에 따르면, 상기 리다이렉션 메시지는, HTTP 리다이렉션 메시지일 수 있다. 또한, 상기 부하 분산 장치는 상기 사용자 단말기로부터의 서비스 요청의 유형을 분석하는 서비스 요청 분석부를 더 포함한다. 상기 분산 서버는 PC방에 설치될 수 있는데, 이때 상기 분산 서버는 상하향 대역폭이 동일한 네트워크 접속을 가진다.According to another aspect of the present invention, the redirection message may be an HTTP redirection message. In addition, the load balancer further includes a service request analyzer for analyzing a type of a service request from the user terminal. The distributed server may be installed in a PC room, where the distributed server has a network connection having the same up and down bandwidth.

본 발명의 또 다른 일측에 따르면, 상기 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버는 지역적으로 분산되어 있고, 상기 분산 서버 결정부는, 상기 적어도 하나 이상의 분산 서버 중 상기 사용자 단말기와 지역적으로 근접한 분산 서버를 선택한다. 또한, 상기 분산 서버 결정부는, 상기 적어도 하나 이상의 분산 서버 중 상기 사용자 단말기와 동일한 ISP를 갖는 분산 서버를 선택하고, 상기 적어도 하나 이상의 분산 서버를 폴링한 후, 현재 동작 중인 분산 서버를 선택한다. According to another aspect of the present invention, at least one distributed server providing a service corresponding to each type of the service request is distributed locally, and the distributed server determination unit may be configured to include the user among the at least one distributed server. Choose a distributed server that is close to the terminal. The distributed server determiner may select a distributed server having the same ISP as the user terminal among the at least one distributed server, poll the at least one distributed server, and then select a distributed server currently in operation.

또한, 상기 분산 서버 결정부는, 상기 적어도 하나 이상의 분산 서버의 유휴 대역폭을 측정하고, 상기 유휴 대역폭이 큰 분산 서버를 선택할 수 있다. 이때, 상기 분산 서버 결정부는, 상기 적어도 하나 이상의 분산 서버로부터 파일의 전송 속도에 대한 보고를 수신하고, 상기 보고에 기초하여 상기 분산 서버의 유휴 대역폭을 측정한다.The distributed server determiner may measure an idle bandwidth of the at least one distributed server and select a distributed server having a large idle bandwidth. In this case, the distributed server determiner may receive a report on a file transfer rate from the at least one distributed server, and measure an idle bandwidth of the distributed server based on the report.

이하 첨부된 도면들 및 첨부된 도면들에 기재된 내용들을 참조하여 본 발명의 바람직한 실시예를 상세하게 설명하지만, 본 발명이 실시예들에 의해 제한되거나 한정되는 것은 아니다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings and the contents described in the accompanying drawings, but the present invention is not limited or limited to the embodiments. Like reference numerals in the drawings denote like elements.

도 1은 본 발명의 일례에 따른 부하 분산 시스템의 구성도를 도시한 도면이다.1 is a diagram illustrating a configuration of a load balancing system according to an example of the present invention.

도 1에 도시된 바와 같이, 본 발명에 따른 부하 분산 시스템은 분산 서버(100), 부하 분산 장치(140), 서비스 함수 저장부(150) 및 사용자 단말기(160)를 포함한다.As shown in FIG. 1, the load balancing system according to the present invention includes a distributed server 100, a load balancer 140, a service function storage unit 150, and a user terminal 160.

분산 서버(100)는 다수의 서버로 구성되어 각 서버가 특정 장소에 함께 설치되거나 지역적으로 분산된 장소에 설치될 수 있다. 본 발명에 따른 분산 서버(100)는 지역적으로 분산되어 있는 각각의 PC방에 분산되어 설치된다. 상기 분산 서버(100)는 도 1에 도시된 바와 같이 제 1 분산 서버(110), 제 2 분산 서버(120) 및 제 n 분산 서버(130)가 각각 지역적으로 원?근거리로 분산되어 설치된다. 또한, 상기 분산 서버(100)는 상하향 대역폭(bandwidth)이 동일한 네트워크 접속을 갖는다. 상하향 대역폭이 동일하다 함은, 업로드와 다운로드시의 네트워크의 패킷(packet) 전송 데이터량이 동일하다는 의미이다. 이와 같이 상하향 대역폭이 동일 한 네트워크 접속에 의하여 지역적으로 분산되어 있는 각 PC방에 설치된 상기 분산 서버(100)는 상기 사용자 단말기(160)와 상기 네트워크를 통하여 연결되어있다.The distributed server 100 may be configured of a plurality of servers, and each server may be installed together at a specific place or may be installed at a locally distributed place. The distributed server 100 according to the present invention is installed distributed in each PC room that is distributed locally. As illustrated in FIG. 1, the distributed server 100 includes a first distributed server 110, a second distributed server 120, and an n-th distributed server 130 distributed locally at a local distance. In addition, the distributed server 100 has a network connection of the same up and down bandwidth (bandwidth). The same up-down bandwidth means that the amount of packet transmission data of the network during upload and download is the same. As described above, the distributed server 100 installed in each PC room that is locally distributed by a network connection having the same up / down bandwidth is connected to the user terminal 160 through the network.

상기 서비스 함수 저장부(150)는 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100)의 네트워크 주소가 저장되어 있다. 서비스 함수 저장부(150)는 부하 분산 장치(140)가 상기 사용자 단말기로부터의 서비스 요청에 대응하여 분산 서버(100) 중에 특정 분산 서버를 식별하고 선택하는데 참조할 수 있도록 한다.The service function storage unit 150 stores a network address of the distributed server 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. The service function storage unit 150 allows the load balancer 140 to refer to identifying and selecting a specific distributed server among the distributed servers 100 in response to a service request from the user terminal.

상기 부하 분산 장치(140)는 사용자 단말기로부터 수신한 서비스 요청에 응답한다. 사용자 단말기(160)로부터의 서비스 요청이라 함은, 사용자 단말기(160)로부터 수신된 특정한 서비스에 대한 요청 패킷이다. 예를 들어, 특정 온라인 게임 업체가 새로운 게임을 출시하는 경우, 상기 게임을 다운로드할 서버가 다수 필요하게 된다. 이때, 제1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등에 상기 게임에 필요한 파일을 저장해 둔다. 사용자는 상기 온라인 게임을 다운로드 받기 위하여 부하 분산 장치(140)로 상기 게임의 다운로드 요청을 한다. 이 경우, 상기 다운로드 요청이 서비스 요청이 된다.The load balancer 140 responds to the service request received from the user terminal. The service request from the user terminal 160 is a request packet for a specific service received from the user terminal 160. For example, when a particular online game company releases a new game, a number of servers for downloading the game are required. At this time, files necessary for the game are stored in the first distributed server 110, the second distributed server 120, and the nth distributed server 130. A user requests a download of the game to the load balancer 140 in order to download the online game. In this case, the download request becomes a service request.

부하 분산 장치(140)는 상기 서비스 함수 저장부(150)에 저장되어 있는, 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100)의 네트워크 주소를 참조하여, 상기 사용자 단말기(160)의 서비스 요청에 대응하는 서버를 식별한다. 부하 분산 장치(140)는 상기 분산 서버(100) 중에서 사용자 단말기(160)의 서비스 요청에 대응하는 하나 이상의 분산 서 버를 식별하고, 소정의 결정 규칙에 의하여 적어도 하나 이상의 분산 서버 중에서 하나의 분산 서버를 선택한다. 상기 적어도 하나 이상의 분산 서버 중에서 하나를 선택하는 방법은, 상기 부하 분산 장치(140)가 상기 분산 서버(100)의 유휴 대역폭의 측정치를 보고 받고, 상기 유휴 대역폭을 참조하여 선택하는 방법이 있으며 또한, 상기 유휴 대역폭은 상기 분산 서버(100)의 파일의 전송 속도에 기초하여 측정한 것을 말한다. 예를 들어, 대역폭이 2Mbps인 분산 서버의 경우, 1Mbps 속도로 데이터를 전송 중일때는 1Mbps의 유휴 대역폭을 갖으며, 데이터 전송 테스트의 결과 데이터의 전송 속도가 큰 분산 서버일수록 유휴 대역폭이 큰 분산 서버이다.The load balancer 140 is a distributed server including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like stored in the service function storage unit 150. The server corresponding to the service request of the user terminal 160 is identified by referring to the network address of 100. The load balancer 140 identifies one or more distributed servers corresponding to the service request of the user terminal 160 among the distributed servers 100, and one distributed server among at least one distributed server according to a predetermined decision rule. Select. In the method of selecting one of the at least one distributed server, the load balancer 140 may receive a measurement of an idle bandwidth of the distributed server 100 and select the reference by referring to the idle bandwidth. The idle bandwidth is measured based on the transmission speed of the file of the distributed server 100. For example, a distributed server with a bandwidth of 2 Mbps has a 1 Mbps idle bandwidth when data is being transmitted at a 1 Mbps rate. As a result of the data transfer test, a distributed server with a larger data transfer rate has a larger idle bandwidth. .

이후, 부하 분산 장치(140)는 상기 사용자 단말기(160)로 리다이렉션(redirection) 메시지를 전송한다. 리다이렉션 메시지는 상기 사용자 단말기(160)가 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에서 선택된 분산 서버로 재접속하기 위한 메시지이다. 이때, 사용자 단말기(160)가 웹 브라우저(web browser)를 사용하는 경우에는 상기 부하 분산 장치(140)와 HTTP(HyperText Transfer Protocol) 리다이렉션 메시지 형태의 리다이렉션 메시지를 송수신 할 수 있다.Thereafter, the load balancer 140 transmits a redirection message to the user terminal 160. The redirection message is for the user terminal 160 to reconnect to a distributed server selected from among the distributed servers 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. This is a message. In this case, when the user terminal 160 uses a web browser, the load balancer 140 may transmit and receive a redirect message in the form of a HyperText Transfer Protocol (HTTP) redirect message.

사용자 단말기(160)는 상기 부하 분산 장치(140)로부터 수신한 리다이렉션 메시지에 응답하여, 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에서 선택된 분산 서버로 재접속하여 요청한 서비스를 받는다.The user terminal 160 includes the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like in response to the redirect message received from the load balancer 140. Reconnects to the selected distributed server among the distributed servers 100 and receives the requested service.

사용자 단말기(160)를 통하여 A사의 게임 다운로드 서비스 요청이 발생하 는 경우, 소정의 결정 규칙에 의하여 상기 사용자 단말기(160)가 제 1 분산 서버(110)를 이용하여 게임 다운로드를 실행하는 일례를 들어 설명하면 다음과 같다. 사용자 단말기(160)를 통하여 A사의 게임 다운로드 서비스의 요청이 발생하면, 부하 분산 장치(140)는 상기 서비스 함수 저장부(150)에 저장되어 있는 분산 서버(100)의 네트워크 주소를 참조하여, 분산 서버(100) 중에서 상기 사용자 단말기(160)로부터의 서비스 요청에 대응이 가능한 제 1 분산 서버(110) 및 제 2 분산 서버(120)를 식별해 낸다. 부하 분산 장치(140)는 서비스 요청에 대응 할 수 있는 제 1 분산 서버(110) 및 제 2 분산 서버(120)중에, 어느 분산 서버가 더욱 서비스 요청에 적합한 대응이 가능한 서버인가의 여부를 판단하기 위한 소정의 결정 규칙에 기초하여 판단하여, 제 1 분산 서버(110)가 선택되면 사용자 단말기(160)에 상기 제 1 분산 서버(110)로의 리다이렉션(redirection) 메시지를 송신한다. 사용자 단말기(160)는 상기 부하 분산 장치(140)로부터 수신한 리다이렉션 메시지에 의해 제 1 분산 서버(110)로 재접속 하여 요청한 서비스를 받는다.When a game download service request of the company A is generated through the user terminal 160, the user terminal 160 executes a game download using the first distributed server 110 according to a predetermined decision rule. Is as follows. When a request for a game download service of A company occurs through the user terminal 160, the load balancer 140 refers to the network address of the distributed server 100 stored in the service function storage unit 150 to distribute the distribution. The server 100 identifies the first distributed server 110 and the second distributed server 120 capable of responding to a service request from the user terminal 160. The load balancer 140 determines, among the first distributed server 110 and the second distributed server 120 capable of responding to a service request, which distributed server is a server capable of responding more appropriately to the service request. If the first distributed server 110 is selected, the redirection message to the first distributed server 110 is transmitted to the user terminal 160. The user terminal 160 reconnects to the first distributed server 110 and receives the requested service by the redirection message received from the load balancer 140.

이때, 상기 소정의 결정 규칙은, 상기 부하 분산 장치(140)가 상기 분산 서버(100)의 유휴 대역폭의 측정치를 보고 받고, 상기 유휴 대역폭을 참조하여 하나의 분산 서버를 선택하는 방법을 사용할 수 있다. 상기 유휴 대역폭은 상기 분산 서버(100)의 파일의 전송 속도에 기초하여 측정한 것을 말하며, 데이터 전송 테스트의 결과 데이터의 전송 속도가 큰 분산 서버일수록 유휴 대역폭이 큰 분산 서버이다. 부하 분산 장치(140)는 유휴 대역폭이 큰 분산 서버를 선택한다.In this case, the predetermined decision rule may be a method in which the load balancer 140 receives a measurement of the idle bandwidth of the distributed server 100 and selects one distributed server with reference to the idle bandwidth. . The idle bandwidth is measured based on the transmission speed of the file of the distributed server 100. As a result of the data transmission test, a distributed server having a larger data transfer rate has a larger idle bandwidth. The load balancer 140 selects a distributed server having a large idle bandwidth.

또한, 소정의 결정 규칙으로, 상기 적어도 하나 이상의 분산 서버 중에 사 용자 단말기(160)와 지역적으로 가장 근접한 분산 서버를 선택하는 방법을 사용하거나, 상기 적어도 하나 이상의 분산 서버 중에 사용자 단말기(160)와 동일한 ISP(Internet service provider)를 갖는 분산 서버를 선택하는 방법을 사용할 수 있으며, 상기 분산 서버(100)를 폴링(polling)하여 이에 응답하며 현재 동작 중인 분산 서버를 선택하는 방법을 적용 할 수 있다. In addition, as a predetermined decision rule, a method of selecting a distributed server that is locally closest to the user terminal 160 among the at least one distributed server, or the same as the user terminal 160 among the at least one distributed server may be used. A method of selecting a distributed server having an Internet service provider (ISP) may be used, and a method of polling and responding to the distributed server 100 and selecting a currently running distributed server may be applied.

도 2는 본 발명의 일례에 따른 서비스 함수 저장부의 일례를 도시한 도면이다.2 is a diagram illustrating an example of a service function storage unit according to an example of the present invention.

도 2에 도시된 바와 같이, 서비스 함수 저장부(150)에는 분산 서버(100)의 네트워크 주소가 저장되어, 부하 분산 장치(140)가 상기 사용자 단말기(160)로부터의 서비스 요청에 대응하여 분산 서버(100) 중에 특정 분산 서버를 식별하고 선택하는데 참조할 수 있도록 한다. 예를 들어, 사용자 단말기(160)로부터 A사의 게임 Download(220)의 서비스 요청이 발생하는 경우에는, 부하 분산 장치(140)가 서비스 함수 저장부(150)에 저장되어 있는 서비스 유형(200) 목록의 A사의 게임 Download(220)에 해당하는 서비스 요청에 대응하는 분산 서버 주소(210)를 참조하고, 소정의 결정 규칙에 기초하여 하나의 분산 서버를 선택한다.As shown in FIG. 2, the network function of the distributed server 100 is stored in the service function storage unit 150, so that the load balancer 140 distributes the server in response to a service request from the user terminal 160. Reference may be made to identifying and selecting a particular distributed server within 100. For example, when a service request of the company A's game Download 220 occurs from the user terminal 160, the load balancer 140 stores the service type 200 stored in the service function storage 150. The distributed server address 210 corresponding to the service request corresponding to the game Download 220 of the company A is selected, and one distributed server is selected based on a predetermined decision rule.

도 3은 본 발명의 일례에 따른 부하 분산 장치의 일례를 도시한 도면이다.3 is a diagram illustrating an example of a load balancing device according to an example of the present invention.

본 발명에 따른 부하 분산 장치는 서비스 함수 저장부(340), 네트워크 수신부(310), 분산 서버 결정부(330), 응답 생성부(350) 및 네트워크 송신부(360)를 포함한다. 또한, 본 발명에 따른 부하 분산 장치는 서비스 요청 분석부(320)를 더 포함한다.The load balancer according to the present invention includes a service function storage unit 340, a network receiver 310, a distributed server determiner 330, a response generator 350, and a network transmitter 360. In addition, the load balancer according to the present invention further includes a service request analyzer 320.

네트워크 수신부(310)는 사용자 단말기(160)로부터 서비스 요청을 수신한다. 네트워크 수신부(310)는 사용자 단말기(160)가 웹 브라우저를 사용하는 경우, 사용자 단말기(160)로부터 웹브라우저의 기본 프로토콜인 HTTP를 사용하는 서비스 요청을 수신할 수 있다.The network receiver 310 receives a service request from the user terminal 160. When the user terminal 160 uses a web browser, the network receiver 310 may receive a service request from the user terminal 160 using HTTP, which is a basic protocol of the web browser.

서비스 요청 분석부(320)는 사용자 단말기로부터의 서비스 요청의 유형을 분석한다. 서비스 요청 분석부(320)는 상기 사용자 단말기(160)로부터 수신된 서비스 요청을 상기 네트워크 수신부(310)로부터 전달받아, 상기 사용자 단말기(160)로부터 어떠한 서비스 요청이 발생하였는가를 판단한다. 서비스 요청 분석부(320)에서 상기 사용자 단말기(160)의 서비스 요청을 분석하여, 분산 서버 결정부(330)가 상기 분산 서버(100)중에서 상기 서비스 요청에 적합한 분산 서버를 선택하는 근거로 사용할 수 있도록 한다.The service request analyzer 320 analyzes the type of service request from the user terminal. The service request analyzer 320 receives the service request received from the user terminal 160 from the network receiver 310 and determines what service request has occurred from the user terminal 160. The service request analyzer 320 analyzes the service request of the user terminal 160 and uses the distributed server determiner 330 as a basis for selecting a distributed server suitable for the service request from the distributed server 100. Make sure

분산 서버 결정부(330)는 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에서 상기 서비스 함수 저장부(340)를 참조하여, 네트워크 수신부(310)로부터 수신한 서비스 요청에 대응하는 하나 이상의 분산 서버를 식별하고, 소정의 결정 규칙에 의하여 적어도 하나 이상의 분산 서버 중에서 하나의 분산 서버를 선택한다. 이때, 서비스 요청이라 함은, 본 발명에 따른 사용자 단말기(160)가 분산 서버(100)에 접속하여 정보를 이용하기 위하여 데이터의 수신이 이루어지도록 하는 요청을 말한다.The distributed server determiner 330 is the service function storage unit 340 among the distributed server 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. Referring to, it identifies one or more distributed servers corresponding to the service request received from the network receiver 310, and selects one distributed server from at least one distributed server according to a predetermined decision rule. In this case, the service request refers to a request for the user terminal 160 according to the present invention to receive data in order to access the distributed server 100 and use information.

상기 서비스 함수 저장부(340)에는 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100)의 네트워크 주 소가 저장되어 있다. 서비스 함수 저장부(150)는 분산 서버 결정부(330)가 수신한 서비스 요청에 대응하여 분산 서버(100) 중에 특정 분산 서버를 식별하고 선택하는데 참조할 수 있도록 한다.The service function storage unit 340 stores a network address of the distributed server 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. . The service function storage unit 150 may refer to identifying and selecting a specific distributed server among the distributed servers 100 in response to the service request received by the distributed server determiner 330.

상기 분산 서버(100)는 다수의 서버로 구성되어 각 서버가 특정 장소에 함께 설치되거나, 지역적으로 분산되어 있는 각각의 PC방에 각각 하나의 서버가 설치될 수 있다. 또한, 상기 분산 서버(100)는 상하향 대역폭(bandwidth)이 동일한 네트워크 접속을 갖으며, 상하향 대역폭이 동일하다 함은, 업로드와 다운로드시의 네트워크의 패킷(packet) 전송 데이터량이 동일하다는 의미이다. 이와 같이 상하향 대역폭이 동일한 네트워크 접속에 의하여 지역적으로 분산되어 있는 각 PC방에 설치된 상기 분산 서버(100)는, 상기 사용자 단말기(160)와 상기 네트워크를 통하여 연결되어있다.The distributed server 100 may be configured of a plurality of servers, each server may be installed together in a specific place, or one server may be installed in each PC room that is distributed locally. In addition, the distributed server 100 has a network connection having the same up and down bandwidth, and the same up and down bandwidth means that the amount of packet transmission data of the network during upload and download is the same. In this way, the distributed server 100 installed in each PC room where the up and down bandwidths are locally distributed by the same network connection is connected to the user terminal 160 through the network.

상기 분산 서버 결정부(330)가 상기 분산 서버(100)중에서 사용자 단말기(160)로부터의 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 상기 적어도 하나 이상의 분산 서버 중에서 하나의 분산 서버를 선택하는 방법으로, 상기 부하 분산 장치(140)가 상기 분산 서버(100)의 유휴 대역폭의 측정치를 보고 받고, 상기 유휴 대역폭을 참조하여 하나의 분산 서버를 선택하는 방법을 사용할 수 있다. 이때, 상기 유휴 대역폭은 상기 분산 서버(100)의 파일의 전송 속도에 기초하여 측정한 것을 말하며, 데이터 전송 테스트의 결과 데이터의 전송 속도가 큰 분산 서버일수록 유휴 대역폭이 큰 분산 서버이다. 유휴 대역폭이 큰 분산 서버를 선택하면 더 빠른 속도로 사용자 요청에 대한 서비스를 제공할 수 있게 된 다.The distributed server determiner 330 identifies at least one distributed server corresponding to a service request from the user terminal 160 among the distributed servers 100, and selects one distributed server from the at least one distributed server. For example, the load balancer 140 may receive a measurement of an idle bandwidth of the distributed server 100 and select a distributed server with reference to the idle bandwidth. In this case, the idle bandwidth is measured based on the transmission speed of the file of the distributed server 100. As a result of the data transmission test, a distributed server having a larger data transfer rate is a distributed server having a larger idle bandwidth. Choosing a distributed server with a large amount of idle bandwidth enables faster service for user requests.

또한, 상기 분산 서버 결정부(330)는, 사용자 단말기(160)로부터의 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 상기 적어도 하나 이상의 분산 서버 중에서 하나의 분산 서버를 선택하는 방법에 있어서, 상기 적어도 하나 이상의 분산 서버 중에 사용자 단말기(160)와 지역적으로 가장 근접한 분산 서버를 선택하는 방법을 사용하거나, 상기 적어도 하나 이상의 분산 서버 중에 사용자 단말기(160)와 동일한 ISP(Internet service provider)를 갖는 분산 서버를 선택하는 방법을 사용할 수 있다. 사용자 단말기(160)와 지역적으로 근접한 분산 서버 또는 동일한 ISP를 갖는 분산 서버를 선택하면, 사용자에게 더 빠른 속도로 서비스를 제공할 수 있는 가능성이 높아진다.In addition, the distributed server determiner 330 may identify at least one or more distributed servers corresponding to a service request from the user terminal 160 and select one distributed server from the at least one or more distributed servers. Using a method of selecting a distributed server that is closest to the user terminal 160 among the at least one distributed server, or having the same Internet service provider (ISP) as the user terminal 160 among the at least one distributed server. You can choose a distributed server. Selecting a distributed server that is geographically close to the user terminal 160 or a distributed server having the same ISP increases the likelihood of providing the service at a faster rate to the user.

한편, 상기 분산 서버 결정부(330)가 사용자 단말기(160)로부터의 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하는 방법으로는, 상기 분산 서버(100)를 폴링(polling)하여 이에 응답하며 현재 동작 중인 분산 서버를 선택하는 방법을 사용할 수 있다. 또한, 상기 적어도 하나 이상의 분산 서버 중에서 하나의 분산 서버를 선택하는 방법에 있어서도, 상기 분산 서버(100)를 폴링하여 하나의 분산 서버를 선택하는 방법을 사용할 수 있다. PC방에 분산 서버를 설치하기 때문에, 각 분산 서버가 PC방 관리자에 의하여 전원이 내려져 있을 수도 있으므로, 폴링 등을 통하여 현재 동작 중인 분산 서버 중 하나를 선택한다.In the meantime, the distributed server determining unit 330 identifies at least one distributed server corresponding to the service request from the user terminal 160 by polling the distributed server 100 and responding thereto. You can use this method to select the distributed server that is currently running. Also, in the method of selecting one distributed server among the at least one distributed server, a method of polling the distributed server 100 and selecting one distributed server may be used. Since a distributed server is installed in the PC room, each distributed server may be powered down by the PC room manager, and thus, one of the distributed servers currently operating is selected through polling or the like.

응답 생성부(350)는 상기 분산 서버 결정부(330)에서 선택된 하나의 특정 분산 서버로의 리다이렉션 메시지를 생성한다. 리다이렉션 메시지는 상기 사용자 단말기(160)가 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에서 선택된 분산 서버로 재접속하기 위한 메시지이다. 응답 생성부(350)는 사용자 단말기(160)가 웹 브라우저를 사용하는 경우에는 HTTP 형태의 리다이렉션 메시지를 생성하여, 네트워크 송신부(360)로 상기 리다이렉션 메시지를 전달한다.The response generator 350 generates a redirect message to one specific distributed server selected by the distributed server determiner 330. The redirection message is for the user terminal 160 to reconnect to a distributed server selected from among the distributed servers 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. This is a message. When the user terminal 160 uses the web browser, the response generator 350 generates a redirect message in the form of HTTP and transmits the redirect message to the network transmitter 360.

네트워크 송신부(360)는 상기 응답 생성부(350)로부터 상기 리다이렉션 메시지를 전달받고, 사용자 단말기(160)로 상기 리다이렉션 메시지를 전송하여 사용자 단말기(160)가 상기 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에서 선택된 분산 서버로 재접속 할 수 있도록 한다.The network transmitter 360 receives the redirect message from the response generator 350 and transmits the redirect message to the user terminal 160 so that the user terminal 160 receives the first distributed server 110 and the second. It is possible to reconnect to a distributed server selected from the distributed server 100 including the distributed server 120 and the nth distributed server 130.

도 4는 본 발명의 일례에 따른 서비스 함수 저장부의 일례를 도시한 도면이며, 도 5는 본 발명의 일례에 따른 서비스 함수 저장부의 또 다른 일례를 도시한 도면이다.4 is a diagram illustrating an example of a service function storage unit according to an example of the present invention, and FIG. 5 is a diagram illustrating another example of a service function storage unit according to an example of the present invention.

도 4에 도시된 바와 같이, 상기 서비스 함수 저장부(340)에는 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100)의 IP 주소(400)와 지리적 주소(410)가 저장되어있다. 따라서, 분산 서버 결정부(330)는 상기 서비스 함수 저장부(340)에 저장되어 있는 각 분산 서버의 지리적 주소(410)를 참조하여 지역적으로 가장 가까운 위치에 있는 분산 서버를 선택할 수 있다. 또한, 도 5에 도시된 바와 같이, 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100)의 IP 주소(500)와 ISP(510) 저장되어 있으므로, 분산 서버 결정부(330)는 상기 서비스 함수 저장부(340)에 저장되어있는 각 분산 서버의 ISP(510)를 참조하여 사용자 단말기(160)와 동일한 ISP를 사용하고 있는 분산 서버를 선택할 수 있다.As shown in FIG. 4, the service function storage unit 340 includes a first distributed server 110, a second distributed server 120, an nth distributed server 130, and the like. IP address 400 and geographic address 410 are stored. Accordingly, the distributed server determiner 330 may select a distributed server located at the closest geographical location with reference to the geographical address 410 of each distributed server stored in the service function storage 340. In addition, as shown in FIG. 5, the IP address 500 and the ISP of the distributed server 100 including the first distributed server 110, the second distributed server 120, the nth distributed server 130, and the like. Since it is stored, the distributed server determining unit 330 uses the same ISP as the user terminal 160 with reference to the ISP 510 of each distributed server stored in the service function storage unit 340. You can choose a distributed server.

도 6은 본 발명의 일례에 따른 부하 분산 시스템의 방법이 도시된 흐름도이다.6 is a flowchart illustrating a method of a load balancing system according to an example of the present invention.

도 6에 도시된 바와 같이, 사용자 단말기(160)에서 서비스의 사용요청이 발생하면(S610), 부하 분산 장치(140)가 서비스 함수 저장부(150)를 참조하여 제 1 분산 서버(110), 제 2 분산 서버(120), 및 제 n 분산 서버(130) 등으로 구성된 분산 서버(100) 중에, 상기 사용자 단말기(160)의 서비스 사용 요청에 대응하는 다수의 서버를 식별한다(S620).As shown in FIG. 6, when a use request of a service occurs in the user terminal 160 (S610), the load balancer 140 refers to the service function storage 150 to the first distributed server 110. Among the distributed servers 100 including the second distributed server 120 and the nth distributed server 130, a plurality of servers corresponding to the service use request of the user terminal 160 is identified (S620).

부하 분산 장치(140)는 소정의 결정 규칙에 의하여, 상기 식별한 사용자 단말기(160)의 서비스 사용 요청에 대응하는 다수의 서버 중에 특정 서버를 선택한다(S630).The load balancer 140 selects a specific server from among a plurality of servers corresponding to the service use request of the identified user terminal 160 according to a predetermined decision rule (S630).

부하 분산 장치(140)는 상기 다수의 서버 중에 선택한 특정 서버로의 리다이렉션 메시지를 사용자 단말기(160)로 송신한다(S640).The load balancer 140 transmits a redirection message to a specific server selected from the plurality of servers to the user terminal 160 (S640).

사용자 단말기(160)는 상기 리다이렉션 메시지를 수신 후, 이에 응답하여 상기 특정 서버로 접속하여 요청한 서비스를 받을 수 있다(S650, S660).After receiving the redirection message, the user terminal 160 may access the specific server and receive the requested service in response thereto (S650 and S660).

본 발명에 따르면, 사용 단말기와 서버간의 연결 요청만을 처리하여 부하 분산 장치로 집중되는 부하를 경감시키므로, 종래의 부하 분산 시스템보다 빠르고 효율적인 부하 분산 시스템을 제공하는 효과가 있다. 즉, 본 발명에 따르면, 사용자 단말기로부터 오는 모든 요청 패킷과 분산 서버로부터의 모든 서비스 패킷이 부하 분산 장치를 통할 필요가 없게 된다. 따라서, 보다 빠르게 사용자에게 서비스를 제공할 수 있으며, 부하 분산 장치의 부하도 줄일 수 있게 된다.According to the present invention, since only the connection request between the user terminal and the server is processed to reduce the load concentrated on the load balancing device, there is an effect of providing a faster and more efficient load balancing system than the conventional load balancing system. That is, according to the present invention, all request packets coming from the user terminal and all service packets from the distributed server do not need to go through the load balancer. Therefore, the service can be provided to the user more quickly, and the load of the load balancer can be reduced.

또한 본 발명에 따르면, 지역적으로 분산된 위치에 존재하는 유휴 상태의 업 링크 네트워크들을 효율적으로 이용하여 사용자의 네트워크 요구를 효율적으로 처리할 수 있다. 예를 들어, PC방은 업/다운 링크의 대역폭이 동일한 고가의 네트워크 연결을 사용하면서도 실제에 있어서, 업 링크는 거의 유휴 상태에 있다. 그러나, 본 발명에 따르면, 이러한 PC방에 분산 서버를 설치해 두고, 부하 분산 장치를 통해 사용자의 요구를 PC방에 설치된 분산 서버에서 서비스할 수 있도록 함으로써, PC방의 유휴 업 링크 대역폭을 효율적으로 사용할 수 있다.In addition, according to the present invention, the idle state of the uplink networks in the geographically dispersed location can be efficiently used to efficiently handle the network requirements of the user. For example, the PC room uses expensive network connections that have the same bandwidth for the up / down links, but in practice the uplink is almost idle. However, according to the present invention, the distributed server is installed in such a PC room, and the load balancing device enables the distributed server installed in the PC room to serve the user's request, thereby efficiently using the idle uplink bandwidth of the PC room. have.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명 사상은 아래에 기재된 특허 청구 범위에 의해서만 파악되어야하고, 이의 균등 또는 등가적 변형 모두는 본 발명 사상의 범주에 속한다고 할 것이다.As described above, the present invention has been described by way of limited embodiments and drawings, but the present invention is not limited to the above-described embodiments, which can be variously modified and modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications thereof will fall within the scope of the invention.

Claims (14)

지역적으로 분산된 PC방에 설치되고 상하향 대역폭이 동일한 네트워크 접속을 가지는 적어도 하나 이상의 분산 서버;At least one distributed server installed in a locally distributed PC room and having a network connection having the same vertical bandwidth; 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버의 네트워크 주소를 저장하는 서비스 함수 저장부;A service function storage unit for storing a network address of at least one distributed server that provides a service corresponding to each type of service request; 사용자 단말기로부터 수신한 서비스 요청에 응답하여, 상기 서비스 함수 저장부를 참조하여 상기 사용자 단말기로부터의 상기 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 소정의 결정 규칙에 기초하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택하여, 상기 선택된 분산 서버로의 리다이렉션 메시지를 상기 사용자 단말기로 송신하는 부하 분산 장치; 및In response to the service request received from the user terminal, identifying at least one or more distributed servers corresponding to the service request from the user terminal with reference to the service function storage, and based on a predetermined decision rule A load balancer for selecting one of the servers and transmitting a redirect message to the selected distributed server to the user terminal; And 상기 리다이렉션 메시지의 수신에 응답하여 상기 선택된 분산 서버로 재접속하는 사용자 단말기User terminal reconnecting to the selected distributed server in response to receiving the redirect message 를 포함하는 것을 특징으로 하는 부하 분산 시스템.Load balancing system comprising a. 제1항에 있어서,The method of claim 1, 상기 분산 서버는 상기 분산 서버의 유휴 대역폭을 측정하여 상기 부하 분산 장치에 보고하고, 상기 부하 분산 장치는 상기 분산 서버의 유휴 대역폭을 참조하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택하는 것을 특징으로 하는 부하 분산 시스템.The distributed server measures the idle bandwidth of the distributed server and reports it to the load balancer, wherein the load balancer selects one of the at least one distributed server with reference to the idle bandwidth of the distributed server. Load balancing system. 제2항에 있어서,The method of claim 2, 상기 분산 서버는 상기 분산 서버의 파일의 전송 속도에 기초하여 상기 유휴 대역폭을 측정하는 것을 특징으로 하는 부하 분산 시스템.And the distributed server measures the idle bandwidth based on a transfer rate of a file of the distributed server. 제1항에 있어서, 상기 리다이렉션 메시지는,The method of claim 1, wherein the redirection message, HTTP 리다이렉션 메시지인 것을 특징으로 하는 부하 분산 시스템.A load balancing system, characterized in that the HTTP redirect message. 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버의 네트워크 주소를 저장하는 서비스 함수 저장부;A service function storage unit for storing a network address of at least one distributed server that provides a service corresponding to each type of service request; 사용자 단말기로부터 서비스 요청을 수신하는 네트워크 수신부;A network receiver configured to receive a service request from a user terminal; 상기 서비스 함수 저장부를 참조하여 상기 사용자 단말기로부터의 상기 서비스 요청에 대응하는 적어도 하나 이상의 분산 서버를 식별하고, 소정의 결정 규칙에 기초하여 상기 적어도 하나 이상의 분산 서버 중 하나를 선택하는 분산 서버 결정부;A distributed server determining unit identifying at least one distributed server corresponding to the service request from the user terminal with reference to the service function storage unit, and selecting one of the at least one distributed server based on a predetermined decision rule; 상기 선택된 분산 서버로의 리다이렉션 메시지를 생성하는 응답 생성부; 및A response generator for generating a redirect message to the selected distributed server; And 상기 생성된 리다이렉션 메시지를 상기 사용자 단말기로 송신하는 네트워크 송신부A network transmitter which transmits the generated redirection message to the user terminal 를 포함하는 것을 특징으로 하는 부하 분산 장치.Load balancer comprising a. 제5항에 있어서, 상기 리다이렉션 메시지는,The method of claim 5, wherein the redirection message, HTTP 리다이렉션 메시지인 것을 특징으로 하는 부하 분산 장치.A load balancer, characterized in that the HTTP redirect message. 제5항에 있어서,The method of claim 5, 상기 사용자 단말기로부터의 서비스 요청의 유형을 분석하는 서비스 요청 분석부Service request analysis unit for analyzing the type of service request from the user terminal 를 더 포함하는 것을 특징으로 하는 부하 분산 장치.The load balancer further comprises. 제5항에 있어서,The method of claim 5, 상기 분산 서버는 PC방에 설치되는 것을 특징으로 하는 부하 분산 장치.The distributed server is a load balancing device, characterized in that installed in the PC room. 제5항에 있어서,The method of claim 5, 상기 분산 서버는 상하향 대역폭이 동일한 네트워크 접속을 가지는 것을 특징으로 하는 부하 분산 장치.The distributed server is a load balancing device, characterized in that the network connection has the same up and down bandwidth. 제5항에 있어서,The method of claim 5, 상기 서비스 요청의 유형의 각각에 대응한 서비스를 제공하는 적어도 하나 이상의 분산 서버는 지역적으로 분산되어 있고,At least one distributed server providing a service corresponding to each of the types of service requests is geographically distributed, 상기 분산 서버 결정부는, 상기 적어도 하나 이상의 분산 서버 중 상기 사용자 단말기와 지역적으로 근접한 분산 서버를 선택하는 것을 특징으로 하는 부하 분 산 장치.The distributed server determiner, the load balancing device, characterized in that for selecting among the at least one distributed server distributed server in close proximity to the user terminal. 제5항에 있어서, 상기 분산 서버 결정부는,The method of claim 5, wherein the distributed server determination unit, 상기 적어도 하나 이상의 분산 서버 중 상기 사용자 단말기와 동일한 ISP를 갖는 분산 서버를 선택하는 것을 특징으로 하는 부하 분산 장치.And selecting a distributed server having the same ISP as the user terminal among the at least one distributed server. 제5항에 있어서, 상기 분산 서버 결정부는,The method of claim 5, wherein the distributed server determination unit, 상기 적어도 하나 이상의 분산 서버를 폴링한 후, 현재 동작 중인 분산 서버를 선택하는 것을 특징으로 하는 부하 분산 장치.And after polling the at least one distributed server, selecting a distributed server currently in operation. 제5항에 있어서, 상기 분산 서버 결정부는,The method of claim 5, wherein the distributed server determination unit, 상기 적어도 하나 이상의 분산 서버의 유휴 대역폭을 측정하고, 상기 유휴 대역폭이 큰 분산 서버를 선택하는 것을 특징으로 하는 부하 분산 장치.And measuring idle bandwidth of the at least one distributed server and selecting a distributed server having a large idle bandwidth. 제13항에 있어서, 상기 분산 서버 결정부는,The method of claim 13, wherein the distributed server determination unit, 상기 적어도 하나 이상의 분산 서버로부터 파일의 전송 속도에 대한 보고를 수신하고, 상기 보고에 기초하여 상기 분산 서버의 유휴 대역폭을 측정하는 것을 특징으로 하는 부하 분산 장치.And receive a report on a transfer rate of a file from the at least one distributed server and measure an idle bandwidth of the distributed server based on the report.
KR1020060116551A 2006-11-23 2006-11-23 Load balancing system and method load balancing device KR20080046900A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060116551A KR20080046900A (en) 2006-11-23 2006-11-23 Load balancing system and method load balancing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060116551A KR20080046900A (en) 2006-11-23 2006-11-23 Load balancing system and method load balancing device

Publications (1)

Publication Number Publication Date
KR20080046900A true KR20080046900A (en) 2008-05-28

Family

ID=39663606

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060116551A KR20080046900A (en) 2006-11-23 2006-11-23 Load balancing system and method load balancing device

Country Status (1)

Country Link
KR (1) KR20080046900A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160062239A (en) * 2014-11-24 2016-06-02 주식회사 케이지이니시스 Method for Asynchronous Operating Regional Distributed Payment Gateway
WO2016150131A1 (en) * 2015-03-20 2016-09-29 中兴通讯股份有限公司 Load balancing method, device and system for service function chain

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160062239A (en) * 2014-11-24 2016-06-02 주식회사 케이지이니시스 Method for Asynchronous Operating Regional Distributed Payment Gateway
WO2016150131A1 (en) * 2015-03-20 2016-09-29 中兴通讯股份有限公司 Load balancing method, device and system for service function chain
CN106034087A (en) * 2015-03-20 2016-10-19 中兴通讯股份有限公司 Service function chain load balancing method, device and system
US10447600B2 (en) 2015-03-20 2019-10-15 Zte Corporation Load balancing method, device and system for service function chain
CN106034087B (en) * 2015-03-20 2019-12-20 中兴通讯股份有限公司 Method, device and system for balancing load of service function chain

Similar Documents

Publication Publication Date Title
US11336614B2 (en) Content node network address selection for content delivery
US10447648B2 (en) Assignment of a POP to a DNS resolver based on volume of communications over a link between client devices and the POP
JP4456113B2 (en) System and method for selecting a data provider
US8224986B1 (en) Methods and apparatus for redirecting requests for content
US10097645B2 (en) Method and apparatus of performing peer-to-peer communication establishment and connection change-over
US7284051B1 (en) Relaying apparatus for use in a network system
US9380129B2 (en) Data redirection system and method therefor
US6728748B1 (en) Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet
US7720997B1 (en) Path selection system
US20030172163A1 (en) Server load balancing system, server load balancing device, and content management device
CN112913196B (en) Software-defined wide area network uplink selection with virtual IP addresses for cloud services
US11895009B2 (en) Intelligently routing internet traffic
Alzoubi et al. Anycast cdns revisited
Othman et al. Design and implementation of application based routing using openflow
Ghosh et al. An SDN based framework for guaranteeing security and performance in information-centric cloud networks
Kogias et al. Bypassing the load balancer without regrets
Al-Qudah et al. Anycast-aware transport for content delivery networks
EP1327195A1 (en) Method and apparatus for dynamic determination of optimum connection of a client to content servers
KR20080046900A (en) Load balancing system and method load balancing device
EP2786551B1 (en) Discovering data network infrastructure services
Conti et al. Content delivery policies in replicated web services: client-side vs. server-side
Tomic et al. Implementation and efficiency analysis of composite DNS-metric for dynamic server selection
KR102563247B1 (en) Apparatus for Realtime Monitoring Performance Degradation of Network System
Khandaker et al. On-path vs off-path traffic steering, that is the question
Nemčik et al. Content Distribution in Private Networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application