KR100570836B1 - 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 - Google Patents
부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 Download PDFInfo
- Publication number
- KR100570836B1 KR100570836B1 KR1020030071449A KR20030071449A KR100570836B1 KR 100570836 B1 KR100570836 B1 KR 100570836B1 KR 1020030071449 A KR1020030071449 A KR 1020030071449A KR 20030071449 A KR20030071449 A KR 20030071449A KR 100570836 B1 KR100570836 B1 KR 100570836B1
- Authority
- KR
- South Korea
- Prior art keywords
- session
- label
- packet
- server
- load balancing
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1017—Server selection for load balancing based on a round robin mechanism
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Abstract
본 발명은 클라이언트에서 서버로 전송되는 패킷에 부하 분산 세션 레이블을 부착하고 상기 세션 레이블 정보만을 이용하여 서버를 결정함으로써 서버간의 부하를 분산시키는 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법에 관한 것이다. 본 발명은, 수신된 패킷에 대하여 부하 분산 세션 레이블 부착 여부 검사, 세션 정보 파악 및 패킷의 헤더에 세션 레이블을 부착하는 패킷분석부; 상기 검사결과 세션 레이블이 부착되지 않은 패킷의 세션에 대하여 부하 분산을 고려하여 상기 세션을 서비스하기 위한 서버를 할당하는 부하분산처리부; 상기 검사결과 세션 레이블이 부착된 패킷에 대하여 상기 세션 레이블 정보만을 이용하여 스위칭을 수행하는 세션레이블스위칭부; 클라이언트로부터 요구된 세션의 정보 및 상태를 유지 관리하는 세션관리부; 및 세션 레이블을 할당하고 사용하지 않는 세션 레이블을 회수하여 관리하는 세션레이블관리부를 포함한다. 본 발명에 따르면, 부하분산처리시 세션 레이블이 부착된 패킷에 대해서는 복잡한 패킷 분석 과정을 배제함으로서 부하분산장치의 처리과정이 단순화되고 성능이 개선되며, 부하분산에 따른 프로세싱 오버헤더를 줄일 수 있다.
클라이언트, 인터넷망, 서버, MPLS, 세션, 레이블, 부하분산
Description
도 1은 본 발명의 부하 분산장치가 적용되는 서비스망 구조의 예시도이다.
도 2는 본 발명의 일 실시예에 따른 부하 분산 장치의 기능 블록 구성도이다.
도 3은 본 발명에 따른 부하 분산 장치의 세션 테이블의 구성 예시도이다.
도 4는 본 발명에 따른 세션 레이블 기반의 부하 분산 장치의 레이블 스위칭 구조도이다.
도 5는 본 발명에 따른 레이블 스위칭 테이블의 구성도이다.
도 6은 본 발명의 실시예에 따른 부하 분산 처리과정을 보이는 흐름도이다.
도 7은 본 발명에 따른 부하 분산 처리과정에서의 양방향 세션 레이블 값의 할당을 나타낸 예시도이다.
도 8은 본 발명에 따른 부하 분산 세션 레이블로 MPLS 레이블을 적용한 경우의 부하 분산 세션 레이블이 인캡슐레이션된 패킷 구조도이다.
* 도면의 주요 부분에 대한 부호의 설명 *
101 : 클라이언트 102 : 인터넷 망
103 ; 부하분산장치 105 : 서버
210 : 패킷분석부 220 : 부하분산처리부
230 : 세션레이블스위칭부 240 : 세션관리부
250 : 세션레이블관리부
본 발명은 부하 분산장치 및 방법에 관한 것으로서, 특히 다수의 클라이언트로부터 인터넷 망을 통해 다수의 서버로 전송되는 패킷에 대하여 상기 서버의 전단에서 상기 패킷의 헤더에 부하 분산 세션 레이블(Load Balancing Session Label, 이하 LBSL 이라 칭함)을 부착하고 상기 세션 레이블 정보를 이용하여 접속할 서버를 결정함으로써 서버로의 부하를 분산시키는 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법에 관한 것이다.
인터넷 기반의 다양한 멀티미디어 서비스 및 전자상거래(e-commerce) 등이 보편화됨에 따라 다수의 웹 서버(web server)들이 클러스터링 형태의 팜(farm)으로 구성되고 상기 다수의 웹 서버팜의 전단에는 일반적으로 부하 분산장치가 배치된다.
클라이언트들의 서비스 및 컨텐츠 요구를 분산하기 위하여 서버의 전단에 위치하는 부하 분산장치는 다수의 클라이언트로부터 수신된 패킷들의 정보를 분석하고 여러 가지 부하분산 알고리즘을 이용하여 클라이언트의 요구를 다수의 서버들에게 골고루 분산시키되, 세션의 연속성을 유지시켜야 한다.
이를 위해 종래의 부하 분산장치는 클라이언트로부터 수신된 모든 패킷에 대하여 2계층에서부터 7계층까지의 정보를 분석하여 IP 주소 정보, TCP/UDP 포트번호, http 정보, 쿠키(cookie) 정보 등 세션 정보를 분석하고, 새로운 세션이 생성된 경우에는 서버 부하분산 알고리즘에 의해 서버를 할당한 후 이를 세션 관리 테이블에 저장한다. 즉, 매 패킷에 대해 세션 정보 분석 및 세션 관리 테이블 검색에 의해 어느 서버로 보내야 하는지를 결정하는 과정을 거치게 된다.
그러나, 이러한 종래의 부하 분산장치의 동작은 매 패킷에 대해 2계층에서부터 7계층까지의 헤더 정보를 비교 분석해야 하는 상당히 복잡한 소프트웨어적인 부가 프로세싱을 요구하기 때문에 성능 저하의 요인이 된다.
또한, 부하 분산장치의 다른 중요한 기능은 가상 IP 주소와 서버의 실제 IP 주소와의 변경기능이다. 즉, 클라이언트들은 서버 접속시에 실제 서버의 IP 주소를 이용하여 접속을 하는 것이 아니라, 부하 분산장치의 가상 IP 주소 정보를 이용하기 때문에, 부하 분산장치는 클라이언트와 실제 서버간의 모든 패킷 교환 시에 중간에 실제 서버의 IP 주소를 상기 부하 분산장치의 가상 IP 주소 정보로 교체해 주는 주소 변경과정을 처리한다. 이는 실제 서버의 IP 주소 정보를 공개하지 않음으로써 해킹으로부터 서버를 보호할 수 있고, 실제 서버 팜(farm)의 구성정보 변경이 가입자들에게 무관해지는 장점을 갖는다.
그러나, 이러한 종래의 부하 분산장치는 모든 패킷을 중간에 가로채서 목적지 혹은 소스측 IP 주소 정보를 실제 서버 IP 주소에서 상기 부하 분산장치의 가상 IP 주소 정보로 변경해 주어야 하는 추가적인 과정을 처리해야 하는 문제점이 있 다.
한편, 미국특허 US 6,587,866 B1 (명칭:Method for Distributing Packets to Server Nodes Using Network Client Affinity and Packet Distribution Table)에는 서버 팜(farm)에서 패킷들을 서버들로 분배하는 부하 분산방법이 개시되어 있고, 미국특허 US 6,601,084 B1 (명칭: Dynamic Load Balancer for Multiple Network Servers)에는 다수개로 구성되는 서버 팜의 앞단에 위치하는 부하분산 시스템에서 패킷들을 서버로 분배함에 있어서, 각 서버의 부하 상태를 모니터링하여 가장 부하가 작은 서버에 패킷들을 분해하게 하는 방법 및 시스템을 제공한다. 그러나, 상기한 선행특허들은 상기한 종래의 문제점을 안고 있으며, 부하 분산을 위해 요구되는 매 패킷의 헤더 정보 해석에 따른 프로세싱 오버헤더를 줄이지는 못했다.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 부하 분산장치를 통해 클라이언트들이 서버들에 접속되는 과정에서, 일단 세션 분석이 끝난 패킷에 대해서는 그 패킷의 헤더에 부하 분산 세션 레이블(LBSL)을 부착하고 부하 분산장치가 상기 세션의 레이블 정보만을 이용하여 접속 서버를 결정하게 함으로써, 부하 분산장치가 매 패킷마다 복잡한 패킷 분석 과정을 거치지 않고 가상 IP 주소와 실제 서버 IP 정보간의 변경기능을 배제함으로써 부하 분산시스템의 처리 과정을 획기적으로 단순화하여 성능을 개선하고, 세션 레이블 정보를 이용하여 서버의 과부하를 사전에 방지하도록 세션 연결 수락제어를 하는 서버간의 부하 분산장치 및 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위한 본 발명은, 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고 상기 다수의 서버의 전단에 위치하여 상기 클라이언트의 요구를 분석하여 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치에 있어서,
수신된 패킷에 대하여 세션 레이블의 부착 여부를 검사하고 상기 패킷의 헤더 정보를 분석하여 세션 정보 파악하며, 필요시 상기 수신된 패킷의 헤더에 세션 레이블을 부착하는 패킷분석부; 상기 검사결과 세션 레이블이 부착되지 않은 패킷의 세션에 대하여 부하 분산을 고려하여 상기 해당 세션을 서비스하기 위한 서버를 할당하는 부하분산처리부; 상기 검사결과 세션 레이블이 부착된 패킷에 대하여 상기한 패킷 분석 또는 서버 할당 과정 없이 상기 세션 레이블 정보만을 이용하여 하드웨어적인 스위칭을 수행하는 세션레이블스위칭부; 클라이언트로부터 요구된 세션의 관련 정보 및 상태를 유지 관리하는 세션관리부; 및 세션 레이블을 할당하고 사용하지 않는 세션 레이블을 회수하여 관리하는 세션레이블관리부; 를 포함한다.
또한, 상기 목적을 달성하기 위한 본 발명은, 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고, 상기 다수의 서버의 전단에 위치한 부하분산장치가 상기 클라이언트의 요구를 분석하여 상기 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산 방법에 있어서,
클라이언트가 부하분산장치를 통해 서비스를 요구하면, 상기 부하분산장치가 상기 서비스에 따른 패킷의 헤더를 분석하여 새로운 세션을 인식하고 상기 세션에 대한 클라이언트에서 서버측(C2S) 세션 레이블을 할당하는 제1단계; 상기 부하분산장치가 상기 새로운 세션에 대해 부하분산을 고려하여 상기 세션을 서비스할 서버를 할당하고 상기 수신된 패킷에 상기 할당된 C2S 세션 레이블을 부착하여 상기 서버로 전달하는 제2단계; 상기 C2S 세션 레이블이 부착된 패킷을 수신한 서버가 상기 수신된 세션 레이블 값을 참조하여 반대 방향 세션 레이블인 서버에서 클라이언트측(S2C) 세션 레이블을 자동으로 할당하는 제3단계; 상기 서버가 상기 클라이언트의 서비스 요구를 처리하고 그 처리결과 패킷에 상기 할당된 S2C 세션 레이블을 부착하여 상기 부하분산장치로 전달하는 제4단계; 상기 서버로부터 상기 S2C 세션 레이블이 부착된 패킷을 수신한 부하분산장치는 세션 레이블 값을 이용하여 클라이언트로 레이블 스위칭하는 제5단계; 상기 S2C 세션 레이블이 부착된 패킷을 수신한 클라이언트는 상기 수신된 세션 레이블 값을 참조하여 반대 방향의 C2S 세션 레이블을 자동으로 할당하는 제6단계; 상기 클라이언트가 서버측으로 패킷을 송신할 때 상기 할당된 C2S 세션 레이블을 부착하여 부하분산장치로 송신하는 제7단계; 및 상기 클라이언트로부터 상기 C2S 세션 레이블이 부착된 패킷을 수신한 상기 부하분산장치가 상기 패킷을 목적지 서버로 레이블 스위칭하는 제8단계; 를 포함하여,
상기 부하분산장치가 세션 레이블이 부착된 패킷에 대해서는 세션 레이블 정보만을 이용하여 접속할 서버를 결정함을 특징으로 한다.
이하, 본 발명의 바람직한 실시예를 첨부한 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명에 따른 부하 분산 장치가 적용되는 서비스망 구조의 예시도이다. 도 1에 도시된 바와 같이, 본 발명이 적용되는 서버 접속 서비스를 제공하기 위한 서비스망의 구조를 살펴보면, 다수의 클라이언트(101)는 인터넷 망(102)을 통해 서버 팜(farm)(105)에 접속되는데 상기 서버들(105)의 앞단에 본 발명에 따른 부하 분산 장치(103)가 위치하여 상기 클라이언트들(101)의 요구를 분석하여 상기 서버들(105)간에 분산시킨다. 도면부호 104는 웹/미디어 서버 클러스트이다.
도 2는 본 발명의 일 실시예에 따른 부하 분산장치의 기능 블록 구성도이다. 도 2를 참조하면, 본 발명의 일 실시예에 따른 부하 분산 장치(200)는 크게 패킷분석부(210), 부하분산처리부(220), 세션레이블스위칭부(230), 세션관리부(240), 세션레이블관리부(250)를 포함하여 구성된다. 또한, 상기 부하 분산 장치(200)는 서버 또는 IP 네트워크(201)와 부하 분산 세션 레이블(Load Balancing Session Label, 이하 LBSL이라 함)이 부착된 패킷 또는 일반적인 IP 패킷들을 교환한다. 여기서 상기 LBSL은 일반적인 멀티 프로토콜 레이블 스위칭(Multi-Protocol Label Switching : MPLS)의 구조를 적용한 것으로서, 부하 분산 처리를 수행하기 위한 세션 레이블이다.
상기 패킷분석부(210)는 수신 패킷에 대해 세션 레이블의 부착 여부를 검사하는 세션 레이블 검사기능부(212), 세션 정보 추출을 위한 상기 패킷의 3계층에서 7계층까지의 헤더 정보를 분석하는 패킷 내용 분석기능부(211), 필요시에 상기 할당된 세션 레이블을 부착하는 세션 레이블 부착 기능부(213)로 구성된다. 상기 세션 레이블 검사 기능부(212)는 수신된 패킷에 세션 레이블이 붙어 있는지를 확인한 후 붙어 있는 경우에는 세션 레이블 스위칭부(230)로 상기 패킷을 보낸다. 상기 세 션 레이블이 붙어 있지 않은 패킷은 새로운 세션 패킷이므로 세션 정보를 분석하기 위해 패킷내용 분석 기능부(211)로 넘어간다. 상기 패킷 내용 분석 기능부(211)는 상기 패킷의 3계층에서 7계층까지의 헤더 정보의 분석을 통해 세션 정보를 분석하여, 세션관리부(240)가 관리하는 세션 테이블(242)의 내용과 비교한다. 그 비교결과 새로운 세션인 경우에는 서비스 서버를 할당하기 위해 부하분산처리부(220)로 보낸다. 만약 기존 세션인 경우에는 클라이언트측이 세션 레이블 기능을 지원하지 않는 경우이므로 세션 테이블(242)을 참조하여 해당 서버로 보낸다. 상기 세션 레이블 부착 기능부(213)는 클라이언트에서 서버측으로 또는 서버에서 클라이언트측으로 전달할 패킷이 세션 레이블을 부착하는 기능을 담당한다.
부하분산처리부(220)는 새로운 세션에 대해 부하분산을 고려하여 서버를 할당한다. 부하분산 알고리즘 기능부(222)는 라운드 로빈 방식이나, 최소 연결 서버, 가중치를 고려한 서버 분배 혹은 서버로부터의 응답 시간을 고려하는 등 여러 가지 알고리즘을 사용하여 부하분산 서버를 결정한다. 이 때 각 서버의 형상이나 상태를 반영하기 위해 서버 형상/상태 관리 기능부(221)는 실시간 서버 상태 모니터링 및 구성관리 기능을 수행한다. 또한, 서비스 수락제어 기능부(223)는 새로운 세션으로 인해 기존의 서비스 중인 세션들의 서비스 품질 악화가 우려되는 경우에는 서비스 요구를 수락하지 않도록 서비스를 거절하게 한다. 서비스 수락 제어 기능은 세션 레이블이 부착된 기존의 세션에 대해서는 검사하지 않고, 새로운 세션 요구나 세션 레이블이 부착되지 않은 패킷에 대해서만 수행함으로써 수락제어로 인한 성능 저하를 방지할 수 있는 장점이 있다.
세션 레이블 스위칭부(230)는 세션 레이블을 부착하고 수신된 패킷에 대해 별도의 패킷 분석 과정이나 서버 할당 과정을 거치지 않고 바로 하드웨어 적인 스위칭을 고속으로 처리하는 모듈이다. 세션 레이블 기반 스위칭부(231)는 레이블 스위칭 테이블(232)을 참조하여 레이블 스위칭을 수행하며, 레이블 기반 부하 분산 장치의 핵심적인 기능 중의 하나이다.
세션관리부(240)는 클라이언트들이 요구한 세션의 정보와 상태를 유지 관리하는 모듈로서, 세션관리기능부(241)는 세션의 시작, 종료 및 중단 등을 인지하여 관련 정보를 세션 테이블(242)에 추가, 삭제 및 변경하는 기능을 처리한다. 상기 세션 테이블(242)은 상기 패킷분석부(210)나 상기 부하분산처리부(220)가 기능을 수행하기 위해 참조한다.
세션레이블관리부(250)는 세션 레이블을 관리하는 모듈이다. 세션 레이블 관리 기능부(251)는 세션의 추가, 삭제 시에 필요한 세션 레이블을 할당해 주고, 사용되지 않는 세션 레이블들을 회수하여 관리하는 기능이다. 세션 레이블 값의 할당은 서버 단위로 이루어질 수도 있고, 전체 부하 분산 장치 단위로 할당될 수도 있다.
도 3은 본 발명에 따른 부하 분산 장치의 세션 테이블의 구성 예시도이다. 도 3을 참조하면, 본 발명에 따른 세션 테이블(242)은 세션 구분자(31)와 세션의 프로토콜 특성을 나타내는 프로토콜(32), 소스측 및 목적지 IP 주소(33)(34), 소스측 및 목적지 포트 번호(35)(36), 양방향 세션 레이블 값(37) 및 할당된 서버 구분 자(38) 등으로 구성된다. 도 3의 세션 테이블에서 C2S 및 S2C 세션 레이블은 클라이언트에서 서버로(Client-to-Server용)의 세션 레이블 및 서버에서 클라이언트로(Server-to-Client용)의 세션 레이블을 각각 나타낸다.
도 4는 본 발명에 따른 세션 레이블 기반의 부하 분산 장치의 레이블 스위칭 구조도의 일례이다. 도 4를 참조하면, 본 발명에 따른 부하 분산 장치(300)는 메인 프로세서(316), 여러 개의 라인카드(LC)(311~314), 스위치(315) 및 포트들(317)(318)로 구성되고, 이들 포트들(317)(318)을 통해 IP 네트워크(304) 및 서버들(303)이 연결된다. 만약 클라이언트:A(302)가 부하 분산 장치(300)의 라인카드 1(311)의 포트 1(317)을 통하여 부하 분산 장치(300)에 연결되고, 서버:4(303)가 라인카드4(314)의 포트 2(318)를 통해 상기 부하 분산 장치(300)에 연결된 상황에서 상기 클라이언트:A(302)가 상기 서버:4(303)와 세션을 연결하여 서비스를 받는 경우의 양방향 세션 레이블이 각기 1001, 1002인 경우의 레이블 스위칭 테이블(232)의 구성은 도 5에 도시된 바와 같이 상기 연결된 세션의 레이블 값(51)과 입출력 포트(52)(53)의 라인카드 및 포트정보 등으로 구성된다.
도 6은 본 발명의 실시예에 따른 부하 분산 처리과정을 보이는 흐름도로서, 본 발명이 적용되는 서버 접속 서비스를 제공하기 위한 서비스망에서의 부하 분산 처리 과정을 나타낸다. 도 6에서는 그 일례로서 도 1에 도시된 서비스망에서의 부하 분산 처리과정을 설명하며 도면에서 실질적으로 동일한 구성 및 기능을 가진 구성요소들은 동일한 도면부호를 사용할 것이다. 도 6에 도시된 바와 같이, 인터넷 망(102)을 통해 클라이언트(101)가 서버 팜(farm)(105)에 접속되는데, 상기 서버들(105)의 앞단에 본 발명의 부하 분산 장치(103)가 위치하여 상기 클라이언트들(101)의 요구를 분석하여 서버들(105)간에 분산시킨다. 서비스가 이루어지는 과정은 다음과 같다.
클라이언트(101)가 웹 접속이나 전자상거래(e-commerce) 같은 서비스를 요구하면 그 서비스 요구는 도메인 네임 서버(DNS:Domain Name Server)를 거쳐서 가상 IP 주소를 갖는 부하 분산 장치(103)로 연결된다(S111). 상기 부하 분산 장치(103)는 수신된 패킷을 분석하는데, 패킷 헤더의 IP 주소, TCP/UDP 포트번호, http 정보 또는 전자상거래 서비스의 경우 쿠키(cookie)정보 등을 분석하여, 세션 정보를 파악한다(S112). 상기 세션이 구분되면 서버 부하 분산 알고리즘에 의해 해당 세션을 서비스하기 위한 서버(예를 들어, 웹 서버(105))를 결정한다(S113). 그리고 이 세션 용으로 사용하기 위한 부하 분산 세션 레이블을 할당하는데(S114), 이때 할당되는 세션 레이블은 Client-to-Server용(이하, C2S라 한다) 세션 레이블이 할당되며, 이 값은 홀수값으로 할당한다.
이와 같이 서비스할 서버와 세션 레이블 값이 결정되면, 본 발명에 따른 부하 분산 장치(103)는 상기 수신된 패킷의 헤더에 C2S 세션 레이블을 부착하여 상기 서비스하기로 결정된 서버로 보낸다(S115). 이때 레이블 부착 방식은 사용자를 ㄱ구분할 수 있는 사용자 구분 레이블을 사용할 수 있고, 기존의 인터넷망에서 사용하되는 MPLS 레이블 인캡슐레이션 구조를 적용할 수도 있다. 상기 C2S 세션 레이블이 부착된 패킷을 받은 상기 서버(105)는 수신된 세션 레이블 값을 참조하여 반대 방향의 세션 레이블을 자동으로 할당한다(S116). 이 때 할당되는 세션 레이블은 Server-to-Client용(이하, S2C라 한다) 세션 레이블이 할당되며, 이 값은 상기 C2S 세션 레이블에 1을 더한 짝수값으로 할당한다.
이어, 상기 서버(105)는 상기 세션 정보 및 세션 레이블 정보를 시스템 내에 유지하면서 클라이언트(101)의 서비스 요구나 콘텐츠 요구를 처리한다(S117). 상기 처리된 결과나 응답 메시지는 클라이언트(101)측으로 전달되는데, 이 때 S2C 레이블을 부착하고 소스 IP 주소는 부하 분산 장치(103)의 가상 IP 주소를 붙여서 상기 부하 분산 장치(103)로 보낸다(S118). 상기 S2C 세션 레이블은 상기 부하 분산 장치(103)로부터 받은 상기 C2S 세션 레이블 값에 1을 더한 짝수값이 사용된다.
상기 부하 분산 장치(103)는 상기 S2C 세션 레이블이 부착된 패킷을 상기 서버(105)로부터 수신하면, 상기 세션 레이블 값에 따라 클라이언트(101)가 연결된 인터페이스로 하드웨어적인 고속 레이블 스위칭을 수행한다(S119). 상기 S2C 세션 레이블이 부착된 패킷들은 클라이언트(101)측으로 전달되는데, 이때 IP 라우팅 혹은 MPLS 레이블 스위칭에 의해 패킷이 전달된다(S120). 만약 MPLS 레이블 스위칭 방식으로 전달되는 경우에는 세션 레이블 앞에 첫 번째 레이블로 터널링을 위한 레이블이 인캡슐레이션되어야 하는데, 이 값은 본 발명의 부하 분산 장치(103)나 클라이언트(101) 혹은 서버(105)와 관련이 없이 인터넷 망의 망 장치들 사이의 기능으로서 본 발명의 특징적인 구성과는 무관하다.
상기 S2C 세션 레이블이 부착된 패킷을 수신한 클라이언트(101)는 S2C 세션 레이블값에서 1을 뺀 값을 C2S 세션 레이블 값으로 정하고, 반대 방향으로 C2S 세 션 레이블을 자동으로 할당한다(S121). 이어 상기 클라이언트(101)는 상기 세션에 대한 정보를 유지하면서 이후의 동일 세션 내에서의 정보 교환시에는 C2S 세션 레이블을 부착하여 망을 통해 상기 부하 분산 장치(103)로 내 보낸다(S122). 상기 부하 분산 장치(103)가 클라이언트(101)로부터 상기 C2S 세션 레이블이 부착된 패킷을 수신하면 별도의 패킷 헤더에 대한 여러 가지 분석 과정을 거치지 않고, 세션 레이블 값만을 이용하여 목적지 서버측으로 스위칭한다(S123). 상기 C2S 세션 레이블이 부착된 패킷은 목적지 서버측으로 전달된다(S124).
이러한 과정을 거쳐서 세션이 진행되다가 클라이언트(101)에서 서비스나 세션을 종료하고자 하는 경우에는 서비스나 세션의 종료를 부하 분산 장치(103)로 요구하고(S125), 상기 클라이언트(101)는 세션 레이블 정보를 삭제한다(S126). 세션 종료 요구를 받은 부하 분산 장치(103)는 세션 종료 처리를 수행하고(S127), 세션 관리 테이블의 해당 정보를 삭제하며, 양방향 세션 레이블을 회수한다(S128). 그리고 세션 종료를 목적지 서버에게 알려주면(S129), 상기 목적지 서버는 세션 정보를 삭제하고, 세션 레이블 정보도 삭제한다(S130).
이와 같은 서비스 과정에서 일단 세션 레이블이 할당된 단계(S114)부터 세션 종료가 이루어지는 단계(S129)까지의 모든 세션 패킷들은 세션 레이블이 부착된 형태로 전달된다.
도 7은 본 발명에 따른 부하 분산 처리과정에서의 양방향 세션 레이블 값의 할당을 나타낸 예시도이다. 도 7에 도시된 바와 같이, 예를 들어 세션1이 새로 생 성되는 경우 세션 정보를 분석하고 부하 분산 알고리즘에 의해 목적지 서버를 결정하고, 세션 레이블 값이 할당된다. 이 때 C2S 세션 레이블값은 1이 할당되고, S2C 세션 레이블 값은 할당된 C2S 세션 레이블 값에 1을 더한 2라는 값이 자동으로 할당되는 방식이다. 이러한 방식은 부하 분산 장치에서 양방향 세션 레이블을 할당하면, 서버와 클라이언트에서는 클라이언트와 서버간에 별도의 세션 레이블 할당 프로토콜없이 수신된 세션 레이블 값으로부터 자동으로 반대 방향 레이블값을 결정할 수 있게 해 주는 장점을 갖는다. 세션 레이블 할당 관리는 부하분산시스템의 세션 레이블 관리 기능에서 처리한다.
도 8은 본 발명을 적용함에 있어서, LBSL의 구조로 MPLS 레이블을 적용한 예로서, LBSL 인캡슐레이션된 패킷 구조도이다. 도 8을 참조하면, 일반적인 페이로드 앞에 RTP, TCP/UDP, IP 헤더 등이 부착된다. LBSL 세션 레이블 헤더는 세션 레이블(20비트), EXP(3비트), TTL(8비트), S(1비트) 등 32비트로 구성되며, LBSL은 이중에 레이블 비트인 20비트만을 이용한다. MPLS top label은 인터넷망을 MPLS 레이블 스위칭되는 경우에 사용되는 레이블로서 백본망 장비들간에만 탈부착되는 레이블로서 본 발명과는 무관하다.
이상에서 설명한 바와 같이, 본 발명에 따른 부하분산장치 및 방법은 세션 레이블이 부착된 모든 패킷에 대해서는 복잡한 패킷 분석 과정을 거치지 않고 세션 레이블 정보만을 이용하여 접속할 서버를 결정하게 함으로서 부하 분산 처리 과정을 단순화시킬 수 있고, 서버의 가상 IP 주소와 실제 IP 주소의 변경 기능을 생략할 수 있게 된다.
상기한 상세한 설명 및 도면의 내용은 본 발명의 일 실시형태에 따른 것으로서 본 발명을 한정하는 것은 아니다. 따라서, 본 발명의 권리의 범위는 상기한 상세한 설명에 의해 결정되는 것이 아니라 첨부한 청구범위에 의해 결정되어야만 할 것이다.
본 발명에 따르면, 다수 서버들로 구성되는 서버 팜(farm)에서 인터넷 기반 멀티미디어 서비스 및 전자 상거래(e-commerce) 등의 서비스를 클라이언트들에게 제공하는데 있어서, 부하 분산시스템이 부하 분산 세션 레이블이 부착된 패킷에 대해서는 복잡한 계층3에서 계층7까지의 패킷 분석과정을 거치지 않고 세션 레이블 정보만을 이용하여 목적지 서버로 하드웨어적인 레이블 스위칭 처리를 가능하게 함으로써 기존의 부하 분산시스템의 처리과정을 획기적으로 단순화하여 성능을 개선할 수 있다.
또한, 본 발명은 세션 레이블 정보를 이용하여 연결제어를 수행함으로써 기존의 부하 분산시스템에서 필수적으로 요구되는 매 패킷에 대한 실제 서버에 대한 가상 IP 주소와 실제 서버 IP 정보간의 변경 기능을 거치지 않게 함으로써 처리 과정을 단순화하는 효과가 있다.
더하여, 새로운 세션에 대한 수용 여부를 결정함에 있어서 세션 레이블이 부착되지 않은 패킷들에 대해서만 이를 선별적으로 적용함으로써 세션 레이블이 부착된 기존 세션의 서비스 품질의 저하를 예방하는 효과가 있다.
Claims (15)
- 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고 상기 다수의 서버의 전단에 위치하여 상기 클라이언트의 요구를 분석하여 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치에 있어서,수신된 패킷에 대하여 세션 레이블의 부착 여부를 검사하고 상기 패킷의 헤더 정보를 분석하여 세션 정보를 파악하며, 상기 수신된 패킷의 헤더에 세션 레이블을 부착하는 패킷분석부;상기 패킷분석부의 검사결과 세션 레이블이 부착되지 않은 패킷의 세션에 대하여 부하 분산을 고려하여 상기 해당 세션을 서비스하기 위한 서버를 할당하는 부하분산처리부;상기 패킷분석부의 검사결과 세션 레이블이 부착된 패킷에 대하여 상기한 패킷 분석 또는 서버 할당 과정 없이 상기 세션 레이블 정보만을 이용하여 하드웨어적인 스위칭을 수행하는 세션레이블스위칭부;클라이언트로부터 요구된 세션의 관련 정보 및 상태를 유지 관리하는 세션관리부; 및세션 레이블을 할당하고 사용하지 않는 세션 레이블을 회수하여 관리하는 세션레이블관리부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서, 상기 패킷분석부는,상기 수신된 패킷에 세션 레이블이 부착되어 있는지를 확인한 후, 부착된 경우 패킷의 스위칭을 위해 상기 세션 레이블 스위칭부로 상기 패킷을 전달하고 부착되지 않은 경우 새로운 세션으로 인지하여 세션 정보를 분석하기 위해 후술하는 패킷내용 분석부로 전달하는 세션레이블 검사부;상기 전달된 패킷의 3계층에서 7계층까지의 헤더 정보의 분석을 통해 세션 정보를 파악하여 새로운 세션인지를 확인한 후, 새로운 세션인 경우 서비스 서버를 할당하기 위해 상기 부하분산처리부로 전달하고 기존의 세션인 경우 설정된 서버로 전달하는 패킷내용 분석부; 및상기 수신된 패킷의 헤더에 상기 할당된 세션 레이블을 부착하는 세션레이블 부착부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서,상기 부하 분산 세션 레이블로 멀티프로토콜 레이블 스위칭(MPLS) 레이블 구조를 적용하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서, 상기 부하분산처리부는,라운드 로빈방식, 최소연결 서버, 가중치 및 서버로부터의 응답시간을 포함하는 정보를 고려한 알고리즘을 이용하여 부하 분산 서버를 결정하는 부하분산 알고리즘부;실시간 서버 상태 모니터링 및 구성관리를 수행하여 각 서버의 형상 및 상태를 관리하는 서버형상/상태관리부; 및서비스 중인 세션에 대해 새로운 세션의 서비스 요구의 수락을 거절하는 서비스수락제어부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서, 상기 세션레이블스위칭부는,상기 패킷 헤더에 부착된 세션 레이블 값, 상기 패킷이 입출력되는 라인카드 및 포트정보를 포함하는 레이블 스위칭 테이블을 참조하여 레이블 스위칭을 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서, 상기 세션관리부는,세션의 시작, 종료 및 중단을 인지하여 관련 정보를 세션 테이블에 추가, 삭제 및 변경하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 제 1항에 있어서, 상기 세션 레이블 할당은,클라이언트에서 서버측(C2S)의 세션 레이블은 홀수값으로 할당하고, 서버에서 클라이언트측(S2C)의 세션 레이블은 상기 C2S의 세션 레이블에 1만큼을 더한 짝수값으로 할당하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
- 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고, 상기 다수의 서버의 전단에 위치한 부하분산장치가 상기 클라이언트의 요구를 분석하여 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법에 있어서,클라이언트가 부하분산장치를 통해 서버로 서비스를 요구하면, 상기 부하분산장치가 상기 서비스에 따른 패킷의 헤더를 분석하여 새로운 세션을 인식하고 상기 세션에 대한 클라이언트에서 서버측(C2S) 세션 레이블을 할당하는 제1단계;상기 부하분산장치가 상기 새로운 세션에 대해 부하분산을 고려하여 상기 세션을 서비스할 서버를 할당하고 상기 수신된 패킷에 상기 할당된 C2S 세션 레이블을 부착하여 상기 서버로 전달하는 제2단계;상기 C2S 세션 레이블이 부착된 패킷을 수신한 서버가 상기 수신된 세션 레이블 값을 참조하여 반대 방향 세션 레이블인 서버에서 클라이언트측(S2C) 세션 레이블을 자동으로 할당하는 제3단계;상기 서버가 상기 클라이언트의 서비스 요구를 처리하고 그 처리결과 패킷에 상기 할당된 S2C 세션 레이블을 부착하여 상기 부하분산장치로 전달하는 제4단계;상기 서버로부터 상기 S2C 세션 레이블이 부착된 패킷을 수신한 부하분산장치는 세션 레이블 값을 이용하여 클라이언트로 레이블 스위칭하는 제5단계;상기 S2C 세션 레이블이 부착된 패킷을 수신한 클라이언트는 상기 수신된 세션 레이블 값을 참조하여 반대 방향의 C2S 세션 레이블을 자동으로 할당하는 제6단계;상기 클라이언트가 서버측으로 패킷을 송신할 때 상기 할당된 C2S 세션 레이블을 부착하여 부하분산장치로 송신하는 제7단계; 및상기 클라이언트로부터 상기 C2S 세션 레이블이 부착된 패킷을 수신한 상기 부하분산장치가 상기 패킷을 목적지 서버로 레이블 스위칭하는 제8단계; 를 포함하여,상기 부하분산장치가 세션 레이블이 부착된 패킷에 대해서는 세션 레이블 정보만을 이용하여 접속할 서버를 결정하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서,상기 부하분산장치로 입력된 패킷에 대해 부하 분산 세션 레이블(LBSL)의 부착 여부를 검사하여 세션 레이블이 부착된 패킷은 세션 레이블 정보만을 이용하여 고속 레이블 스위칭하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서,상기 부하분산장치로 입력된 패킷에 대해 부하 분산 세션 레이블(LBSL)의 부착 여부를 검사하여 세션 레이블이 부착되지 않은 패킷에 대해서만 패킷의 헤더 분석을 선별적으로 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서,상기 특정 서버 결정시 세션 레이블이 부착되지 않은 패킷에 대해서만 세션의 수용 또는 거절 여부를 선별적으로 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서세션 레이블이 부착된 패킷에 대해 서버측에서 가상 IP 주소를 상기 패킷 헤더에 사용하여 상기 부하분산장치에서 상기 가상 IP 주소와 실제 서버 IP 주소간의 맵핑 기능을 생략하도록 하는 것을 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서,상기 클라이언트에서 서버측(C2S)으로 가는 방향의 세션 레이블은 홀수 값을 할당하고, 상기 서버에서 클라이언트측(S2C)으로 가는 세션 레이블은 상기 클라이언트에서 서버측(C2S) 세션 레이블 값에 1을 더하여 자동 할당하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항 또는 제 13항에 있어서,상기 양방향(C2S,S2C) 세션 레이블 할당에 있어서 서버 및 클라이언트가 상대방에서 수신한 패킷에 부착된 세션 레이블 값에 1을 가감함으로써 세션 레이블 할당을 위한 별도의 프로토콜의 사용 없이 반대 방향 레이블 값을 자동으로 인식하도록 하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
- 제 8항에 있어서,상기 세션 레이블을 패킷의 헤더에 부착함에 있어서 멀티프로토콜 레이블 스위칭(MPLS) 헤더 구조를 적용하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030071449A KR100570836B1 (ko) | 2003-10-14 | 2003-10-14 | 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 |
US10/826,205 US7647393B2 (en) | 2003-10-14 | 2004-04-15 | Server load balancing apparatus and method using MPLS session |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030071449A KR100570836B1 (ko) | 2003-10-14 | 2003-10-14 | 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20050035722A KR20050035722A (ko) | 2005-04-19 |
KR100570836B1 true KR100570836B1 (ko) | 2006-04-13 |
Family
ID=34420653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020030071449A KR100570836B1 (ko) | 2003-10-14 | 2003-10-14 | 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7647393B2 (ko) |
KR (1) | KR100570836B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088614A1 (ko) * | 2017-10-31 | 2019-05-09 | 에스케이텔레콤 주식회사 | 데이터 송수신장치 및 데이터 송수신장치의 동작 방법 |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7730456B2 (en) * | 2004-05-19 | 2010-06-01 | Sony Computer Entertainment Inc. | Methods and apparatus for handling processing errors in a multi-processing system |
CA2601850A1 (en) * | 2005-04-04 | 2006-10-12 | Telefonaktiebolaget Lm Ericsson (Publ) | A method and apparatus for distributing load on application servers |
JP4101251B2 (ja) * | 2005-05-24 | 2008-06-18 | 富士通株式会社 | 負荷分散プログラム、負荷分散方法、及び負荷分散装置 |
US8588061B2 (en) | 2005-10-07 | 2013-11-19 | Brixham Solutions Ltd. | Application wire |
US8423670B2 (en) * | 2006-01-25 | 2013-04-16 | Corporation For National Research Initiatives | Accessing distributed services in a network |
US7675854B2 (en) | 2006-02-21 | 2010-03-09 | A10 Networks, Inc. | System and method for an adaptive TCP SYN cookie with time validation |
US8312507B2 (en) | 2006-10-17 | 2012-11-13 | A10 Networks, Inc. | System and method to apply network traffic policy to an application session |
US8584199B1 (en) | 2006-10-17 | 2013-11-12 | A10 Networks, Inc. | System and method to apply a packet routing policy to an application session |
US8259715B2 (en) * | 2007-07-25 | 2012-09-04 | Hewlett-Packard Development Company, L.P. | System and method for traffic load balancing to multiple processors |
US8868775B2 (en) * | 2008-02-10 | 2014-10-21 | Cisco Technology, Inc. | Load balancing manipulation of packet flows within a transport conduit |
US20100036903A1 (en) * | 2008-08-11 | 2010-02-11 | Microsoft Corporation | Distributed load balancer |
US9960967B2 (en) | 2009-10-21 | 2018-05-01 | A10 Networks, Inc. | Determining an application delivery server based on geo-location information |
US9215275B2 (en) | 2010-09-30 | 2015-12-15 | A10 Networks, Inc. | System and method to balance servers based on server load status |
US9609052B2 (en) | 2010-12-02 | 2017-03-28 | A10 Networks, Inc. | Distributing application traffic to servers based on dynamic service response time |
US8776207B2 (en) | 2011-02-16 | 2014-07-08 | Fortinet, Inc. | Load balancing in a network with session information |
US9270639B2 (en) * | 2011-02-16 | 2016-02-23 | Fortinet, Inc. | Load balancing among a cluster of firewall security devices |
US8897154B2 (en) | 2011-10-24 | 2014-11-25 | A10 Networks, Inc. | Combining stateless and stateful server load balancing |
US9386088B2 (en) | 2011-11-29 | 2016-07-05 | A10 Networks, Inc. | Accelerating service processing using fast path TCP |
US9094364B2 (en) * | 2011-12-23 | 2015-07-28 | A10 Networks, Inc. | Methods to manage services over a service gateway |
US10044582B2 (en) | 2012-01-28 | 2018-08-07 | A10 Networks, Inc. | Generating secure name records |
US8819275B2 (en) * | 2012-02-28 | 2014-08-26 | Comcast Cable Communications, Llc | Load balancing and session persistence in packet networks |
US8782221B2 (en) | 2012-07-05 | 2014-07-15 | A10 Networks, Inc. | Method to allocate buffer for TCP proxy session based on dynamic network conditions |
US9705800B2 (en) | 2012-09-25 | 2017-07-11 | A10 Networks, Inc. | Load distribution in data networks |
US10002141B2 (en) | 2012-09-25 | 2018-06-19 | A10 Networks, Inc. | Distributed database in software driven networks |
US10021174B2 (en) | 2012-09-25 | 2018-07-10 | A10 Networks, Inc. | Distributing service sessions |
US9843484B2 (en) | 2012-09-25 | 2017-12-12 | A10 Networks, Inc. | Graceful scaling in software driven networks |
US9338225B2 (en) | 2012-12-06 | 2016-05-10 | A10 Networks, Inc. | Forwarding policies on a virtual service network |
US9185006B2 (en) * | 2012-12-17 | 2015-11-10 | Microsoft Technology Licensing, Llc | Exchange of server health and client information through headers for request management |
US9531846B2 (en) | 2013-01-23 | 2016-12-27 | A10 Networks, Inc. | Reducing buffer usage for TCP proxy session based on delayed acknowledgement |
US9900252B2 (en) | 2013-03-08 | 2018-02-20 | A10 Networks, Inc. | Application delivery controller and global server load balancer |
WO2014144837A1 (en) | 2013-03-15 | 2014-09-18 | A10 Networks, Inc. | Processing data packets using a policy based network path |
US10027761B2 (en) | 2013-05-03 | 2018-07-17 | A10 Networks, Inc. | Facilitating a secure 3 party network session by a network device |
WO2014179753A2 (en) | 2013-05-03 | 2014-11-06 | A10 Networks, Inc. | Facilitating secure network traffic by an application delivery controller |
US9344493B1 (en) * | 2013-07-11 | 2016-05-17 | Juniper Networks, Inc. | Server health monitoring for traffic load balancer |
US10230770B2 (en) | 2013-12-02 | 2019-03-12 | A10 Networks, Inc. | Network proxy layer for policy-based application proxies |
US9942152B2 (en) | 2014-03-25 | 2018-04-10 | A10 Networks, Inc. | Forwarding data packets using a service-based forwarding policy |
US10020979B1 (en) | 2014-03-25 | 2018-07-10 | A10 Networks, Inc. | Allocating resources in multi-core computing environments |
US9942162B2 (en) | 2014-03-31 | 2018-04-10 | A10 Networks, Inc. | Active application response delay time |
US9806943B2 (en) | 2014-04-24 | 2017-10-31 | A10 Networks, Inc. | Enabling planned upgrade/downgrade of network devices without impacting network sessions |
US9906422B2 (en) | 2014-05-16 | 2018-02-27 | A10 Networks, Inc. | Distributed system to determine a server's health |
US9992229B2 (en) | 2014-06-03 | 2018-06-05 | A10 Networks, Inc. | Programming a data network device using user defined scripts with licenses |
US10129122B2 (en) | 2014-06-03 | 2018-11-13 | A10 Networks, Inc. | User defined objects for network devices |
US9986061B2 (en) | 2014-06-03 | 2018-05-29 | A10 Networks, Inc. | Programming a data network device using user defined scripts |
WO2016177400A1 (en) * | 2015-05-05 | 2016-11-10 | Telecom Italia S.P.A. | Subscriber session re-distribution in a communication network |
US10581976B2 (en) | 2015-08-12 | 2020-03-03 | A10 Networks, Inc. | Transmission control of protocol state exchange for dynamic stateful service insertion |
US10243791B2 (en) | 2015-08-13 | 2019-03-26 | A10 Networks, Inc. | Automated adjustment of subscriber policies |
US10318288B2 (en) | 2016-01-13 | 2019-06-11 | A10 Networks, Inc. | System and method to process a chain of network applications |
US10389835B2 (en) | 2017-01-10 | 2019-08-20 | A10 Networks, Inc. | Application aware systems and methods to process user loadable network applications |
KR102106778B1 (ko) | 2017-10-31 | 2020-05-28 | 에스케이텔레콤 주식회사 | 데이터 송수신장치 및 데이터 송수신장치의 동작 방법 |
CN113766032A (zh) * | 2021-09-14 | 2021-12-07 | 烽火通信科技股份有限公司 | 转控分离架构vbras的业务保护方法及系统 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6601084B1 (en) * | 1997-12-19 | 2003-07-29 | Avaya Technology Corp. | Dynamic load balancer for multiple network servers |
US6412077B1 (en) * | 1999-01-14 | 2002-06-25 | Cisco Technology, Inc. | Disconnect policy for distributed computing systems |
US6587866B1 (en) * | 2000-01-10 | 2003-07-01 | Sun Microsystems, Inc. | Method for distributing packets to server nodes using network client affinity and packet distribution table |
US6665273B1 (en) * | 2000-01-11 | 2003-12-16 | Cisco Technology, Inc. | Dynamically adjusting multiprotocol label switching (MPLS) traffic engineering tunnel bandwidth |
US6910074B1 (en) * | 2000-07-24 | 2005-06-21 | Nortel Networks Limited | System and method for service session management in an IP centric distributed network |
US7003574B1 (en) * | 2000-11-01 | 2006-02-21 | Microsoft Corporation | Session load balancing and use of VIP as source address for inter-cluster traffic through the use of a session identifier |
US7046680B1 (en) * | 2000-11-28 | 2006-05-16 | Mci, Inc. | Network access system including a programmable access device having distributed service control |
JP3610913B2 (ja) | 2001-02-14 | 2005-01-19 | 日本電気株式会社 | ルータとそのパケット交換方法、及びパケット交換プログラム |
US7093127B2 (en) * | 2001-08-09 | 2006-08-15 | Falconstor, Inc. | System and method for computer storage security |
WO2002087175A1 (fr) * | 2001-04-19 | 2002-10-31 | Fujitsu Limited | Procede et appareil de restauration/protection |
US7212527B2 (en) * | 2001-05-09 | 2007-05-01 | Intel Corporation | Method and apparatus for communicating using labeled data packets in a network |
US7209977B2 (en) * | 2001-10-01 | 2007-04-24 | International Business Machines Corporation | Method and apparatus for content-aware web switching |
US6856991B1 (en) * | 2002-03-19 | 2005-02-15 | Cisco Technology, Inc. | Method and apparatus for routing data to a load balanced server using MPLS packet labels |
US7230913B1 (en) * | 2002-06-11 | 2007-06-12 | Cisco Technology, Inc. | MPLS fast reroute without full mesh traffic engineering |
US7257119B2 (en) * | 2002-12-23 | 2007-08-14 | At&T | MPLS virtual private network using dual network cores |
US7872991B2 (en) * | 2003-02-04 | 2011-01-18 | Alcatel-Lucent Usa Inc. | Methods and systems for providing MPLS-based layer-2 virtual private network services |
US7478427B2 (en) * | 2003-05-05 | 2009-01-13 | Alcatel-Lucent Usa Inc. | Method and apparatus for providing adaptive VPN to enable different security levels in virtual private networks (VPNs) |
JP4165298B2 (ja) * | 2003-05-29 | 2008-10-15 | 株式会社日立製作所 | 端末装置、及び通信網の切替え方法 |
-
2003
- 2003-10-14 KR KR1020030071449A patent/KR100570836B1/ko not_active IP Right Cessation
-
2004
- 2004-04-15 US US10/826,205 patent/US7647393B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019088614A1 (ko) * | 2017-10-31 | 2019-05-09 | 에스케이텔레콤 주식회사 | 데이터 송수신장치 및 데이터 송수신장치의 동작 방법 |
Also Published As
Publication number | Publication date |
---|---|
US7647393B2 (en) | 2010-01-12 |
KR20050035722A (ko) | 2005-04-19 |
US20050080890A1 (en) | 2005-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100570836B1 (ko) | 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 | |
US11418620B2 (en) | Service request management | |
US10652202B2 (en) | Network address translating router for mobile networking | |
US7124188B2 (en) | Method and apparatus for policy based class service and adaptive service level management within the context of an internet and intranet | |
US20020152307A1 (en) | Methods, systems and computer program products for distribution of requests based on application layer information | |
US8300772B2 (en) | Method and apparatus for emergency call processing | |
Hunt et al. | Network dispatcher: A connection router for scalable internet services | |
US7328237B1 (en) | Technique for improving load balancing of traffic in a data network using source-side related information | |
US7406540B2 (en) | Method and apparatus for content-aware web switching | |
USRE44918E1 (en) | Method and apparatus for equalizing load of streaming media server | |
EP1867130B1 (en) | A method and apparatus for distributing load on application servers | |
CA2202572C (en) | A scaleable web server and method of efficiently managing multiple servers | |
JP4053967B2 (ja) | Vlanサーバ | |
US6611873B1 (en) | Address-based service request distributing method and address converter | |
Yang et al. | EFFICIENTSUPPORTFORCO NTENT-BASED ROUTINGINWEBSERVERCLU STERS | |
US20030055971A1 (en) | Providing load balancing in delivering rich media | |
EP2913978A1 (en) | Business scheduling method and apparatus and convergence device | |
US20070078955A1 (en) | Service quality management in packet networks | |
JP2000311130A (ja) | 広域ネットワークの負荷バランス方法、負荷バランスシステム、負荷バランスサーバー及び負荷バランスサーバーセレクタ | |
US20090327486A1 (en) | Providing access by a client application program over an internet protocol (ip) network to a server application program instance | |
JP4041038B2 (ja) | 高位レイヤ処理方法及びシステム | |
US8559423B2 (en) | Method and apparatus for packet processing | |
Ivanisenko | Methods and Algorithms of load balancing | |
EP2786551B1 (en) | Discovering data network infrastructure services | |
CN112073503A (zh) | 一种基于流控机制的高性能负载均衡方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120330 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20130325 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20150506 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |