KR100570836B1 - 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 - Google Patents

부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 Download PDF

Info

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
Application number
KR1020030071449A
Other languages
English (en)
Other versions
KR20050035722A (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 KR1020030071449A priority Critical patent/KR100570836B1/ko
Priority to US10/826,205 priority patent/US7647393B2/en
Publication of KR20050035722A publication Critical patent/KR20050035722A/ko
Application granted granted Critical
Publication of KR100570836B1 publication Critical patent/KR100570836B1/ko

Links

Images

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
    • 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/1017Server selection for load balancing based on a round robin mechanism
    • 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/1023Server selection for load balancing based on a hash applied to IP addresses or costs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

본 발명은 클라이언트에서 서버로 전송되는 패킷에 부하 분산 세션 레이블을 부착하고 상기 세션 레이블 정보만을 이용하여 서버를 결정함으로써 서버간의 부하를 분산시키는 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법에 관한 것이다. 본 발명은, 수신된 패킷에 대하여 부하 분산 세션 레이블 부착 여부 검사, 세션 정보 파악 및 패킷의 헤더에 세션 레이블을 부착하는 패킷분석부; 상기 검사결과 세션 레이블이 부착되지 않은 패킷의 세션에 대하여 부하 분산을 고려하여 상기 세션을 서비스하기 위한 서버를 할당하는 부하분산처리부; 상기 검사결과 세션 레이블이 부착된 패킷에 대하여 상기 세션 레이블 정보만을 이용하여 스위칭을 수행하는 세션레이블스위칭부; 클라이언트로부터 요구된 세션의 정보 및 상태를 유지 관리하는 세션관리부; 및 세션 레이블을 할당하고 사용하지 않는 세션 레이블을 회수하여 관리하는 세션레이블관리부를 포함한다. 본 발명에 따르면, 부하분산처리시 세션 레이블이 부착된 패킷에 대해서는 복잡한 패킷 분석 과정을 배제함으로서 부하분산장치의 처리과정이 단순화되고 성능이 개선되며, 부하분산에 따른 프로세싱 오버헤더를 줄일 수 있다.
클라이언트, 인터넷망, 서버, MPLS, 세션, 레이블, 부하분산

Description

부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법{A Server Load Balancing Device and Method using Load Balancing Session Label}
도 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)

  1. 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고 상기 다수의 서버의 전단에 위치하여 상기 클라이언트의 요구를 분석하여 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치에 있어서,
    수신된 패킷에 대하여 세션 레이블의 부착 여부를 검사하고 상기 패킷의 헤더 정보를 분석하여 세션 정보를 파악하며, 상기 수신된 패킷의 헤더에 세션 레이블을 부착하는 패킷분석부;
    상기 패킷분석부의 검사결과 세션 레이블이 부착되지 않은 패킷의 세션에 대하여 부하 분산을 고려하여 상기 해당 세션을 서비스하기 위한 서버를 할당하는 부하분산처리부;
    상기 패킷분석부의 검사결과 세션 레이블이 부착된 패킷에 대하여 상기한 패킷 분석 또는 서버 할당 과정 없이 상기 세션 레이블 정보만을 이용하여 하드웨어적인 스위칭을 수행하는 세션레이블스위칭부;
    클라이언트로부터 요구된 세션의 관련 정보 및 상태를 유지 관리하는 세션관리부; 및
    세션 레이블을 할당하고 사용하지 않는 세션 레이블을 회수하여 관리하는 세션레이블관리부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  2. 제 1항에 있어서, 상기 패킷분석부는,
    상기 수신된 패킷에 세션 레이블이 부착되어 있는지를 확인한 후, 부착된 경우 패킷의 스위칭을 위해 상기 세션 레이블 스위칭부로 상기 패킷을 전달하고 부착되지 않은 경우 새로운 세션으로 인지하여 세션 정보를 분석하기 위해 후술하는 패킷내용 분석부로 전달하는 세션레이블 검사부;
    상기 전달된 패킷의 3계층에서 7계층까지의 헤더 정보의 분석을 통해 세션 정보를 파악하여 새로운 세션인지를 확인한 후, 새로운 세션인 경우 서비스 서버를 할당하기 위해 상기 부하분산처리부로 전달하고 기존의 세션인 경우 설정된 서버로 전달하는 패킷내용 분석부; 및
    상기 수신된 패킷의 헤더에 상기 할당된 세션 레이블을 부착하는 세션레이블 부착부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  3. 제 1항에 있어서,
    상기 부하 분산 세션 레이블로 멀티프로토콜 레이블 스위칭(MPLS) 레이블 구조를 적용하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  4. 제 1항에 있어서, 상기 부하분산처리부는,
    라운드 로빈방식, 최소연결 서버, 가중치 및 서버로부터의 응답시간을 포함하는 정보를 고려한 알고리즘을 이용하여 부하 분산 서버를 결정하는 부하분산 알고리즘부;
    실시간 서버 상태 모니터링 및 구성관리를 수행하여 각 서버의 형상 및 상태를 관리하는 서버형상/상태관리부; 및
    서비스 중인 세션에 대해 새로운 세션의 서비스 요구의 수락을 거절하는 서비스수락제어부; 를 포함하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  5. 제 1항에 있어서, 상기 세션레이블스위칭부는,
    상기 패킷 헤더에 부착된 세션 레이블 값, 상기 패킷이 입출력되는 라인카드 및 포트정보를 포함하는 레이블 스위칭 테이블을 참조하여 레이블 스위칭을 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  6. 제 1항에 있어서, 상기 세션관리부는,
    세션의 시작, 종료 및 중단을 인지하여 관련 정보를 세션 테이블에 추가, 삭제 및 변경하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  7. 제 1항에 있어서, 상기 세션 레이블 할당은,
    클라이언트에서 서버측(C2S)의 세션 레이블은 홀수값으로 할당하고, 서버에서 클라이언트측(S2C)의 세션 레이블은 상기 C2S의 세션 레이블에 1만큼을 더한 짝수값으로 할당하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산장치.
  8. 인터넷 망을 통해 다수의 클라이언트가 다수의 서버에 접속되고, 상기 다수의 서버의 전단에 위치한 부하분산장치가 상기 클라이언트의 요구를 분석하여 서버간에 분산시켜 서비스를 제공하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법에 있어서,
    클라이언트가 부하분산장치를 통해 서버로 서비스를 요구하면, 상기 부하분산장치가 상기 서비스에 따른 패킷의 헤더를 분석하여 새로운 세션을 인식하고 상기 세션에 대한 클라이언트에서 서버측(C2S) 세션 레이블을 할당하는 제1단계;
    상기 부하분산장치가 상기 새로운 세션에 대해 부하분산을 고려하여 상기 세션을 서비스할 서버를 할당하고 상기 수신된 패킷에 상기 할당된 C2S 세션 레이블을 부착하여 상기 서버로 전달하는 제2단계;
    상기 C2S 세션 레이블이 부착된 패킷을 수신한 서버가 상기 수신된 세션 레이블 값을 참조하여 반대 방향 세션 레이블인 서버에서 클라이언트측(S2C) 세션 레이블을 자동으로 할당하는 제3단계;
    상기 서버가 상기 클라이언트의 서비스 요구를 처리하고 그 처리결과 패킷에 상기 할당된 S2C 세션 레이블을 부착하여 상기 부하분산장치로 전달하는 제4단계;
    상기 서버로부터 상기 S2C 세션 레이블이 부착된 패킷을 수신한 부하분산장치는 세션 레이블 값을 이용하여 클라이언트로 레이블 스위칭하는 제5단계;
    상기 S2C 세션 레이블이 부착된 패킷을 수신한 클라이언트는 상기 수신된 세션 레이블 값을 참조하여 반대 방향의 C2S 세션 레이블을 자동으로 할당하는 제6단계;
    상기 클라이언트가 서버측으로 패킷을 송신할 때 상기 할당된 C2S 세션 레이블을 부착하여 부하분산장치로 송신하는 제7단계; 및
    상기 클라이언트로부터 상기 C2S 세션 레이블이 부착된 패킷을 수신한 상기 부하분산장치가 상기 패킷을 목적지 서버로 레이블 스위칭하는 제8단계; 를 포함하여,
    상기 부하분산장치가 세션 레이블이 부착된 패킷에 대해서는 세션 레이블 정보만을 이용하여 접속할 서버를 결정하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  9. 제 8항에 있어서,
    상기 부하분산장치로 입력된 패킷에 대해 부하 분산 세션 레이블(LBSL)의 부착 여부를 검사하여 세션 레이블이 부착된 패킷은 세션 레이블 정보만을 이용하여 고속 레이블 스위칭하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  10. 제 8항에 있어서,
    상기 부하분산장치로 입력된 패킷에 대해 부하 분산 세션 레이블(LBSL)의 부착 여부를 검사하여 세션 레이블이 부착되지 않은 패킷에 대해서만 패킷의 헤더 분석을 선별적으로 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  11. 제 8항에 있어서,
    상기 특정 서버 결정시 세션 레이블이 부착되지 않은 패킷에 대해서만 세션의 수용 또는 거절 여부를 선별적으로 수행하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  12. 제 8항에 있어서
    세션 레이블이 부착된 패킷에 대해 서버측에서 가상 IP 주소를 상기 패킷 헤더에 사용하여 상기 부하분산장치에서 상기 가상 IP 주소와 실제 서버 IP 주소간의 맵핑 기능을 생략하도록 하는 것을 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  13. 제 8항에 있어서,
    상기 클라이언트에서 서버측(C2S)으로 가는 방향의 세션 레이블은 홀수 값을 할당하고, 상기 서버에서 클라이언트측(S2C)으로 가는 세션 레이블은 상기 클라이언트에서 서버측(C2S) 세션 레이블 값에 1을 더하여 자동 할당하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  14. 제 8항 또는 제 13항에 있어서,
    상기 양방향(C2S,S2C) 세션 레이블 할당에 있어서 서버 및 클라이언트가 상대방에서 수신한 패킷에 부착된 세션 레이블 값에 1을 가감함으로써 세션 레이블 할당을 위한 별도의 프로토콜의 사용 없이 반대 방향 레이블 값을 자동으로 인식하도록 하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
  15. 제 8항에 있어서,
    상기 세션 레이블을 패킷의 헤더에 부착함에 있어서 멀티프로토콜 레이블 스위칭(MPLS) 헤더 구조를 적용하는 것을 특징으로 하는 부하 분산 세션 레이블(LBSL)을 이용한 서버간의 부하 분산방법.
KR1020030071449A 2003-10-14 2003-10-14 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법 KR100570836B1 (ko)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019088614A1 (ko) * 2017-10-31 2019-05-09 에스케이텔레콤 주식회사 데이터 송수신장치 및 데이터 송수신장치의 동작 방법

Families Citing this family (50)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 株式会社日立製作所 端末装置、及び通信網の切替え方法

Cited By (1)

* Cited by examiner, † Cited by third party
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