KR100673513B1 - Method for load-balancing in session initiation protocol network and system of enabling the method - Google Patents

Method for load-balancing in session initiation protocol network and system of enabling the method Download PDF

Info

Publication number
KR100673513B1
KR100673513B1 KR1020040117949A KR20040117949A KR100673513B1 KR 100673513 B1 KR100673513 B1 KR 100673513B1 KR 1020040117949 A KR1020040117949 A KR 1020040117949A KR 20040117949 A KR20040117949 A KR 20040117949A KR 100673513 B1 KR100673513 B1 KR 100673513B1
Authority
KR
South Korea
Prior art keywords
sip
user agent
information
real
sip message
Prior art date
Application number
KR1020040117949A
Other languages
Korean (ko)
Other versions
KR20060078347A (en
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 KR1020040117949A priority Critical patent/KR100673513B1/en
Publication of KR20060078347A publication Critical patent/KR20060078347A/en
Application granted granted Critical
Publication of KR100673513B1 publication Critical patent/KR100673513B1/en

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
    • 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
    • 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(Session Initiation Protocol) 네트워크에서 로드밸런싱하는 방법 및 시스템에 관한 것으로, 더욱 상세하게는 SIP 네트워크를 통해 전송되는 콜 세션(session)에 대한 로드밸런싱 방법 및 이를 채용한 SIP 로드밸런싱 시스템에 관한 것이다.The present invention relates to a method and system for load balancing in a Session Initiation Protocol (SIP) network, and more particularly, to a load balancing method for a call session transmitted through a SIP network and a SIP load balancing system employing the same. It is about.

본 발명에 따르면 리얼 SIP 서버로부터 수신한 SIP 메시지의 콜아이디 정보 및 설정된 리얼 SIP 서버 정보를 이용하여 로드밸런싱하는 방법, 유저 에이전트의 주소를 이용하여 로드밸런싱 하는 방법 및 유저 에이전트의 식별자를 이용하여 로드밸런싱하는 방법을 제공할 수 있다.According to the present invention, a method of load balancing using call ID information and set real SIP server information of a SIP message received from a real SIP server, a method of load balancing using an address of a user agent, and a load using an identifier of a user agent It can provide a method of balancing.

세션 설정 프로토콜, SIP, SIP 메시지, 로드밸런싱, 콜아이디Session establishment protocol, SIP, SIP message, load balancing, call ID

Description

SIP 네트워크의 로드밸런싱 방법 및 이를 채용한 로드밸런싱 시스템{METHOD FOR LOAD-BALANCING IN SESSION INITIATION PROTOCOL NETWORK AND SYSTEM OF ENABLING THE METHOD}Load balancing method of SIP network and load balancing system employing the same {METHOD FOR LOAD-BALANCING IN SESSION INITIATION PROTOCOL NETWORK AND SYSTEM OF ENABLING THE METHOD}

도 1은 종래 기술의 콜아이디 방식에서 SIP 메시지의 전송 과정을 도시한 도면이다.1 is a diagram illustrating a process of transmitting a SIP message in a call ID method according to the related art.

도 2는 종래 기술의 콜아이디 방식으로 로드밸런싱할 때 발생할 수 있는 문제점의 일예를 도시한 도면이다.2 is a diagram illustrating an example of a problem that may occur when load balancing by a call ID method according to the related art.

도 3은 종래 기술의 콜아이디 방식으로 로드밸런싱할 때 발생할 수 있는 또 다른 문제점의 일예를 도시한 도면이다.3 is a diagram illustrating an example of another problem that may occur when load balancing by a call ID method according to the related art.

도 4는 본 발명의 일실시예에 따라 리얼 SIP 서버로부터 전송되는 SIP 메시지에 포함된 콜아이디를 이용하여 로드밸런싱하는 과정을 도시한 도면이다.4 is a diagram illustrating a process of load balancing using a call ID included in a SIP message transmitted from a real SIP server according to an embodiment of the present invention.

도 5는 본 발명의 일실시예에 따라 발신자 및 수신자의 유저 에이전트 주소를 이용하여 로드밸런싱하는 과정을 도시한 도면이다.5 is a diagram illustrating a process of load balancing using a user agent address of a sender and a receiver according to an embodiment of the present invention.

도 6은 본 발명의 일실시예에 따라 모집단 식별자를 이용하여 로드밸런싱하는 과정의 흐름을 도시한 흐름도이다.6 is a flowchart illustrating a flow of a load balancing process using a population identifier according to an embodiment of the present invention.

도 7은 SIP 메시지의 헤더 구조의 일예를 도시한 도면이다.7 is a diagram illustrating an example of a header structure of a SIP message.

도 8은 본 발명의 일실시예에 따라 모집단 식별자를 도메인 네임의 상위단으 로 설정한 경우의 네트워크 연결과 정보 테이블의 일예를 도시한 도면이다.8 is a diagram illustrating an example of a network connection and an information table when a population identifier is set to a higher level of a domain name according to an embodiment of the present invention.

도 9는 본 발명의 일실시예에 따라 콜아이디를 이용하여 로드밸런싱하는 시스템의 구성을 도시한 블록도이다.9 is a block diagram illustrating a configuration of a system for load balancing using a call ID according to an embodiment of the present invention.

도 10은 본 발명의 일실시예에 따라 유저 에이전트 주소를 이용하여 로드밸런싱하는 시스템의 구성을 도시한 블록도이다.10 is a block diagram illustrating a configuration of a system for load balancing using a user agent address according to an embodiment of the present invention.

도 11은 본 발명의 일실시예에 따라 모집단 식별자를 이용하여 로드밸런싱하는 시스템의 구성을 도시한 블록도이다.11 is a block diagram showing the configuration of a system for load balancing using a population identifier according to an embodiment of the present invention.

<도면의 주요 부분에 대한 부호의 설명><Explanation of symbols for the main parts of the drawings>

901, 1001, 1101: 유저 에이전트 통신부901, 1001, 1101: user agent communication unit

902, 1002, 1102: 정보 테이블902, 1002, 1102: Information table

903, 1003, 1103: 리얼 SIP 서버 통신부903, 1003, 1103: real SIP server communication unit

905, 1005, 1105: 정보 테이블 관리부905, 1005, 1105: Information Table Manager

904: 검색부 904: search unit

1004: 정보 검색부1004: information retrieval unit

1104: 식별자 검색부1104: identifier search unit

본 발명은 SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱하는 방법 및 시스템에 관한 것으로, 더욱 상세하게는 SIP 네트워크를 통해 전송되는 콜 세션(session)에 대한 로드밸런싱 방법 및 이를 채용한 SIP 로드밸런싱 시스템에 관한 것이다.The present invention relates to a method and system for load balancing in a Session Initiation Protocol (SIP) network, and more particularly, to a load balancing method for a call session transmitted through a SIP network and a SIP load balancing system employing the same. It is about.

오늘날, 인터넷의 급속한 보급과 그에 따른 다양한 서비스에 대한 요구로 인해 IP(Internet Protocol) 망은 성능과 서비스 측면에서 획기적으로 발달하고 있고, 그에 따라 보다 다양한 서비스에 대한 요구가 지속적으로 발생하고 있다. 이러한 요구의 예를 들면, IP 망을 이용한 음성 신호의 전달이 있다. 이러한 IP 망을 통한 음성 신호의 전달은 VoIP(Voice over Internet Protocol)에 의해 지원되며, 이제 데이터의 전송과 함께 IP 망의 큰 역할로 자리 잡고 있을 뿐 아니라 그에 따른 다양한 음성 신호 전달 기능에 대한 요구도 증가되고 있다.Today, due to the rapid spread of the Internet and the demand for various services, the IP (Internet Protocol) network is dramatically developed in terms of performance and services, and accordingly, the demand for more various services is continuously generated. An example of such a requirement is the delivery of voice signals over an IP network. The transmission of voice signals through the IP network is supported by Voice over Internet Protocol (VoIP), which is now becoming a big part of the IP network along with data transmission, and also requires various voice signal transmission functions. It is increasing.

최근 멀티미디어 서비스와 관련하여 업계의 주목을 받고 있는 세션 설정 프로토콜(Session Initiation Protocol)의 기본 기능은 컴퓨터, IP 전화기, PDA, 휴대폰과 같이 음성 통신이 가능한 VoIP(Voice over Internet Protocol) 단말기 사이에 호를 설정하는 것이다. 이러한 SIP 호 설정 기능은 ITU-T의 H.323 프로토콜의 호 설정 기능과 큰 차이는 없다. The basic function of the Session Initiation Protocol, which has recently attracted the attention of the multimedia service, is to call voice over Internet Protocol (VoIP) terminals capable of voice communication such as computers, IP phones, PDAs, and mobile phones. To set. This SIP call setup function is not significantly different from the ITU-T H.323 protocol call setup function.

SIP는 텍스트 기반의 STMP(Simple Mail Transfer Protocol)와 HTTP(Hyper Text Transfer Protocol) 이후에 설계된 것으로서, 에이전트(Client)가 호출을 시작하면 서버가 그 호출에 응답을 하는 에이전트/서버 구조에 그 기반을 두고 있다. SIP는 이러한 기존의 텍스트 기반 인터넷 표준들을 준수하고 있으므로 고장 수리(troubleshooting)와 네트워크 디버깅(debugging) 등이 쉽다는 장점이 있다. 또한, SIP는 ITU-T의 H.323 프로토콜보다 구현이 쉽고 인터넷 표준이므로, 다른 서비 스와 호환이 용이하다는 장점을 지니고 있다. 특히 SIP는 모든 인터넷 단말기, 모든 응용 서비스, 모든 네트워크 장비의 구성 요소(component)로 포함되어 호 설정, 호 관리, 응용 서비스 요청 등의 기능을 수행할 수 있도록 설계되어 있다.SIP was designed after the text-based Simple Mail Transfer Protocol (STMP) and Hyper Text Transfer Protocol (HTTP), and is based on an agent / server structure where the server responds to the call when the client initiates the call. I put it. SIP adheres to these existing text-based Internet standards, making it easy to troubleshoot and network debug. In addition, SIP is easier to implement than the ITU-T's H.323 protocol and has the advantage of being compatible with other services. In particular, SIP is designed to be included as a component of all Internet terminals, all application services, and all network equipment to perform functions such as call setup, call management, and application service requests.

이러한 SIP는 비록 VoIP용 호 설정 프로토콜로서 개발되었지만 그 구현이 쉽고 다른 서비스와의 호환이 용이하기 때문에 차세대 통신망(NGN)에서 핵심 기능을 수행할 것으로 기대되고 있다.Although SIP was developed as a call setup protocol for VoIP, it is expected to perform a core function in the next generation communication network (NGN) because it is easy to implement and compatible with other services.

SIP 로드밸런서(load balancer)라 함은, 상술한 SIP의 처리를 수행하는 장치로서, 상세하게는 SIP 메시지를 수신하여 호를 설정할 리얼 SIP 서버를 할당하고 할당된 서버로 SIP 메시지를 전송하는 기능을 수행하는 장치를 의미한다. 또한 SIP 로드밸런서는 IP에 기반한 네트워크 서비스의 효율성을 높이고, 리얼 SIP 서버의 성능을 확장시키기 위해서 로드밸런싱 기능을 구비하고 있다.The SIP load balancer is a device for performing the above-described SIP processing, and specifically, a function of receiving a SIP message, assigning a real SIP server to set up a call, and transmitting a SIP message to the assigned server. Means a device to perform. In addition, SIP load balancer is equipped with load balancing function to increase the efficiency of IP-based network service and to extend the performance of real SIP server.

SIP 로드밸런서의 동작에 있어서, 하나의 세션에 대한 처리를 소정의 서버에서 지속적으로 유지하는 것이 필요한데 이를 퍼시스턴스(persistence)라고 한다. 종래 기술에 의하면, SIP 서버에서의 로드밸런싱은 SIP 메시지에 포함된 콜아이디(Call-ID)를 이용하여 퍼시스턴스를 유지하였다. 이와 같이 콜아이디를 이용하여 로드밸런싱하는 방법은 특정 리얼 SIP 서버의 과부하를 방지하지 위한 것이었다.In the operation of a SIP load balancer, it is necessary to keep processing for one session on a predetermined server, which is called persistence. According to the related art, load balancing in a SIP server maintains persistence using a Call ID included in a SIP message. The method of load balancing using call ID was to prevent overload of a specific real SIP server.

그러나 종래 기술과 같이 콜아이디를 이용하여 로드밸런싱하는 방법, 소위 "콜아이디 방식"은 리얼 SIP 서버로부터 수신한 메시지에 대한 콜아이디를 기록하지 않으므로, 특히 B2BUA(Back to Back User Agent) 방식에서 오작동을 일으킬 가능성이 많은 문제점이 있다. 이러한 문제점에 대하여는 이하 도 2를 참조하여 상술한 다. However, as in the prior art, the method of load balancing using call ID, so-called "call ID method", does not record the call ID for the message received from the real SIP server, and therefore it malfunctions particularly in the B2BUA (Back to Back User Agent) method. There are many problems that are likely to cause. This problem is described above with reference to FIG. 2.

또한 종래 기술의 콜아이디 방식은 유저 에이전트 정보를 기록하지 않으므로 이미 호가 설정된 유저 에이전트에 대한 호 보류를 처리할 수 없는 문제점이 있다. 이러한 문제점에 대하여는 이하 도 3을 참조하여 상술한다. In addition, since the conventional call ID method does not record user agent information, there is a problem in that call hold for a user agent for which a call has already been set cannot be processed. This problem will be described in detail with reference to FIG. 3.

이하 종래 기술에 따른 SIP 네트워크에서 콜아이디를 이용한 로드밸런싱 방법과 이러한 방식의 문제점을 설명한다. Hereinafter, a load balancing method using a call ID in a SIP network according to the related art and the problems of this method will be described.

도 1은 종래 기술에 따른 콜아이디 방식에서 SIP 메시지의 전송 과정을 도시한 도면이다. 도 1을 참조하면, SIP 메시지의 전송을 위한 네트워크 연결은 유저 에이전트(101), 프록시(proxy) 서버(102), SIP 로드밸런서(103), 리얼 SIP 서버(104)로 구성될 수 있다. 1 is a diagram illustrating a process of transmitting a SIP message in a call ID method according to the prior art. Referring to FIG. 1, a network connection for transmitting a SIP message may include a user agent 101, a proxy server 102, a SIP load balancer 103, and a real SIP server 104.

유저 에이전트(101)에서 메소드 정보 및 제1 콜아이디가 설정된 제1 SIP 메시지를 프록시 서버(102)를 거쳐 SIP 로드밸런서(103)로 전송한다. 일예로, 제1 SIP 메시지는 도면 부호(110)과 같이 INVITE 메소드 정보 및 제1 콜아이디 정보로서 <1000>을 포함할 수 있다. The user agent 101 transmits the first SIP message configured with the method information and the first call ID to the SIP load balancer 103 via the proxy server 102. For example, the first SIP message may include <1000> as INVITE method information and first call ID information, as shown by reference numeral 110.

SIP 로드밸런서(103)는 수신한 제1 SIP 메시지의 제1 콜아이디 정보를 식별하고, 소정의 정보 테이블(120)을 참조하여 제1 콜아이디 정보 및 설정된 리얼 SIP 서버 정보를 검색한다. The SIP load balancer 103 identifies the first call ID information of the received first SIP message and retrieves the first call ID information and the set real SIP server information by referring to the predetermined information table 120.

상기 정보 테이블에 기록된 제1 콜아이디 정보 및 설정된 리얼 SIP 서버 정보가 검색되면 제1 SIP 메시지를 검색된 리얼 SIP 서버로 포워딩한다. 제1 콜아이디 정보 및 설정된 리얼 SIP 서버 정보가 검색되지 않으면 새로운 리얼 SIP 서버를 할당하고, 할당된 리얼 SIP 서버로 제1 SIP 메시지를 포워딩한다. 이 때 SIP 로드밸런서(103)는 제1 콜아이디 정보 및 새로 할당된 리얼 SIP 서버 정보를 상기 정보 테이블에 기록하고 유지한다. 상기 정보 테이블에 유지되는 콜아이디 정보 및 리얼 SIP 서버 정보는 선입선출 방식(FIFO)으로 기록될 수 있다. When the first call ID information and the set real SIP server information recorded in the information table are found, the first SIP message is forwarded to the found real SIP server. If the first call ID information and the set real SIP server information are not found, a new real SIP server is allocated, and the first SIP message is forwarded to the assigned real SIP server. At this time, the SIP load balancer 103 records and maintains first call ID information and newly allocated real SIP server information in the information table. Call ID information and real SIP server information maintained in the information table may be recorded in a first in, first out (FIFO) manner.

상술한 바와 같이 종래 기술의 SIP 로드밸런서에서는 전송된 SIP 메시지에 포함된 콜아이디 정보를 식별하여 리얼 SIP 서버를 할당하는 방식을 사용하고 있다.As described above, the SIP load balancer of the related art uses a method of allocating a real SIP server by identifying call ID information included in a transmitted SIP message.

도 2는 종래 기술의 콜아이디 방식으로 로드밸런싱할 때 발생할 수 있는 문제점의 일예를 도시한 도면이다. 2 is a diagram illustrating an example of a problem that may occur when load balancing by a call ID method according to the related art.

제1 유저 에이전트(201)는 제2 유저 에이전트(202)로의 제1 SIP 메시지를 SIP 로드밸런서(203)로 전송한다. 이때 제1 SIP 메시지는 도면 부호(210)과 같이 INVITE 메소드 정보 및 제1 콜아이디 정보 <1001>를 포함할 수 있다. The first user agent 201 sends a first SIP message to the second user agent 202 to the SIP load balancer 203. At this point, the first SIP message may include INVITE method information and first call ID information <1001> as shown by reference numeral 210.

SIP 로드밸런서(203)는 상기 제1 SIP 메시지를 수신하여 제1 콜아이디 정보를 식별하고, 정보 테이블을 참조하여 제1 콜아이디 정보 및 할당된 리얼 SIP 서버 정보가 있는지를 검색한다. 해당 정보가 검색되지 않는 경우 제1 리얼 SIP 서버(204)를 할당하며, 상기 정보 테이블에 제1 콜아이디 정보 및 제1 리얼 SIP 서버(204)의 식별 정보를 기록한다. 도 2를 참조하면, 정보 테이블(220)에 제1 콜아이디 정보 <1001>와 제1 리얼 SIP 서버(204) 정보 <P1>이 기록되었음을 알 수 있다. The SIP load balancer 203 receives the first SIP message to identify the first call ID information, and searches for the presence of the first call ID information and the allocated real SIP server information by referring to the information table. If the corresponding information is not found, the first real SIP server 204 is allocated, and the first call ID information and the identification information of the first real SIP server 204 are recorded in the information table. 2, it can be seen that the first call ID information <1001> and the first real SIP server 204 information <P1> are recorded in the information table 220.

SIP 로드밸런서(203)는 제1 리얼 SIP 서버(204)로 제1 SIP 메시지를 포워딩한다. 제1 리얼 SIP 서버(204)는 제1 SIP 메시지를 수신한 후, 이에 대응하는 제2 SIP 메시지를 SIP 로드밸런서(203)로 전송한다. 제2 SIP 메시지는 제2 유저 에이전트와의 세션 연결을 위한 INVITE 메소드 정보 및 제2 콜아이디 정보를 포함할 수 있다. 제1 콜아이디 정보와 제2 콜아이디 정보는 프락시(proxy) 방식의 리얼 SIP 서버에서는 서로 일치하지만, B2BUA 방식의 리얼 SIP 서버에서는 서로 다를 수 있다.The SIP load balancer 203 forwards the first SIP message to the first real SIP server 204. After receiving the first SIP message, the first real SIP server 204 transmits a second SIP message corresponding thereto to the SIP load balancer 203. The second SIP message may include INVITE method information and second call ID information for session connection with a second user agent. The first call ID information and the second call ID information correspond to each other in a proxy-type real SIP server, but may be different in a B2BUA-type real SIP server.

SIP 로드밸런서(203)는 상기 수신한 제2 SIP 메시지를 제2 유저 에이전트(202)로 전송한다. 제2 유저 에이전트(202)는 제2 SIP 메시지를 수신하고, 이에 대한 응답 메시지(일예로 INVITE에 대한 응답으로 200 OK 메소드 포함)를 SIP 로드밸런서(203)로 전송한다. 이때 응답 메시지는 제2 SIP 메시지의 제2 콜아이디 정보를 포함한다.The SIP load balancer 203 transmits the received second SIP message to the second user agent 202. The second user agent 202 receives the second SIP message and sends a response message (for example, including a 200 OK method in response to INVITE) to the SIP load balancer 203. In this case, the response message includes second call ID information of the second SIP message.

SIP 로드밸런서(203)는 수신한 응답 메시지의 제2 콜아이디 정보를 식별하고 정보 테이블을 참조하여 제2 콜아이디 정보 및 리얼 SIP 서버 정보를 검색한다. 제1 콜아이디와 제2 콜아이디가 일치하지 않는 경우에, 제2 콜아이디 정보 및 리얼 SIP 서버 정보가 검색되지 않으면 새로운 리얼 SIP 서버를 할당하고, 상기 응답 메시지를 할당된 리얼 SIP 서버로 포워딩한다. 상기 예에서, 제2 콜아이디 정보 <3001> 및 설정된 리얼 SIP 서버 정보는 상기 정보 테이블에 기록되어 있지 아니하므로, SIP 로드밸런서(203)는 새로운 제2 리얼 SIP 서버(205)를 할당하고, 제2 리얼 SIP 서버(205)로 응답 메시지를 포워딩한다. The SIP load balancer 203 identifies the second call ID information of the received response message and retrieves the second call ID information and the real SIP server information by referring to the information table. If the first call ID and the second call ID do not match, if the second call ID information and the real SIP server information are not found, a new real SIP server is allocated, and the response message is forwarded to the assigned real SIP server. . In the above example, since the second call ID information <3001> and the set real SIP server information are not recorded in the information table, the SIP load balancer 203 allocates a new second real SIP server 205, and 2 Forward the response message to the real SIP server 205.

SIP 로드밸런서(203)는 제2 콜아이디 정보 및 제2 리얼 SIP 서버 정보를 테이블에 기록한다. 도면 부호(220)을 참조하면, 제2 콜아이디 정보 <3001> 및 할당 된 제2 리얼 SIP 서버 정보 <P2>가 상기 정보 테이블에 기록됨을 알 수 있다.The SIP load balancer 203 records the second call ID information and the second real SIP server information in a table. Referring to reference numeral 220, it can be seen that the second call ID information <3001> and the allocated second real SIP server information <P2> are recorded in the information table.

상술한 바와 같이 종래 기술의 콜아이디 방식은 제1 콜아이디와 제2 콜아이디가 일치하지 않는 B2BUA방식에서 제2 유저 에이전트로부터 전송된 응답 메시지를 제1 리얼 SIP 서버가 아닌 제2 리얼 SIP 서버로 전송하게 되고, 이로 인해 제1 유저 에이전트와 제2 유저 에이전트 간 호 설정이 지연되어 SIP 로드밸런서에서 효율적인 로드밸런싱을 수행할 수 없다는 문제점이 있었다.As described above, the call ID scheme of the prior art transmits a response message transmitted from the second user agent to the second real SIP server instead of the first real SIP server in the B2BUA scheme where the first call ID and the second call ID do not match. Due to this, call setup is delayed between the first user agent and the second user agent, which makes it impossible to perform efficient load balancing in the SIP load balancer.

도 3은 종래 기술의 콜아이디 방식으로 로드밸런싱할 때 발생될 수 있는 또 다른 문제점의 일예를 도시한 도면이다. 3 is a diagram illustrating an example of another problem that may occur when load balancing by a call ID method according to the related art.

제1 유저 에이전트(301)와 제2 유저 에이전트(302)는 다음과 과정으로 호 설정될 수 있다. 제1 유저 에이전트(301)는 제2 유저 에이전트(302)로의 제1 SIP 메시지를 SIP 로드밸런서(304)로 전송하고, SIP 로드밸런서(304)는 제1 리얼 SIP 서버를 할당하여 상기 제1 SIP 메시지를 제1 리얼 SIP 서버(305)로 포워딩한다. 제1 SIP 메시지는 도면 부호(310)과 같이 제1 콜아이디 정보 <1001>를 포함할 수 있다.The first user agent 301 and the second user agent 302 may be set up in the following process. The first user agent 301 sends a first SIP message to the second user agent 302 to the SIP load balancer 304, and the SIP load balancer 304 allocates a first real SIP server to the first SIP. Forward the message to the first real SIP server 305. The first SIP message may include first call ID information <1001> as shown by reference numeral 310.

제1 리얼 SIP 서버(305)는 제2 SIP 메시지를 SIP 로드밸런서(304)로 전송한다. SIP 로드밸런서(304)는 수신한 제2 SIP 메시지를 제2 유저 에이전트(302)로 전송한다. 제2 SIP 메시지는 도면 부호(320)과 같이 제2 콜아이디 정보 <1002>를 포함할 수 있다.The first real SIP server 305 sends a second SIP message to the SIP load balancer 304. The SIP load balancer 304 transmits the received second SIP message to the second user agent 302. The second SIP message may include second call ID information <1002> as shown by reference numeral 320.

제1 리얼 SIP 서버(305)는 제1 유저 에이전트(301)와 제2 유저 에이전트(302) 간의 호 연결을 수행하고 있으므로, 도면 부호(340)과 같이 각 유저 에이전트의 콜 STATUS 정보로써 제1 유저 에이전트(301, UA1) 및 제2 유저 에이전트(302, UA2)는 <연결>로, 제3 유저 에이전트(303, UA3)는 <대기>로 기록할 수 있다. Since the first real SIP server 305 is performing a call connection between the first user agent 301 and the second user agent 302, as shown by reference numeral 340, the first user as call STATUS information of each user agent. The agents 301 and UA1 and the second user agents 302 and UA2 may record as <connection> and the third user agents 303 and UA3 as <wait>.

SIP 로드밸런서(304)는 제3 유저 에이전트(303)로부터 제1 유저 에이전트(301)로의 제3 SIP 메시지를 수신할 수 있다. 도면 부호(330)과 같이 제3 SIP 메시지는 INVITE 메소드 정보 및 제3 콜아이디 정보 <3001>을 포함할 수 있다. The SIP load balancer 304 may receive a third SIP message from the third user agent 303 to the first user agent 301. As illustrated by the reference numeral 330, the third SIP message may include INVITE method information and third call ID information.

SIP 로드밸런서(304)는 정보 테이블을 참조하여 제3 콜아이디 정보 및 리얼 SIP 서버 식별 정보를 검색하고, 검색되지 않으면 연결 가능한 리얼 SIP 서버를 할당하여 제3 SIP 메시지를 전송한다. The SIP load balancer 304 searches for the third call ID information and the real SIP server identification information with reference to the information table, and if not found, allocates a real SIP server that can be connected and transmits the third SIP message.

이 때, SIP 로드밸런서(304)는 제1 유저 에이전트(301)와 제2 유저 에이전트(302) 간 호 연결을 담당하는 제1 리얼 SIP 서버를 새로운 리얼 SIP 서버로 할당할 수도 있으나, 해당 메시지 처리를 위해 제2 리얼 SIP 서버(306)를 할당하여 제2 리얼 SIP 서버(306)로 상기 제3 SIP 메시지를 전송할 수 있다. 이 경우, 제2 리얼 SIP 서버(306)에는 제1 유저 에이전트(301) 및 제2 유저 에이전트(302)의 콜 STATUS에 대한 정보가 없으므로, 도면 부호(350)과 같이 제1 유저 에이전트(301. UA1), 제2 유저 에이전트(302, UA2), 및 제3 유저 에이전트(303, UA3)의 콜 STATUS 정보가 모두 <대기>로 기록될 수 있다. At this time, the SIP load balancer 304 may allocate the first real SIP server that is in charge of the call connection between the first user agent 301 and the second user agent 302 as a new real SIP server, but process the corresponding message. The second real SIP server 306 may be allocated to transmit the third SIP message to the second real SIP server 306. In this case, since the second real SIP server 306 does not have information on the call status of the first user agent 301 and the second user agent 302, the first user agent 301 as shown by reference numeral 350. Call STATUS information of UA1), second user agent 302, UA2, and third user agent 303, UA3 may all be recorded as <wait>.

따라서, B2BUA 방식/프락시 방식에 무관하게, SIP 네트워크에서 실질적으로는 제1 유저 에이전트(301)와 제2 유저 에이전트(302) 간의 호가 연결되어 있고 제3 유저 에이전트(303)는 호 설정 대기 중인 상태이지만, 제2 리얼 SIP 서버(306)는 이러한 유저 에이전트들에 대한 콜 STATUS 정보를 전혀 가지고 있지 않으므로, 제3 유저 에이전트(303)와 제2 유저 에이전트(303) 간의 호 설정이 지연되어 효율적인 로드밸런싱이 수행되지 못한다는 문제점이 있다.Therefore, regardless of the B2BUA scheme / proxy scheme, a call between the first user agent 301 and the second user agent 302 is substantially connected in the SIP network, and the third user agent 303 is waiting for call establishment. However, since the second real SIP server 306 has no call status information for these user agents at all, the call setup between the third user agent 303 and the second user agent 303 is delayed for efficient load balancing. There is a problem that this cannot be done.

이와 같이 종래 기술의 콜아이디를 이용한 로드밸런싱 방법은 도 2 및 도 3을 참조하여 상술한 바와 같이 제1 유저 에이전트와 제2 유저 에이전트 간 및 제1 또는 제2 유저 에이전트와 제3 유저 에이전트 간 호 설정이 지연되어 효율적인 로드밸런싱을 수행할 수 없다는 문제점이 있었다.As described above, the load balancing method using the call ID of the prior art, as described above with reference to FIGS. 2 and 3, calls between the first user agent and the second user agent and between the first or second user agent and the third user agent. There was a problem in that the configuration was delayed and efficient load balancing could not be performed.

따라서 유저 에이전트 간의 호 설정을 신속하게 처리하여 효율적인 로드밸런싱을 수행할 수 있는 방법의 출현이 절실하게 요구되고 있다.Therefore, there is an urgent need for the emergence of a method that can efficiently handle call setup between user agents and perform efficient load balancing.

본 발명은 상술한 바와 같은 종래 기술의 문제점을 해결하기 위해 안출된 것으로서, SIP 로드밸런서에서 리얼 SIP 서버로부터 수신한 SIP 메시지의 콜아이디 정보 및 리얼 SIP 서버 식별 정보를 이용하여 로드밸런싱하는 방법, 유저 에이전트의 주소를 이용하여 로드밸런싱하는 방법 및 유저 에이전트의 식별자를 이용하여 로드밸런싱하는 방법을 제공하는 것을 목적으로 한다.The present invention has been made to solve the problems of the prior art as described above, a method for load balancing using call ID information and real SIP server identification information of a SIP message received from a real SIP server in a SIP load balancer, a user An object of the present invention is to provide a method of load balancing using an agent address and a method of load balancing using an identifier of a user agent.

본 발명은 SIP 로드밸런서에서 리얼 SIP 서버로부터 수신한 SIP 메시지의 콜아이디 정보 및 리얼 SIP 서버 식별 정보를 이용하여 로드밸런싱하고, 유저 에이전트의 주소를 이용하여 로드밸런싱함으로써 유저 에이전트 간의 호 설정이 신속하게 수행될 수 있도록 하는 것을 목적으로 한다. In the present invention, the SIP load balancer load balances the call ID information and the real SIP server identification information of the SIP message received from the real SIP server, and load balances the user agent's address to quickly establish call between user agents. It is intended to be able to be performed.

본 발명은 SIP 로드밸런서에서 모집단 식별자 별로 대응하는 리얼 SIP 서버를 할당하여 SIP 메시지를 처리함으로써 효율적인 로드밸런싱이 가능하도록 하고, 서버들 간의 데이터베이스의 공유를 최적화하는 것을 목적으로 한다. An object of the present invention is to allocate a real SIP server corresponding to a population identifier in a SIP load balancer to process an SIP message, thereby enabling efficient load balancing and optimizing a database sharing among servers.

상기의 목적을 달성하고, 상술한 종래기술의 문제점을 해결하기 위하여, 본 발명의 일실시예에 따른 SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법은, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지를 수신하는 단계 - 상기 제1 SIP 메시지는 메소드 정보 및 제1 콜아이디 정보를 포함함 -; 상기 제1 SIP 메시지의 상기 제1 콜아이디 정보와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계; 상기 제1 SIP 메시지를 상기 제1 리얼 SIP 서버로 포워딩하는 단계; 상기 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 콜아이디 정보를 포함함 - 을 수신하고, 상기 제2 SIP 메시지에 포함된 상기 제2 콜아이디 정보 및 상기 제1 리얼 SIP 서버의 식별 정보를 상기 정보 테이블에 기록하는 단계; 상기 제2 유저 에이전트로부터 상기 제2 SIP 메시지에 대한 응답 메시지 - 상기 응답 메시지는 상기 제2 콜아이디 정보를 포함함 - 를 수신하고, 상기 정보 테이블을 참조하여 상기 제2 콜아이디 정보에 대응하는 식별 정보를 검색하는 단계; 및 상기 검색된 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 응답 메시지를 포워딩하는 단계를 포함하는 것을 특징으로 한다.In order to achieve the above object and to solve the above problems of the prior art, a method for performing load balancing in a Session Initiation Protocol (SIP) network according to an embodiment of the present invention, the second user from the first user agent Receiving a first SIP message to an agent, wherein the first SIP message includes method information and first call ID information; Recording the first call ID information of the first SIP message and identification information of a first real SIP server to process the first SIP message in a predetermined information table; Forwarding the first SIP message to the first real SIP server; Receive a second SIP message transmitted from the first real SIP server to the second user agent, wherein the second SIP message includes method information and second call ID information and is included in the second SIP message; Recording the second call ID information and the identification information of the first real SIP server in the information table; Receive a response message for the second SIP message from the second user agent, wherein the response message includes the second call ID information and refer to the information table for identification corresponding to the second call ID information; Retrieving information; And forwarding the response message to the first real SIP server corresponding to the retrieved identification information.

본 발명의 다른 실시예에 따른 SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법은, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지- 상기 제1 SIP 메시지는 메소드 정보, 제1 유저 에이전트 주 소, 및 제2 유저 에이전트 주소를 포함함 - 를 수신하는 단계; 상기 제1 SIP 메시지의 상기 제1 유저 에이전트 주소, 상기 제2 유저 에이전트 주소, 및 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계; 상기 제1 SIP 메시지를 상기 제1 리얼 SIP 서버로 포워딩하는 단계; 상기 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 유저 에이전트 주소를 포함함 - 를 수신하는 단계; 제3 유저 에이전트로부터 상기 제1 유저 에이전트 또는 상기 제2 유저 에이전트로의 제3 SIP 메시지- 상기 제3 SIP 메시지는 메소드 정보 및 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소를 포함함 - 를 수신하고, 상기 정보 테이블을 참조하여 상기 제1 유저 에이전트 주소 또는 제2 유저 에이전트 주소에 대응하는 식별 정보를 검색하는 단계; 및 상기 검색된 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 제3 SIP 메시지를 포워딩하는 단계를 포함하는 것을 특징으로 한다.In accordance with another embodiment of the present invention, a method for performing load balancing in a Session Initiation Protocol (SIP) network includes: a first SIP message from a first user agent to a second user agent, wherein the first SIP message includes method information; Receiving a first user agent address, and a second user agent address; Recording the first user agent address of the first SIP message, the second user agent address, and identification information of a first real SIP server to process the first SIP message in a predetermined information table; Forwarding the first SIP message to the first real SIP server; Receiving a second SIP message sent from the first real SIP server to the second user agent, wherein the second SIP message includes method information and a second user agent address; A third SIP message from a third user agent to the first user agent or the second user agent, wherein the third SIP message includes method information and the first user agent address or the second user agent address; Receiving and retrieving identification information corresponding to the first user agent address or the second user agent address with reference to the information table; And forwarding the third SIP message to the first real SIP server corresponding to the retrieved identification information.

본 발명의 또 다른 실시예에 따른 SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법은, 제1 유저 에이전트로부터 상기 제1 유저 에이전트의 식별자를 포함하는 제1 SIP 메시지를 수신하는 단계; 상기 제1 유저 에이전트의 식별자에서 소정의 모집단 식별자를 추출하고, 상기 모집단 식별자와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계; 제2 유저 에이전트로부터 상기 제2 유저 에이전트의 식별자를 포함하는 제2 SIP 메시지를 수신하는 단계; 상기 정보 테이블을 참조하여 상기 식별자 에 대응하는 모집단 식별자를 검색하고, 상기 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 검색하는 단계; 및 상기 검색된 식별 정보에 대응하는 리얼 SIP 서버로 상기 제2 SIP 메시지를 포워딩하는 단계를 포함하는 것을 특징으로 한다.According to another embodiment of the present invention, a method for performing load balancing in a Session Initiation Protocol (SIP) network includes: receiving a first SIP message including an identifier of the first user agent from a first user agent; Extracting a predetermined population identifier from the identifier of the first user agent and recording the population identifier and identification information of a first real SIP server to process the first SIP message in a predetermined information table; Receiving a second SIP message comprising an identifier of the second user agent from a second user agent; Retrieving a population identifier corresponding to the identifier by referring to the information table and retrieving identification information of a real SIP server corresponding to the population identifier; And forwarding the second SIP message to the real SIP server corresponding to the retrieved identification information.

이하 첨부된 도면을 참조하여 본 발명에 따른 SIP 네트워크에서의 로드밸런싱 방법 및 장치에 대하여 상세히 설명한다.Hereinafter, a load balancing method and apparatus in a SIP network according to the present invention will be described in detail with reference to the accompanying drawings.

도 4는 본 발명의 일실시예에 따라 리얼 SIP 서버로부터 전송되는 SIP 메시지에 포함된 콜아이디를 이용하여 로드밸런싱하는 과정을 도시한 도면이다. 4 is a diagram illustrating a process of load balancing using a call ID included in a SIP message transmitted from a real SIP server according to an embodiment of the present invention.

제1 유저 에이전트(401)는 제2 유저 에이전트(402)로의 제1 SIP 메시지를 SIP 로드밸런서(403)로 전송한다. 이때 제1 SIP 메시지는 도면 부호(410)과 같이 INVITE 메소드 정보 및 제1 콜아이디 정보 <1001>를 포함할 수 있다. The first user agent 401 sends a first SIP message to the second user agent 402 to the SIP load balancer 403. In this case, the first SIP message may include INVITE method information and first call ID information <1001> as shown by reference numeral 410.

SIP 로드밸런서(403)는 제1 SIP 메시지를 수신하여 제1 콜아이디 정보를 식별한다. 소정의 정보 테이블을 참조하여 제1 콜아이디 정보 및 리얼 SIP 서버 식별 정보가 있는지를 검색하고, 검색되지 않으면 제1 리얼 SIP 서버(404)를 할당하고, 정보 테이블에 제1 콜아이디 정보 및 제1 리얼 SIP 서버(404)의 식별 정보를 기록한다. The SIP load balancer 403 receives the first SIP message to identify the first call ID information. Search for the presence of the first call ID information and the real SIP server identification information with reference to the predetermined information table; if not found, allocate the first real SIP server 404; and the first call ID information and the first call table in the information table. The identification information of the real SIP server 404 is recorded.

도 4를 참조하면, 정보 테이블(420)에 제1 콜아이디 정보 <1001>와 제1 리얼 SIP 서버 식별 정보 <P1>이 기록되었음을 알 수 있다. Referring to FIG. 4, it can be seen that the first call ID information <1001> and the first real SIP server identification information <P1> are recorded in the information table 420.

SIP 로드밸런서(403)는 할당된 제1 리얼 SIP 서버(404)로 제1 SIP 메시지를 포워딩한다. 제1 리얼 SIP 서버(404)는 제1 SIP 메시지를 수신한 후, 이에 대응하 는 제2 SIP 메시지를 SIP 로드밸런서(403)로 전송한다. The SIP load balancer 403 forwards the first SIP message to the assigned first real SIP server 404. After receiving the first SIP message, the first real SIP server 404 transmits a second SIP message corresponding thereto to the SIP load balancer 403.

제2 SIP 메시지는 INVITE 메소드 정보 및 제2 콜아이디 정보를 포함할 수 있다. 이 때 B2BUA 방식의 리얼 SIP 서버인 경우, 제2 콜아이디가 제 1 콜아이디가 서로 상이하다. The second SIP message may include INVITE method information and second call ID information. At this time, in the case of a B2BUA type real SIP server, the second call ID is different from the first call ID.

SIP 로드밸런서(403)는 수신한 제2 SIP 메시지에 포함된 제2 콜아이디 정보 및 제1 리얼 SIP 서버의 식별 정보를 상기 정보 테이블에 기록한다. 즉, 유저 에이전트에서 외부로 전송되는(outbound) SIP 메시지에 대한 콜아이디를 기록하는 것뿐 아니라 외부에서 유저 에이전트로 전송되는(inbound) SIP 메시지에 대한 콜아이디도 함께 기록한다. 상기 예에서 SIP 로드밸런서(403)는 제2 콜아이디 정보 <3001> 및 제1 리얼 SIP 서버 식별 정보 <P1>을 정보 테이블에 기록할 수 있다. The SIP load balancer 403 records the second call ID information and the identification information of the first real SIP server included in the received second SIP message in the information table. That is, in addition to recording the call ID for the SIP message outbound from the user agent, the call ID for the SIP message inbound from the external agent is also recorded. In the above example, the SIP load balancer 403 may record the second call ID information <3001> and the first real SIP server identification information <P1> in the information table.

SIP 로드밸런서(403)는 수신한 제2 SIP 메시지를 제2 유저 에이전트(402)로 전송한다. 제2 유저 에이전트(402)는 제2 SIP 메시지를 수신하고, 이에 대한 응답 메시지를 SIP 로드밸런서(403)로 전송한다. 이때 응답 메시지는 제2 SIP 메시지의 제2 콜아이디 정보를 포함하고 있다.The SIP load balancer 403 transmits the received second SIP message to the second user agent 402. The second user agent 402 receives the second SIP message and sends a response message to the SIP load balancer 403. At this time, the response message includes the second call ID information of the second SIP message.

SIP 로드밸런서(403)는 수신한 응답 메시지의 제2 콜아이디 정보를 식별하고 상기 정보 테이블을 참조하여 제2 콜아이디 정보 및 설정된 리얼 SIP 서버 정보를 검색한다. 상술한 바와 같이 제2 콜아이디 정보 및 제1 리얼 SIP 서버의 식별정보가 상기 정보 테이블에 기록되어 있으므로, 이를 참조하여 검색된 제1 리얼 SIP 서버로 상기 응답 메시지를 포워딩한다. The SIP load balancer 403 identifies the second call ID information of the received response message and retrieves the second call ID information and the set real SIP server information by referring to the information table. As described above, since the second call ID information and the identification information of the first real SIP server are recorded in the information table, the response message is forwarded to the retrieved first real SIP server with reference to the information.

상기 예에서 제2 콜아이디 정보 <3001> 및 설정된 리얼 SIP 서버 정보 <P1> 는 상기 정보 테이블에서 검색되므로, SIP 로드밸런서(403)는 제1 리얼 SIP 서버(405)로 응답 메시지를 포워딩하게 된다. In the above example, since the second call ID information <3001> and the set real SIP server information <P1> are retrieved from the information table, the SIP load balancer 403 forwards the response message to the first real SIP server 405. .

따라서 본 발명에 따른 SIP 네트워크에서의 SIP 로드밸런싱 방법에 따르면, 제1 리얼 SIP 서버로부터 제2 유저 에이전트로 전송되는 제2 SIP 메시지에 포함된 제2 콜아이디 정보 및 제1 리얼 SIP 서버 식별 정보를 상기 정보 테이블에 기록하고, 제2 유저 에이전트로부터 전송된 응답 메시지에 포함된 제2 콜아이디 정보를 식별하여 상기 정보 테이블에 기록된 제1 리얼 SIP 서버로 응답 메시지를 전송함으로써, 효율적인 로드밸런싱을 수행하는 것이 가능하다.Therefore, according to the SIP load balancing method in the SIP network according to the present invention, the second call ID information and the first real SIP server identification information included in the second SIP message transmitted from the first real SIP server to the second user agent Efficient load balancing is performed by recording the information in the information table, identifying the second call ID information included in the response message transmitted from the second user agent, and transmitting the response message to the first real SIP server recorded in the information table. It is possible to do

도 5는 본 발명에 따라 유저 에이전트 주소를 이용하여 로드밸런싱하는 과정을 도시한 도면이다. 5 is a diagram illustrating a process of load balancing using a user agent address according to the present invention.

제1 유저 에이전트(501)는 제2 유저 에이전트(502)로의 제1 SIP 메시지를 SIP 로드밸런서(504)로 전송한다. 상기 제1 SIP 메시지는 INVITE 메소드 정보, 제1 유저 에이전트 주소, 및 제2 유저 에이전트 주소를 포함할 수 있다. 유저 에이전트의 주소는 SIP Request-URI(Uniform Resource Identifier)를 포함할 수 있으며, 그 밖에 다양한 네트워크 주소로 응용될 수 있음은 물론이다. The first user agent 501 sends a first SIP message to the second user agent 502 to the SIP load balancer 504. The first SIP message may include INVITE method information, a first user agent address, and a second user agent address. The address of the user agent may include a SIP Uniform Resource Identifier (URI), and may be applied to various network addresses.

SIP 로드밸런서(504)는 상기 제1 SIP 메시지를 수신하여 설정 가능한 제1 리얼 SIP 서버(505)를 할당하고 제1 SIP 메시지를 제1 리얼 SIP 서버(505)로 포워딩한다. 이때 SIP 로드밸런서(504)는 제1 SIP 메시지에 포함된 제1 유저 에이전트 주소와 제2 유저 에이전트 주소, 및 제1 리얼 SIP 서버 식별 정보를 정보 테이블에 기록한다. 도 5를 참조하면 제1 유저 에이전트 주소 <ua1@a.com>과 제2 유저 에이 전트 주소 <ua2@a.com>, 및 제1 리얼 SIP 서버의 식별 정보 <P1>가 정보 테이블(550)에 기록됨을 알 수 있다.The SIP load balancer 504 receives the first SIP message, allocates a first real SIP server 505 that can be set, and forwards the first SIP message to the first real SIP server 505. At this time, the SIP load balancer 504 records the first user agent address, the second user agent address, and the first real SIP server identification information included in the first SIP message in the information table. Referring to FIG. 5, the first user agent address <ua1@a.com>, the second user agent address <ua2@a.com>, and the identification information <P1> of the first real SIP server are included in the information table 550. You can see that it is recorded in.

제1 리얼 SIP 서버(505)는 상기 제1 SIP 메시지를 수신하고, SIP 로드밸런서(504)로 제2 SIP 메시지를 전송한다. 제2 SIP 메시지는 INVITE 메소드 정보 및 제2 유저 에이전트 주소를 포함한다. 제1 리얼 SIP 서버(505)는 제1 유저 에이전트(501)와 제2 유저 에이전트(502) 간의 호 연결을 수행하므로 도면 부호(520)과 같이 콜 STATUS 정보로써 제1 유저 에이전트(501, UA1) 및 제2 유저 에이전트(502, UA2)는 <연결>로, 제3 유저 에이전트(503, UA3)는 <대기>로 기록할 수 있다. The first real SIP server 505 receives the first SIP message and transmits a second SIP message to the SIP load balancer 504. The second SIP message includes the INVITE method information and the second user agent address. Since the first real SIP server 505 performs a call connection between the first user agent 501 and the second user agent 502, the first user agents 501 and UA1 as call STATUS information as shown by reference numeral 520. And the second user agent 502 and UA2 may be recorded as <connection>, and the third user agent 503 and UA3 may be recorded as <standby>.

SIP 로드밸런서(504)는 제2 SIP 메시지를 제2 유저 에이전트(502)로 전송하고, 제2 유저 에이전트(502)로부터 응답 메시지를 수신하여 리얼 SIP 서버를 거쳐 제1 유저 에이전트(501)로 전송함으로써 제1 유저 에이전트(501)와 제2 유저 에이전트(502) 간에 호가 설정되도록 한다.The SIP load balancer 504 transmits the second SIP message to the second user agent 502, receives a response message from the second user agent 502, and sends the response message to the first user agent 501 via the real SIP server. This allows a call to be established between the first user agent 501 and the second user agent 502.

다음으로, SIP 로드밸런서(504)는 제3 유저 에이전트(503)로부터 제1 유저 에이전트로(502)의 제3 SIP 메시지를 수신한다. 이하에서는 제3 유저 에이전트(503)와 제1 유저 에이전트(501) 간 호 설정을 예로 들어 설명하나 다음과 같은 로드밸런싱 방법은 제3 유저 에이전트(503)와 제2 유저 에이전트(502) 간 호 설정의 경우에도 마찬가지로 적용될 수 있다. Next, the SIP load balancer 504 receives the third SIP message from the third user agent 503 to the first user agent 502. Hereinafter, a call setting between the third user agent 503 and the first user agent 501 will be described as an example. However, the following load balancing method sets the call between the third user agent 503 and the second user agent 502. The same may be applied to the case.

제3 SIP 메시지는 INVITE 메소드 정보 및 제1 유저 에이전트 주소를 포함할 수 있다. SIP 로드밸런서(504)는 정보 테이블을 참조하여 상기 제3 SIP 메시지에 포함된 제1 유저 에이전트 주소에 대응하는 제1 리얼 SIP 서버 식별 정보를 검색한 다. 상기 예에서 제1 유저 에이전트 주소 <ua1@a.com>에 대응하는 제1 리얼 SIP 서버 식별 정보는 <P1>으로 검색될 수 있다. SIP 로드밸런서(504)는 식별된 제1 리얼 SIP 서버(505)로 제3 SIP 메시지를 포워딩한다. The third SIP message may include the INVITE method information and the first user agent address. The SIP load balancer 504 retrieves first real SIP server identification information corresponding to the first user agent address included in the third SIP message by referring to the information table. In the above example, the first real SIP server identification information corresponding to the first user agent address <ua1@a.com> may be retrieved as <P1>. The SIP load balancer 504 forwards the third SIP message to the identified first real SIP server 505.

또한 제3 SIP 메시지가 제2 유저 에이전트(502)로 전송되는 SIP 메시지인 경우, 제3 SIP 메시지는 INVITE 메소드 정보 및 제2 유저 에이전트 주소를 포함할 수 있으며, SIP 로드밸런서(504)는 정보 테이블을 참조하여 제3 SIP 메시지에 포함된 제2 유저 에이전트 주소에 대응하는 제1 리얼 SIP 서버 식별 정보를 검색하여 식별된 제1 리얼 SIP 서버(505)로 제3 SIP 메시지를 포워딩할 수 있다. In addition, when the third SIP message is a SIP message transmitted to the second user agent 502, the third SIP message may include INVITE method information and a second user agent address, and the SIP load balancer 504 may include an information table. The first SIP server 505 may search for the first real SIP server identification information corresponding to the second user agent address included in the third SIP message, and forward the third SIP message to the identified first real SIP server 505.

따라서 본 발명에 의한 로드밸런싱 방법에 의하면 이미 호 설정된 제1 유저 에이전트 또는 제2 유저 에이전트로 전송되는 제3 SIP 메시지를 제1 유저 에이전트와 제2 유저 에이전트간 호 설정을 수행하는 리얼 SIP 서버로 전송할 수 있으므로 호 설정이 신속하게 수행될 수 있다. Therefore, according to the load balancing method according to the present invention, the third SIP message transmitted to the first user agent or the second user agent which is already set up is transmitted to the real SIP server which performs the call setup between the first user agent and the second user agent. Call setup can be performed quickly.

도 6은 본 발명의 일실시예에 따라 모집단 식별자를 이용하여 로드밸런싱을 수행하는 과정의 흐름을 도시한 흐름도이다. 본 발명에 따라 유저 에이전트의 식별자를 이용하여 로드밸런싱을 수행하는 과정은 다음과 같다. 다음의 과정은 SIP 서버에서 구현될 수 있으므로, 이와 같은 경우를 예로 들어 설명한다. 6 is a flowchart illustrating a flow of a process of performing load balancing using a population identifier according to an embodiment of the present invention. According to the present invention, a process of performing load balancing using an identifier of a user agent is as follows. Since the following process can be implemented in the SIP server, this case will be described as an example.

SIP 로드밸런서는 단계(S601)에서 제1 유저 에이전트로부터 제1 유저 에이전트의 식별자를 포함하는 제1 SIP 메시지를 수신한다. 유저 에이전트의 식별자는 유저 에이전트의 네트워크 주소를 포함할 수 있다. The SIP load balancer receives a first SIP message including an identifier of the first user agent from the first user agent in step S601. The identifier of the user agent may include the network address of the user agent.

SIP 로드밸런서는 단계(S602)에서 상기 제1 유저 에이전트의 식별자에서 소 정의 모집단 식별자를 추출한다. 모집단 식별자를 추출함에 있어서, SIP 메시지의 헤더에 포함되는 각 필드 정보를 이용할 수 있다. 각 필드(TO, From, Call-ID, Contact) 또는 각 필드 내의 정보 (도메인 네임, IP 주소, 국번주소, 각종 tag) 정보가 모집단 식별자가 될 수 있다. 또한, 모집단 식별자는 이 필드의 일부 및 논리적인 조합일 수 있다. The SIP load balancer extracts a predetermined population identifier from the identifier of the first user agent in step S602. In extracting the population identifier, each field information included in the header of the SIP message may be used. Population identifiers may be information in each field (TO, From, Call-ID, Contact) or information in each field (domain name, IP address, address number, various tags). In addition, the population identifier may be some and logical combination of this field.

이러한 SIP 메시지의 헤더에 포함되는 정보의 일예가 도 7에 도시되어 있다. 통상의 SIP 메시지 헤더는 아래와 같은 정보가 포함되어 있다.An example of information included in the header of such a SIP message is shown in FIG. A typical SIP message header contains the following information.

INVITE sip:bob@a.com SIP/2.0INVITE sip: bob@a.com SIP / 2.0

Via: SIP/2.0/UDP pc33.aa.com;branch=z9hG4bK776asdfdsVia: SIP / 2.0 / UDP pc33.aa.com; branch = z9hG4bK776asdfds

Max-Forwards: 70Max-Forwards: 70

To: Bob <sip:bob@a.com>To: Bob <sip: bob@a.com>

From: Alice <sip:alice@b.com>;tag=123123From: Alice <sip: alice@b.com>; tag = 123123

Call-ID: asdf899asfD@pc33.aa.comCall-ID: asdf899asfD@pc33.aa.com

CSeq: 314159 INVITECSeq: 314159 INVITE

Contact: <sip:alice@pc33.aa.com>Contact: <sip: alice@pc33.aa.com>

Content-Type: application/sdp Content-Type: application / sdp

Content-Length: 142Content-Length: 142

상기한 SIP 메시지의 헤더에 포함되는 정보에 대한 사항은 당업자에게 잘 알려져 있는 것이므로 상세한 설명은 생략한다.Details of the information included in the header of the SIP message are well known to those skilled in the art, and thus detailed description thereof will be omitted.

SIP 로드밸런서는 단계(S603)에서 제 1 SIP 메시지를 전송할 제1 리얼 SIP 서버를 할당하고, 상기 모집단 식별자와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록한 후 제1 SIP 메시지를 제1 리얼 SIP 서버로 포워딩한다.In step S603, the SIP load balancer allocates a first real SIP server to which the first SIP message is to be transmitted, and assigns the population identifier and identification information of the first real SIP server to process the first SIP message to a predetermined information table. After recording, the first SIP message is forwarded to the first real SIP server.

SIP 로드밸런서는 단계(S604)에서 제2 유저 에이전트로부터 제2 유저 에이전트의 식별자를 포함하는 제2 SIP 메시지를 수신한다. The SIP load balancer receives a second SIP message including an identifier of the second user agent from the second user agent in step S604.

SIP 로드밸런서는 단계(S605)에서 상기 정보 테이블을 참조하여 제2 유저 에이전트의 식별자에 대응하는 모집단 식별자를 검색한다. In step S605, the SIP load balancer searches for a population identifier corresponding to the identifier of the second user agent by referring to the information table.

SIP 로드밸런서는 단계(S606)에서 검색 결과 제2 SIP 메시지에 포함된 식별자에 대응하는 모집단 식별자가 존재하는 경우에는 모집단 식별자에 대응하는 리얼 SIP 서버로 제2 SIP 메시지를 포워딩한다.In step S606, the SIP load balancer forwards the second SIP message to the real SIP server corresponding to the population identifier when the population identifier corresponding to the identifier included in the second SIP message is found.

상기 검색 결과 대응하는 모집단 식별자가 존재하지 아니하는 경우, SIP 로드밸런서는 단계(S607)에서 모집단 식별자를 추출하고, 제2 SIP 메시지를 처리할 제2 리얼 SIP 서버를 할당한다. If there is no corresponding population identifier as a result of the search, the SIP load balancer extracts the population identifier in step S607 and allocates a second real SIP server to process the second SIP message.

SIP 로드밸런서는 단계(S608)에서 제2 SIP 메시지로부터 추출한 모집단 식별자와 제2 메시지를 처리할 제2 리얼 SIP 서버 식별정보를 상기 정보 테이블에 기록한다. In step S608, the SIP load balancer records the population identifier extracted from the second SIP message and the second real SIP server identification information to process the second message in the information table.

이와 같은 본원 발명의 유저 에이전트의 모집단 식별자를 이용한 로드밸런싱 방법은 유저 에이전트들을 모집단 식별자에 따라 소정 개수의 그룹으로 나누고 각 모집단 식별자에 대응하는 리얼 SIP 서버를 할당함으로써, 호 설정 처리가 신속하게 이루어질 수 있으며, 효율적인 로드밸런싱이 수행될 수 있는 효과가 있다. 또 한 그룹별 유저 에이전트의 콜 STATUS를 각 리얼 SIP 서버에서 관리하므로 서버들 간 데이터베이스에 기록되는 콜 STATUS 정보의 공유를 최적화할 수 있다. In such a load balancing method using a population identifier of a user agent of the present invention, call setup processing can be performed quickly by dividing the user agents into a predetermined number of groups according to the population identifier and allocating a real SIP server corresponding to each population identifier. In addition, there is an effect that efficient load balancing can be performed. In addition, since the call status of user agents for each group is managed by each real SIP server, the sharing of call status information recorded in the database between servers can be optimized.

또한 상기 모집단 식별자에 따른 그룹 지정으로 특정 그룹에 대한 서비스를 별도로 지정하여 관리할 수 있다. 예를 들어, 모집단 식별자가 동일한 그룹 내에서만 3자 통화, 메신저 서비스 등을 가능하게 하거나 모집단 식별자가 동일한 그룹별로 과금을 수행할 수도 있다. In addition, by specifying a group according to the population identifier, a service for a specific group may be separately designated and managed. For example, a three-party call, a messenger service, or the like may be enabled only within a group having the same population identifier, or billing may be performed for a group having the same population identifier.

도 8은 본 발명의 일실시예에 따라 모집단 식별자를 유저 에이전트의 도메인 네임의 상위단으로 설정한 경우의 네트워크 연결과 정보 테이블의 일예를 도시한 것이다. 8 illustrates an example of a network connection and an information table in a case where a population identifier is set higher than a domain name of a user agent according to an embodiment of the present invention.

SIP 로드밸런서(805)는 정보 테이블(800)에 유저 에이전트의 네트워크 주소에서 추출한 모집단 식별자(809) 및 대응하는 리얼 SIP 서버의 식별 정보(811)를 기록한다. 또한 실시예에 따라서는 각 유저 에이전트로부터 수신한 SIP 메시지에 포함된 콜아이디 정보(810)를 기록할 수 있다. The SIP load balancer 805 records the population identifier 809 extracted from the user agent's network address and the identification information 811 of the corresponding real SIP server in the information table 800. In some embodiments, the call ID information 810 included in the SIP message received from each user agent may be recorded.

SIP 로드밸런서(805)는 유저 에이전트로부터 유저 에이전트 식별자를 포함하는 SIP 메시지를 수신하면, 도 7에서 상술한 과정으로 SIP 메시지를 유저 에이전트 식별자로부터 추출된 모집단 식별자에 대응하는 리얼 SIP 서버로 포워딩한다. When the SIP load balancer 805 receives the SIP message including the user agent identifier from the user agent, the SIP load balancer 805 forwards the SIP message to the real SIP server corresponding to the population identifier extracted from the user agent identifier by the process described with reference to FIG. 7.

예를 들어, 유저 에이전트로부터 모집단 식별자 <a.com>를 포함하는 SIP 메시지를 수신하는 경우, 정보 테이블(800)을 참조하여 대응하는 리얼 SIP 서버 <P 1>으로 SIP 메시지를 전송할 수 있다. For example, when receiving a SIP message including the population identifier <a.com> from the user agent, the SIP message may be transmitted to the corresponding real SIP server <P 1> with reference to the information table 800.

또한 도 8에서는 도메인 네임의 상위단을 모집단 식별자로 설정하는 경우에 대하여 설명하였으나 유저 에이전트의 네트워크 주소, SIP 어드레스, IP 어드레스, 국번 중 하나이거나 이들의 일부를 모집단 식별자로 설정하더라도 도 7 및 도 8을 참조하여 설명한 로드밸런싱 방법이 적용 가능함은 당업자에게 용이하게 이해될 수 있을 것이다. In FIG. 8, the case where the upper end of the domain name is set as the population identifier has been described. However, even if one or a part of the network address, the SIP address, the IP address, or the station number of the user agent is set as the population identifier, FIGS. 7 and 8 are described. It will be readily understood by those skilled in the art that the load balancing method described with reference to is applicable.

본 발명에 따른 SIP 네트워크에서 로드밸런싱을 수행하는 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 상기 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으 며, 그 역도 마찬가지이다.A method for performing load balancing in a SIP network according to the present invention may be implemented in the form of program instructions that can be executed by various computer means and recorded in a computer readable medium. The computer readable medium may include program instructions, data files, data structures, etc. alone or in combination. Program instructions recorded on the media may be those specially designed and constructed for the purposes of the present invention, or they may be of the kind well-known and available to those having skill in the computer software arts. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tape, optical media such as CD-ROMs, DVDs, and magnetic disks, such as floppy disks. Magneto-optical media, and hardware devices specifically configured to store and execute program instructions, such as ROM, RAM, flash memory, and the like. The medium may be a transmission medium such as an optical or metal wire, a waveguide, or the like including a carrier wave for transmitting a signal specifying a program command, a data structure, or the like. Examples of program instructions include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like. The hardware device described above may be configured to operate as one or more software modules to perform the operations of the present invention, and vice versa.

도 9는 본 발명의 일실시예에 따라 콜아이디를 이용하여 로드밸런싱을 수행하는 시스템의 구성을 도시한 블록도이다. 9 is a block diagram illustrating a configuration of a system for performing load balancing using a call ID according to an embodiment of the present invention.

유저 에이전트 통신부(901)는 유저 에이전트로부터 메소드 정보 및 콜아이디 정보를 포함하는 SIP 메시지를 수신하고, 리얼 SIP 서버로부터 전송된 SIP 메시지를 소정의 유저 에이전트에게 전송하는 기능을 담당한다. The user agent communication unit 901 is responsible for receiving a SIP message including method information and call ID information from the user agent and transmitting a SIP message transmitted from a real SIP server to a predetermined user agent.

정보 테이블(902)은 소정의 콜아이디 정보와 해당 콜아이디 정보에 대응하는 리얼 SIP 서버의 식별 정보를 유지한다. The information table 902 holds predetermined call ID information and identification information of a real SIP server corresponding to the call ID information.

검색부(904)는 정보 테이블(902)을 참조하여 콜아이디 정보에 대응하는 리얼 SIP 서버의 식별 정보를 검색한다. The search unit 904 searches for the identification information of the real SIP server corresponding to the call ID information with reference to the information table 902.

리얼 SIP 서버 통신부(903)는 검색부(904)에서 검색된 식별 정보에 대응하는 리얼 SIP 서버로 SIP 메시지를 포워딩하고, 리얼 SIP 서버로부터 소정의 SIP 메시지를 수신하는 기능을 담당한다.The real SIP server communication unit 903 is responsible for forwarding the SIP message to the real SIP server corresponding to the identification information retrieved by the retrieval unit 904 and receiving a predetermined SIP message from the real SIP server.

정보 테이블 관리부(905)는 유저 에이전트 통신부(901) 또는 리얼 SIP 서버 통신부(903)에서 수신된 SIP 메시지에서 소정의 콜아이디 정보를 추출하고, 해당 콜아이디 정보와 상기 SIP 메시지를 처리할 리얼 SIP 서버의 식별 정보를 정보 테이블(902)에 기록한다. The information table manager 905 extracts predetermined call ID information from the SIP message received from the user agent communication unit 901 or the real SIP server communication unit 903, and processes the call ID information and the SIP message. The identification information is recorded in the information table 902.

이러한 도 9의 로드밸런싱 시스템의 상세 동작 내용은 전술한 도 4의 설명과 동일하므로 자세한 설명은 생략한다.Since the detailed operation of the load balancing system of FIG. 9 is the same as the description of FIG. 4 described above, a detailed description thereof will be omitted.

도 10은 본 발명의 일실시예에 따라 유저 에이전트 주소를 이용하여 로드밸 런싱하는 시스템의 구성을 도시한 블록도이다.10 is a block diagram illustrating a configuration of a system for load balancing using a user agent address according to an embodiment of the present invention.

유저 에이전트 통신부(1001)는 유저 에이전트로부터 메소드 정보 및 유저 에이전트 주소(발신자 주소 및 수신자 주소)를 포함하는 SIP 메시지를 수신하고, 리얼 SIP 서버로부터 전송된 SIP 메시지를 소정의 유저 에이전트에게 전송하는 기능을 담당한다. The user agent communication unit 1001 receives a SIP message including method information and a user agent address (sender address and a recipient address) from the user agent, and transmits a SIP message transmitted from a real SIP server to a predetermined user agent. In charge.

정보 테이블(1002)은 유저 에이전트 주소와 SIP 메시지를 처리할 리얼 SIP 서버의 식별 정보를 유지한다. The information table 1002 maintains user agent addresses and identification information of the real SIP server that will process the SIP message.

정보 검색부(1004)는 정보 테이블(1002)을 참조하여 소정의 유저 에이전트 주소에 대응하는 리얼 SIP 서버의 식별 정보를 검색한다. The information retrieval unit 1004 searches for the identification information of the real SIP server corresponding to the predetermined user agent address with reference to the information table 1002.

리얼 SIP 서버 통신부(1003)는 정보 검색부(1004)에서 검색된 식별 정보에 대응하는 리얼 SIP 서버로 SIP 메시지를 포워딩하고, 리얼 SIP 서버로부터 소정의 SIP 메시지를 수신하는 기능을 담당한다.The real SIP server communication unit 1003 is responsible for forwarding the SIP message to the real SIP server corresponding to the identification information retrieved by the information retrieval unit 1004 and receiving a predetermined SIP message from the real SIP server.

정보 테이블 관리부(1005)는 SIP 메시지에 포함된 유저 에이전트 주소 및 해당 SIP 메시지를 처리할 리얼 SIP 서버의 식별 정보를 정보 테이블(1002)에 기록하고, 정보 테이블(1002)에 기록된 정보를 관리하는 기능을 수행한다.The information table manager 1005 records the user agent address included in the SIP message and identification information of the real SIP server that will process the SIP message in the information table 1002, and manages the information recorded in the information table 1002. Perform the function.

이러한 도 10의 SIP 로드밸런싱 시스템에서, 제3 유저 에이전트로부터 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소로 전송될 제3 SIP 메시지를 수신한 경우, 정보 검색부(1004)는 정보 테이블(1002)을 참조하여 상기 제3 SIP 메시지에 포함된 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소에 대응하는 식별 정보를 검색하고, 리얼 SIP 서버 통신부(1003)는 상기 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 제3 SIP 메시지를 포워딩한다. 이러한 도 10의 SIP 로드밸런싱 시스템의 상세 동작 내용은 전술한 도 5의 설명과 동일하므로 자세한 설명의 생략한다. In the SIP load balancing system of FIG. 10, when a third SIP message to be transmitted to the first user agent address or the second user agent address is received from a third user agent, the information retrieval unit 1004 may include an information table ( 1002), the identification information corresponding to the first user agent address or the second user agent address included in the third SIP message is retrieved, and the real SIP server communication unit 1003 corresponds to the identification information corresponding to the identification information. Forward the third SIP message to a first real SIP server. The detailed operation content of the SIP load balancing system of FIG. 10 is the same as the description of FIG. 5 described above, and thus a detailed description thereof will be omitted.

도 11은 본 발명의 일실시예에 따라 모집단 식별자를 이용하여 로드밸런싱을 수행하는 시스템의 구성을 도시한 블록도이다.11 is a block diagram showing the configuration of a system for performing load balancing using a population identifier according to an embodiment of the present invention.

유저 에이전트 통신부(1001)는 유저 에이전트로부터 메소드 정보 및 유저 에이전트의 식별자를 포함하는 SIP 메시지를 수신하고, 리얼 SIP 서버로부터 전송된 SIP 메시지를 소정의 유저 에이전트에게 전송하는 기능을 담당한다. The user agent communication unit 1001 receives a SIP message including method information and an identifier of the user agent from the user agent, and is responsible for transmitting a SIP message transmitted from a real SIP server to a predetermined user agent.

정보 테이블(1102)은 소정의 모집단 식별자와 해당 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 유지한다.The information table 1102 holds a predetermined population identifier and identification information of a real SIP server corresponding to the population identifier.

정보 테이블 관리부(1105)는 SIP 메시지에 포함된 유저 에이전트의 식별자에서 모집단 식별자를 추출하고, 추출된 모집단 식별자와 리얼 SIP 서버의 식별 정보를 정보 테이블(1102)에 기록한다. The information table manager 1105 extracts a population identifier from the identifier of the user agent included in the SIP message, and records the extracted population identifier and identification information of the real SIP server in the information table 1102.

식별자 검색부(1104)는 상기 정보 테이블을 참조하여 상기 식별자에 대응하는 모집단 식별자를 검색하고, 상기 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 검색한다. The identifier retrieval unit 1104 searches for a population identifier corresponding to the identifier by referring to the information table and retrieves identification information of a real SIP server corresponding to the population identifier.

식별자 검색부(1104)의 검색 결과 해당 모집단 식별자가 없는 경우, 정보 테이블 관리부(1105)는 상기 식별자에서 모집단 식별자를 추출하고 추출된 모집단 식별자 및 해당 SIP 메시지를 처리할 리얼 SIP 서버의 식별 정보를 정보 테이블(1002)에 기록한다.If there is no corresponding population identifier as a result of the search by the identifier searching unit 1104, the information table manager 1105 extracts the population identifier from the identifier, and extracts the extracted population identifier and identification information of the real SIP server to process the corresponding SIP message. Write to table 1002.

리얼 SIP 서버 통신부(1103)는 식별자 검색부(1104)에서 검색된 식별 정보에 대응하는 리얼 SIP 서버로 SIP 메시지를 포워딩하고, 리얼 SIP 서버로부터 소정의 SIP 메시지를 수신하는 기능을 담당한다.The real SIP server communication unit 1103 is responsible for forwarding the SIP message to the real SIP server corresponding to the identification information retrieved by the identifier retrieval unit 1104 and receiving a predetermined SIP message from the real SIP server.

도 11에 도시된 본 발명에 따른 SIP 로드밸런싱 시스템의 상세 동작 내용은 전술한 도 6 내지 도 8의 설명과 동일하므로, 이하 상세한 설명은 생략한다.Since detailed operation contents of the SIP load balancing system according to the present invention shown in FIG. 11 are the same as those described with reference to FIGS. 6 to 8, detailed descriptions thereof will be omitted.

지금까지 본 발명에 따른 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서는 여러 가지 변형이 가능함은 물론이다.While specific embodiments of the present invention have been described so far, various modifications are possible without departing from the scope of the present invention.

그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며, 후술하는 특허 청구의 범위뿐 아니라 이 특허 청구의 범위와 균등한 것들에 의해 정해져야 한다.Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the claims below, but also by the equivalents of the claims.

본 발명에 따르면 리얼 SIP 서버로부터 수신한 SIP 메시지의 콜아이디 정보 및 설정된 리얼 SIP 서버 정보를 이용하여 로드밸런싱하는 방법, 유저 에이전트의 주소를 이용하여 로드밸런싱 하는 방법 및 유저 에이전트의 식별자를 이용하여 로드밸런싱하는 방법을 제공할 수 있다.According to the present invention, a method of load balancing using call ID information and set real SIP server information of a SIP message received from a real SIP server, a method of load balancing using an address of a user agent, and a load using an identifier of a user agent It can provide a method of balancing.

본 발명에 따르면 SIP 로드밸런서에서 리얼 SIP 서버로부터 수신한 SIP 메시지의 콜아이디 정보 및 설정된 리얼 SIP 서버 정보를 이용하여 로드밸런싱하고, 유저 에이전트의 주소를 이용하여 로드밸런싱함으로써 유저 에이전트 간의 호 설정을 신속하게 수행할 수 있고, 효율적인 로드밸런싱을 제공할 수 있다. According to the present invention, the SIP load balancer load balances the call ID information of the SIP message received from the real SIP server and the set real SIP server information, and load balances the address of the user agent to quickly establish call between user agents. It can be performed in a simple manner and can provide efficient load balancing.

본 발명에 따르면 SIP 로드밸런서에서 모집단 식별자 별로 대응하는 리얼 SIP 서버를 할당하여 SIP 메시지를 처리함으로써 리얼 SIP 서버 별로 신속한 호 설정 및 효율적이고 실질적인 로드밸런싱을 제공할 수 있으며, 서버들 간의 데이터베이스의 공유를 최적화할 수 있다. According to the present invention, a SIP load balancer allocates a corresponding real SIP server for each population identifier and processes SIP messages, thereby providing fast call setup and efficient and practical load balancing for each real SIP server, and sharing a database among servers. Can be optimized

Claims (9)

SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법에 있어서,In the method of performing load balancing in a Session Initiation Protocol (SIP) network, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지를 수신하는 단계 - 상기 제1 SIP 메시지는 메소드 정보 및 제1 콜아이디 정보를 포함함 -;Receiving a first SIP message from a first user agent to a second user agent, wherein the first SIP message includes method information and first call ID information; 상기 제1 SIP 메시지의 상기 제1 콜아이디 정보와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계;Recording the first call ID information of the first SIP message and identification information of a first real SIP server to process the first SIP message in a predetermined information table; 상기 제1 SIP 메시지를 상기 제1 리얼 SIP 서버로 포워딩하는 단계;Forwarding the first SIP message to the first real SIP server; 상기 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 콜아이디 정보를 포함함 - 을 수신하고, 상기 제2 SIP 메시지에 포함된 상기 제2 콜아이디 정보 및 상기 제1 리얼 SIP 서버의 식별 정보를 상기 정보 테이블에 기록하는 단계;Receive a second SIP message transmitted from the first real SIP server to the second user agent, wherein the second SIP message includes method information and second call ID information and is included in the second SIP message; Recording the second call ID information and the identification information of the first real SIP server in the information table; 상기 제2 유저 에이전트로부터 상기 제2 SIP 메시지에 대한 응답 메시지 - 상기 응답 메시지는 상기 제2 콜아이디 정보를 포함함 - 를 수신하고, 상기 정보 테이블을 참조하여 상기 제2 콜아이디 정보에 대응하는 식별 정보를 검색하는 단계; 및Receive a response message for the second SIP message from the second user agent, wherein the response message includes the second call ID information and refer to the information table for identification corresponding to the second call ID information; Retrieving information; And 상기 검색된 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 응답 메시지를 포워딩하는 단계Forwarding the response message to the first real SIP server corresponding to the retrieved identification information; 를 포함하는 것을 특징으로 하는 SIP 로드밸런싱 방법.SIP load balancing method comprising a. SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법에 있어서,In the method of performing load balancing in a Session Initiation Protocol (SIP) network, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지- 상기 제1 SIP 메시지는 메소드 정보, 제1 유저 에이전트 주소, 및 제2 유저 에이전트 주소를 포함함 - 를 수신하는 단계;Receiving a first SIP message from a first user agent to a second user agent, wherein the first SIP message includes method information, a first user agent address, and a second user agent address; 상기 제1 SIP 메시지의 상기 제1 유저 에이전트 주소, 상기 제2 유저 에이전트 주소, 및 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계;Recording the first user agent address of the first SIP message, the second user agent address, and identification information of a first real SIP server to process the first SIP message in a predetermined information table; 상기 제1 SIP 메시지를 상기 제1 리얼 SIP 서버로 포워딩하는 단계;Forwarding the first SIP message to the first real SIP server; 상기 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 유저 에이전트 주소를 포함함 - 를 수신하는 단계;Receiving a second SIP message sent from the first real SIP server to the second user agent, wherein the second SIP message includes method information and a second user agent address; 제3 유저 에이전트로부터 상기 제1 유저 에이전트 또는 상기 제2 유저 에이전트로의 제3 SIP 메시지- 상기 제3 SIP 메시지는 메소드 정보 및 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소를 포함함 - 를 수신하고, 상기 정보 테이블을 참조하여 상기 제1 유저 에이전트 주소 또는 제2 유저 에이전트 주소에 대응하는 식별 정보를 검색하는 단계; 및A third SIP message from a third user agent to the first user agent or the second user agent, wherein the third SIP message includes method information and the first user agent address or the second user agent address; Receiving and retrieving identification information corresponding to the first user agent address or the second user agent address with reference to the information table; And 상기 검색된 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 제3 SIP 메시지를 포워딩하는 단계Forwarding the third SIP message to the first real SIP server corresponding to the retrieved identification information; 를 포함하는 것을 특징으로 하는 SIP 로드밸런싱 방법.SIP load balancing method comprising a. SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 방법에 있어서,In the method of performing load balancing in a Session Initiation Protocol (SIP) network, 제1 유저 에이전트로부터 상기 제1 유저 에이전트의 식별자를 포함하는 제1 SIP 메시지를 수신하는 단계;Receiving a first SIP message comprising an identifier of the first user agent from a first user agent; 상기 제1 유저 에이전트의 식별자에서 소정의 모집단 식별자를 추출하고, 상기 모집단 식별자와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계;Extracting a predetermined population identifier from the identifier of the first user agent and recording the population identifier and identification information of a first real SIP server to process the first SIP message in a predetermined information table; 제2 유저 에이전트로부터 상기 제2 유저 에이전트의 식별자를 포함하는 제2 SIP 메시지를 수신하는 단계;Receiving a second SIP message comprising an identifier of the second user agent from a second user agent; 상기 정보 테이블을 참조하여 상기 식별자에 대응하는 모집단 식별자를 검색하고, 상기 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 검색하는 단계; 및Retrieving a population identifier corresponding to the identifier by referring to the information table and retrieving identification information of a real SIP server corresponding to the population identifier; And 상기 검색된 식별 정보에 대응하는 리얼 SIP 서버로 상기 제2 SIP 메시지를 포워딩하는 단계Forwarding the second SIP message to the real SIP server corresponding to the retrieved identification information; 를 포함하는 것을 특징으로 하는 SIP 로드밸런싱 방법. SIP load balancing method comprising a. 제3항에 있어서,The method of claim 3, 상기 정보 테이블을 참조하여 상기 식별자에 대응하는 모집단 식별자를 검색 하는 상기 단계는,The step of searching for a population identifier corresponding to the identifier by referring to the information table, 상기 검색 결과 상기 제2 SIP 메시지에 포함된 상기 식별자에 대응하는 모집단 식별자가 존재하지 아니하는 경우, 상기 제2 유저 에이전트의 식별자에서 소정의 모집단 식별자를 추출하고, 상기 모집단 식별자와 상기 제2 SIP 메시지를 처리할 제2 리얼 SIP 서버의 식별 정보를 소정의 정보 테이블에 기록하는 단계If a population identifier corresponding to the identifier included in the second SIP message does not exist as a result of the search, a predetermined population identifier is extracted from the identifier of the second user agent, and the population identifier and the second SIP message are extracted. Recording identification information of the second real SIP server to be processed in a predetermined information table; 를 포함하는 것을 특징으로 하는 SIP 로드밸런싱 방법. SIP load balancing method comprising a. 제3항에 있어서,The method of claim 3, 상기 모집단 식별자는 상기 SIP 메시지의 헤더에 포함된 필드 또는 상기 필드 내의 정보 중 적어도 하나이고,The population identifier is at least one of a field included in a header of the SIP message or information in the field, 상기 필드는 TO, FROM, Call-ID, 또는 Contact 중 어느 하나이고, 상기 정보는 도메인 네임, IP 주소, 국번, 또는 태그(tag) 정보 중 어느 하나인 것을 특징으로 하는 SIP 로드밸런싱 방법.The field is any one of TO, FROM, Call-ID, or Contact, and the information is any one of domain name, IP address, station number, or tag information. 제1항 내지 제5항 중 어느 한 항의 방법을 실행하기 위한 프로그램이 기록되어 있는 것을 특징으로 하는 컴퓨터에서 판독 가능한 기록 매체.A computer-readable recording medium in which a program for executing the method of any one of claims 1 to 5 is recorded. SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 장치에 있어서,In the apparatus for performing load balancing in a Session Initiation Protocol (SIP) network, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지를 수신하고 - 상기 제1 SIP 메시지는 메소드 정보 및 제1 콜아이디 정보를 포함함 -, 상기 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 콜아이디 정보를 포함함 - 을 수신하며, 상기 제2 유저 에이전트로부터 상기 제2 SIP 메시지에 대한 응답 메시지 - 상기 응답 메시지는 상기 제2 콜아이디 정보를 포함함- 를 수신하는 유저 에이전트 통신부;Receive a first SIP message from a first user agent to a second user agent, wherein the first SIP message includes method information and first call ID information; and from the first real SIP server to the second user agent Receiving a second SIP message sent to the second SIP message, wherein the second SIP message includes method information and second call ID information, and a response message to the second SIP message from the second user agent. A user agent communication unit for receiving the second call ID information; 상기 제1 SIP 메시지의 상기 제1 콜아이디 정보와 상기 제1 SIP 메시지를 처리할 제1 리얼 SIP 서버의 식별 정보, 상기 제2 SIP 메시지에 포함된 상기 제2 콜아이디 정보와 상기 제1 리얼 SIP 서버의 식별 정보를 유지하는 정보 테이블;The first call ID information of the first SIP message, identification information of a first real SIP server to process the first SIP message, the second call ID information and the first real SIP included in the second SIP message; An information table for holding identification information of the server; 상기 정보 테이블을 참조하여 상기 제2 콜아이디 정보에 대응하는 제1 리얼 SIP 서버의 식별 정보를 검색하는 검색부;A search unit for searching for identification information of a first real SIP server corresponding to the second call ID information by referring to the information table; 상기 제1 SIP 메시지를 상기 제1 리얼 SIP 서버로 포워딩하고, 상기 검색된 제1 리얼 SIP 서버로 상기 응답 메시지를 포워딩하는 리얼 SIP 서버 통신부A real SIP server communication unit for forwarding the first SIP message to the first real SIP server and forwarding the response message to the searched first real SIP server. 를 포함하는 것을 특징으로 하는 SIP 로드밸런싱 시스템.SIP load balancing system comprising a. SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 시스템에 있어서,In a system for performing load balancing in a Session Initiation Protocol (SIP) network, 제1 유저 에이전트로부터 제2 유저 에이전트로의 제1 SIP 메시지를 수신하고 - 상기 제1 SIP 메시지는 메소드 정보, 제1 유저 에이전트 주소, 및 제2 유저 에이전트 주소를 포함함 -, 제1 리얼 SIP 서버로부터 상기 제2 유저 에이전트로 전송되는 제2 SIP 메시지 - 상기 제2 SIP 메시지는 메소드 정보 및 제2 유저 에이전트 주소를 포함함 - 을 수신하는 유저 에이전트 통신부;Receive a first SIP message from a first user agent to a second user agent, wherein the first SIP message includes method information, a first user agent address, and a second user agent address; A user agent communication unit for receiving a second SIP message transmitted from the second user agent to the second user agent, wherein the second SIP message includes method information and a second user agent address; 상기 제1 SIP 메시지에 포함된 상기 제1 유저 에이전트 주소 및 상기 제2 유저 에이전트 주소와 상기 제1 리얼 SIP 서버의 식별 정보를 유지하는 정보 테이블;An information table for maintaining the first user agent address, the second user agent address, and identification information of the first real SIP server included in the first SIP message; 상기 정보 테이블을 참조하여 소정의 유저 에이전트 주소에 대응하는 리얼 SIP 서버의 식별 정보를 검색하는 정보 검색부; 및An information retrieval unit for retrieving identification information of a real SIP server corresponding to a predetermined user agent address by referring to the information table; And 상기 정보 검색부에서 검색된 식별 정보에 대응하는 리얼 SIP 서버로 SIP 메시지를 포워딩하는 리얼 SIP 서버 통신부Real SIP server communication unit for forwarding the SIP message to the real SIP server corresponding to the identification information retrieved by the information retrieval unit 를 포함하고,Including, 상기 유저 에이전트 통신부에서 제3 유저 에이전트로부터 상기 제1 유저 에이전트 또는 상기 제2 유저 에이전트로의 제3 SIP 메시지- 상기 제3 SIP 메시지는 메소드 정보 및 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소를 포함함 - 을 수신한 경우, 상기 정보 검색부는 상기 정보 테이블을 참조하여 상기 제3 SIP 메시지에 포함된 상기 제1 유저 에이전트 주소 또는 상기 제2 유저 에이전트 주소에 대응하는 식별 정보를 검색하고, 상기 리얼 SIP 서버 통신부는 상기 식별 정보에 대응하는 상기 제1 리얼 SIP 서버로 상기 제3 SIP 메시지를 포워딩하도록 동작하는 것을 특징으로 하는 SIP 로드밸런싱 시스템.A third SIP message from the third user agent to the first user agent or the second user agent in the user agent communication unit-the third SIP message includes method information and the first user agent address or the second user agent address; Includes;-when receiving, the information retrieval unit retrieves identification information corresponding to the first user agent address or the second user agent address included in the third SIP message by referring to the information table, and The real SIP server communication unit is operable to forward the third SIP message to the first real SIP server corresponding to the identification information. SIP(Session Initiation Protocol) 네트워크에서 로드밸런싱을 수행하는 장치에 있어서,In the apparatus for performing load balancing in a Session Initiation Protocol (SIP) network, 소정의 모집단 식별자와 소정의 SIP 메시지를 처리할 리얼 SIP 서버의 식별 정보를 유지하는 정보 테이블;An information table for maintaining a predetermined population identifier and identification information of a real SIP server to process a predetermined SIP message; 유저 에이전트와 리얼 SIP 서버 간에 전송되는 SIP 메시지를 수신하는 유저 에이전트 통신부;A user agent communication unit for receiving a SIP message transmitted between the user agent and the real SIP server; 유저 에이전트의 식별자에서 모집단 식별자를 추출하고, 추출된 모집단 식별자 및 상기 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 상기 정보 테이블에 기록하는 정보 테이블 관리부; An information table manager which extracts a population identifier from an identifier of a user agent and records the extracted population identifier and identification information of a real SIP server corresponding to the population identifier in the information table; 상기 정보 테이블을 참조하여 상기 식별자에 대응하는 모집단 식별자를 검색하고, 상기 모집단 식별자에 대응하는 리얼 SIP 서버의 식별 정보를 검색하는 식별자 검색부; 및An identifier retrieval unit for retrieving a population identifier corresponding to the identifier by referring to the information table and retrieving identification information of a real SIP server corresponding to the population identifier; And 상기 검색된 식별 정보에 대응하는 리얼 SIP 서버로 SIP 메시지를 포워딩하는 리얼 SIP 서버 통신부Real SIP server communication unit for forwarding a SIP message to the real SIP server corresponding to the retrieved identification information 를 포함하고,Including, 상기 모집단 식별자는 상기 모집단 식별자는 상기 SIP 메시지의 헤더에 포함된 필드 - 상기 필드는 TO, FROM, Call-ID, 또는 Contact 중 어느 하나임 - 또는 상기 필드 내의 정보 - 상기 정보는 도메인 네임, IP 주소, 국번, 또는 태그(tag) 정보 중 어느 하나임 - 중 적어도 하나인 것을 특징으로 하는 SIP 로드밸런싱 시스템. Wherein the population identifier is a field included in the header of the SIP message, wherein the field is any one of TO, FROM, Call-ID, or Contact-or information in the field-the information is a domain name, an IP address, SIP station, or any one of the tag (tag) information-SIP load balancing system, characterized in that at least one.
KR1020040117949A 2004-12-31 2004-12-31 Method for load-balancing in session initiation protocol network and system of enabling the method KR100673513B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040117949A KR100673513B1 (en) 2004-12-31 2004-12-31 Method for load-balancing in session initiation protocol network and system of enabling the method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040117949A KR100673513B1 (en) 2004-12-31 2004-12-31 Method for load-balancing in session initiation protocol network and system of enabling the method

Publications (2)

Publication Number Publication Date
KR20060078347A KR20060078347A (en) 2006-07-05
KR100673513B1 true KR100673513B1 (en) 2007-01-24

Family

ID=37170268

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040117949A KR100673513B1 (en) 2004-12-31 2004-12-31 Method for load-balancing in session initiation protocol network and system of enabling the method

Country Status (1)

Country Link
KR (1) KR100673513B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010014581A (en) * 1999-03-31 2001-02-26 포만 제프리 엘 Using virtual urls for load balancing

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010014581A (en) * 1999-03-31 2001-02-26 포만 제프리 엘 Using virtual urls for load balancing

Also Published As

Publication number Publication date
KR20060078347A (en) 2006-07-05

Similar Documents

Publication Publication Date Title
KR100985612B1 (en) Automatic orchestration of dynamic multiple party, multiple media communications
KR100966959B1 (en) Retrieval of offline instant messages
US7656836B2 (en) Centralized controller for distributed handling of telecommunications features
US8296447B2 (en) Method for copying session information, call control server for executing the same, and computer product
US8437266B2 (en) Flow through call control
CN113162865A (en) Load balancing method, server and computer storage medium
CN101911664A (en) Service control device, service control system, and method
EP2068524A1 (en) A method and a system for acquiring the transmission path of the sip message
CN102651732B (en) Service trigger method in a kind of IMS network and system
US9854003B2 (en) System and method for initiating telecommunications sessions through an electronic mail address
US9167085B2 (en) System and method for coordinated call-back revocation
US9112881B2 (en) Presence-based caller identification
US8964955B2 (en) Presence-based message waiting indicator and missed calls
KR100673513B1 (en) Method for load-balancing in session initiation protocol network and system of enabling the method
CN101772195B (en) Establishing and joining method of IMS (information management system) trunking conference, distribution system and device
CN111711644B (en) Method, system and equipment for distributing and managing interaction tasks
CN101490663B (en) Supporting response to mid-dialog failure
JP4723676B2 (en) COMMUNICATION METHOD, SERVER, AND PROGRAM FOR SESSION STATUS NOTIFICATION
KR100859706B1 (en) Call management method and system using stateful SIP proxy server
US8929209B2 (en) Quantum and promiscuous user agents
CN107852577A (en) A kind of supplementary service implementation method, terminal device and IMS service device
KR100894906B1 (en) Terminal unit for providing IP multimedia service on the basis of session initiaion protocol, call session control function device, method of transmitting and receiving thereof
Acharya et al. Real-time monitoring of SIP infrastructure using message classification
EP4231617A1 (en) Method for managing and/or signaling at least one voip call and a communication system
JP5289345B2 (en) Address translation device, communication system, message communication method, and program

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20140103

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141231

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20160113

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20170116

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20190115

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20200115

Year of fee payment: 14