Scenario : U1 -> P1 -> P2 -> U2
U1 -> P1
INVITE sip:callee@domain.com SIP/2.0
Contact: sip:caller@u1.example.com
P1 = outbound proxy, DNS을 이용하여 Record-Route 을 삽입
P1 -> P2
INVITE sip:callee@domain.com SIP/2.0
Contact: sip:caller@u1.example.com
Record-Route:
P2 -> U2 (Location server 이용)
INVITE sip:callee@u2.domain.com SIP/2.0
Contact: sip:caller@u1.example.com
Record-Route:
Record-Route:
Callee가 request을 받고 200 OK 송신
SIP/2.0 200 OK
Contact: sip:callee@u2.domain.com
Record-Route:
Record-Route:
U2 : dialog state 유지
Remote target : sip:caller@u1.example.com
Route : (,)
U1 response을 수신하고 dialog state 유지
Remote target : sip:caller@u2.example.com
Route :,
U1이 BYE request 송신
BYE sip:callee@u2.domain.com SIP/2.0
Route:,
P1 -> P2
BYE sip:callee@u2.domain.com SIP/2.0
Route:
P2 -> U@
BYE sip:callee@u2.domain.com SIP/2.0
U1 -> P1
INVITE sip:callee@domain.com SIP/2.0
Contact: sip:caller@u1.example.com
P1 = outbound proxy, DNS을 이용하여 Record-Route 을 삽입
P1 -> P2
INVITE sip:callee@domain.com SIP/2.0
Contact: sip:caller@u1.example.com
Record-Route:
P2 -> U2 (Location server 이용)
INVITE sip:callee@u2.domain.com SIP/2.0
Contact: sip:caller@u1.example.com
Record-Route:
Record-Route:
Callee가 request을 받고 200 OK 송신
SIP/2.0 200 OK
Contact: sip:callee@u2.domain.com
Record-Route:
Record-Route:
U2 : dialog state 유지
Remote target : sip:caller@u1.example.com
Route : (
U1 response을 수신하고 dialog state 유지
Remote target : sip:caller@u2.example.com
Route :
U1이 BYE request 송신
BYE sip:callee@u2.domain.com SIP/2.0
Route:
P1 -> P2
BYE sip:callee@u2.domain.com SIP/2.0
Route:
P2 -> U@
BYE sip:callee@u2.domain.com SIP/2.0
'Protocol > SIP' 카테고리의 다른 글
| strict routing (0) | 2013.09.25 |
|---|---|
| Example (strict router 가 있는 경우) (0) | 2013.09.25 |
| Stateless Proxy (0) | 2013.09.25 |
| Response Processing (0) | 2013.09.25 |
| Timer (0) | 2013.09.25 |