KR20140088172A - 무상태 및 유상태 서버 부하 분산 결합 방법 - Google Patents

무상태 및 유상태 서버 부하 분산 결합 방법 Download PDF

Info

Publication number
KR20140088172A
KR20140088172A KR1020147013989A KR20147013989A KR20140088172A KR 20140088172 A KR20140088172 A KR 20140088172A KR 1020147013989 A KR1020147013989 A KR 1020147013989A KR 20147013989 A KR20147013989 A KR 20147013989A KR 20140088172 A KR20140088172 A KR 20140088172A
Authority
KR
South Korea
Prior art keywords
data packet
service
session
determining
hybrid
Prior art date
Application number
KR1020147013989A
Other languages
English (en)
Other versions
KR101632187B1 (ko
Inventor
라즈쿠마르 잘란
페일롱 수
랄구디 나라야난 칸난
로널드 와이 룬 스제토
Original Assignee
에이10 네트워크스, 인코포레이티드
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 에이10 네트워크스, 인코포레이티드 filed Critical 에이10 네트워크스, 인코포레이티드
Publication of KR20140088172A publication Critical patent/KR20140088172A/ko
Application granted granted Critical
Publication of KR101632187B1 publication Critical patent/KR101632187B1/ko

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/1027Persistence of sessions during load balancing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/564Enhancement of application control based on intercepted application data

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

서비스 게이트웨이에 의해 호스트와 서버 사이의 통신 세션 동안 전송된 데이터 패킷을 처리하는 방법은, 현재의 하이브리드 유상태 또는 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷을 처리하는 단계; 하이브리드 무상태 또는 하이브리드 유상태 조건이 충족되는지를 체크하는 단계; 상기 조건이 충족될 때, 다음에 수신된 데이터 패킷에 대해, 하이브리드 유상태 처리 방법으로부터 하이브리드 무상태 처리 방법으로, 또는 그 반대로 변경하는 단계; 및 상기 조건이 충족되지 않을 때, 계속 현재의 하이브리 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함한다.

Description

무상태 및 유상태 서버 부하 분산 결합 방법{METHODS TO COMBINE STATELESS AND STATEFUL SERVER LOAD BALANCING}
본 발명은 일반적으로 데이터 통신에 관한 것이고, 보다 상세하게는 서비스 게이트웨이에 관한 것이다.
소비자 및 기업 컴퓨팅 장치에 대한 데이터 통신 서비스에 대한 요구가 빠르게 증가했다. 서비스 제공자는 데이터 서비스를 제공하는 서버와 호스트 컴퓨터 또는 컴퓨팅 장치를 연결하기 위해 서버 부하 분산기(load balancer) 또는 트래픽 관리자와 같은 서비스 게이트웨이를 배치한다.
서비스 게이트웨이는 유상태(statelful) 처리 방법 또는 무상태(stateless) 처리 방법을 사용하여 서비스를 제공한다. 일반적으로, 유상태 처리 방법에서, 패킷은 패킷의 스트림으로서 처리되고, 이러한 스트림의 각 패킷은 동일한 방법으로 처리된다. 무상태 처리 방법에서, 패킷은 따로 처리되는데, 각 패킷은 개별적으로 평가된다. 유상태 처리 방법은 구현될 수 있는 보안 및 제어 특징으로 인해 유상태 처리 방법에 대해 선호될 수 있지만, 이러한 특징의 자원 필요에 의해 서비스 확장이 어려울 수 있다. 무상태 처리 방법은 그 확장성으로 인해 유상태 처리 방법에 비해 선호될 수 있지만, 이러한 확장성은 보안 및 제어의 댓가를 지불해야 한다.
서비스 게이트웨이에 의해 관리되는 트래픽은 네트워크 상의 조건의 변동이 때때로 크기 때문에 거의 균일하지 않다. 현재, 시스템 관리자는 각 방법의 비용 및 장점을 고려하여, 특정 서비스 주소에 대한 유상태 처리 방법 또는 무상태 처리 방법을 선택할 필요가 있다. 시스템 관리자는 이러한 비균일한 트래픽으로 인해 양측 처리 방법의 장점을 구현할 수 없다.
본 발명의 하나의 실시예에 따라, 서비스 게이트웨이에 의해 호스트와 서버 사이의 통신 세션 동안 전송된 데이터 패킷을 처리하기 위한 방법은, 상기 서비스 게이트웨이에 의해 하이브리드 유상태 처리 방법을 사용하여 데이터 패킷을 처리하는 단계; 상기 서비스 게이트웨이에 의해 하이브리드 무상태 조건이 만족되는지 여부를 체크하는 단계; 상기 하이브리드 무상태 조건이 만족된다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해, 다음에 수신된 데이터 패킷에 대한 하이브리드 무상태 처리 방법으로 변경하는 단계; 및 상기 하이브리드 무상태 조건이 만족되지 않는다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 유상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함한다.
본 발명의 다른 실시예에서, 서비스 게이트웨이에 의해 호스트와 서버 사이의 통신 세션 동안 전송된 데이터 패킷을 처리하기 위한 방법은, 상기 서비스 게이트웨이에 의해, 상기 데이터 패킷의 서버 주소 또는 서비스 주소가 세션 테이블 내의 세션 엔트리에 매치하지 않으면 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷을 처리하는 단계; 상기 서비스 게이트웨이에 의해 하이브리드 유상태 조건이 만족되는지 여부를 체크하는 단계; 상기 하이브리드 유상태 조건이 만족된다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해, 다음에 수신된 데이터 패킷에 대해, 상기 다음에 수신된 데이터 패킷이 서비스 요청을 포함하지 않거나 상기 다음에 수신된 데이터 패킷이 상기 서버로부터 수신되지 않은 경우에 유상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 하이브리드 유상태 처리 방법으로 변경하는 단계; 상기 하이브리드 유상태 조건이 만족되지 않는다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하고, 상기 하이브리드 유상태 처리 방법은, 상기 서비스 게이트웨이에 의해 상기 데이터 패킷을 수신하는 단계; 상기 데이터 패킷이 상기 호스트 또는 서버로부터 상기 서비스 게이트웨이에 의해 수신되었는지 여부를 상기 서비스 게이트웨이에 의해 판정하는 단계; 상기 데이터 패킷이 상기 호스트로부터 수신되었는다는 판정에 응답하여, 상기 데이터 패킷이 서비스 요청을 포함하고 있는지 여부를 상기 서비스 게이트웨이에 의해 판정하는 단계; 상기 데이터 패킷이 상기 서비스 요청을 포함하고 있다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계; 상기 데이터 패킷이 상기 호스트로부터 수신되었고 상기 서비스 요청을 포함하고 있지 않다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계; 및 상기 데이터 패킷이 상기 서버로부터 수신되었다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계를 포함한다.
본 발명의 하나의 특징에서, 상기 하이브리드 무상태 처리 방법은, 상기 서비스 게이트웨이에 의해 상기 호스트로부터 상기 다음에 수신된 데이터 패킷을 수신하는 단계; 상기 서비스 게이트웨이에 의해 상기 다음에 수신된 데이터 패킷으로부터 서비스 주소를 획득하는 단계; 상기 서비스 게이트웨이에 의해, 상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계; 상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소와 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함한다. 상기 방법은, 상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해, 상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소와 비교하고, 상기 서비스 게이트웨이에 의해 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고, 상기 서비스 게이트웨이에 의해 상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함한다.
상기 요약된 방법에 상응하는 시스템 및 컴퓨터 프로그램 제품 역시 여기에 기술되고 청구되어 있다.
도 1은 호스트와 복수의 서버 사이의 통신 세션을 처리하기 위한 서비스 게이트웨이를 설명하는 도면이다.
도 2는 유상태 처리 방법을 설명하는 도면이다.
도 3은 무상태 처리 방법을 설명하는 도면이다.
도 4는 본 발명에 따라 유상태 처리 방법 및 무상태 처리 방법을 결합하는 하이브리드 무상태 처리 방법을 실행하는 서비스 게이트웨이의 실시예를 설명하는 도면이다.
도 5는 본 발명에 따라 유상태 처리 방법 및 무상태 처리 방법을 결합하는 하이브리드 유상태 처리 방법을 실행하는 서비스 게이트웨이의 실시예를 설명하는 도면이다.
도 6은 본 발명에 따라 만족되는 하이브리드 무상태 조건에 응답하여 하이브리드 유상태 처리 방법으로부터 하이브리드 무상태 처리 방법으로 변경하는 서비스 게이트웨이의 실시예를 설명하는 도면이다.
도 7은 본 발명에 따라 만족되는 하이브리드 유상태 조건에 응답하여 하이브리드 무상태 처리 방법으로부터 하이브리드 유상태 처리 방법으로 변경하는 서비스 게이트웨이의 실시예를 설명하는 도면이다.
도 8은 본 발명에 따른 하이브리드 무상태 처리 방법의 실시예를 설명하는 순서도이다.
도 9는 본 발명에 따른 하이브리드 유상태 처리 방법의 실시예를 설명하는 순서도이다.
도 10은 본 발명에 따라 만족되는 하이브리드 유상태 조건에 응답하여 하이브리드 유상태 처리 방법으로부터 하이브리드 무상태 처리 방법으로 변경하기 위한 방법의 실시예를 설명하는 순서도이다.
도 11은 본 발명에 따라 만족되는 하이브리드 유상태 조건에 응답하여 하이브리드 무상태 처리 방법으로부터 하이브리드 유상태 처리 방법으로 변경하는 방법의 실시예를 설명하는 순서도이다.
다음의 설명은 당업자가 본 발명을 실현하고 사용할 수 있도록 제공되어 있고 본원 및 그 필요에 따라 제공되어 있다. 본 실시예에 대한 다양한 수정이 당업자에게 자명할 것이고 여기의 일반적인 원리는 다른 실시예에 적용될 수 있다. 따라서, 본 발명은 이러한 실시예로 한정되지 않고 여기에 기술된 원리 및 특징에 합치하는 광범위한 범위를 포함한다.
본 발명은 전체가 하드웨어인 실시예, 전체가 소프트웨어인 실시예 또는 하드웨어 및 소프트웨어 엘리먼트를 포함하는 실시예의 형태를 취할 수 있다. 바람직한 실시예에서, 본 발명은 펌웨어, 상주(resident) 소프트웨어, 마이크로코드등을 포함하지만 이에 제한되지 않는 소프트웨어로 구현된다.
또한, 본 발명은 컴퓨터 또는 임의의 명령어 실행 시스템에 의해 또는 이들과 연결되어 사용되기 위한 프로그램 코드를 제공하는 컴퓨터 사용가능하거나 컴퓨터 판독가능한 매체로부터 접근가능한 컴퓨터 프로그램 제품의 형태를 취할 수 있다. 이를 위해, 컴퓨터가 사용가능하거나 컴퓨터가 판독가능한 매체는 명령어 실행 시스템, 장치 또는 디바이스에 의해 또는 이들과 연결되어 사용되기 위한 프로그램을 포함하거나, 저장하거나, 통신하거나, 전파하거나, 전송할 수 있는 임의의 장치일 수 있다.
이러한 매체는 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템(또는 장치 또는 디바이스) 또는 전파 매체일 수 있다. 컴퓨터 판독가능한 매체의 예는 반도체 또는 고체 메모리, 자기 테이프, 제거가능한 컴퓨터 디스켓, 램, 롬, 강성 자기 디스크 및 광디스크를 포함한다. 광디스크의 현재의 예로서 콤팩트 디스크 읽기전용 메모리(CD-ROM), 콤팩트 디스크-읽기/쓰기(CD-R/W) 및 DVD가 있다.
프로그램 코드를 저장 및/또는 실행하기에 적합한 데이터 처리 시스템은 시스템 버스를 통해 메모리 엘리먼트에 직간접적으로 결합된 적어도 하나의 프로세서를 포함할 것이다. 이러한 메모리 엘리먼트는 프로그램 코드의 실제 실행 동안 채용되는 로컬 메모리, 대용량 저장기, 및 실행 동안 대용량 저장기로부터 코드가 검색되어야 하는 횟수를 줄이기 위해 적어도 일부 프로그램 코드를 임시 저장하는 캐시 메모리를 포함할 수 있다.
(키보드, 디스플레이, 포인트 디바이스등을 포함하지만 이에 제한되지 않는) 입출력 또는 I/O 디바이스가 이러한 시스템에 직접 또는 개재 I/O 제어기를 통해 결합될 수 있다.
이러한 시스템에 네트워크 어댑터 역시 결합될 수 있어서, 개재된 사설망 또는 공중망을 통해 데이터 처리 시스템이 다른 데이터 처리 시스템 또는 멀리 떨어진 프린터 또는 저장 디바이스에 결합될 수 있도록 한다. 모뎀, 케이블 모뎀 및 이더넷 카드는 단지 소수의 현재 유용한 타입의 네트워크 어댑터이다.
이러한 도면의 순서도 및 블록도는 본 발명의 다양한 실시예에 따른 시스템, 방법 및 컴퓨터 프로그램 제품의 구조, 기능 및 가능한 구현의 동작을 설명하고 있다. 이러한 관점에서, 순서도 또는 블록도의 각 블록은 특정 로컬 기능을 구현하기 위한 하나 이상의 실행가능한 명령어를 포함하는, 모듈, 세그먼트, 또는 코드의 일부를 나타낼 수 있다. 또한, 일부 대안의 구현예에서, 블록에 지적된 기능이 도면에 지적된 순서와 달리 일어날 수 있음에 주목해야 한다. 예를 들어, 연속으로 도시된 2개의 블록은 사실 실질상 동시에 실행될 수 있거나, 이러한 블록은 수반된 기능에 따라, 역순서로 실행될 수도 있다. 또한, 블록도 및/또는 순서도의 각 블록 및, 블록도 및/또는 순서도의 블록의 조합은 특정 기능 또는 동작, 또는 특수 목적의 하드웨어 및 컴퓨터 명령어의 조합을 실행하는 특수 목적의 하드웨어 기반 시스템에 의해 구현될 수 있다는 것에 주목해야 한다.
여기에 사용된 기술은 특정 실시예를 설명하기 위한 것이고 본 발명은 제한하는 것은 아니다. 여기에 사용된 바와 같이, 달리 언급이 없으면 단수 형태는 복수의 형태 역시 포함하고 있는 것으로 되어 있다. 또한, 용어 "포함하다" 및/또는 "포함하는"은 본 명세서에서 사용될 때, 언급된 특징, 정수, 단계, 동작, 엘리먼트 및/또는 컴포넌트의 존재를 특정하지만 하나 이상의 다른 특징, 정수, 단계, 동작, 엘리먼트, 컴포넌트, 및/또는 이러한 것들의 그룹의 존재 또는 추가를 배제하는 것은 아니다. 본 발명의 실시예는 하이브리드 무상태 처리 방법 또는 하이브리드 유상태 처리 방법을 사용하는 패킷 처리 기능 및, 하이브리드 유상태 처리 방법을 사용하는 것으로부터 하이브리드 무상태 처리 방법으로의 전환 여부 또는 그 반대를 결정하는데 있어 조건을 평가하는 기능을 보안 게이트웨이에 제공한다. 본 발명의 다양한 실시예를 설명하기 전에, 유상태 만의 방법 및 무상태 만의 방법이 먼저 도 1 내지 도 3을 참조하여 설명된다.
도 1은 호스트(100)와 서버(200) 사이의 통신 세션(300)을 처리하기 위한 서비스 게이트웨이(110)를 설명하고 있다. 복수의 데이터 패킷이 통신 세션(300)을 통해 호스트(100)와 서버(200) 사이에 전송된다. 서비스 게이트웨이(110)는 통신 세션(300)을 달성하기 위해 호스트(100)로부터 서비스 요청(301) 데이터 패킷을 수신한다. 서비스 요청(301)은 데이터 네트워크(153)를 통해 전달된다. 서비스 요청(301)은 HTTP(하이퍼텍스트 트랜스포트 프로토콜) 요청, 보안 HTTP 요청, FTP(파일 전송 프로토콜) 요청, 파일 전송 요청, SIP(세션 이니시에이션 프로토콜) 세션 요청, 웹 기술에 기초한 요청, 비디오 또는 오디오 스트리밍 요청, 웹 컨퍼런싱 세션 요청, 또는 인터넷, 기업 네트워크, 데이터 센터 네트워크, 또는 네트워크 클라우드를 통한 임의의 요청과 같은 웹 서비스 요청일 수 있다. 서비스 요청(301)은 모바일 애플리케이션 다운로드에 대한 요청, 광고 전달 요청, 전자북 전달 요청, 콜라보레이션 세션 요청, 또는 온라인 신문 또는 잡지 전달 요청일 수 있다.
호스트(100)는 네트워크 접근 기능을 갖는 컴퓨팅 장치이다. 호스트(100)는 워크스테이션, 데스크톱 퍼스널 컴퓨터 또는 랩탑 퍼스널 컴퓨터일 수 있다. 하나의 실시예에서, 호스트(100)는 퍼스널 데이터 어시스턴트(PDA), 태블릿, 스마트폰, 또는 휴대폰이다. 다른 예로서, 호스트(100)는 셋톱 박스, 인터넷 미디어 뷰어, 인터넷 미디어 플레이어, 스마트 센서, 스마트 의료 장치, 넷톱 박스, 네트워크 텔레비전 세트, 네트워크 DVR, 네트워크 블루레이 플레이어, 또는 미디오 센터일 수 있다.
서비스 게이트웨이(110)는 프로세서(13) 및 이러한 프로세서(113)에 의해 실행되는 컴퓨터 판독가능 프로그램 코드를 저장하기 위한 컴퓨터 판독가능 매체(114)에 동작식 결합된 컴퓨팅 장치이다. 서비스 게이트웨이(110)는 서버 부하 분산기, 애플리케이션 전달 제어기, 서비스 전달 플랫폼, 트래픽 매니저, 보안 게이트웨이, 방화벽 시스템의 컴포넌트, 가상 사설망(VPN)의 컴포넌트, 비디오 서버용 부하 분산기, 또는 부하를 하나 이상의 서버에 분배하는 게이트웨이로서 구현될 수 있다.
서버(200)는 프로세서(213) 및 이러한 프로세서(213)에 의해 실행되는 컴퓨터 판독가능 프로그램 코드를 저장하기 위한 컴퓨터 판독가능 매체(214)에 동작식 결합된 컴퓨팅 장치이다. 이러한 컴퓨터 판독가능 프로그램 코드는 서버(200)를 웹서버, 파일 서버, 데이터베이스 서버, 애플리케이션 서버, 보이스 시스템, 컨퍼런싱 서버, 미디오 게이트웨이, SIP 서버, 리모트 액세스 서버, VPN 서버, 미디어 센터, 호스트(100)에 네트워크 또는 애플리케이션 서비스를 제공하는 앱 서버 또는 네트워크 서버로서 구현시킬 수 있다.
데이터 네트워크(153)는 인터넷 프로토콜(IP) 네트워크를 포함할 수 있다. 데이터 네트워크(153)는 기업 데이터 네트워크 또는 지역 기업 데이터 네트워크, 인터넷 서비스 프로바이더 네트워크, 레지덴셜 데이터 네트워크, 이더넷과 같은 유선망, 와이파이 네트워크와 같은 무선망, 또는 셀룰러 네트워크를 포함할 수 있다. 데이터 네트워크(153)는 데이터 센터에 상주하거나 네트워크 또는 애플리케이션 네트워크 클라우드에 접속될 수 있다.
호스트(100)로부터의 서비스 요청(301)은 IP 주소와 같은 서비스 주소(331)를 포함하고 있다. 서비스 주소(331)는 전송 제어 프로토콜(TCP) 포트 넘버 또는 사용자 데이터그램 프로토콜(UDP) 포트 넘버와 같은, 애플리케이션층 주소 또는 트랜스포트층 포트 넘버를 포함하고 있다. 서비스 주소(331)는 서비스 게이트웨이(110)와 연관되어 서비스 게이트웨이(110)는 서비스 요청(301)을 처리한다. 서비스 주소(331)는 서비스 요청(301)의 행선지 IP 주소를 포함할 수 있고, 옵션으로 서비스 요청(301)의 행선지 트랜스포트층 포트 넘버를 포함할 수 있다.
서비스 요청(301)은 TCP 세션 요청 데이터 패킷, 또는 UDP 데이터 패킷을 포함할 수 있다. 서비스 주소(331)는 서비스 요청(301)의 데이터 패킷에 포함되어 있다.
서비스 게이트웨이(110)는 서비스 요청(301)으로부터 획득된 서비스 주소(331)에 기초하여 서버 주소(321)를 결정한다. 서버 주소(321)는 서버(200)와 연관되어 있고 서버(200)의 네트워크 주소 또는 IP 주소를 포함할 수 있다. 서버 주소(321)는 서버(200)의 TCP 포트 넘버 또는 UDP 포트 넘버와 같은 애플리케이션층 주소를 포함할 수 있다.
서버 주소(321)에 기초하여, 서비스 게이트웨이(110)는 서비스 세션 요청(306)을 서버(200)에 전송한다. 이어서 서비스 게이트웨이(110)는 서버(200)로부터 세션 요청(306)에 대한 응답을 수신하고 서버(200)와의 서버측 서비스 세션(305)을 달성한다. 세션 요청(306) 응답에 기초하여, 서비스 게이트웨이(110)는 서비스 요청(301) 응답을 호스트(100)에 전송하고, 서비스 요청(301)을 위해 호스트(302)와의 호스트측 서비스 세션(302)을 달성한다.
통신 세션(300)은 호스트측 서비스 세션(302) 및 서버측 서비스 세션(305)을 포함한다. 서비스 세션(302)은 통신 세션(300)을 위한 호스트(100)로부터의 하나 이상의 데이터 패킷을 포함한다. 서비스 세션(305)은 통신 세션(300)을 위한 서버(200)로부터의 하나 이상의 데이터 패킷을 포함한다. 서비스 세션(302)은 서비스 요청(301)을 포함할 수 있다.
서비스 세션(302) 및 서비스 세션(305)의 달성시에, 서비스 게이트웨이(110)는 다음으로, 호스트(100)로부터 수신된 서비스 세션(302)의 데이터 패킷(304)을 처리한다. 데이터 패킷(304)은 서비스 주소(331)을 포함한다. 서비스 게이트웨이(110)는 서비스 주소(331)를 서버 주소(321)로 대체함으로써 데이터 패킷(304)을 수정한다. 서비스 게이트웨이(110)는 수정된 데이터 패킷(304)을 서버(200)에 전송한다.
서비스 게이트웨이(110)가 서버(200)로부터 서비스 세션(305)의 데이터 패킷(307)을 수신할 때, 서비스 게이트웨이(110)는 데이터 패킷(307)을 처리한다. 서비스 세션(305)의 데이터 패킷(307)은 서버 주소(321)를 포함할 수 있다. 서비스 게이트웨이(110)는 서버 주소(321)를 서비스 주소(331)로 대체함으로써 데이터 패킷(307)을 수정한다. 서비스 게이트웨이(110)는 수정된 데이터 패킷(307)을 호스트(100)에 전송한다.
서비스 세션(302) 및 서버 세션(305)을 처리하는데 있어 2개의 공통 방법, 즉 유상태 처리 방법 및 무상태 처리 방법이 존재한다. 도 2는 유상태 처리 방법을 설명한다. 도 2에서, 서비스 게이트웨이(110)는 서비스 세션 테이블(412)을 보유하고 있다. 세션 테이블(412)은 하나 이상의 서비스 세션 엔트리를 저장한다. 서비스 게이트웨이(110)는 서비스 세션(302)을 위한 세션 엔트리(420)를 생성한다. 세션 엔트리(420)는 서비스 주소(331) 및 서버 주소(321)를 연관시키기 위해 서비스 주소(331) 및 서버 주소(321)를 저장하고 있다. 서비스 게이트웨이(110)는 호스트측 서비스 세션(302) 및 서버측 서버 세션(306)을 달성한 후에 세션 엔트리(420)를 생성할 수 있다. 서비스 게이트웨이(110)는 서비스 요청(301)을 수신한 후에 세션 엔트리(420)를 생성할 수 있다. 서비스 게이트웨이(110)는 서비스 게이트웨이(10)가 서비스 주소(3310 및 서버 주소(321)를 결정한 후에 이들 주소를 세션 엔트리(420)에 저장한다. 서비스 게이트웨이(110)는 세션 테이블(412)에 세션 엔트리(420)를 저장한다.
서비스 게이트웨이(110)는 저장부(400)를 포함하고 세션 테이블(412)을 저장부(400)에 저장한다. 저장부(400)는 서비스 게이트웨이(110)에 상주하는 메모리 모듈이다. 서비스 게이트웨이(110)는 필드 프로그램가능한 게이트 어레이(FPGA), 네트워크 프로세서, 주문형 집적 회로(ASIC)를 포함하는 네트워크 처리 모듈(도시되지 않음)을 포함하고 있다. 저장부(400)는 네트워크 처리 모듈과 연관되어 있다. 저장부(400)의 예는 콘텐트 주소지정가능한 메모리(CAM), 터너리 콘텐트 주소지정가능한 메모리(TCAM), 스태틱 랜덤 액세스 메모리(SRAM), 또는 다이나믹 랜덤 액세스 메모리(DRAM)를 포함하고 있다.
서비스 게이트웨이(110)는 서비스 요청(301)로부터 서비스 주소(331)를 획득한다. 서비스 게이트웨이(110)는 서비스 정책(471)을 유지하고 서비스 정책(471)에 기초하여 서버 주소(321)를 결정한다. 서비스 정책(471)은 서버(200)와 서비스 주소(331) 사이의 관계에 기초할 수 있다. 서비스 정책(471)은 서비스 주소(331) 및 서버 주소(321)를 포함하고 있다. 서비스 게이트웨이(110)는 서비스 요청(301)로부터 획득된 서비스 주소(331)와 서비스 정책(471)에서의 서비스 주소 사이의 매치에 기초하여 서비스 정책(471)을 선택한다. 서비스 게이트웨이(110)는 서비스 정책(471)을 서버 요청(301)에 적용한다. 서비스 정책(471)은 비보안 서비스 요청(301)이 서버(200)에 전송될 수 있는 보안 정책(482)을 포함할 수 있다. 서비스 정책(471)은 서버(200)로의 트래픽 부하가 낮을 때 서비스 요청(301)이 서버(200)에 의해 서빙되는 트래픽 정책(483)을 포함할 수 있다. 서비스 요청(301)은 서비스 게이트웨이(110)의 사전결정된 네트워크 인터페이스로부터 수신될 수 있고 트래픽 정책(483)은 이러한 네트워크 인터페이스로부터의 서비스 요청(301)이 서버(200)에 전송되어야 함을 나타낸다.
서버(240)는 또한 서비스 요청(301)을 서빙한다. 서비스 정책(471)은 서버(240)의 서버 부하가 높을 때 서비스 요청(301)이 서버(200)로 전송될 것을 나타내는 서버 부하 정책(484)을 포함할 수 있다. 하나의 예에서, 서비스 정책(471)은 서버(200)가 서버(240)에 대한 백업 서버이고 서버(240)가 유용하지 않은 경우에, 서비스 요청(301)이 서버(200)에 전송될 것을 나타내는 서버 가용성 정책(485)을 포함하고 있다. 서비스 정책(471)은 서버(200)와 서버(240) 사이에 부하 분산 정책(486)을 포함할 수 있다. 서비스 게이트웨이(110)는 라운드 로빈 또는 다른 부하 분산 체계를 포함할 수 있는 부하 분산 정책(486)을 사용하여 서버(200)를 선택한다. 서비스 정책(471)은 호스트(100)가 호스트 정책(487)을 충족할 때 서비스 요청(301)이 서버(200)에 전송될 것을 나타내는 호스트 정책(487)을 포함할 수 있다.
서비스 게이트웨이(110)가 서비스 정책(471)을 서비스 요청(301)에 적용한 후에, 서비스 게이트웨이(110)는 서비스 정책(471)으로부터 서버 주소(321)를 검색한다. 서비스 게이트웨이(110)는 서비스 주소(331) 및 서버 주소(321)를 연관시키는, 서비스 주소(331) 및 서버 주소(321)를 갖는 세션 엔트리(420)를 생성한다. 서비스 게이트웨이(110)는 세션 엔트리(420)를 세션 테이블(412)에 저장한다.
서비스 게이트웨이(110)는 호스트(100)로부터 수신된 데이터 패킷(304) 및 서버(200)로부터 수신된 데이터 패킷(307)을 처리하기 위해 세션 테이블(412)을 사용한다. 서비스 게이트웨이(110)가 호스트(100)로부터 데이터 패킷(304)을 수신할 때, 서비스 게이트웨이(110)는 데이터 패킷(304)으로부터 서비스 주소(331)를 획득한다. 서비스 게이트웨이(110)는 이러한 획득된 서비스 주소(331)를 세션 테이블(412)에 저장된 서비스 주소와 비교한다. 서비스 게이트웨이(110)가 획득된 서비스 주소(331)와 세션 테이블(412) 내의 세션 엔트리(420) 사이에 매치가 있다고 판정할 때, 서비스 게이트웨이(110)는 세션 엔트리(420)에 저장된 정보를 사용하여 데이터 패킷(304)을 처리한다. 서비스 게이트웨이(110)는 서비스 주소(331)를 서버 주소(321)로 대체함으로써 데이터 패킷(304)을 수정하는데, 서버 주소(321)는 매치된 세션 엔트리(412)로부터 획득된다. 서비스 게이트웨이(110)는 수정된 데이터 패킷(304)을 서버(200)에 전송한다.
서비스 요청(301)은 호스트(100)와 연관된 호스트 주소(104)를 포함할 수 있다. 서비스 게이트웨이(110)는 서비스 요청(301)으로부터 호스트 주소(104)를 검색한다. 서비스 게이트웨이(110)는 검색된 호스트 주소(104)를 서비스 정책(471)을 적용할 때 사용할 수 있다. 서비스 게이트웨이(110)는 서비스 세션 엔트리(420)에 호스트 주소(104)를 저장한다. 데이터 패킷(304)은 호스트 주소(104)를 포함할 수 있다. 서비스 게이트웨이(110)는 데이터 패킷(304)으로부터 호스트 주소(104)를 획득하고 이러한 획득된 호스트 주소를 세션 테이블(412)과 세션 엔트리(420)에 저장된 주소와 비교한다.
서비스 게이트웨이(110)가 서버(200)로부터 서버측 서비스 세션(305)의 데이터 패킷(307)을 수신할 때, 서비스 게이트웨이(110)는 데이터 패킷(307)으로부터 서버 주소(321)를 검색한다. 서비스 게이트웨이(110)는 이러한 획득된 서버 주소(321)를 세션 테이블(412)에 저장된 주소와 비교하고, 세션 엔트리(420)와의 매치가 있는지 판정한다. 매치가 있다는 판정에 응답하여, 서비스 게이트웨이(110)는 데이터 패킷(307)을 처리하기 위해 세션 엔트리(420)를 사용한다. 서비스 게이트웨이(110)는 서버 주소(321)를 매치된 세션 엔트리(420)로부터 검색된 서비스 주소(331)로 대체함으로써 데이터 패킷(307)을 수정한다. 서비스 게이트웨이(110)는 수정된 데이터 패킷(307)을 호스트(100)에 전송한다.
데이터 패킷(307)은 호스트 주소(104)를 포함할 수 있다. 서비스 게이트웨이(110)는 데이터 패킷(307)으로부터 호스트 주소(104)를 획득하고 이러한 획득된 호스트 주소(104)를 세션 테이블(412)과 세션 엔트리(420)에 저장된 주소와 비교하는데 사용한다.
서비스 세션(302)로부터 수신된 데이터 패킷(304)은 세션 종료 요청을 나타낼 수 있다. 예를 들어, 데이터 패킷(304)은 TCP FIN 패킷, TCP RESET 패킷이다. 서비스 게이트웨이(110)는 데이터 패킷(304) 콘텐트를 조사하고 데이터 패킷(304)이 세션 종료 요청을 포함하는지를 판정한다. 이에 응답하여, 서비스 게이트웨이(110)는 세션 테이블(412)로부터 세션 엔트리(420)를 제거한다. 서비스 게이트웨이(110)는 데이터 패킷(304)을 처리한 후에 세션 엔트리(420)를 제거하거나, 세션 엔트리(420)를 제거하기 전에 사전결정된 기간 동안 기다린다.
도 2에 설명된 처리 방법은 자주 유상태 처리 방법으로 부른다. 유상태 처리 방법에 의해 서비스 게이트웨이(110)는 서버(200)를 선택하기 위해 하나 이상의 서비스 정책을 적용할 수 있다. 이러한 서비스 정책은 서버(200)를 보호하기 위해 보안 정책 및 다른 정책을 포함할 수 있다. 보안 정책(482)은 보안 관심이 검출된 경우에 서비스 요청(301)이 감소되도록 할 수 있다. 이러한 보안 고려는 당업자에게 알려져 있고 본원에서는 설명하지 않는다. 또한 트래픽 정책(483) 또는 서버 부하 정책(484)을 적용함으로써 서버(200)가 과부하되지 않도록 보호할 수 있다. 서비스 정책을 강화할 때 서버 호스트(100)로의 서버(200)의 서비스 응답 시간을 자주 향상시킬 수 있다.
그러나, 서비스 정책(471)을 서비스 요청(301)에 적용하는 것은 CPU 사이클과 같은, 서비스 게이트웨이(110)의 계산 자원을 필요로 한다. 이러한 계산 필요는 서비스 게이트웨이(110)가 단기간에 방대한 수의 서비스 요청을 수신하고 처리할 때 서비스 게이트웨이(110)가 서비스를 제공하는 기능을 제한할 수 있다.
예를 들어, 세션 테이블(412)은 4GB, 2000 엔트리, 10000 엔트리에 이르거나 200MB와 같은 특정 용량 제한을 갖고 있다. 유상태 처리 방법을 사용하여 서비스 게이트웨이(110)에 의해 제공된 서비스 세션의 수가 방대할수록 세션 테이블(412)에 저장된 세션 엔트리의 수도 방대해진다. 이러한 세션 테이블(412)의 용량은 서비스 게이트웨이(110)의 서비스 기능을 심하게 제한할 수 있다.
도 3은 무상태 처리 방법을 설명하고 있다. 이러한 방법에서, 서비스 게이트웨이(110)는 세션 테이블(412)을 사용하지 않는다. 대신, 서비스 게이트웨이(110)는 서비스 맵핑 테이블(452)을 유지하고 사용한다. 서비스 맵핑 테이블(452)는 저장부(400)에 저장되어 있다. 서비스 맵핑 테이블(452)은 서비스 맵핑 엔트리(460)를 포함한다. 맵핑 엔트리(460)는 서비스 주소(310 및 서버 주소(321)를 포함할 수 있고, 서비스 주소(331)와 서버 주소(321)를 연관시킨다. 서비스 맵핑 엔트리(460)에 따라, 서버 주소(321)를 가진 서버(200)는 서비스 주소(331)에 대해 호스트(100)에 서비스를 제공한다.
서비스 게이트웨이(110)가 호스트(100)로부터 데이터 패킷(304)을 수신할 때, 서비스 게이트웨이(110)는 데이터 패킷(304)으로부터 서비스 주소(331)를 획득하고, 서비스 주소(331)를 서비스 맵핑 테이블(452)에 저장된 서비스 주소와 비교한다. 서비스 게이트웨이(110)가 맵핑 엔트리(460)와의 매치가 존재한다고 판정할 때, 서비스 게이트웨이(110)는 맵핑 엔트리(460)로부터 서버 주소(321)를 검색한다. 서비스 게이트웨이(110)는 서비스 주소(331)를 서버 주소(321)로 대체함으로써 데이터 패킷(304)을 수정한다. 서비스 게이트웨이(110)는 수정된 데이터 패킷(304)을 서버(200)에 전송한다.
서비스 게이트웨이(110)가 서버(200)로부터 데이터 패킷(307)을 수신할 때, 서비스 게이트웨이(110)는 서비스 맵핑 테이블(452)을 사용하여 데이터 패킷(307)을 처리한다. 서비스 게이트웨이(110)는 데이터 패킷(307)으로부터 서버 주소(321)를 획득한다. 서비스 게이트웨이(110)는 서버 주소(321)를 서비스 맵핑 테이블(452)에 저장된 서버 주소와 비교한다. 서비스 게이트웨이(110)가 맵핑 엔트리(460)와의 매치가 존재한다고 판정할 때, 서비스 게이트웨이(110)는 맵핑 엔트리(460)로부터 서비스 주소(331)를 검색하고, 서버 주소(321)를 서비스 주소(331)로 대체함으로써 데이터 패킷(307)을 수정한다. 다음으로, 서비스 게이트웨이(10)는 수정된 데이터 패킷(307)을 호스트(100)에 전송한다.
서비스 게이트웨이(110)는 서비스 주소(331) 또는 서버 주소(321)를 해시 방법을 사용하여 서비스 맵핑 테이블(452)과 매치시킬 수 있다. 서비스 맵핑 테이블(452)은 해시함수(HashFunc)(571)를 사용하는 해시 테이블을 포함하고 있다. 맵핑 엔트리(460)는 해시값(HashValue)(581)과 연관되어 있다.
해시값(581)은 해시함수(571)를 서비스 주소(331)에 적용한 결과를 포함한다. 해시값(581)은 해시함수(571)를 서버 주소(321)에 적용한 결과를 포함할 수 있다.
해시값(581)은 서비스 맵핑 테이블(452)에 맵핑 엔트리(460)의 인덱스를 포함할 수 있다. 맵핑 엔트리(460)는 해시함수(581)에 의해 인덱싱된 서비스 맵핑 테이블(452)내의 엔트리를 채운다. 예를 들어, 서비스 맵핑 테이블(452)은 인덱스가 1-1000인 1000개의 엔트리를 포함하고, 맵핑 엔트리(460)는 894의 인덱스를 갖는다. 다른 예에서, 서비스 맵핑 테이블(452)은 16개의 엔트리를 포함하고 맵핑 엔트리(460)는 7의 인덱스를 갖는다.
서비스 게이트웨이(110)는 해시함수(571)를 데이터 패킷(304)의 서비스 주소(331)에 적용하여 해시값(581)을 획득한다. 서비스 게이트웨이(110)가 해시값(581)을 갖는 엔트리에 대해 서비스 맵핑 테이블(452)을 검색하고 맵핑 엔트리(460)를 찾는다고 가정하자. 데이터 패킷(307)에 대해, 서비스 게이트웨이(110)는 해시함수(571)를 데이터 패킷(307)의 서버 주소(321)에 적용하여 해시값(581)을 획득한다. 서비스 게이트웨이(110)는 인덱스 해시값(581)을 갖는 엔트리에 대해 서비스 맵핑 테이블(452)을 검색하고 맵핑 엔트리(460)를 찾는다.
맵핑 엔트리(460)는 해시값(581)을 포함할 수 있다. 서비스 게이트웨이(110)가 해시함수(571)를 적용하여 해시값(581)을 획득한 후에, 서비스 게이트웨이(10)는 서비스 맵핑 테이블(452)을 검색하고 해시값(581)에 매칭하는 인덱스를 포함하는 맵핑 엔트리(460)를 찾는다.
해시함수(571)의 예는 CRC 체크섬 함수 및 다른 체크섬 함수; 비트 AND 연산자, 비트 OR 연산자, 비트 NAND 연산자 및 비트 XOR 연산자와 같은 비트 연산자의 조합을 사용하는 해시함수; MD5 해시함수 및 다른 암호 해시 함수; 젠킨스 해시 함수 및 다른 비암호 해시 함수; FPGA, ASIC 또는 서비스 게이트웨이(110)의 직접 회로기판에 구현된 하드웨어 기반 해시 함수; 및 다른 타입의 해시 함수 또는 테이블 룩업 함수를 포함하고 있다. 보통 이러한 해시 함수는 단순하고 서비스 게이트웨이(110)에 의해 신속하게 계산될 수 있다.
데이터 패킷(304)은 호스트(100)와 연관된 호스트 주소(104)를 포함하고 있다. 서비스 게이트웨이(110)는 데이터 패킷(304)으로부터 호스트 주소(104)를 획득하고 이러한 획득된 호스트 주소(104)를 데이터 패킷(304)을 처리하는데 사용한다.
데이터 패킷(307)은 호스트 주소(104)를 포함한다. 서비스 게이트웨이는 데이터 패킷(307)으로부터 호스트 주소(104)를 획득하고 이러한 획득된 호스트 주소(104)는 데이터 패킷(307)을 처리하는데 사용한다.
보통, 맵핑 엔트리(460)는 서비스 프로바이더 또는 서비스 프로바이더의 관리자에 의해 구성된다. 맵핑 엔트리(460)는 서버(200)가 유용해질 때, 또는 서버 주소(321) 또는 서비스 주소(331)가 유용해질 때 구성될 수 있다. 서버 주소(321) 또는 서비스 주소(331)는 유용해지도록 서비스 프로바이더에 의해 구성될 수 있다.
이러한 무상태 처리 방법에서, 서비스 맵핑 테이블(452)은 서비스 게이트웨이(110)에 의해 처리된 서비스 세션의 수에 관련되어 있지 않다. 서비스 맵핑 테이블(452)의 용량은 유용한 서비스 주소 및 서브 주소의 수와 관련되어 있다. 이러한 용량은 보통 작다. 서비스 맵핑 테이블(452)은 수십의 엔트리 또는 수천의 엔트리를 가질 수 있다.
유상태 처리 방법의 장점은 서비스 맵핑 테이블(452)에 대한 작은 자원을 필요로 하거나, 서비스 요청(301)을 다루기 위해 최소 또는 아무런 계산적 필요가 없거나, 서비스 정책(471)을 적용할 필요가 없다는 것이다. 무상태 처리 방법은 보통 서비스 게이트웨이(110)가 단기간에 광대한 수의 서비스 세션 요청을 수신하거나 서비스 요청의 과중한 부하가 걸렸을 때 유상태 처리 방법 보다 선호된다. 무상태 방법은 또한 새로운 세션에 대한 세션 테이블의 메모리 용량이 낮을 때, 즉, 세션 테이블(412)의 10% 미만일 때 선호된다. 무상태 방법은 서비스 게이트웨이(110)를 자원 과부하로부터 보호하여서 스트레스가 심한 상황에서 호스트(100)로의 서비스 품질을 유지한다.
그러나, 무상태 처리 방법은 보안 게이트웨이(110)가 보안 정책(482)을 적용하지 않기 때문에 보안으로 인해 유상태 처리 방법 보다는 덜 바람직할 수 있다. 마찬가지로, 보안 게이트웨이(110)는 서버(200)의 보안, 데이터 네트워크(153)의 보안, 데이터 네트워크(153)의 트래픽 상태, 및 호스트(100)에 제공된 서비스 품질에 영향을 주는 임의의 다른 정책을 서비스 정책(471)에서 적용하지 않는다. 유상태 처리 방법은 또한 서비스 게이트웨이(110)가 복수의 서버 주소로부터 서버 주소(321)를 선택할 때 무상태 처리 방법 보다 선호된다. 예를 들어, 서비스 프로바이더는 부하 분산 방식으로 서비스 주소(331)를 제공하도록 복수의 서버를 구성할 수 있다. 서비스 프로바이더는 서비스 주소(331)를 위한 백업 서버를 구성할 수 있다.
전형적인 배치 시나리오에서, 서비스 프로바이더는 상이한 제2 서비스 주소에 대해 무상태 처리 방법을 사용하면서 제1 서비스 주소에 대해서는 유상태 처리 방법을 사용할 수 있다. 서비스 프로바이더는 제1 서비스가 상당한 트래픽 또는 사용량을 갖는 것으로 예측하지 않는다. 서비스 프로바이더는 제2 서비스가 보안 관련된 것으로 예측할 수 없다. 실제로, 제1 서비스는 예측하지 못한 상황으로 인해 갑작스러운 트래픽의 급증을 겪을 수 있고 제2 서비스는 보안 공경을 당할 수 있다. 하술된 바와 같이, 본 발명에 따른 하이브리드 처리 방법을 사용하면, 서비스 프로바이더는 부하가 가벼울 때 제1 서비스에 대한 유상태 처리 방법 결합하고 부하가 과중해질 때 무상태 처리 방법으로 변경할 수 있고, 정상 환경 동안 제2 서비스에 대한 무상태 처리 방법을 결합하고 보안 경고가 제2 서비스에 대해 검출될 때 즉시 유상태 처리 방법으로 전환하도록 하이브리드 처리 방법을 전개할 수 있다.
본 발명의 다양한 실시예가 이제 도 4 내지 도 11을 참조하여 설명된다.
도 4는 본 발명에 따라 유상태 처리 방법 및 무상태 처리 방법을 결합하는 하이브리드 무상태 처리 방법을 실행하는 서비스 게이트웨이(10)의 실시예를 설명하고 있다. 도 8은 본 발명에 따른 하이브리드 무상태 처리 방법의 실시예를 설명하는 순서도이다. 이러한 실시예에서, 서비스 게이트웨이(110)의 컴퓨터 판독가능 매체(114)는 프로세서(113)에 의해 실행될 때 본 발명의 다양한 실시예를 구현하는 컴퓨터 판독가능 프로그램 코드를 저장한다. 서비스 게이트웨이(110))는 세션 테이블(412) 및 서비스 맵핑 테이블(452)을 저장부(400)에 유지한다. 이러한 하이브리드 무상태 처리 방법의 실시예에서, 서비스 게이트웨이(110)는 수신된 데이터 패킷(304)의 서비스 주소가 세션 테이블(412)에 저장된 임의의 서비스 주소와 매치하지 않을 때 서비스 맵핑 테이블(452)을 사용하는 무상태 방법으로 이러한 수신된 데이터 패킷(304)을 처리한다.
서비스 게이트웨이(110))는 서버(200)와 서버(240)를 연결한다. 서버(200)는 서버 주소(321)와 연관되어 있다. 서버(240)는 서버 주소(324)와 연관되어 있다. 서비스 게이트웨이(110)는 서비스 주소(331)와 서비스 주소(334)와 연관되어 있다.
하나의 실시예에서, 세션 테이블(412)은 서비스 주소(331) 및 서버 주소(321)를 저장하고, 서비스 주소(331) 및 서버 주소(321)를 연관시키는 세션 엔트리(420)를 포함하고 있다. 서비스 맵핑 테이블(452)은 서비스 주소(3340 및 서버 주소(324)를 저장하고, 서비스 주소(334) 및 서버 주소(324)를 연관시키는 맵핑 테이블(462)을 포함하고 있다.
이러한 실시예에서, 서버(200)는 서버(240)와 동일할 수 있다. 서버 주소(321)는 서버 주소(324)와 동일할 수 있다. 서비스 주소(331)는 서비스 주소(334)와 동일할 수 있다.
도 4 및 도 8에서, 서비스 게이트웨이(110)는 호스트(100)로부터 데이터 패킷(304)을 수신한다(801). 서비스 게이트웨이(110)는 데이터 패킷(304)으로부터 서비스 주소(336)를 획득한다(802). 서비스 게이트웨이(110)는 데이터 패킷(304)의 서비스 주소(336)를 세션 테이블(412)에 저장된 서비스 주소와 비교한다(803).
하나의 실시예에서, 서비스 게이트웨이(110)는 서비스 주소(336)가 세션 엔트리(420)의 서비스 주소(331)와 매치하는 매치를 세션 엔트리(420)에서 찾는다. 이러한 매치의 발견에 응답하여, 서비스 게이트웨이(110)는 도 2에 대해 상술된 바와 같은, 유상태 처리 방법을 사용하여 세션 엔트리(420)에 저장된 정보에 기초하여 데이터 패킷(304)을 처리한다(805).
하나의 실시예에서, 서비스 게이트웨이(110)는 세션 테이블(412)에서 매치를 발견하지 못한다(804). 이에 응답하여, 서비스 게이트웨이(110)는 데이터 패킷(304)의 서비스 주소(336)를 서비스 맵핑 테이블(452) 내의 서비스 주소와 비교한다(806). 하나의 실시예에서, 서비스 게이트웨이(110)는 서비스 주소(336)가 맵핑 엔트리(462)의 서비스 주소(324)와 매치하는, 서비스 맵핑 테이블(452)의 맵핑 엔트리(462)에서 매치를 탐색한다(807). 서비스 게이트웨이(110)는 도 3에 대해 상술된 것과 같은, 무상태 처리 방법을 사용하여 맵핑 엔트리(462)에 저장된 정보에 기초하여 데이터 패킷(304)을 처리한다(808).
하나의 실시예에서, 서비스 게이트웨이(110)는 서버(200)로부터 데이터 패킷(307)을 수신한다(830). 서비스 게이트웨이(110)는 데이터 패킷(307)으로부터 서버 주소(321)를 추출한다(831). 서비스 게이트웨이(110)는 데이터 패킷(307)의 서버 주소(321)를 세션 테이블(412)에 저장된 서버 주소와 비교한다(832). 하나의 실시예에서, 서비스 게이트웨이(110)는 데이터 패킷(307)의 서버 주소(321)가 세션 엔트리(420)의 서버 주소(321)와 매치하는, 세션 엔트리(420) 내의 매치를 탐색한다(830). 서비스 게이트웨이(110)는 도 2에 대해 상술된 것과 같은, 유상태 처리 방법을 사용하여 데이터 패킷(308)을 처리한다(805).
하나의 실시예에서, 서비스 게이트웨이(110)는 서버(240)로부터 데이터 패킷(308)을 수신한다(830). 서비스 게이트웨이(110)는 데이터 패킷(308)으로부터 서버 주소(324)를 추출한다(832). 서비스 게이트웨이(110)는 데이터 패킷(308)의 서버 주소(324)를 세션 테이블(412)에 저장된 서버 주소와 비교한다(832). 하나의 실시예에서, 서비스 게이트웨이(110)는 매치를 발견하지 못한다(833). 이에 응답하여, 서비스 게이트웨이(110)는 데이터 패킷(308)의 서버 주소(324)를 서비스 맵핑 테이블(452)에 저장된 서버 주소와 비교하고(834) 데이터 패킷(308)의 서버 주소(324)가 맵핑 엔트리(462)의 서버 주소(324)와 매치하는, 맵핑 엔트리(462) 내의 매치를 탐색한다(807). 이에 응답하여, 서비스 게이트웨이(110)는 무상태 처리 방법을 사용하여 맵핑 엔트리(462)에 저장된 정보에 기초하여 데이터 패킷(308)을 수정한다(808). 서비스 게이트웨이(110)는 수정된 데이터 패킷(308)을 전송한다.
도 5는 본 발명에 따라 유상태 처리 방법과 무상태 처리 방법을 결합하는 하이브리드 유상태 처리 방법을 실행하는 서비스 게이트웨이(110)의 실시예를 설명하고 있다. 도 9는 본 발명에 따른 하이브리드 유상태 처리 방법의 실시예를 설명하는 순서도이다. 도 5 및 도 9에서, 서비스 게이트웨이(110)는 호스트(100)로부터 데이터 패킷(304)을 수신한다(901). 하나의 실시예에서, 서비스 게이트웨이(110)는 데이터 패킷(304)이 호스트(100)로부터의 서비스 요청(301)을 포함하는지를 판정한다(902). 이에 응답하여, 서비스 게이트웨이(110)는 유상태 처리 방법을 서비스 요청(301)에 적용한다(903). 서비스 게이트웨이(110)는 도 2에 대해 상술된 바와 같이, 서비스 정책(471)을 세션 요청(301)에 적용하는 단계, 서비스 요청(301)의 서비스 주소(331) 및 서비스 정책(471)의 서버 주소(321)를 사용하여 세션 엔트리(420)를 생성하는 단계를 포함하는 유상태 처리 방법을 실행한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 데이터 패킷(304)이 서비스 요청을 포함하지 않았다고 판정한다(902). 이에 응답하여, 서비스 게이트웨이(110)는 도 4에 대해 상술된 바와 같은, 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷(304)을 처리한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 서버(200)로부터 데이터 패킷(307)을 수신한다(901). 이러한 하이브리드 유상태 처리 방법의 실시예에서, 서비스 게이트웨이(110)는 도 4에 대해 상술된 바와 같이, 하이브리드 무상태 처리 방법을 데이터 패킷(307)에 적용한다(904).
도 6 및 도 10은 본 발명에 따라 만족되는 하이브리드 무상태 조건에 응답하여 하이브리드 유상태 처리 방법으로부터 하이브리드 무상태 처리 방법으로 변경하기 위한, 서비스 게이트 및 방법의 실시예를 각각 설명하고 있다. 도 6 및 도 10에서, 서비스 게이트웨이(110)는 하이브리드 유상태 처리 방법을 사용하고 있다(1001). 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)을 유지하고 있다. 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 만족되는지 체크한다. 하이브리드 무상태 조건(810)이 만족된다는 판정에 응답하여(1003), 서비스 게이트웨이(110)는 하이브리드 무상태 처리 방법으로 변경된다(1004). 서비스 게이트웨이(110)는 도 4 및 도 8에 대해 상술된 바와 같이, 하이브리드 무상태 처리 방법을 사용하여 수신된 다음 데이터 패킷을 처리한다. 하이브리드 무상태 조건(810)이 만족되지 않는다는 판정에 응답하여(1003), 서비스 게이트웨이(110)는 도 5 및 도 9에 대해 상술된 바와 같이, 하이브리드 유상태 처리 방법을 계속 사용한다(1005).
하나의 실시예에서, 하이브리드 무상태 조건(810)은 세션율(811)을 포함한다. 예를 들어, 세션율(811)은 초당 10,000 세션, 초당 5000 활성 세션, 또는 10밀리초당 100 세션이다.
하나의 실시예에서, 서비스 게이트웨이(110)는 세션율(821)을 계산한다. 하나의 실시예에서, 세션율(821)은 임의의 기간에 대해 활성 호스트측 서비스 세션의 카운트에 기초하여 계산된다. 실시예에서, 서비스 세션은 서비스 세션이 세션 테이블(412)내의 세션 엔트리와 연관되어 있을 때 활성이다. 하나의 실시예에서, 세션율(821)은 임의의 기간 동안 수신된 서비스 요청의 카운트와 수신된 서비스 종료 요청의 카운트 사이의 차이를 계산한다. 하나의 실시예에서, 세션율(821)은 임의의 기간 동안 수신된 서비스 요청의 카운트를 계산한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 매초마다, 250 밀리초마다, 3초마다, 또는 10초마다와 같이 임의의 사전결정된 주기로 세션율(821)을 계산한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 가변 시간에 세션율(821)을 계산한다. 예를 들어, 서비스 게이트웨이(110)는 호스트로부터의 데이터 패킷이 수신될 때; 서비스 요청이 수신될 때; 서비스 종료 요청이 수신될 때; 또는 데이터 패킷이 서버(200)로부터 수신될 때 세션율(821)을 계산한다. 서비스 게이트웨이(110)는 세션율(821)을 하이브리드 무상태 조건(810)의 세션율(811)과 비교한다. 하나의 실시예에서, 세션율(821)은 세션율(811)을 초과하거나 같고, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 충족되고 만족되는지 여부를 판정한다.
하나의 실시예에서, 하이브리드 무상태 조건(810)은 세션 테이블 이용율(814)을 포함한다. 세션 테이블 이용율은 세션 엔트리를 저장하고 있는 세션 테이블 용량의 퍼센트를 제시하는 파라미터이다. 하이브리드 무상태 조건(810)은 세션 테이블(412)의 저장된 세션 엔트리의 카운트가 세션 테이블 이용율(814)을 초과하는 경우에 만족된다. 예를 들어, 세션 테이블 이용율(814)은 90%, 85% 또는 95%이다. 서비스 게이트웨이(110)는 세션 테이블(412)의 저장된 세션 엔트리의 카운트를 계산함으로써 가끔 세션 테이블 이용율(824)을 계산한다. 하나의 실시예에셔, 서비스 게이트웨이(110)는 매초, 20 밀치초 마다, 500 밀리초 마다, 또는 2초 마다와 같이 주기적으로 세션 테이블 이용율(824)을 계산한다. 하나의 실시예에서, 서비스 게이트(110)는 서비스 게이트웨이(110)가 서비스 요청, 서비스 종료 요청 또는 데이터 패킷을 처리할 때 세션 테이블 이용율(824)을 계산한다.
서비스 게이트웨이(10)는 하이브리드 무상태 조건(810)의 세션 테이블 이용율(814)과 세션 테이블 이용율(824)을 비교한다. 하나의 실시예에서, 세션 테이블 이용율(824)은 세션 테이블 이용율(814)을 초과하거나 같고, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 충족되고 만족되는지 여부를 판정한다.
하나의 실시예에서, 하이브리드 무상태 조건(810)은 지속시간(816)을 더 포함하고 있는데, 하이브리드 무상태 조건(810)은 하이브리드 무상태 조건(810)이 만족되도록 적어도 지속시간(816) 동안 충족된 것으로 여겨져야 한다. 지속시간(812)의 예는 120초, 30초 및 5초를 포함한다. 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 상술된 바와 같이 충족되는지 여부를 가끔 체크한다. 실시예에서, 서비스 게이트웨이(110)는 메모리에 저장된 지속시간(826)을 더 포함한다. 처음에, 서비스 게이트웨이(110)는 0 내지 지속시간(826)의 값을 할당한다. 가끔, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 충족되는지 여부를 체크한다. 하이브리드 무상태 조건(810)이 충족되면, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 체크된 마지막 시간 이후에 흘러간 시간량 만큼 지속시간(826)을 증가시킨다. 하나의 실시예에서, 지속시간(826)이 수정된 후에, 서비스 게이트웨이(110)는 지속시간(826)이 지속시간(816)을 초과하는지 여부를 체크한다. 지속시간(826)이 지속시간(816)을 초과하면, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 만족되는지 여부를 판정한다. 그다음, 서비스 게이트웨이(110)는 다음에 수신되는 데이터 패킷에 대해 하이브리드 무상태 방법을 채용하도록 변한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 하이브리드 무상태 조건(810)이 충족되는지 여부를 판정한다. 이에 응답하여, 서비스 게이트웨이(110)는 지속시간(826)을 0의 값으로 수정한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 운영자 또는 관리자(130)로부터 하이브리드 무상태 조건(810)을 수신한다. 관리자(130)는 서비스 게이트웨이(110)로의 하이브리드 무상태 조건(810)을 감독하는 인간 운영자일 수 있다. 관리자(130)는 하이브리드 무상태 조건(810)을 서비스 게이트웨이(110)에 전송하는 네트워크 관리 시스템일 수 있다. 관리자(130)는 하이브리드 무상태 조건(810)을 저장하는 저장 매체를 포함할 수 있다. 서비스 게이트웨이(110)는 관리자(130)의 저장부로터 하이브리드 무상태 조건(810)을 검색한다.
도 7 및 도 11은 본 발명에 따라 만족되는 하이브리드 유상태 조건에 응답하여 하이브리드 무상태 처리 방법으로부터 하이브리드 유상태 처리 방법으로 변경하기 위한, 서비스 게이트웨이 및 방법의 실시예를 각각 설명하고 있다. 도 7 및 도 11를 참조하면, 하나의 실시예에서, 서비스 게이트웨이(110)는 하이브리드 무상태 처리 방법을 채용한다(1101). 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)을 유지한다. 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 만족되는지 여부를 체크한다(1102). 하이브리드 유상태 조건(910)이 만족된다는 판정에 응답하여(1103), 서비스 게이트웨이(110)는 하이브리 유상태 처리 방법으로 변경하고(1104) 도 5 및 도 9에 대해 상술된 바와 같이, 하이브리드 유상태 처리 방법을 사용하여 그 다음 데이터 패킷을 처리한다. 하이브리드 유상태 조건(910)이 만족되지 않는다는 판정에 응답하여(1103), 서비스 게이트웨이(110)는 하이브리드 무상태 처리 방법을 계속 사용하고(1105) 도 4 및 도 8에 대해 상술된 바와 같이, 하이브리드 무상태 처리 방법을 사용하여 그 다음 데이터 패킷을 처리한다.
하나의 실시예에서, 하이브리드 유상태 조건(910)은 세션율(911)을 포함한다. 예를 들어, 세션율(911)은 초당 1000 세션, 초당 500 활성 세션, 또는 10 밀리초당 10 세션이다.
하나의 실시예에서, 서비스 게이트웨이(110)는 세션율(921)을 계산한다. 하나의 실시예에서, 세션율(921)은 임의의 주기 동안 수신된 서비스 요청의 카운트와 수신된 서비스 종료 요청의 카운트 사이의 차이를 계산한다. 하나의 실시예에서, 세션율(921)은 임의의 주기 동안 수신된 서비스 요청의 카운트를 계산한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 하이브리드 무상태 처리 방법을 수신된 데이터 패킷에 적용하기 전에, 호스트로부터 수신된 데이터 패킷이 서비스 요청을 포함하고 있는지 여부를 판정한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 하이브리드 무상태 처리 방법을 수신된 데이터 패킷에 적용하기 전에, 호스트 또는 서버로부터 수신된 데이터 패킷이 서비스 종료 요청을 포함하고 있는지 여부를 판정한다.
하나의 실시예에서, 서비스 게이트웨이(110)는 매초, 100 밀리초 마다, 3초 마다 또는 5초 마다와 같은 사전결정된 주기로 세션율(921)을 계산한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 가변적인 시간에 세션율(921)을 계산한다. 예를 들어, 서비스 게이트웨이(110)는 호스트로부터의 데이터 패킷이 수신될 때; 서비스 요청이 수신될 때; 서비스 종료 요청이 수신될 때; 또는 데이터 패킷이 서버로부터 수신될 때 세션율(921)을 계산한다. 서비스 게이트웨이(110)는 세션율(921)을 세션율(911)과 비교한다. 하나의 실시예에서, 세션율(921)은 세션율(911) 보다 아래이거나 작고, 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 충족되고 만족되었다고 판정한다.
하나의 실시예에서, 하이브리드 유상태 조건(910)은 세션 테이블 이용율(914)을 포함한다. 하이브리드 유상태 조건(910)은 세션 테이블(412)의 저장된 세션 엔트리의 카운트가 세션 테이블 이용율(914)을 초과하지 않는 경우에 만족된다. 예를 들어, 세션 테이블 이용율(914)은 60%, 75%, 또는 45%이다. 서비스 게이트웨이(110)는 가끔 세션 테이블(412)의 저장된 세션 엔트리의 카운트를 계산함으로써 세션 테이블 이용율(924)을 계산한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 매초, 20 밀리초 마다, 500 밀리초 마다, 또는 2초 마다와 같이 주기적으로 세션 테이블 이용율(924)을 계산한다. 하나의 실시예에서, 서비스 게이트웨이(110)는 서비스 게이트웨이(110)가 서비스 요청, 서비스 종료 요청 또는 데이터 패킷을 처리할 때 세션 테이블 이용율(924)을 계산한다.
서비스 게이트웨이(110)는 세션 테이블 이용율(924)을 하이브리드 유상태 조건(910)의 세션 테이블 이용율(914)과 비교한다. 하나의 실시예에서, 세션 테이블 이용율(924)은 세션 테이블 이용율(914) 보다 작고, 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 충족되고 만족되었다고 판정한다.
하나의 실시예에서, 하이브리드 유상태 조건(910)은 하이브리드 유상태 조건(910)이 만족되도록 적어도 지속시간(916) 동안 충족된 것으로 여겨져야 한다. 지속시간(916)의 예는 100초, 40초 및 5초를 포함한다. 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 상술된 바와 같이 충족되는지 가끔 체크한다. 실시예에서, 서비스 게이트웨이(110)는 메모리에 저장된 지속시간(926)을 더 포함한다. 처음에, 서비스 게이트웨이(110)는 0의 값을 지속시간(926)에 할당한다. 가끔, 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 충족되는지 판정한다. 하이브리드 유상태 조건(910)이 충족되면, 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 체크된 마지막 시간 이후 경과된 시간량 만큼 지속시간(926)을 증가시킨다. 하나의 실시예에서, 지속시간(926)이 수정된 후에, 서비스 게이트웨이(110)는 지속시간(926)이 지속시간(916)을 초과하는지 체크한다. 지속시간(926)이 지속시간(916)을 초과한 경우에, 서비스 게이트웨이(110)는 하이브리드 유상태 조건(910)이 만족되었다고 판정한다. 그다음, 서비스 게이트웨이(110)는 다음에 수신된 데이터 패킷을 갖는 하이브리드 유상태 방법을 채용하도록 변경된다.
하나의 실시예에서, 서비스 게이트웨이(110)는 운영자 또는 관리자(130)로부터 하이브리드 유상태 조건(910)을 수신한다. 관리자(130)는 서비스 게이트웨이(110)로의 하이브리드 유상태 조건(910)을 감독하는 인간 운영자일 수 있다. 관리자(130)는 하이브리드 유상태 조건(910)을 서비스 게이트웨이(110)에 전송하는 네트워크 관리 시스템일 수 있다. 관리자(130)는 하이브리드 유상태 조건(910)을 저장하는 저장 매체를 포함할 수 있다. 서비스 게이트웨이(110)는 관리자(130)의 저장부로터 하이브리드 유상태 조건(910)을 검색한다.
도 8에서, 도 8은 서비스 게이트웨이(110)가 유상태 처리 방법을 사용하여 데이터 패킷을 처리하고 있을 때(805), 서비스 게이트웨이(110)는 하이브리드 무상태 조건(801)이 충족되는지 여부를 체크하는 것(도 10 참조)을 보여준다. 도 8은 또한, 서비스 게이트웨이(110)가 무상태 처리 방법을 사용하여 데이터 패킷을 처리하고 있을 때(808), 서비스 게이트웨이(110)가 하이브리드 유상태 조건(910)이 충족되는지 여부를 체크하는 것(도 11 참조)을 보여준다. 그러나, 도 10 및 도 11의 참조(C 및 D)는 임의의 단계 순서를 전달하기 위해 의도된 것은 아니다. 조건(810 또는 910)의 체크는 도 4 및 도 8에 대해 상술된 바와 같이, 데이터 패킷의 처리와 동시에 일어날 수 있다.
도 9에서, 도 9는 서비스 게이트웨이(110)가 유상태 처리 방법을 사용하여 데이터 패킷을 처리하고 있을 때(903), 서비스 게이트웨이(110)가 하이브리드 무상태 조건(810)이 충족되는지 여부를 체크하는 것(도 10 참조)을 보여준다. 도 9는 또한 서비스 게이트웨이(110)가 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷을 처리하고 있을 때(904), 서비스 게이트웨이(110)가 도 4 및 도 8에 대한 하이브리드 상태 처리 방법 동안의 처리에 따라, 하이브리드 무상태 조건(810) 또는 하이브리드 유상태 조건(910)이 충족되는지 여부를 체크한다(도 10 및 도 11 참조). 그러나, 도 10(C) 및 도 11(D)의 참조는 임의의 단계 순서를 전달하기 위해 의도된 것은 아니다. 조건(810 또는 910)의 체크는 도 5 및 도 9에 설명된 바와 같이 데이터 패킷의 처리와 동시에 일어날 수 있다.
본 발명이 도시된 실시예에 따라 기술되었지만, 당업자는 본 실시예에 대한 변형 및 수정이 본 발명의 정신 및 범위내에서 가능하다는 것을 쉽게 이해할 수 있다. 따라서, 많은 수정은 첨부된 청구범위의 정신 및 범위로부터 벗어남 없이 당업자에 의해 가능할 수 있다.

Claims (23)

  1. 서비스 게이트웨이에 의해 호스트와 서버 사이의 통신 세션 동안 전송된 데이터 패킷을 처리하기 위한 방법으로서,
    상기 서비스 게이트웨이에 의해 하이브리드 유상태 처리 방법을 사용하여 데이터 패킷을 처리하는 단계;
    상기 서비스 게이트웨이에 의해 하이브리드 무상태 조건이 만족되는지 여부를 체크하는 단계;
    상기 하이브리드 무상태 조건이 만족된다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해, 다음에 수신된 데이터 패킷에 대해 하이브리드 무상태 처리 방법으로 변경하는 단계; 및
    상기 하이브리드 무상태 조건이 만족되지 않는다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 유상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  2. 제1항에 있어서, 상기 하이브리드 유상태 처리 방법은,
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷을 수신하는 단계;
    상기 데이터 패킷이 상기 호스트 또는 서버로부터 상기 서비스 게이트웨이에 의해 수신되었는지 여부를 상기 서비스 게이트웨이에 의해 판정하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었는다는 판정에 응답하여, 상기 데이터 패킷이 서비스 요청을 포함하고 있는지 여부를 상기 서비스 게이트웨이에 의해 판정하는 단계;
    상기 데이터 패킷이 상기 서비스 요청을 포함하고 있다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었고 상기 서비스 요청을 포함하고 있지 않다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 데이터 패킷이 상기 서버로부터 수신되었다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계를 포함하고,
    상기 하이브리드 무상태 처리 방법은,
    상기 서비스 게이트웨이에 의해 상기 호스트로부터 상기 다음에 수신된 데이터 패킷을 수신하는 단계;
    상기 서비스 게이트웨이에 의해 상기 다음에 수신된 데이터 패킷으로부터 서비스 주소를 획득하는 단계;
    상기 서비스 게이트웨이에 의해, 상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계;
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소와 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여,
    상기 서비스 게이트웨이에 의해, 상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소와 비교하고,
    상기 서비스 게이트웨이에 의해 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 서비스 게이트웨이에 의해 상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  3. 제1항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션율을 포함하고, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 조건이 만족되는지를 체크하는 단계는,
    상기 서비스 게이트웨이에 의해 수신된 복수의 통신 세션에 대한 세션율을 계산하는 단계;
    상기 서비스 게이트웨이에 의해 상기 계산된 세션율이 상기 사전결정된 세션율 이상인지를 판정하는 단계;
    상기 계산된 세션율이 상기 사전결정된 세션율 이상이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족된다고 상기 서비스 게이트웨이에 의해 판정하는 단계; 및
    상기 계산된 세션율이 상기 사전결정된 세션율 미만이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족되지 않는다고 상기 서비스 게이트웨이에 의해 판정하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  4. 제3항에 있어서, 상기 계산된 세션율은,
    사전결정된 주기 동안의 활성 호스트측 서비스 세션의 카운트;
    상기 사전결정된 주기 동안의 수신된 서비스 요청의 카운트와 수신된 서비스 종료 요청의 카운트 사이의 차이; 또는
    상기 사전결정된 주기 동안의 서비스 요청의 카운트를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  5. 제1항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션 테이블 이용율을 포함하고, 상기 하이브리드 무상태 조건이 만족되는지를 상기 서비스 게이트웨이에 의해 체크하는 단계는,
    상기 서비스 게이트웨이에 의해 상기 세션 테이블 내의 저장된 세션 엔트리의 수를 계수하는 단계;
    상기 서비스 게이트웨이에 의해 상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하는지를 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과한다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 상기 서비스 게이트웨이에 의해 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 상기 서비스 게이트웨이에 의해 판정하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  6. 제1항에 있어서, 상기 하이브리드 무상태 조건이 충족되는지 상기 서비스 게이트웨이에 의해 체크하는 단계는,
    상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되는지를 판정하는 단계;
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족된다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 상기 서비스 게이트웨이에 의해 판정하는 단계; 및
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 상기 서비스 게이트웨이에 의해 판정하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  7. 호스트와 서버 사이의 통신 세션에 전송된 데이터 패킷을 처리하기 위한 컴퓨터 프로그램 제품으로서,
    컴퓨터 판독가능 프로그램 코드가 구현된 컴퓨터 판독가능 저장 매체를 포함하고, 상기 컴퓨터 판독가능 프로그램 코드는,
    하이브리드 유상태 처리 방법을 사용하여 데이터 패킷을 처리하고;
    하이브리드 무상태 조건이 충족되는지를 체크하고;
    상기 하이브리드 무상태 조건이 충족된다는 판정에 응답하여, 다음에 수신된 데이터 패킷에 대해 하이브리드 무상태 처리 방법으로 변경하고;
    상기 하이브리드 무상태 조건이 충족되지 않는다는 판정에 응답하여, 상기 하이브리드 유상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하도록 구성된 것을 특징으로 하는 컴퓨터 프로그램 제품.
  8. 제7항에 있어서, 상기 하이브리드 유상태 처리 방법은,
    상기 데이터 패킷을 수신하는 단계;
    상기 데이터 패킷이 상기 호스트 또는 서버로부터 수신되었는지 판정하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었는다는 판정에 응답하여, 상기 데이터 패킷이 서비스 요청을 포함하고 있는지 판정하는 단계;
    상기 데이터 패킷이 상기 서비스 요청을 포함하고 있다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었고 상기 서비스 요청을 포함하고 있지 않다는 판정에 응답하여, 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 데이터 패킷이 상기 서버로부터 수신되었다는 판정에 응답하여, 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계를 포함하고,
    상기 하이브리드 무상태 처리 방법은,
    상기 호스트로부터 상기 다음에 수신된 데이터 패킷을 수신하는 단계;
    상기 다음에 수신된 데이터 패킷으로부터 서비스 주소를 획득하는 단계;
    상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계;
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소와 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여,
    상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소와 비교하고,
    상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  9. 제7항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션율을 포함하고, 상기 하이브리드 무상태 조건이 만족되는지를 체크하는 단계는,
    복수의 통신 세션에 대한 세션율을 계산하는 단계;
    상기 계산된 세션율이 상기 사전결정된 세션율 이상인지를 판정하는 단계;
    상기 계산된 세션율이 상기 사전결정된 세션율 이상이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족된다고 판정하는 단계; 및
    상기 계산된 세션율이 상기 사전결정된 세션율 미만이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  10. 제9항에 있어서, 상기 계산된 세션율은,
    사전결정된 주기 동안의 활성 호스트측 서비스 세션의 카운트;
    상기 사전결정된 주기 동안의 수신된 서비스 요청의 카운트와 수신된 서비스 종료 요청의 카운트 사이의 차이; 또는
    상기 사전결정된 주기 동안의 서비스 요청의 카운트를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  11. 제7항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션 테이블 이용율을 포함하고, 상기 하이브리드 무상태 조건이 만족되는지를 체크하는 단계는,
    상기 세션 테이블 내의 저장된 세션 엔트리의 수를 계수하는 단계;
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하는지를 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과한다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  12. 제7항에 있어서, 상기 하이브리드 무상태 조건이 충족되는지 체크하는 단계는,
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되는지를 판정하는 단계;
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족된다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 판정하는 단계; 및
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  13. 시스템으로서,
    프로세서 및, 컴퓨터 판독가능 프로그램 코드가 구현된 컴퓨터 판독가능 저장 매체를 포함하는 서비스 게이트웨이를 포함하고, 상기 컴퓨터 판독가능 프로그램 코드는,
    하이브리드 유상태 처리 방법을 사용하여 데이터 패킷을 처리하고;
    하이브리드 무상태 조건이 충족되는지를 체크하고;
    상기 하이브리드 무상태 조건이 충족된다는 판정에 응답하여, 다음에 수신된 데이터 패킷에 대해 하이브리드 무상태 처리 방법으로 변경하고;
    상기 하이브리드 무상태 조건이 충족되지 않는다는 판정에 응답하여, 상기 하이브리드 유상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하도록 구성된 것을 특징으로 하는 시스템.
  14. 제13항에 있어서, 상기 하이브리드 유상태 처리 방법은,
    상기 데이터 패킷을 수신하는 단계;
    상기 데이터 패킷이 상기 호스트 또는 서버로부터 수신되었는지 판정하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었는다는 판정에 응답하여, 상기 데이터 패킷이 서비스 요청을 포함하고 있는지 판정하는 단계;
    상기 데이터 패킷이 상기 서비스 요청을 포함하고 있다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계;
    상기 데이터 패킷이 상기 호스트로부터 수신되었고 상기 서비스 요청을 포함하고 있지 않다는 판정에 응답하여, 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 데이터 패킷이 상기 서버로부터 수신되었다는 판정에 응답하여, 상기 하이브리드 무상태 처리 방법을 사용하여 상기 데이터 패킷을 처리하는 단계를 포함하고,
    상기 하이브리드 무상태 처리 방법은,
    상기 호스트로부터 상기 다음에 수신된 데이터 패킷을 수신하는 단계;
    상기 다음에 수신된 데이터 패킷으로부터 서비스 주소를 획득하는 단계;
    상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계;
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소와 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여,
    상기 다음에 수신된 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소와 비교하고,
    상기 다음에 수신된 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 시스템.
  15. 제13항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션율을 포함하고, 상기 하이브리드 무상태 조건이 만족되는지를 체크하는 단계는,
    복수의 통신 세션에 대한 세션율을 계산하는 단계;
    상기 계산된 세션율이 상기 사전결정된 세션율 이상인지를 판정하는 단계;
    상기 계산된 세션율이 상기 사전결정된 세션율 이상이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족된다고 판정하는 단계; 및
    상기 계산된 세션율이 상기 사전결정된 세션율 미만이라는 판정에 응답하여, 상기 하이브리드 무상태 조건이 만족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 시스템.
  16. 제13항에 있어서, 상기 하이브리드 무상태 조건은 사전결정된 세션 테이블 이용율을 포함하고, 상기 하이브리드 무상태 조건이 만족되는지를 체크하는 단계는,
    상기 세션 테이블 내의 저장된 세션 엔트리의 수를 계수하는 단계;
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하는지를 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과한다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 판정하는 단계; 및
    상기 저장된 세션 엔트리의 수가 상기 사전결정된 세션 테이블 이용율을 초과하지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 시스템.
  17. 제13항에 있어서, 상기 하이브리드 무상태 조건이 충족되는지 체크하는 단계는,
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되는지를 판정하는 단계;
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족된다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족된다고 판정하는 단계; 및
    상기 하이브리드 무상태 조건이 사전결정된 기간 동안 만족되지 않는다는 판정에 응답하여, 상기 하이브리드 무상태 조건이 충족되지 않는다고 판정하는 단계를 포함하는 것을 특징으로 하는 시스템.
  18. 서비스 게이트웨이에 의해 호스트와 서버 사이의 통신 세션 동안 전송된 데이터 패킷을 처리하기 위한 방법으로서,
    상기 서비스 게이트웨이에 의해 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷을 처리하는 단계;
    상기 서비스 게이트웨이에 의해 하이브리드 유상태 조건이 만족되는지 체크하는 단계;
    상기 하이브리드 유상태 조건이 만족된다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해, 다음에 수신된 데이터 패킷에 대해 하이브리드 유상태 처리 방법으로 변경하는 단계; 및
    상기 하이브리드 유상태 조건이 만족되지 않는다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 하이브리드 무상태 처리 방법을 사용하여 상기 다음에 수신된 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  19. 제18항에 있어서, 상기 하이브리드 무상태 처리 방법은,
    상기 서비스 게이트웨이에 의해 상기 호스트로부터 상기 데이터 패킷을 수신하는 단계;
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷으로부터 상기 서비스 주소를 획득하는 단계;
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계;
    상기 세션 테이블이 상기 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여,
    상기 서비스 게이트웨이에 이해 상기 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소에 비교하고,
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 서비스 게이트웨이에 의해 상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계를 포함하고,
    상기 하이브리드 무상태 처리 방법은,
    상기 서비스 게이트웨이에 의해 상기 서버로부터 상기 데이터 패킷을 수신하는 단계;
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷으로부터 상기 서버 주소를 획득하는 단계;
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷의 서버 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소에 비교하는 단계;
    상기 세션 테이블이 상기 데이터 패킷의 서버 주소에 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 데이터 패킷의 서버 주소에 매치하는 세션 엔트리를 포함하지 않았다는 판정에 응답하여,
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷의 서버 주소를 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소에 비교하고,
    상기 서비스 게이트웨이에 의해 상기 데이터 패킷의 서버 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 서비스 게이트웨이에 의해 상기 유상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  20. 제18항에 있어서, 상기 하이브리드 유상태 조건은 사전결정된 세션율 또는 사전결정된 세션 테이블 이용율을 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  21. 제18항에 있어서, 상기 하이브리드 유상태 조건이 충족되는지 상기 서비스 게이트웨이에 의해 체크하는 단계는,
    상기 서비스 게이트웨이에 의해 상기 하이브리드 유상태 조건이 사전결정된 기간 동안 만족되는지를 판정하는 단계;
    상기 하이브리드 유상태 조건이 사전결정된 기간 동안 만족된다는 판정에 응답하여, 상기 하이브리드 유상태 조건이 충족된다고 상기 서비스 게이트웨이에 의해 판정하는 단계; 및
    상기 하이브리드 유상태 조건이 사전결정된 기간 동안 만족되지 않는다는 판정에 응답하여, 상기 하이브리드 유상태 조건이 충족되지 않는다고 상기 서비스 게이트웨이에 의해 판정하는 단계를 포함하는 것을 특징으로 하는 데이터 패킷 처리 방법.
  22. 호스트와 서버 사이의 통신 세션에 전송된 데이터 패킷을 처리하기 위한 컴퓨터 프로그램 제품으로서,
    컴퓨터 판독가능 프로그램 코드가 구현된 컴퓨터 판독가능 저장 매체를 포함하고,
    상기 컴퓨터 판독가능 프로그램 코드는 하이브리드 무상태 처리 방법을 사용하여 데이터 패킷을 처리하고;
    하이브리드 유상태 조건이 충족되었는지를 체크하고;
    상기 하이브리드 유상태 조건이 충족되었다는 판정에 응답하여, 다음에 수신된 데이터 패킷에 대해 하이브리드 유상태 처리 방법으로 변경하고;
    상기 하이브리드 유상태 조건이 충족되지 않았다는 판정에 응답하여, 상기 다음에 수신된 데이터 패킷을 상기 하이브리드 무상태 처리 방법을 사용하여 처리하도록 구성되어 있고, 상기 하이브리드 무상태 처리 방법은,
    상기 호스트로부터 상기 데이터 패킷을 수신하는 단계;
    상기 데이터 패킷으로부터 상기 서비스 주소를 획득하는 단계;
    상기 데이터 패킷의 서비스 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소와 비교하는 단계;
    상기 세션 테이블이 상기 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 데이터 패킷의 서비스 주소에 매치하는 세션 엔트리를 포함하지 않는다는 판정에 응답하여,
    상기 데이터 패킷의 서비스 주소를 상기 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소에 비교하고,
    상기 데이터 패킷의 서비스 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 무상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계를 포함하고,
    상기 하이브리드 무상태 처리 방법은,
    상기 서버로부터 상기 데이터 패킷을 수신하는 단계;
    상기 데이터 패킷으로부터 상기 서버 주소를 획득하는 단계;
    상기 데이터 패킷의 서버 주소를 상기 세션 테이블 내의 세션 엔트리에 저장된 서비스 주소에 비교하는 단계;
    상기 세션 테이블이 상기 데이터 패킷의 서버 주소에 매치하는 세션 엔트리를 포함한다는 판정에 응답하여, 상기 유상태 처리 방법을 사용하여 상기 매치하는 세션 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계; 및
    상기 세션 테이블이 상기 데이터 패킷의 서버 주소에 매치하는 세션 엔트리를 포함하지 않았다는 판정에 응답하여,
    상기 데이터 패킷의 서버 주소를 맵핑 테이블 내의 맵핑 엔트리에 저장된 서비스 주소에 비교하고,
    상기 데이터 패킷의 서버 주소에 매치하는 맵핑 엔트리를 탐색하고,
    상기 유상태 처리 방법을 사용하여 상기 매치하는 맵핑 엔트리에 저장된 정보에 기초하여 상기 데이터 패킷을 처리하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
  23. 제22항에 있어서, 상기 하이브리드 유상태 조건은 사전결정된 세션율 또는 사전결정된 세션 테이블 이용율을 포함하는 것을 특징으로 하는 컴퓨터 프로그램 제품.
KR1020147013989A 2011-10-24 2012-10-15 무상태 및 유상태 서버 부하 분산 결합 방법 KR101632187B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/280,336 US8897154B2 (en) 2011-10-24 2011-10-24 Combining stateless and stateful server load balancing
US13/280,336 2011-10-24
PCT/US2012/060317 WO2013070391A1 (en) 2011-10-24 2012-10-15 Methods to combine stateless and stateful server load balancing

Publications (2)

Publication Number Publication Date
KR20140088172A true KR20140088172A (ko) 2014-07-09
KR101632187B1 KR101632187B1 (ko) 2016-06-21

Family

ID=48135938

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147013989A KR101632187B1 (ko) 2011-10-24 2012-10-15 무상태 및 유상태 서버 부하 분산 결합 방법

Country Status (8)

Country Link
US (4) US8897154B2 (ko)
EP (1) EP2772026B1 (ko)
JP (1) JP5913609B2 (ko)
KR (1) KR101632187B1 (ko)
CN (1) CN104067569B (ko)
HK (1) HK1198565A1 (ko)
IN (1) IN2014CN03764A (ko)
WO (1) WO2013070391A1 (ko)

Families Citing this family (86)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060117020A1 (en) * 2004-12-01 2006-06-01 John Toebes Arrangement for selecting a server to provide distributed services from among multiple servers based on a location of a client device
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
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
WO2012097015A2 (en) 2011-01-11 2012-07-19 A10 Networks Inc. Virtual application delivery chassis system
US9154577B2 (en) 2011-06-06 2015-10-06 A10 Networks, Inc. Sychronization of configuration file of virtual application distribution chassis
US9736065B2 (en) 2011-06-24 2017-08-15 Cisco Technology, Inc. Level of hierarchy in MST for traffic localization and load balancing
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
US20130144620A1 (en) * 2011-12-06 2013-06-06 Telcordia Technologies, Inc. Method, system and program for verifying the authenticity of a website using a reliable telecommunication channel and pre-login message
US9094364B2 (en) 2011-12-23 2015-07-28 A10 Networks, Inc. Methods to manage services over a service gateway
US8908698B2 (en) 2012-01-13 2014-12-09 Cisco Technology, Inc. System and method for managing site-to-site VPNs of a cloud managed network
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
US8782221B2 (en) 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
US9106561B2 (en) 2012-12-06 2015-08-11 A10 Networks, Inc. Configuration of a virtual service network
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
JP2015534769A (ja) 2012-09-25 2015-12-03 エイ10 ネットワークス インコーポレイテッドA10 Networks, Inc. データネットワークにおける負荷分散
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
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
US10230770B2 (en) 2013-12-02 2019-03-12 A10 Networks, Inc. Network proxy layer for policy-based application proxies
CN105960782B (zh) * 2014-03-05 2019-07-23 华为技术有限公司 用于转发数据分组的接入节点设备
US9807110B2 (en) 2014-03-11 2017-10-31 Vectra Networks, Inc. Method and system for detecting algorithm-generated domains
US20150264073A1 (en) * 2014-03-11 2015-09-17 Vectra Networks, Inc. System and method for detecting intrusions through real-time processing of traffic with extensive historical perspective
US9942152B2 (en) 2014-03-25 2018-04-10 A10 Networks, Inc. Forwarding data packets using a service-based forwarding policy
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US10742559B2 (en) 2014-04-24 2020-08-11 A10 Networks, Inc. Eliminating data traffic redirection in scalable clusters
US9961130B2 (en) * 2014-04-24 2018-05-01 A10 Networks, Inc. Distributed high availability processing methods for service 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
CN104035884B (zh) * 2014-06-30 2017-04-05 河南百旺金赋电脑有限公司 一种双环形队列数据存储方法和智能网关
US10122605B2 (en) 2014-07-09 2018-11-06 Cisco Technology, Inc Annotation of network activity through different phases of execution
US10129202B2 (en) * 2014-11-25 2018-11-13 Cisco Technology, Inc. Optimizing global IPv6 address assignments
US11310348B2 (en) 2015-01-30 2022-04-19 Calgary Scientific Inc. Highly scalable, fault tolerant remote access architecture and method of connecting thereto
GB2535798B (en) * 2015-02-27 2022-01-26 Metaswitch Networks Ltd Network node
US10476982B2 (en) 2015-05-15 2019-11-12 Cisco Technology, Inc. Multi-datacenter message queue
US10742722B2 (en) 2015-06-26 2020-08-11 Hewlett Packard Enterprise Development Lp Server load balancing
US10034201B2 (en) * 2015-07-09 2018-07-24 Cisco Technology, Inc. Stateless load-balancing across multiple tunnels
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
US10497044B2 (en) 2015-10-19 2019-12-03 Demandware Inc. Scalable systems and methods for generating and serving recommendations
US10205677B2 (en) 2015-11-24 2019-02-12 Cisco Technology, Inc. Cloud resource placement optimization and migration execution in federated clouds
US10452518B2 (en) 2015-12-02 2019-10-22 Veeva Systems Inc. Uploading tenant code to a multi-tenant system
US9760472B2 (en) * 2015-12-02 2017-09-12 Veeva Systems Inc. Tenant code debugging in multi-tenant systems
US10084703B2 (en) 2015-12-04 2018-09-25 Cisco Technology, Inc. Infrastructure-exclusive service forwarding
FR3045999A1 (fr) * 2015-12-18 2017-06-23 Orange Procede de communication entre un appelant et une pluralite de terminaux appeles
US10389611B2 (en) 2015-12-23 2019-08-20 F5 Networks, Inc. Inserting and removing stateful devices in a network
US10367914B2 (en) 2016-01-12 2019-07-30 Cisco Technology, Inc. Attaching service level agreements to application containers and enabling service assurance
JP6181216B2 (ja) * 2016-01-22 2017-08-16 株式会社東芝 通信制御装置、通信制御方法、プログラムおよび通信システム
US10432532B2 (en) 2016-07-12 2019-10-01 Cisco Technology, Inc. Dynamically pinning micro-service to uplink port
US10382597B2 (en) 2016-07-20 2019-08-13 Cisco Technology, Inc. System and method for transport-layer level identification and isolation of container traffic
US10567344B2 (en) 2016-08-23 2020-02-18 Cisco Technology, Inc. Automatic firewall configuration based on aggregated cloud managed information
US10320683B2 (en) 2017-01-30 2019-06-11 Cisco Technology, Inc. Reliable load-balancer using segment routing and real-time application monitoring
US10671571B2 (en) 2017-01-31 2020-06-02 Cisco Technology, Inc. Fast network performance in containerized environments for network function virtualization
US11005731B2 (en) 2017-04-05 2021-05-11 Cisco Technology, Inc. Estimating model parameters for automatic deployment of scalable micro services
US10439877B2 (en) 2017-06-26 2019-10-08 Cisco Technology, Inc. Systems and methods for enabling wide area multicast domain name system
US10382274B2 (en) 2017-06-26 2019-08-13 Cisco Technology, Inc. System and method for wide area zero-configuration network auto configuration
US10425288B2 (en) 2017-07-21 2019-09-24 Cisco Technology, Inc. Container telemetry in data center environments with blade servers and switches
US10601693B2 (en) 2017-07-24 2020-03-24 Cisco Technology, Inc. System and method for providing scalable flow monitoring in a data center fabric
US10541866B2 (en) 2017-07-25 2020-01-21 Cisco Technology, Inc. Detecting and resolving multicast traffic performance issues
US10705882B2 (en) 2017-12-21 2020-07-07 Cisco Technology, Inc. System and method for resource placement across clouds for data intensive workloads
US10616321B2 (en) 2017-12-22 2020-04-07 At&T Intellectual Property I, L.P. Distributed stateful load balancer
US11595474B2 (en) 2017-12-28 2023-02-28 Cisco Technology, Inc. Accelerating data replication using multicast and non-volatile memory enabled nodes
US10511534B2 (en) 2018-04-06 2019-12-17 Cisco Technology, Inc. Stateless distributed load-balancing
US10728361B2 (en) 2018-05-29 2020-07-28 Cisco Technology, Inc. System for association of customer information across subscribers
US10904322B2 (en) 2018-06-15 2021-01-26 Cisco Technology, Inc. Systems and methods for scaling down cloud-based servers handling secure connections
US10764266B2 (en) 2018-06-19 2020-09-01 Cisco Technology, Inc. Distributed authentication and authorization for rapid scaling of containerized services
US11019083B2 (en) 2018-06-20 2021-05-25 Cisco Technology, Inc. System for coordinating distributed website analysis
US10819571B2 (en) 2018-06-29 2020-10-27 Cisco Technology, Inc. Network traffic optimization using in-situ notification system
US10904342B2 (en) 2018-07-30 2021-01-26 Cisco Technology, Inc. Container networking using communication tunnels
CN110858982B (zh) 2018-08-22 2022-01-14 华为技术有限公司 流量/速率统计方法以及相关设备
CN110278152B (zh) * 2018-08-31 2020-05-29 新华三信息安全技术有限公司 一种建立快速转发表的方法及装置
CN110290044B (zh) * 2019-06-26 2021-08-06 普联技术有限公司 一种vpn网络和主干网络的分流方法、装置及存储介质
US20230088364A1 (en) * 2021-09-17 2023-03-23 Red Hat, Inc. Dynamically Switching A Software Service Between Stateful Mode And Stateless Mode
CN114104880B (zh) * 2021-11-15 2024-03-08 云知声(上海)智能科技有限公司 电梯呼叫控制系统及其控制方法
US11811675B2 (en) 2022-01-24 2023-11-07 Bank Of America Corporation System for triggering adaptive resource channel requisition within a distributed network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7881215B1 (en) * 2004-03-18 2011-02-01 Avaya Inc. Stateful and stateless data processing

Family Cites Families (388)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5855663A (ja) 1981-09-30 1983-04-02 株式会社日立製作所 ル−ムエアコン
JPS596263A (ja) 1982-07-03 1984-01-13 Agency Of Ind Science & Technol 亜鉛被覆フレ−ク顔料
JPS5913609A (ja) 1982-07-15 1984-01-24 Kaoru Umeya フレ−ク状窒化物セラミツクスおよびその製造方法
JPS5946189A (ja) 1982-09-06 1984-03-15 Ryozo Oota 水処理用接触板組合せ方法
JPS5963766A (ja) 1982-10-04 1984-04-11 Mitsubishi Electric Corp 半導体メモリ装置
US5218602A (en) 1991-04-04 1993-06-08 Dsc Communications Corporation Interprocessor switching network
JP2962203B2 (ja) 1995-09-28 1999-10-12 日本電気株式会社 オンライン情報処理システムにおける負荷分散方法
US5935207A (en) 1996-06-03 1999-08-10 Webtv Networks, Inc. Method and apparatus for providing remote site administrators with user hits on mirrored web sites
US5774660A (en) 1996-08-05 1998-06-30 Resonate, Inc. World-wide-web server with delayed resource-binding for resource-based load balancing on a distributed resource multi-node network
US5958053A (en) 1997-01-30 1999-09-28 At&T Corp. Communications protocol with improved security
US5995981A (en) 1997-06-16 1999-11-30 Telefonaktiebolaget Lm Ericsson Initialization of replicated data objects
EP1021757A1 (en) 1997-07-25 2000-07-26 Starvox, Inc. Apparatus and method for integrated voice gateway
JP3369445B2 (ja) 1997-09-22 2003-01-20 富士通株式会社 ネットワークサービスサーバ負荷調整装置、方法および記録媒体
US6434620B1 (en) 1998-08-27 2002-08-13 Alacritech, Inc. TCP/IP offload network interface device
US8782199B2 (en) 1997-10-14 2014-07-15 A-Tech Llc Parsing a packet header
US6226680B1 (en) 1997-10-14 2001-05-01 Alacritech, Inc. Intelligent network interface system method for protocol processing
US7167927B2 (en) 1997-10-14 2007-01-23 Alacritech, Inc. TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism
US7237036B2 (en) 1997-10-14 2007-06-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding a TCP connection
US6047268A (en) 1997-11-04 2000-04-04 A.T.&T. Corporation Method and apparatus for billing for transactions conducted over the internet
US6003069A (en) 1997-12-16 1999-12-14 Lexmark International, Inc. Client/server printer driver system
US6167062A (en) 1998-02-02 2000-12-26 Tellabs Operations, Inc. System and associated method for the synchronization and control of multiplexed payloads over a telecommunications network
US6131163A (en) 1998-02-17 2000-10-10 Cisco Technology, Inc. Network gateway mechanism having a protocol stack proxy
US6459682B1 (en) 1998-04-07 2002-10-01 International Business Machines Corporation Architecture for supporting service level agreements in an IP network
JPH11338836A (ja) 1998-05-25 1999-12-10 Nippon Telegr & Teleph Corp <Ntt> コンピュータネットワークの負荷分散システム
US6219706B1 (en) 1998-10-16 2001-04-17 Cisco Technology, Inc. Access control for networks
US6571274B1 (en) * 1998-11-05 2003-05-27 Beas Systems, Inc. Clustered enterprise Java™ in a secure distributed processing system
US6321338B1 (en) 1998-11-09 2001-11-20 Sri International Network surveillance
US6850965B2 (en) 1998-11-17 2005-02-01 Arthur Douglas Allen Method for connection acceptance and rapid determination of optimal multi-media content delivery over network
JP2000276432A (ja) 1999-03-24 2000-10-06 Nec Corp トランザクション・メッセージの動的負荷分散方式
JP2000307634A (ja) 1999-04-15 2000-11-02 Kdd Corp パケット交換網の中継局による輻輳制御方法
EP1049307A1 (en) 1999-04-29 2000-11-02 International Business Machines Corporation Method and system for dispatching client sessions within a cluster of servers connected to the World Wide Web
US20010049741A1 (en) 1999-06-18 2001-12-06 Bryan D. Skene Method and system for balancing load distribution on a wide area network
EP1067458A1 (en) 1999-07-09 2001-01-10 CANAL+ Société Anonyme Running and testing applications
US6374300B2 (en) 1999-07-15 2002-04-16 F5 Networks, Inc. Method and system for storing load balancing information with an HTTP cookie
JP2001051859A (ja) 1999-08-11 2001-02-23 Hitachi Ltd 負荷情報連絡方法
DE60035422D1 (de) 1999-08-13 2007-08-16 Sun Microsystems Inc Elegante verteilung des lastausgleichs für anwendungs-server
WO2001014990A1 (en) 1999-08-21 2001-03-01 Webever, Inc. Method for content delivery over the internet
US8032634B1 (en) 1999-08-23 2011-10-04 Oracle America, Inc. Approach for allocating resources to an apparatus based on resource requirements
US7463648B1 (en) 1999-08-23 2008-12-09 Sun Microsystems, Inc. Approach for allocating resources to an apparatus based on optional resource requirements
US8179809B1 (en) 1999-08-23 2012-05-15 Oracle America, Inc. Approach for allocating resources to an apparatus based on suspendable resource requirements
US8019870B1 (en) 1999-08-23 2011-09-13 Oracle America, Inc. Approach for allocating resources to an apparatus based on alternative resource requirements
US7703102B1 (en) 1999-08-23 2010-04-20 Oracle America, Inc. Approach for allocating resources to an apparatus based on preemptable resource requirements
US6748414B1 (en) 1999-11-15 2004-06-08 International Business Machines Corporation Method and apparatus for the load balancing of non-identical servers in a network environment
US7590739B2 (en) 1999-11-22 2009-09-15 Akamai Technologies, Inc. Distributed on-demand computing system
US6952728B1 (en) 1999-12-01 2005-10-04 Nortel Networks Limited Providing desired service policies to subscribers accessing internet
US6754706B1 (en) 1999-12-16 2004-06-22 Speedera Networks, Inc. Scalable domain name system with persistence and load balancing
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
US6820133B1 (en) 2000-02-07 2004-11-16 Netli, Inc. System and method for high-performance delivery of web content using high-performance communications protocol between the first and second specialized intermediate nodes to optimize a measure of communications performance between the source and the destination
US6725272B1 (en) 2000-02-18 2004-04-20 Netscaler, Inc. Apparatus, method and computer program product for guaranteed content delivery incorporating putting a client on-hold based on response time
US8380854B2 (en) 2000-03-21 2013-02-19 F5 Networks, Inc. Simplified method for processing multiple connections from the same client
JP2001298449A (ja) 2000-04-12 2001-10-26 Matsushita Electric Ind Co Ltd セキュリティ通信方法、通信システム及びその装置
US8204082B2 (en) 2000-06-23 2012-06-19 Cloudshield Technologies, Inc. Transparent provisioning of services over a network
US7013482B1 (en) * 2000-07-07 2006-03-14 802 Systems Llc Methods for packet filtering including packet invalidation if packet validity determination not timely made
US7031267B2 (en) * 2000-12-21 2006-04-18 802 Systems Llc PLD-based packet filtering methods with PLD configuration data update of filtering rules
US7814180B2 (en) 2000-07-13 2010-10-12 Infoblox, Inc. Domain name service server
CN1200368C (zh) 2000-08-18 2005-05-04 清华大学 一种将tcp用于不可靠传输网络的局域重传方法
US7711790B1 (en) 2000-08-24 2010-05-04 Foundry Networks, Inc. Securing an accessible computer system
US7010605B1 (en) 2000-08-29 2006-03-07 Microsoft Corporation Method and apparatus for encoding and storing session data
US6772334B1 (en) 2000-08-31 2004-08-03 Networks Associates, Inc. System and method for preventing a spoofed denial of service attack in a networked computing environment
JP3501361B2 (ja) 2000-09-04 2004-03-02 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータネットワークシステム、コンピュータシステム、コンピュータシステム間の通信方法、コンピュータシステムのパフォーマンス測定方法および記録媒体
US7398317B2 (en) 2000-09-07 2008-07-08 Mazu Networks, Inc. Thwarting connection-based denial of service attacks
JP2002091936A (ja) 2000-09-11 2002-03-29 Hitachi Ltd 負荷分散装置及び負荷見積もり方法
US9525696B2 (en) 2000-09-25 2016-12-20 Blue Coat Systems, Inc. Systems and methods for processing data flows
US7454500B1 (en) 2000-09-26 2008-11-18 Foundry Networks, Inc. Global server load balancing
EP1330725B1 (en) 2000-09-29 2012-03-21 Alacritech, Inc. Intelligent network storage interface system and devices
US6813635B1 (en) 2000-10-13 2004-11-02 Hewlett-Packard Development Company, L.P. System and method for distributing load among redundant independent stateful world wide web server sites
AU2002214659A1 (en) 2000-10-26 2002-05-06 James C. Flood Jr. Method and system for managing distributed content and related metadata
US7739398B1 (en) 2000-11-21 2010-06-15 Avaya Inc. Dynamic load balancer
US20020078164A1 (en) 2000-12-13 2002-06-20 Marnetics Ltd. System and method for data transfer acceleration in a TCP network environment
US7218722B1 (en) 2000-12-18 2007-05-15 Westell Technologies, Inc. System and method for providing call management services in a virtual private network using voice or video over internet protocol
US6779033B1 (en) 2000-12-28 2004-08-17 Networks Associates Technology, Inc. System and method for transacting a validated application session in a networked computing environment
US7301899B2 (en) 2001-01-31 2007-11-27 Comverse Ltd. Prevention of bandwidth congestion in a denial of service or other internet-based attack
US7155515B1 (en) 2001-02-06 2006-12-26 Microsoft Corporation Distributed load balancing for single entry-point systems
US7149817B2 (en) 2001-02-15 2006-12-12 Neteffect, Inc. Infiniband TM work queue to TCP/IP translation
US7313822B2 (en) 2001-03-16 2007-12-25 Protegrity Corporation Application-layer security method and system
US7454523B2 (en) 2001-03-16 2008-11-18 Intel Corporation Geographic location determination including inspection of network address
US7533409B2 (en) 2001-03-22 2009-05-12 Corente, Inc. Methods and systems for firewalling virtual private networks
US7349970B2 (en) * 2001-03-29 2008-03-25 International Business Machines Corporation Workload management of stateful program entities
US6839700B2 (en) 2001-05-23 2005-01-04 International Business Machines Corporation Load balancing content requests using dynamic document generation cost information
GB0113844D0 (en) 2001-06-07 2001-08-01 Marconi Comm Ltd Real time processing
US6944678B2 (en) 2001-06-18 2005-09-13 Transtech Networks Usa, Inc. Content-aware application switch and methods thereof
US7239632B2 (en) 2001-06-18 2007-07-03 Tatara Systems, Inc. Method and apparatus for converging local area and wide area wireless data networks
US8180921B2 (en) 2001-06-19 2012-05-15 Intel Corporation Method and apparatus for load balancing
US7343399B2 (en) 2001-06-25 2008-03-11 Nortel Networks Limited Apparatus and method for managing internet resource requests
DE60202527T2 (de) 2001-07-03 2006-03-30 Telefonaktiebolaget Lm Ericsson (Publ) Verfahren und system zur behandlung von mehrfachanmeldungen
US7305492B2 (en) 2001-07-06 2007-12-04 Juniper Networks, Inc. Content service aggregation system
US7509369B1 (en) 2001-07-11 2009-03-24 Swsoft Holdings, Ltd. Balancing shared servers in virtual environments
US7366794B2 (en) 2001-07-13 2008-04-29 Certicom Corp. Method and apparatus for resolving a web site address when connected with a virtual private network (VPN)
US7072958B2 (en) 2001-07-30 2006-07-04 Intel Corporation Identifying network management policies
US20040187032A1 (en) 2001-08-07 2004-09-23 Christoph Gels Method, data carrier, computer system and computer progamme for the identification and defence of attacks in server of network service providers and operators
US7039037B2 (en) 2001-08-20 2006-05-02 Wang Jiwei R Method and apparatus for providing service selection, redirection and managing of subscriber access to multiple WAP (Wireless Application Protocol) gateways simultaneously
FR2830397B1 (fr) 2001-09-28 2004-12-03 Evolium Sas Procede pour ameliorer les performances d'un protocole de transmission utilisant un temporisateur de retransmission
WO2003027906A2 (en) 2001-09-28 2003-04-03 Savvis Communications Corporation System and method for policy dependent name to address resolutioin.
US7958199B2 (en) 2001-11-02 2011-06-07 Oracle America, Inc. Switching systems and methods for storage management in digital networks
JP3730563B2 (ja) * 2001-11-02 2006-01-05 キヤノンソフトウェア株式会社 セッション管理装置およびセッション管理方法およびプログラムおよび記録媒体
US7370353B2 (en) 2001-11-05 2008-05-06 Cisco Technology, Inc. System and method for managing dynamic network sessions
US7512980B2 (en) 2001-11-30 2009-03-31 Lancope, Inc. Packet sampling flow-based detection of network intrusions
JP2003186776A (ja) 2001-12-13 2003-07-04 Hitachi Ltd 輻輳制御システム
US20030131245A1 (en) 2002-01-04 2003-07-10 Michael Linderman Communication security system
US6633835B1 (en) 2002-01-10 2003-10-14 Networks Associates Technology, Inc. Prioritized data capture, classification and filtering in a network monitoring environment
US7058718B2 (en) 2002-01-15 2006-06-06 International Business Machines Corporation Blended SYN cookies
US8090866B1 (en) 2002-01-18 2012-01-03 Cisco Technology, Inc. TCP proxy connection management in a gigabit environment
US7076555B1 (en) 2002-01-23 2006-07-11 Novell, Inc. System and method for transparent takeover of TCP connections between servers
CN1714545A (zh) 2002-01-24 2005-12-28 艾维西系统公司 容错的数据通信的方法和系统
AU2003214975A1 (en) 2002-02-01 2003-09-02 John Fairweather System and method for navigating data
US7584262B1 (en) 2002-02-11 2009-09-01 Extreme Networks Method of and system for allocating resources to resource requests based on application of persistence policies
US7228359B1 (en) 2002-02-12 2007-06-05 Cisco Technology, Inc. Methods and apparatus for providing domain name service based on a client identifier
CA2372092C (en) 2002-02-15 2010-04-06 Cognos Incorporated A queuing model for a plurality of servers
US7751409B1 (en) 2002-03-20 2010-07-06 Oracle America, Inc. Logical service domains for enabling network mobility
US20030195962A1 (en) 2002-04-10 2003-10-16 Satoshi Kikuchi Load balancing of servers
US7707295B1 (en) * 2002-05-03 2010-04-27 Foundry Networks, Inc. Connection rate limiting
US8554929B1 (en) * 2002-05-03 2013-10-08 Foundry Networks, Llc Connection rate limiting for server load balancing and transparent cache switching
US7340535B1 (en) 2002-06-04 2008-03-04 Fortinet, Inc. System and method for controlling routing in a virtual router system
US6888807B2 (en) 2002-06-10 2005-05-03 Ipr Licensing, Inc. Applying session services based on packet flows
US7277963B2 (en) 2002-06-26 2007-10-02 Sandvine Incorporated TCP proxy providing application layer modifications
US7254133B2 (en) 2002-07-15 2007-08-07 Intel Corporation Prevention of denial of service attacks
US7418494B2 (en) 2002-07-25 2008-08-26 Intellectual Ventures Holding 40 Llc Method and system for background replication of data objects
US7069438B2 (en) 2002-08-19 2006-06-27 Sowl Associates, Inc. Establishing authenticated network connections
US7430755B1 (en) 2002-09-03 2008-09-30 Fs Networks, Inc. Method and system for providing persistence in a secure network access
US7337241B2 (en) 2002-09-27 2008-02-26 Alacritech, Inc. Fast-path apparatus for receiving data corresponding to a TCP connection
US8260961B1 (en) 2002-10-01 2012-09-04 Trustwave Holdings, Inc. Logical / physical address state lifecycle management
US7236457B2 (en) 2002-10-04 2007-06-26 Intel Corporation Load balancing in a network
US7487248B2 (en) 2002-10-08 2009-02-03 Brian Moran Method and system for transferring a computer session between devices
US7792113B1 (en) 2002-10-21 2010-09-07 Cisco Technology, Inc. Method and system for policy-based forwarding
US7310686B2 (en) 2002-10-27 2007-12-18 Paxfire, Inc. Apparatus and method for transparent selection of an Internet server based on geographic location of a user
US7406087B1 (en) 2002-11-08 2008-07-29 Juniper Networks, Inc. Systems and methods for accelerating TCP/IP data stream processing
US7269348B1 (en) 2002-11-18 2007-09-11 At&T Corp. Router having dual propagation paths for packets
US7386889B2 (en) 2002-11-18 2008-06-10 Trusted Network Technologies, Inc. System and method for intrusion prevention in a communications network
US7945673B2 (en) 2002-12-06 2011-05-17 Hewlett-Packard Development Company, L.P. Reduced wireless internet connect time
US7379958B2 (en) 2002-12-30 2008-05-27 Nokia Corporation Automatic and dynamic service information delivery from service providers to data terminals in an access point network
US7234161B1 (en) 2002-12-31 2007-06-19 Nvidia Corporation Method and apparatus for deflecting flooding attacks
US7269850B2 (en) 2002-12-31 2007-09-11 Intel Corporation Systems and methods for detecting and tracing denial of service attacks
US7089231B2 (en) 2002-12-31 2006-08-08 International Business Machines Corporation System and method for searching a plurality of databases distributed across a multi server domain
US6904439B2 (en) 2002-12-31 2005-06-07 International Business Machines Corporation System and method for aggregating user project information in a multi-server system
US7194480B2 (en) 2002-12-31 2007-03-20 International Business Machines Corporation System and method for invoking methods on place objects in a distributed environment
US20040141005A1 (en) 2003-01-22 2004-07-22 International Business Machines Corporation System and method for integrating online meeting materials in a place
US7167874B2 (en) 2003-01-22 2007-01-23 International Business Machines Corporation System and method for command line administration of project spaces using XML objects
US7835363B2 (en) 2003-02-12 2010-11-16 Broadcom Corporation Method and system to provide blade server load balancing using spare link bandwidth
US20040210623A1 (en) 2003-03-06 2004-10-21 Aamer Hydrie Virtual network topology generation
WO2004084085A1 (ja) 2003-03-18 2004-09-30 Fujitsu Limited サイト間連携による負荷分散システム
US20040210663A1 (en) 2003-04-15 2004-10-21 Paul Phillips Object-aware transport-layer network processing engine
US7739395B1 (en) 2003-04-25 2010-06-15 At&T Intellectual Property Ii, L.P. Call signaling in an IP network
US7308499B2 (en) 2003-04-30 2007-12-11 Avaya Technology Corp. Dynamic load balancing for enterprise IP traffic
US7181524B1 (en) 2003-06-13 2007-02-20 Veritas Operating Corporation Method and apparatus for balancing a load among a plurality of servers in a computer system
US7613822B2 (en) 2003-06-30 2009-11-03 Microsoft Corporation Network load balancing with session information
US7636917B2 (en) 2003-06-30 2009-12-22 Microsoft Corporation Network load balancing with host status information
US7590736B2 (en) 2003-06-30 2009-09-15 Microsoft Corporation Flexible network load balancing
US20050027862A1 (en) 2003-07-18 2005-02-03 Nguyen Tien Le System and methods of cooperatively load-balancing clustered servers
KR100568231B1 (ko) 2003-08-11 2006-04-07 삼성전자주식회사 도메인 네임 서비스 시스템 및 방법
US7385923B2 (en) 2003-08-14 2008-06-10 International Business Machines Corporation Method, system and article for improved TCP performance during packet reordering
US7467202B2 (en) 2003-09-10 2008-12-16 Fidelis Security Systems High-performance network content analysis platform
KR100570836B1 (ko) 2003-10-14 2006-04-13 한국전자통신연구원 부하 분산 세션 레이블을 이용한 서버간의 부하 분산장치 및 방법
CN100456690C (zh) 2003-10-14 2009-01-28 北京邮电大学 基于全球网络定位的全局负载均衡方法
US7472190B2 (en) * 2003-10-17 2008-12-30 International Business Machines Corporation Method, system and program product for preserving a user state in an application
JP2005141441A (ja) 2003-11-06 2005-06-02 Hitachi Ltd 負荷分散システム
US20050125276A1 (en) 2003-12-05 2005-06-09 Grigore Rusu System and method for event tracking across plural contact mediums
US6996070B2 (en) 2003-12-05 2006-02-07 Alacritech, Inc. TCP/IP offload device with reduced sequential processing
US20050213586A1 (en) 2004-02-05 2005-09-29 David Cyganski System and method to increase network throughput
US20050240989A1 (en) 2004-04-23 2005-10-27 Seoul National University Industry Foundation Method of sharing state between stateful inspection firewalls on mep network
US20060064478A1 (en) 2004-05-03 2006-03-23 Level 3 Communications, Inc. Geo-locating load balancing
US20060112170A1 (en) 2004-05-03 2006-05-25 Craig Sirkin Geo-locating load balancing
US7584301B1 (en) 2004-05-06 2009-09-01 Foundry Networks, Inc. Host-level policies for global server load balancing
US8423758B2 (en) 2004-05-10 2013-04-16 Tara Chand Singhal Method and apparatus for packet source validation architecture system for enhanced internet security
US7391725B2 (en) 2004-05-18 2008-06-24 Christian Huitema System and method for defeating SYN attacks
US8179786B2 (en) 2004-05-19 2012-05-15 Mosaid Technologies Incorporated Dynamic traffic rearrangement and restoration for MPLS networks with differentiated services capabilities
US20060069774A1 (en) * 2004-06-17 2006-03-30 International Business Machine Corporation Method and apparatus for managing data center using Web services
JP4610240B2 (ja) 2004-06-24 2011-01-12 富士通株式会社 分析プログラム、分析方法及び分析装置
FI20040888A0 (fi) 2004-06-28 2004-06-28 Nokia Corp Palvelujen ohjaaminen pakettivälitteisessä dataverkossa
US8688834B2 (en) 2004-07-09 2014-04-01 Toshiba America Research, Inc. Dynamic host configuration and network access authentication
CN1317853C (zh) 2004-07-20 2007-05-23 联想网御科技(北京)有限公司 一种网络安全设备及其组成的实现高可用性的系统及方法
JP4313266B2 (ja) 2004-07-29 2009-08-12 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、その制御方法およびコネクション確立方法
TW200606667A (en) 2004-08-13 2006-02-16 Reallusion Inc System and method of converting and sharing data
US7423977B1 (en) 2004-08-23 2008-09-09 Foundry Networks Inc. Smoothing algorithm for round trip time (RTT) measurements
JP4555025B2 (ja) 2004-08-25 2010-09-29 株式会社エヌ・ティ・ティ・ドコモ サーバ装置、クライアント装置および処理実行方法
US7292592B2 (en) 2004-10-08 2007-11-06 Telefonaktiebolaget Lm Ericsson (Publ) Home network-assisted selection of intermediary network for a roaming mobile terminal
US20060092950A1 (en) 2004-10-28 2006-05-04 Cisco Technology, Inc. Architecture and method having redundancy in active/active stateful devices based on symmetric global load balancing protocol (sGLBP)
US20060098645A1 (en) 2004-11-09 2006-05-11 Lev Walkin System and method for providing client identifying information to a server
US8458467B2 (en) 2005-06-21 2013-06-04 Cisco Technology, Inc. Method and apparatus for adaptive application message payload content transformation in a network infrastructure element
US7634564B2 (en) 2004-11-18 2009-12-15 Nokia Corporation Systems and methods for invoking a service from a plurality of event servers in a network
EP1847093A1 (en) * 2005-02-04 2007-10-24 Nokia Corporation Apparatus, method and computer program product to reduce tcp flooding attacks while conserving wireless network bandwidth
US20060190997A1 (en) 2005-02-22 2006-08-24 Mahajani Amol V Method and system for transparent in-line protection of an electronic communications network
US20060187901A1 (en) 2005-02-23 2006-08-24 Lucent Technologies Inc. Concurrent dual-state proxy server, method of providing a proxy and SIP network employing the same
US8533473B2 (en) 2005-03-04 2013-09-10 Oracle America, Inc. Method and apparatus for reducing bandwidth usage in secure transactions
US20060206586A1 (en) 2005-03-09 2006-09-14 Yibei Ling Method, apparatus and system for a location-based uniform resource locator
JP4413965B2 (ja) 2005-03-17 2010-02-10 富士通株式会社 負荷分散用通信装置及び負荷分散管理装置
KR101141645B1 (ko) 2005-03-29 2012-05-17 엘지전자 주식회사 데이터 블록 전송 제어 방법
US7606147B2 (en) 2005-04-13 2009-10-20 Zeugma Systems Inc. Application aware traffic shaping service node positioned between the access and core networks
US7990847B1 (en) 2005-04-15 2011-08-02 Cisco Technology, Inc. Method and system for managing servers in a server cluster
KR100642935B1 (ko) 2005-05-06 2006-11-10 (주)아이디스 네임 서비스 시스템 및 방법
US7826487B1 (en) 2005-05-09 2010-11-02 F5 Network, Inc Coalescing acknowledgement responses to improve network communications
JP4101251B2 (ja) 2005-05-24 2008-06-18 富士通株式会社 負荷分散プログラム、負荷分散方法、及び負荷分散装置
IES20050376A2 (en) 2005-06-03 2006-08-09 Asavie R & D Ltd Secure network communication system and method
US20060277303A1 (en) 2005-06-06 2006-12-07 Nikhil Hegde Method to improve response time when clients use network services
JP4557815B2 (ja) 2005-06-13 2010-10-06 富士通株式会社 中継装置および中継システム
US7774402B2 (en) 2005-06-29 2010-08-10 Visa U.S.A. Adaptive gateway for switching transactions and data on unreliable networks using context-based rules
US7609625B2 (en) 2005-07-06 2009-10-27 Fortinet, Inc. Systems and methods for detecting and preventing flooding attacks in a network environment
US7496566B2 (en) 2005-08-03 2009-02-24 Intenational Business Machines Corporation Priority based LDAP service publication mechanism
EP1770915A1 (en) 2005-09-29 2007-04-04 Matsushita Electric Industrial Co., Ltd. Policy control in the evolved system architecture
US20070086382A1 (en) 2005-10-17 2007-04-19 Vidya Narayanan Methods of network access configuration in an IP network
JP4650203B2 (ja) 2005-10-20 2011-03-16 株式会社日立製作所 情報システム及び管理計算機
US7606232B1 (en) * 2005-11-09 2009-10-20 Juniper Networks, Inc. Dynamic virtual local area network (VLAN) interface configuration
US20070118881A1 (en) 2005-11-18 2007-05-24 Julian Mitchell Application control at a policy server
US7694011B2 (en) 2006-01-17 2010-04-06 Cisco Technology, Inc. Techniques for load balancing over a cluster of subscriber-aware application servers
CN100452041C (zh) 2006-01-18 2009-01-14 腾讯科技(深圳)有限公司 一种读取网络资源站点信息的方法及其系统
US7610622B2 (en) 2006-02-06 2009-10-27 Cisco Technology, Inc. Supporting options in a communication session using a TCP cookie
US7675854B2 (en) 2006-02-21 2010-03-09 A10 Networks, Inc. System and method for an adaptive TCP SYN cookie with time validation
US7492766B2 (en) * 2006-02-22 2009-02-17 Juniper Networks, Inc. Dynamic building of VLAN interfaces based on subscriber information strings
US7808994B1 (en) * 2006-02-22 2010-10-05 Juniper Networks, Inc. Forwarding traffic to VLAN interfaces built based on subscriber information strings
US8832247B2 (en) 2006-03-24 2014-09-09 Blue Coat Systems, Inc. Methods and systems for caching content at multiple levels
JP5108244B2 (ja) 2006-03-30 2012-12-26 株式会社エヌ・ティ・ティ・ドコモ 通信端末及び再送制御方法
US8539075B2 (en) 2006-04-21 2013-09-17 International Business Machines Corporation On-demand global server load balancing system and method of use
US7680478B2 (en) 2006-05-04 2010-03-16 Telefonaktiebolaget Lm Ericsson (Publ) Inactivity monitoring for different traffic or service classifications
KR100830413B1 (ko) 2006-05-25 2008-05-20 (주)씨디네트웍스 클라이언트용 서버 접속 시스템과 그를 포함하는 로드밸런싱 네트워크 시스템
US20070283429A1 (en) 2006-05-30 2007-12-06 A10 Networks Inc. Sequence number based TCP session proxy
GB0611249D0 (en) 2006-06-07 2006-07-19 Nokia Corp Communication system
US20070288247A1 (en) 2006-06-11 2007-12-13 Michael Mackay Digital life server
US20070294209A1 (en) 2006-06-20 2007-12-20 Lyle Strub Communication network application activity monitoring and control
US20090313379A1 (en) 2006-07-03 2009-12-17 Telefonaktiebolaget L M Ericsson (Publ) Topology Hiding Of Mobile Agents
US7970934B1 (en) 2006-07-31 2011-06-28 Google Inc. Detecting events of interest
EP1885096B1 (en) 2006-08-01 2012-07-04 Alcatel Lucent Application session border element
JP4916809B2 (ja) 2006-08-04 2012-04-18 日本電信電話株式会社 負荷分散制御装置および方法
US7580417B2 (en) 2006-08-07 2009-08-25 Cisco Technology, Inc. Method and apparatus for load balancing over virtual network links
US8079077B2 (en) 2006-08-08 2011-12-13 A10 Networks, Inc. System and method for distributed multi-processing security gateway
US8332925B2 (en) 2006-08-08 2012-12-11 A10 Networks, Inc. System and method for distributed multi-processing security gateway
JP4724629B2 (ja) 2006-09-14 2011-07-13 富士通株式会社 放送配信システムおよび放送配信方法
US8584199B1 (en) 2006-10-17 2013-11-12 A10 Networks, Inc. System and method to apply a packet routing policy to an application session
US7716378B2 (en) 2006-10-17 2010-05-11 A10 Networks, Inc. System and method to associate a private user identity with a public user identity
US8312507B2 (en) 2006-10-17 2012-11-13 A10 Networks, Inc. System and method to apply network traffic policy to an application session
JP4680866B2 (ja) 2006-10-31 2011-05-11 株式会社日立製作所 ゲートウェイ負荷分散機能を備えたパケット転送装置
JPWO2008053954A1 (ja) 2006-11-01 2010-02-25 パナソニック株式会社 通信制御方法、通信システム、ホームエージェント割り当てサーバ及びモバイルノード
US8584195B2 (en) 2006-11-08 2013-11-12 Mcafee, Inc Identities correlation infrastructure for passive network monitoring
CN101193089B (zh) * 2006-11-20 2010-11-03 阿里巴巴集团控股有限公司 有状态会话系统及其实现方法
CN101094225B (zh) 2006-11-24 2011-05-11 中兴通讯股份有限公司 一种差异化安全服务的网络、系统和方法
US7974286B2 (en) 2006-12-04 2011-07-05 International Business Machines Corporation Reduced redundant security screening
JP4988766B2 (ja) 2006-12-22 2012-08-01 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ・ハブ装置、プログラム、および方法
US7992192B2 (en) 2006-12-29 2011-08-02 Ebay Inc. Alerting as to denial of service attacks
US8379515B1 (en) 2007-02-01 2013-02-19 F5 Networks, Inc. TCP throughput control by imposing temporal delay
CN100531098C (zh) 2007-03-13 2009-08-19 华为技术有限公司 一种对等网络系统及重叠网间节点的互通方法
US8352634B2 (en) 2007-04-06 2013-01-08 International Business Machines Corporation On-demand propagation of routing information in distributed computing system
US7743155B2 (en) 2007-04-20 2010-06-22 Array Networks, Inc. Active-active operation for a cluster of SSL virtual private network (VPN) devices with load distribution
US20080271130A1 (en) 2007-04-30 2008-10-30 Shankar Ramamoorthy Minimizing client-side inconsistencies in a distributed virtual file system
US9143558B2 (en) 2007-05-09 2015-09-22 Radware, Ltd. Geographic resiliency and load balancing for SIP application services
US20080291911A1 (en) 2007-05-21 2008-11-27 Ist International, Inc. Method and apparatus for setting a TCP retransmission timer
US8191106B2 (en) 2007-06-07 2012-05-29 Alcatel Lucent System and method of network access security policy management for multimodal device
US7743157B2 (en) 2007-06-26 2010-06-22 Sap Ag System and method for switching between stateful and stateless communication modes
US8032632B2 (en) 2007-08-14 2011-10-04 Microsoft Corporation Validating change of name server
US9407693B2 (en) 2007-10-03 2016-08-02 Microsoft Technology Licensing, Llc Network routing of endpoints to content based on content swarms
WO2009061973A1 (en) 2007-11-09 2009-05-14 Blade Network Technologies, Inc. Session-less load balancing of client traffic across servers in a server group
CN101163336B (zh) 2007-11-15 2010-06-16 中兴通讯股份有限公司 一种手机终端访问权限认证的实现方法
CN101169785A (zh) 2007-11-21 2008-04-30 浪潮电子信息产业股份有限公司 集群数据库系统的动态负载均衡方法
GB0723422D0 (en) 2007-11-29 2008-01-09 Level 5 Networks Inc Virtualised receive side scaling
US8125908B2 (en) 2007-12-04 2012-02-28 Extrahop Networks, Inc. Adaptive network traffic classification using historical context
US8756340B2 (en) 2007-12-20 2014-06-17 Yahoo! Inc. DNS wildcard beaconing to determine client location and resolver load for global traffic load balancing
JP5296373B2 (ja) 2007-12-26 2013-09-25 インターナショナル・ビジネス・マシーンズ・コーポレーション 処理の所要時間を予め提供する技術
US9100268B2 (en) 2008-02-27 2015-08-04 Alcatel Lucent Application-aware MPLS tunnel selection
US7930427B2 (en) 2008-03-03 2011-04-19 Microsoft Corporation Client-side load balancing
JP2009211343A (ja) 2008-03-04 2009-09-17 Kddi Corp サーバ装置および通信システム
US8185628B2 (en) 2008-03-07 2012-05-22 At&T Mobility Ii Llc Enhanced policy capabilities for mobile data services
CN101247349A (zh) 2008-03-13 2008-08-20 华耀环宇科技(北京)有限公司 一种网络流量快速分配方法
CN101547189B (zh) 2008-03-28 2011-08-10 华为技术有限公司 一种CoD业务的建立方法,系统和装置
US7886021B2 (en) 2008-04-28 2011-02-08 Oracle America, Inc. System and method for programmatic management of distributed computing resources
CN101261644A (zh) 2008-04-30 2008-09-10 杭州华三通信技术有限公司 访问统一资源定位符数据库的方法及装置
CN101577661B (zh) 2008-05-09 2013-09-11 华为技术有限公司 一种路径切换的方法和设备
US8352594B2 (en) 2008-06-12 2013-01-08 Panasonic Corporation Network monitoring device, bus system monitoring device, method and program
US7990855B2 (en) 2008-07-11 2011-08-02 Alcatel-Lucent Usa Inc. Method and system for joint reverse link access and traffic channel radio frequency overload control
CN101631065B (zh) 2008-07-16 2012-04-18 华为技术有限公司 一种无线多跳网络拥塞的控制方法和装置
US8271652B2 (en) 2008-07-24 2012-09-18 Netapp, Inc. Load-derived probability-based domain name service in a network storage cluster
US7890632B2 (en) 2008-08-11 2011-02-15 International Business Machines Corporation Load balancing using replication delay
US8307422B2 (en) 2008-08-14 2012-11-06 Juniper Networks, Inc. Routing device having integrated MPLS-aware firewall
JP5211987B2 (ja) 2008-09-26 2013-06-12 ブラザー工業株式会社 端末装置及びその時刻調整方法
WO2010037794A2 (en) 2008-10-03 2010-04-08 Telefonaktiebolaget Lm Ericsson (Publ) Monitoring mechanism for a distributed database
US7958247B2 (en) 2008-10-14 2011-06-07 Hewlett-Packard Development Company, L.P. HTTP push to simulate server-initiated sessions
US8266288B2 (en) 2008-10-23 2012-09-11 International Business Machines Corporation Dynamic expiration of domain name service entries
US20100106854A1 (en) 2008-10-29 2010-04-29 Hostway Corporation System and method for controlling non-existing domain traffic
JP2010108409A (ja) 2008-10-31 2010-05-13 Hitachi Ltd ストレージ管理方法及び管理サーバ
US8359402B2 (en) 2008-11-19 2013-01-22 Seachange International, Inc. Intercept device for providing content
US8260926B2 (en) 2008-11-25 2012-09-04 Citrix Systems, Inc. Systems and methods for GSLB site persistence
US8125911B2 (en) 2008-11-26 2012-02-28 Cisco Technology, Inc. First-hop domain reliability measurement and load balancing in a computer network
US8844018B2 (en) 2008-12-18 2014-09-23 At&T Intellectual Property I, L.P. Methods and apparatus to enhance security in residential networks
US20100205310A1 (en) 2009-02-12 2010-08-12 Yaniv Altshuler System and method for dynamically optimizing tcp window size
US9112871B2 (en) 2009-02-17 2015-08-18 Core Wireless Licensing S.A.R.L Method and apparatus for providing shared services
US8364163B2 (en) 2009-02-23 2013-01-29 Research In Motion Limited Method, system and apparatus for connecting a plurality of client machines to a plurality of servers
US20100228819A1 (en) 2009-03-05 2010-09-09 Yottaa Inc System and method for performance acceleration, data protection, disaster recovery and on-demand scaling of computer applications
JP5342658B2 (ja) 2009-03-06 2013-11-13 アスペラ,インク. I/o駆動の速度適応のための方法およびシステム
CN101834777B (zh) 2009-03-11 2015-07-29 瞻博网络公司 基于会话高速缓存的http加速
EP2234333B1 (en) 2009-03-23 2015-07-15 Corvil Limited System and method for estimation of round trip times within a tcp based data network
US8259726B2 (en) 2009-05-28 2012-09-04 Force10 Networks, Inc. Method and apparatus for forwarding table reduction
US8296434B1 (en) 2009-05-28 2012-10-23 Amazon Technologies, Inc. Providing dynamically scaling computing load balancing
US8266088B2 (en) 2009-06-09 2012-09-11 Cisco Technology, Inc. Tracking policy decisions in a network
EP2441211B1 (en) 2009-06-10 2016-03-23 Telefonaktiebolaget LM Ericsson (publ) Performance monitoring in a communication network
US8060579B2 (en) 2009-06-12 2011-11-15 Yahoo! Inc. User location dependent DNS lookup
US8289975B2 (en) 2009-06-22 2012-10-16 Citrix Systems, Inc. Systems and methods for handling a multi-connection protocol between a client and server traversing a multi-core system
US8863111B2 (en) * 2009-06-26 2014-10-14 Oracle International Corporation System and method for providing a production upgrade of components within a multiprotocol gateway
US9749387B2 (en) 2009-08-13 2017-08-29 Sap Se Transparently stateful execution of stateless applications
US9960967B2 (en) 2009-10-21 2018-05-01 A10 Networks, Inc. Determining an application delivery server based on geo-location information
WO2011049135A1 (ja) 2009-10-23 2011-04-28 日本電気株式会社 ネットワークシステムとその制御方法、及びコントローラ
JP5378946B2 (ja) 2009-10-26 2013-12-25 株式会社日立製作所 サーバ管理装置およびサーバ管理方法
US8311014B2 (en) 2009-11-06 2012-11-13 Telefonaktiebolaget L M Ericsson (Publ) Virtual care-of address for mobile IP (internet protocol)
US9088611B2 (en) 2009-11-25 2015-07-21 Citrix Systems, Inc. Systems and methods for client IP address insertion via TCP options
US8190736B2 (en) 2009-12-16 2012-05-29 Quantum Corporation Reducing messaging in a client-server system
US8335853B2 (en) 2009-12-17 2012-12-18 Sonus Networks, Inc. Transparent recovery of transport connections using packet translation techniques
US8255528B2 (en) 2009-12-23 2012-08-28 Citrix Systems, Inc. Systems and methods for GSLB spillover
US8224971B1 (en) 2009-12-28 2012-07-17 Amazon Technologies, Inc. Using virtual networking devices and routing information to initiate external actions
US7991859B1 (en) 2009-12-28 2011-08-02 Amazon Technologies, Inc. Using virtual networking devices to connect managed computer networks
WO2011079381A1 (en) 2009-12-31 2011-07-07 Bce Inc. Method and system for increasing performance of transmission control protocol sessions in data networks
US8789061B2 (en) 2010-02-01 2014-07-22 Ca, Inc. System and method for datacenter power management
US8301786B2 (en) * 2010-02-10 2012-10-30 Cisco Technology, Inc. Application session control using packet inspection
US8804513B2 (en) 2010-02-25 2014-08-12 The Trustees Of Columbia University In The City Of New York Methods and systems for controlling SIP overload
JP5557590B2 (ja) 2010-05-06 2014-07-23 株式会社日立製作所 負荷分散装置及びシステム
US8533337B2 (en) 2010-05-06 2013-09-10 Citrix Systems, Inc. Continuous upgrading of computers in a load balanced environment
US8499093B2 (en) * 2010-05-14 2013-07-30 Extreme Networks, Inc. Methods, systems, and computer readable media for stateless load balancing of network traffic flows
US20110289496A1 (en) 2010-05-18 2011-11-24 North End Technologies, Inc. Method & apparatus for load balancing software update across a plurality of publish/subscribe capable client devices
US8539068B2 (en) 2010-06-07 2013-09-17 Salesforce.Com, Inc. Methods and systems for providing customized domain messages
US20110307541A1 (en) 2010-06-10 2011-12-15 Microsoft Corporation Server load balancing and draining in enhanced communication systems
US8817620B2 (en) 2010-07-06 2014-08-26 Nicira, Inc. Network virtualization apparatus and method
US9680750B2 (en) 2010-07-06 2017-06-13 Nicira, Inc. Use of tunnels to hide network addresses
US9363312B2 (en) 2010-07-28 2016-06-07 International Business Machines Corporation Transparent header modification for reducing serving load based on current and projected usage
US8520672B2 (en) 2010-07-29 2013-08-27 Cisco Technology, Inc. Packet switching device using results determined by an application node
US8675488B1 (en) 2010-09-07 2014-03-18 Juniper Networks, Inc. Subscriber-based network traffic management
US8949410B2 (en) 2010-09-10 2015-02-03 Cisco Technology, Inc. Server load balancer scaling for virtual servers
US9215275B2 (en) * 2010-09-30 2015-12-15 A10 Networks, Inc. System and method to balance servers based on server load status
US20120084460A1 (en) 2010-10-04 2012-04-05 Openwave Systems Inc. Method and system for dynamic traffic steering
US9237194B2 (en) 2010-11-05 2016-01-12 Verizon Patent And Licensing Inc. Load balancer and firewall self-provisioning system
US8533285B2 (en) 2010-12-01 2013-09-10 Cisco Technology, Inc. Directing data flows in data centers with clustering services
US9609052B2 (en) 2010-12-02 2017-03-28 A10 Networks, Inc. Distributing application traffic to servers based on dynamic service response time
CN103250462B (zh) 2010-12-07 2018-10-12 瑞典爱立信有限公司 用于实现移动电信网络中的业务加速的方法
US9152293B2 (en) 2010-12-09 2015-10-06 Verizon Patent And Licensing Inc. Server IP addressing in a computing-on-demand system
US8965957B2 (en) * 2010-12-15 2015-02-24 Sap Se Service delivery framework
US8755283B2 (en) 2010-12-17 2014-06-17 Microsoft Corporation Synchronizing state among load balancer components
US9065866B2 (en) 2010-12-29 2015-06-23 Citrix Systems, Inc. Systems and methods for policy based integration to horizontally deployed WAN optimization appliances
US8477730B2 (en) 2011-01-04 2013-07-02 Cisco Technology, Inc. Distributed load management on network devices
WO2012097015A2 (en) 2011-01-11 2012-07-19 A10 Networks Inc. Virtual application delivery chassis system
US8732267B2 (en) 2011-03-15 2014-05-20 Cisco Technology, Inc. Placement of a cloud service using network topology and infrastructure performance
CN102143075B (zh) * 2011-03-28 2013-08-07 中国人民解放军国防科学技术大学 实现负载均衡的方法和系统
KR101246889B1 (ko) 2011-04-15 2013-03-25 서강대학교산학협력단 중첩된 망 환경에서 하향 수직 핸드오버시의 데이터 전송률 제어방법 및 시스템
KR101528825B1 (ko) 2011-04-18 2015-06-15 닛본 덴끼 가부시끼가이샤 단말, 제어 장치, 통신 방법, 통신 시스템, 통신 모듈, 프로그램 및 정보 처리 장치
US9154577B2 (en) 2011-06-06 2015-10-06 A10 Networks, Inc. Sychronization of configuration file of virtual application distribution chassis
JP5848062B2 (ja) 2011-08-24 2016-01-27 株式会社Nttドコモ 基地局及びシステム情報通知方法
US9629048B2 (en) 2011-09-29 2017-04-18 Samsung Electronics Co., Ltd. Mobile communication system and method of information processing for improving user experience in the mobile communication system
US8804620B2 (en) 2011-10-04 2014-08-12 Juniper Networks, Inc. Methods and apparatus for enforcing a common user policy within a network
US8885463B1 (en) 2011-10-17 2014-11-11 Juniper Networks, Inc. Path computation element communication protocol (PCEP) extensions for stateful label switched path management
US8897154B2 (en) 2011-10-24 2014-11-25 A10 Networks, Inc. Combining stateless and stateful server load balancing
US8918501B2 (en) 2011-11-10 2014-12-23 Microsoft Corporation Pattern-based computational health and configuration monitoring
EP2749118B1 (en) 2011-11-23 2018-01-10 Telefonaktiebolaget LM Ericsson (publ) Improving tcp performance in a cellular network
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
US8874790B2 (en) 2011-12-30 2014-10-28 Verisign, Inc. DNS package in a partitioned network
US9380635B2 (en) 2012-01-09 2016-06-28 Google Technology Holdings LLC Dynamic TCP layer optimization for real-time field performance
JP2013152095A (ja) 2012-01-24 2013-08-08 Sony Corp 時刻制御装置、時刻制御方法、およびプログラム
US10044582B2 (en) 2012-01-28 2018-08-07 A10 Networks, Inc. Generating secure name records
KR101348739B1 (ko) 2012-02-22 2014-01-08 유대영 엘이디조명장치 및 그를 가지는 엘이디조명시스템
US8819275B2 (en) 2012-02-28 2014-08-26 Comcast Cable Communications, Llc Load balancing and session persistence in packet networks
US9350671B2 (en) 2012-03-22 2016-05-24 Futurewei Technologies, Inc. Supporting software defined networking with application layer traffic optimization
US9386128B2 (en) 2012-03-23 2016-07-05 Qualcomm Incorporated Delay based active queue management for uplink traffic in user equipment
US9386085B2 (en) 2012-04-04 2016-07-05 Radware, Ltd. Techniques for providing scalable application delivery controller services
CN104246738B (zh) 2012-04-19 2017-02-01 英派尔科技开发有限公司 本地迁移
US9027129B1 (en) 2012-04-30 2015-05-05 Brocade Communications Systems, Inc. Techniques for protecting against denial of service attacks
US8855014B2 (en) 2012-06-15 2014-10-07 Cisco Technology, Inc. Distributed stateful path computation element overlay architecture
WO2013189024A1 (en) 2012-06-19 2013-12-27 Hewlett-Packard Development Company, L.P. Server site selection
US8782221B2 (en) * 2012-07-05 2014-07-15 A10 Networks, Inc. Method to allocate buffer for TCP proxy session based on dynamic network conditions
US9641650B2 (en) 2012-08-23 2017-05-02 Telefonaktiebolaget Lm Ericsson (Publ) TCP proxy server
US9843484B2 (en) 2012-09-25 2017-12-12 A10 Networks, Inc. Graceful scaling in software driven networks
US10002141B2 (en) 2012-09-25 2018-06-19 A10 Networks, Inc. Distributed database in software driven networks
JP2015534769A (ja) 2012-09-25 2015-12-03 エイ10 ネットワークス インコーポレイテッドA10 Networks, Inc. データネットワークにおける負荷分散
US10021174B2 (en) 2012-09-25 2018-07-10 A10 Networks, Inc. Distributing service sessions
US9106561B2 (en) 2012-12-06 2015-08-11 A10 Networks, Inc. Configuration of a virtual service network
US9338225B2 (en) 2012-12-06 2016-05-10 A10 Networks, Inc. Forwarding policies on a virtual service network
US9531846B2 (en) 2013-01-23 2016-12-27 A10 Networks, Inc. Reducing buffer usage for TCP proxy session based on delayed acknowledgement
US9088612B2 (en) 2013-02-12 2015-07-21 Verizon Patent And Licensing Inc. Systems and methods for providing link-performance information in socket-based communication devices
US9900252B2 (en) 2013-03-08 2018-02-20 A10 Networks, Inc. Application delivery controller and global server load balancer
US20140258465A1 (en) 2013-03-11 2014-09-11 Cisco Technology, Inc. Identification of originating ip address and client port connection to a web server via a proxy server
WO2014144837A1 (en) 2013-03-15 2014-09-18 A10 Networks, Inc. Processing data packets using a policy based network path
EP2981892B1 (en) 2013-04-01 2020-05-06 OC Acquisition LLC Update management for a distributed computing system
US9692775B2 (en) 2013-04-29 2017-06-27 Telefonaktiebolaget Lm Ericsson (Publ) Method and system to dynamically detect traffic anomalies in a network
WO2014179753A2 (en) 2013-05-03 2014-11-06 A10 Networks, Inc. Facilitating secure network traffic by an application delivery controller
US10027761B2 (en) 2013-05-03 2018-07-17 A10 Networks, Inc. Facilitating a secure 3 party network session by a network device
US9225638B2 (en) 2013-05-09 2015-12-29 Vmware, Inc. Method and system for service switching using service tags
EP3000255A1 (en) 2013-05-20 2016-03-30 Telefonaktiebolaget LM Ericsson (publ) Congestion control in a communications network
US9319476B2 (en) 2013-05-28 2016-04-19 Verizon Patent And Licensing Inc. Resilient TCP splicing for proxy services
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
US9942162B2 (en) 2014-03-31 2018-04-10 A10 Networks, Inc. Active application response delay time
US9917851B2 (en) 2014-04-28 2018-03-13 Sophos Limited Intrusion detection using a heartbeat
US9906422B2 (en) 2014-05-16 2018-02-27 A10 Networks, Inc. Distributed system to determine a server's health
US9986061B2 (en) 2014-06-03 2018-05-29 A10 Networks, Inc. Programming a data network device using user defined scripts
US10129122B2 (en) 2014-06-03 2018-11-13 A10 Networks, Inc. User defined objects for network devices
US10268467B2 (en) 2014-11-11 2019-04-23 A10 Networks, Inc. Policy-driven management of application traffic for providing services to cloud-based applications
US9716664B2 (en) 2014-12-03 2017-07-25 Cisco Technology, Inc. Tracking queuing delay and performing related congestion control in information centric networking

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7881215B1 (en) * 2004-03-18 2011-02-01 Avaya Inc. Stateful and stateless data processing

Also Published As

Publication number Publication date
US8897154B2 (en) 2014-11-25
US20180124169A1 (en) 2018-05-03
IN2014CN03764A (ko) 2015-09-25
KR101632187B1 (ko) 2016-06-21
HK1198565A1 (en) 2015-05-15
WO2013070391A1 (en) 2013-05-16
JP2015507380A (ja) 2015-03-05
EP2772026B1 (en) 2017-02-08
US20130100958A1 (en) 2013-04-25
US9270774B2 (en) 2016-02-23
EP2772026A1 (en) 2014-09-03
US20160156708A1 (en) 2016-06-02
EP2772026A4 (en) 2015-05-27
CN104067569A (zh) 2014-09-24
US9906591B2 (en) 2018-02-27
US10484465B2 (en) 2019-11-19
JP5913609B2 (ja) 2016-04-27
CN104067569B (zh) 2017-02-22
US20150039671A1 (en) 2015-02-05

Similar Documents

Publication Publication Date Title
KR101632187B1 (ko) 무상태 및 유상태 서버 부하 분산 결합 방법
US10447775B2 (en) System and method to balance servers based on server load status
US9979801B2 (en) Methods to manage services over a service gateway
US9942152B2 (en) Forwarding data packets using a service-based forwarding policy
US11284126B2 (en) Method and system for streaming media live broadcast
US10038693B2 (en) Facilitating secure network traffic by an application delivery controller
US9674112B2 (en) Application aware network virtualization
US8706864B1 (en) Behavior monitoring and compliance for multi-tenant resources
US20150350379A1 (en) Programming a data network device using user defined scripts
US20140297844A1 (en) Application Traffic Prioritization
US10680955B2 (en) Stateless and reliable load balancing using segment routing and TCP timestamps
CN114513465A (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: 20190515

Year of fee payment: 4