■ SIP CANCLE
● 정상적인 세션이 진행 중이면 BYE 사용
● INVITE 요청에 대한 200 OK를 수신하기 전에 수화기를 내려놓을 때 CANCEL Method 이용 (기존의 요청 취소)
● 반드시 Reason Header를 포함 (Reason Header는 취소의 이유를 명기)
● CSeq Header로 200 OK 응답이 INVITE에 대한 것인지 CANCEL에 대한 것인지 확인 가능
● 응답을 받지 못한 요청에 대한 처리
- CANCEL의 트랜잭션은 요청과 응답으로 정상 처리가 되었지만, INVITE의 트랜잭션은 아무런 응답을 받지 못함.
- INVITE 요청에 대한 200 OK 가 아닌 다른 응답이 전송
- 밥의 전화기는 CANCEL 요청에 의해 취소된 INVITE 요청에 대한 응답으로 '487 Request Terminated'를 발행
● 200 OK 발행 후 CANCLE 을 수신하는 문제
- 절차적 당위성 획득을 목적으로 기존의 호설립과 종료 절차 사용
● Call Forking
- 사용자는 하나의 전화번호나 URI주소를 공유하는 다수의 전화기나 단말을 보유
- 하나의 AoR에 다수의 Contact Address 존재
- 하나의 전화번호로 여러 개의 전화기로 전파하여 Ringing
- 그림에서의 동작
- 밥에게 통화를 요청하는 INVITE를 수신한 biliox.com의 SIP Proxy는 AoR과 바인딩된 모든 단말에 INVITE를 송신
- 밥은 3 개의 전화기 중에 한 대로 200 OK 응답을 회신
- SIP Proxy 서버는 나머지 두 대의 전화기에 INVITE 요청을 CANCEL 요청으로 취소하여 벨이 울리는 것을 중단
■ SIP OPTION
● SIP Component(다른 UA, SIP Proxy server)의 Capability 확인
● Capability
- 지원 가능한 Method의 종료
- 지원 가능한 콘텐츠의 타입
- 지원 가능한 확장 헤더의 종류
- 지원 가능한 코덱 등
● Capability를 확인하기 위해 OPTIONS을 발행
● OPTIONS 요청에 대한 응답으로 200 OK를 전송
● PTIONS 요청은 긴급하거나 중요한 요청이 아니므로 UA나 SIP Proxy 서버가 바쁘다면 '486 Busy Here'로 응답해도 무방
● SIP OPTIONS 메시지의 Header
- Contact Header
- 연결 가능한 단말들의 Contact address 리스트
- Allow Header
- 지원 가능한 Method 리스트
- Accept-language Header
- 지원 가능한 언어 리스트
- Accept Header
- 지원 가능한 메시지 바디의 타입 리스트
- Accept Header가 없을 경우 “application/sdp”로 가정
- 실제로 SIP 메시지 바디 타입은 Content-Type Header로 표시
● OPTION PING
- OPTIONS Method를 이용하여 SIP Trunk 구간에서 상대방의 상태를 확인할 수 있는 Keep Alive 메커니즘
- SIP 프로토콜은 REGISTER Method를 이용하여 UA와 SIP Proxy 서버 간의 Keep Alive 확인 가능
- SIP Proxy 서버의 Voice Gateway를 연결하는 SIP Trunk 구간은 등록하는 과정이 없기 때문에 SIP INVITE 메시지를 전송해서 응답을 받기 전에는 상대방의 상태 확인 불가
- SIP Trunk 사이에서 주기적으로 OPTIONS 메시지를 주고받다가 상대방이 응답이 없거나 200 OK 응답이 아닌 경우에는 INVITE 요청 전달 X
- OPTIONS PING을 사용하지 않으면, SIP Trunk 구간에서 INVITE에 대한 응답이 수신되거나 무응답으로 인한 Timeout 이 발생할 때까지 SIP 컴포넌트가 대기
- 상대 SIP 컴포넌트를 URI 주소가 아닌 IP주소 사용 권장
- 도메인 이름인 FQDN을 이용할 경우 DNS에 의한 이중화 기능으로 인해 정확한 확인이 어려움.
'Protocol > VoIP' 카테고리의 다른 글
12 SIP Response (4xx, 5xx, 6xx) / 응용(23.04.14) (0) | 2023.06.20 |
---|---|
11 SIP Response (1xx, 2xx, 3xx) (23.04.14) (0) | 2023.06.20 |
09 모든 메시지 SIP Proxy 경유 / SIP REGISTER (23.04.07) (0) | 2023.04.22 |
08 SIP Header 분석 (23.03.31) (1) | 2023.04.22 |
07 SIP 기초 / SIP 호 설립 절차 (23.03.31) (0) | 2023.04.21 |
댓글