KR100426306B1 - 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법 - Google Patents

인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법 Download PDF

Info

Publication number
KR100426306B1
KR100426306B1 KR10-2001-0078193A KR20010078193A KR100426306B1 KR 100426306 B1 KR100426306 B1 KR 100426306B1 KR 20010078193 A KR20010078193 A KR 20010078193A KR 100426306 B1 KR100426306 B1 KR 100426306B1
Authority
KR
South Korea
Prior art keywords
server
sip
response message
load
sld
Prior art date
Application number
KR10-2001-0078193A
Other languages
English (en)
Other versions
KR20030047543A (ko
Inventor
현욱
허미영
강신각
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR10-2001-0078193A priority Critical patent/KR100426306B1/ko
Priority to US10/314,940 priority patent/US20030110257A1/en
Publication of KR20030047543A publication Critical patent/KR20030047543A/ko
Application granted granted Critical
Publication of KR100426306B1 publication Critical patent/KR100426306B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/42Loop networks
    • H04L12/427Loop networks with decentralised control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • H04L65/1104Session initiation protocol [SIP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1036Load balancing of requests to servers for services different from user content provisioning, e.g. load balancing across domain name servers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

인트라 도메인내에서의 SIP(Session Initiation Protocol) 서버간 로드 분산 처리 방법을 개시한다.
본 발명은 분산 처리와 기능별 서버 특성화를 통하여 하나의 대표 프락시(proxy)로 집중되는 부하들을 분산시킴으로써 최대 콜 처리 용량을 극대화시킴과 동시에 기존 프락시 서버와의 상호 운용성을 보장할 수 있다.

Description

인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법{METHOD FOR PROVIDING A LOAD DISTRIBUTED PROCESSING AMONG SESSION INITIATION PROTOCOL SERVERS}
본 발명은 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 기술에 관한 것으로, 특히, DB 검색 기능과 서버간 부하 분산 기법을 취합하여 대용량 SIP 트래픽을 신속히 처리하는데 용이한 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법에 관한 것이다.
현재, IETF RFC2543의 SIP 표준에서는 한 도메인내에서의 대용량 콜 처리 또는 프락시 서버의 부하를 분산시키기 위한 목적으로 리-다이렉트(Redirect) 서버를 이용한 사용자 위치 정보 검색 기능이 제시되고 있다.
특정 도메인에 도달한 콜이 처리되는 방식은, 하나의 프락시에 의한 일괄처리 기법과, 리-다이렉트 서버를 이용한 기능 분산 기법으로 나뉠 수 있다.
먼저, 하나의 프락시에 의해 일괄처리 되는 경우에는 구성이 간단하고 비용이 적게 드는 장점이 있는 반면, 대용량 트래픽 처리가 불가능하고 많은 수의 사용자에게 서비스를 제공할 수 없다는 단점을 지니고 있다. 특히, 이러한 기법은 사용자 위치 정보 DB가 크면 클수록 그 성능은 저하될 수밖에 없다는 치명적인 문제를 지니고 있다.
나머지 리-다이렉트 서버를 사용한 기능 분산 기법은, 콜에 대한 상태 관리 및 전송은 프락시 서버에 일임하고, 해당 사용자의 위치 검색을 리-다이렉트 서버에서 수행토록 하는 역할 분담 기법을 의미한다. 즉, 서버의 부하가 많이 걸리고 처리 시간이 상대적으로 많이 요구되는 DB 관리 루틴을 리-다이렉트 서버에게 맡기고 프락시 서버에서는 콜에 대한 관리만을 수행하도록 기능을 분산시킴으로써 서비스 처리 속도를 향상시킬 수 있다.
대용량 SIP 트래픽을 처리하기 위해서는 후자의 방식이 선호되고 있으나, 후자의 경우 '3xx' 계열 리-다이렉트 메시지를 프락시가 다시 재처리하는데 따른 시간상의 손실 및 프락시의 부하 증가 등의 문제점이 발생될 수 있으며, 동시에 여러 대의 서버를 구동시키기 위해서 표준에서 제시되지 않은 다른 방법들을 적용할 수밖에 없다는 문제가 제기되었다.
본 발명은 상술한 문제를 해결하기 위해 안출한 것으로, 기존 프락시 서버들과의 호환성 및 확장성을 유지한 상태에서 DB 검색 기능과 서버간 부하 분산 기능을 취합하여 대용량 SIP 트래픽을 처리함으로써, 동시에 여러 대의 서버를 구동시키면서도 서비스 성능을 향상시키도록 한 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법을 제공하는데 그 목적이 있다.
이러한 목적을 달성하기 위한 본 발명의 일 실시예에 따르면, DB 검색 기능과 서버간 부하 분산 기능을 취합하여 SIP 요청 메시지를 처리하는 SLD 서버를 구비하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법에 있어서, 임의의 도메인의 대표 프락시 서버에서 SIP 요청 메시지가 수신되는지를 판단하고, SIP 요청 메시지가 수신되면 수신한 요청 메시지를 대표 프락시 서버에서 SLD 서버로 전송하는 단계와; SLD 서버에서 해당 사용자의 위치 정보들을 검색하고, 검색 결과가 존재하는 경우, SIP 요청 메시지에 검색 결과 레코드를 추가하는 단계와; 사전 데이터베이스화된 부하 관리 테이블(Load Management Table)에서 부하가 가장 낮은 서버를 검색하고, 검색되는 서버의 레코드에 대하여 SIP 요청 메시지에 대한 부하 증가분을 반영하는 단계와; 검색된 서버로 SIP 요청 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법을 제공한다.
본 발명의 목적을 달성하기 위한 다른 실시예에 따르면, DB 검색 기능과 서버간 부하 분산 기능을 취합하여 SIP 응답 메시지를 처리하는 SLD 서버를 구비하는인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법에 있어서, 임의의 대표 프락시 서버로부터 SLD 서버로 SIP 응답 메시지가 수신되면, 수신되는 SIP 응답 메시지의 응답 코드를 판단하는 단계와; 단계의 판단 결과, 응답 코드가 최종 응답(Final Response) 메시지이면, 대표 프락시 서버에 대해서 테이블의 부하 관련 정보를 변경하고, 대표 프락시 서버에 대한 부하 감소분을 적용한 후, 대표 프락시 서버로 SIP 응답 메시지를 전송하는 단계와; 단계의 판단 결과, 응답 코드가 최종 응답 메시지가 아니고 '420' 계열 응답 메시지이면, 인바이트(INVITE) 요청 메시지를 생성하여 하위 프락시 서버로 전송하고, 하위 프락시 서버에 대한 부하 증가분을 적용한 후, 하위 프락시 서버로 상기 SIP 응답 메시지를 전송하는 단계와; 단계의 판단 결과, 응답 코드가 최종 응답 메시지도 아니면서 '420' 계열의 응답 메시지도 아니면 대표 프락시 서버로 SIP 응답 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 제공한다.
도 1은 본 발명의 일 실시예에 따른 SIP 요청 메시지 수신시의 SIP 서버간 로드 분산 처리 과정의 흐름도,
도 2는 본 발명의 다른 실시예에 따른 SIP 응답 메시지 수신시의 SIP 서버간 로드 분산 처리 과정의 흐름도,
도 3은 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 예시 도면으로서, 대표 프락시 서버로 인바이트 요청 메시지 전송시 SLD(SIP Load Distributor) 서버에 의해 인바이트 요청 메시지가 UA로 전달되는 과정을 설명하기 위한 도면,
도 4는 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 최종 응답 메시지 전송시 SLD 서버에 의해 최종 응답 메시지가 상위 서버로 전달되는 과정을 설명하기 위한 도면,
도 5는 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 정보 응답(InformationalResponse) 메시지 전송시 SLD 서버에 의해 정보 응답 메시지가 상위 서버로 전달되는 과정을 설명하기 위한 도면,
도 6은 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 베드 익스텐션 응답(Bad Extension Response) 메시지 전송시 SLD 서버에 의해 베드 익스텐션 응답 메시지가 처리되어 새로운 인바이트 메시지를 생성하여 보내는 과정을 설명하기 위한 도면.
<도면의 주요부분에 대한 부호의 설명>
10 : 대표 프락시 서버
20 : SLD 서버
30 : 콘택트 리스트 테이블
40 : 로드 메니지먼트 테이블
50, 52 : UA
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대하여 상세하게 설명한다.
설명에 앞서, 본 발명은 기존 프락시 서버들과의 호환성 및 확장성을 유지한 상태에서 리-다이렉트 서버를 사용하는 경우의 장점인 DB 기능 전담 부분과 부하 분산 기법의 장점인 서버간 부하 균형 기법을 취합하여 대용량 SIP 트래픽을 최대한 빨리 처리한다는 것으로, 이러한 기술 사상으로부터 본 발명에서 목적으로 하는바를 용이하게 달성할 수 있을 것이다.
즉, 본 발명은 여러 대의 서버로 부하를 분산시켜 한 서버에 콜 요청이 집중되지 않도록 한다는 것으로, 단순한 복수개의 서버로 인한 분산 뿐 아니라 기능상의 분담을 통해 전문적으로 DB를 검색하고, 서버간 부하를 관리하는 서버와 콜 요청에 대한 관리/처리 기능을 전담하는 프락시 서버로 기능 분담 및 동시 처리하여 대용량 콜에 대한 신속한 서비스 처리를 구현한 것을 특징으로 한다.
이때, 본 발명에서는 인트라 도메인내 각 서버들의 환경이 다음과 같이 설정된 것으로 가정한다.
먼저, 대표되는 SIP 프락시 서버는 수신한 콜 요청들을 SLD 서버에게로 전송한다. 즉, 해당 요청에 비아 헤더(Via Header)를 추가함으로써 요청에 대한 응답 메시지가 SLD 서버를 거쳐 갈 수 있도록 한다.
또한, SLD 서버에 수신된 응답 메시지는 대표 SIP 프락시 서버로 전송된다. 즉, 수신된 응답의 비아 헤더내에 기록된 주소를 토대로 해당 도메인의 대표 SIP 프락시 서버로 수신 응답 메시지가 전송된다.
또한, SLD 서버는 하위 프락시 서버들의 정보들을 모두 인지하고 있다. 이는 관리자의 설정을 통해서 이루어질 수 있으며, SLD 서버는 하위 프락시 서버들의 특성 정보, 주소 정보 등을 사전 인지하고 있는 것으로 가정한다.
도 1은 본 발명의 일 실시예에 따른 SIP 요청 메시지(Require-message) 수신시의 SIP 서버간 로드 분산 처리 과정의 흐름도이다.
먼저, 단계(S100)에서는 해당 도메인의 대표 프락시에서 SIP 요청 메시지가수신되는지를 판단하고, SIP 요청 메시지가 수신되면 해당 도메인의 대표 프락시는 수신한 요청 메시지를 SLD 서버로 전송한다.
SLD 서버가 요청 메시지를 수신한 경우, 단계(S102)로 진행한다.
단계(S102)에서 SLD 서버는 요청-URI에 기록된 주소에 의거하여 레지스트라 DB(Registrar DB)를 검색하여 해당 사용자의 위치 정보들을 검색하고 단계(S104)로 진행하여 검색 결과 존재 유무를 판단한다.
단계(S104)에서의 판단 결과, 검색 결과가 존재하지 않을 경우, SLD 서버는 단계(S106)로 진행하여 '404' 계열 응답 메시지, 예컨대, "Not found" 응답 메시지를 생성하고 생성된 응답 메시지를 상위 서버인 대표 프락시 서버로 전송한다.
그러나, 단계(S104)에서의 판단 결과, 검색 결과가 존재하는 경우, SLD 서버는 단계(S108)로 진행하여 SIP 요청 메시지에 검색 결과 레코드를 추가한다.
즉, 프록시 요청(Proxy-Require) 헤더를 추가하고(Proxy-Require : PreLoadedContact), 추가된 헤더의 내용에 검색된 사용자 위치 정보를 등록하며, 비아 헤더를 추가한다.
단계(S110)에서는 로드 메니지먼트 테이블(Load Management Table : 부하 관리 테이블)에서 현재 가장 부하가 낮은 서버를 검색하고 단계(S112)로 진행한다.
단계(S112)에서는 검색 결과, 즉, 부하가 가장 낮은 검색 서버에 대한 레코드에 대하여 지나간 요청 메시지에 대한 부하 증가분 A를 반영한다. 즉, 로드 메니지먼트 테이블에서 검색된 해당 서버에 대한 테이블의 부하 관련 정보를 변경하고, 해당 서버에 대한 부하 증가분 A를 반영하는 것이다.
끝으로 단계(S114)에서는 검색된 서버로 SIP 요청 메시지를 전송하고 도 1의 과정을 종료한다.
도 2는 본 발명의 다른 실시예에 따른 SIP 응답 메시지(Response message) 수신시의 SIP 서버간 로드 분산 처리 과정의 흐름도이다.
먼저, 단계(S200)에서 SLD 서버가 대표 프락시 서버로부터 응답 메시지를 수신한 경우, SLD 서버는 단계(S202)로 진행하여 자신의 콜 관리 테이블을 검색한 후, 단계(S204)로 진행하여 검색 결과 존재 유무를 판단한다.
단계(S204)의 판단 결과, 검색 결과가 존재하면 SLD 서버는 단계(S208)로 진행하여 비아 헤더 및 레코드 라우트 헤더를 삭제한 후, 단계(S210)로 진행하여 응답 코드를 판단한다.
단계(S210)에서의 응답 코드 판단 결과, 최종 응답(Final Response) 메시지를 수신한 경우로 판단되면, 단계(S212)로 진행하여 응답을 전송한 서버에 대해서 테이블의 부하 관련 정보를 변경하고, 해당 서버에 대한 부하 감소분 A를 적용한 후, 단계(S214)로 진행한다.
단계(S214)에서는 상위 서버인 대표 프락시 서버로 SIP 응답 메시지를 전송한다.
만일, 단계(S210)에서의 응답 코드 판단 결과, 최종 응답 메시지를 수신한 경우가 아니면서 '420' 계열의 응답 메시지, 예컨대, "Bad Extension" 응답 메시지인 경우에는 단계(S216) 및 단계(S218)로 진행하여 인바이트(INVITE) 요청 메시지를 생성하거나 전에 수신하여 유지한 원래 요청 메시지를 하위 프락시 서버로 전송하고, 해당 서버에 대한 부하 증가분 B를 적용한 후, 단계(S220)로 진행한다.
단계(S220)에서는 하위 프락시 서버로 SIP 응답 메시지를 전송한다.
그러나, 단계(S210)에서의 응답 코드 판단 결과, 최종 응답이 아니면서 '420' 계열의 응답 메시지를 수신한 경우가 아닐 경우에는 상위 서버인 대표 프락시로 SIP 응답 메시지를 전송한다.
한편, SLD 서버로부터 "PreLoadedContact"가 적용된 메시지를 수신한 경우, 프락시 서버의 내부 동작 과정은 다음과 같다.
먼저, "PreLoadedContact" 헤더를 지원하는 경우에는, "PreLoadedContact" 헤더에 명시된 주소들에 대하여 "PreLoadedContact" 헤더와 프록시 요청 헤더를 삭제한 상태에서 비아 헤더만 추가하여 메시지를 송신하고, 포킹(Forking)을 지원할 경우 명시된 모든 주소에 대해 동시 또는 순차적으로 메시지를 전송한다.
만일, "PreLoadedContact" 헤더를 지원하지 않는 경우에는 '420' 계열의 응답 메시지, 예컨대, "Not supported" 응답 메시지를 생성하여 SLD 서버로 전송한다.
이하에서는, 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 메시지 전달 과정에 따른 실시예들을 참조하여 보다 상세히 설명하기로 한다.
도 3은 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 예시 도면으로서, 대표 프락시 서버로 인바이트 요청 메시지 전송시 SLD 서버에 의해 인바이트 요청 메시지가 UA로 전달되는 과정을 설명하기위한 도면이다.
도 3에 도시한 바와 같이, 해당 도메인의 대표 프락시(a.com)(10)에 수신된 인바이트 요청 메시지는 비아 헤더만 추가한 상태로 SLD 서버(20)로 전송되며, 이때의 메시지 전달 정보는 다음과 같다.
INVITEuser@a.com
Via : a.com
Via : caller_ID@caller_IP
인바이트 요청 메시지를 수신한 SLD 서버(20)는 도 1에서 설명한 바와 같이, 해당 요청-URI에 기록된 user@a.com의 주소에 대한 콘택트 주소들을 콘택트 리스트 테이블(30)에서 검색하고, 검색 결과에 따라 수신한 메시지에 "PreLoadedContact" 헤더 형태를 부가한다.
이때, 본 실시예에 따른 "PreLoadedContact" 헤더는 다음 프락시 서버로 이 헤더의 지원 유무를 알려주기 위해 프락시-요청 헤더를 추가한다.
그리고, SLD 서버(20)는 SLD 서버(20)의 내부 데이터베이스의 로드 메니지먼트 테이블(40)을 검색하여 현재 시점에서 가장 부하가 낮게 걸려있는 서버를 검색하고, 해당 서버가 검색되면 해당 테이블 값에 대하여 새로운 메시지 처리를 위해 걸리는 부하 증가분 A를 반영한 다음 해당 서버의 주소로 인바이트 요청 메시지를 전송한다.
이때의 메시지 전달 정보는 다음과 같다.
INVITE user@a.com
Proxy-Require : PreLoadedContact
PreLoadedContact : IP1, IP2
Via : sl.a.com
Via : a.com
Via : caller_ID@caller_IP
이러한 메시지를 수신한 내부 프락시 서버는, 메시지내에 상술한 바와 같은 "PreLoadedContact" 헤더 정보가 부가되어 있으므로, 사용자 위치 정보를 찾기 위한 DB 검색 과정을 거치지 않고 헤더 정보에 명기된 주소 정보를 이용하여 포킹(Forking) 과정을 통해 명기된 주소들에 대해 인바이트 요청 메시지를 전송하게 된다. 이하의 과정은 일반 프락시 서버에서 수행되는 동작 과정과 동일한 바, 구체적인 설명은 생략하기로 한다.
도 4는 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 최종 응답(Final Response) 메시지 전송시 SLD 서버에 의해 최종 응답 메시지가 상위 서버로 전달되는 과정을 설명하기 위한 도면이다.
먼저, 포킹을 통해 여러 곳으로 보내진 메시지에 대하여 한 곳에서 '200' 계열의 응답 메시지, 즉, 최종 응답 메시지가 UA(50)에서 내부 프락시 서버(proxy1.a.com)로 전송되면, 이러한 '200' 계열 응답 메시지는 상위 서버인 SLD 서버(20)로 즉시 전송된다. 또한, 내부 프락시 서버는 나머지 UA(52)로 취소(cancel) 메시지를 전송한다. 이때의 메시지 전달 정보는 다음과 같다.
200 OK
Via : sl.a.com
Via : caller_ID@caller_IP
이러한 최종 응답 메시지를 수신한 SLD 서버(20)는 해당 응답 메시지를 상위 서버로 올려줌과 동시에 내부 프락시들의 부하를 관리하는 로드 메니지먼트 테이블(40)에서 해당 응답의 처리로 인한 부하 감소분 A를 적용하여 해당 서버의 부하가 낮아졌음을 내부 데이터베이스에 기록한다. 이후, 응답 메시지는 비아만 제거된 상태에서 상위 서버인 대표 프락시 서버(10)로 전달된다. 이때의 메시지 전달 정보는 다음과 같다.
200 OK
Via : a.com
Via : caller_ID@caller_IP
이러한 응답 메시지를 수신한 대표 프락시 서버(10)는 도시 생략된 상위 서버로 다음과 같은 메시지를 전달한다.
200 OK
Via : caller_ID@caller_IP
도 5는 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 정보 응답(Informational Response) 메시지 전송시 SLD 서버에 의해 정보 응답 메시지가 상위 서버로 전달되는 과정을 설명하기 위한 도면이다.
먼저, UA(50)로부터 '180' 계열 메시지, 예컨대, 링 응답 메시지가 내부 프락시 서버(proxy1.a.com)로 전송되면, 내부 프락시 서버는 이러한 메시지를 상위 서버, 즉, SLD 서버(20)로 지체 없이 전송한다.
SLD 서버(20)에서는 내부 DB에 대한 작업 없이 이러한 링 응답 메시지를 상위 서버인 대표 프락시 서버(a.com)(10)로 전송한다.
이후, 대표 프락시 서버(10)는 도시 생략된 상위 서버로 링 응답 메시지를 전송한다.
도 6은 본 발명에 따른 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법을 설명하기 위한 도면으로서, 대표 프락시 서버로 '420' 계열 응답 메시지, 예컨대, 베드 익스텐션 응답(Bad Extension Response) 메시지 전송시 SLD 서버에 의해 베드 익스텐션 응답 메시지가 하위 서버로 전달되는 과정을 설명하기 위한 도면이다.
도 6에 도시한 바와 같이, 내부 프락시 서버(프락시 1)가 새로 정의된 "PreLoadedContact" 헤더를 추가하지 않고 원래 수신한 인바이트 메시지에 자신의 주소인 비아만 추가한 상태로 전송을 하게 되며, 내부 프락시 서버(프락시 1)가 직접 콘택트 리스트 테이블(30)에 액세스하여 'user@a.com'에 대한 콘택트 주소들을 검색한 후 나머지 과정을 처리하게 된다.
이상, 본 발명을 실시예에 근거하여 구체적으로 설명하였지만, 본 발명은 이러한 실시예에 한정되는 것이 아니라, 그 요지를 벗어나지 않는 범위내에서 여러 가지 변형이 가능한 것은 물론이다.
이상 설명한 바와 같이 본 발명에 따르면, 대용량의 SIP를 사용한 통화 요청을 동시에 처리할 수 있는 서버군의 생성 및 기능별 부하 분담을 통하여 각 서버들의 특징을 특성화할 수 있으며, SLD 서버에서 데이터베이스에 대한 접근 및 내부 프락시 서버들의 상태를 관리해 줌으로써 서비스 관리의 편리성 및 효율성을 증진시키는 효과가 있다.

Claims (8)

  1. DB 검색 기능과 서버간 부하 분산 기능을 취합하여 SIP 요청 메시지를 처리하는 SLD(SIP Load Distributor) 서버를 구비하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법에 있어서,
    임의의 도메인의 대표 프락시 서버에서 SIP 요청 메시지가 수신되는지를 판단하고, 상기 SIP 요청 메시지가 수신되면 상기 수신한 요청 메시지를 상기 대표 프락시 서버에서 상기 SLD 서버로 전송하는 단계와;
    상기 SLD 서버에서 해당 사용자의 위치 정보들을 검색하고, 검색 결과가 존재하는 경우, 상기 SIP 요청 메시지에 검색 결과 레코드를 추가하는 단계와;
    사전 데이터베이스화된 부하 관리 테이블(Load Management Table)에서 부하가 가장 낮은 서버를 검색하고, 검색되는 서버의 레코드에 대하여 상기 SIP 요청 메시지에 대한 부하 증가분을 반영하는 단계와;
    상기 검색된 서버로 SIP 요청 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법.
  2. 제 1 항에 있어서,
    상기 방법은,
    상기 사용자 위치 정보 검색 결과, 검색 결과가 존재하지 않을 경우, 상기 SLD 서버에서 '404' 계열 응답 메시지를 생성하여 상위 서버인 대표 프락시 서버로전송하는 단계를 더 포함하는 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법.
  3. 제 1 항에 있어서,
    상기 검색 결과 레코드 추가 단계는,
    프록시 요청(Proxy-Require) 헤더를 추가하고, 추가된 헤더의 내용에 상기 검색된 사용자 위치 정보를 등록하며, 비아 헤더(Via Header)를 추가하는 단계인 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법.
  4. 제 1 항에 있어서,
    상기 부하 증가분 반영 단계는,
    상기 부하 관리 테이블에서 검색되는 해당 서버에 대한 테이블의 부하 관련 정보를 변경하고, 상기 서버에 대한 부하 증가분을 반영하는 단계인 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법.
  5. 제 2 항에 있어서,
    상기 '404' 계열 응답 메시지는 "Not Found" 응답 메시지인 것을 특징으로 하는 인트라 도메인에서의 SIP 서버간 로드 분산 처리 방법.
  6. DB 검색 기능과 서버간 부하 분산 기능을 취합하여 SIP 응답 메시지를 처리하는 SLD 서버를 구비하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법에 있어서,
    임의의 대표 프락시 서버로부터 상기 SLD 서버로 SIP 응답 메시지가 수신되면, 수신되는 SIP 응답 메시지의 응답 코드를 판단하는 단계와;
    상기 단계의 판단 결과, 상기 응답 코드가 최종 응답(Final Response) 메시지이면, 상기 대표 프락시 서버에 대해서 테이블의 부하 관련 정보를 변경하고, 상기 대표 프락시 서버에 대한 부하 감소분을 적용한 후, 상기 대표 프락시 서버로 상기 SIP 응답 메시지를 전송하는 단계와;
    상기 단계의 판단 결과, 상기 응답 코드가 최종 응답 메시지가 아니고 '420' 계열 응답 메시지이면, 인바이트(INVITE) 요청 메시지를 생성하여 상기 하위 프락시 서버로 전송하고, 상기 하위 프락시 서버에 대한 부하 증가분을 적용한 후, 상기 하위 프락시 서버로 상기 SIP 응답 메시지를 전송하는 단계와;
    상기 단계의 판단 결과, 상기 응답 코드가 최종 응답 메시지도 아니면서 상기 '420' 계열의 응답 메시지도 아니면, 상위 대표 프락시 서버로 상기 SIP 응답 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법.
  7. 제 6 항에 있어서,
    상기 방법은,
    상기 대표 프락시 서버로부터 상기 SLD 서버로 상기 SIP 응답 메시지가 수신되면, 상기 SLD 서버에서 콜 관리 테이블을 검색하고, 검색 결과가 존재하면 상기 SLD 서버는 비아 헤더 및 레코드 라우트 헤더를 삭제하는 단계를 더 포함하는 것을 특징으로 하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법.
  8. 제 6 항에 있어서,
    상기 '420' 계열 응답 메시지는 "Bad Extension" 응답 메시지인 것을 특징으로 하는 인트라 도메인내에서의 SIP 서버간 로드 분산 처리 방법.
KR10-2001-0078193A 2001-12-11 2001-12-11 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법 KR100426306B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR10-2001-0078193A KR100426306B1 (ko) 2001-12-11 2001-12-11 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법
US10/314,940 US20030110257A1 (en) 2001-12-11 2002-12-10 Method for performing a load distribution between session initiation protocol servers within an intra domain

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0078193A KR100426306B1 (ko) 2001-12-11 2001-12-11 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법

Publications (2)

Publication Number Publication Date
KR20030047543A KR20030047543A (ko) 2003-06-18
KR100426306B1 true KR100426306B1 (ko) 2004-04-08

Family

ID=19716886

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0078193A KR100426306B1 (ko) 2001-12-11 2001-12-11 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법

Country Status (2)

Country Link
US (1) US20030110257A1 (ko)
KR (1) KR100426306B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100472952B1 (ko) * 2002-10-30 2005-03-10 한국전자통신연구원 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7957401B2 (en) 2002-07-05 2011-06-07 Geos Communications, Inc. System and method for using multiple communication protocols in memory limited processors
US9369498B2 (en) * 2003-01-30 2016-06-14 Nokia Technologies Oy Message-based conveyance of load control information
US7606217B2 (en) * 2003-07-02 2009-10-20 I2 Telecom International, Inc. System and method for routing telephone calls over a voice and data network
DE10337295A1 (de) * 2003-08-13 2005-03-10 Siemens Ag Kommunikationsserververbund für Rechnernetze
EP1528744A1 (en) * 2003-10-30 2005-05-04 Hewlett-Packard Development Company, L.P. Method and apparatus for load-balancing
US7860095B2 (en) * 2003-10-30 2010-12-28 Hewlett-Packard Development Company, L.P. Method and apparatus for load-balancing
US7676599B2 (en) * 2004-01-28 2010-03-09 I2 Telecom Ip Holdings, Inc. System and method of binding a client to a server
GB2411541B (en) * 2004-02-26 2006-09-13 Siemens Ag A sip server
WO2005086964A2 (en) * 2004-03-11 2005-09-22 I2Telecom International, Inc. DYNAMICALLY ADAPTING THE TRANSMISSION RATE OF PACKETS IN REAL-TIME VoIP COMMUNICATIONS TO THE AVAILABLE BANDWIDTH
US8804758B2 (en) 2004-03-11 2014-08-12 Hipcricket, Inc. System and method of media over an internet protocol communication
US7535905B2 (en) * 2004-03-31 2009-05-19 Microsoft Corporation Signing and validating session initiation protocol routing headers
US8089972B2 (en) 2004-05-03 2012-01-03 Level 3 Communications, Llc Registration redirect server
US8024476B2 (en) * 2004-05-21 2011-09-20 Microsoft Corporation Efficient message routing when using server pools
KR101115140B1 (ko) * 2004-06-05 2012-02-21 엘지에릭슨 주식회사 소프트스위치에서의 sip 호처리시스템과 방법
US7782878B2 (en) * 2004-08-16 2010-08-24 I2Telecom Ip Holdings, Inc. System and method for sharing an IP address
US7336654B2 (en) * 2004-10-20 2008-02-26 I2Telecom International, Inc. Portable VoIP service access module
US7734019B1 (en) 2004-12-09 2010-06-08 Level 3 Communications, Llc Systems and methods for third party emergency call termination
US9843557B2 (en) 2004-12-09 2017-12-12 Level 3 Communications, Llc Systems and methods for dynamically registering endpoints in a network
US7680060B2 (en) * 2005-03-08 2010-03-16 Cisco Technology, Inc. Transferring state information in a network
CN100558109C (zh) * 2006-05-16 2009-11-04 华为技术有限公司 基于会话初始协议的负载均衡实现方法及系统
FR2906668A1 (fr) * 2006-10-02 2008-04-04 Alcatel Sa Marqueur pour systemes de communication composes d'une pluralite de serveurs sip.
US8812579B2 (en) * 2006-12-21 2014-08-19 Verizon Patent And Licensing Inc. Apparatus for transferring data via a proxy server and an associated method and computer program product
US8504048B2 (en) 2007-12-17 2013-08-06 Geos Communications IP Holdings, Inc., a wholly owned subsidiary of Augme Technologies, Inc. Systems and methods of making a call
US8082580B1 (en) 2007-12-21 2011-12-20 Juniper Networks, Inc. Session layer pinhole management within a network security device
US20090185673A1 (en) * 2008-01-17 2009-07-23 Avaya Technology Llc Voice-Over-IP Call Recording in Call Centers
US8369323B1 (en) * 2008-02-08 2013-02-05 Juniper Networks, Inc. Managing voice-based data communications within a clustered network environment
EP2647170B1 (en) * 2010-11-30 2020-10-07 Koninklijke KPN N.V. Dynamic assignment of a serving network node

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980087398A (ko) * 1997-05-30 1998-12-05 포맨 제프리 엘 인터넷에서의 동적 경로배정 방법 및 장치
JPH11250020A (ja) * 1998-03-04 1999-09-17 Fujitsu Ltd 負荷分散システム、セション管理システム、クライアント装置、負荷分散プログラムを記録したコンピュータ読み取り可能な記録媒体、セション管理プログラムを記録したコンピュータ読み取り可能な記録媒体及びローカル代理サーバプログラムを記録したコンピュータ読み取り可能な記録媒体
KR20010075542A (ko) * 1998-10-09 2001-08-09 포만 제프리 엘 협동 캐시 서버의 부하 조정 방법
KR20020086163A (ko) * 2001-05-11 2002-11-18 에스케이 텔레콤주식회사 차세대 이동 통신 시스템의 패킷 기반 망에서의 다중 관문운용장치

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185094B2 (en) * 2001-03-30 2007-02-27 Sandcherry, Inc. Media session framework using a control module to direct and manage application and service servers
US7484240B2 (en) * 2001-07-13 2009-01-27 Nokia Corporation Mechanism to allow authentication of terminated SIP calls
KR100472952B1 (ko) * 2002-10-30 2005-03-10 한국전자통신연구원 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980087398A (ko) * 1997-05-30 1998-12-05 포맨 제프리 엘 인터넷에서의 동적 경로배정 방법 및 장치
JPH11250020A (ja) * 1998-03-04 1999-09-17 Fujitsu Ltd 負荷分散システム、セション管理システム、クライアント装置、負荷分散プログラムを記録したコンピュータ読み取り可能な記録媒体、セション管理プログラムを記録したコンピュータ読み取り可能な記録媒体及びローカル代理サーバプログラムを記録したコンピュータ読み取り可能な記録媒体
KR20010075542A (ko) * 1998-10-09 2001-08-09 포만 제프리 엘 협동 캐시 서버의 부하 조정 방법
KR20020086163A (ko) * 2001-05-11 2002-11-18 에스케이 텔레콤주식회사 차세대 이동 통신 시스템의 패킷 기반 망에서의 다중 관문운용장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100472952B1 (ko) * 2002-10-30 2005-03-10 한국전자통신연구원 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법

Also Published As

Publication number Publication date
KR20030047543A (ko) 2003-06-18
US20030110257A1 (en) 2003-06-12

Similar Documents

Publication Publication Date Title
KR100426306B1 (ko) 인트라 도메인내에서의 sip 서버간 로드 분산 처리 방법
KR100472952B1 (ko) 세션 초기화 프로토콜(sip)기반의 부하 분산장치 및방법
US7707289B1 (en) Method and system for enabling persistent access to virtual servers by an LDNS server
US9734472B2 (en) Request routing utilizing cost information
US8306022B1 (en) Method for content-aware redirection and content renaming
US7996533B2 (en) HTML delivery from edge-of-network servers in a content delivery network (CDN)
US7111006B2 (en) System and method for providing distributed database services
US8503433B2 (en) Routing methods and systems using ENUM servers
US20020078233A1 (en) Method and apparatus for content distribution network brokering and peering
US20120173677A1 (en) Request routing
US20010039585A1 (en) System and method for directing a client to a content source
US6801952B2 (en) Method and devices for providing network services from several servers
US6654795B1 (en) System and method for distribution of network file accesses over network storage devices
JPH10126445A (ja) 文脈依存の名前分解
RU2004117878A (ru) Способ и устройство для дерева распределенных серверов
US20020143946A1 (en) Software based internet protocol address selection method and system
JP4009591B2 (ja) データベースにアクセスするためのドメインネーミングシステム(dns)
KR100450605B1 (ko) 웹-어플리케이션 서버 및 그의 동적 컨텐츠 제공 방법
US20050237945A1 (en) Network comprising search functions that are integrated into communication components
KR101109524B1 (ko) 복수의 cdn 사업자를 통한 컨텐츠 분배시스템 및 방법, 그 컨텐츠 제공자 네임서버
JP2002366415A (ja) リダイレクトシステムおよびリダイレクト装置
KR20100054660A (ko) 복수의 cdn 사업자를 통한 컨텐츠 분배시스템 및 방법, 그 컨텐츠서버
GB2348565A (en) Gateway discovery
KR20100055295A (ko) 복수의 cdn 사업자를 통한 컨텐츠 분배시스템 및 방법
CA2351519A1 (en) Arrangement and method related to distributed caching

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130304

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140303

Year of fee payment: 11

LAPS Lapse due to unpaid annual fee