KR20050014129A - Session Initiation Protocol server and SIP message handling method - Google Patents

Session Initiation Protocol server and SIP message handling method

Info

Publication number
KR20050014129A
KR20050014129A KR1020030052610A KR20030052610A KR20050014129A KR 20050014129 A KR20050014129 A KR 20050014129A KR 1020030052610 A KR1020030052610 A KR 1020030052610A KR 20030052610 A KR20030052610 A KR 20030052610A KR 20050014129 A KR20050014129 A KR 20050014129A
Authority
KR
South Korea
Prior art keywords
message
sip
server
called party
location
Prior art date
Application number
KR1020030052610A
Other languages
Korean (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 KR1020030052610A priority Critical patent/KR20050014129A/en
Publication of KR20050014129A publication Critical patent/KR20050014129A/en

Links

Classifications

    • 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/10Architectures or entities
    • H04L65/1063Application servers providing network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • 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/10Architectures or entities
    • H04L65/1045Proxies, e.g. for session initiation protocol [SIP]
    • 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

PURPOSE: An SIP(Session Initialization Protocol) server and a message processing method thereof are provided to operate the SIP server as a redirect server if a risk of system overload may occur while the SIP server is operated as a proxy server if system efficiency is low, thereby preventing system overload while suppressing a call processing delay. CONSTITUTION: A message receiver(200) receives an SIP message including a receiver identifier from an originator. A mode setting unit(210) sets the first mode which carries out a proxy server function based on a kind of the received SIP message and a system efficiency, and sets the second mode which executes a redirect server function. A proxy server unit(220) perceives a receiver position based on the receiver identifier in the first mode, and transmits the SIP message to the perceived receiver position. A redirect server unit(230) perceives the receiver position based on the receiver identifier in the second mode, and sends the perceived position information to the originator.

Description

세션초기화프로토콜(SIP) 서버 및 그 메시지 처리 방법{Session Initiation Protocol server and SIP message handling method}Session Initiation Protocol server and SIP message handling method

본 발명은 인터넷 전화의 호(Call)를 처리하는 SIP(Session Initiation Protocol) 서버에 관한 것으로, 보다 상세하게는, SIP 메시지를 처리하는 프럭시 서버 및 리다이렉트 서버에 관한 것이다.The present invention relates to a Session Initiation Protocol (SIP) server that handles calls of Internet telephones, and more particularly, to a proxy server and a redirect server that process SIP messages.

SIP는 매우 간단한 텍스트 기반의 응용계층 제어 프로토콜로서, 하나 이상의 참가자들이 함께 세션을 만들고 수정하고 종료할 수 있다. 이러한 세션들에는 인터넷을 이용한 원격회의, 전화, 면회, 이벤트 통지, 인스턴트 메시징 등이 포함된다.SIP는 하위에 있는 패킷 프로토콜(TCP, UDP(User Datagram Protocol), ATM, X.25)에 독립적이다.SIP is a very simple, text-based application layer control protocol that allows one or more participants to create, modify, and terminate a session together. These sessions include teleconferences over the Internet, telephone calls, visits, event notifications, instant messaging, etc. SIP is independent of the underlying packet protocols (TCP, UDP (User Datagram Protocol), ATM, X.25). .

SIP는 텍스트 기반의 SMTP(Simple Mail Transfer Protocol)와 HTTP 이후에 설계되었다. SIP는 클라이언트들이 호출을 시작하면 서버가 그 호출에 응답을 하는 클라이언트/서버 구조에 기반을 두고 있다. SIP는 이러한 기존의 텍스트 기반 인터넷 표준들을 따름으로써, 고장 수리와 네트워크 디버깅 등이 쉽다.SIP was designed after text-based Simple Mail Transfer Protocol (SMTP) and HTTP. SIP is based on a client / server architecture where clients initiate a call and the server responds to the call. SIP follows these existing text-based Internet standards, making troubleshooting and network debugging easier.

SIP 메시지를 처리하는 종래의 SIP 서버에는 프럭시 서버 및 리다이렉트 서버가 있다.Conventional SIP servers that process SIP messages include proxy servers and redirect servers.

종래의 프럭시 서버(Proxy Server)는 발신측으로부터 SIP 요청 메시지를 수신하면 다음 착신측의 위치를 찾아 전달하고, 착신측으로부터 응답메시지를 받아서 발신측으로 전달하는 역할을 하는 호 처리 서버이다.The conventional proxy server is a call processing server that receives a SIP request message from a calling party, finds and delivers the location of the next called party, and receives a response message from the called party and delivers the message to the calling party.

종래의 리다이렉트 서버(Redirect Server)는 SIP 요청 메시지를 수신하면 요청 메시지내의 주소를 새로운 주소로 맵핑한 후 그 결과를 발신측으로 되돌려보내는 서버이다. 프럭시 서버와는 달리 자신이 SIP 요청을 개시하지는 않고, 응답 메시지를 수신하지 않으며, 다음 호가 진행될 주소만 발신측에게 알려주는 역할을 수행한다.A conventional redirect server is a server that, upon receiving a SIP request message, maps the address in the request message to a new address and sends the result back to the originator. Unlike a proxy server, it does not initiate a SIP request, does not receive a response message, and informs the sender of only the address where the next call is to be made.

종래의 SIP 서버는 SIP 메시지를 처리할 때 시스템 효율은 고려하지 않고 단지 초기에 프럭시 서버 또는 리다이렉트 서버 중 어느 하나로 지정되어 SIP 메시지를 처리하였다. 프럭시 서버의 경우 시스템 효율이 낮은 경우에는 SIP 메시지 처리를 잘 할 수 있으나 시스템 효율이 높은 경우에는 과부하가 생기므로 모든 SIP 요청 메시지와 응답메시지를 처리할 때 호의 지연이 발생한다.Conventional SIP servers do not take into account system efficiency when processing SIP messages, but are initially initially designated as either a proxy server or a redirect server to process SIP messages. The proxy server can handle SIP messages well when the system efficiency is low. However, because of the overload when the system efficiency is high, call delay occurs when processing all SIP request and response messages.

종래의 리다이렉트 서버의 경우에는 시스템 요청 메시지에 대한 위치 정보를 응답 메시지로 제공함으로써, 시스템 부하를 줄이면서 호 처리 기능을 수행하지만 SIP 메시지를 다음 노드로 전달하지 못하는 단점이 있다. 따라서, 처음에 SIP 서버를 설치할 때 SIP 호 발생 빈도를 예측하여 효율이 높아서 과부하가 예상되는 곳에서는 리다이렉트 서버를 설치하고 효율이 낮은 곳에는 프럭시 서버를 설치하는 것이 유리하다. 그러나 호의 발생 빈도는 가변적이므로, 초기에 SIP 서버를 지정하는 것은 어렵다.In the case of the conventional redirect server, by providing the location information on the system request message as a response message, it performs a call processing function while reducing the system load, but has a disadvantage in that the SIP message cannot be delivered to the next node. Therefore, when the SIP server is initially installed, it is advantageous to estimate the frequency of SIP calls and to install the redirect server where the efficiency is high and the proxy server is installed where the efficiency is low. However, since the frequency of calls is variable, it is difficult to initially specify a SIP server.

본 발명이 이루고자 하는 기술적 과제는, 하나의 SIP 서버를 시스템 효율이 낮으면 프럭시 서버로 동작하도록 하고, 시스템 효율이 높으면 리다이렉트 서버로 동작하도록 함으로써, SIP 메시지의 처리 효율을 향상시키는 SIP 서버 및 SIP 메세지 처리방법을 제공하는 데 있다.The technical problem to be achieved by the present invention is to operate a SIP server as a proxy server when the system efficiency is low, and to operate as a redirect server when the system efficiency is high, SIP server and SIP to improve the processing efficiency of SIP messages To provide a message handling method.

본 발명이 이루고자 하는 다른 기술적 과제는, 하나의 SIP 서버를 시스템 효율이 낮으면 프럭시 서버로 동작하도록 하고, 시스템 효율이 높으면 리다이렉트 서버로 동작하도록 함으로써, SIP 메시지의 처리 효율을 향상시키는 SIP 메시지 처리방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는 데 있다.Another technical problem to be solved by the present invention is to operate a SIP server as a proxy server when the system efficiency is low, and to operate as a redirect server when the system efficiency is high, thereby processing SIP messages to improve the processing efficiency of SIP messages. A computer readable recording medium having recorded thereon a program for executing the method on a computer is provided.

도 1은 본 발명에 따른 SIP 서버를 포함하는 VoIP 시스템의 일 실시예를 도시한 도면,1 is a diagram illustrating an embodiment of a VoIP system including a SIP server according to the present invention;

도 2는 본 발명에 따른 SIP 서버의 블록도,2 is a block diagram of a SIP server according to the present invention;

도 3은 본 발명에 따른 SIP 서버를 프로세스의 관점에서 도시한 도면, 그리고,3 shows a SIP server according to the invention in terms of process, and

도 4는 본 발명에 따른 SIP 메시지 처리방법의 흐름을 도시한 도면이다.4 is a diagram illustrating a flow of a SIP message processing method according to the present invention.

상기의 기술적 과제를 해결하기 위한, 본 발명에 따른 SIP 서버의 일 실시예는, 발신측으로부터 착신측 URI(Uniform Resource Identifier)를 포함하는 SIP 메시지를 수신하는 메시지 수신부; 상기 수신한 SIP 메시지의 종류 및 시스템 효율을 기초로 프럭시서버 기능을 수행하는 제1모드 및 리다이렉트서버 기능을 수행하는 제2모드로 설정하는 모드설정부; 상기 제1모드의 경우에 상기 착신측 URI를 기초로 착신측의 위치를 파악하고, 상기 파악된 착신측 위치로 상기 SIP 메시지를 전송하는 프럭시 서버부; 및 상기 제2모드의 경우에 상기 착신측 URI를 기초로 착신측의 위치를 파악하고, 상기 파악된 착신측의 위치정보를 상기 발신측으로 전송하는 리다이렉트 서버부;를 갖는다.In order to solve the above technical problem, an embodiment of a SIP server according to the present invention, the message receiving unit for receiving a SIP message including a destination URI (Uniform Resource Identifier) from the calling party; A mode setting unit configured to set a first mode performing a proxy server function and a second mode performing a redirect server function based on the received SIP message type and system efficiency; A proxy server unit configured to determine a location of a called party based on the called party URI in the first mode and to transmit the SIP message to the identified called party location; And a redirect server unit for identifying the location of the called party based on the called party URI in the case of the second mode and transmitting the identified location information of the called party to the calling party.

바람직하게는, 상기 SIP 메시지는 소정의 요청 메시지 및 소정의 응답 메시지로 구분되고, 상기 모드설정부는 상기 수신한 SIP 메시지의 종류가 상기 요청 메시지이고 상기 시스템 효율이 소정의 기준값 이상이면 상기 제2모드를 설정한다.Preferably, the SIP message is divided into a predetermined request message and a predetermined response message, and the mode setting unit includes the second mode when the type of the received SIP message is the request message and the system efficiency is equal to or greater than a predetermined reference value. Set.

상기의 기술적 과제를 해결하기 위한, 본 발명에 따른 SIP 메시지 처리방법의 일 실시예는, 발신측으로부터 착신측 URI를 포함하는 SIP 메시지를 수신하는 단계; 상기 수신한 메시지의 종류 및 시스템의 효율을 기초로 프락시서버 기능을 수행하는 제1모드 및 리다이렉트서버 기능을 수행하는 제2모드를 설정하는 단계; 상기 착신측 URI를 기초로 상기 착신측의 위치를 파악하는 단계; 상기 제1모드의 경우에 상기 SIP 메시지를 상기 파악된 착신측 위치로 전송하는 단계; 및 상기 제2모드의 경우에 상기 파악된 착신측의 위치정보를 상기 발신측으로 전송하는 단계;를 갖는다.In order to solve the above technical problem, an embodiment of a method for processing a SIP message according to the present invention includes: receiving a SIP message including a called party URI from a calling party; Setting a first mode performing a proxy server function and a second mode performing a redirect server function based on the type of the received message and the efficiency of the system; Determining a location of the called party based on the called party URI; Transmitting the SIP message to the identified called party location in the case of the first mode; And transmitting the identified location information of the called party to the calling party in the second mode.

바람직하게는, 상기 SIP 메시지는 소정의 요청(Request)메시지 및 소정의 응답(Response)메시지를 포함하고, 상기 모드설정단계는 SIP 메시지가 상기 요청메시지이고 상기 시스템 효율이 소정의 기준값 이상이면 제2모드를 설정하는 단계를 포함한다.Preferably, the SIP message includes a predetermined request message and a predetermined response message, and the mode setting step includes: a second message if the SIP message is the request message and the system efficiency is equal to or greater than a predetermined reference value; Setting a mode.

본 발명에 따르면, SIP 서버의 시스템 효율이 높아져 시스템의 과부하가 발생할 우려가 있는 경우에는 SIP 서버를 리다이렉트 서버로 동작하도록 하고, SIP 서버의 시스템의 효율이 낮은 경우에는 SIP 서버를 프럭시 서버로 동작하도록 함으로써 시스템 과부하를 방지하고 호(call) 처리 지연을 방지한다.According to the present invention, if the system efficiency of the SIP server is increased and there is a risk of overloading the system, the SIP server is operated as a redirect server, and if the efficiency of the SIP server system is low, the SIP server is operated as a proxy server. This prevents system overload and delays in call processing.

이하에서, 첨부된 도면을 참조하여 본 발명에 따른 SIP 서버 및 SIP 메시지 처리방법을 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described in detail a SIP server and SIP message processing method according to the present invention.

도 1는 본 발명에 따른 SIP 서버를 포함하는 VoIP 시스템의 일 실시예를 도시한 도면이다.1 is a diagram illustrating an embodiment of a VoIP system including a SIP server according to the present invention.

도 1을 참조하면, VoIP 시스템은 발신측 단말장치(100), 착신측 단말장치(120), SIP 서버(110), 도메인네임서버(Domain Name Server)(130) 및 위치서버(Location Server)(140)로 구성된다.Referring to FIG. 1, the VoIP system includes a calling terminal 100, a called terminal 120, a SIP server 110, a domain name server 130, and a location server ( 140).

발신측 단말장치(100) 및 착신측 단말장치(120)에는 데스크탑 PC Phone, 무선 LAN을 통해 연결되는 노트북, PDA 및 IP Hand-Phone, MSC(Mobile Switch Center)를 통한 이동통신 단말기, 교환기를 통한 전화 단말기등이 있다.The calling terminal 100 and the called terminal 120 are provided with a desktop PC phone, a notebook connected via a wireless LAN, a PDA and an IP Hand-Phone, a mobile communication terminal via a mobile switch center (MSC), and an exchange. There are telephone terminals.

SIP 서버(110)는 발신측 단말장치(100)로부터 수신한 SIP 메시지의 종류 및 SIP 서버(110)의 시스템 효율을 기초로 프럭시 서버 또는 리다이렉트서버의 기능을 수행한다. SIP 서버(110)가 프럭시 서버의 기능을 수행하는 경우에는 SIP 메시지가요청 메시지이고 SIP 서버(110)의 효율이 70% 이하인 경우 및 SIP 메시지가 응답 메시지인 경우가 있다. SIP 서버(110)가 리다이렉트 서버 기능을 수행하는 경우에는 SIP 메시지가 요청 메시지이고 SIP 서버(110)의 효율이 70% 이상인 경우이다. 서버기능을 구분하기 위한 SIP 시스템 효율의 기준은 각 시스템의 상황에 적합하게 70% 이하 또는 이상이 될 수 있다.The SIP server 110 performs a function of a proxy server or a redirect server based on the type of SIP message received from the originating terminal apparatus 100 and the system efficiency of the SIP server 110. When the SIP server 110 performs the function of a proxy server, the SIP message may be a request message, the efficiency of the SIP server 110 may be 70% or less, and the SIP message may be a response message. When the SIP server 110 performs the redirect server function, the SIP message is a request message and the efficiency of the SIP server 110 is 70% or more. The criterion of SIP system efficiency to classify server functions may be 70% or less, or more, depending on the situation of each system.

SIP 서버(110)가 프락시 서버의 기능을 수행하는 경우에는, SIP 서버(110)는 발신측 단말장치(100)로부터 호 설정을 위한 요청 메시지를 수신하면 직접 착신측 단말장치(120)로 요청 메시지를 전송하고, 요청 메시지에 대한 응신으로 응답 메시지를 수신하면 발신측 단말장치(100)로 응답 메시지를 전송한다.When the SIP server 110 performs the function of a proxy server, when the SIP server 110 receives a request message for call setup from the calling terminal 100, the SIP server 110 directly sends a request message to the called terminal 120. Transmits, and when the response message is received in response to the request message, transmits the response message to the calling terminal device (100).

SIP 서버(110)가 리다이렉트 서버의 기능을 수행하는 경우에는, SIP 서버(110)는 발신측 단말장치(100)로부터 호 설정을 위한 요청 메시지를 수신하면 착신측 단말장치의 위치를 파악하여, 파악된 착신측 위치정보를 발신측 단말장치(100)로 전송한다. 즉, 직접 요청 메시지의 전달이나 응답 메시지의 수신 기능을 수행하지 않는다.When the SIP server 110 performs the function of a redirect server, when the SIP server 110 receives a request message for call setup from the calling terminal 100, the SIP server 110 determines the location of the called terminal. The called party location information is transmitted to the calling terminal device 100. In other words, it does not directly transmit the request message or receive the response message.

도메인네임서버(130) 및 위치서버(140)는 SIP 서버(110)가 착신측 단말장치(120)의 위치를 파악하는데 사용된다. SIP 메시지의 착신측 주소는 주로 URI(Uniform Resource Indentifier)로 되어 있으므로, SIP 서버(110)는 착신측 URI를 기초로 도메인네임서버(130)로부터 착신측 IP 주소를 파악하거나, 위치서버(140)로부터 착신측 단말장치(120)가 속한 SIP 서버(110)의 위치를 파악한다.The domain name server 130 and the location server 140 are used by the SIP server 110 to determine the location of the called terminal 120. Since the called party address of the SIP message is mainly a Uniform Resource Indentifier (URI), the SIP server 110 determines the called party IP address from the domain name server 130 based on the called party URI, or the location server 140. From the grasp of the position of the SIP server 110 to which the destination terminal device 120 belongs.

도 2는 본 발명에 따른 SIP 서버의 상세한 구성을 도시한 블록도이다.2 is a block diagram showing a detailed configuration of a SIP server according to the present invention.

도 2를 참조하면, 본 발명에 따른 SIP 서버는 메시지 수신부(200), 모드설정부(210), 프럭시 서버부(220) 및 리다이렉트 서버부(230)로 구성된다.Referring to FIG. 2, the SIP server according to the present invention includes a message receiving unit 200, a mode setting unit 210, a proxy server unit 220, and a redirect server unit 230.

메시지 수신부(200)는 발신측 단말장치(100)로부터 SIP 메시지를 수신한다. SIP 메시지는 요청 메시지와 응답 메시지로 구성된다. 요청 메시지에는 단말기 위치를 등록하는 RESISTER 메시지, 호를 개시하는 INVITE 메시지, 호 연결을 확인하는 ACK 메시지, 호의 연결을 취소하는 CANCEL 메시지, 호를 종료하는 BYE 메시지, 호의 상태를 변경하지 않고 정보를 전달하는 INFO 메시지가 있다. 응답 메시지에는 호의 진행 상태를 알리는 STATUS 메시지가 있다. 메시지 수신부는 SIP 메시지의 도착여부를 감시한다.The message receiver 200 receives a SIP message from the calling terminal device 100. The SIP message consists of a request message and a response message. The request message includes a RESISTER message that registers the terminal location, an INVITE message that initiates the call, an ACK message that confirms the call connection, a CANCEL message that cancels the call connection, a BYE message that terminates the call, and information without changing the status of the call. There is an INFO message. The response message contains a STATUS message indicating the progress of the call. The message receiver monitors the arrival of the SIP message.

모드설정부(210)는 수신한 SIP 메시지의 종류 및 시스템의 효율을 파악하여 프럭시 서버 기능을 수행하는 제1모드 또는 리다이렉트 서버 기능을 수행하는 제2모드를 설정한다. SIP 메시지의 종류는 요청 메시지 및 응답 메시지로 구분되며, SIP 메시지 종류는 메시지 수신부에서 상술한 바와 동일하므로 상세한 설명은 생략한다.The mode setting unit 210 determines the type of the received SIP message and the efficiency of the system, and sets the first mode performing the proxy server function or the second mode performing the redirect server function. The type of the SIP message is divided into a request message and a response message. Since the SIP message type is the same as described above in the message receiving unit, a detailed description thereof will be omitted.

모드설정부(210)는 수신된 SIP 메시지가 요청 메시지이고, SIP 서버(110)의 시스템 효율이 미리 설정된 기준값 이하이면 제1모드를 선택한다. 모드설정부(210)는 수신된 SIP 메시지가 응답 메시지이면 시스템 효율에 상관없이 제1모드를 선택한다. 모드설정부(210)는 수신된 SIP 메시지가 요청 메시지이고 시스템의 효율이 미리 설정된 기준값 이상이면 제2모드를 선택한다.The mode setting unit 210 selects the first mode when the received SIP message is a request message and the system efficiency of the SIP server 110 is equal to or less than a preset reference value. The mode setting unit 210 selects the first mode regardless of system efficiency if the received SIP message is a response message. The mode setting unit 210 selects the second mode if the received SIP message is a request message and the efficiency of the system is greater than or equal to a preset reference value.

시스템의 효율은 SIP 서버(110)의 중앙처리장치(CPU)의 효율을 의미하며 시스템의 효율이 높을수록 시스템의 부하가 과중된다. 즉, CPU의 최대처리능력을 1이라할때 CPU의 처리량이 1이면 시스템의 효율은 100%이며 CPU의 처리량이 0.7이면 시스템의 효율은 70%이다. 제1모드 및 제2모드를 구분하는 기준인 시스템 효율은 각 시스템의 상황에 적합하게 미리 설정된다. 모드설정부는 주로 시스템 효율 70%을 기준으로 그 이상이면 시스템에 과부가하 발생할 우려가 있는 것으로 그 이하이면 과부하가 발생할 우려가 없는 것으로 판단한다. 시스템의 효율은 메시지 수신부(200)가 SIP 메시지를 수신하는 시점의 시스템 효율인 것이 바람직하다.The efficiency of the system means the efficiency of the central processing unit (CPU) of the SIP server 110. The higher the efficiency of the system, the more heavy the load on the system. In other words, when the CPU's maximum processing capacity is 1, the CPU throughput is 1, and the system efficiency is 100%. If the CPU throughput is 0.7, the system efficiency is 70%. System efficiency, which is a criterion for distinguishing the first mode and the second mode, is preset in accordance with the situation of each system. The mode setting unit judges that there is a risk of overloading the system if it is more than 70% of the system efficiency, and there is no possibility of overloading if it is less than that. The efficiency of the system is preferably the system efficiency at the time when the message receiver 200 receives the SIP message.

SIP 서버(110)가 프럭시 서버의 기능을 수행할 경우 SIP 서버(110)의 CPU 처리량은 많이지므로 시스템 효율은 높아지고 리다이렉트 서버 기능을 수행할 경우 SIP 서버(110)의 CPU 처리량은 적으므로 시스템 효율은 낮아진다. 따라서, 메시지 수신부(200)가 SIP 메시지를 수신한 시점의 시스템 효율에 따라 서버 기능을 선택하게 함으로써, 시스템의 효율이 지나치게 높아져 과부하가 발생하고 과부하의 발생으로 인해 SIP 메시지 처리시간이 지연되는 현상을 방지할 수 있다.When the SIP server 110 performs the function of a proxy server, the CPU throughput of the SIP server 110 is increased, so the system efficiency is high. When the SIP server 110 performs the redirect server function, the CPU throughput of the SIP server 110 is low. Is lowered. Therefore, the message receiving unit 200 selects a server function according to the system efficiency at the time of receiving the SIP message, so that the efficiency of the system is too high, the overload occurs and the SIP message processing time is delayed due to the overload. You can prevent it.

프럭시 서버부(220)는 모드설정부(210)가 프럭시 서버의 기능을 수행하는 제1모드로 설정된 경우에 SIP 메시지를 처리하는 구성이다. 제1모드는 SIP 메시지가 요청메시지이고 시스템 효율이 미리 설정된 일정 기준값 이하인 경우 및 SIP 메시지가 응답메시지인 경우에 설정된다. 이하에서, 프럭시 서버부(220)의 구성 및 기능을 SIP 메시지가 요청 메시지인 경우와 응답 메시지인 경우로 나누어 설명한다.The proxy server unit 220 is a component that processes the SIP message when the mode setting unit 210 is set to the first mode that performs the function of the proxy server. The first mode is set when the SIP message is a request message and the system efficiency is equal to or less than a predetermined predetermined reference value and when the SIP message is a response message. Hereinafter, the configuration and function of the proxy server unit 220 will be described by dividing the SIP message is a request message and the response message.

먼저, SIP 메시지가 요청 메시지인 경우의 프럭시 서버부(220)의 구성 및 기능을 설명한다. 프럭시 서버부(220)는 제1메시지 처리부(222), 제1착신위치파악부(224) 및 제1메시지 전송부(224)로 구성된다.First, the configuration and function of the proxy server unit 220 when the SIP message is a request message will be described. The proxy server 220 includes a first message processing unit 222, a first destination location detecting unit 224, and a first message transmitting unit 224.

제1메시지 처리부(222)는 수신된 SIP 메시지의 해석 및 에러처리를 위한 착신 프로세스를 생성하고 생성된 프로세스의 식별자, SIP 메시지에 포함된 branch 파라미터, CSeq method 및 착신측 주소를 저장한다. 저장된 정보를 기초로 메시지 수신부(200)는 현재 처리중인 SIP 메시지와 상이한 메시지를 수신한다. 동일한 메시지가 수신되면 제1메시지 처리부는 착신 프로세스를 생성하지 않는다. 프로세스에 대하여는 도 3을 참조하여 상세히 설명한다.The first message processor 222 generates an incoming process for interpretation and error processing of the received SIP message, and stores an identifier of the generated process, a branch parameter included in the SIP message, a CSeq method, and a called party address. Based on the stored information, the message receiving unit 200 receives a message different from the SIP message currently being processed. When the same message is received, the first message processing unit does not generate an incoming process. The process will be described in detail with reference to FIG. 3.

제1착신위치파악부(224)는 수신한 SIP 메시지의 착신측 URI를 기초로 도메인네임서버(DNS)(130) 또는 위치서버(Location Server)(140)로부터 착신측의 SIP 서버위치 또는 착신측의 IP 주소를 파악한다. URI(Uniform Resource Identifier)는 텍스트의 한 페이지, 비디오 클립 또는 사운드 클립, 정지 화상 또는 동영상, 프로그램 중 어느 것이든 상관없이 이러한 콘텐츠 중 어느 하나를 인식하기 위한 수단이다. 가장 보편적인 형태의 URI가 바로 웹페이지 주소 즉, URL인데, 이는 URI의 특별한 형태이자 부분집합이라 할 수 있다. 위치서버는 착신측 SIP 서버의 위치정보를 포함하고 있다.The first called location detecting unit 224 is based on the called party URI of the received SIP message, the SIP server location or called party of the called party from the domain name server (DNS) 130 or the location server (Location Server) 140. Figure out the IP address. Uniform Resource Identifiers (URIs) are means for recognizing any one of such content, whether it is a page of text, a video clip or sound clip, a still picture or movie, or a program. The most common form of URI is a web page address, or URL, which is a special form and subset of URIs. The location server contains the location information of the called SIP server.

제1메시지 전송부(226)는 제1착신위치파악부(224)에 의해 파악된 착신측 단말장치(120)의 위치로 메시지 수신부(200)에 의해 수신된 SIP 메시지를 전송한다. 구체적으로, 제1메시지 전송부(226)는 SIP 메시지의 발신과정을 수행하는 발신 프로세스를 생성하고, 발신 프로세스의 식별정보, SIP 메시지의 branch 파라미터 및 CSeq method를 저장한다. 메시지 수신부(200)가 요청 메시지에 대한 응신으로 응답 메시지를 수신하는 경우에, 제1메시지 처리부(222)는 수신된 응답 메시지가 요청 메시지에 대한 정당한 응신인지를 조사하기 위하여 branch 파라미터 및 CSeq method를 이용하여 저장된 발신 프로세스를 검색한다. 즉, 응답메시지의 branch 파라미터 및 CSeq method에 대응하는 요청메시지가 존재하면 응답메시지는 정당한 응신이고 그렇지 않으면 잘못된 응신이다. 응답메시지의 수신에 대하여는 아래에서 상세히 설명한다.The first message transmitting unit 226 transmits the SIP message received by the message receiving unit 200 to the location of the called terminal terminal 120 identified by the first called location detecting unit 224. In detail, the first message transmitter 226 generates an originating process for performing an originating process of the SIP message, and stores identification information of the originating process, a branch parameter of the SIP message, and a CSeq method. When the message receiving unit 200 receives the response message in response to the request message, the first message processing unit 222 uses the branch parameter and the CSeq method to check whether the received response message is a valid response to the request message. To retrieve a stored outgoing process. In other words, if there is a request message corresponding to the branch parameter of the response message and the CSeq method, the response message is a legitimate response. The reception of the response message will be described in detail below.

다음으로, SIP 메시지가 응답 메시지인 경우의 제1메시지 처리부(222)의 구성 및 기능을 설명한다. 프럭시 서버부(220)는 제1메시지 처리부(222), 제1착신위치파악부(224) 및 제1메시지 전송부(226)로 구성된다. 메시지 수신부(200)가 요청 메시지에 대한 응신으로 응답메시지를 착신측(120)으로부터 수신하면, 프럭시 서버부(220)는 요청 메시지의 발신측 단말장치(100)로 응답메시지를 전송한다.Next, the configuration and function of the first message processing unit 222 when the SIP message is a response message will be described. The proxy server 220 includes a first message processing unit 222, a first destination position detecting unit 224, and a first message transmitting unit 226. When the message receiving unit 200 receives the response message from the called party 120 in response to the request message, the proxy server unit 220 transmits the response message to the originating terminal device 100 of the request message.

제1메시지 처리부(222)는 응답메시지에 대응하는 요청 메시지의 존재를 확인하기 위하여 수신한 응답 메시지의 branch 파라미터 및 CSeq method를 이용한다. 제1메시지 전송부(226)가 요청 메시지를 전송한 후 저장한 발신 프로세스의 식별자, 요청 메시지의 branch 파라미터 및 CSeq method를 저장하므로, 제1메시지 처리부(222)는 응답 메시지의 branch 파라미터 및 CSeq method를 이용하여 발신 프로세스를 검색할 수 있다. 즉, 제1메시지 처리부(222)는 응답 메시지의 branch 파라미터 및 CSeq method에 대응하는 요청 메시지의의 존재여부를 파악한다. 제1메시지처리부(222)는 응답메시지에 대응하는 요청 메시지가 존재하지 않으면 오류 응답 메시지를 생성한다.The first message processor 222 uses the branch parameter and the CSeq method of the received response message to confirm the existence of the request message corresponding to the response message. Since the first message transmitter 226 stores the identifier of the originating process, the branch parameter of the request message, and the CSeq method stored after transmitting the request message, the first message processor 222 stores the branch parameter and the CSeq method of the response message. You can search for the origination process by using. That is, the first message processor 222 determines whether a branch parameter of the response message and a request message corresponding to the CSeq method exist. If the request message corresponding to the response message does not exist, the first message processing unit 222 generates an error response message.

제1착신위치파악부(224)는 응답 메시지에 대응하는 요청 메시지를 전송한 발신측 단말장치(100)의 위치를 파악한다. SIP 서버(110)는 응답 메시지의 수신전에 이미 요청 메시지를 수신한 상태이고 SIP 메시지는 발신측 주소를 포함하므로 제1착신위치파악부(224)는 응답메시지에 대응하는 요청 메시지로부터 발신측 단말장치(100)의 위치를 파악한다.The first called location detecting unit 224 detects the location of the calling terminal 100 that has transmitted the request message corresponding to the response message. Since the SIP server 110 has already received the request message before the response message is received and the SIP message includes the originating address, the first destination location detecting unit 224 may determine the originating terminal device from the request message corresponding to the response message. Determine the location of 100.

제1메시지 전송부(226)는 응답 메시지를 파악된 요청 메시지의 발신측 단말장치(100)로 전송한다. 제1메시지 전송부(226)는 응답 메시지에 대응하는 요청 메시지가 존재하지 않으면 제1메시지 처리부(222)에 의해 생성된 오류 응답 메시지를 발신측 단말장치(100)로 전송한다.The first message transmitter 226 transmits the response message to the calling terminal apparatus 100 of the identified request message. If there is no request message corresponding to the response message, the first message transmitter 226 transmits an error response message generated by the first message processor 222 to the calling terminal 100.

이상에서, 제1모드에서 프럭시 서버 기능을 수행하는 프럭시 서버부(220)를 요청 메시지 및 응답 메시지를 수신한 경우로 나누어 설명하였다. 이하에서는 제2모드의 경우를 살펴본다.In the above description, the proxy server 220 performing the proxy server function in the first mode is divided into a case in which a request message and a response message are received. Hereinafter, the case of the second mode will be described.

리다이렉트서버부(230)는 모드설정부가 프럭시 서버의 기능을 수행하는 제2모드를 선택한 경우에 SIP 메시지를 처리하는 구성이다. 제2모드는 SIP 메시지가 요청메시지이고 시스템 효율이 미리 설정된 일정 기준값 이상인 경우에 설정된다. 리다이렉트 서버부(230)는 제2메시지 처리부(232), 제2착신위치파악부(234), 메시지 생성부(236) 및 제2메시지 전송부(238)로 구성된다.The redirect server 230 is configured to process the SIP message when the mode setting unit selects the second mode to perform the function of the proxy server. The second mode is set when the SIP message is a request message and the system efficiency is equal to or greater than a predetermined predetermined reference value. The redirect server 230 includes a second message processor 232, a second destination location detector 234, a message generator 236, and a second message transmitter 238.

제2메시지 처리부(232)는 SIP 메시지의 해석 및 에러처리를 위한 착신 프로세서를 생성하고, 생성된 착신 프로세스의 식별자, SIP 메시지에 포함된 branch 파라미터, CSeq method 및 발신측 주소를 저장한다. 메시지 수신부(200)는 저장된 정보를 기초로 현재 처리중인 SIP 메시지와 동일한 메시지를 조사하여 동일한 메시지이면 수신하지 않는다.The second message processing unit 232 generates an incoming processor for interpreting and error processing a SIP message, and stores an identifier of the generated incoming process, a branch parameter included in the SIP message, a CSeq method, and an originating address. The message receiver 200 examines the same message as the SIP message currently being processed and does not receive the same message based on the stored information.

제2착신위치파악부(234)는 수신한 SIP 메시지의 착신측 URI를 기초로 도메인네임서버(130) 또는 위치서버(140)로부터 착신측의 SIP 서버위치 또는 착신측 IP 주소를 파악한다. 메시지 생성부(236)는 파악된 착신측 위치 정보를 포함하는 응답 메시지를 생성한다. 제2메시지 전송부(238)는 메시지 생성부(236)에 의해 생성된 응답 메시지를 발신측 단말장치로 전송한다. 리다이렉트 서버부(230)는 직접 요청 메시지를 착신측으로 전송하지 않고 응답메시지의 수신을 필요로 하지 않으므로 프락시 서버부(220)처럼 발신 프로세스의 생성 및 SIP 메시지의 branch 파라미터 및 CSeq method의 저장을 필요로 하지 않는다.The second destination location detecting unit 234 grasps the SIP server location or the destination IP address of the called party from the domain name server 130 or the location server 140 based on the called party URI of the received SIP message. The message generator 236 generates a response message including the identified called party location information. The second message transmitter 238 transmits the response message generated by the message generator 236 to the calling terminal device. Since the redirect server unit 230 does not directly transmit the request message to the called party and does not need to receive the response message, it is necessary to generate the originating process and store the branch parameter and the CSeq method of the SIP message like the proxy server unit 220. I never do that.

도 3은 본 발명에 따른 SIP 서버를 프로세스의 관점에서 도시한 도면이다.3 shows a SIP server according to the invention in terms of process.

도 3을 참조하면 SIP 서버(110)는 SIP 메시지 처리 프로세스(300), 프럭시 서버 코어 프로세스(310), 프럭시 착신 프로세스(320), 프럭시 발신 프로세스(330), 리다이렉트 서버 코어 프로세스(340) 및 리다이렉트 착신 프로세스(350)를 포함한다.Referring to FIG. 3, the SIP server 110 includes a SIP message processing process 300, a proxy server core process 310, a proxy incoming process 320, a proxy originating process 330, and a redirect server core process 340. ) And the redirect incoming process 350.

프로세스는 독립적으로 실행하는 프로그램으로서 본 발명에서는 ITU-T에서 통신 시스템 설계용으로 권고된 SDL(Specification and Description Language)언어를 사용하여 프로세를 구현한다. SDL 프로세스는 상호간에 신호(signal)를 통해서비동기적으로 통신을 한다. SIP에는 Via, To, From, Call-ID, CSeq, Contact, Max-Forward 등의 항목이 존재한다. branch 파라미터는 요청 메시지가 생성될 때 각 요청 메시지에 고유한 값으로 생성된다.The process is a program that executes independently. In the present invention, the process is implemented using the specification and description language (SDL) language recommended for communication system design in ITU-T. SDL processes communicate asynchronously with each other through signals. In SIP, items such as Via, To, From, Call-ID, CSeq, Contact, and Max-Forward exist. The branch parameter is generated with a unique value for each request message when the request message is generated.

SIP 메시지 처리 프로세스(300)는 SIP 서버에 도착하는 SIP 메시지를 감시하고 SIP 메시지를 수신한다. 또한, SIP 메시지 처리 프로세스(300)는 수신된 SIP 메시지의 종류를 파악하고 SIP 서버(110)의 시스템 효율을 조사한 후 프럭시 서버 기능을 수행하는 모드 또는 리아이렉트 서버 기능을 수행하는 모드를 선택한다.The SIP message processing process 300 monitors SIP messages arriving at the SIP server and receives the SIP messages. In addition, the SIP message processing process 300 determines the type of the received SIP message, investigates the system efficiency of the SIP server 110, and selects a mode for performing a proxy server function or a mode for performing a redirect server function. .

SIP 서버가 프럭시 서버 기능을 수행하는 경우에 프럭시 서버 코어 프로세(310)는 프럭시 착신 프로세스(320) 및 프럭시 발신 프로세스(330)를 생성한다. 또한 프럭시 서버 코어 프로세스(310)는 생성된 착신 프로세스의 식별자, 수신된 SIP 메시지의 branch 파라미터, CSeq method 및 발신측 주소를 저장한다. 저장한 후에, 프럭시 서버 코어 프로세스(310)는 SIP 메시지의 착신측 URI를 기초로 도메인네임서버(130) 또는 위치서버(140)로부터 착신측 위치를 파악하고, 파악된 착신측 위치로 SIP 메시지를 전송한다. 전송한 후, 프럭시 서버 코어 프로세스(310)는 생성된 발신 프로세스의 식별자, 전송한 SIP 메시지의 branch 파라미터 및 CSeq method를 저장한다. 저장된 발신 프로세스의 식별자 등은 응답 메시지에 대응하는 요청 메시지를 검색하는 데 이용된다.When the SIP server performs a proxy server function, the proxy server core process 310 generates a proxy incoming process 320 and a proxy originating process 330. The proxy server core process 310 also stores the identifier of the generated called process, the branch parameter of the received SIP message, the CSeq method, and the originating address. After storing, the proxy server core process 310 identifies the called party's location from the domain name server 130 or the location server 140 based on the called party's URI of the SIP message, and the SIP message is identified to the called party's location. Send it. After the transmission, the proxy server core process 310 stores the identifier of the generated originating process, the branch parameter of the transmitted SIP message, and the CSeq method. The identifier of the stored originating process or the like is used to retrieve the request message corresponding to the response message.

프럭시 착신 프로세스(320)는 수신된 SIP 메시지를 해독하고 SIP 메시지에 관련된 에러를 처리한다. 프럭시 발신 프로세스(330)는 착신측에게 주기적으로 응답 메시지의 전송을 요구한다. 응답 메시지가 수신되면 프럭시 발신 프로세스의 메시지 재전송 타이머는 해제된다.Proxy incoming process 320 decrypts the received SIP message and handles errors related to the SIP message. The proxy originating process 330 periodically requests the called party to send a response message. When the response message is received, the message retransmission timer of the proxy originating process is released.

리다이렉트 서버 코어 프로세스(340)는 리다이렉트 착신 프로세스(350)를 생성하고, 착신 프로세스의 식별자, 수신된 SIP 메시지의 branch 파라미터, CSeq method 및 발신측 주소를 저장한다. 또한, 리다이렉트 서버 코어 프로세스(340)는 SIP 메시지의 착신측 URI를 기초로 도메인 네임서버 또는 위치서버로부터 착신측 위치를 파악한 후, 파악된 착신측 위치정보를 발신측 단말장치(100)로 전송한다. 리다이렉트 착신 프로세스(350)는 수신된 SIP 메시지의 해독 및 에러처리기능을 수행한다.The redirect server core process 340 generates the redirect incoming process 350 and stores the identifier of the incoming process, the branch parameter of the received SIP message, the CSeq method, and the originating address. In addition, the redirect server core process 340 determines the called party's location from the domain name server or the location server based on the called party's URI of the SIP message, and then transmits the identified called party's location information to the calling party terminal device 100. . The redirect incoming process 350 performs decryption and error handling of the received SIP message.

도 4는 본 발명에 따른 SIP 메시지 처리방법의 흐름을 도시한 도면이다.4 is a diagram illustrating a flow of a SIP message processing method according to the present invention.

도 4를 참조하면, 메시지 수신부(200)는 발신측(100)으로부터 SIP 메시지를 수신한다(S400). SIP 메시지는 요청 메시지 또는 응답 메시지로 구분된다. 수신된 SIP 메시지가 요청 메시지이고(S402) SIP 서버의 시스템 효율이 70%이하이면(S404), 제1메시지 처리부(222)는 SIP 메시지의 해독 및 에러처리를 수행하는 착신 프로세스를 생성한다(S406). 또한, 제1메시지 처리부(222)는 생성된 착신 프로세스의 식별자, SIP 메시지의 branch 파라미터, CSeq method 및 발신측 주소를 저장한다(S408).Referring to FIG. 4, the message receiving unit 200 receives a SIP message from the calling party 100 (S400). SIP messages are divided into request messages or response messages. If the received SIP message is a request message (S402) and the system efficiency of the SIP server is 70% or less (S404), the first message processing unit 222 generates an incoming process for performing decryption and error processing of the SIP message (S406). ). In addition, the first message processing unit 222 stores the generated ID of the incoming process, the branch parameter of the SIP message, the CSeq method and the calling party address (S408).

제1착신위치파악부(224)는 SIP 메시지의 착신측 URI를 기초로 도메인 네임서버(130) 또는 위치서버(140)로부터 착신측 위치를 파악한다(S410). 제1메시지 전송부(226)는 SIP 메시지를 전송하기 위한 발신 프로세스를 생성하고(S412), 생성된 발신 프로세스의 식별자, SIP 메시지의 branch 파라미터 및 CSeq method를 저장한다(S416). 제1메시지 전송부(226)는 파악된 착신측 위치로 SIP 메시지를 전송한다(S414). 발신 프로세스는 요청 메시지에 대한 응답 메시지가 수신될 때까지 주기적으로 재전송 메시지를 착신측으로 전송한다.The first called location detecting unit 224 determines the called party location from the domain name server 130 or the location server 140 based on the called party URI of the SIP message (S410). The first message transmitter 226 generates an originating process for transmitting the SIP message (S412), and stores the identifier of the generated originating process, the branch parameter of the SIP message, and the CSeq method (S416). The first message transmitter 226 transmits the SIP message to the identified called party location (S414). The originating process periodically sends a retransmission message to the called party until a response message to the request message is received.

수신된 SIP 메시지가 응답 메시지이면(S402), 제1메시지 처리부(222)는 수신된 응답 메시지의 branch 파라미터 및 CSeq method를 기초로 응답 메시지에 대응하는 요청 메시지가 존재하는지 조사한다(S428). 제1메시지 처리부(222)는 응답 메시지에 대응하는 요청 메시지가 존재하면(S430) 요청 메시지를 위하여 생성된 발신 프로세스에서 메시지 재전송을 위한 타이머를 해제하고(S432), 응답 메시지에 대응하는 요청 메시지가 존재하지 않으면 오류 응답 메시지를 생성한다(S434).If the received SIP message is a response message (S402), the first message processing unit 222 checks whether a request message corresponding to the response message exists based on the branch parameter of the received response message and the CSeq method (S428). If there is a request message corresponding to the response message (S430), the first message processor 222 releases the timer for retransmission of the message in the originating process generated for the request message (S432), and the request message corresponding to the response message is released. If it does not exist, generates an error response message (S434).

제1착신위치파악부(224)는 응답 메시지에 대응하는 요청 메시지의 발신측 단말장치(100)의 위치를 파악한다. 제1메시지 전송부(226)는 응답 메시지 또는 오류 응답 메시지를 요청 메시지를 전송한 발신측 단말장치(100)로 전송한다(S436).The first called location detecting unit 224 detects the location of the calling terminal 100 of the request message corresponding to the response message. The first message transmitter 226 transmits the response message or the error response message to the calling terminal apparatus 100 that has transmitted the request message (S436).

수신된 SIP 메시지가 요청 메시지이고(S402) SIP 서버의 시스템 효율이 70%이상이면(S404), 제2메시지 처리부(232)는 SIP 메시지 해독 및 에러처리를 수행하는 착신 프로세스를 생성하고(S418), 생성된 착신 프로세스의 식별자, SIP 메시지의 branch 파라미터, CSeq method 및 발신측 주소를 저장한다(S420).If the received SIP message is a request message (S402) and the system efficiency of the SIP server is 70% or more (S404), the second message processing unit 232 generates an incoming process for performing SIP message decryption and error processing (S418). In operation S420, the identifier of the called party, the branch parameter of the SIP message, the CSeq method, and the calling party address are generated.

제2착신위치파악부(234)는 SIP 메시지의 착신측 URI를 기초로 도메인네임서버(130) 또는 위치서버(140)로부터 착신측 위치를 파악한다(S422). 메시지 생성부(236)는 파악된 착신측 위치정보를 포함하는 응답 메시지를 생성한다(S424). 제2메시지 전송부(238)는 메시지 생성부(236)에 의해 생성된 응답 메시지를 발신측으로 전송한다(S426).The second called location detecting unit 234 determines the called party location from the domain name server 130 or the location server 140 based on the called party URI of the SIP message (S422). The message generator 236 generates a response message including the determined called party location information (S424). The second message transmitter 238 transmits the response message generated by the message generator 236 to the calling party (S426).

본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.The invention can also be embodied as computer readable code on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of computer-readable recording media include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage, and the like, and may also be implemented in the form of a carrier wave (for example, transmission over the Internet). Include. The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

이상의 설명은 바람직한 실시예를 설명한 것에 불과한 것으로서, 본 발명은 상술한 실시예에 한정되지 아니하며 첨부한 특허청구범위 내에서 다양하게 변경 가능하다. 예를 들어 본 발명의 실시예에 구체적으로 나타난 각 구성요소의 형상 및 구조는 변형하여 실시할 수 있다.The foregoing descriptions are merely illustrative of preferred embodiments, and the present invention is not limited to the above-described embodiments and can be variously changed within the scope of the appended claims. For example, the shape and structure of each component specifically shown in the embodiment of the present invention may be modified.

본 발명에 따르면, SIP 서버의 시스템 효율이 높아져 시스템의 과부하가 발생할 우려가 있는 경우에는 SIP 서버를 리다이렉트 서버로 동작하도록 하고, SIP 서버의 시스템의 효율이 낮은 경우에는 SIP 서버를 프럭시 서버로 동작하도록 함으로써 시스템 과부하를 방지하고 호(call) 처리 지연을 방지한다. 호의 발생빈도가 가변적이므로 이를 예측하여 프럭시 서버 또는 리다이렉트 서버를 설치하여야 하는 어려움도 해결된다.According to the present invention, if the system efficiency of the SIP server is increased and there is a risk of overloading the system, the SIP server is operated as a redirect server, and if the efficiency of the SIP server system is low, the SIP server is operated as a proxy server. This prevents system overload and delays in call processing. Since the frequency of calls is variable, the difficulty of installing a proxy server or redirect server is also solved.

Claims (12)

발신측으로부터 착신측 식별자를 포함하는 세션초기화프로토콜(SIP:Session Initiation Protocol) 메시지를 수신하는 메시지 수신부;A message receiving unit for receiving a Session Initiation Protocol (SIP) message including a called party identifier from a calling party; 상기 수신한 SIP 메시지의 종류 및 시스템 효율을 기초로 프럭시서버 기능을 수행하는 제1모드 및 리다이렉트서버 기능을 수행하는 제2모드를 설정하는 모드설정부;A mode setting unit configured to set a first mode performing a proxy server function and a second mode performing a redirect server function based on the received SIP message type and system efficiency; 상기 제1모드의 경우에 상기 착신측 식별자를 기초로 착신측의 위치를 파악하고, 상기 파악된 착신측 위치로 상기 SIP 메시지를 전송하는 프럭시 서버부; 및A proxy server unit configured to determine a location of a called party based on the called party identifier in the first mode and to transmit the SIP message to the identified called party location; And 상기 제2모드의 경우에 상기 착신측 식별자를 기초로 착신측의 위치를 파악하고, 상기 파악된 착신측의 위치정보를 상기 발신측으로 전송하는 리다이렉트 서버부;를 포함하는 것을 특징으로 하는 SIP 서버.And a redirect server unit for detecting the location of the called party based on the called party identifier in the second mode and transmitting the identified location information of the called party to the calling party. 제 1항에 있어서,The method of claim 1, 상기 SIP 메시지는 소정의 요청 메시지 및 소정의 응답 메시지로 구분되고,The SIP message is divided into a predetermined request message and a predetermined response message, 상기 모드설정부는 상기 수신한 SIP 메시지의 종류가 상기 요청 메시지이고 상기 시스템 효율이 소정의 기준값 이상이면 상기 제2모드를 설정하는 것을 특징으로 하는 SIP 서버.And the mode setting unit sets the second mode if the type of the received SIP message is the request message and the system efficiency is equal to or greater than a predetermined reference value. 제 1항에 있어서,The method of claim 1, 상기 프럭시 서버부는,The proxy server unit, 상기 착신측 식별자를 기초로 도메인네임서버(DNS) 또는 SIP 서버의 위치정보를 포함하는 위치서버(Location Server)로부터 착신측의 위치를 파악하는 제1착신위치파악부; 및A first called location detection unit for detecting a location of a called party from a location server including location information of a domain name server or a SIP server based on the called party identification; And 상기 파악된 착신측 위치로 상기 수신한 SIP 메시지를 전송하는 제1메시지 전송부;를 포함하는 것을 특징으로 하는 SIP 서버.And a first message transmitter for transmitting the received SIP message to the determined called party location. 제 1항에 있어서,The method of claim 1, 상기 리다이렉트 서버부는,The redirect server unit, 상기 착신측 식별자를 기초로 도메인네임서버(DNS) 또는 SIP 서버의 위치정보를 포함하는 위치서버(Location Server)로부터 착신측의 위치를 파악하는 제2착신위치파악부;A second called location determining unit for detecting a location of a called party from a location server including location information of a domain name server (DNS) or a SIP server based on the called party identification; 상기 파악된 착신측 위치 정보를 포함하는 응답 메시지를 생성하는 메시지생성부; 및A message generator for generating a response message including the identified called party location information; And 상기 생성된 응답 메시지를 상기 발신측으로 전송하는 제2메시지전송부;를 포함하는 것을 특징으로 하는 SIP 서버.And a second message transmitting unit which transmits the generated response message to the calling party. 제 1항에 있어서,The method of claim 1, 상기 SIP 메시지는 소정의 요청 메시지 및 소정의 응답 메시지로 구분되고,The SIP message is divided into a predetermined request message and a predetermined response message, 상기 메시지 수신부는 상기 요청 메시지에 대한 응신으로 상기 응답 메시지를 수신하고,The message receiving unit receives the response message in response to the request message, 상기 프럭시 서버부는 상기 요청 메시지를 전송한 발신측으로 상기 응답메시지를 전송하는 것을 특징으로 하는 SIP 서버.And the proxy server unit transmits the response message to the calling party that has sent the request message. 제 5항에 있어서,The method of claim 5, 상기 프럭시 서버부는 상기 요청 메시지를 발신측으로 전송하는 경우에 상기 요청메시지의 헤더정보를 저장하고, 상기 수신된 응답메시지의 헤더정보를 기초로 상기 저장된 헤더정보를 검색하여 상기 요청메시지의 발신측 위치를 파악하는 것을 특징으로 하는 SIP 서버.The proxy server unit stores the header information of the request message when the request message is transmitted to the sender, and searches the stored header information based on the header information of the received response message to determine the location of the sender of the request message. SIP server, characterized in that to grasp. (a) 발신측으로부터 착신측 식별자를 포함하는 SIP 메시지를 수신하는 단계;(a) receiving a SIP message including a called party identifier from the calling party; (b) 상기 수신한 메시지의 종류 및 시스템의 효율을 기초로 프락시서버 기능을 수행하는 제1모드 및 리다이렉트서버 기능을 수행하는 제2모드를 설정하는 단계;(b) setting a first mode performing a proxy server function and a second mode performing a redirect server function based on the type of the received message and the efficiency of the system; (c) 상기 착신측 식별자를 기초로 상기 착신측의 위치를 파악하는 단계;(c) identifying a location of the called party based on the called party identifier; (d) 상기 제1모드의 경우에 상기 SIP 메시지를 상기 파악된 착신측 위치로 전송하는 단계; 및(d) in the case of the first mode, transmitting the SIP message to the identified called party location; And (e) 상기 제2모드의 경우에 상기 파악된 착신측의 위치정보를 상기 발신측으로 전송하는 단계;를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법.(e) in the case of the second mode, transmitting the identified location information of the called party to the calling party. 제 7항에 있어서,The method of claim 7, wherein 상기 SIP 메시지는 소정의 요청(Request)메시지 및 소정의 응답(Response)메시지를 포함하고,The SIP message includes a predetermined request message and a predetermined response message. 상기 (b) 단계는 SIP 메시지가 상기 요청메시지이고 상기 시스템 효율이 소정의 기준값 이상이면 제2모드를 설정하는 단계를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법.The step (b) comprises the step of setting a second mode if the SIP message is the request message and the system efficiency is greater than a predetermined reference value. 제 7항에 있어서,The method of claim 7, wherein 상기 (c) 단계는 상기 착신측 식별자를 기초로 도메인네임서버(DNS) 또는 착신측 SIP 서버의 위치정보를 포함하는 위치서버(Location Server)를 이용하여 착신측의 위치를 파악하는 단계를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법.The step (c) includes determining a location of a called party using a location server including location information of a domain name server (DNS) or a called SIP server based on the called party identifier. SIP message processing method characterized in that. 제 7항에 있어서,The method of claim 7, wherein 상기 SIP 메시지의 종류는 소정의 요청 메시지 및 소정의 응답 메시지로 구분되고,The type of the SIP message is divided into a predetermined request message and a predetermined response message, 상기 (a)단계는 요청 메시지에 대한 응신으로 응답 메시지를 수신하는 단계를 포함하고,Step (a) includes receiving a response message in response to the request message, 상기 (d)단계는 상기 요청 메시지를 전송한 발신측으로 상기 응답 메시지를 전송하는 단계를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법.The step (d) of the SIP message processing method comprising the step of transmitting the response message to the sender that sent the request message. 제 7항에 있어서,The method of claim 7, wherein 상기 (e) 단계는,In step (e), (e1) 상기 파악된 착신측의 위치정보를 포함하는 응답 메시지를 생성하는 단계; 및(e1) generating a response message including the identified location information of the called party; And (e2) 상기 응답 메시지를 상기 파악된 발신측 위치로 전송하는 단계;를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법.(e2) transmitting the response message to the identified calling party location. (a) 발신측으로부터 착신측 식별자를 포함하는 SIP 메시지를 수신하는 단계;(a) receiving a SIP message including a called party identifier from the calling party; (b) 상기 수신한 메시지의 종류 및 시스템의 효율을 기초로 프락시서버 기능을 수행하는 제1모드 및 리다이렉트서버 기능을 수행하는 제2모드로 설정하는 모드설정신호를 출력하는 단계;(b) outputting a mode setting signal for setting to a first mode performing a proxy server function and a second mode performing a redirect server function based on the type of the received message and the efficiency of the system; (c) 상기 착신측 식별자를 기초로 상기 착신측의 위치를 파악하는 단계;(c) identifying a location of the called party based on the called party identifier; (d) 상기 제1모드 설정신호를 수신하면 상기 SIP 메시지를 상기 파악된 착신측 위치로 전송하는 단계; 및(d) transmitting the SIP message to the identified called party location when the first mode setting signal is received; And (e) 상기 제2모드 설정신호를 수신하면 상기 파악된 착신측의 위치정보를 상기 발신측으로 전송하는 단계;를 포함하는 것을 특징으로 하는 SIP 메시지 처리방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.(e) when receiving the second mode setting signal, transmitting the determined location information of the called party to the calling party; and recording a program for executing the SIP message processing method on a computer. Readable record carrier.
KR1020030052610A 2003-07-30 2003-07-30 Session Initiation Protocol server and SIP message handling method KR20050014129A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020030052610A KR20050014129A (en) 2003-07-30 2003-07-30 Session Initiation Protocol server and SIP message handling method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030052610A KR20050014129A (en) 2003-07-30 2003-07-30 Session Initiation Protocol server and SIP message handling method

Publications (1)

Publication Number Publication Date
KR20050014129A true KR20050014129A (en) 2005-02-07

Family

ID=37225301

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030052610A KR20050014129A (en) 2003-07-30 2003-07-30 Session Initiation Protocol server and SIP message handling method

Country Status (1)

Country Link
KR (1) KR20050014129A (en)

Similar Documents

Publication Publication Date Title
KR101109276B1 (en) Sustaining session connections
KR100728280B1 (en) Network state management method for using BYE/200OK in communication system for using Session Initiation Protocol
EP1790149B1 (en) Method and session initiation protocol (sip) server for the exchange of end-point capabilities
US9043491B2 (en) Proximity detection for media proxies
US7787501B2 (en) Congestion control in an IP network
US8291022B2 (en) Method and device for messaging
US20070153770A1 (en) System and method for feature-based services control using SIP
US8296447B2 (en) Method for copying session information, call control server for executing the same, and computer product
US20040252683A1 (en) System, method , and computer program product for resolving addressing in a network including a network address translator
US20060239247A1 (en) Method and session initiation protocol (SIP) server with end-point capabilities check
EP1882348A1 (en) System and method for providing interactive communications
WO2008047920A1 (en) Proxy server, communication system, communication method, and program
JP3698698B2 (en) Establishing calls on intranets and external networks via DMZ
US20130246658A1 (en) Method and system for selecting a data compression technique for data transfer through a data network
US20140164543A1 (en) Communication System, Application Server and Communication Method for Server Cooperation
JP2004235778A (en) Response processing control method
WO2008052427A1 (en) A method and network communication system for redirecting network communication port
US7408926B1 (en) Method and apparatus for accessing voice over internet protocol connection
JP4677350B2 (en) Call control signal transfer apparatus, call control signal transfer method, and call control signal transfer program
US20080123849A1 (en) Dynamic key exchange for call forking scenarios
KR101080383B1 (en) Method for voice over internet protocol call setup and communication system performing the same
KR20050014129A (en) Session Initiation Protocol server and SIP message handling method
US20050111390A1 (en) Signaling method, server and gateway terminal
KR100369809B1 (en) Method for transmitting dual tone multiple frequency signal using voip
KR20120077460A (en) A priority assignment scheme for emergency calls in sip signaling networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application