draft-ietf-sipcore-rfc4244bis-callflows-02.txt | draft-ietf-sipcore-rfc4244bis-callflows-03.txt | |||
---|---|---|---|---|
Network Working Group M. Barnes | SIPCORE M. Barnes | |||
Internet-Draft Polycom | Internet-Draft Polycom | |||
Intended status: Informational F. Audet | Intended status: Informational F. Audet | |||
Expires: July 5, 2013 Skype | Expires: September 2, 2013 Skype | |||
S. Schubert | S. Schubert | |||
NTT | NTT | |||
J. van Elburg | H. van Elburg | |||
Detecon International Gmbh | Detecon International Gmbh | |||
C. Holmberg | C. Holmberg | |||
Ericsson | Ericsson | |||
Jan 2013 | Mar 2013 | |||
Session Initiation Protocol (SIP) History-Info Header Call Flow Examples | Session Initiation Protocol (SIP) History-Info Header Call Flow Examples | |||
draft-ietf-sipcore-rfc4244bis-callflows-02.txt | draft-ietf-sipcore-rfc4244bis-callflows-03.txt | |||
Abstract | Abstract | |||
This document describes use cases and documents call flows which | This document describes use cases and documents call flows which | |||
require the History-Info header field to capture the Request-URIs as | require the History-Info header field to capture the Request-URIs as | |||
a Session Initiation Protocol (SIP) Request is retargeted. The use | a Session Initiation Protocol (SIP) Request is retargeted. The use | |||
cases are described along with the corresponding call flow diagrams | cases are described along with the corresponding call flow diagrams | |||
and messaging details. | and messaging details. | |||
Status of this Memo | Status of this Memo | |||
skipping to change at page 1, line 41 | skipping to change at page 1, line 41 | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
Drafts is at http://datatracker.ietf.org/drafts/current/. | Drafts is at http://datatracker.ietf.org/drafts/current/. | |||
Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
This Internet-Draft will expire on July 5, 2013. | This Internet-Draft will expire on September 2, 2013. | |||
Copyright Notice | Copyright Notice | |||
Copyright (c) 2013 IETF Trust and the persons identified as the | Copyright (c) 2013 IETF Trust and the persons identified as the | |||
document authors. All rights reserved. | document authors. All rights reserved. | |||
This document is subject to BCP 78 and the IETF Trust's Legal | This document is subject to BCP 78 and the IETF Trust's Legal | |||
Provisions Relating to IETF Documents | Provisions Relating to IETF Documents | |||
(http://trustee.ietf.org/license-info) in effect on the date of | (http://trustee.ietf.org/license-info) in effect on the date of | |||
publication of this document. Please review these documents | publication of this document. Please review these documents | |||
skipping to change at page 4, line 19 | skipping to change at page 4, line 19 | |||
History-Info entries, the Request URIs for the History-Info entries | History-Info entries, the Request URIs for the History-Info entries | |||
tagged with "mp" header field parameter are extracted. Those | tagged with "mp" header field parameter are extracted. Those | |||
Request-URIs can be compared to other URIs (if any) that might be | Request-URIs can be compared to other URIs (if any) that might be | |||
attempted in order to establish the session with Bob. This results in | attempted in order to establish the session with Bob. This results in | |||
avoiding the sending of another INVITE to Bob's home phone. Without | avoiding the sending of another INVITE to Bob's home phone. Without | |||
this mechanism, Alice might well attempt to reach Bob at his office | this mechanism, Alice might well attempt to reach Bob at his office | |||
phone, which would then retarget the request to Bob's home phone. | phone, which would then retarget the request to Bob's home phone. | |||
When that attempt failed, then Alice might attempt to reach Bob | When that attempt failed, then Alice might attempt to reach Bob | |||
directly at his home phone, unknowingly for a third time. | directly at his home phone, unknowingly for a third time. | |||
Alice example.com Bob Office Home | Alice example.com Bob Office Home | |||
| | | | | | | | | | | | |||
| INVITE F1 | | | | | | INVITE F1 | | | | | |||
|----------->| INVITE F2 | | | | |----------->| INVITE F2 | | | | |||
| |----------------->| | | | | |----------------->| | | | |||
| 100 Trying F3 | | | | | 100 Trying F3 | | | | |||
|<-----------| 302 Move Temporarily F4 | | | |<-----------| 302 Move Temporarily F4 | | | |||
| |<-----------------| | | | | |<-----------------| | | | |||
| | ACK F5 | | | | | | ACK F5 | | | | |||
| |----------------->| | | | | |----------------->| | | | |||
| | INVITE F6 | | | | | INVITE F6 | | | |||
| |-------------------------->| | | | |-------------------------->| | | |||
| | 180 Ringing F7 | | | | | 180 Ringing F7 | | | |||
| |<--------------------------| | | | |<--------------------------| | | |||
| 180 Ringing F8 | | | | 180 Ringing F8 | | | |||
|<-----------| retransmit INVITE | | | |<-----------| retransmit INVITE | | | |||
| |-------------------------->| | | | |-------------------------->| | | |||
| | ( timeout ) | | | | | ( timeout ) | | | |||
| | INVITE F9 | | | | INVITE F9 | | |||
| |----------------------------------->| | | |----------------------------------->| | |||
| | 100 Trying F10 | | | | 100 Trying F10 | | |||
| |<-----------------------------------| | | |<-----------------------------------| | |||
| | 486 Busy Here F11 | | | | 486 Busy Here F11 | | |||
| |<-----------------------------------| | | |<-----------------------------------| | |||
| 486 Busy Here F12 | | | 486 Busy Here F12 | | |||
|<-----------| ACK F13 | | |<-----------| ACK F13 | | |||
| |----------------------------------->| | | |----------------------------------->| | |||
| ACK F14 | | | | ACK F14 | | | |||
|----------->| | | |----------->| | | |||
Figure 1: Figure 1. Example with Sequential Forking | Figure 1: Figure 1: Example with Sequential Forking | |||
Message Details | Message Details | |||
F1 INVITE alice -> example.com | F1 INVITE alice -> example.com | |||
INVITE sip:bob@example.com SIP/2.0 | INVITE sip:bob@example.com SIP/2.0 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 70 | Max-Forward: 70 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com> | To: Bob <sip:bob@example.com> | |||
skipping to change at page 6, line 34 | skipping to change at page 6, line 34 | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.4>;index=1.1;rc=1 | History-Info: <sip:bob@192.0.2.4>;index=1.1;rc=1 | |||
Contact: <sip:office@example.com>;mp=1 | Contact: <sip:office@example.com>;mp=1 | |||
Content-Length: 0 | Content-Length: 0 | |||
F5 ACK example.com -> Bob | F5 ACK example.com -> Bob | |||
ACK sip:bob@example.com SIP/2.0 | ACK sip:bob@example.com SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx3st | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx3st | |||
Max-Forward: 69 | Max-Forward: 70 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com>;tag=es43sd | To: Bob <sip:bob@example.com>;tag=es43sd | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 ACK | CSeq: 1 ACK | |||
Content-Length: 0 | Content-Length: 0 | |||
F6 INVITE example.com -> office | F6 INVITE example.com -> office | |||
INVITE sip:office@192.0.2.5 SIP/2.0 | INVITE sip:office@192.0.2.5 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx4st | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx4st | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 68 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com> | To: Bob <sip:bob@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1;rc=1 | index=1.1;rc=1 | |||
History-Info: <sip:office@example.com>;index=1.2;mp=1 | History-Info: <sip:office@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:office@192.0.2.5>;index=1.2.1;rc=1.2 | History-Info: <sip:office@192.0.2.5>;index=1.2.1;rc=1.2 | |||
skipping to change at page 8, line 17 | skipping to change at page 8, line 17 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com>;tag=53rdds | To: Bob <sip:bob@example.com>;tag=53rdds | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1;rc=1 | index=1.1;rc=1 | |||
History-Info: <sip:office@example.com>;index=1.2;mp=1 | History-Info: <sip:office@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:office@192.0.2.5>;index=1.2.1;rc=1.2 | History-Info: <sip:office@192.0.2.5;Reason=SIP%3Bcause%3D180>;\ | |||
index=1.2.1;rc=1.2 | ||||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
Contact: Office <sip:office@192.0.2.5> | Contact: Office <sip:office@192.0.2.5> | |||
Content-Length: 0 | Content-Length: 0 | |||
F9 INVITE example.com -> home | F9 INVITE example.com -> home | |||
INVITE sip:home@192.0.2.6 SIP/2.0 | INVITE sip:home@192.0.2.6 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx5st | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx5st | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 67 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com> | To: Bob <sip:bob@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1;rc=1 | index=1.1;rc=1 | |||
History-Info: <sip:office@example.com>;index=1.2;mp=1 | History-Info: <sip:office@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:office@192.0.2.5?Reason=SIP%3Bcause%3D408>;\ | History-Info: <sip:office@192.0.2.5?Reason=SIP%3Bcause%3D408>;\ | |||
skipping to change at page 10, line 14 | skipping to change at page 10, line 14 | |||
F12 486 Busy Here example.com -> alice | F12 486 Busy Here example.com -> alice | |||
SIP/2.0 486 Busy Here | SIP/2.0 486 Busy Here | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com>;tag=55rdds | To: Bob <sip:bob@example.com>;tag=55rdds | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:bob@192.0.2.4?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1;rc=1 | index=1.1;rc=1 | |||
History-Info: <sip:office@example.com>;index=1.2;mp=1 | History-Info: <sip:office@example.com?Reason=SIP%3Bcause%3D408>;\ | |||
index=1.2;mp=1 | ||||
History-Info: <sip:office@192.0.2.5?Reason=SIP%3Bcause%3D408>;\ | History-Info: <sip:office@192.0.2.5?Reason=SIP%3Bcause%3D408>;\ | |||
index=1.2.1;index=1.2.1;rc=1.2 | index=1.2.1;rc=1.2 | |||
History-Info: <sip:home@example.com>;index=1.3;mp=1 | History-Info: <sip:home@example.com>;index=1.3;mp=1 | |||
History-Info: <sip:home@192.0.2.6>;index=1.3.1;rc=1.3 | History-Info: <sip:home@192.0.2.6>;index=1.3.1;rc=1.3 | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
Content-Length: 0 | Content-Length: 0 | |||
F13 ACK example.com -> home | F13 ACK example.com -> home | |||
ACK sip:home@192.0.2.6 SIP/2.0 | ACK sip:home@192.0.2.6 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx5st | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKx5st | |||
Max-Forward: 67 | Max-Forward: 70 | |||
From: Alice <sip:alice@example.com>;tag=sr3dds | From: Alice <sip:alice@example.com>;tag=sr3dds | |||
To: Bob <sip:bob@example.com>;tag=55rdds | To: Bob <sip:bob@example.com>;tag=55rdds | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 ACK | CSeq: 1 ACK | |||
Content-Length: 0 | Content-Length: 0 | |||
F14 ACK alice -> example.com | F14 ACK alice -> example.com | |||
ACK sip:bob@example.com SIP/2.0 | ACK sip:bob@example.com SIP/2.0 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
skipping to change at page 11, line 40 | skipping to change at page 11, line 40 | |||
| | 200 F5 | | | | | 200 F5 | | | |||
| |<---------------| | | | |<---------------| | | |||
| | | | | | | | | | |||
| 200 F6 | | | | | 200 F6 | | | | |||
|<---------------| | | | |<---------------| | | | |||
| | | | | | | | | | |||
| | ACK | | | | | ACK | | | |||
|------------------------------------------------->| | |------------------------------------------------->| | |||
| | | | | | | | | | |||
Figure 2: Figure 2. Example with Privacy Header Fields | Figure 2: Figure 2: Example with Privacy Header Fields | |||
Message Details | Message Details | |||
F1 INVITE alice -> atlanta.example.com | F1 INVITE alice -> atlanta.example.com | |||
INVITE sip:bob@biloxi.example.com;p=x SIP/2.0 | INVITE sip:bob@biloxi.example.com;p=x SIP/2.0 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 70 | Max-Forward: 70 | |||
From: Alice <sip:alice@atlanta.example.com>;tag=22 | From: Alice <sip:alice@atlanta.example.com>;tag=22 | |||
To: Bob <sip:bob@biloxi.example.com> | To: Bob <sip:bob@biloxi.example.com> | |||
skipping to change at page 13, line 7 | skipping to change at page 13, line 7 | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:anonymous@anonymous.invalid>;index=1 | History-Info: <sip:anonymous@anonymous.invalid>;index=1 | |||
History-Info: <sip:bob@biloxi.example.com;p=x>;index=1.1 | History-Info: <sip:bob@biloxi.example.com;p=x>;index=1.1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
<!-- SDP Not Shown --> | <!-- SDP Not Shown --> | |||
F3 INVITE biloxi.example.com -> Bob | F3 INVITE biloxi.example.com -> Bob | |||
INVITE sip:bob@192.0.1.11 SIP/2.0 | INVITE sip:bob@192.0.1.11 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.biloxi.example.com:5060;branch=z9hG4bKgs32;\ | Via: SIP/2.0/TCP proxy.biloxi.example.com:5060;branch=z9hG4bKgs32 | |||
Via: SIP/2.0/TCP proxy.atlanta.example.com:5060;branch=z9hG4bKbst2;\ | ||||
received=192.0.2.3 | received=192.0.2.3 | |||
Via: SIP/2.0/TCP proxy.atlanta.example.com:5060;branch=z9hG4bKbst2 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 68 | Max-Forward: 68 | |||
From: Alice <sip:alice@atlanta.example.com>;tag=22 | From: Alice <sip:alice@atlanta.example.com>;tag=22 | |||
To: Bob <sip:bob@biloxi.example.com> | To: Bob <sip:bob@biloxi.example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@atlanta.example.com | Call-Id: 12345600@atlanta.example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:anonymous@anonymous.invalid>;index=1 | History-Info: <sip:anonymous@anonymous.invalid>;index=1 | |||
History-Info: <sip:bob@biloxi.example.com;p=x>;index=1.1 | History-Info: <sip:bob@biloxi.example.com;p=x>;index=1.1 | |||
History-Info: <sip:bob@192.0.1.11?Privacy=history>;index=1.1.1;rc=1.1 | History-Info: <sip:bob@192.0.1.11?Privacy=history>;index=1.1.1;rc=1.1 | |||
skipping to change at page 15, line 29 | skipping to change at page 15, line 29 | |||
| | 200 F5 | | | | | 200 F5 | | | |||
| |<---------------| | | | |<---------------| | | |||
| | | | | | | | | | |||
| 200 F6 | | | | | 200 F6 | | | | |||
|<---------------| | | | |<---------------| | | | |||
| | | | | | | | | | |||
| | ACK | | | | | ACK | | | |||
|------------------------------------------------->| | |------------------------------------------------->| | |||
| | | | | | | | | | |||
Figure 3: Figure 3. Example with Privacy Header Field for Specific | Figure 3: Figure 3: Example with Privacy Header Field for Specific | |||
URI | URI | |||
Message Details | Message Details | |||
F1 INVITE alice -> atlanta.example.com | F1 INVITE alice -> atlanta.example.com | |||
INVITE sip:bob@biloxi.example.com;p=x SIP/2.0 | INVITE sip:bob@biloxi.example.com;p=x SIP/2.0 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK4321 | |||
Max-Forward: 70 | Max-Forward: 70 | |||
From: Alice <sip:alice@atlanta.example.com>;tag=22 | From: Alice <sip:alice@atlanta.example.com>;tag=22 | |||
skipping to change at page 19, line 24 | skipping to change at page 19, line 24 | |||
| | | | | | | | | | | | |||
| INVITE F1 | | | | | | INVITE F1 | | | | | |||
|------------->| | | | | |------------->| | | | | |||
| | | | | | | | | | | | |||
| | INVITE F2 | | | | | | INVITE F2 | | | | |||
| |------------->| | | | | |------------->| | | | |||
| | | | | | | | | | | | |||
| | 302 Moved Temporarily F3 | | | | | 302 Moved Temporarily F3 | | | |||
| |<-------------| | | | | |<-------------| | | | |||
| | | | | | | | | | | | |||
| ACK | | | | | | ACK | | | | |||
|---------------------------->| | | | | |------------->| | | | |||
| | | | | | | | | | | | |||
| | INVITE F4 | | | | | | INVITE F4 | | | | |||
| |--------------------------->| | | | |--------------------------->| | | |||
| | | | | | | | | | | | |||
| | | | INVITE F5 | | | | | | INVITE F5 | | |||
| | | |----------->| | | | | |----------->| | |||
| | | | | | | | | | | | |||
| | | | 200 OK F6 | | | | | | 200 OK F6 | | |||
| | | |<-----------| | | | | |<-----------| | |||
| | | | | | | | | | | | |||
skipping to change at page 21, line 7 | skipping to change at page 21, line 7 | |||
Contact: <sip:Silver@example.com>;mp=1 | Contact: <sip:Silver@example.com>;mp=1 | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F4 INVITE Example.com -> Silver.Example.com | F4 INVITE Example.com -> Silver.Example.com | |||
INVITE sip:Silver@example.com SIP/2.0 | INVITE sip:Silver@example.com SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK45q2 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK45q2 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 68 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=1235 | From: Alice <sip:alice@example.com>;tag=1235 | |||
To: Gold Member Assistance <sip:Gold@example.com> | To: Gold Member Assistance <sip:Gold@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:Gold@example.com>;index=1 | History-Info: <sip:Gold@example.com>;index=1 | |||
History-Info: <sip:Gold@gold.example.com?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:Gold@gold.example.com?Reason=SIP%3Bcause%3D302>;\ | |||
rc=1;index=1.1 | rc=1;index=1.1 | |||
History-Info: <sip:Silver@example.com>;index=1.2;mp=1 | History-Info: <sip:Silver@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:Silver@silver.example.com>;index=1.2.1;rc=1.2 | History-Info: <sip:Silver@silver.example.com>;index=1.2.1;rc=1.2 | |||
skipping to change at page 21, line 31 | skipping to change at page 21, line 31 | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F5 INVITE Silver.Example.com -> Agent | F5 INVITE Silver.Example.com -> Agent | |||
INVITE sip:Silver@192.0.2.7 SIP/2.0 | INVITE sip:Silver@192.0.2.7 SIP/2.0 | |||
Via: SIP/2.0/TCP silver.example.com:5060;branch=z9hG4bKerxs | Via: SIP/2.0/TCP silver.example.com:5060;branch=z9hG4bKerxs | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK45q2;\ | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK45q2;\ | |||
received=192.0.2.101 | received=192.0.2.101 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 67 | Max-Forward: 68 | |||
From: Alice <sip:alice@example.com>;tag=1235 | From: Alice <sip:alice@example.com>;tag=1235 | |||
To: Gold Member Assistance <sip:Gold@example.com> | To: Gold Member Assistance <sip:Gold@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:Gold@example.com>;index=1 | History-Info: <sip:Gold@example.com>;index=1 | |||
History-Info: <sip:Gold@gold.example.com?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:Gold@gold.example.com?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1 | index=1.1 | |||
History-Info: <sip:Silver@example.com>;index=1.2;mp=1 | History-Info: <sip:Silver@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:Silver@silver.example.com>;index=1.2.1;rc=1.2 | History-Info: <sip:Silver@silver.example.com>;index=1.2.1;rc=1.2 | |||
skipping to change at page 23, line 39 | skipping to change at page 23, line 39 | |||
To: Gold Member Assistance <sip:Gold@example.com>;tag=2325 | To: Gold Member Assistance <sip:Gold@example.com>;tag=2325 | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 ACK | CSeq: 1 ACK | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 4: Figure 4. Example for Automatic Call Distribution | Figure 4: Figure 4: Example for Automatic Call Distribution | |||
The first hi-entry with the "mp" header field parameter contains a | The first hi-entry with the "mp" header field parameter contains a | |||
"mp" header field parameter value of 1 which points to the original- | "mp" header field parameter value of 1 which points to the original- | |||
target which allows the operator to identify that the call was from | target which allows the operator to identify that the call was from | |||
the "Gold" customer. | the "Gold" customer. | |||
3.5. Determining the Alias used. | 3.5. Determining the Alias used. | |||
SIP user agents are associated with an address-of-record (AOR). It | SIP user agents are associated with an address-of-record (AOR). It | |||
is possible for a single UA to actually have multiple AORs associated | is possible for a single UA to actually have multiple AORs associated | |||
skipping to change at page 24, line 41 | skipping to change at page 24, line 41 | |||
| |-------------------->| | | |-------------------->| | |||
| INVITE F3 | | | | INVITE F3 | | | |||
|-------------------->| | | |-------------------->| | | |||
| | INVITE F4 | | | | INVITE F4 | | |||
| |-------------------->| | | |-------------------->| | |||
* Rest of flow not shown * | * Rest of flow not shown * | |||
F1 REGISTER John -> Example.com | F1 REGISTER John -> Example.com | |||
REGISTER sip:example.com SIP/2.0 | REGISTER sip:example.com SIP/2.0 | |||
Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bKnashds7 | Via: SIP/2.0/TCP 192.0.2.1;branch=z9hG4bKnashds7 | |||
Max-Forwards: 70 | Max-Forwards: 70 | |||
From: John <sip:john@example.com>;tag=a73kszlfl | From: John <sip:john@example.com>;tag=a73kszlfl | |||
To: John <sip:john@example.com> | To: John <sip:john@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1> | Contact: <sip:john@192.0.2.1> | |||
Content-Length: 0 | Content-Length: 0 | |||
F2 200 OK Example.com -> John | F2 200 OK Example.com -> John | |||
SIP/2.0 200 OK | SIP/2.0 200 OK | |||
Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bKnashds7 | Via: SIP/2.0/TCP 192.0.2.1;branch=z9hG4bKnashds7 | |||
From: John <sip:john@example.com>;tag=a73kszlfl | From: John <sip:john@example.com>;tag=a73kszlfl | |||
To: John <sip:john@example.com>;tag=d2dstee2 | To: John <sip:john@example.com>;tag=d2dstee2 | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;expires=3600 | Contact: <sip:john@192.0.2.1>;expires=3600 | |||
Content-Length: 0 | Content-Length: 0 | |||
F3 INVITE Alice -> Example.com | F3 INVITE Alice -> Example.com | |||
INVITE sip:john.smith@example.com SIP/2.0 | INVITE sip:john.smith@example.com SIP/2.0 | |||
skipping to change at page 26, line 4 | skipping to change at page 26, line 4 | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:john.smith@example.com>;index=1 | History-Info: <sip:john.smith@example.com>;index=1 | |||
History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 5: Figure 5. Alias Example | Figure 5: Figure 5: Alias Example | |||
The last hi-entry with the "rc" header field parameter references the | The last hi-entry with the "rc" header field parameter references the | |||
source of retargeting pointing at the alias AoR, which in the example | source of retargeting pointing at the alias AoR, which in the example | |||
is "john.smith@example.com". | is "john.smith@example.com". | |||
3.6. PBX Voicemail Example | 3.6. PBX Voicemail Example | |||
A typical use case for voicemail is one whereby the original called | A typical use case for voicemail is one whereby the original called | |||
party is not reachable and the call arrives at a voicemail system. | party is not reachable and the call arrives at a voicemail system. | |||
In some cases multiple alternate destinations may be tried without | In some cases multiple alternate destinations may be tried without | |||
skipping to change at page 26, line 42 | skipping to change at page 26, line 42 | |||
[RFC4458]. Note that some VMSs may also (or instead) use the | [RFC4458]. Note that some VMSs may also (or instead) use the | |||
information available in the History-Info headers for custom handling | information available in the History-Info headers for custom handling | |||
of the VM in terms of how and why the call arrived at the VMS. | of the VM in terms of how and why the call arrived at the VMS. | |||
Furthermore it is the proxy forwarding the call to VMS that | Furthermore it is the proxy forwarding the call to VMS that | |||
determines the target of the voicemail, it is the proxy that sets the | determines the target of the voicemail, it is the proxy that sets the | |||
target of voicemail which is also the entity that utilizes RFC4244bis | target of voicemail which is also the entity that utilizes RFC4244bis | |||
to find the target which is usually based on local policy installed | to find the target which is usually based on local policy installed | |||
by the user or an administrator. | by the user or an administrator. | |||
Alice example.com Bob Carol VM | Alice example.com Bob Carol VM | |||
| INVITE F1 | | | | | ||||
|------------->| | | | | ||||
| | INVITE F2 | | | | ||||
| |------------->| | | | ||||
| | | | | | ||||
| 100 Trying | | | | | ||||
|<-------------| 302 Moved Temporarily F3 | | | ||||
| |<-------------| | | | ||||
| | | | | | ||||
| ACK | | | | ||||
|---------------------------->| | | | ||||
| | | | | | ||||
| | INVITE F4 | | | | ||||
| |--------------------------->| | | ||||
| | | | | | ||||
| | 180 Ringing F5 | | | ||||
| |<---------------------------| | | ||||
| | | | | | ||||
| 180 Ringing | | | | | ||||
|<-------------| | | | | ||||
| | | | | | ||||
| | (timeout) | | | ||||
| | | | | | ||||
| | INVITE F6 | | | | ||||
| |-------------------------------------->| | ||||
| | | | | | ||||
| | 200 OK F7 | | ||||
| |<--------------------------------------| | ||||
| 200 OK | | | | | ||||
|<-------------| | | | | ||||
| | | | | | ||||
| ACK | | ||||
|----------------------------------------------------->| | ||||
F1 INVITE Alice -> Example.com | | INVITE F1 | | | | | |||
|------------->| | | | | ||||
| | INVITE F2 | | | | ||||
| |------------->| | | | ||||
| | | | | | ||||
| 100 Trying | | | | | ||||
|<-------------| 302 Moved Temporarily F3 | | | ||||
| |<-------------| | | | ||||
| | | | | | ||||
| | ACK | | | | ||||
| |------------->| | | | ||||
| | | | | | ||||
| | INVITE F4 | | | | ||||
| |--------------------------->| | | ||||
| | | | | | ||||
| | 180 Ringing F5 | | | ||||
| |<---------------------------| | | ||||
| | | | | | ||||
| 180 Ringing | | | | | ||||
|<-------------| | | | | ||||
| | | | | | ||||
| | (timeout) | | | ||||
| | | | | | ||||
| | INVITE F6 | | | | ||||
| |-------------------------------------->| | ||||
| | | | | | ||||
| | 200 OK F7 | | ||||
| |<--------------------------------------| | ||||
| 200 OK | | | | | ||||
|<-------------| | | | | ||||
| | | | | | ||||
| ACK | | ||||
|----------------------------------------------------->| | ||||
INVITE sip:bob@example.com SIP/2.0 | F1 INVITE Alice -> Example.com | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 70 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | INVITE sip:bob@example.com SIP/2.0 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 70 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Length: <appropriate value> | ||||
F2 INVITE Example.com -> Bob | [SDP Not Shown] | |||
INVITE sip:bob@192.0.2.5 SIP/2.0 | F2 INVITE Example.com -> Bob | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 69 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5>;index=1.1;rc=1 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | INVITE sip:bob@192.0.2.5 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 69 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5>;index=1.1;rc=1 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
F3 302 Moved Temporarily Bob -> Example.com | [SDP Not Shown] | |||
SIP/2.0 302 Moved Temporarily | F3 302 Moved Temporarily Bob -> Example.com | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4;\ | ||||
received=192.0.2.101 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com>;tag=2g22d-lnf | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5>;index=1.1;rc=1 | ||||
Contact: <sip:carol@example.com>;mp=1 | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | SIP/2.0 302 Moved Temporarily | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4;\ | ||||
received=192.0.2.101 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com>;tag=2g22d-lnf | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5>;index=1.1;rc=1 | ||||
Contact: <sip:carol@example.com>;mp=1 | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
F4 INVITE Example.com -> Carol | [SDP Not Shown] | |||
INVITE sip:carol@192.0.2.4 SIP/2.0 | F4 INVITE Example.com -> Carol | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4522 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 68 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | INVITE sip:carol@192.0.2.4 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4522 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 69 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
F5 180 Ringing Carol -> Example.com | [SDP Not Shown] | |||
SIP/2.0 180 Ringing | F5 180 Ringing Carol -> Example.com | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4522;\ | ||||
received=192.0.2.101 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com>;tag=setss3x | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | ||||
Contact: <sip:carol@192.0.2.4> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | SIP/2.0 180 Ringing | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4522;\ | ||||
received=192.0.2.101 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com>;tag=setss3x | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | ||||
Contact: <sip:carol@192.0.2.4> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
F6 INVITE Example.com -> VM | [SDP Not Shown] | |||
INVITE sip:vm@192.0.2.6;target=sip:bob%40example.com;cause=480 SIP/2.0 | F6 INVITE Example.com -> VM | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4523 | ||||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | ||||
Max-Forward: 67 | ||||
From: Alice <sip:alice@example.com>;tag=kkaz- | ||||
To: Bob <sip:bob@example.com> | ||||
Supported: histinfo | ||||
Call-Id: 12345600@example.com | ||||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4?Reason=SIP%3Bcause%3D480>;\ | ||||
index=1.2.1;rc=1.2 | ||||
History-Info: <sip:vm@example.com;\ | INVITE sip:vm@192.0.2.6;target=sip:bob%40example.com;cause=480\ | |||
target=sip:bob%40example.com>;\ | SIP/2.0 | |||
index=1.3;mp=1 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4523 | |||
History-Info: <sip:vm@192.0.2.6;\ | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
target=sip:bob%40example.com>;\ | Max-Forward: 69 | |||
index=1.3.1;rc=1.3 | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
Contact: Alice <sip:alice@192.0.2.3> | To: Bob <sip:bob@example.com> | |||
Content-Type: application/sdp | Supported: histinfo | |||
Content-Length: <appropriate value> | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | ||||
History-Info: <sip:bob@example.com>;index=1 | ||||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | ||||
index=1.1;rc=1 | ||||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | ||||
History-Info: <sip:carol@192.0.2.4;cause=480>;\ | ||||
index=1.2.1;rc=1.2 | ||||
History-Info: <sip:vm@example.com;\ | ||||
target=sip:bob%40example.com;cause=480>;\ | ||||
index=1.3;mp=1 | ||||
History-Info: <sip:vm@192.0.2.6;\ | ||||
target=sip:bob%40example.com;cause=480>;\ | ||||
index=1.3.1;rc=1.3 | ||||
Contact: Alice <sip:alice@192.0.2.3> | ||||
Content-Type: application/sdp | ||||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | [SDP Not Shown] | |||
F7 200 OK VM -> Example.com | F7 200 OK VM -> Example.com | |||
SIP/2.0 200 OK | SIP/2.0 200 OK | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4523;\ | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK4523;\ | |||
received=192.0.2.101 | received=192.0.2.101 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: Bob <sip:bob@example.com>;tag=3dweggs | To: Bob <sip:bob@example.com>;tag=3dweggs | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302>;\ | |||
index=1.1;rc=1 | index=1.1;rc=1 | |||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | History-Info: <sip:carol@example.com;cause=480?Reason=SIP%3Bcause%3D\ | |||
History-Info: <sip:carol@192.0.2.4?Reason=SIP%3Bcause%3D480>;\ | 408>;index=1.2;mp=1 | |||
index=1.2.1;rc=1.2 | History-Info: <sip:carol@192.0.2.4;cause=480?Reason=SIP%3Bcause%3D\ | |||
History-Info: <sip:vm@example.com;\ | 408>;index=1.2.1;rc=1.2 | |||
target=sip:bob%40example.com>;\ | History-Info: <sip:vm@example.com;\ | |||
index=1.3;mp=1 | target=sip:bob%40example.com;cause=408>;\ | |||
History-Info: <sip:vm@192.0.2.6;\ | index=1.3;mp=1 | |||
target=sip:bob%40example.com>;\ | History-Info: <sip:vm@192.0.2.6;\ | |||
index=1.3.1;rc=1.3 | target=sip:bob%40example.com;cause=408>;\ | |||
Contact: <sip:vm@192.0.2.6> | index=1.3.1;rc=1.3 | |||
Content-Type: application/sdp | Contact: <sip:vm@192.0.2.6> | |||
Content-Length: <appropriate value> | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | ||||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 6: Figure 6. Enterprise Voivemail Example | Figure 6: Figure 6: Enterprise Voivemail Example | |||
The VMS can look at the last hi-entry and find the target of the | The VMS can look at the last hi-entry and find the target of the | |||
mailbox by looking at the URI entry in the "target" URI parameter in | mailbox by looking at the URI entry in the "target" URI parameter in | |||
the hi-entry. | the hi-entry. | |||
3.7. Consumer Voicemail Example | 3.7. Consumer Voicemail Example | |||
In the case of a consumer, when the call is retargeted, it is usually | In the case of a consumer, when the call is retargeted, it is usually | |||
to another administrative domain. The voicemail system in these | to another administrative domain. The voicemail system in these | |||
environment typically requires the last called party information to | environment typically requires the last called party information to | |||
skipping to change at page 31, line 37 | skipping to change at page 31, line 38 | |||
| INVITE F1 | | | | | | INVITE F1 | | | | | |||
|------------->| | | | | |------------->| | | | | |||
| | INVITE F2 | | | | | | INVITE F2 | | | | |||
| |------------->| | | | | |------------->| | | | |||
| | | | | | | | | | | | |||
| 100 Trying | | | | | | 100 Trying | | | | | |||
|<-------------| 302 Moved Temporarily F3 | | | |<-------------| 302 Moved Temporarily F3 | | | |||
| |<-------------| | | | | |<-------------| | | | |||
| | | | | | | | | | | | |||
| ACK | | | | | | ACK | | | | |||
|---------------------------->| | | | | |------------->| | | | |||
| | | | | | | | | | | | |||
| | INVITE F4 | | | | | | INVITE F4 | | | | |||
| |--------------------------->| | | | |--------------------------->| | | |||
| | | | | | | | | | | | |||
| | 180 Ringing F5 | | | | | 180 Ringing F5 | | | |||
| |<---------------------------| | | | |<---------------------------| | | |||
| | | | | | | | | | | | |||
| 180 Ringing | | | | | | 180 Ringing | | | | | |||
|<-------------| | | | | |<-------------| | | | | |||
| | | | | | | | | | | | |||
skipping to change at page 33, line 28 | skipping to change at page 33, line 31 | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F4 INVITE Example.com -> Carol | F4 INVITE Example.com -> Carol | |||
INVITE sip:carol@192.0.2.4 SIP/2.0 | INVITE sip:carol@192.0.2.4 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK24s5 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK24s5 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 68 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: Bob <sip:bob@example.com> | To: Bob <sip:bob@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | |||
;text="Moved Temporarily">\ | %3Btext%3D"Moved Temporarily">\ | |||
;index=1.1;rc=1 | ;index=1.1;rc=1 | |||
History-Info: <sip:carol@example.com>;index=1.2;mp=1 | History-Info: <sip:carol@example.com>;index=1.2;mp=1 | |||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F5 180 Ringing Carol -> Example.com | F5 180 Ringing Carol -> Example.com | |||
skipping to change at page 34, line 28 | skipping to change at page 34, line 29 | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F6 INVITE Example.com -> VM | F6 INVITE Example.com -> VM | |||
INVITE sip:vm@192.0.2.6;target=sip:carol%40example.com SIP/2.0 | INVITE sip:vm@192.0.2.6;target=sip:carol%40example.com SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKbbg4 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKbbg4 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 67 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: Bob <sip:bob@example.com> | To: Bob <sip:bob@example.com> | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | |||
;text="Moved Temporarily">\ | ;text="Moved Temporarily">\ | |||
;index=1.1;rc=1 | ;index=1.1;rc=1 | |||
History-Info: <sip:carol@example.com?Reason=SIP%3Bcause%3D408>;\ | History-Info: <sip:carol@example.com?Reason=SIP%3Bcause%3D408>;\ | |||
skipping to change at page 35, line 14 | skipping to change at page 35, line 16 | |||
SIP/2.0 200 OK | SIP/2.0 200 OK | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKbbg4 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bKbbg4 | |||
Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: Bob <sip:bob@example.com>;tag=3dweggs | To: Bob <sip:bob@example.com>;tag=3dweggs | |||
Supported: histinfo | Supported: histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:bob@example.com>;index=1 | History-Info: <sip:bob@example.com>;index=1 | |||
History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | History-Info: <sip:bob@192.0.2.5?Reason=SIP%3Bcause%3D302\ | |||
;text="Moved Temporarily">\ | %3Btext%3D%22Moved%20Temporarily%22>\ | |||
;index=1.1;rc=1 | ;index=1.1;rc=1 | |||
History-Info: <sip:carol@example.com?Reason=SIP%3Bcause%3D408>;\ | History-Info: <sip:carol@example.com?Reason=SIP%3Bcause%3D408>;\ | |||
index=1.2;mp=1 | index=1.2;mp=1 | |||
History-Info: <sip:carol@192.0.2.4>;index=1.2.1;rc=1.2 | History-Info: <sip:carol@192.0.2.4?Reason=SIP%3Bcause%3D408>;\ | |||
index=1.2.1;rc=1.2 | ||||
History-Info: <sip:vm@example.com;target=sip:carol%40example.com>;\ | History-Info: <sip:vm@example.com;target=sip:carol%40example.com>;\ | |||
index=1.3;mp=1.2 | index=1.2.2;mp=1.2 | |||
History-Info: <sip:vm@192.0.2.5;target=sip:carol%40example.com>;\ | History-Info: <sip:vm@192.0.2.5;target=sip:carol%40example.com>;\ | |||
index=1.3.1;rc=1.3 | index=1.2.2;rc=1.2.1 | |||
Contact: <sip:carol@192.0.2.5> | Contact: <sip:carol@192.0.2.5> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 7: Figure 7. Consumer Voivemail Example | Figure 7: Figure 7: Consumer Voivemail Example | |||
The VMS can look at the last hi-entry and find the target of the | The VMS can look at the last hi-entry and find the target of the | |||
mailbox by looking for the "target" URI parameter in the hi-entry and | mailbox by looking for the "target" URI parameter in the hi-entry and | |||
the reason by the "cause" URI parameter in the same hi-entry. | the reason by the "cause" URI parameter in the same hi-entry. | |||
3.8. GRUU | 3.8. GRUU | |||
A variation on the problem in Section 3.5 occurs with Globally | A variation on the problem in Section 3.5 occurs with Globally | |||
Routable User Agent URI (GRUU) [RFC5627]. A GRUU is a URI assigned | Routable User Agent URI (GRUU) [RFC5627]. A GRUU is a URI assigned | |||
to a UA instance which has many of the same properties as the AOR, | to a UA instance which has many of the same properties as the AOR, | |||
skipping to change at page 36, line 46 | skipping to change at page 36, line 49 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;+sip.instance=\ | Contact: <sip:john@192.0.2.1>;+sip.instance=\ | |||
<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | <urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | |||
Content-Length: 0 | Content-Length: 0 | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F2 200 OK Example.com -> John | F2 200 OK Example.com -> John | |||
SIP/2.0 200 OK | SIP/2.0 200 OK | |||
Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bKnashds7 | Via: SIP/2.0/TCP 192.0.2.1;branch=z9hG4bKnashds7 | |||
From: John <sip:john@example.com>;tag=a73kszlfl | From: John <sip:john@example.com>;tag=a73kszlfl | |||
To: John <sip:john@example.com> ;tag=b88sn | To: John <sip:john@example.com> ;tag=b88sn | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;\ | Contact: <sip:john@192.0.2.1>;\ | |||
pub-gruu="sip:john@example.com;\ | pub-gruu="sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | |||
temp-gruu=\ | temp-gruu=\ | |||
"sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | "sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | |||
+sip.instance=\ | +sip.instance=\ | |||
skipping to change at page 37, line 23 | skipping to change at page 37, line 26 | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Assuming Alice has a knowledge of a gruu either through | Assuming Alice has a knowledge of a gruu either through | |||
prior communication or through other means such as presence | prior communication or through other means such as presence | |||
places a call to John's gruu. | places a call to John's gruu. | |||
F3 INVITE Alice -> Example.com | F3 INVITE Alice -> Example.com | |||
INVITE sip:john@example.com;\ | INVITE sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6 SIP/2.0 | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6 SIP/2.0 | |||
Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 70 | Max-Forward: 70 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: <sip:john@example.com;\ | To: <sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | |||
Supported: gruu, histinfo | Supported: gruu, histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: <sip:john@example.com;\ | History-Info: <sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
F4 INVITE Example.com -> John | F4 INVITE Example.com -> John | |||
INVITE sip:john@192.0.2.1 SIP/2.0 | INVITE sip:john@192.0.2.1 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4 | Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4 | |||
Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/TCP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 69 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: <sip:john@example.com;\ | To: <sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6> | |||
Supported: gruu, histinfo | Supported: gruu, histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:john@example.com;\ | History-Info: <sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | |||
History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
skipping to change at page 38, line 14 | skipping to change at page 38, line 18 | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: <sip:john@example.com;\ | History-Info: <sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>;index=1 | |||
History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 8: Figure 8. GRUU Example | Figure 8: Figure 8: GRUU Example | |||
By analyzing the entry referenced by the entry with the last "rc", | By analyzing the entry referenced by the entry with the last "rc", | |||
one can realize that the URI used to reach the device was GRUU by | one can realize that the URI used to reach the device was GRUU by | |||
finding the "gr" parameter. | finding the "gr" parameter. | |||
3.9. Limited Use Address | 3.9. Limited Use Address | |||
A limited use address is a SIP URI that is minted on-demand, and | A limited use address is a SIP URI that is minted on-demand, and | |||
passed out to a small number (usually one) remote correspondent. | passed out to a small number (usually one) remote correspondent. | |||
Incoming calls targeted to that limited use address are accepted as | Incoming calls targeted to that limited use address are accepted as | |||
skipping to change at page 39, line 36 | skipping to change at page 39, line 39 | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;\ | Contact: <sip:john@192.0.2.1>;\ | |||
+sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>" | +sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>" | |||
Content-Length: 0 | Content-Length: 0 | |||
F2 200 OK Example.com -> John | F2 200 OK Example.com -> John | |||
SIP/2.0 200 OK | SIP/2.0 200 OK | |||
Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bKnashds7 | Via: SIP/2.0/UDP 192.0.2.1;branch=z9hG4bKnashds7 | |||
Max-Forward: 70 | ||||
From: John <sip:john@example.com>;tag=a73kszlfl | From: John <sip:john@example.com>;tag=a73kszlfl | |||
To: John <sip:john@example.com> ;tag=b88sn | To: John <sip:john@example.com> ;tag=b88sn | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;\ | Contact: <sip:john@192.0.2.1>;\ | |||
pub-gruu="sip:john@example.com;\ | pub-gruu="sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | |||
temp-gruu=\ | temp-gruu=\ | |||
"sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | "sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | |||
+sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>";\ | +sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>";\ | |||
skipping to change at page 39, line 49 | skipping to change at page 40, line 4 | |||
Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | Call-ID: 1j9FpLxk3uxtm8tn@192.0.2.1 | |||
CSeq: 1 REGISTER | CSeq: 1 REGISTER | |||
Contact: <sip:john@192.0.2.1>;\ | Contact: <sip:john@192.0.2.1>;\ | |||
pub-gruu="sip:john@example.com;\ | pub-gruu="sip:john@example.com;\ | |||
gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | gr=urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6";\ | |||
temp-gruu=\ | temp-gruu=\ | |||
"sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | "sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr";\ | |||
+sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>";\ | +sip.instance="<urn:uuid:f81d4fae-7dec-11d0-a765-00a0c91e6bf6>";\ | |||
expires=3600 | expires=3600 | |||
Content-Length: 0 | Content-Length: 0 | |||
Assuming Alice has a knowledge of a temp-gruu, she places a | Assuming Alice has a knowledge of a temp-gruu, she places a | |||
call to the temp-gruu. | call to the temp-gruu. | |||
F3 INVITE Alice -> Example.com | F3 INVITE Alice -> Example.com | |||
INVITE sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;\ | INVITE sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;\ | |||
gr SIP/2.0 | gr SIP/2.0 | |||
Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 69 | Max-Forward: 70 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: <sip:sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com\ | To: <sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com\ | |||
;gr> | ;gr> | |||
Supported: gruu, histinfo | Supported: gruu, histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
History-Info: \ | History-Info: \ | |||
<sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr>\ | <sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr>\ | |||
;index=1 | ;index=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
F4 INVITE Example.com -> John | F4 INVITE Example.com -> John | |||
INVITE sip:john@192.0.2.1 SIP/2.0 | INVITE sip:john@192.0.2.1 SIP/2.0 | |||
Via: SIP/2.0/TCP proxy.example.com:5060;branch=z9hG4bK12s4 | Via: SIP/2.0/UDP proxy.example.com:5060;branch=z9hG4bK12s4 | |||
Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | Via: SIP/2.0/UDP 192.0.2.3:5060;branch=z9hG4bK42t2 | |||
Max-Forward: 68 | Max-Forward: 69 | |||
From: Alice <sip:alice@example.com>;tag=kkaz- | From: Alice <sip:alice@example.com>;tag=kkaz- | |||
To: <sip:sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com\ | To: <sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com\ | |||
;gr> | ;gr> | |||
Supported: gruu, histinfo | Supported: gruu, histinfo | |||
Call-Id: 12345600@example.com | Call-Id: 12345600@example.com | |||
CSeq: 1 INVITE | CSeq: 1 INVITE | |||
Record-Route: <sip:proxy.example.com;lr> | Record-Route: <sip:proxy.example.com;lr> | |||
History-Info: \ | History-Info: \ | |||
<sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr>\ | <sip:tgruu.7hs==jd7vnzga5w7fajsc7-ajd6fabz0f8g5@example.com;gr>\ | |||
;index=1 | ;index=1 | |||
History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | History-Info: <sip:john@192.0.2.1>;index=1.1;rc=1 | |||
Contact: Alice <sip:alice@192.0.2.3> | Contact: Alice <sip:alice@192.0.2.3> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
Figure 9: Figure 9. Limited Use Address Example | Figure 9: Figure 9: Limited Use Address Example | |||
By analyzing the entry referenced by the entry with the last "rc", | By analyzing the entry referenced by the entry with the last "rc", | |||
one can realize that the URI used to reach the device was GRUU by | one can realize that the URI used to reach the device was GRUU by | |||
finding the "gr" parameter. | finding the "gr" parameter. | |||
3.10. Service Invocation | 3.10. Service Invocation | |||
Several SIP specifications have been developed which make use of | Several SIP specifications have been developed which make use of | |||
complex URIs to address services within the network rather than | complex URIs to address services within the network rather than | |||
subscribers. The URIs are complex because they contain numerous | subscribers. The URIs are complex because they contain numerous | |||
skipping to change at page 43, line 49 | skipping to change at page 43, line 49 | |||
History-Info: <sip:+18005551002@example.com;user=phone>;index=1 | History-Info: <sip:+18005551002@example.com;user=phone>;index=1 | |||
History-Info: <sip:+15555551002@atlanta.com>;index=1.1;mp=1 | History-Info: <sip:+15555551002@atlanta.com>;index=1.1;mp=1 | |||
History-Info: <sip:john@atlanta.com>;index=1.1.1;rc=1.1 | History-Info: <sip:john@atlanta.com>;index=1.1.1;rc=1.1 | |||
History-Info: <sip:john@198.51.100.2>;index=1.1.1.1;rc=1.1.1 | History-Info: <sip:john@198.51.100.2>;index=1.1.1.1;rc=1.1.1 | |||
Contact: <sip:alice@192.0.2.1> | Contact: <sip:alice@192.0.2.1> | |||
Content-Type: application/sdp | Content-Type: application/sdp | |||
Content-Length: <appropriate value> | Content-Length: <appropriate value> | |||
[SDP Not Shown] | [SDP Not Shown] | |||
Figure 10: Figure 10. Service Number Example | Figure 10: Figure 10: Service Number Example | |||
4. Security Considerations | 4. Security Considerations | |||
The security considerations for the History-Info header field are | The security considerations for the History-Info header field are | |||
specified in [I-D.ietf-sipcore-rfc4244bis]. | specified in [I-D.ietf-sipcore-rfc4244bis]. | |||
5. IANA Considerations | 5. IANA Considerations | |||
This document has no IANA considerations. | This document has no IANA considerations. | |||
End of changes. 73 change blocks. | ||||
249 lines changed or deleted | 252 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |