SIP Response Message

· HTTP/1.1 response code를 기반으로 함

· HTTP/1.1에서 따온 것은 response code가 1xx~5xx이며 x00~x79

· SIP에서 생긴 것은 6번째 클래스와 1xx~5xx클래스의 x80~x99임

· SIP Response message

  a SIP-version  Status-Code  Reason-Phrase

      예) SIP/2.0 100 Trying

· UAC는 response code로 처리하며, response code를 이해할 수 없을 때는 class를 우선해

  처리한다.

 


Informational

· call progress를 알리는 데 사용

· 1xx는 end-to-end response이며 message body를 포함할 수 있다.

  (예외: 100 Trying은 hop-by-hop이다.)

· final response(2xx, 6xx)보다 먼저 보내진다.

· 스펙에서 final response가 오는 데 200ms이상이 걸릴 경우 1xx response를 보내도록 권장

 

100 Trying

· UAC의 INVITE 재전송을 방지

· hop by hop

· forward되지 않으며, message body가 없다.

· forking proxy server는 100 Trying을 사용해야 함

 

180 Ringing

· User Agent에 의해 INVITE를 받았음을 알리기 위해 사용

· Telephony와 관계될 때 중요

· telephony에서는 180 Ringing이 생략되고 200 OK가 바로 가는 “fast answer” 가 있음

 

181 Call Is Being Forwarded

· call이 다른 곳으로 넘겨졌음을 알리는 데 사용

 

182 Call Queued

· called party가 일시적으로 unavailable할 때, 거절이 아닌 대기시키는 것을 결정했음을

  알리는 데 사용

· reason phrase는 추정되는 waiting time을 caller에게 같이 전송할 수 있음.

 

 


call queuing example with call processing center

 

183 Session Progress

· call의 progress에 대한 정보를 나르는 데 사용한다.

· Reason-Phrase나 header field, message body에 call progress에 대해 더 자세한 정보를

  포함할 수 있다.

· 일반적인 사용의 예는, UAC가 PSTN 게이트웨이를 통해 들어온 ring tone, busy tone, 녹음

  된 음성을 듣는 것을 허용하는 것이다.

  


PSTN interworking without early media

 

 

 


PSTN interworking with early media

 

Success 200 OK

 

· session invitation을 받아들였을 때, 200 OK는 UAS(called party)의 미디어 속성을 포함

  하는 message body를 포함한다.

· 다른 request에 대한 response에서는 성공적인 완료나 request의 수령을 알린다.

· 이후의 request의 재전송을 방지

 

Redirection

 

· 일반적으로 3xx response는 redirect server가 INVITE에 대한 response로 보낸다.

· UAC는 3xx response를 받으면 request를 옳은 주소로 재시도한다.

 

300 Multiple Choices

· location service가 반환한 여러 가능한 위치를 SIP URL로서 알리는 Contact header를 포함

  한다.

· Contact header의 순서는 그 순서대로 시도해야 함을 의미한다.

 

301 Moved Permanently

· called party의 (영구적인) 새 URL을 Contact header에 포함한다.

· 주소는 저장되어 이후의 INVITE request에 사용한다.

 

302 Moved Temporarily

· 영구적이 아닌 현재 유효한 URL을 포함한다.

· Expires header가 있는 경우를 제외하고 Contact header는 cache되지 말아야 한다.

 

305 Use Proxy

· request된 resource에 접근하려면 Contact header에 주어진 proxy를 반드시 거쳐야 함을

  의미한다.

· caller는 forwarding을 위해 proxy로 다시 request를 보내야 한다.

· incoming call screening의 proxy를 사용하는 UAS에 의해 보내질 수 있다.

· proxy는 UAS가 call을 받아들일 것인가에 대한 결정을 하기 때문에, UAS는 screening

  proxy로부터 온 INVITE request에게만 응답할 것이다.

 

380 Alternative Service

· call은 실패했지만 alternative service는 가능하다는 것은 알린다.

· 예를 들어 voicemail server로 redirect할 수 있다.

· 현재 스펙에서는 아직 자세히 정의되지 않았다.

 

Client Error

 

· request가 잘못되었을 경우 server나 UAS에 의해 사용됨

 

400 Bad Request

· 잘못된 문법의 이해할 수 없는 request를 받았을 때 사용한다.

· Reason-Phrase는 문법의 문제를 더 자세히 확인해야 한다(e.g.. "Missing Call-ID header")

 

401 Unauthorized

· user authentication을 요구함

· 401은 user agent server나 registrar에서, 407은 proxy server에서 사용된다.

 

5.4.3 402 Payment Required

 

번호 제목 글쓴이 날짜 조회 수
73 [ChatGPT] nginx 에서 jetty 서버로 프록시중 "org.eclipse.jetty.http.BadMessageException: 400: Invalid SNI" 오류 황제낙엽 2024.11.12 1291
72 [phind] jetty 와 tomcat 의 차이점 (성능, 사용성, 선호도) 황제낙엽 2024.10.31 1438
71 jsp 에서 <script> 로 import 한 js 내의 한글이 깨진다 file 황제낙엽 2024.07.14 1481
70 Nginx: 413 – Request Entity Too Large file 황제낙엽 2024.02.17 1187
69 nginx 설치, 실행, SSL 설정, 프록시 설정 황제낙엽 2024.02.04 962
68 [bard] Nginx로 서브 도메인에 따라 내부의 포트만 다르게 실행중인 웹서버들을 라우팅 황제낙엽 2024.02.01 962
67 [Bing] "Apache"와 "Nginx" 의 차이점 황제낙엽 2024.01.31 1055
66 Nginx 에 대하여 황제낙엽 2024.01.18 892
65 "org.apache.tomcat.util.net.SecureNioChannel.getSslEngine()" is null 황제낙엽 2023.06.22 2956
64 windows tomcat 에 Let's Encrypt(SSL) 적용 황제낙엽 2023.06.21 1093
63 AutoSet PHP 버전 업그레이드 (7.2.10 to 7.4.32) 황제낙엽 2022.10.09 1542
62 401 - Unauthorized: Access is denied due to invalid credentials 황제낙엽 2021.08.27 1387
61 iis error - Service Unavailable / HTTP Error 503. The service is unavailable. 황제낙엽 2020.09.23 1739
60 [Bitnami WAMP] 설치후 PHP 설정 황제낙엽 2020.07.23 1631
59 Autoset의 대안 Bitnami WAMP file 황제낙엽 2020.04.01 1034
58 HTTP 오류 403.14 - Forbidden file 황제낙엽 2020.03.04 964
57 바인딩 편집 (사이트 바인딩) file 황제낙엽 2020.03.04 1021
56 웹사이트에서 여러 도메인을 사용하는 방법 황제낙엽 2020.03.04 1387
55 32비트 응용 프로그램 사용 (ASP, C#) file 황제낙엽 2019.10.31 3056
54 [Tomcat 7] org.apache.tomcat.util.bcel.classfile.ClassFormatException: Invalid byte tag in constant pool: 15 황제낙엽 2019.10.16 1231