Liberty에서 SIP(Session Initiation Protocol) 관리
server.xml 파일의 요소를 추가하고 구성하여 Liberty에서 SIP를 구성할 수 있습니다.
시작하기 전에
Liberty 서버에 sipServlet-1.1 기능을 설치하십시오. 추가 정보는 Liberty 기능 추가 및 제거의 내용을 참조하십시오.
이 태스크 정보
이 태스크는 server.xml 파일에서 Liberty에 대한 SIP를 수동으로 구성하는 방법을 설명합니다. 그렇지 않으면 개발자 도구를 사용하여 SIP를 구성할 수 있습니다. 이 도구를 사용하면 server.xml 파일에서 모든 구성이 자동으로 사용됩니다. 자세한 정보는 WebSphere® Developer Tools > 개발 > SIP 애플리케이션 개발을 참조하십시오.
Liberty에서 SIP를 구성하는 데 사용할 수 있는 요소 및 속성에 대한 정보는 Sip 서블릿에 대한 문서를 참조하십시오.
프로시저
- server.xml 파일에서
sipContainer 요소를 추가하여 SIP 컨테이너를 구성하십시오.
속성 및 해당 설명의 전체 목록은 sipContainer 요소를 참조하십시오.
<sipContainer invalidateSessionOnShutdown="true" msgArrivalTimeAttr="true" markInternalResponse="true"></sipContainer>
- sipStack 요소를 추가하여 SIP 스택을 구성하십시오. 자동 응답, 메시지 정보, 연결 재사용과 같은 동작을
구성할 수 있습니다.
속성 및 해당 설명의 전체 목록은 sipStack 요소를 참조하십시오.
SIP 타이머는 세션 만기에 대한 메커니즘을 제공합니다. sipStack 요소에 타이머 속성을 지정하여 RFC 3261에 지정된 기본값과 다른 SIP 타이머의 값을 설정할 수 있습니다.<sipStack hideMessageBody="true" hideMessageReqUri="true" auto100OnInvite="false" auto482OnMergedRequests="true" forceConnectionReuse="false" acceptNonUtf8Bytes="true" pathMtu="1600" compactHeaders="API"> <commaSeparatedHeaders>Comma separated headers</commaSeparatedHeaders> <hideMessageHeaders>iup</hideMessageHeaders> <sipQuotedParameters>Require</sipQuotedParameters> </sipStack>
<sipStack timerT1="500" timerT2="4000" timerT4="5000" timerA="500" timerB="32000" timerD="32000" timerE="500" timerF="32000" timerG="500" timerH="32000" timerI="5000" timerJ="32000" timerK="5000"></sipStack>
- sipApplicationRouter 요소를 추가하여 SIP 애플리케이션 라우터를 구성하십시오. SIP 애플리케이션 라우터를 구성할 때 기본 애플리케이션
라우터(DAR)를 사용하거나 사용자 정의 애플리케이션 라우터를
작성할 수 있습니다. DAR 컴포넌트는 Java™
특성 파일로 모델링된 구성 텍스트 파일을 사용하여 애플리케이션
라우터가 SIP 요청을 애플리케이션으로 보내는 순서를
정의합니다.
애플리케이션 라우터를 구성하지 않고 애플리케이션을 수동으로 배치하는 경우 애플리케이션이 배치된 순서로 트리거됩니다. server.xml 파일을 통해 여러 애플리케이션을 배치하면 애플리케이션 순서를 정의할 수 없습니다.
- DAR 구성 파일과 함께 DAR 컴포넌트를 사용하려면
sipApplicationRouter 요소의 sipDarConfiguration 속성에서
DAR .properties 파일의 위치를 지정하십시오.
<sipApplicationRouter sipDarConfiguration="pathToDar.properties"></sipApplicationRouter>
- 사용자 정의 애플리케이션 라우터를 사용하려면 server.xml
파일에서 라우터를 구성하십시오.
- bells-1.0 기능을 server.xml 파일에 추가하십시오.
자세한 정보는 bells-1.0의 문서를 참조하십시오.<featureManager> <feature>bells-1.0</feature> </featureManager>
- server.xml 파일에서 사용자 정의 애플리케이션 라우터 JAR 파일을
공유 라이브러리로 추가하고 javax.servlet.sip.ar.spi.SipApplicationRouterProvider
서비스의 BELL 구성을 추가하십시오.
공유 라이브러리에 대한 자세한 정보는 공유 라이브러리의 내용을 참조하십시오.<library id="carLib" name="carLib" description="Custom App Router Library"> <file name="pathToJar.jar"></file> </library> <bell libraryRef="carLib"> <service>javax.servlet.sip.ar.spi.SipApplicationRouterProvider</service> </bell>
- sipApplicationRouter 요소에서 carProvider 속성을
사용자 정의 애플리케이션 라우터 제공자 클래스의 전체 이름으로 설정하십시오.
<sipApplicationRouter carProvider="example.example"></sipApplicationRouter>
- bells-1.0 기능을 server.xml 파일에 추가하십시오.
<sipApplicationRouter carProvider="example.example" sipNoRouteErrorCode="403"></sipApplicationRouter>
속성 및 해당 설명의 전체 목록은 sipApplicationRouter 요소를 참조하십시오.
- DAR 구성 파일과 함께 DAR 컴포넌트를 사용하려면
sipApplicationRouter 요소의 sipDarConfiguration 속성에서
DAR .properties 파일의 위치를 지정하십시오.
- sipEndpoint 요소를 추가하여 SIP 엔드포인트를 구성하십시오. 사용자 정의 포트, 호스트, 바인딩 동작을 구성할 수 있습니다.
구성하는 SIP 엔드포인트는 기본 엔드포인트를 대체합니다.
속성 및 해당 설명의 전체 목록은 sipEndpoint 요소를 참조하십시오.
<sipEndpoint host="localhost" sipTCPPort="5060" bindRetries="60" bindRetriesDelay="5000"></sipEndpoint>
참고: TLS(Transport Layer Security)는 기본적으로 사용할 수 없습니다. SIP 컨테이너에 대해 TLS를 사용하려면 Liberty 서버의 SSL 통신을 사용하고 구성하십시오. 추가 정보는 Liberty에서 SSL 통신 사용의 내용을 참조하십시오. - sipTasksDispatcher 요소를 추가하여 SIP 성능을 구성하십시오. 동시에 실행할 수 있는 SIP 태스크의 수를 구성할 수 있습니다.
SIP 애플리케이션 태스크는 단일 스레드의 SIP 컨테이너에서 순차적으로 실행되는
일련의 애플리케이션 코드입니다. 예를 들어, SipServlet.doInvite()
메소드 또는 SipTimerListener.timeout() 메소드의 애플리케이션 구현은
이러한 메소드에서 호출된 애플리케이션 코드가 컨테이너에서 제공하는 관리 Liberty 스레드에서 순차적으로 실행되는 경우에
각각 단일 태스크로 간주됩니다.
동시 SIP 태스크의 실제 최대 수는 관리 Liberty 스레드의 최대 수에 의해 제한됩니다.
속성 및 해당 설명의 전체 목록은 sipTasksDispatcher 요소를 참조하십시오.
<sipContainer> <sipTasksDispatcher concurrentContainerTasks="15"/> </sipContainer>
- DNS(Domain Name System) NAPTR(Naming Authority Pointer)
레코드를 사용하여 SIP URI를 분석하려면 도메인 분석기를
구성하십시오.
- domainResolver 요소를 추가하고 구성하십시오. 이 요소를 구성하면 SIP URI가 DNS를 통해 접속할
다음 홉의 IP 주소, 포트, 전송 프로토콜로
분석됩니다.
참고: SIP는 기본 클라이언트가 실패하는 경우 서버에서 백업 클라이언트로 응답을 전송하는 DNS 프로시저 사용을 지원하지 않습니다.
속성 및 해당 설명의 전체 목록은 domainResolver 요소를 참조하십시오.
<domainResolver dnsAutoResolve="true"> <dnsServers>dns.server.com</dnsServers> </domainResolver>
- SIP 컨테이너와 함께 작동하도록 DNS 서버를 구성하십시오. 다음 예는 DNS 서버에서 RFC 3263 지원을 구성하기 위한 BIND db 파일입니다.
; Copyright (C) 2004 Internet Systems Consortium, Inc. ("ISC") ; Copyright (C) 2001 Internet Software Consortium. ; ; Permission to use, copy, modify, and distribute this software for any ; purpose with or without fee is hereby granted, provided that the above ; copyright notice and this permission notice appear in all copies. ; ; THE SOFTWARE IS PROVIDED "AS IS" AND ISC DISCLAIMS ALL WARRANTIES WITH ; REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY ; AND FITNESS. IN NO EVENT SHALL ISC BE LIABLE FOR ANY SPECIAL, DIRECT, ; INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM ; LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE ; OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR ; PERFORMANCE OF THIS SOFTWARE. ; $Id: include.db,v 1.2.206.1 2004/03/06 10:22:13 marka Exp $ ; Test $INCLUDE current domain name and origin semantics example.com. 43200 IN SOA ns.example.com. email.example.com. ( 2003032001 10800 3600 604800 86400 ) ; example.com. 43200 IN NS ns.example.com. ; ns.example.com. 43200 IN A 10.0.0.20 sipserver1.example.com. 43200 IN A 10.0.0.21 sipserver2.example.com. 43200 IN A 10.0.0.22 sipserver3.example.com. 43200 IN A 10.0.0.23 ; router.example.com. 43200 IN CNAME sipserver3 ; sipserver1.example.com. 43200 IN AAAA fec0:0:0:0:0:0:0:abcd sipserver2.example.com. 43200 IN AAAA fec0:0:0:0:0:0:0:abba ; _sip._udp.example.com. 43200 IN SRV 2 0 5060 sipserver1.example.com. _sip._udp.example.com. 43200 IN SRV 2 0 5060 sipserver2.example.com. _sip._tcp.example.com. 43200 IN SRV 1 4 5060 sipserver1.example.com. _sip._tcp.example.com. 43200 IN SRV 1 2 5060 sipserver2.example.com. _sips._tcp.example.com. 43200 IN SRV 0 1 5061 sipserver1.example.com. _sips._tcp.example.com. 43200 IN SRV 0 0 5061 sipserver2.example.com. ; example.com. 43200 IN NAPTR 0 0 "s" "SIPS+D2T" "" _sips._tcp.example.com. example.com. 43200 IN NAPTR 1 0 "s" "SIP+D2T" "" _sip._tcp.example.com. example.com. 43200 IN NAPTR 2 0 "s" "SIP+D2U" "" _sip._udp.example.com.
- domainResolver 요소를 추가하고 구성하십시오. 이 요소를 구성하면 SIP URI가 DNS를 통해 접속할
다음 홉의 IP 주소, 포트, 전송 프로토콜로
분석됩니다.

파일 이름: twlp_sip_adm.html