KR20060084318A - Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법 - Google Patents

Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법 Download PDF

Info

Publication number
KR20060084318A
KR20060084318A KR1020050005143A KR20050005143A KR20060084318A KR 20060084318 A KR20060084318 A KR 20060084318A KR 1020050005143 A KR1020050005143 A KR 1020050005143A KR 20050005143 A KR20050005143 A KR 20050005143A KR 20060084318 A KR20060084318 A KR 20060084318A
Authority
KR
South Korea
Prior art keywords
terminal
information
voice data
media
format
Prior art date
Application number
KR1020050005143A
Other languages
English (en)
Other versions
KR100666945B1 (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 KR1020050005143A priority Critical patent/KR100666945B1/ko
Priority to US11/315,185 priority patent/US8009664B2/en
Publication of KR20060084318A publication Critical patent/KR20060084318A/ko
Application granted granted Critical
Publication of KR100666945B1 publication Critical patent/KR100666945B1/ko

Links

Images

Classifications

    • 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]
    • 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

Landscapes

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

Abstract

본 발명의 일 측면에 따른 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법은, 제 1 단말이 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 제 1 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고 제 2 단말로 전송하여, 상기 제 1 단말의 OS 및 사운드 모듈에 관한 정보를 제공하는 단계; 와 상기 제 2 단말이 상기 제공된 제 1 단말의 OS 및 사운드 모듈에 관한 정보로부터 제 1 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 제 2 단말이 지원하는 음성 데이터 포맷과 비교하여, 제 1 단말 및 제 2 단말에서 공통으로 지원 가능한 포맷을 상기 제 2 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함한다.

Description

SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법{Method for Exchanging Media Description Information Between User Agents Using Session Initiation Protocol}
도 1은 종래 기술에 따른 SIP 시그널링 과정상에서의 SDP 정보의 한 예를 나타낸 도면.
도 2는 본 발명에 따라 서로 다른 사운드 모듈을 사용하는 단말간의 음성 통화가 성립하는 경우, SIP 메시지 교환 흐름의 바람직한 일 실시예를 나타낸 도면.
도 3은 본 발명에 따른 발신 단말에서의 상대 단말에 대한 SDP 바디 분석 절차 흐름을 나타낸 도면.
도 4는 본 발명에 따른 수신 단말에서의 상대 단말에 대한 SDP 바디 분석 절차 흐름의 바람직한 일 실시예를 나타낸 도면.
도 5는 본 발명에 따른 SIP 프로토콜을 이용하여 미디어 정보를 교환하는 단말의 논리적인 블록 구성을 나타낸 도면.
*도면의 주요 부분에 대한 부호의 설명*
100 : UAC(User Agent Client) 200 : UAS(User Agent Server)
500 : 본 발명에 따른 단말 510 : SIP 메시지 생성부
520 : SIP 메시지 발신부 530 : SIP 메시지 수신부
540 : 음성데이터처리포맷 결정부
본 발명은 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법에 관한 것으로, 보다 구체적으로는 세션 정보에 관한 정보를 포함하는 SDP 프로토콜의 부가 정보 필드에 단말이 사용하는 OS 및 사운드 모듈의 종류를 나타낼 수 있도록 함으로써, 서로 다른 사운드 모듈을 사용하는 단말간의 음성 통신이 원활히 이루어질 수 있도록 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법에 관한 것이다.
SIP는 하나의 IP 네트워크에서 세션을 수립하고 해체하는 신호 프로토콜로, 종단의 사용자를 다집단 음성 및 화상회의로 로케이팅 및 연결해 주는 VoIP 전화기용 표준으로 가장 잘 알려져 있다. HTTP와 마찬가지로, SIP는 다재다능하며 사용이 간편하다. 이것은 협업 멀티미디어 회의 및 음성 지원 전자상거래를 수립할 수 있다. IETF는 1999년 SIP의 첫 버전인 RFC 2543을 발표했으며, 가장 최근에는 2002년 6월 RFC 3261을 내놓았다.
SIP는 레거시 네트워크에 있던 전통적인 음성용 종단간 회선을 인터넷 상의 세션이 대체하게 되는 VoIP용으로 이상적이다. ITU의 H.323 멀티미디어 표준뿐만 아니라 일부 업체 전용 VoIP 전화기들도 이런 기능이 있다. SIP가 등장하기 이전에 제품을 만들었던 VoIP 업체들은 H.323을 채택했다. 하지만 SIP는 H.323보다 이행이 간단하며, 오버헤드가 더 작고 가벼운 프로토콜이다.
하지만 SIP는 기존의 전화기 접속을 보다 표준에 가깝게 대체해 주기 때문에, 참석(presence)과 같은 진보된 멀티미디어 서비스를 이행하기가 더 쉽다. 이것은 사용자가 특정 전화기뿐만 아니라 비디오나 인스턴트 메시징 세션에서 호출을 받을 수 있는지, 그리고 받기를 원하는지 여부를 즉시 파악할 수 있게 해준다. 또한 VoIP 호출에서 여러 개의 목적지로 호출을 보낼 수 있다.
SIP는 전송 수단으로 UDP(User Datagram Protocol)나 TCP를 사용할 수 있지만, 포트 5060에 있는 UDP를 기본 값으로 사용한다. UDP와 같이 믿을 수 없는 프로토콜에 의해 SIP 패킷이 유실되면, SIP는 일단 응답을 충분히 기다렸는지 결정한 후 명령어를 재전송한다.
SIP가 다른 종단지점으로 보내는 가장 일반적인 명령어는 'INVITE'이다. SIP 전화기는 사용자 에이전트(User Agent)가 다른 SIP 전화기나 사용자 에이전트로 접속하고자 할 때 이 초대 명령어를 보낸다. 초대가 성공하면 초대 메시지를 생성하여 발신한 곳(originator)으로 '200'이란 응답이 오는데, 이것은 모든 것이 OK며 세션이 수립되었음을 의미한다.
'INVITE' 요청은 SDP를 이용해 사용자 에이전트에게 호출자의 매체 능력 (media capabilities)을 알려준다. 호출된 집단이 대답을 하면 이것은 OK 메시지로 응수하며, 여기에는 또한 지원되는 매체 능력이 포함돼 있다.
일부 SIP 전화기들은 서로 직접적으로 호출을 할 수 있지만, 확장성을 원한다면 서버가 필요하다. SIP 서버는 디렉토리 정보와 호출된 집단의 위치를 지속적으로 추적해준다. 몇몇 SIP 서버가 있으며, 이들은 모두 같은 서버나 자체 하드웨어 플랫폼에서 가동될 수 있다.
요청(Request)을 생성하고 사용자 에이전트를 대신해 접속을 수립하는 프록시 서버(Proxy Server), 요청에 응답해 사용자 에이전트로 대체 로케이션 정보를 제공하지만 접속 설정에는 관여하지 않는 리다이렉트 서버(Redirect Server), 전화기와 같은 SIP 장비에 의해 현재 로케이션 등록에 사용되는 등록 서버(Registration Server), 위치 정보를 데이터베이스에 저장하고 보통 등록 서버와 같은 물리적 서버에 상주하는 위치 서버(Location Server) 등이 있다.
SIP 프록시 서버는 SIP 전화기나 사용자 에이전트의 요청을 처리한다. 프록시 서버는 발신자 대신 수신자에게 접속을 초기화하며, 200 OK 응답을 받을 때까지 루프 안에 머문다. 프록시 서버는 'Via' 필드에 자신의 IP 어드레스를 두기 때문에, 목적지 클라이언트는 응답을 어디로 보내야할지를 알게 된다. 그러면 프록시는 응답을 다시 발신자에게 보내준다. 'Contact' 필드의 주소는 사용자 에이전트들간의 직접적 통신에 사용된다.
프록시 서버가 'INVITE' 요청을 전달하면, 이것은 즉시 '100'이나 '트라잉(trying)'이라는 상황 메시지를 돌려보낸다. 이것은 호출자에게 자신이 'INVITE' 요청에 의해 작업 중임을 통보해 주는 메시지다. 프록시 서버는 목적지 사용자 에이전트의 위치를 파악하고 여기로 'INVITE'를 보내고 나면 송신자에게 180 '링잉(ringing)'을 보낸다. 수신자는 대답을 하면서 프록시 서버로 '200' 응답을 보내고, 프록시 서버는 원래의 사용자 에이전트로 메시지를 전송한다.
'200' 메시지를 수신한 송신자는 'ACK' 응답을 목적지 클라이언트로 보냄으로써 자신이 '200'을 받았다는 사실을 클라이언트가 알게 해준다. 그 이후의 모든 통신은 클라이언트들간에 일어나며 RTP가 사용자 에이전트들간의 디지털화된 오디오 전송을 책임진다. 호출이 완료되면 'BYE' 메시지가 다른 사용자 에이전트로 전송되며, 여기서는 다른 '200'으로 응답한다.
프록시 서버는 호출이 완료되면 루프에서 벗어나오는 게 기본이지만, 주변에 그대로 있게 구성될 수도 있는데, 그 방법은 프록시 서버가 사용자 에이전트와 통신을 할 때 '컨택트' 필드에 자신의 주소를 삽입시킴으로써 사용자 에이전트로 하여금 발원 사용자 에이전트 대신 프록시 서버로 나머지 응답을 돌려보내도록 사용자 에이전트에게 강요하는 것이다. 호출 동안 프록시가 포함되도록 유지함으로써 호출 기간 동안 추적이 가능한 곳에서 세부사항 보고서를 만들 수 있다. 이것은 또한 보안을 목적으로 종단지점에 대한 네트워크 세부사항들을 숨길 수 있게도 해준다.
리다이렉트(redirect) 서버는 사용자 에이전트나 프록시 서버로부터 요청을 수신한다. 리다이렉트 서버는 자체적으로 접속을 만들지는 못하며, 원래 요청을 재시도 할 곳에 대한 정보로 응답을 해줄 뿐이다. 리다이렉트 서버를 이용하는 방법 은 프록시 서버에 큰 부담을 추가하지 않으면서 필요로 하는 정보를 사용자 에이전트에게 신속하게 줄 수 있는 방법이기도 하다.
프록시 서버를 사용하고 있다면 등록 서버(register server)가 필요하다. 예를 들어, 재택 근무자가 VoIP 전화기를 꽂으면 이 장비는 레지스터 서버에 상대방의 로케이션을 말한다. 호출이 이루어질 때 사용 가능한 SIP 게이트웨이가 있는 한 레지스터 서버로 여러 전화기를 등록할 수 있다.
이상, SIP에 대해 대략적으로 살펴보았다. SIP는 디지털 음성을 전송하지 않으며, 이 작업은 RTP(Real-Time Transport Protocol)의 몫이다. RTP는 SIP가 호출을 수립한 다음 음성을 전송해준다. 그리고 SIP가 다양한 코덱과 기술을 이용해 음성, 텍스트 메시징, 혹은 비디오 세션을 수립할 수 있으려면 그 전에 세션에 있는 장비가 어떤 기능을 지원하는지를 파악해 두어야 한다. 여기서 SDP(Session Description Protocol)가 개입되는데, SIP는 이 SDP를 이용해서 잠재적 대화의 두 종단지점들 사이의 능력을 협상한다.
SDP(Session Description Protocol)는 SIP에서 세션과 관련된 부가정보를 기록하기 위해 사용되는 것으로, 여러 가지 전송 프로토콜(SAP, SIP, RTSP)과의 연동을 목적으로 한다. SDP는 해당 세션의 미디어 스트림 정보를 전달함으로써 세션에 대한 정보(session description)를 수신하는 쪽에서 세션에 참여하도록 한다.
SDP는 세션의 이름과 목적, 세션의 활성화 시간, 세션을 구성하는 미디어, 그러한 미디어를 수신하는 정보, 컨퍼런스에 의해 사용되는 대역폭 정보, 세션을 책임지는 사람에 대한 연락 정보를 포함한다.
SDP 바디(Body)는 세션 정보(session description), 시간 정보(time description), 미디어 정보(media description)의 세 개 필드로 구성되며, 각각의 필드는 아래 [표 1], [표 2], [표 3]과 같은 아이템으로 이루어진다. [표 1]은 세션 정보에 대해서, [표 2]는 시간 정보에 대해서, [표 3]은 미디어 정보에 대해서 설명하고 있다.
세션 정보
v protocol version
o owner/creator and session identifier
s session name
i session information
u URI of description
e email address
p phone number
c connection information - not required if included in all media
b bandwidth information
z time zone adjustments
k encryption key
a zero or more session attribute lines
시간 정보
t time the session is active
r zero or more repeat times
미디어 정보
m media name and transport address
i media title
c connection information - optional if included at session-level
b bandwidth information
k encryption key
a zero or more media attribute lines
d detailed information
도 1은 종래 기술에 따른 SIP 시그널링 과정상에서의 SDP 정보의 한 예를 보여준다.
SIP 헤더에는 'INVITE' 명령과 함께, 이메일 메시지와 유사하게 'To'와 'From' 주소가 포함돼 있다. 이런 주소들은 URI(Uniform Resource Identifier)로 불린다. URI에서 'To' 필드에는 표준 전화번호가 들어갈 수 있다. SIP 헤더에는 또한 '콜 ID(Call-ID)'가 포함되는데 이는 SIP 트랜잭션을 구분해주는 고유의 숫자며, 'Via' 필드는 사용자 에이전트에게 초기 접속을 협상할 때 응답을 보내기 위해 어떤 IP 주소를 사용할지를 말해준다.
도 1의 발신 단말이 전송하는 메시지에 나타난 SIP 헤더에는 'Via' 필드와 'Contact' 필드가 포함되어 있음을 확인할 수 있는데, 도 1의 SIP 헤더로부터 '165.213.100.20'의 IP를 가지는 상대 단말을 초대하는 메시지임을 알 수 있다. 발신 단말이 전송하는 메시지의 SIP 바디에는 'o', 'c', 'm', 'a' 등의 필드가 사용되고 있으며, 이러한 필드가 포함하고 있는 정보는 상기 [표 1], [표 2], [표 3] 등을 통해 살펴본 바와 같이, 두 단말간에 성립되는 세션에 대한 정보와 발신 단말의 미디어에 관한 정보이다.
한편, 도 1의 수신 단말은 발신 단말의 'INVITE' 메시지에 대해 '200 OK' 메시지로 응답하면서, 수신 단말 자신의 미디어 정보를 전송 메시지에 포함시켜 발신 단말에게 알려준다.
상기에서 살펴본 바와 같이, 종래에는 SDP 미디어 정보 필드에 단말에 탑재 된 OS에 따른 사운드 모듈 정보를 기술할 수 있는 아이템이 존재하지 않았다. 결과적으로 상용화된 G.711 A-law/μ-law 이외에 리눅스에서 정의한 S16_LE(signed 16 little endian), S16_BE(signed 16 big endian), U16_LE(unsigned 16 little endian), U16_BE(unsigned 16 big endian)과 같은 포맷의 음성 데이터 처리는 불가한 상태였다. 이러한 이유로, SDP에 단말의 OS 및 사운드 모듈에 대한 정보를 추가할 수 있는 방법에 대한 필요성이 제기되었다.
본 발명은 상기의 문제점을 해결하기 위해, SDP(Session Description Protocol)의 미디어 정보 필드에 새로운 아이템을 추가하여 단말간 음성 통화에 있어 새로운 음성 데이터 포맷을 처리하도록 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법을 제공함을 그 목적으로 한다.
본 발명의 일 측면에 따른 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법은, 제 1 단말이 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 제 1 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고 제 2 단말로 전송하여, 상기 제 1 단말의 OS 및 사운드 모듈에 관한 정보를 제공하는 단계; 와 상기 제 2 단말이 상기 제공된 제 1 단말의 OS 및 사운드 모듈에 관한 정보로부터 제 1 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 제 2 단 말이 지원하는 음성 데이터 포맷과 비교하여, 제 1 단말 및 제 2 단말에서 공통으로 지원 가능한 포맷을 상기 제 2 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함한다.
상기 음성 데이터 처리 포맷 설정 단계는, 상기 제 2 단말이 수신 단말인 경우, 상기 제 1 단말로부터 수신한 초대(INVITE) 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와 상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 발신 단말의 음성 데이터 포맷과 수신 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 발신 단말과 상기 수신 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 한다.
상기 음성 데이터 처리 포맷 설정 단계는, 상기 제 2 단말이 발신 단말인 경우, 상기 제 1 단말로부터 수신한 응답 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와 상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 수신 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 수신 단말의 음성 데이터 포맷과 발신 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 발신 단말과 상기 수신 단말의 음성 데이터 처리 포맷으로 설 정하는 단계를 포함하는 것을 특징으로 한다.
상기 미디어 상세 정보 필드의 포함 여부 확인 결과, 상기 미디어 상세 정보 필드가 포함되어 있지 않은 경우에는 기본 값을 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 하며, 상기 기본 값은 G.711 A-law인 것을 특징으로 한다.
상기 단말에 사용되는 OS는, 리눅스(Linux) 또는 Win CE 중 적어도 하나를 포함하는 것을 특징으로 한다.
상기 단말에 사용되는 사운드 모듈은, maestro3, i810_audio, ali545, 3sc34a0 중 적어도 하나를 포함하는 것을 특징으로 한다.
또한 상기 음성 데이터 포맷은, G.711 A-law/μ-law 또는 S16_LE(signed 16 little endian) 중 적어도 하나를 포함하는 것을 특징으로 한다.
본 발명의 다른 측면에 따른 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법은, 단말이 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 자신이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하는 단계; 와
상기 생성된 SIP 메시지를 상기 단말과 통신하는 상대 단말로 전송하여 상기 단말의 OS 및 사운드 모듈에 관한 정보를 상대 단말로 제공하는 단계를 포함한다.
본 발명의 또 다른 측면에 따른 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법은, 해당 단말이 상대 단말로부터 전송되는 SIP 메시지의 세션 정보 프로토콜을 수신하는 단계; 와 상기 수신한 세션 정보 프로토콜 중 미디어 상세 정보 필드에 포함된 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함한다.
상기 음성 데이터 포맷 파악 단계는, 상기 해당 단말이 수신 단말인 경우, 상대 단말로부터 수신한 초대(INVITE) 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와 상기 확인 결과, 미디어 정보 필드가 포함되어 있는 경우, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 도출하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하고, 상기 미디어 상세 정보 필드를 포함되어 있지 않은 경우에는, 기본 값을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 한다.
상기 음성 데이터 포맷 파악 단계는, 상기 해당 단말이 발신 단말인 경우, 상대 단말로부터 수신한 응답 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와 상기 확인 결과, 미디어 정보 필드가 포함되어 있는 경우, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 도출하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포 맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하고, 상기 미디어 상세 정보 필드를 포함되어 있지 않은 경우에는, 기본 값을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 한다.
본 발명의 또 다른 측면에 따른 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법은, 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고, 상대 단말로 전송하여 단말간에 OS 및 사운드 모듈에 관한 정보를 교환하는 단계; 상대 단말로부터 수신한 SIP 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 및 상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 상대 단말의 음성 데이터 포맷과 해당 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 양 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함한다.
상기 음성 데이터 처리 포맷 설정 단계는, 상기 미디어 상세 정보 필드의 포함 여부 확인 결과, 상기 미디어 상세 정보 필드가 포함되어 있지 않은 경우에는 기본 값을 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 한다.
본 발명의 또 다른 측면에 따른 SIP 프로토콜을 이용하여 미디어 정보를 교 환하는 단말은, 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고, 상기 생성된 SIP 메시지를 상대 단말로 전송하고, 상대 단말로부터 전송되는 SIP 메시지의 세션 정보 프로토콜을 수신하고, 상기 수신한 세션 정보 프로토콜 중 미디어 상세 정보 필드에 포함된 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 자신과 상대 단말에서 공통으로 지원 가능한 포맷을 자신의 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 한다.
본 발명의 또 다른 측면에 따른 SIP를 이용하여 통신하는 네트워크는, 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 자신이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고 제 2 단말로 전송하여, 자신의 OS 및 사운드 모듈에 관한 정보를 제공하는 제 1 단말; 과 상기 제 1 단말로부터 제공된 제 1 단말의 OS 및 사운드 모듈에 관한 정보로부터 제 1 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 자신이 지원하는 음성 데이터 포맷과 비교하여, 제 1 단말과 자신이 공통으로 지원 가능한 포맷을 자신의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 제 2 단말을 포함하는 것을 특징으로 한다.
상기 제 1단말은, 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하도록 하는 SIP 메시지를 생성하는 SIP 메시지 생성부; 와 상기 SIP 메시지 생성부로부터 입력되는 SIP 메시지를 상대 단말로 발신하는 SIP 메시지 발신부를 포함하는 것을 특징으로 한다.
상기 제 2 단말은, 상기 제 1단말로부터 전송되는 SIP 메시지를 수신하는 SIP 메시지 수신부; 와 상기 SIP 메시지 수신부로부터 입력되는 SIP 메시지의 미디어 상세 정보 필드가 포함하는 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 해당 단말이 지원하는 음성 데이터 포맷과 비교하여, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 음성데이터처리 포맷 결정부를 포함한다.
이하, 본 발명에 따른 바람직한 실시예를 도면을 살펴보면서 구체적으로 설명하기로 한다.
본 발명에서는 SDP 미디어 정보 필드에 새로운 아이템을 추가하여 단말간 음성 통화에 있어 단말이 사용할 수 있는 옵션을 확장시키고자 한다. 이를 위해 SDP의 미디어 정보 필드 중 미디어 상세 정보('d') 필드에 리눅스(Linux), Win CE 등의 OS 및 maestro3, i810_audio, ali5455, 3sc24a0 등의 사운드 모듈에 관한 정보를 포함하도록 한다.
여기서, OS가 리눅스이고 사운드 모듈이 maestro3인 경우에는, G.711 A-law 또는 S16_LE(signed 16 little endian)의 음성 데이터 포맷을 지원하고, ii810_audio 사운드 모듈인 경우에는 S16_LE(signed 16 little endian)의 음성 데이터 포맷을, ali5455 사운드 모듈의 경우는 G.711 A-law 또는 S16_LE(signed 16 little endian)의 음성 데이터 포맷을, 그리고 s3c24a0 사운드 모듈의 경우에는 S16_LE(sighed 16 little endian)의 음성 데이터 포맷을 지원한다.
해당 정보를 수신하는 단말에서는 상기 정보를 통해 상용화 된 G.711 A-law/μ-law를 이용할 경우의 SDP 미디어 정보 필드는 아래와 같이 나타나게 된다.
m=audio 16000 RTP/AVP 0 8
a=rtpmap:0 pcmu/8000
a=rtpmap:8 pcma/8000
본 발명에 따라 OS가 리눅스(커널-2.4.20)이고, 사운드 모듈이 G.711 A-law와 S16_LE(signed 16 little endian)을 처리할 수 있는 maestro3인 경우에는, 이미 규격화된 G711 A-law에 대한 정보 이외에 자신의 사운드 모듈이 maestro3임을 SDP 미디어 정보 필드가 아래와 같이 나타나게 된다.
m=audio 16000 RTP/AVP 8
a=rtpmap:8 pcma/8000
d=os:linux-2.4.20 sound:maestro3
또한, OS가 리눅스(커널-2.4.20)이고, 사운드 모듈이 S16_LE(signed 16 little endian)을 처리할 수 있는 s3c24a0인 경우의 SDP 미디어 정보 필드가 아래와 같이 나타난다.
m=audio 16000 RTP/AVP
d=os:linux-2.4.20 sound:s3c24a0
본 발명을 적용하기 위해서는 새롭게 정의된 SDP 미디어 정보 필드의 "d" 아이템을 이용하여 얻게 되는 OS와 사운드 모듈에 관한 정보를 통해 상대 단말이 처리할 수 있는 음성 데이터 포맷에 대한 정보의 추출이 가능해야 한다.
OS가 리눅스인 상황에서, 사운드 모듈 maestro3을 사용해 상대편으로 음성 패킷을 전송한다고 하면, 상대 단말은 G.711 A-law 또는 S16_LE(signed 16 little endian)를 지원 가능해야 한다. 또한, 사운드 모듈이 i810_audio인 경우에는 사대 단말이 S16_LE(signed 16 little endian)를, 사운드 모듈이 ali5455인 경우는 상대 단말이 G.711 A-law 또는 S16_LE(signed 16 little endian)를, 사운드 모듈이 s3c24a0인 경우는 상대 단말이 S16_LE(signed 16 little endian)을 지원 가능해야 한다.
도 2는 본 발명에 따라 서로 다른 사운드 모듈을 사용하는 단말간의 음성 통화가 성립하는 경우, SIP 메시지 교환 흐름의 바람직한 일 실시예를 나타내고 있다.
먼저 다른 단말과 접속을 시도하는 발신 단말(UAC : User Agent Client(사용자 에이전트 클라이언트))이 수신 단말(UAS : User Agent Server(사용자 에이전트 서버)) 쪽으로 'INVITE' 메시지를 전송한다(S201). 'INVITE' 요청 메시지에는 수신측 사용자 에이전트에게 발신 측 사용자 에이전트의 매체 능력(media capabilities)을 알려주는 SDP가 포함되어 있다.
수신 단말로의 초대가 성공하면 초대 메시지를 생성하여 발신한 곳(originator)인 발신 단말(UAC)로 '200'이란 응답 메시지가 전송되어 오는데(S202), 이것은 모든 것이 OK며 세션이 수립되었음을 의미한다. '200' 메시지 또한 지원되는 매체 능력을 나타내는 SDP를 포함한다.
'INVITE' 메시지와 '200' 메시지의 교환을 통해 서로 상대 단말에 대한 OS와 사운드 모듈 정보를 파악한 발신 단말과 수신 단말은 두 단말이 공통으로 지원 가능한 음성 데이터 포맷을 협의하여 미디어 세션을 설정하고 본격적인 통신을 개시한다. 도 2의 경우에는 두 단말이 공통으로 지원 가능한 음성 데이터 포맷으로 'S16_LE'가 설정되었음을 알 수 있다.
두 단말 사이에 교환되는 SIP 메시지를 좀더 자세히 살펴보면 다음과 같다.
도 2의 발신 단말 즉, UAC(User Agent Client)는 165.213.100.10의 IP 주소를 가지고, OS는 '리눅스(커널-2.4.20)', 사용하는 사운드 모듈은 'maestro3'이다. 한편 도 2의 착신 단말, UAS(User Agent Server)는 165.213.100.20의 IP 주소를 가지고, OS로 발신 단말과 동일한 OS인 리눅스(커널-2.4.20)를 사용하고 있지만 사운드 모듈은 's3c24a0'을 사용하고 있다.
전화를 거는 단말인 UAC가 "INVITE" 패킷에 실어 전화를 받는 단말인 UAS로 전송하는 SIP 메시지는 SIP 헤더와 SIP 바디를 포함하고 있다.
SIP 헤더는 "To", "From", "Contact", "Via" 등의 필드를 가지며, "To"는 목적지 사용자 에이전트(User Agent)나 종단 지점의 URI(Uniform Resource Identifier)를 포함하고, "From"은 디스플레이 이름과 요청을 보내는 사용자 에이전트의 URI를 포함한다. "Contact"는 일단 호출이 수립되고 난 후 목적지 사용자 에이전트가 요청 사용자 에이전트로 접속하는 데 필요한 정보를 담고 있으며, "Via" 필드는 사용될 전송 프로토콜과 SIP 버전을 포함하고 송신자가 그 요청에 대한 응답을 받을 수 있게 보장하는 IP 주소 또한 포함한다. 호출시 각 프록시 서버는 "Via" 필드에 자신의 IP 주소를 삽입함으로써 응답이 이 곳을 통해 전송되도록 한다.
도 2의 UAC가 송신하는 SIP 메시지의 헤더에는 "INVITE" 명령어와 "Via" 필드, 그리고 "Contact" 필드가 포함되어 있음을 알 수 있다.
다음으로, 도 2의 UAC가 전송하는 SIP의 바디(Body)를 살펴보면, 세션 구분자에 대한 정보를 나타내는 "o" 필드, 연결 정보를 나타내는 "c" 필드 등의 세션 정보, 그리고 미디어 이름과 전송 주소에 관한 정보를 나타내는 "m" 필드, 미디어 특성 정보를 나타내는 "a" 필드를 포함한다. 이 중 미디어 정보 필드인 "m"과 "a" 필드만을 살펴보면 다음과 같다.
m=audio 16000 RTP/AVP 8
a=rtpmap:8 pcma/8000
상기 메시지는 UAC가 G.711 A-law을 사용해 음성 데이터를 처리할 수 있음을 의미한다.
이러한 기본 정보 외에 도 2에서 추가되는 필드로 "d" 필드가 있는데, 이는 앞서 설명한 바와 같이 본 발명에서 추가하고자하는 OS 정보와 사운드 모듈에 관한 정보를 포함한다. 도 2의 UAC가 전송하는 SDP의 "d" 필드 값은 다음과 같이 나타나고 있다.
d=os:linux-2.4.20 sound:maestro3
상기 메시지는 UAC가 OS로 리눅스-2.4.20, 사운드 모듈로 maestro3을 사용하고 있으며, UAC가 G.711 A-law, S16_LE(signed 16 little endian)을 사용해 음성 데이터를 처리할 수 있음을 의미한다.
한편, UAC의 INVITE 메시지를 수신한 UAS는 200 OK 패킷의 SDP 바디에 UAS에 관한 정보를 실어 UAC로 전송하게 된다. OS가 리눅스(커널-2.4.20)이고, 사운드 모듈이 s3c24a0인 경우이면, S16_LE(signed 16 little endian)을 처리할 수 있고 SDP 미디어 정보 필드에 아래와 같이 기술할 수 있다.
m=audio 16000 RTP/AVP
d=os:linux-2.4.20 sound:s3c24a0
전화를 거는 단말인 UAC는 SDP 미디어 정보 필드의 분석을 통해 상대 단말(여기서는 UAS)의 OS 및 사운드 모듈에 대한 정보를 확인함으로써 공통으로 지원하는 포맷으로 S16_LE(signed 16 little endian)을 선택하게 되고, 전화를 받는 단말 역시 SDP 미디어 정보 필드의 분석을 통해 상대 단말(UAC)의 OS 및 사운드 모듈 정보를 확인함으로써 공통으로 지원하는 음성 데이터 포맷으로 S16_LE(signed 16 little endian)을 선택하게 된다.
도 3은 본 발명에 따른 발신 단말에서의 상대 단말에 대한 SDP 바디 분석 절차 흐름을 나타내고 있다.
상대 단말(수신 단말)로부터 SIP 메시지를 수신한 발신 단말(UAC)은 SIP 메시지가 포함하는 SDP 중 미디어 정보 필드가 존재하는지 확인한다(S301). 발신 단말이 수신 단말로부터 수신하는 SIP 메시지는 '200 OK' 메시지가 될 것이다. 수신한 SIP 메시지 중 SDP 부분에 미디어 정보 필드가 포함되어 있지 않은 경우에는 현재 무선 단말의 음성 코딩 방법으로 표준화되어 있는 기본 값인 G.711 A-law를 설정하여 음성 데이터를 처리하면 된다(S302).
수신한 SDP에 미디어 정보 필드가 포함되어 있는 경우에는, 미디어 정보 필드 중 미디어 상세 정보("d") 아이템이 포함되어 있는지 다시 체크한다(S303). 미디어 상세 정보 아이템이 포함되어 있는 경우에는, 본 발명에 따른 미디어 상세 정보 아이템이 상대 단말의 OS와 사운드 모듈에 관한 정보를 포함하고 있음을 의미한다. 이 경우에는 상대 단말의 OS 및 사운드 모듈에 관한 정보를 저장하고, 저장된 정보로부터 상대 단말이 처리 가능한 음성 데이터 포맷을 확인한다(S304).
또한 발신 단말(UAC) 자신의 OS 및 사운드 모듈에 관한 정보로부터, 발신 단말이 처리 가능한 음성 데이터 포맷을 파악하고, 상기 상대 단말이 처리 가능한 음성 데이터 포맷과 비교하여 공통으로 지원하는 음성 데이터 포맷을 선택한다(S305).
도 2에서 가정한 바와 같이, 상대 단말(UAS)의 OS가 리눅스이고 사운드 모듈이 s3c24a0인 경우라면, 상대 단말(UAC)이 지원 가능한 음성 데이터 포맷은 S16_LE(signed 16 little endian)이다. 그리고, 발신 단말(UAC)의 OS가 리눅스, 사운드 모듈은 maestro3이라고 한다면, 발신 단말은 G.711 A-law 또는 S16_LE 포맷의 음성 데이터를 처리할 수 있다.
그렇다면, 두 단말이 공통으로 지원 가능한 음성 데이터의 포맷은 S16_LE이므로, 발신 단말은 상대 단말로 전송하는 음성 데이터의 포맷을 S16_LE로 설정하여 음성 데이터를 처리하면 된다.
도 4는 본 발명에 따른 수신 단말에서의 상대 단말에 대한 SDP 바디 분석 절차 흐름의 바람직한 일 실시예를 나타내고 있다.
착신 단말에서의 상대 단말에 대한 SDP 바디 분석 과정 또한 도 3의 발신 단말에서의 경우와 다를 바 없으며, 기본적으로 동일한 절차를 거치게 된다. 도 4의 흐름도에서는 도 3의 일반적인 경우보다 좀더 구체적인 예를 들어 설명하는 것뿐이다.
상대 단말(UAC)로부터 SIP 'INVITE' 메시지를 수신한 수신 단말(UAS)은 SIP 메시지가 포함하는 SDP 중 미디어 정보 필드가 존재하는지 확인한다(S401). 수신한 SDP에 미디어 정보 필드가 포함되어 있지 않은 경우에는 현재 무선 단말의 음성 코딩 방법으로 표준화되어 있는 기본 값인 G.711 A-law를 설정하여 음성 데이터를 처리한다(S402).
수신한 SDP에 미디어 정보 필드가 포함되어 있는 경우에는, 미디어 정보 필드 중 미디어 상세 정보("d") 아이템이 포함되어 있는지 다시 체크한다(S403). 미디어 상세 정보 아이템이 포함되어 있는 경우에는, 상대 단말(UAC)의 OS 및 사운드 모듈에 관한 정보를 저장하고, 저장된 정보로부터 상대 단말이 처리 가능한 음성 데이터 포맷을 확인한다(S404). 도 4의 실시예에서는 상대 단말(UAC)의 OS가 리눅스이고, 사운드 모듈은 maestro3인 경우를 가정하고 있으므로, 처리 가능한 음성 데이터 포맷이 G.711 A-law 또는 S16_LE이다.
상대 단말에 대한 음성 데이터 포맷을 파악하였으므로 상대 단말의 오디오 데이터 타입 정보를 저장하고, 수신 단말(UAS)가 처리 가능한 음성 데이터 포맷을 파악하여 비교한 후, 두 단말에서 공통으로 처리 가능한 포맷을 선택한다(S405). 도 2에서 사용한 가정과 같이 수신 단말(UAS)이 OS로 리눅스(2.4.20)를 사용하고, 사운드 모듈로 s3c24a0을 사용한다고 보면, 수신 단말(UAS)이 처리 가능한 음성 포맷은 S16_LE이다. 이제, 두 단말 각각에서 처리 가능한 음성 데이터 포맷을 확인하였으므로, 두 단말에서 공통으로 처리 가능한 포맷을 선택한다. 이 경우는 공통으로 S16_LE에 대한 처리가 가능하므로, 두 단말간에 성립되는 미디어 세션에서 사용하는 음성 데이터 포맷을 S16_LE으로 공통 설정한다.
도 5는 본 발명에 따른 SIP 프로토콜을 이용하여 미디어 정보를 교환하는 단말의 논리적인 블록 구성을 나타낸다.
본 발명에 따른 단말은 크게 SIP 메시지 생성부(510), SIP 메시지 발신부 (520), SIP 메시지 수신부(530) 및 음성데이터처리 포맷 결정부(540)로 구성된다.
SIP 메시지 생성부(510)에서는, 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하도록 하는 SIP 메시지를 생성한다. 여기서 SIP 메시지는 단말이 사용자 에이전트 클라이언트인지 사용자 에이전트 서버인지에 따라 INVITE 메시지가 될 수도, 200 OK 메시지가 될 수도 있다.
SIP 메시지 생성부(510)에서 생성된 SIP 메시지는 SIP 메시지 발신부(520)를 통해 단말과 통신하는 상대 단말로 발신된다. 단말의 SIP 메시지 수신부(530)에서는 상대 단말로부터 전송되는 SIP 메시지를 수신하여, 음성데이터처리 포맷 결정부(540)로 제공한다.
음성데이터처리 포맷 결정부(540)에서는 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 해당 단말이 지원하는 음성 데이터 포맷과 비교하여, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 역할을 한다.
단말은 먼저 SIP 메시지를 발신할 수도 있지만 수신할 수도 있기 때문에, SIP 발신부(520)와 SIP 수신부(530)를 모두 포함해야 한다. 단말이 먼저 SIP 메시지를 발신하는 경우에는 SIP 메시지 생성부(510)와 SIP 메시지 발신부(520)가 주로 기능할 것이고, 다른 단말로부터 SIP 메시지를 수신하고 분석하는 경우에는 SIP 메시지 수신부(530)와 음성데이터처리 포맷 결정부(540)가 주요 역할을 담당한다.
본 발명은, SIP를 이용하여 통신하는 사용자 에이전트간의 미디어 정보 교환시 기존에 상용화된 G.711 A-law/μ-law 이외의 다른 음성 포맷도 지원할 수 있는 방법을 마련함으로써, S16_LE, S16_BE, U16_LE, U16_BE와 같은 형식으로 음성 데이터를 처리하는 사용자 에이전트도 다른 사용자 에이전트와 음성 통신을 가능하게 하는 이점을 가진다.

Claims (19)

  1. SIP(Session Initiation Protocol)를 사용하여 통신하는 단말간의 미디어 정보 교환 방법에 있어서,
    제 1 단말이 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 제 1 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고 제 2 단말로 전송하여, 상기 제 1 단말의 OS 및 사운드 모듈에 관한 정보를 제공하는 단계; 와
    상기 제 2 단말이 상기 제공된 제 1 단말의 OS 및 사운드 모듈에 관한 정보로부터 제 1 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 제 2 단말이 지원하는 음성 데이터 포맷과 비교하여, 제 1 단말 및 제 2 단말에서 공통으로 지원 가능한 포맷을 상기 제 2 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  2. 제 1항에 있어서,
    상기 음성 데이터 처리 포맷 설정 단계는,
    상기 제 2 단말이 수신 단말인 경우,
    상기 제 1 단말로부터 수신한 초대(INVITE) 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와
    상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 발신 단말의 음성 데이터 포맷과 수신 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 발신 단말과 상기 수신 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  3. 제 1항에 있어서,
    상기 음성 데이터 처리 포맷 설정 단계는,
    상기 제 2 단말이 발신 단말인 경우,
    상기 제 1 단말로부터 수신한 응답 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와
    상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 수신 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 수신 단말의 음성 데이터 포맷과 발신 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 발신 단말과 상기 수신 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  4. 제 2항 또는 제 3항에 있어서,
    상기 미디어 상세 정보 필드의 포함 여부 확인 결과,
    상기 미디어 상세 정보 필드가 포함되어 있지 않은 경우에는 기본 값을 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  5. 제 4항에 있어서,
    상기 기본 값은 G.711 A-law인 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  6. 제 1항에 있어서,
    상기 단말에 사용되는 OS는,
    리눅스(Linux) 또는 Win CE 중 적어도 하나를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  7. 제 1항에 있어서,
    상기 단말에 사용되는 사운드 모듈은,
    maestro3, i810_audio, ali545, 3sc34a0 중 적어도 하나를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  8. 제 1항에 있어서,
    상기 음성 데이터 포맷은,
    G.711 A-law/μ-law 또는 S16_LE(signed 16 little endian) 중 적어도 하나를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  9. SIP(Session Initiation Protocol)를 사용하여 통신하는 단말간의 미디어 정보 교환 방법에 있어서,
    단말이 세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 자신이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하는 단계; 와
    상기 생성된 SIP 메시지를 상기 단말과 통신하는 상대 단말로 전송하여 상기 단말의 OS 및 사운드 모듈에 관한 정보를 상대 단말로 제공하는 단계를 포함하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  10. SIP(Session Initiation Protocol)를 사용하여 통신하는 단말간의 미디어 정보 교환 방법에 있어서,
    해당 단말이 상대 단말로부터 전송되는 SIP 메시지의 세션 정보 프로토콜을 수신하는 단계; 와
    상기 수신한 세션 정보 프로토콜 중 미디어 상세 정보 필드에 포함된 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  11. 제 10항에 있어서,
    상기 음성 데이터 포맷 파악 단계는,
    상기 해당 단말이 수신 단말인 경우,
    상대 단말로부터 수신한 초대(INVITE) 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와
    상기 확인 결과, 미디어 정보 필드가 포함되어 있는 경우, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 도출하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하고,
    상기 미디어 상세 정보 필드를 포함되어 있지 않은 경우에는, 기본 값을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  12. 제 10항에 있어서,
    상기 음성 데이터 포맷 파악 단계는,
    상기 해당 단말이 발신 단말인 경우,
    상대 단말로부터 수신한 응답 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 와
    상기 확인 결과, 미디어 정보 필드가 포함되어 있는 경우, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상기 발신 단말이 지원 가능한 음성 데이터 포맷을 도출하고, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하고,
    상기 미디어 상세 정보 필드를 포함되어 있지 않은 경우에는, 기본 값을 해 당 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  13. 제 11항 또는 제 12항에 있어서,
    상기 기본 값은 G.711 A-law인 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  14. SIP(Session Initiation Protocol)를 사용하여 통신하는 단말간의 미디어 정보 교환 방법에 있어서,
    세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고, 상대 단말로 전송하여 단말간에 OS 및 사운드 모듈에 관한 정보를 교환하는 단계;
    상대 단말로부터 수신한 SIP 메시지가 포함하는 세션 정보 프로토콜(SDP)에 미디어 정보 필드가 포함되어 있는지 확인하는 단계; 및
    상기 확인 결과, 미디어 정보 필드를 포함하고 있는 경우에는, 상기 미디어 정보 필드 중 미디어 상세 정보 아이템이 포함하는 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 상기 파악된 상대 단말의 음성 데이터 포맷과 해당 단말이 지원하는 음성 데이터 포맷을 비교하여, 상기 양 단말에 공통되는 포맷을 상기 양 단말의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  15. 제 11항에 있어서,
    상기 음성 데이터 처리 포맷 설정 단계는,
    상기 미디어 상세 정보 필드의 포함 여부 확인 결과,
    상기 미디어 상세 정보 필드가 포함되어 있지 않은 경우에는 기본 값을 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 하는 SIP 프로토콜을 이용한 단말간의 미디어 정보 교환 방법.
  16. SIP(Session Initiation Protocol)를 이용하여 상대 단말과 미디어 정보를 교환하는 단말에 있어서,
    세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고, 상기 생성된 SIP 메시지를 상대 단말로 전송하고,
    상대 단말로부터 전송되는 SIP 메시지의 세션 정보 프로토콜을 수신하고, 상기 수신한 세션 정보 프로토콜 중 미디어 상세 정보 필드에 포함된 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 자신과 상대 단말에서 공통으로 지원 가능한 포맷을 자신의 음성 데이터 처리 포맷으로 설정하는 것을 특징으로 하는 SIP 프로토콜을 이용하여 미디어 정보를 교환하는 단말.
  17. 구성요소 간 SIP(Session Initiation Protocol)를 이용하여 통신하는 네트워크에 있어서,
    세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 자신이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하는 SIP 메시지를 생성하고 제 2 단말로 전송하여, 자신의 OS 및 사운드 모듈에 관한 정보를 제공하는 제 1 단말; 과
    상기 제 1 단말로부터 제공된 제 1 단말의 OS 및 사운드 모듈에 관한 정보로부터 제 1 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 자신이 지원하는 음성 데이터 포맷과 비교하여, 제 1 단말과 자신이 공통으로 지원 가능한 포맷을 자신의 음성 데이터 처리 포맷으로 설정하는 단계를 포함하는 제 2 단말을 포함하는 것을 특징으로 하는 SIP를 이용하여 통신하는 네트워크.
  18. 제 17항에 있어서,
    상기 제 1단말은,
    세션 정보 프로토콜(SDP)의 미디어 상세 정보 필드에 단말이 사용하는 OS 및 사운드 모듈에 관한 정보를 포함하도록 하는 SIP 메시지를 생성하는 SIP 메시지 생성부; 와
    상기 SIP 메시지 생성부로부터 입력되는 SIP 메시지를 상대 단말로 발신하는 SIP 메시지 발신부를 포함하는 것을 특징으로 하는 SIP를 이용하여 통신하는 네트워크.
  19. 제 17항에 있어서,
    상기 제 2 단말은,
    상기 제 1단말로부터 전송되는 SIP 메시지를 수신하는 SIP 메시지 수신부; 와
    상기 SIP 메시지 수신부로부터 입력되는 SIP 메시지의 미디어 상세 정보 필드가 포함하는 상대 단말의 OS 및 사운드 모듈에 관한 정보로부터 상대 단말이 지원 가능한 음성 데이터 포맷을 파악하고, 해당 단말이 지원하는 음성 데이터 포맷과 비교하여, 해당 단말과 상대 단말에서 공통으로 지원 가능한 포맷을 해당 단말의 음성 데이터 처리 포맷으로 설정하는 음성데이터처리 포맷 결정부를 포함하는 것을 특징으로 하는 SIP를 이용하여 통신하는 네트워크.
KR1020050005143A 2005-01-19 2005-01-19 Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법 KR100666945B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020050005143A KR100666945B1 (ko) 2005-01-19 2005-01-19 Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법
US11/315,185 US8009664B2 (en) 2005-01-19 2005-12-23 Method for exchanging media description information between user agents using session initiation protocol

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020050005143A KR100666945B1 (ko) 2005-01-19 2005-01-19 Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법

Publications (2)

Publication Number Publication Date
KR20060084318A true KR20060084318A (ko) 2006-07-24
KR100666945B1 KR100666945B1 (ko) 2007-01-10

Family

ID=36683791

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020050005143A KR100666945B1 (ko) 2005-01-19 2005-01-19 Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법

Country Status (2)

Country Link
US (1) US8009664B2 (ko)
KR (1) KR100666945B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4343626B2 (ja) * 2003-09-02 2009-10-14 キヤノン株式会社 画像通信制御方法、画像通信制御プログラム、および画像通信装置
JP2011055247A (ja) * 2009-09-02 2011-03-17 Nec Corp Sip電話機、同機器におけるファイル転送システム、ファイル転送方法、ファイル転送プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2379159C (en) 1999-07-12 2013-07-02 Telefonaktiebolaget Lm Ericsson Method and system for exchanging information between multimedia network nodes
US7257661B2 (en) * 2001-09-21 2007-08-14 Nxp B.V. Scalable home control platform and architecture
FI20011962A0 (fi) * 2001-10-09 2001-10-09 Nokia Corp Koodinmuunninjärjestely
US7237238B2 (en) * 2002-03-01 2007-06-26 Dell Products L.P. Method and apparatus for automated operating systems upgrade
US7480376B2 (en) * 2002-09-20 2009-01-20 Avaya Inc. Apparatus and method for providing call status information
US7443879B2 (en) * 2002-11-14 2008-10-28 Lucent Technologies Inc. Communication between user agents through employment of codec format unsupported by one of the user agents
US6904140B2 (en) 2002-12-17 2005-06-07 Nokia Corporation Dynamic user state dependent processing
US20040139198A1 (en) * 2003-01-15 2004-07-15 Jose Costa-Requena Method and apparatus for manipulating data with session initiation protocol
US20040185774A1 (en) * 2003-03-21 2004-09-23 Scott Bryan A System, device, and method for receving satellite radio on a handheld computing device
KR100551701B1 (ko) * 2003-07-21 2006-02-13 한국전자통신연구원 VoIP 서비스를 위한 SIP 사용자 에이전트
US20050060411A1 (en) * 2003-09-16 2005-03-17 Stephane Coulombe System and method for adaptation of peer-to-peer multimedia sessions
US7489707B2 (en) * 2003-10-16 2009-02-10 National University Of Singapore System and method for a dynamic protocol framework
KR100565429B1 (ko) * 2003-11-27 2006-03-30 한국전자통신연구원 컬러 필터 어레이에서 손실된 컬러값 복원 방법 및 장치
KR100969458B1 (ko) * 2003-12-29 2010-07-14 주식회사 케이티 세션 설정 프로토콜을 이용한 멀티미디어 링백 서비스시스템 및 그 방법
US20050195860A1 (en) * 2004-03-05 2005-09-08 General Instrument Corporation Combining data streams conforming to mutually exclusive signaling protocols into a single IP telephony session
EP1736015B1 (en) * 2004-04-16 2013-09-04 BlackBerry Limited System and method for providing early ringback by a home legacy mobile station domain network
KR100723673B1 (ko) * 2004-12-15 2007-05-30 에스케이 텔레콤주식회사 Ptt 서비스에서 멀티미디어를 이용한 발언자 표시 방법및 시스템

Also Published As

Publication number Publication date
US8009664B2 (en) 2011-08-30
KR100666945B1 (ko) 2007-01-10
US20060159072A1 (en) 2006-07-20

Similar Documents

Publication Publication Date Title
US11057365B2 (en) Method and system for creating a virtual SIP user agent by use of a webRTC enabled web browser
US6738390B1 (en) SIP-H.323 gateway implementation to integrate SIP agents into the H.323 system
US7469299B2 (en) Bridging user agent and a proxy server for supporting network services
US7898990B2 (en) Method, system and gateway device for enabling interworking between IP and CS networks
US7167468B2 (en) Internet protocol telephony voice/video message deposit and retrieval
US6992974B1 (en) System and method for providing fault tolerance in a network telephony system
US7301913B2 (en) Transcoding arrangement in a session initiation
US6876633B2 (en) Apparatus and method for computer telephone integration in packet switched telephone networks
US20060229093A1 (en) Push to talk over cellular (half-duplex) to full-duplex voice conferencing
KR100810330B1 (ko) 통신 시스템에서 서비스 제공 시스템 및 방법
US7778195B2 (en) Network, server apparatus, IP corresponding terminal device, and speech-quality control method used in the same
US20050047423A1 (en) Protocol interworking framework
US7440440B1 (en) Method and system for device-based call park and pick-up
KR100514196B1 (ko) 네트웍 어드레스 변환 및 세션 관리 시스템 및 그 방법
US7620167B2 (en) Apparatus to override the redirect or reject feature at an SIP end point
KR100666945B1 (ko) Sip 프로토콜을 이용한 단말간의 미디어 정보 교환 방법
CN101594623B (zh) 一种互联网协议语音呼叫的监听方法及设备
Cisco Session Initiation Protocol (SIP) for VoIP
US20080137647A1 (en) VoIP terminal and method for providing multi-call service
KR100785792B1 (ko) 접속 설정 프로토콜을 사용하는 인터넷 전화 시스템에서의서비스 제공 방법 및 그 시스템
KR100475187B1 (ko) 접속 설정 프로토콜 방식을 지원하는 키폰 시스템 및 그호 설정 방법
JP4136798B2 (ja) 音声ガイダンス機能付き中継装置
KR101467388B1 (ko) 호 설정 메시지 송신 시스템 및 방법
Bhat Voice Over IP–The SIP Way
Khan Application Layer Signaling Protocol for Instant Messaging

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

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20131230

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20141223

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20151229

Year of fee payment: 10