KR101310449B1 - Sip 메시지의 분배 시스템 및 그 방법 - Google Patents

Sip 메시지의 분배 시스템 및 그 방법 Download PDF

Info

Publication number
KR101310449B1
KR101310449B1 KR1020110133571A KR20110133571A KR101310449B1 KR 101310449 B1 KR101310449 B1 KR 101310449B1 KR 1020110133571 A KR1020110133571 A KR 1020110133571A KR 20110133571 A KR20110133571 A KR 20110133571A KR 101310449 B1 KR101310449 B1 KR 101310449B1
Authority
KR
South Korea
Prior art keywords
sip
information
internal server
message
request message
Prior art date
Application number
KR1020110133571A
Other languages
English (en)
Other versions
KR20130066857A (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 KR1020110133571A priority Critical patent/KR101310449B1/ko
Publication of KR20130066857A publication Critical patent/KR20130066857A/ko
Application granted granted Critical
Publication of KR101310449B1 publication Critical patent/KR101310449B1/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/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
    • H04L65/1104Session initiation protocol [SIP]

Abstract

본 발명은 SIP 메시지의 분배 기술에 관한 것으로, 더욱 상세하게는, SIP 요청 메시지를 특정 내부 서버로 전달할 수 있는 SIP 메시지의 분배 시스템 및 그 방법에 관한 것으로, SIP 메시지의 분배 방법은, 특정 내부 서버를 목적지로 하는 SIP 요청(Request) 메시지를 수신하는 단계; 수신된 SIP 요청(Request) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 존재하는지 검색하는 단계; 검색 결과, 세션 정보가 존재하면 검색된 세션 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계; 및 검색 결과, 내부 서버 ID 정보가 존재하면 검색된 내부 서버 ID 정보에 대한 IP 주소 및 포트 정보를 조회하고, 조회된 IP 주소 및 포트 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계를 포함한다.

Description

SIP 메시지의 분배 시스템 및 그 방법 {SYSTEM AND METHOD FOR DISTRIBUTING SIP MESSAGE}
본 발명은 SIP 메시지의 분배 기술에 관한 것으로, 더욱 상세하게는, SIP 요청 메시지를 특정 내부 서버로 전달할 수 있는 SIP 요청 메시지의 분배 시스템 및 그 방법에 관한 것이다.
일반적인 L7 스위치(로드 밸런서)는 서버들의 로드 밸런싱을 위해 사용되며, 복수 개의 웹서버가 있을 때 클라이언트가 임의의 웹서버로 접속을 시도하면, 각 서버의 부하를 고려하여 적당한 서버와 연결시켜 준다.
이때, L7 스위치는 설정에 따라 순차적 연결 또는 접속이 가장 적은 서버에 클라이언트를 연결하는 방식 등을 사용하였다.
그리고, SIP L7 스위치는 SIP(Session Initiation Protocol)를 지원하는 L7 스위치로, 일반적인 L7 스위치와 유사하게 동작한다.
즉, 보편적인 SIP L7 스위치는 내부 서버의 특성과 상황을 판단하지 않고, 새로운 SIP 요청(Request)에 대해 순차분배나 적게 할당된 내부 서버를 선택하여 SIP 요청을 분배한다.
하지만, CSCF와 같은 내부 서버는 새로운 SIP 요청(Request)임에도 불구하고 L7의 선택과정을 거치지 않고 특정 서버로 전달되어야 하는 특성이 있어, 보편적인 SIP L7 스위치 기능 수행만으로는 이를 해결할 수 없는 문제점이 있다.
따라서, 내부 서버의 특성과 상황에 따라 특정 내부 서버로 SIP 요청(Request)을 전달할 수 있는 새로운 분산 방법이 필요하다.
상술한 종래 문제를 해결하기 위해, 본 발명은 SIP 요청(Request)을 내부 서버의 특성과 상황에 따라 특정 내부 서버로 분배할 수 있는 SIP 메시지의 분배 시스템 및 그 방법을 제공하는데 목적이 있다.
상술한 목적을 이루기 위한 본 발명에 따른 일 실시 형태는, 수신된 SIP 요청 메시지로부터 브랜치 정보 및 헤더 정보 중 적어도 하나를 검색하여 세션 정보 또는 내부 서버 ID 정보를 확인하는 SIP 메시지 분석부; 확인된 세션 정보 또는 내부 서버 ID 정보를 이용해 상기 수신된 SIP 요청 메시지를 특정 내부 서버로 분배하는 SIP 메시지 처리부; 및 상기 확인된 세션 정보 또는 내부 서버 ID 정보에 해당하는 내부 서버 ID별 매핑된 IP 주소 및 포트 정보를 저장하는 목적지 주소 관리부;를 포함하는 SIP 메시지 분배 서버를 포함한다.
한편, 상술한 목적을 이루기 위한 본 발명에 따른 다른 실시 형태는, SIP 메시지 분배 서버의 SIP 메시지의 분배 방법에 있어서, 특정 내부 서버를 목적지로 하는 SIP 요청(Request) 메시지를 수신하는 단계; 수신된 SIP 요청(Request) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 존재하는지 검색하는 단계; 검색 결과, 세션 정보가 존재하면 검색된 세션 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계; 및 검색 결과, 내부 서버 ID 정보가 존재하면 검색된 내부 서버 ID 정보에 대한 IP 주소 및 포트 정보를 조회하고, 조회된 IP 주소 및 포트 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계;를 포함하는 SIP 메시지의 분배 방법을 포함한다.
본 발명에 따르면, SIP 메시지를 순차분배 등의 임의적인 내부서버의 선택과정을 거치지 않고 특정 내부 서버로 전달할 수 있다.
도 1은 본 발명의 일 실시 형태에 따른 SIP 메시지 분배 서버를 포함하는 SIP 메시지 분산 시스템의 전체 네트워크를 나타낸 구성도이다.
도 2는 도 1에 도시된 SIP 메시지 분배 서버의 상세 구성을 나타낸 구성도이다.
도 3은 도 1에 도시된 SIP 메시지 분배 서버에서 관리하는 주소 맵을 나타낸 예시도이다.
도 4는 본 발명의 일 실시 형태에 따른 SIP 메시지 분배 방법을 설명하기 위한 순서도이다.
도 5는 도 4에 도시된 SIP 메시지 분배 방법에서 세션 정보를 이용한 분배 과정에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다.
도 6은 도 4에 도시된 SIP 메시지 분배 방법에서 SIP 메시지의 ROUTE를 이용한 분배 과정에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다.
도 7은 도 4에 도시된 SIP 메시지 분배 방법에서 SIP 메시지의 REQUEST-URI를 이용한 분배 과정에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다.
이하, 본 발명의 실시예에 대해 첨부한 도면을 참고로 하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 또한, 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였다. 그리고, 명세서 전체를 통하여 유사한 부분에 대해서는 동일한 부호를 붙였다. 또한, 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
도 1은 본 발명의 일 실시 형태에 따른 SIP 메시지 분배 서버를 포함하는 SIP 메시지 분산 시스템의 전체 네트워크를 나타낸 구성도이다.
도 1을 참조하면, 본 시스템은 발신 단말(10), SIP 메시지 분배 서버(20), 적어도 하나 이상의 내부 서버(30)를 포함한다.
발신 단말(10)은 제1네트워크에 위치하며, SIP 기반의 통신망을 구성하는 서브시스템 중에서 사용자의 편의를 위하여 동작하는 말단 시스템으로, 사용자 단말(UE) 또는 어플리케이션 서버(Application Server: AS)일 수 있다. 여기서, 발신 단말(10)의 주소는 211.1.1.1.5060인 것으로 가정한다.
SIP 메시지 분배 서버(20)는 SIP L7 스위치 기능을 수행하며, 발신 단말(10)로부터 수신되는 SIP 메시지를 해당 내부 서버로의 분배를 수행한다.
이러한 SIP 메시지 분배 서버(20)는, 수신되는 SIP 메시지, 즉, SIP 요청(Request) 메시지를 특정 내부 서버로 분배하기 위해, 내부 서버 ID별 IP 주소 및 포트 정보를 맵핑한 주소 맵을 생성하여 관리하며, 제1네트워크로 연결되는 주소가 211.1.1.100.5060로, 제2네트워크로 연결되는 주소가 10.1.1.100.5060인 것으로 가정한다.
또한, SIP 메시지 분배 서버(20)는, 발신 단말(10)의 호(CALL) 설정 중이거나, 다이얼로그(dialogue) 중일 때, 발신 단말(10)로부터 SIP 요청(Request) 메시지가 수신되면, 수신된 SIP 요청(Request) 메시지를 설정된 정책에 따라 내부 서버(30)로 분배한다.
여기서, 정책은 SIP 요청(Request) 메시지의 처리에 관한 것으로, 예를 들어, SIP 메시지 분배 서버(20)는, SIP 요청 메시지로부터 브랜치(Branch) 정보를 검색하여 세션 정보가 존재하는지 확인하고, 세션 정보가 존재할 경우 검색된 세션 정보를 이용해 해당 내부 서버로 SIP 요청(Request) 메시지를 전송한다.
또는, SIP 메시지 분배 서버(20)는, 세션 정보가 존재하지 않을 경우, SIP 요청(Request) 메시지의 헤더 정보를 검색하여 내부 서버 ID 정보가 포함되어 있는지 확인하고, 내부 서버 ID가 존재하면, 내부 서버 ID를 이용해 SIP 요청(Request) 메시지를 해당 내부 서버로 전송한다.
구체적으로, SIP 메시지 분배 서버(20)는 SIP 요청(Request) 메시지, 예를 들어, SIP 수반 요청(Subsequence Request) 메시지의 경우, Request URI의 User-Part 및 Route의 User-Part를 검색하여 내부 서버 ID 정보가 존재하는지 확인한다.
또는, SIP 메시지 분배 서버(20)는, SIP 요청(Request) 메시지로부터 세션 정보 및 내부 서버 ID가 존재하지 않은 경우, 순차 분배 방식이나 상대적으로 부하가 적게 걸린 내부 서버를 선택하여 SIP 요청(Request) 메시지를 전송한다.
이러한 SIP 메시지 분배 서버(20)의 동작을 위해서는, SIP 초기 요청(Initial Request) 메시지에 대한 분배가 선행되어야 한다. 이때, SIP 메시지 분배 서버(20)는 SIP 초기 요청 메시지를 순차 분배 방식 또는 서버의 부하 정도에 따라 임의의 내부 서버를 선택하고, SIP 초기 요청 메시지를 선택한 임의의 내부 서버로 전송한다. 이러한 선행 과정을 통해 내부 서버에 대한 세션 정보가 정해지게 된다.
내부 서버(30)는 제2네트워크에 위치하며, 예를 들어, 콜 세션 제어 기능(Call Session Control Function: CSCF) 시스템이 될 수 있으나 이에 한정되는 것은 아니다. 여기서, CSCF는 호 및 세션 처리에 관련된 기능을 담당하는 부분으로, 인입 호에 대한 게이트웨이(Gateway)로써의 기능, 호 제어 기능 및 주소 처리 기능 등을 담당한다. 인입 호에 대한 게이트웨이로서 기능은 엔트리 포인트(Entry Point)로 동작하고 입력 호에 대한 라우팅(routing)을 수행하는 것을 말하고, 호 제어 기능은 호의 설정과 종료, 상태/이벤트 관리, 과금을 위한 호 이벤트 보고, 응용 레벨 등록의 수신 및 처리 등을 말한다.
또한, 내부 서버(30)는 수신되는 SIP 요청(Request) 메시지가 SIP 초기 요청(Initial Request) 메시지이면, Record Route의 User-Part 또는 Request URI의 User-Part에 자신의 내부 서버 ID를 표시한다.
이러한 내부 서버(30)는 다수 개 존재할 수 있으며, 본 실시예에서는 내부 서버(30)가 CSCF인 경우에 한해 설명하도록 하며, 세 개의 CSCF(31, 32, 33)가 위치한다. 각 CSCF의 주소는 CSCF1(31)이 10.1.1.201.5060, CSCF2(32)가 10.1.1.202.5060, CSCF3(33)이 10.1.1.203.5060인 것으로 가정한다.
도 2는 도 1에 도시된 SIP 메시지 분배 서버의 상세 구성을 나타낸 구성도이며, 도 3은 도 1에 도시된 SIP 메시지 분배 서버의 주소 맵을 나타낸 예시도이다.
여기서, 본 실시 예에 따른 SIP 메시지 분배 서버의 동작은, SIP 다이얼로그 생성을 위한 초기 요청 메시지가 순차 분배 방식에 따라 임의의 내부 서버로 전송되어 SIP 다이얼로그가 생성된 것을 전제로 한다. 또한, 본 실시예에 있어서, SIP 메시지 분배 서버에는 세션 정보 검색 후 분배, 내부 서버 ID 정보 검색 후 분배 및 순차 분배 순으로 이루어지는 SIP 요청 메시지에 대한 분배 정책이 설정되어 있다.
도 2를 참조하면, SIP 메시지 분배 서버(20)는 SIP 메시지 분석부(21), SIP 메시지 처리부(22) 및 목적지 주소 관리부(23)를 포함한다.
SIP 메시지 분석부(21)는 발신 단말(10)이 SIP 요청(Request) 메시지를 전송하면, 이를 수신하고, 수신된 SIP 요청(Request) 메시지를 분석한다. 즉, SIP 메시지 분석부(21)는 먼저 SIP 요청(Request) 메시지의 브랜치 정보로부터 세션 정보를 검색하고, 세션 정보가 존재하면 검색된 세션 정보를 SIP 메시지 처리부(22)로 전달한다.
또한, SIP 메시지 분석부(21)는 브랜치 정보로부터 세션 정보가 검색되지 않으면, SIP 요청(Request) 메시지의 헤더 정보로부터 내부 서버 ID 정보가 존재하는지 검색하고, 내부 서버 ID 정보가 존재하면 검색된 내부 서버 ID 정보를 SIP 메시지 처리부(22)로 전달한다.
구체적으로, SIP 메시지 분석부(21)는 SIP 요청(Request) 메시지, 예를 들어, SIP 수반 요청(Subsequence Request) 메시지의 경우, Request URI의 User-Part 및 Route의 User-Part를 검색하여 내부 서버 ID 정보가 존재하는지 확인하고, 확인된 내부 서버 ID 정보를 SIP 메시지 처리부(22)로 전달한다.
또한, SIP 메시지 분석부(21)는 SIP 요청(Request) 메시지를 분석하여 세션 정보 및 내부 서버 ID 정보가 존재하지 않으면, 세션 정보 및 내부 서버 ID 정보가 존재하지 않음을 SIP 메시지 처리부(22)로 전달한다.
이와 같이, SIP 메시지 분석부(21)는 세션 정보, 내부 서버 ID 정보를 순차적으로 검색한 후 이에 대한 검색 결과를 SIP 메시지 처리부(22)로 전달한다.
그리고, SIP 메시지 처리부(22)는 SIP 메시지 분석부(21)로부터 전달되는 검색 결과에 따라 SIP 요청(Request) 메시지의 분배를 수행한다. 이때, SIP 메시지 처리부(22)는 목적지 주소 관리부(23)로 내부 서버 ID에 대한 IP 주소 및 포트번호의 조회를 요청한다.
구체적으로, SIP 메시지 처리부(22)는 SIP 메시지 분석부(21)로부터 세션 정보가 전달되면, 세션 정보에 포함된 해당 내부 서버로 SIP 요청(Request) 메시지를 전송한다.
또한, SIP 메시지 처리부(22)는 SIP 메시지 분석부(21)로부터 내부 서버 ID 정보가 전달되면, 내부 서버 ID에 대한 IP 주소의 조회를 목적지 주소 관리부(23)로 요청하고, 수신되는 내부 서버 ID에 대한 해당 IP 주소를 목적지 주소로 하여 SIP 요청(Request) 메시지를 전송한다.
또한, SIP 메시지 처리부(22)는 SIP 메시지 분석부(21)로부터 세션 정보 및 내부 서버 ID 정보의 검색 결과가 없음을 통지받으면, 미리 설정된 순차 분배 방식에 따라 SIP 요청(Request) 메시지를 임의의 내부 서버로 전송한다.
그리고, 목적지 주소 관리부(23)는 내부 서버 ID별 IP 주소와 포트 번호가 맵핑된 주소 맵을 관리한다. 상기 주소 맵은 도 3에 도시된 바와 같이, 내부 서버 ID, IP 및 Port와 같이 세 개의 항목이 지정되며, 본 실시예에서는 내부 서버 ID로 CSCF1, CSCF2 및 CSCF3이 정의되어 있고, 각 내부 서버 ID별 IP 및 Port는 CSCF1가 10.1.1.201 및 5060, CSCF2가 10.1.1.202 및 5060, CSCF3가 10.1.1.203 및 5060으로 맵핑된다. 이러한 목적지 주소 관리부(23)는 SIP 메시지 처리부(22)의 요청에 따라 내부 서버 ID의 해당 IP 주소를 조회한 후 그 결과를 SIP 메시지 처리부(22)로 통지한다.
도 4는 본 발명의 일 실시 형태에 따른 SIP 메시지 분배 방법을 설명하기 위한 순서도이다. 본 SIP 메시지 분배 방법은 도 1에 도시된 SIP 메시지 분배 서버에 의해서 이루어진다.
도 4를 참조하면, SIP 요청(Request) 메시지를 수신하면(S410), SIP 요청(Request) 메시지의 브랜치 정보를 검색하여 세션 정보를 확인한다(S420).
S420 단계의 확인 결과, 세션 정보가 존재하면(S430, Y), 검색된 세션 정보에 따라 기존 내부 서버로 SIP 요청(Request) 메시지를 전송한다(S440).
한편, S420 단계의 확인 결과, 세션 정보가 존재하지 않으면(S430, N), SIP 요청(Request) 메시지의 헤더 정보를 검색한다(S450).
여기서, S450 단계는 SIP 요청(Request) 메시지의 헤더 정보 중 Request-URI의 User-Part 또는 Route의 User-Part를 검색하는 과정으로 이루어진다. 이를 위해, SIP 다이얼로그 생성을 위한 초기 요청 메시지의 처리 과정에서 내부 서버가 SIP 요청(Request) 메시지에 포함된 Request-URI의 User-Part 또는 Route의 User-Part를 내부 서버 ID로 정의하여 응답 메시지를 전송한다. 이와 관련하여 아래 도 5 내지 도 7을 참조하여 상세하게 설명하도록 한다.
S450 단계의 확인 결과, SIP 요청(Request) 메시지의 헤더에 내부 서버 ID 정보가 존재하면(S460, Y), 검색된 내부 서버 ID 정보를 이용해 해당 IP 주소를 주소맵에서 조회한 후, SIP 요청(Request) 메시지를 검색된 내부 서버로 전송한다.
S450 단계의 확인 결과, SIP 요청(Request) 메시지의 헤더에 내부 서버 ID 정보가 존재하지 않으면(S460, N), 설정된 우선 순위에 따라 내부 서버를 순차적으로 선택하여 SIP 요청(Request) 메시지를 전송한다(S480). 본 발명은 순차 분배 방식에 한정되는 것은 아니며, 내부 서버의 부하 정도를 체크하여 부하가 적게 걸린 내부 서버를 선택하여 SIP 요청(Request) 메시지를 전송할 수도 있다.
그런 다음, S440 단계, S470 단계 및 S480 단계 중 하나의 단계를 이용해 SIP 요청(Request) 메시지를 해당 내부 서버로 전송하고, 이에 의해 생성되는 세션을 SIP 요청(Request) 메시지의 브랜치 정보로 저장한다(S490).
이하, 도 4에 도시된 SIP 요청(Request) 메시지의 분배 방법에서 S440 단계 및 S470 단계 각각에 해당하는 데이터 흐름 및 SIP 다이얼로그 생성을 위한 초기 요청 메시지의 처리 과정을 도 5 내지 도 7을 참조하여 상세히 설명하도록 한다.
도 5는 도 4에 도시된 SIP 메시지 분배 방법에서 세션 정보를 이용한 분배 과정(S440)에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다.
도 5를 참조하면, 발신 단말(10)에서 SIP 요청(Request) 메시지를 SIP 메시지 분배 서버(20)로 전송한다(S510).
이때, 발신 단말(10)은 SIP 메시지 분배 서버(20)로 Route:<sip:CSCF2@211.1.1.100:5060> 포함한 SIP 요청(Request) 메시지를 전송한다(S511).
그러면, SIP 메시지 분배 서버(20)는 수신된 SIP 요청(Request) 메시지의 브랜치 정보로부터 세션 정보를 검색한 결과, 세션 정보(CSCF2)가 존재하는 것을 확인한다(S512).
그런 다음, SIP 메시지 분배 서버(20)는 CSCF2로 Route:<sip:CSCF2@211.1.1.100:5060>를 포함하는 SIP 요청(Request) 메시지를 전송한다(S513).
이후, CSCF2(32)에서 SIP 요청(Request) 메시지에 대한 100 Trying 응답 메시지를 SIP 메시지 분배 서버(20)로 전송하면(S514), SIP 메시지 분배 서버(20)는 100 Trying 응답 메시지를 발신 단말(10)로 전송한다(S515).
그리고, CSCF2(32)는 Record-Route의 User-Part에 자신의 내부 서버 ID(CSCF2)와 자신의 IP 주소가 아닌 외부 IP주소를 표시하여, 즉, Record-Route:<sip:CSCF2@211.1.1.100:5060>을 포함하는 SIP 요청(Request) 메시지를 착신 단말(미도시)로 전송하고(S517), 착신 단말로부터 200 OK 응답 메시지가 수신되면(S518), 이를 SIP 메시지 분배 서버(20)로 전달한다(S519).
그러면, SIP 메시지 분배 서버(20)는 전달된 200 OK 응답 메시지를 발신 단말(10)로 전송한다(S520).
도 6은 도 4에 도시된 SIP 메시지 분배 방법에서 SIP 메시지의 ROUTE를 이용한 분배 과정(S470 단계)에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다. 여기서, SIP 메시지의 ROUTE를 이용한 분배 과정은 초기 요청 처리 과정과 연속 요청 처리 과정으로 구분하여 설명하도록 한다.
도 6에 도시된 바와 같이, 먼저, 초기 요청 처리 과정에 대해 설명하면, 발신 단말(10)이 SIP 요청(INVITE) 메시지를 SIP 메시지 분배 서버(20)로 전송한다(S610).
이때, 발신 단말(10)은 SIP 메시지 분배 서버(20)로 Route:<sip:211.1.1.100:5060> 포함한 SIP 요청(INVITE) 메시지를 전송한다(S611).
이어서, SIP 메시지 분배 서버(20)는 SIP 요청(INVITE) 메시지의 브랜치 정보로부터 세션 정보를 검색할 수 없으므로, 순차 분배 방식에 따라 선택된 임의의 내부 서버, 예를 들어, CSCF2로 SIP 요청(INVITE) 메시지를 전송한다(S612).
이때, SIP 메시지 분배 서버(20)는 Route:<sip:211.1.1.100:5060> 포함한 SIP 요청(INVITE) 메시지를 CSCF2(32)로 전송한다(S613).
그러면, CSCF2(32)는 SIP 메시지 분배 서버(20)로 SIP 응답(100 Trying) 메시지를 전송하고(S614), SIP 메시지 분배 서버(20)는 전송된 SIP 응답(100 Trying) 메시지를 발신 단말(10)로 전달한다(S615).
또한, CSCF2(32)는 SIP 요청(INVITE) 메시지를 착신 단말(미도시)로 전송한다(S616). 이때, CSCF2(32)는 SIP 요청(INVITE) 메시지의 Record-Route의 User-Part에 자신의 내부 서버 ID(CSCF2)와 자신의 IP 주소가 아닌 외부 IP주소를 를 표시하여, 즉, Record-Route:<sip:CSCF2@211.1.1.100:5060>을 포함하는 SIP 요청(INVITE) 메시지를 착신 단말로 전송한다(S617).
그런 다음, CSCF2(32)는 착신 단말로부터 SIP 응답(200 OK) 메시지가 수신되면(S618), 이를 SIP 메시지 분배 서버(20)로 전달한다(S620). 이때, 수신된 SIP 응답(200 OK) 메시지의 헤더 부분은 Record-Route:<sip:CSCF2@211.1.1.100:5060>을 포함한다(S619).
그러면, SIP 메시지 분배 서버(20)는 전달된 SIP 응답(200 OK) 메시지를 발신 단말(10)로 전달한다(S621).
이러한 과정을 통해, 초기 요청 메시지에 대한 처리가 완료되어 SIP 다이얼로그가 생성되고, 아래와 같이 연속 요청 메시지에 대한 처리 과정이 이루어진다.
이어서, 발신 단말(10)이 SIP 요청(UPDATE) 메시지를 SIP 메시지 분배 서버(20)로 전송하면(S622), SIP 메시지 분배 서버(20)는 전송된 SIP 요청(UPDATE) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 있는지 검색을 수행한다.
그 결과, SIP 요청(UPDATE) 메시지의 ROUTE 헤더 부분에서 내부 서버 ID 정보, 즉, CSCF2를 확인하고(S623), SIP 요청(UPDATE) 메시지를 해당 CSCF2로 전송한다(S624).
도 7은 도 4에 도시된 SIP 메시지 분배 방법에서 SIP 메시지의 REQUEST-URI를 이용한 분배 과정에 대한 데이터 흐름을 설명하기 위한 데이터 흐름도이다. 여기서, SIP 메시지의 REQUEST-URI를 이용한 분배 과정은 초기 요청 처리 과정과 연속 요청 처리 과정으로 구분하여 설명하도록 한다.
도 7에 도시된 바와 같이, 먼저, 초기 요청 처리 과정에 대해 설명하면, 발신 단말(10)이 SIP 요청(SUBSCRIBE) 메시지를 SIP 메시지 분배 서버(20)로 전송한다(S710).
이때, 발신 단말(10)은 SIP 메시지 분배 서버(20)로 Route:<sip:211.1.1.100:5060> 포함한 SIP 요청(SUBSCRIBE) 메시지를 전송한다(S711).
이어서, SIP 메시지 분배 서버(20)는 SIP 요청(SUBSCRIBE) 메시지의 브랜치 정보로부터 세션 정보를 검색할 수 없으므로, 순차 분배 방식에 따라 선택된 임의의 내부 서버, 예를 들어, CSCF2로 SIP 요청(SUBSCRIBE) 메시지를 전송한다(S712).
이때, SIP 메시지 분배 서버(20)는 Route:<sip:211.1.1.100:5060> 포함한 SIP 요청(SUBSCRIBE) 메시지를 CSCF2(32)로 전송한다(S713).
그러면, CSCF2(32)는 SIP 요청(SUBSCRIBE) 메시지에 대한 CONTACT 헤더의 값은 User-Part에 CSCF2 자신의 IP 주소가 아닌 외부 IP주소인 211.1.1.100을 포함하여(S714), 즉, SIP 메시지 분배 서버(20)로 Contact:<sip:CSCF2@211.1.1.100:5060>을 포함하는 SIP 응답(200 OK) 메시지를 전송한다(S715).
그러면, SIP 메시지 분배 서버(20)는 전달된 SIP 응답(200 OK) 메시지를 발신 단말(10)로 전달한다(S716).
이러한 과정을 통해, 초기 요청 메시지에 대한 처리가 완료되어 SIP 다이얼로그가 생성되고, 아래와 같이 연속 요청 메시지에 대한 처리 과정이 이루어진다.
이어서, 발신 단말(10)이 SIP 요청(SUBSCRIBE) 메시지를 SIP 메시지 분배 서버(20)로 전송하면(S717), SIP 메시지 분배 서버(20)는 전송된 SIP 요청(SUBSCRIBE) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 있는지 검색을 수행한다.
그 결과, SIP 요청(SUBSCRIBE) 메시지의 헤더 부분, Request URI의 User-Part에서 내부 서버 ID 정보, 즉, CSCF2를 확인하고(S718), SIP 요청(SUBSCRIBE) 메시지를 해당 CSCF2로 전송한다(S719).
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들을 한정적인 관점이 아니라 설명적인 관점에서 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 한다.
또한, 본 발명에 따른 방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
10. 발신 단말 20. SIP 메시지 분배 서버
30. 내부 서버

Claims (16)

  1. 수신된 SIP 요청 메시지로부터 브랜치 정보 및 헤더 정보 중 적어도 하나를 검색하여 세션 정보 또는 내부 서버 ID 정보를 확인하는 SIP 메시지 분석부;
    확인된 세션 정보 또는 내부 서버 ID 정보를 이용해 상기 수신된 SIP 요청 메시지를 특정 내부 서버로 분배하는 SIP 메시지 처리부; 및
    상기 확인된 세션 정보 또는 내부 서버 ID 정보에 해당하는 내부 서버 ID별 매핑된 IP 주소 및 포트 정보를 저장하는 목적지 주소 관리부;를 포함하며,
    상기 내부 서버 ID 정보는, 상기 특정 내부 서버가 수신한 SIP 초기 요청 메시지의 특정 부분에 자신의 내부 서버 ID를 추가한 후 전송하는 SIP 응답 메시지로부터 획득되는 것을 특징으로 하는 SIP 메시지 분배 서버.
  2. 제1항에 있어서,
    상기 SIP 메시지 분석부는, 상기 수신된 SIP 요청 메시지로부터 브랜치 정보를 검색한 후 세션 정보가 존재하지 않으면, 상기 수신된 SIP 요청 메시지의 헤더 정보를 검색하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  3. 제2항에 있어서,
    상기 SIP 메시지 분석부는, 상기 세션 정보 또는 내부 서버 ID 정보가 모두 존재하지 않으면, 상기 세션 정보 또는 내부 서버 ID 정보가 존재하지 않음을 상기 SIP 메시지 처리부로 통지하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  4. 제1항에 있어서,
    상기 SIP 메시지 처리부는, 상기 확인된 세션 정보를 이용해 이전에 연결된 특정 내부 서버로 상기 수신된 SIP 요청 메시지를 분배하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  5. 제2항에 있어서,
    상기 SIP 메시지 처리부는, 상기 확인된 내부 서버 ID 정보를 이용해 해당하는 특정 내부 서버의 IP 주소 및 포트 정보를 상기 목적지 주소 관리부로부터 전달받고, 전달된 IP 주소 및 포트 정보를 이용해 상기 특정 내부 서버로 상기 수신된 SIP 요청 메시지를 분배하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  6. 제3항에 있어서,
    상기 SIP 메시지 처리부는, 상기 세션 정보 또는 내부 서버 ID 정보가 모두 존재하지 않으면, 상기 수신된 SIP 요청 메시지를 임의의 내부 서버로 순차 분배하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  7. 제1항에 있어서,
    상기 특정 내부 서버는, 적어도 하나 이상의 콜 세션 제어 기능(Call Session Control Function: CSCF) 시스템인 것을 특징으로 하는 SIP 메시지 분배 서버.
  8. 제7항에 있어서,
    상기 특정 내부 서버는, 상기 수신된 SIP 요청 메시지에 포함된 Request-URI의 User-Part 또는 Route의 User-Part를 자신의 내부 서버 ID 정보로 표시하는 것을 특징으로 하는 SIP 메시지 분배 서버.
  9. SIP 메시지 분배 서버의 SIP 메시지의 분배 방법에 있어서,
    특정 내부 서버를 목적지로 하는 SIP 요청(Request) 메시지를 수신하는 단계;
    수신된 SIP 요청(Request) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 존재하는지 검색하는 단계;
    검색 결과, 세션 정보가 존재하면 검색된 세션 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계; 및
    검색 결과, 내부 서버 ID 정보가 존재하면 검색된 내부 서버 ID 정보에 대한 IP 주소 및 포트 정보를 조회하고, 조회된 IP 주소 및 포트 정보를 이용해 상기 수신된 SIP 요청(Request) 메시지를 특정 내부 서버로 분배하는 단계;를 포함하며,
    상기 내부 서버 ID 정보가 SIP 요청(Request) 메시지에 존재하는 경우,
    상기 특정 내부 서버를 목적지로 하는 SIP 요청(Request) 메시지를 수신하는 단계 전에,
    SIP 초기 요청 메시지가 수신되면, 수신된 SIP 초기 요청(Initial Request) 메시지를 분석하여 세션 정보 또는 내부 서버 ID 정보가 존재하는지 검색하는 단계;
    검색 결과, 상기 세션 정보 또는 내부 서버 ID 정보가 존재하지 않으면 상기 수신된 SIP 초기 요청(Initial Request) 메시지를 임의의 내부 서버로 순차분배하는 단계;
    상기 임의의 내부 서버로부터 SIP 초기 요청(Initial Request) 메시지에 대해 상기 임의의 내부 서버 자신의 내부 서버 ID 정보가 추가된 SIP 응답 메시지를 수신하는 단계;를 더 포함하는 것을 특징으로 하는 SIP 메시지의 분배 방법.
  10. 삭제
  11. 제9항에 있어서,
    상기 수신된 SIP 요청(Request) 메시지를 분석하여 세션 정보가 존재하는지 검색하는 단계는, 상기 수신된 SIP 요청(Request) 메시지의 브랜치(Branch) 정보를 검색하여 세션 정보를 확인하는 단계인 것을 특징으로 하는 SIP 메시지의 분배 방법.
  12. 제11항에 있어서,
    상기 수신된 SIP 요청(Request) 메시지를 분석하여 내부 서버 ID 정보가 존재하는지 검색하는 단계는, 상기 수신된 SIP 요청(Request) 메시지의 Request-URI의 User-Part를 검색하여 내부 서버 ID 정보를 확인하는 단계인 것을 특징으로 하는 SIP 메시지의 분배 방법.
  13. 제12항에 있어서,
    상기 수신된 SIP 요청(Request) 메시지를 분석하여 내부 서버 ID 정보가 존재하는지 검색하는 단계는, 상기 수신된 SIP 요청(Request) 메시지의 Route의 User-Part를 검색하여 내부 서버 ID 정보를 확인하는 단계인 것을 특징으로 하는 SIP 메시지의 분배 방법.
  14. 제9항에 있어서,
    상기 임의의 내부 서버는 상기 SIP 초기 요청(Request) 메시지의 Record-Route의 User-Part, Request-URI의 User-Part 및 Route의 User-Part 중 적어도 하나에 자신의 내부 서버 ID 정보를 표시하는 것을 특징으로 하는 SIP 메시지의 분배 방법.
  15. 제14항에 있어서,
    상기 임의의 내부 서버는, 적어도 하나 이상의 콜 세션 제어 기능(Call Session Control Function: CSCF) 시스템인 것을 특징으로 하는 SIP 메시지의 분배 방법.
  16. 제9항, 제11항 내지 제15항 중 어느 한 항의 방법을 수행하기 위한 프로그램으로서 디지털 신호 처리 장치에 의해 판독되고 실행될 수 있는 프로그램을 기록한 기록매체.
KR1020110133571A 2011-12-13 2011-12-13 Sip 메시지의 분배 시스템 및 그 방법 KR101310449B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110133571A KR101310449B1 (ko) 2011-12-13 2011-12-13 Sip 메시지의 분배 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110133571A KR101310449B1 (ko) 2011-12-13 2011-12-13 Sip 메시지의 분배 시스템 및 그 방법

Publications (2)

Publication Number Publication Date
KR20130066857A KR20130066857A (ko) 2013-06-21
KR101310449B1 true KR101310449B1 (ko) 2013-09-24

Family

ID=48862900

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110133571A KR101310449B1 (ko) 2011-12-13 2011-12-13 Sip 메시지의 분배 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR101310449B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102105972B1 (ko) * 2013-09-16 2020-04-29 에스케이텔레콤 주식회사 발신망의 호 처리 기능 장애 처리를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005050946A1 (en) * 2003-10-30 2005-06-02 Hewlett-Packard Development Company, L.P. Method and apparatus for load-balancing
US8059653B1 (en) * 2009-03-12 2011-11-15 Brocade Communications Systems, Inc. Transaction and connection independent protocol load balancing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005050946A1 (en) * 2003-10-30 2005-06-02 Hewlett-Packard Development Company, L.P. Method and apparatus for load-balancing
US8059653B1 (en) * 2009-03-12 2011-11-15 Brocade Communications Systems, Inc. Transaction and connection independent protocol load balancing

Also Published As

Publication number Publication date
KR20130066857A (ko) 2013-06-21

Similar Documents

Publication Publication Date Title
US9602591B2 (en) Managing TCP anycast requests
US20180213031A1 (en) System and method to balance servers based on server load status
US10182091B2 (en) Decentralized, hierarchical, and overlay-driven mobility support architecture for information-centric networks
CN101326493B (zh) 用于多处理器服务器中的负载分配的方法和装置
RU2464722C2 (ru) Способ, устройство и система для распределения сообщений
CN101489260B (zh) 一种通信业务处理的方法、装置及系统
US9350606B2 (en) System and method for assigning server to terminal and efficiently delivering messages to the terminal
JP5941434B2 (ja) セッション・ボーダ・コントローラのクラスタシステム、アプリケーション・サーバのクラスタシステム、および、そのsipダイアログ生成方法
JP2007219637A (ja) 負荷分散システムおよびそのプログラム
JP2012242994A (ja) トランザクション処理システム、トランザクション処理方法、および、トランザクション処理プログラム
CN112866413A (zh) 数据传输方法、装置、电子设备和计算机可读存储介质
KR101310449B1 (ko) Sip 메시지의 분배 시스템 및 그 방법
JP2009017347A (ja) 通信を制御する装置、方法、プログラム、および端末装置
US20160302055A1 (en) Information processing system
JP5205783B2 (ja) コンテンツ配信システム
WO2023276001A1 (ja) 負荷分散システム、負荷分散方法、および、負荷分散プログラム
KR102105972B1 (ko) 발신망의 호 처리 기능 장애 처리를 위한 장치, 이를 위한 방법 및 이 방법이 기록된 컴퓨터 판독 가능한 기록매체
KR101115140B1 (ko) 소프트스위치에서의 sip 호처리시스템과 방법
KR20220116201A (ko) 재생기에 오디오 및/또는 비디오 콘텐츠를 전달하기 위한 방법
KR100782341B1 (ko) Sip서버 및 이를 이용한 sip기반의 통신 방법
JP2006319808A (ja) サービス中継ネットワークシステム及びサービス中継方法
KR100673513B1 (ko) Sip 네트워크의 로드밸런싱 방법 및 이를 채용한로드밸런싱 시스템
JP5272027B2 (ja) 呼制御方法、および呼制御システム
JP5227984B2 (ja) ゲートウェイシステム、通信方法、収容管理サーバ装置及びプログラム
JP2017147489A (ja) 通信制御システム、通信制御方法、通信制御プログラム、および、通信制御装置

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: 20160727

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170809

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180822

Year of fee payment: 6