Internet Engineering Task Force Alan Johnston
Internet Draft WorldCom
Document: draft-ietf-sip-call-flows-01.txt Steve Donovan
Category: Informational Robert Sparks
July 2000 Chris Cunningham
Expires: January 2001 Dean Willis
Jonathan Rosenberg
dynamicsoft
Kevin Summers
TTI
Henning Schulzrinne
Columbia University
SIP Telephony Call Flow Examples
Status of this Memo
This document is an Internet-Draft and is in full conformance with
all provisions of Section 10 of RFC2026[1].
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that other
groups may also distribute working documents as Internet-Drafts.
Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet- Drafts as reference
material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html.
Abstract
This document gives examples of SIP (Session Initiation Protocol)
call flows for IP telephony. Elements in these
call flows include SIP User Agents and Clients, SIP Proxy and
Redirect Servers, and Gateways to the PSTN (Public Switch Telephone
Network). IP telephony scenarios include SIP Registration, SIP to
SIP calling, SIP to Gateway, Gateway to SIP, and Gateway to Gateway
via SIP. Call flow diagrams and message details are shown. PSTN
telephony protocols are illustrated using ISDN (Integrated Services
Digital Network), ANSI ISUP (ISDN User Part), and FGB (Feature Group
B) circuit associated signaling. PSTN calls are illustrated using
global telephone numbers from the PSTN and private extensions served
on by a PBX (Private Branch Exchange). Example SIP messages used for
testing during SIP "bakeoff" events include SIP "torture test"
messages, and messages with invalid parameters, methods, and tags.
Johnston, et al. [Page 1]
Internet Draft SIP Telephony Call Flow Examples July 2000
Table of Contents
1 Overview...................................................3
1.1 General Assumptions........................................4
1.2 Legend for Message Flows...................................6
1.3 SIP Protocol Assumptions...................................6
1.4 Changes to 00 draft .......................................7
2 SIP Registration Services..................................8
2.1 Success Scenarios..........................................8
2.1.1 SIP Client New Registration................................8
2.1.2 User updates contact list.................................11
2.1.3 User Requests Current Contact List........................13
2.1.4 User Cancels Registration.................................15
2.2 Failure Scenarios.........................................16
2.2.1 Unsuccessful SIP registration.............................16
3 SIP to SIP Dialing........................................18
3.1 Success Scenarios.........................................18
3.1.1 Successful Simple SIP to SIP..............................19
3.1.2 Successful SIP to SIP through two proxies.................22
3.1.3 Successful SIP to SIP with Proxy failure..................31
3.1.4 Successful SIP to SIP through SIP Firewall Proxy..........39
3.1.5 Successful SIP to SIP via Redirect and Proxy..............47
3.2 Failure Scenarios.........................................53
3.2.1 Unsuccessful SIP to SIP no answer.........................53
3.2.2 Unsuccessful SIP to SIP busy..............................60
3.2.3 Unsuccessful SIP to SIP no response.......................64
3.2.4 Unsuccessful SIP to SIP Temporarily Unavailable...........69
4 SIP to Gateway Dialing....................................74
4.1 Success Scenarios.........................................74
4.1.1 Successful SIP to ISUP PSTN call..........................75
4.1.2 Successful SIP to ISDN PBX call...........................82
4.1.3 Successful SIP to ISUP PSTN call with overflow............93
4.2 Failure Scenarios........................................101
4.2.1 Unsuccessful SIP to PSTN call: Treatment from PSTN.......102
4.2.2 Unsuccessful SIP to PSTN: REL w/Cause from PSTN..........108
4.2.3 Unsuccessful SIP to PSTN: ANM Timeout....................112
5 Gateway to SIP Dialing...................................117
5.1 Success Scenarios........................................117
5.1.1 Successful PSTN to SIP call..............................118
5.1.2 Successful PSTN to SIP call, Fast Answer.................125
5.1.3 Successful PBX to SIP call...............................130
5.2 Failure Scenarios........................................136
5.2.1 Unsuccessful PSTN to SIP REL, SIP error mapped to REL....136
5.2.2 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL.....138
5.2.3 Unsuccessful PSTN->SIP, SIP error interworking to tones..142
5.2.4 Unsuccessful PSTN->SIP, ACM timeout......................146
5.2.5 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy.....151
5.2.6 Unsuccessful PSTN->SIP, ANM timeout......................156
6 Gateway to Gateway Dialing via SIP Network...............162
6.1 Success Scenarios........................................162
6.1.1 Successful ISUP PSTN to ISUP PSTN call...................163
Johnston, et al. Informational [Page 2]
Internet Draft SIP Telephony Call Flow Examples July 2000
6.1.2 Successful FGB PBX to ISDN PBX call with overflow........171
7 SIP Test Messages........................................180
7.1 INVITE Parser Torture Test Message.......................180
7.2 INVITE with Proxy-Require and Require....................181
7.3 INVITE with Unknown Schemes in URIs and URLs.............181
7.4 REGISTER with Y2038 Test.................................182
7.5 INVITE with inconsistent Accept and message body.........182
7.6 INVITE with non-SDP message body.........................183
7.7 Unknown Method Message...................................183
7.8 Unknown Method with CSeq Error...........................184
7.9 REGISTER with Unknown Authorization Scheme...............184
7.10 INVITE with Invalid SIP Version Number...................185
7.11 INVITE missing Required Headers..........................186
7.12 INVITE with Duplicate Required Headers...................186
7.13 INVITE with Illegal Expires Header.......................187
7.14 200 OK Response with Broadcast Via Header................187
7.15 INVITE with Invalid Via and Contact Headers..............188
7.16 INVITE with Incorrect Content-Length Header..............188
7.17 INVITE with Invalid Value for Content-Length.............189
7.18 INVITE with Garbage after Message Body...................189
7.19 INVITE with Error in Display Name in To Header...........190
8 Acknowledgements.........................................191
9 References...............................................191
1 Overview
The call flows shown in this document were developed in the design of
a carrier-class SIP IP Telephony network. They represent an example
minimum set of functionality for SIP to be used in IP Telephony
applications. The message examples were developed during the SIP
interoperability testing "bake-offs."
It is the hope of the authors that this document will be useful for
SIP implementors, designers, and protocol researchers alike and will
help further the goal of a standard SIP implementation for IP
Telephony. It is envisioned that as changes to the standard and
additional RFCs are added that this document will reflect those
changes and represent the current state of a standard interoperable
SIP IP Telephony implementation.
These call flows are based on the current version 2.0 of SIP in
RFC2543[2]. Additions and changes to SIP necessary for PSTN
interworking are referenced as IETF Internet-Drafts as they are used
in the call flows.
Various PSTN signaling protocols are illustrated in this document:
ISDN (Integrated Services Digital Network), ANSI ISUP (ISDN User
Part) and FGB (Feature Group B) circuit associated signaling. They
were chosen to illustrate the nature of SIP/PSTN interworking - they
are not a complete or even representative set. Also, some details
Johnston, et al. Informational [Page 3]
Internet Draft SIP Telephony Call Flow Examples July 2000
and parameters of these PSTN protocols have been omitted. The intent
of this document was not to provide a complete and exact mapping of
PSTN protocols to SIP. Rather the emphasis is on the SIP signaling,
the message interaction, and the modifications to SIP currently
proposed to solve IP Telephony issues.
Finally, some example messages are given along with expected
behavior of clients and servers.
1.1 General Assumptions
A number of architecture, network, and protocol assumptions underlie
the call flows in this document. They are outlined in this section
so that they may be taken into consideration. Differences in these
assumptions will affect the nature of the call flows.
The authentication of SIP User Agents in these example call flows is
performed using SIP Digest[2].
No authentication of Gateways is shown, since it is assumed that:
. Gateways will only accept calls routed through a trusted Proxy.
. Proxies will perform the Client authentication.
. The Proxy and the Gateway will authenticate each other using
IPSec[4].
The SIP Proxy Server has access to a Location Manager and other
databases. Information present in the Request-URI and the context
(From header) is sufficient to determine to which proxy or gateway
the message should be routed. In most cases, a primary and secondary
route will be determined in case of Proxy or Gateway failure
downstream.
The Proxy Servers in these call flows insert Record-Route headers
into requests to ensure that they are in the signaling path for
future message exchanges. This allows them to implement features
later in the call.
Gateways receive enough information in the Request-URI field to
determine how to route a call, i.e. what trunk group or link to
select, what digits to outpulse, etc.
Gateways provide tones (ringing, busy, etc) and announcements to the
PSTN side based on SIP response messages, or pass along audio in-band
tones (ringing, busy tone, etc.) in an early media stream to the SIP
side.
Johnston, et al. Informational [Page 4]
Internet Draft SIP Telephony Call Flow Examples July 2000
Two types of Gateways are described in this document. The actual
names of Gateways will be vendor and implementation specific.
However, two catagories are described here since the type of Gateway
determines the form of the SIP URL used to identify them. The two
types are:
. Network Gateway. This high port count PSTN gateway originates
and terminates calls to the PSTN. Its use is shared by many
customers. Incoming calls from the PSTN have the From header
populated with a SIP URL containing the telephone number from
the calling party telephone number, if available. A Network
Gateway typically uses carrier protocols such as SS7.
. Enterprise Gateway. This low port count PBX (Private Branch
Exchange) gateway has trunks or lines for a single customer or
user. Incoming calls from the PBX have the From header
populated with a provisionable string which uniquely identifies
the customer, trunk group, or carrier. This allows private
numbers to be interpreted in their correct context. An
Enterprise Gateway typically uses SS7, ISDN, circuit associated
signaling, or other PBX interfaces.
The interactions between the Proxy and Gateway can be summarized as
follows:
. The SIP Proxy Server performs digit analysis and lookup and
locates the correct gateway.
. The SIP Proxy Server performs gateway location based on primary
and secondary routing.
Digit handling by the Gateways will be as follows:
. Dialed digits received from a Network or Enterprise Gateway will
be put in a SIP URL with a telephone number. The number will
either be globalized (e.g. sip:+1-314-555-1111@ngw.wcom.com
;user=phone) or left as a private number (sip:555-
6666@gw.wcom.com;phone-context=p1234) which will require
interpretation based on From header. The "phone-context"
qualifier is used to interpret the private number. It is used
the same as the tag of the same name from the tel URL draft[5].
All Gateways will need to be provisioned to be able to parse the
user portion of a Request-URI to determine the customer, trunk
group, or circuit referenced.
. The From header will be populated with a SIP URL with a
Johnston, et al. Informational [Page 5]
Internet Draft SIP Telephony Call Flow Examples July 2000
telephone number if it is Calling Party number (CgPN) from the
PSTN. If it is an Enterprise Gateway, a provisionable string
which uniquely identifies the customer, trunk group, or carrier
will be used in the sip URI (e.g. From:
sip:ProvisionableString@gw1.wcom.com;user=phone).
. Note that an alternative to using a SIP URL for telephone
numbers is the tel URL[5]. The major difference between using
the SIP URL and the tel URL is that the SIP URL is routable in a
SIP network (resolves down to an IP address) where the tel URL
is not (it just represents digits). For example, a SIP URL can
be used in a Contact header, but a tel URL can not.
These flows show UDP for transport. TCP could also be used.
1.2 Legend for Message Flows
Dashed lines (---) represent control messages that are mandatory to
the call scenario. These control messages can be SIP or PSTN
signaling.
Double dashed lines (===) represent media paths between network
elements.
Messages with parenthesis around name represent optional control
messages.
Messages are identified in the Figures as F1, F2, etc. This
references the message details in the table that follows the Figure.
Comments in the message details are shown in the following form:
/* Comments. */
1.3 SIP Protocol Assumptions
Except for the following, this call flows document uses the April
1999 version 2.0 of SIP defined by RFC2543[2]. The following
changes/extensions are assumed throughout:
. A Contact header is included with every INVITE message.
. A Contact header is included in every 200 OK Response.
. The 183 Session Progress response message[5] is used in SIP to
Gateway and Gateway to Gateway via SIP calling (Sections 4 and
6). The 183 response with SDP will cause the User Agent to
immediately play the SDP media stream to hear in-band call
progress information. See Section 4 for more information.
Johnston, et al. Informational [Page 6]
Internet Draft SIP Telephony Call Flow Examples July 2000
. A Content-Length header is present in every message, set to zero
if there is no message body.
. The final entry in a Route header is always the Contact
information obtained from the INVITE or 200 OK messages.
. In the SDP message bodies, the time field is "t=0 0" It is
expected that an actual SDP message body would have a non-zero
start timestamp.
1.4 Changes to 00 draft
The major changes between this draft and the previous draft are
listed below:
- SIP Telephony Service Examples have been removed from the draft.
They will be revised using the TRANSFER header in a separate
draft.
- Updated draft with RFC2543bis changes including: adding maddr to
all Record-Route and Route headers, adding branch tags to Via
headers inserted by proxies, added 487 response to CANCEL
scenarios.
- Added example of INFO method in 5.1.1.
- Added Session: media to all 183 messages.
- Corrected a number of typos including putting user=phone tags
inside <>, fixing Request-URI on PRACK, added missing tags, fixed
Request-URIs that did not match To header in initial INVITE.
- Corrected all registrations to have same Call-ID.
Johnston, et al. Informational [Page 7]
Internet Draft SIP Telephony Call Flow Examples July 2000
2 SIP Registration Services
2.1 Success Scenarios
Registration either validates or invalidates a SIP client for user
services provided by the SIP proxy and/or SIP server. Additionally,
the client provides one or more contact locations to the SIP server
with the registration request. Registration is used by a Proxy to
route incoming calls in an IP Telephony network. All these call
flows assume that registration requires authentication, otherwise an
imposter could "hijack" someone else's calls.
2.1.1 SIP Client New Registration
User B SIP Server
| |
| REGISTER F1 |
|------------------------------>|
| |
| 401 Unauthorized F2 |
|<------------------------------|
| |
| REGISTER F3 |
|------------------------------>|
| |
| 200 OK F4 |
|<------------------------------|
| |
User B initiates a new SIP session with the SIP Server (i.e. the user
"logs on to" the SIP server). User B sends a SIP REGISTER request to
the SIP server. The request includes the user's contact list. The
SIP server provides a challenge to User B. User B enters her/his
valid user ID and password. User B's SIP client encrypts the user
information according to the challenge issued by the SIP server and
sends the response to the SIP server. The SIP server validates the
user's credentials. It registers the user in its contact database
and returns a response (200 OK) to User B's SIP client. The response
includes the user's current contact list in Contact headers. The
format of the authentication shown is SIP digest as described by
RFC2543[2].
Message Details
F1 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
Johnston, et al. Informational [Page 8]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Content-Length: 0
F2 401 Unauthorized SIP Server -> User B
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
WWW-Authenticate: Digest realm="MCI WorldCom SIP", domain="wcom.com",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="", stale="FALSE",
algorithm="MD5"
Content-Length: 0
F3 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Authorization:Digest username="UserB", realm="MCI WorldCom SIP",
nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="",
uri="sip:ss2.wcom.com", response="dfe56131d1958046689cd83306477ecc"
Content-Length: 0
F4 200 OK SIP Server -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Johnston, et al. Informational [Page 9]
Internet Draft SIP Telephony Call Flow Examples July 2000
Contact: tel:+1-972-555-2222
Content-Length: 0
Johnston, et al. Informational [Page 10]
Internet Draft SIP Telephony Call Flow Examples July 2000
2.1.2 User updates contact list
User B SIP Server
| |
| REGISTER F1 |
|------------------------------>|
| |
| 200 OK F2 |
|<------------------------------|
| |
User B wishes to update the list of addresses where the SIP server
will redirect or forward INVITE requests.
User B sends a SIP REGISTER request to the SIP server. User B's
request includes an updated contact list. Since the user already has
authenticated with the server, the user supplies authentication
credentials with the request and is not challenged by the server.
The SIP server validates the user's credentials. It registers the
user in its contact database, updates the user's contact list, and
returns a response (200 OK) to User B's SIP client. The response
includes the user's current contact list in Contact headers.
Message Details
F1 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: mailto:UserB@there.com
Authorization:Digest username="UserB", realm="MCI WorldCom SIP",
nonce="1cec4341ae6cbe5a359ea9c8e88df84f", opaque="",
uri="sip:ss2.wcom.com", response="71ba27c64bd01de719686aa4590d5824"
Content-Length: 0
F2 200 OK SIP Server -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Johnston, et al. Informational [Page 11]
Internet Draft SIP Telephony Call Flow Examples July 2000
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Contact: mailto:UserB@there.com
Content-Length: 0
Johnston, et al. Informational [Page 12]
Internet Draft SIP Telephony Call Flow Examples July 2000
2.1.3 User Requests Current Contact List
User B SIP Server
| |
| REGISTER F1 |
|------------------------------>|
| |
| 200 OK F2 |
|<------------------------------|
| |
User B sends a register request to the Proxy Server containing no
Contact headers, indicating the user wishes to query the server for
the user's current contact list. Since the user already has
authenticated with the server, the user supplies authentication
credentials with the request and is not challenged by the server. The
SIP server validates the user's credentials. It registers the user
in its contact database and returns a response (200 OK) to User B's
SIP client. The response includes the user's current contact list in
Contact headers.
Message Details
F1 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Authorization:Digest username="UserB", realm="MCI WorldCom SIP",
nonce="df84f1cec4341ae6cbe5ap359a9c8e88", opaque="",
uri="sip:ss2.wcom.com", response="aa7ab4678258377c6f7d4be6087e2f60"
Content-Length: 0
F2 200 OK SIP Server -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Contact: mailto:UserB@there.com
Content-Length: 0
Johnston, et al. Informational [Page 13]
Internet Draft SIP Telephony Call Flow Examples July 2000
Johnston, et al. Informational [Page 14]
Internet Draft SIP Telephony Call Flow Examples July 2000
2.1.4 User Cancels Registration
User B SIP Server
| |
| REGISTER F1 |
|------------------------------>|
| |
| 200 OK F2 |
|<------------------------------|
| |
User B wishes to cancel her/his registration with the SIP
registrar/redirect server. User B sends a SIP REGISTER request to the
SIP server. The request has an expiration period of 0 and applies to
all existing contact locations. Since the user already has
authenticated with the server, the user supplies authentication
credentials with the request and is not challenged by the server.
The SIP server validates the user's credentials. It clears the
user's contact list, and returns a response (200 OK) to User B's SIP
client.
Message Details
F1 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Expires: 0
Contact: *
Authorization:Digest username="UserB", realm="MCI WorldCom SIP",
nonce="88df84f1cac4341aea9c8ee6cbe5a359", opaque="",
uri="sip:ss2.wcom.com", response="ff0437c51696f9a76244f0cf1dbabbea"
Content-Length: 0
F2 200 OK SIP Server -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Content-Length: 0
Johnston, et al. Informational [Page 15]
Internet Draft SIP Telephony Call Flow Examples July 2000
2.2 Failure Scenarios
2.2.1 Unsuccessful SIP registration
User B SIP Server
| |
| REGISTER F1 |
|------------------------------>|
| |
| 401 Unauthorized F2 |
|<------------------------------|
| |
| REGISTER F3 |
|------------------------------>|
| |
| 401 Unauthorized F4 |
|<------------------------------|
| |
User B sends a SIP REGISTER request to the SIP Server. The SIP
server provides a challenge to User B. User B enters her/his user ID
and password. User B's SIP client encrypts the user information
according to the challenge issued by the SIP server and sends the
response to the SIP server. The SIP server attempts to validate the
user's credentials, but they are not valid (the user's password does
not match the password established for the user's account). The
server returns a response (401 Unauthorized) to User B's SIP client.
Message Details
F1 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Content-Length: 0
F2 Unauthorized SIP Server -> User B
Johnston, et al. Informational [Page 16]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
WWW-Authenticate: Digest realm="MCI WorldCom SIP", domain="wcom.com",
nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="", stale="FALSE",
algorithm="MD5"
Content-Length: 0
F3 REGISTER B -> SIP Server
REGISTER sip:ss2.wcom.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
Contact: LittleGuy <sip:UserB@there.com>
Contact: sip:+1-972-555-2222@gw1.wcom.com;user=phone
Contact: tel:+1-972-555-2222
Authorization:Digest username="UserB", realm="MCI WorldCom SIP",
nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="",
uri="sip:ss2.wcom.com", response="61f8470ceb87d7ebf508220214ed438b"
Content-Length: 0
/* The response above encodes the incorrect password _IForgotIt_ */
F4 401 Unauthorized SIP Server -> User B
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 123456789@here.com
CSeq: 1 REGISTER
WWW-Authenticate: Digest realm="MCI WorldCom SIP", domain="wcom.com",
nonce="84f1c1ae6cbe5ua9c8e88dfa3ecm3459", opaque="", stale="FALSE",
algorithm="MD5"
Content-Length: 0
Johnston, et al. Informational [Page 17]
Internet Draft SIP Telephony Call Flow Examples July 2000
3 SIP to SIP Dialing
3.1 Success Scenarios
This section details calls between two SIP User Agent Clients (UACs)
- User A and User B. User A (LittleGuy sip:UserA@here.com) and User
B (BigGuy sip:UserB@there.com) are assumed to be SIP phones or SIP-
enabled devices. Calls route using at least one SIP Proxy server.
The successful calls show the initial signaling, the exchange of
media information in the form of SDP payloads, the establishment of
the media session, then finally the termination of the call.
SIP digest authentication is used by the first Proxy Server to
authenticate the caller User A. It is assumed that User B has
registered with Proxy Server Proxy 2 as per Section 2.1 to be able to
receive the calls.
Johnston, et al. Informational [Page 18]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.1.1 Successful Simple SIP to SIP
User A User B
| |
| INVITE F1 |
|----------------------->|
| (100 Trying) F2 |
|<-----------------------|
| 180 Ringing F3 |
|<-----------------------|
| |
| 200 OK F4 |
|<-----------------------|
| ACK F5 |
|----------------------->|
| Both Way RTP Media |
|<======================>|
| |
| BYE F6 |
|<-----------------------|
| 200 OK F7 |
|----------------------->|
| |
In this scenario, User A completes a call to User B directly.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 19]
Internet Draft SIP Telephony Call Flow Examples July 2000
F2 (100 Trying) User B -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F3 180 Ringing User B -> User A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F4 200 OK User B -> User A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 ACK User A -> User B
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 ACK
Johnston, et al. Informational [Page 20]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Length: 0
/* RTP streams are established between A and B */
/* User B Hangs Up with User A. */
F6 BYE User B -> User A
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F7 200 OK User A -> User B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
Johnston, et al. Informational [Page 21]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.1.2 Successful SIP to SIP through two proxies
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| 407 F2 | | |
|<---------------| | |
| ACK F3 | | |
|--------------->| | |
| INVITE F4 | | |
|--------------->| INVITE F5 | |
| (100) F6 |--------------->| INVITE F7 |
|<---------------| (100) F8 |--------------->|
| |<---------------| |
| | | 180 F9 |
| | 180 F10 |<---------------|
| 180 F11 |<---------------| |
|<---------------| | 200 F12 |
| | 200 F13 |<---------------|
| 200 F14 |<---------------| |
|<---------------| | |
| ACK F15 | | |
|--------------->| ACK F16 | |
| |--------------->| ACK F17 |
| | |--------------->|
| Both Way RTP Media |
|<================================================>|
| | | BYE F18 |
| | BYE F19 |<---------------|
| BYE F20 |<---------------| |
|<---------------| | |
| 200 F21 | | |
|--------------->| 200 F22 | |
| |--------------->| 200 F23 |
| | |--------------->|
| | | |
In this scenario, User A completes a call to User B using two proxies
Proxy 1 and Proxy 2. The initial INVITE (F1) does not contain the
Authorization credentials Proxy 1 requires, so a 407 Proxy
Authorization response is sent containing the challenge information.
A new INVITE (F4) is then sent containing the correct credentials and
the call proceeds. The call terminates when User B disconnects by
initiating a BYE message.
Proxy 1 inserts a Record-Route header into the INVITE message to
ensure that it is present in all subsequent message exchanges. Proxy
2 also inserts itself into the Record-Route header. The ACK (F15)
and BYE (F18) both have a Route header.
Johnston, et al. Informational [Page 22]
Internet Draft SIP Telephony Call Flow Examples July 2000
A tag is inserted by User B in message F9 since the initial INVITE
message contains more than one Via header and may have been forked.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 challenges User A for authentication */
F2 407 Proxy Authorization Required Proxy 1 -> User A
SIP/2.0 407 Proxy Authorization Required
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Proxy-Authenticate: Digest realm="MCI WorldCom SIP",
domain=_wcom.com_, nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359",
opaque="", stale="FALSE", algorithm="MD5"
Content-Length: 0
F3 ACK A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Johnston, et al. Informational [Page 23]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* User A responds be re-sending the INVITE with authentication
credentials in it. */
F4 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
uri="sip:ss1.wcom.com", response="42ce3cef44b22f50c6a6071bc8"
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 accepts the credentials and forwards the INVITE to Proxy
2. Proxy 1 is assumed to have been authenticated by Proxy 2 using
IPSec. Client for A prepares to receive data on port 49172 from the
network. */
F5 INVITE Proxy 1 -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
Johnston, et al. Informational [Page 24]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F6 (100 Trying) Proxy 1 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F7 INVITE Proxy 2 -> B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F8 (100 Trying) Proxy 2 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 25]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 180 Ringing B -> Proxy 2
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F10 180 Ringing Proxy 2 -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F11 180 Ringing Proxy 1 -> A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
F12 200 OK B -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 26]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F13 200 OK Proxy 2 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F14 200 OK Proxy 1 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Johnston, et al. Informational [Page 27]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F15 ACK A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 ACK
Content-Length: 0
F16 ACK Proxy 1 -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 ACK
Content-Length: 0
F17 ACK Proxy 2 -> B
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345601@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 28]
Internet Draft SIP Telephony Call Flow Examples July 2000
/* RTP streams are established between A and B */
/* User B Hangs Up with User A. */
F18 BYE User B -> Proxy 2
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
Route:
<sip:UserA@here.com;maddr=ss1.wcom.com>.<sip:UserA@here.com;maddr=100
.101.102.103>
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F19 BYE Proxy 2 -> Proxy 1
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
Route: <sip:UserA@here.com;maddr=100.101.102.103>
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F20 BYE Proxy 1 -> User A
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F21 200 OK User A -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
Johnston, et al. Informational [Page 29]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F22 200 OK Proxy 1 -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
F23 200 OK Proxy 2 -> User B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345601@here.com
CSeq: 1 BYE
Content-Length: 0
Johnston, et al. Informational [Page 30]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.1.3 Successful SIP to SIP with Proxy failure
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| INVITE F2 | | |
|--------------->| | |
| INVITE F3 | | |
|--------------->| | |
| INVITE F4 | | |
|--------------->| | |
| INVITE F5 | | |
|--------------->| | |
| INVITE F6 | | |
|--------------->| | |
| INVITE F7 | | |
|--------------->| | |
| CANCEL F8 | | |
|--------------->| | |
| INVITE F9 | |
|-------------------------------->| |
| 407 F10 | |
|<--------------------------------| |
| ACK F11 | |
|-------------------------------->| |
| INVITE F12 | |
|-------------------------------->| INVITE F13 |
| (100) F14 |--------------->|
|<--------------------------------| |
| | 180 F15 |
| 180 F16 |<---------------|
|<--------------------------------| |
| | 200 F17 |
| 200 F18 |<---------------|
|<--------------------------------| |
| ACK F19 | |
|-------------------------------->| ACK F20 |
| |--------------->|
| Both Way RTP Media |
|<================================================>|
| | BYE F21 |
| BYE F22 |<---------------|
|<--------------------------------| |
| 200 F23 | |
|-------------------------------->| 200 F24 |
| |--------------->|
| | |
Johnston, et al. Informational [Page 31]
Internet Draft SIP Telephony Call Flow Examples July 2000
In this scenario, User A completes a call to User B via a Proxy
Server. User A is configured for a primary SIP Proxy Server Proxy 1
and a secondary SIP Proxy Server Proxy 2 (Or is able to use DNS SRV
records to locate Proxy 1 and Proxy 2). Proxy 1 is out of service and
does not respond to INVITEs (it is reachable, but unresponsive).
After sending a CANCEL to Proxy 1, User A then completes the call to
User B using Proxy 2.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F2 INVITE A -> Proxy 1
Same as Message F1
F3 INVITE A -> Proxy 1
Same as Message F1
F4 INVITE A -> Proxy 1
Same as Message F1
F5 INVITE A -> Proxy 1
Same as Message F1
Johnston, et al. Informational [Page 32]
Internet Draft SIP Telephony Call Flow Examples July 2000
F6 INVITE A -> Proxy 1
Same as Message F1
F7 INVITE A -> Proxy 1
Same as Message F1
/* User A gives up on the unresponsive proxy and sends a CANCEL. If
any 200 OK responses come back to the INVITE, User A sends an ACK,
then a BYE. */
F8 CANCEL A -> Proxy 1
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
F9 INVITE A -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 2 challenges User A for authentication */
F10 407 Proxy Authorization Required Proxy 2 -> User A
Johnston, et al. Informational [Page 33]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 407 Proxy Authorization Required
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Proxy-Authenticate: Digest realm="MCI WorldCom SIP",
domain=_wcom.com_, nonce="1ae6cbe5ea9c8e8df84fqnlec434a359",
opaque="", stale="FALSE", algorithm="MD5"
Content-Length: 0
F11 ACK A -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345601@here.com
CSeq: 1 INVITE
Content-Length: 0
/* User A responds be re-sending the INVITE with authentication
credentials in it. */
F12 INVITE A -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", opaque="",
uri="sip:ss2.wcom.com", response="8a880c919d1a52f20a1593e228adf599"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 2 accepts the credentials and forwards the INVITE to User B.
Johnston, et al. Informational [Page 34]
Internet Draft SIP Telephony Call Flow Examples July 2000
Client for A prepares to receive data on port 49172 from the network.
*/
F13 INVITE Proxy 2 -> B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F14 (100 Trying) Proxy 2 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Content-Length: 0
F15 180 Ringing B -> Proxy 2
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Content-Length: 0
F16 180 Ringing Proxy 2 -> A
Johnston, et al. Informational [Page 35]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Content-Length: 0
F17 200 OK B -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F18 200 OK Proxy 2 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
Johnston, et al. Informational [Page 36]
Internet Draft SIP Telephony Call Flow Examples July 2000
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F19 ACK A -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 ACK
Content-Length: 0
F20 ACK Proxy 2 -> B
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345602@here.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between A and B */
/* User B Hangs Up with User A. */
F21 BYE User B -> Proxy 2
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP there.com:5060
Route: <sip:UserA@here.com;maddr=100.101.102.103>
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345602@here.com
CSeq: 1 BYE
Content-Length: 0
F22 BYE Proxy 2 -> User A
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 37]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call-ID: 12345602@here.com
CSeq: 1 BYE
Content-Length: 0
F23 200 OK User A -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345602@here.com
CSeq: 1 BYE
Content-Length: 0
F24 200 OK Proxy 2 -> User B
SIP/2.0 200 OK
Via: SIP/2.0/UDP there.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345602@here.com
CSeq: 1 BYE
Content-Length: 0
Johnston, et al. Informational [Page 38]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.1.4 Successful SIP to SIP through SIP Firewall Proxy
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| (100) F3 |--------------->| INVITE F4 |
|<---------------| (100) F5 |--------------->|
| |<---------------| (100) F6 |
| | |<---------------|
| | | 180 F7 |
| | 180 F8 |<---------------|
| 180 F9 |<---------------| |
|<---------------| | 200 F10 |
| | 200 F11 |<---------------|
| 200 F12 |<---------------| |
|<---------------| | |
| ACK F13 | | |
|--------------->| ACK F14 | |
| |--------------->| ACK F15 |
| | |--------------->|
| RTP Media | Both Way RTP Media |
|<==============>|<===============================>|
| BYE F16 | | |
|--------------->| BYE F17 | |
| |--------------->| BYE F18 |
| | |--------------->|
| | | 200 F19 |
| | 200 F20 |<---------------|
| 200 F21 |<---------------| |
|<---------------| | |
| | | |
User A completes a call to User B through a Firewall Proxy and a SIP
Proxy. The signaling message exchange is identical to 3.1.1 but the
media stream setup is not end-to-end - the Firewall proxy terminates
both media streams and bridges them. This is done by the Proxy
modifying the SDP in the INVITE (F1) and 200 OK (F11) messages.
In addition to firewall traversal, this back-to-back User Agent
Client and User Agent Server could be used as part of an anonymizer
service (in which all identifying information on User A would be
removed), or to perform codec media conversion, such as mu-law to A-
law conversion of PCM on an international call.
Message Details
F1 INVITE A -> SIP FW
INVITE sip:UserB@ fwp1.wcom.com SIP/2.0
Johnston, et al. Informational [Page 39]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="",
uri="sip:ss1.wcom.com", response="b3f392f9218a328b9294076d708e6815"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Client for A prepares to receive data on port 49172 from the
network. */
F2 INVITE SIP FW -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=fwp1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="",
uri="sip:ss1.wcom.com", response="b3f392f9218a328b9294076d708e6815"
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 200.201.202.203
t=0 0
m=audio 1000 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 (100 Trying) SIP FW -> A
Johnston, et al. Informational [Page 40]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* SIP FW prepares to proxy data from port 1000 to
100.101.102.103/49172. Proxy 1 uses a location manager function to
determine where B is located. Based upon location analysis the call
is forwarded to User B */
F4 INVITE Proxy 1 -> B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=fwp1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 200.201.202.203
t=0 0
m=audio 1000 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 (100 Trying) Proxy 1 -> SIP FW
SIP/2.0 100 Trying
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
Johnston, et al. Informational [Page 41]
Internet Draft SIP Telephony Call Flow Examples July 2000
F6 (100 Trying) B -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F7 180 Ringing B -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F8 180 Ringing Proxy 1 -> SIP FW
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 180 Ringing SIP FW -> A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F10 200 OK B -> Proxy 1
Johnston, et al. Informational [Page 42]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=fwp1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 133
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F11 200 OK Proxy 1 -> SIP FW
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw1.wcom.com:5060
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=fwp1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a =rtpmap:0 PCMU/8000
F12 200 OK SIP FW -> A
SIP/2.0 200 OK
Johnston, et al. Informational [Page 43]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=fwp1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 200.201.202.203
t=0 0
m=audio 1002 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* The Firewall Proxy prepares to proxy packets from port 1002 to
110.111.112.113/3456 */
F13 ACK A -> SIP FW
ACK sip:UserB@fwp1.wcom.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@here.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F14 ACK SIP FW -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F15 ACK Proxy 1 -> B
Johnston, et al. Informational [Page 44]
Internet Draft SIP Telephony Call Flow Examples July 2000
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between A and the Firewall Proxy and
between the Firewall Proxy and B*/
/* User A Hangs Up with User B. */
F16 BYE A -> SIP FW
BYE sip: UserB@fwp1.wcom.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@here.com;maddr=ss1.wcom.com>,
<sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F17 BYE SIP FW -> Proxy 1
BYE sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F18 BYE F18 Proxy 1 -> B
BYE sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
Johnston, et al. Informational [Page 45]
Internet Draft SIP Telephony Call Flow Examples July 2000
CSeq: 2 BYE
Content-Length: 0
F19 200 OK B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F20 200 OK Proxy 1 -> SIP FW
SIP/2.0 200 OK
Via: SIP/2.0/UDP fwp1.wcom.com:5060;branch=9471385739578.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F21 200 OK SIP FW -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
Johnston, et al. Informational [Page 46]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.1.5 Successful SIP to SIP via Redirect and Proxy
User A Redirect Proxy Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| 302 F2 | | |
|<---------------| | |
| ACK F3 | | |
|--------------->| | |
| INVITE F4 | |
|-------------------------------->| INVITE F5 |
| (100) F6 |--------------->|
|<--------------------------------| (100) F7 |
| |<---------------|
| | 180 F8 |
| 180 F9 |<---------------|
|<--------------------------------| |
| | 200 F10 |
| 200 F11 |<---------------|
|<--------------------------------| |
| ACK F12 | |
|-------------------------------->| ACK F13 |
| |--------------->|
| Both Way RTP Media |
|<================================================>|
| | BYE F14 |
| BYE F15 |<---------------|
|<--------------------------------| |
| 200 F16 | |
|-------------------------------->| 200 F17 |
| |--------------->|
| | |
In this scenario, User A places a call to User B using first a
Redirect server then a Proxy Server. The INVITE message is first
sent to the Redirect Server. The Server returns a 302 Moved
Temporarily response (F2) containing a Contact header with User B's
current SIP address. User A then generates a new INVITE and sends to
User B via the Proxy Server and the call proceeds normally.
The call is terminated when User B sends a BYE message.
Message Details
F1 INVITE A -> Redirect Proxy
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Johnston, et al. Informational [Page 47]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Client for A prepares to receive data on port 49172 from the
network. */
F2 302 Moved Temporarily Redirect Proxy -> A
SIP/2.0 302 Moved Temporarily
Contact: sip:UserB@everywhere.com
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F3 ACK A -> Redirect Proxy
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F4 INVITE A -> Proxy 2
INVITE sip:UserB@everywhere.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Johnston, et al. Informational [Page 48]
Internet Draft SIP Telephony Call Flow Examples July 2000
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 INVITE Proxy 2 -> B
INVITE sip:UserB@everywhere.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@everywhere.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F6 (100 Trying) Proxy 2 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F7 (100 Trying) B -> Proxy 2
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Johnston, et al. Informational [Page 49]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F8 180 Ringing B -> Proxy 2
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F9 180 Ringing Proxy 2 -> A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F10 200 OK B -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@everywhere.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: LittleGuy <sip:UserB@everywhere.com>
Content-Type: application/sdp
Content-Length: 145
v=0
o=UserB 2890844527 2890844527 IN IP4 everywhere.com
s=Session SDP
c=IN IP4 111.112.113.114
t=0 0
m=audio 3456 RTP/AVP 0
Johnston, et al. Informational [Page 50]
Internet Draft SIP Telephony Call Flow Examples July 2000
a=rtpmap:0 PCMU/8000
F11 200 OK Proxy -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 145
v=0
o=UserB 2890844527 2890844527 IN IP4 everywhere.com
s=Session SDP
c=IN IP4 111.112.113.114
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F12 ACK A -> Proxy 2
ACK sip:UserB@everyhere.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 ACK
Content-Length: 0
F13 ACK Proxy 2 -> B
ACK sip: UserB@everywhere.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 ACK
Content-Length: 0
/* RTP streams are established between A and B*/
Johnston, et al. Informational [Page 51]
Internet Draft SIP Telephony Call Flow Examples July 2000
/* User B Hangs Up with User A. */
F14 BYE B -> Proxy 2
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP everywhere.com:5060
Route: <sip:UserA@here.com;maddr=100.101.102.103>
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345600@here.com
CSeq: 1 BYE
Content-Length: 0
F15 BYE Proxy 2 -> A
BYE sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP everywhere.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345600@here.com
CSeq: 1 BYE
Content-Length: 0
F16 200 OK A -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP everywhere.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345600@here.com
CSeq: 1 BYE
Content-Length: 0
F17 200 OK Proxy 2 -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP everywhere.com:5060
From: LittleGuy <sip:UserB@there.com>;tag=314159
To: BigGuy <sip:UserA@here.com>
Call-ID: 12345600@here.com
CSeq: 1 BYE
Content-Length: 0
Johnston, et al. Informational [Page 52]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.2 Failure Scenarios
3.2.1 Unsuccessful SIP to SIP no answer
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| (100) F3 |--------------->| INVITE F4 |
|<---------------| (100) F5 |--------------->|
| |<---------------| |
| | | 180 F6 |
| | 180 F7 |<---------------|
| 180 F8 |<---------------| |
|<---------------| | |
| | | |
| CANCEL F9 | | |
|--------------->| | |
| 200 F10 | | |
|<---------------| CANCEL F11 | |
| |--------------->| |
| | 200 F12 | |
| |<---------------| |
| | | CANCEL F13 |
| | |--------------->|
| | | 200 F14 |
| | |<---------------|
| | | 487 F15 |
| | |<---------------|
| | | ACK F16 |
| | 487 F17 |--------------->|
| |<---------------| |
| | ACK F18 | |
| 487 F19 |--------------->| |
|<---------------| | |
| ACK F20 | | |
|--------------->| | |
| | | |
In this scenario, User A gives up on the call before User B answers
(sends a 200 OK response). User A sends a CANCEL (F9) since no final
response had been received from User B. If a 200 OK to the INVITE
had crossed with the CANCEL, User A would have sent an ACK then a BYE
to User B in order to properly terminate the call.
Note that the CANCEL message is acknowledged with a 200 OK on a hop
by hop basis, rather than end to end.
Johnston, et al. Informational [Page 53]
Internet Draft SIP Telephony Call Flow Examples July 2000
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="",
uri="sip:ss1.wcom.com", response="b00b416324679d7e243f55708d44be7b"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/*Client for A prepares to receive data on port 49172 from the
network.*/
F2 INVITE Proxy 1 -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
Johnston, et al. Informational [Page 54]
Internet Draft SIP Telephony Call Flow Examples July 2000
a=rtpmap:0 PCMU/8000
F3 (100 Trying) Proxy 1 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F4 INVITE Proxy 2 -> B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 (100 Trying) Proxy 2 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
Johnston, et al. Informational [Page 55]
Internet Draft SIP Telephony Call Flow Examples July 2000
F6 180 Ringing B -> Proxy 2
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F7 180 Ringing Proxy 2 -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F8 180 Ringing Proxy 1 -> A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 CANCEL A -> Proxy 1
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F10 200 OK Proxy 2 -> B
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Johnston, et al. Informational [Page 56]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F11 CANCEL Proxy 1 -> Proxy 2
CANCEL sip: UserA@here.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F12 200 OK Proxy 1 -> Proxy 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F13 CANCEL Proxy 2 -> B
CANCEL sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F14 200 OK A -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F15 487 Request Cancelled B -> Proxy 2
Johnston, et al. Informational [Page 57]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F16 ACK Proxy 2 -> B
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F17 487 Request Cancelled Proxy 2 -> Proxy 1
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F18 ACK Proxy 1 -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F19 487 Request Cancelled Proxy 1 -> A
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 58]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
F20 ACK A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 59]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.2.2 Unsuccessful SIP to SIP busy
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| (100) F3 |--------------->| INVITE F4 |
|<---------------| (100) F5 |--------------->|
| |<---------------| |
| | | 486 F6 |
| | |<---------------|
| | | ACK F7 |
| | 486 F8 |--------------->|
| |<---------------| |
| | ACK F9 | |
| 486 F10 |--------------->| |
|<---------------| | |
| ACK F11 | | |
|--------------->| | |
| | | |
In this scenario, User B is busy and sends a 486 Busy Here response
to User A's INVITE. Note that the 4xx response is ACKed at each
signaling leg.
Message Details
F1 INVITE User A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="",
uri="sip:ss1.wcom.com", response="702138b27d869ac8741e10ec643d55be"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 60]
Internet Draft SIP Telephony Call Flow Examples July 2000
/*Client for A prepares to receive data on port 49172 from the
network.*/
F2 INVITE Proxy 1 -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 (100 Trying) Proxy 1 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F4 INVITE Proxy 2 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Johnston, et al. Informational [Page 61]
Internet Draft SIP Telephony Call Flow Examples July 2000
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 (100 Trying) Proxy 2 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F6 486 Busy Here User B -> Proxy 2
SIP/2.0 486 Busy Here
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F7 ACK Proxy 2 -> User B
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F8 486 Busy Here Proxy 2 -> Proxy 1
Johnston, et al. Informational [Page 62]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 486 Busy Here
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 ACK Proxy 1 -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F10 486 Busy Here Proxy 1 -> User A
SIP/2.0 486 Busy Here
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F11 ACK User A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 63]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.2.3 Unsuccessful SIP to SIP no response
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| (100) F3 |--------------->| INVITE F4 |
|<---------------| (100) F5 |--------------->|
| |<---------------| INVITE F6 |
| | |--------------->|
| | | INVITE F7 |
| | |--------------->|
| | | INVITE F8 |
| | |--------------->|
| | | INVITE F9 |
| | |--------------->|
| | | INVITE F10 |
| | |--------------->|
| | | INVITE F11 |
| | |--------------->|
| | | CANCEL F12 |
| | 480 F13 |--------------->|
| |<---------------| |
| | ACK F14 | |
| 480 F15 |--------------->| |
|<---------------| | |
| ACK F16 | | |
|--------------->| | |
| | | |
In this example, there is no response from User B to User A's INVITE
messages being re-transmitted by Proxy 2. After the sixth re-
transmission, Proxy 2 gives up and sends a CANCEL to User B and a 480
No Response to User A. Note that the CANCEL would also be
retransmitted six times, as governed by SIP timer T1 as in Call Flow
5.2.6.
Message Details
F1 INVITE User A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
Johnston, et al. Informational [Page 64]
Internet Draft SIP Telephony Call Flow Examples July 2000
nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="",
uri="sip:ss1.wcom.com", response="7afc04be7961f053c24f80e7dbaf888f"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/*Client for A prepares to receive data on port 49172 from the
network.*/
F2 INVITE Proxy 1 -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 (100 Trying) Proxy 1 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
Johnston, et al. Informational [Page 65]
Internet Draft SIP Telephony Call Flow Examples July 2000
F4 INVITE Proxy 2 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 (100 Trying) Proxy 2 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F6 INVITE Proxy 2 -> User B
Resend of Message F4
F7 INVITE Proxy 2 -> User B
Resend of Message F4
F8 INVITE Proxy 2 -> User B
Resend of Message F4
Johnston, et al. Informational [Page 66]
Internet Draft SIP Telephony Call Flow Examples July 2000
F9 INVITE Proxy 2 -> User B
Resend of Message F4
F10 INVITE Proxy 2 -> User B
Resend of Message F4
F11 INVITE Proxy 2 -> User B
Resend of Message F4
F12 CANCEL Proxy 2 -> User B
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F13 480 No Response Proxy 2 -> Proxy 1
SIP/2.0 480 No Response
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F14 ACK Proxy 1 -> Proxy 2
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F15 480 No Response Proxy 1 -> User A
Johnston, et al. Informational [Page 67]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 480 No Response
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F16 ACK User A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 68]
Internet Draft SIP Telephony Call Flow Examples July 2000
3.2.4 Unsuccessful SIP to SIP Temporarily Unavailable
User A Proxy 1 Proxy 2 User B
| | | |
| INVITE F1 | | |
|--------------->| INVITE F2 | |
| (100) F4 |--------------->| INVITE F3 |
|<---------------| (100) F5 |--------------->|
| |<---------------| (100) F6 |
| | |<---------------|
| | | 180 F7 |
| | 180 F8 |<---------------|
| 180 F9 |<---------------| |
|<---------------| | 480 F10 |
| | |<---------------|
| | | ACK F11 |
| | 480 F12 |--------------->|
| |<---------------| |
| | ACK F13 | |
| 480 F14 |--------------->| |
|<---------------| | |
| ACK F15 | | |
|--------------->| | |
| | | |
In this scenario, User B initially sends a 180 Ringing response to
User A, indicating that alerting is taking place. However, then a
480 Unavailable is then sent to User A. This response is
acknowledged then proxied back to User A.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="",
uri="sip:ss1.wcom.com", response="59a46a91bf1646562a4d486c84b399db"
Content-Type: application/sdp
Content-Length: 132
v=0
Johnston, et al. Informational [Page 69]
Internet Draft SIP Telephony Call Flow Examples July 2000
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/*Client for A prepares to receive data on port 49172 from the
network.*/
F2 INVITE Proxy 1 -> Proxy 2
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 INVITE Proxy 2 -> B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:UserB@there.com;maddr=ss2.wcom.com>,
<sip:UserB@there.com;maddr=ss1.wcom.com>
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
Johnston, et al. Informational [Page 70]
Internet Draft SIP Telephony Call Flow Examples July 2000
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) Proxy 1 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 (100 Trying) Proxy 2 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F6 (100 Trying) User B -> Proxy 2
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F7 180 Ringing B -> Proxy 2
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 71]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F8 180 Ringing Proxy 2 -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 180 Ringing Proxy 1 -> A
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F10 480 Temporarily Unavailable B -> Proxy 2
SIP/2.0 480 Temporarily Unavailable
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F11 ACK Proxy 2 -> B
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss2.wcom.com:5060;branch=721e418c4.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 72]
Internet Draft SIP Telephony Call Flow Examples July 2000
F12 480 Temporarily Unavailable Proxy 2 -> Proxy 1
SIP/2.0 480 Temporarily Unavailable
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F13 ACK Proxy 1 -> Proxy 2
ACK sip: UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F14 480 Temporarily Unavailable Proxy 1 -> A
SIP/2.0 480 Temporarily Unavailable
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F15 ACK A -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:UserA@here.com>
To: LittleGuy <sip:UserB@there.com>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 73]
Internet Draft SIP Telephony Call Flow Examples July 2000
4 SIP to Gateway Dialing
In the following scenarios, User A (BigGuy sip:UserA@here.com) is a
SIP phone or other SIP-enabled device. User B is reachable via the
PSTN at global telephone number +1-972-555-2222. User A places a call
to User B through a Proxy Server Proxy 1 and a Network Gateway. In
other scenarios, User A places calls to User C, who is served via a
PBX (Private Branch Exchange) and is identified by a private
extension 444-3333, or global number +1-918-555-3333. Note that User
A uses his/her global telephone number +1-314-555-1111 in the From
header in the INVITE messages. This then gives the Gateway the
option of using this header to populate the calling party
identification field in subsequent signaling (CgPN in ISUP). Left
open is the issue of how the Gateway can determine the accuracy of
the telephone number, necessary before passing it as a valid CgPN in
the PSTN. Note that User A still uses his/her SIP URL in the Contact
header, since the call could be redirected back to the SIP network.
There is a major difference in the call flows in this section. In-
band alerting (ringing tone, busy tone, recorded announcements, etc.)
is present in the PSTN speech path after the receipt of the SS7
Address Complete Message (ACM) which maps to the SIP 180 Ringing
response. In a SIP to SIP call, the media path is not established
until the call is answered (200 OK sent). In order for the SIP
caller User A to hear this alerting, it is necessary that an early
media path be established to perform this. This is the purpose of
the 183 Session Progress[5] responses used throughout this document
in place of the 180 Ringing.
One example of the use of reliable provisional responses[6] for the
183 Session Progress message is given in scenario 4.1.2.
4.1 Success Scenarios
In these scenarios, User A is a SIP phone or other SIP-enabled
device. User A places a call to User B in the PSTN or User C on a
PBX through a Proxy Server Proxy 1 and a Gateway.
Johnston, et al. Informational [Page 74]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.1.1 Successful SIP to ISUP PSTN call
User A Proxy 1 NGW 1 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| (100) F2 | | |
|<---------------| INVITE F3 | |
| |--------------->| |
| | (100) F4 | |
| |<---------------| IAM F5 |
| | |--------------->|
| | | ACM F6 |
| | 183 F7 |<---------------|
| 183 F8 |<---------------| |
|<---------------| | |
| Both Way RTP Media | One Way Voice |
|<===============================>|<===============|
| | | ANM F9 |
| | 200 F10 |<---------------|
| 200 F11 |<---------------| |
|<---------------| | |
| ACK F12 | | |
|--------------->| ACK F13 | |
| |--------------->| |
| Both Way RTP Media | Both Way Voice |
|<===============================>|<==============>|
| BYE F14 | | |
|--------------->| BYE F15 | |
| |--------------->| |
| | 200 F16 | |
| 200 F17 |<---------------| REL F18 |
|<---------------| |--------------->|
| | | RLC F19 |
| | |<---------------|
| | | |
User A dials the globalized E.164 number +1-972-555-2222 to reach
User B. Note that A might have only dialed the last 7 digits, or
some other dialing plan. It is assumed that the SIP User Agent
Client converts the digits into a global number and puts them into a
SIP URL.
User A could use either their SIP address (sip:UserA@here.com) or SIP
telephone number (sip:+1-314-555-1111@ss1.wcom.com;user=phone) in the
From header. In this example, the telephone number is included, and
it is shown as being passed as calling party identification through
the Network Gateway (NGW 1) to User B (F5). Note that for this
number to be passed into the SS7 network, it would have to be somehow
Johnston, et al. Informational [Page 75]
Internet Draft SIP Telephony Call Flow Examples July 2000
verified for accuracy.
In this scenario, User B answers the call then User A disconnects the
call. Signaling between NGW 1 and User B's telephone switch is ANSI
ISUP.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="dc3a5ab25302aa931904ba7d88fa1cf5", opaque="",
uri="sip:ss1.wcom.com", response="ccdca50cb091d587421457305d097458c"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F2 (100 Trying) Proxy 1 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to NGW
1. Client for A prepares to receive data on port 49172 from the
network.*/
F3 INVITE Proxy 1 -> NGW 1
Johnston, et al. Informational [Page 76]
Internet Draft SIP Telephony Call Flow Examples July 2000
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) NGW 1 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 IAM NGW 1 -> User B
IAM
CdPN=972-555-2222,NPI=E.164,NOA=National
CgPN=314-555-1111,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F6 ACM User B -> NGW 1
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Johnston, et al. Informational [Page 77]
Internet Draft SIP Telephony Call Flow Examples July 2000
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
F7 183 Session Progress NGW 1 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* NGW 1 sends PSTN audio (ringing) in the RTP path to A */
F8 183 Session Progress Proxy 1 -> User A
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
Johnston, et al. Informational [Page 78]
Internet Draft SIP Telephony Call Flow Examples July 2000
a=rtpmap:0 PCMU/8000
F9 ANM User B -> NGW 1
ANM
F10 200 OK NGW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: sip:+1-972-555-2222@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F11 200 OK Proxy 1 -> User A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: sip:+1-972-555-2222@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
Johnston, et al. Informational [Page 79]
Internet Draft SIP Telephony Call Flow Examples July 2000
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F12 ACK A -> Proxy 1
ACK sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:+1-972-555-2222@ngw1.wcom.com;maddr=ngw1.wcom.com
;user=phone>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F13 ACK Proxy 1 -> NGW 1
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between A and B (via NGW 1) */
/* User A Hangs Up with User B. */
F14 BYE A -> Proxy 1
BYE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:+1-972-555-2222@ngw1.wcom.com;maddr=ngw1.wcom.com
;user=phone>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F15 BYE Proxy 1 -> NGW 1
Johnston, et al. Informational [Page 80]
Internet Draft SIP Telephony Call Flow Examples July 2000
BYE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F16 200 OK NGW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F17 200 OK Proxy 1 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F18 REL NGW 1 -> B
REL
CauseCode=16 Normal
CodingStandard=CCITT
F19 RLC B -> NGW 1
RLC
Johnston, et al. Informational [Page 81]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.1.2 Successful SIP to ISDN PBX call
User A Proxy 1 GW 1 PBX C
| | | |
| INVITE F1 | | |
|--------------->| | |
| 406 F2 | | |
|<---------------| | |
| ACK F3 | | |
|--------------->| | |
| INVITE F4 | | |
|--------------->| | |
| (100) F5 | | |
|<---------------| INVITE F6 | |
| |--------------->| |
| | (100) F7 | |
| |<---------------| SETUP F8 |
| | |--------------->|
| | | CALL PROC F9 |
| | |<---------------|
| | | PROGress F10 |
| | 183 F11 |<---------------|
| 183 F12 |<---------------| |
|<---------------| | |
| PRACK F13 | | |
|--------------->| PRACK F14 | |
| |--------------->| |
| | 200 F15 | |
| 200 F16 |<---------------| |
|<---------------| | |
| Both Way RTP Media | One Way Voice |
|<===============================>|<===============|
| | | CONNect F17 |
| | |<---------------|
| | | CONNect ACK F18|
| | 200 F19 |--------------->|
| 200 F20 |<---------------| |
|<---------------| | |
| ACK F21 | | |
|--------------->| ACK F22 | |
| |--------------->| |
| Both Way RTP Media | Both Way Voice |
|<===============================>|<==============>|
| BYE F23 | | |
|--------------->| BYE F24 | |
| |--------------->| |
| | 200 F25 | |
| 200 F26 |<---------------| DISConnect F27 |
|<---------------| |--------------->|
| | | RELease F28 |
| | |<---------------|
Johnston, et al. Informational [Page 82]
Internet Draft SIP Telephony Call Flow Examples July 2000
| | | RELease COM F29|
| | |--------------->|
| | | |
User A is a SIP device while User C is connected via an Enterprise
Gateway (GW 1) to a PBX. The PBX connection is via a ISDN trunk
group. User A dials User C's telephone number (918-555-3333) which
is globalized and put into a SIP URL.
In this example, the initial INVITE is processed by the Proxy which
determines that the Enterprise Gateway in the call route requires the
in-band alerting response 183 Session Progress to be sent
reliably[6]. The absence of a Supported header in the INVITE
indicating support by User A of the Reliable Provisional Response
extension (100rel) causes the Proxy to reject the call
with a 406 Not Acceptable containing the Required:
100rel header. User A then re-sends the INVITE
containing the Supported header.
The phone-context tag in the Request-URI in the INVITE F6 is used to
identify the context (customer, trunk group, or line) in which the
private number 444-3333 is valid. Otherwise, this INVITE message
could get forwarded by GW 1 and the context of the digits could
become lost and the call unroutable. See section 1.1 for a
discussion of phone-context.
Proxy 1 looks up the telephone number and locates the Enterprise
Gateway that serves User C. User C is identified by its extension
(444-3333) in the Request-URI sent to GW 1.
User A hears the ringing provided by the Gateway on the media path
established after the 183 Session Progress response is received.
Signaling between GW1 and PBX C is shown as ISDN.
The 183 response contains the RSeq header which causes User A to
acknowledge receipt of the provisional response message by sending a
PRACK (Provisional Response Acknowledgement) request. GW 1 receives
the PRACK containing the RAck header and responds with a 200 OK.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Johnston, et al. Informational [Page 83]
Internet Draft SIP Telephony Call Flow Examples July 2000
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="qo0dc3a5ab22aa931904badfa1cf5j9h", opaque="",
uri="sip:ss1.wcom.com", response="6c792f5c9fa360358b93c7fb826bf550"
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. GW 1 requires use of Reliable Provisional Response. Since
User has not indicated that it supports this extension, the INVITE is
rejected. */
F2 406 Not Acceptable Proxy 1 -> User A
SIP/2.0 406 Not Acceptable
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Require: 100rel
Proxy-Authenticate: Digest realm="MCI WorldCom SIP",
domain=_wcom.com_, nonce="x41ae6cbe5aea9c8e8wf84f1cecz8d359",
opaque="", stale="FALSE", algorithm="MD5"
Content-Length: 0
F3 ACK A -> Proxy 1
ACK sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* User A re-sends the INVITE indicating support of the extension. */
F4 INVITE A -> Proxy 1
INVITE sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Johnston, et al. Informational [Page 84]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="x41ae6cbe5aea9c8e8wf84f1cecz8d359", opaque="",
uri="sip:ss1.wcom.com", response="f27e0e74cc29ee4761d342bdd6719edd"
Supported: 100rel
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F5 (100 Trying) Proxy 1 -> User A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F6 INVITE Proxy 1 -> GW 1
INVITE sip:444-3333@gw1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: BigGuy <sip:UserA@here.com>
Supported: 100rel
Content-Type: application/sdp
Content-Length: 147
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
Johnston, et al. Informational [Page 85]
Internet Draft SIP Telephony Call Flow Examples July 2000
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F7 (100 Trying) GW -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Content-Length: 0
F8 SETUP GW 1 -> User C
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=any valid value not in use
Message type=SETUP
Bearer capability: Information transfer capability=0 (Speech) or 16
(3.1 kHz audio)
Channel identification=Preferred or exclusive B-channel
Progress indicator=1 (Call is not end-to-end ISDN;further call
progress information may be available inband)
Called party number:
Type of number and numbering plan ID=?? (private numbering plan)
Digits=444-3333
F9 CALL PROCeeding User C -> GW 1
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F5 SETUP message
Message type=CALL PROC
Channel identification=Exclusive B-channel
F10 PROGress User C -> GW 1
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F5 SETUP message
Message type=PROG
Progress indicator=1 (Call is not end-to-end ISDN;further call
progress information may be available inband)
F11 183 Session Progress GW 1 -> Proxy 1
SIP/2.0 183 Session Progress
Johnston, et al. Informational [Page 86]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
RSeq: 42321
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 165
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* GW 1 will encode PSTN audio (ringing) to A in RTP path */
F12 183 Session Progress Proxy 1 -> User A
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP here.com:5060
RSeq: 42321
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 165
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* User A confirms reception of the 183 response */
F13 PRACK A -> Proxy 1
PRACK sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Johnston, et al. Informational [Page 87]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
RAck: 42321 2 INVITE
Route: <sip:444-3333@gw1.wcom.com;maddr=gw1.wcom.com
;phone-context=p1234>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 3 PRACK
Content-Length: 0
F14 PRACK Proxy 1 -> GW 1
PRACK sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
RAck: 42321 2 INVITE
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 3 PRACK
Content-Length: 0
F15 200 OK GW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 3 PRACK
Content-Length: 0
F16 200 OK Proxy 1 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 3 PRACK
Content-Length: 0
Johnston, et al. Informational [Page 88]
Internet Draft SIP Telephony Call Flow Examples July 2000
F17 CONNect User C -> GW 1
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F5 SETUP message
Message type=CONN
F18 CONNect ACK GW 1 -> User C
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=value in F5 SETUP message
Message type=CONN ACK
F19 200 OK GW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: sip:444-3333@gw1.wcom.com;phone-context=p1234
Content-Type: application/sdp
Content-Length: 165
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F20 200 OK Proxy 1 -> User A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 INVITE
Contact: sip:444-3333@gw1.wcom.com;phone-context=p1234
Content-Type: application/sdp
Content-Length: 165
Johnston, et al. Informational [Page 89]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F21 ACK A -> Proxy 1
ACK sip:444-3333@ss1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:444-3333@gw1.wcom.com;maddr=gw1.wcom.com
;phone-context=p1234>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 ACK
Content-Length: 0
F22 ACK Proxy 1 -> GW 1
ACK sip:444-3333@gw1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 ACK
Content-Length: 0
/* RTP streams are established between A and B (via GW 1) */
/* User A Hangs Up with User B. */
F23 BYE A -> Proxy 1
BYE sip:444-3333@ss1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:444-3333@gw1.wcom.com;maddr=gw1.wcom.com
;phone-context=p1234>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 4 BYE
Johnston, et al. Informational [Page 90]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Length: 0
F24 BYE Proxy 1 -> GW 1
BYE sip:444-3333@gw1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 4 BYE
Content-Length: 0
F25 200 OK GW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 4 BYE
Content-Length: 0
F26 200 OK Proxy 1 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: OtherGuy <sip:+1-918-555-3333@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 4 BYE
Content-Length: 0
F27 DISConnect GW 1 -> User C
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F4 SETUP message
Message type=DISC
Cause=16 (Normal clearing)
F28 RELease User C -> GW 1
Johnston, et al. Informational [Page 91]
Internet Draft SIP Telephony Call Flow Examples July 2000
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=value in F4 SETUP message
Message type=REL
F29 RELease COMplete GW 1 -> User C
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F4 SETUP message
Message type=REL COM
Johnston, et al. Informational [Page 92]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.1.3 Successful SIP to ISUP PSTN call with overflow
User A Proxy 1 NGW 1 NGW 2 User B
| | | | |
| INVITE F1 | | | |
|------------->| | | |
| | INVITE F2 | | |
| (100) F3 |------------->| | |
|<-------------| 503 F4 | | |
| |<-------------| | |
| | ACK F5 | | |
| |------------->| | |
| | INVITE F6 | |
| |---------------------------->| IAM F7 |
| | |------------->|
| | | ACM F8 |
| | 183 F9 |<-------------|
| 183 F10 |<----------------------------| |
|<-------------| | |
| Both Way RTP Media | One Way Voice|
|<==========================================>|<=============|
| | | ANM F11 |
| | 200 F12 |<-------------|
| 200 F13 |<----------------------------| |
|<-------------| | |
| ACK F14 | | |
|------------->| ACK F15 | |
| |---------------------------->| |
| Both Way RTP Media |Both Way Voice|
|<==========================================>|<============>|
| BYE F16 | | |
|------------->| BYE F17 | |
| |---------------------------->| |
| | 200 F18 | |
| 200 F19 |<----------------------------| REL F20 |
|<-------------| |------------->|
| | | RLC F21 |
| | |<-------------|
| | | |
User A calls User B through Proxy 1. Proxy 1 tries to route to a
Network Gateway NGW 1. GW 1 is not available and responds with a 503
Service Unavailable (F4). The call is then routed to Network Gateway
NGW 2. User B answers the call. The call is terminated when User A
disconnects the call. NGW 2 and User B's telephone switch use ANSI
ISUP signaling.
Message Details
F1 INVITE A -> Proxy 1
Johnston, et al. Informational [Page 93]
Internet Draft SIP Telephony Call Flow Examples July 2000
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="b59311c3ba05b401cf80b2a2c5ac51b0", opaque="",
uri="sip:ss1.wcom.com", response="ba6ab44923fa2614b28e3e3957789ab0"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. Proxy 1 receives a primary route NGW 1 and a secondary
route NGW 2. NGW 1 is tried first */
F2 INVITE Proxy 1 -> NGW 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 (100 Trying) Proxy 1 -> User A
Johnston, et al. Informational [Page 94]
Internet Draft SIP Telephony Call Flow Examples July 2000
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F4 503 Service Unavailable NGW 1 -> Proxy 1
SIP/2.0 503 Service Unavailable
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com
;user=phone;tag=123456789
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 ACK Proxy 1 -> NGW 1
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com>
;user=phone;tag=123456789
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* Proxy 1 now tries secondary route to NGW 2 */
F6 INVITE Proxy 1 -> NGW 2
INVITE sip:+1-972-555-2222@ngw2.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Johnston, et al. Informational [Page 95]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F7 IAM NGW 2 -> User B
IAM
CdPN=972-555-2222,NPI=E.164,NOA=National
CgPN=314-555-1111,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F8 ACM User B -> NGW 2
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
F9 183 Session Progress NGW 2 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
Johnston, et al. Informational [Page 96]
Internet Draft SIP Telephony Call Flow Examples July 2000
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* RTP path established between GW and A for audio (i.e. ringing) */
F10 183 Session Progress Proxy 1 -> User A
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F11 ANM User B -> NGW 2
ANM
F12 200 OK NGW 2 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: sip:+1-972-555-2222@ngw2.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
Johnston, et al. Informational [Page 97]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F13 200 OK Proxy 1 -> User A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: sip:+1-972-555-2222@ngw2.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F14 ACK A -> Proxy 1
ACK sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:+1-972-555-2222@ngw2.wcom.com;maddr=ngw2.wcom.com
;user=phone>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F15 ACK Proxy 1 -> NGW 2
ACK sip:+1-972-555-2222@ngw2.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Johnston, et al. Informational [Page 98]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between A and B(via the GW) */
/* User A Hangs Up with User B. */
F16 BYE A -> Proxy 1
BYE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
Route: <sip:+1-972-555-2222@ngw2.wcom.com;maddr=ngw2.wcom.com
;user=phone>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F17 BYE Proxy 1 -> NGW 2
BYE sip:+1-972-555-2222@ngw2.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F18 200 OK NGW 2 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
Johnston, et al. Informational [Page 99]
Internet Draft SIP Telephony Call Flow Examples July 2000
F19 200 OK Proxy 1 -> User A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 2 BYE
Content-Length: 0
F20 REL NGW 2 -> B
REL
CauseCode=16 Normal
CodingStandard=CCITT
F21 RLC B -> NGW 2
RLC
Johnston, et al. Informational [Page 100]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.2 Failure Scenarios
In these failure scenarios, the call does not complete. In most
cases, however, a media stream is still setup. This is due to the
fact that most failures in dialing to the PSTN result in in-band
tones (busy, reorder tones or announcements - "The number you have
dialed has changed. The new number is..."). The 183 Session
Progress[5] response containing SDP media information is used to
setup this early media path so that the caller User A knows the final
disposition of the call.
The media stream is either terminated by the caller after the tone or
announcement has been heard and understood, or by the Gateway after a
timer expires.
In other failure scenarios, a SS7 Release with Cause Code is mapped
to a SIP response. In these scenarios, the early media path is not
used, but the actual failure code is conveyed to the caller by the
SIP User Agent Client.
Johnston, et al. Informational [Page 101]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.2.1 Unsuccessful SIP to PSTN call: Treatment from PSTN
User A Proxy 1 NGW 1 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| (100) F2 | | |
|<---------------| INVITE F3 | |
| |--------------->| |
| | (100) F4 | |
| |<---------------| IAM F5 |
| | |--------------->|
| | | ACM F6 |
| | 183 F7 |<---------------|
| 183 F8 |<---------------| |
|<---------------| | |
| Both Way RTP Media | One Way Voice |
|<===============================>|<===============|
| Treatment Applied |
|<=================================================|
| CANCEL F9 | | |
|--------------->| | |
| 200 F10 | | |
|<---------------| CANCEL F11 | |
| |--------------->| |
| | 200 F12 | |
| |<---------------| REL F13 |
| | |--------------->|
| | | RLC F14 |
| | 487 F15 |<---------------|
| |<---------------| |
| | ACK F16 | |
| 487 F17 |--------------->| |
|--------------->| | |
| ACK F18 | | |
|--------------->| | |
| | | |
User A calls User B in the PSTN through a proxy server Proxy 1 and a
Network Gateway NGW 1. The call is rejected by the PSTN with an in-
band treatment (tone or recording) played. User A hears the
treatment and then issues a CANCEL (F9) to terminate the call. (A BYE
is not sent since no final response was ever received by User A.)
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Johnston, et al. Informational [Page 102]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="01cf8311c3b0b2a2c5ac51bb59a05b40", opaque="",
uri="sip:ss1.wcom.com", response="e178fbe430e6680a1690261af8831f40"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F2 (100 Trying) Proxy 1 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to NGW
1. Client for A prepares to receive data on port 49172 from the
network. */
F3 INVITE Proxy 1 -> NGW 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
Johnston, et al. Informational [Page 103]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) NGW 1 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 IAM NGW 1 -> User B
IAM
CdPN=972-555-2222,NPI=E.164,NOA=National
CgPN=314-555-1111,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F6 ACM User B -> NGW 1
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
F7 183 Session Progress NGW 1 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
Johnston, et al. Informational [Page 104]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F8 183 Session Progress Proxy 1 -> User A
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F9 CANCEL A -> Proxy 1
CANCEL sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
Johnston, et al. Informational [Page 105]
Internet Draft SIP Telephony Call Flow Examples July 2000
F10 200 OK Proxy 1 -> A
SIP/2.0 200 OK
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F11 CANCEL Proxy 1 -> NGW 1
CANCEL sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F12 200 OK NGW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 CANCEL
Content-Length: 0
F13 REL NGW 1 -> B
REL
CauseCode=16 Normal
CodingStandard=CCITT
F14 RLC B -> NGW 1
RLC
F15 487 Request Cancelled NGW 1 -> Proxy 1
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
Johnston, et al. Informational [Page 106]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F16 ACK Proxy 1 -> NGW 1
ACK sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F17 487 Request Cancelled Proxy 1 -> A
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F18 ACK A -> Proxy 1
ACK sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 107]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.2.2 Unsuccessful SIP to PSTN: REL w/Cause from PSTN
User A Proxy 1 NGW 1 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| (100) F2 | | |
|<---------------| INVITE F3 | |
| |--------------->| |
| | (100) F4 | |
| |<---------------| IAM F5 |
| | |--------------->|
| | | REL(28) F6 |
| | |<---------------|
| | | RLC F7 |
| | 484 F8 |--------------->|
| |<---------------| |
| | ACK F9 | |
| |--------------->| |
| 484 F10 | | |
|<---------------| | |
| ACK F11 | | |
|--------------->| | |
| | | |
User A calls PSTN User B through a Proxy Server Proxy 1 and a Network
Gateway NGW 1. However, User A does not provide enough digits for
the call to be completed. The call is rejected by the PSTN with a
ANSI ISUP Release message REL containing a specific Cause value.
This cause value (28) is mapped by the Gateway to a SIP 484 Address
Incomplete response which is proxied back to User A. For more
details of ISUP cause value to SIP responses refer to [9].
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:+44-1234@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="j1c3b0b01cf832da2c5ac51bb59a05b40", opaque="",
uri="sip:ss1.wcom.com", response="a451358d46b55512863efe1dccaa2f42"
Johnston, et al. Informational [Page 108]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F2 (100 Trying) Proxy 1 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to NGW1.
Client for A prepares to receive data on port 49172 from the network.
*/
F3 INVITE Proxy 1 -> NGW 1
INVITE sip:+44-1234@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 109]
Internet Draft SIP Telephony Call Flow Examples July 2000
F4 (100 Trying) NGW 1 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 IAM NGW 1 -> User B
IAM
CdPN=44-1234,NPI=E.164,NOA=International
CgPN=314-555-1111,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F6 REL User B -> NGW 1
REL
CauseValue=28 Address Incomplete
CodingStandard=CCITT
F7 RLC NGW 1 -> User B
RLC
/* Network Gateway maps CauseValue=28 to the SIP message 484 Address
Incomplete */
F8 484 Address Incomplete NGW 1 -> Proxy 1
SIP/2.0 484 Address Incomplete
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F9 ACK Proxy 1 -> NGW 1
Johnston, et al. Informational [Page 110]
Internet Draft SIP Telephony Call Flow Examples July 2000
ACK sip:+44-1234@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F10 484 Address Incomplete Proxy 1 -> User A
SIP/2.0 484 Address Incomplete
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F11 ACK User A -> Proxy 1
ACK sip:+44-1234@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+44-1234@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 111]
Internet Draft SIP Telephony Call Flow Examples July 2000
4.2.3 Unsuccessful SIP to PSTN: ANM Timeout
User A Proxy 1 NGW 1 User B
| | | |
| INVITE F1 | | |
|--------------->| | |
| (100) F2 | | |
|<---------------| INVITE F3 | |
| |--------------->| |
| | (100) F4 | |
| |<---------------| IAM F5 |
| | |--------------->|
| | | ACM F6 |
| | 183 F7 |<---------------|
| 183 F8 |<---------------| |
|<---------------| | |
| | Timer on NGW 1 Expires |
| | | |
| | | REL F9 |
| | |--------------->|
| | | RLC F10 |
| | 480 F11 |<---------------|
| |<---------------| |
| | ACK F12 | |
| |--------------->| |
| 480 F13 | | |
|<---------------| | |
| ACK F14 | | |
|--------------->| | |
User A calls User B in the PSTN through a proxy server Proxy 1 and
Network Gateway NGW 1. The call is released by the Gateway after a
timer expires due to no ANswer Message (ANM) being received. The
Gateway sends an ISUP Release REL message to the PSTN and a 480
Temporarily Unavailable response to User A in the SIP network.
Message Details
F1 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Authorization:Digest username="UserA", realm="MCI WorldCom SIP",
nonce="da2c5ac51bb59a05j1c3b0b01cf832b40", opaque="",
Johnston, et al. Informational [Page 112]
Internet Draft SIP Telephony Call Flow Examples July 2000
uri="sip:ss1.wcom.com", response="579cb9db184cdc25bf816f37cbc03c7d"
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to NGW
1. Client for A prepares to receive data on port 49172 from the
network.*/
F2 (100 Trying Proxy 1 -> A
SIP/2.0 100 Trying
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F3 INVITE Proxy 1 -> NGW 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Record-Route: <sip:+1-314-555-1111@ss1.wcom.com;maddr=ss1.wcom.com>
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Contact: BigGuy <sip:UserA@here.com>
Content-Type: application/sdp
Content-Length: 132
v=0
o=UserA 2890844526 2890844526 IN IP4 here.com
s=Session SDP
c=IN IP4 here.com
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 113]
Internet Draft SIP Telephony Call Flow Examples July 2000
F4 (100 Trying) NGW 1 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F5 IAM NGW 1 -> User B
IAM
CdPN=972-555-2222,NPI=E.164,NOA=National
CgPN=314-555-1111,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F6 ACM User B -> NGW 1
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
F7 183 Session Progress NGW 1 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
Johnston, et al. Informational [Page 114]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F8 183 Session Progress Proxy 1 -> User A
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* After NGW 1's timer expires, Network Gateway sends REL to ISUP
network and 480 to SIP network */
F9 REL NGW 1 -> User B
REL
CauseCode=16 Normal
CodingStandard=CCITT
F10 RLC User B -> NGW 1
RLC
F11 480 Temporarily Unavailable NGW 1 -> Proxy 1
SIP/2.0 480 Temporarily Unavailable
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP here.com:5060
Johnston, et al. Informational [Page 115]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F12 ACK Proxy 1 -> NGW 1
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
F13 480 Temporarily Unavailable F13 Proxy 1 -> User A
SIP/2.0 480 Temporarily Unavailable
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 INVITE
Content-Length: 0
F14 ACK User A -> Proxy 1
ACK sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP here.com:5060
From: BigGuy <sip:+1-314-555-1111@ss1.wcom.com;user=phone>
To: LittleGuy <sip:+1-972-555-2222@ss1.wcom.com;user=phone>
;tag=314159
Call-ID: 12345600@here.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 116]
Internet Draft SIP Telephony Call Flow Examples July 2000
5 Gateway to SIP Dialing
5.1 Success Scenarios
In these scenarios, User A is placing calls from the PSTN to User B
in a SIP network. User A's telephone switch signals to a Network
Gateway (NGW 1) using ANSI ISUP.
Since the called SIP User Agent does not send in-band signaling
information, no early media path needs to be established on the IP
side. As a result, the 183 Session Progress response is not used.
However, NGW 1 will establish a one way speech path prior to call
completion, and generate ringing for the PSTN caller. Any tones or
recordings are generated by NGW 1 and played in this speech path.
When the call completes successfully, NGW 1 bridges the PSTN speech
path with the IP media path. Alternatively, the Gateway could
redirect the call to an Announcement Server which would complete the
call and play announcements or tones as directed by the Gateway.
Johnston, et al. Informational [Page 117]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.1.1 Successful PSTN to SIP call
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 180 F5 |
| | 180 F6 |<---------------|
| ACM F7 |<---------------| |
|<---------------| | |
| One Way Voice | | |
|<===============| | |
| Ringing Tone | | 200 F8 |
|<===============| 200 F9 |<---------------|
| |<---------------| |
| | ACK F10 | |
| ANM F12 |--------------->| ACK F11 |
|<---------------| |--------------->|
| Both Way Voice | Both Way RTP Media |
|<==============>|<===============================>|
| DTMF Digit | | |
|===============>| INFO F13 | |
| |--------------->| INFO F14 |
| | |--------------->|
| | | 200 F15 |
| | 200 F16 |<---------------|
| |<---------------| |
| REL F17 | | |
|--------------->| | |
| RLC F18 | | |
|<---------------| BYE F19 | |
| |--------------->| BYE F20 |
| | |--------------->|
| | | 200 F21 |
| | 200 F22 |<---------------|
| |<---------------| |
| | | |
In this scenario, User A from the PSTN calls User B through a Network
Gateway NGW1 and Proxy Server Proxy 1. When User B answers the call
the media path is setup end-to-end. When User A presses a DTMF digit
in the PSTN, the Gateway sends an INFO [8] message to User B
containing the DTMF digit. The call terminates when User A
hangs up the call, with User A's telephone switch sending an ISUP
RELease message which is mapped to a BYE by NGW 1.
Message Details
Johnston, et al. Informational [Page 118]
Internet Draft SIP Telephony Call Flow Examples July 2000
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to NGW
1. NGW 1 prepares to receive data on port 3456 from User A.*/
F3 INVITE Proxy 1 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
Johnston, et al. Informational [Page 119]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) User B -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 180 Ringing User B -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone>;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F6 180 Ringing Proxy 1 -> NGW 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F7 ACM NGW 1 -> User A
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Johnston, et al. Informational [Page 120]
Internet Draft SIP Telephony Call Flow Examples July 2000
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
F8 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
Contact: LittleGuy <sip:UserB@there.com>
CSeq: 1 INVITE
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F9 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 121]
Internet Draft SIP Telephony Call Flow Examples July 2000
F10 ACK NGW 1 -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F11 ACK Proxy 1 -> User B
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F12 ANM User B -> NGW 1
ANM
/* RTP streams are established between A and B (via the GW) */
/* User A presses the DTMF Digit 9. The Gateway detects the digit
and sends an INFO message to User B containing the DTMF digit encoded
as text. */
F13 INFO NGW 1-> Proxy 1
INFO sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 INFO
Content-Type: text/plain
Content-Length: 8
DTMF 9
Johnston, et al. Informational [Page 122]
Internet Draft SIP Telephony Call Flow Examples July 2000
F14 INFO Proxy 1 -> User B
INFO sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 INFO
Content-Type: text/plain
Content-Length: 8
DTMF 9
F15 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 INFO
Content-Length: 0
F16 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 INFO
Content-Length: 0
/* User A Hangs Up with User B. */
F17 REL User A -> NGW 1
REL
CauseCode=16 Normal
CodingStandard=CCITT
F18 RLC NGW 1 -> User A
RLC
Johnston, et al. Informational [Page 123]
Internet Draft SIP Telephony Call Flow Examples July 2000
F19 BYE NGW 1-> Proxy 1
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 3 BYE
Content-Length: 0
F20 BYE Proxy 1 -> User B
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 3 BYE
Content-Length: 0
F21 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 3 BYE
Content-Length: 0
F22 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 3 BYE
Content-Length: 0
Johnston, et al. Informational [Page 124]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.1.2 Successful PSTN to SIP call, Fast Answer
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 200 F5 |
| | 200 F6 |<---------------|
| |<---------------| |
| | ACK F7 | |
| ANM F9 |--------------->| ACK F8 |
|<---------------| |--------------->|
| Both Way Voice | Both Way RTP Media |
|<==============>|<===============================>|
| REL F10 | | |
|--------------->| | |
| RLC F11 | | |
|<---------------| BYE F12 | |
| |--------------->| BYE F13 |
| | |--------------->|
| | | 200 F14 |
| | 200 F15 |<---------------|
| |<---------------| |
| | | |
This "fast answer" scenario is similar to 5.1.1 except that User B
immediately accepts the call, sending a 200 OK (F5) without sending a
180 Ringing response. The Gateway then sends an Answer Message (ANM)
without sending an Address Complete Message (ACM). Note that for
ETSI or ITU ISUP, a CONnect message (CON) would be sent instead of
the ANM.
Message Details
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE NGW 1 -> Proxy 1
Johnston, et al. Informational [Page 125]
Internet Draft SIP Telephony Call Flow Examples July 2000
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. Based upon location analysis the call is forwarded to User
B. User B prepares to receive data on port 3456 from User A.*/
F3 INVITE Proxy 1 -> User B
INVITE UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) Proxy 1 -> NGW 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Johnston, et al. Informational [Page 126]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F6 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 127]
Internet Draft SIP Telephony Call Flow Examples July 2000
F7 ACK NGW 1 -> Proxy 1
ACK UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F8 ACK Proxy 1 -> User B
ACK UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F9 ANM User B -> NGW 1
ANM
/* RTP streams are established between A and B (via the GW) */
/* User A Hangs Up with User B. */
F10 REL ser A -> NGW 1
REL
CauseCode=16 Normal
CodingStandard=CCITT
F11 RLC NGW 1 -> User A
RLC
F12 BYE NGW 1 -> Proxy 1
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Johnston, et al. Informational [Page 128]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
F13 BYE Proxy 1 -> User B
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
F14 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
F15 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
Johnston, et al. Informational [Page 129]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.1.3 Successful PBX to SIP call
PBX A GW 1 Proxy 1 User B
| | | |
| Seizure | | |
|--------------->| | |
| Wink | | |
|--------------->| | |
| MF Digits F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 180 F5 |
| | 180 F6 |<---------------|
| |<---------------| |
| One Way Voice | | |
|<===============| | |
| Ringing Tone | | 200 F7 |
|<===============| 200 F8 |<---------------|
| |<---------------| |
| | ACK F9 | |
| Seizure |--------------->| ACK F10 |
|<---------------| |--------------->|
| Both Way Voice | Both Way RTP Media |
|<==============>|<===============================>|
| Seizure Removal| | |
|--------------->| | |
| Seizure Removal| | |
|<---------------| BYE F11 | |
| |--------------->| BYE F12 |
| | |--------------->|
| | | 200 F13 |
| | 200 F14 |<---------------|
| |<---------------| |
| | | |
In this scenario, User A dials from PBX A to User B through GW 1 and
Proxy 1. This is an example of a call that appears destined for the
PSTN but instead is routed to a SIP Client.
Signaling between PBX A and GW 1 is Feature Group B (FGB) circuit
associated signaling, in-band Mult-Frequency (MF) outpulsing. After
the receipt of the 180 Ringing from User B, GW 1 generates ringing
tone for User A.
User B answers the call by sending a 200 OK. The call terminates
when User A hangs up, causing GW1 to send a BYE.
The Enterprise Gateway can only identify the trunk group that the
call came in on, it cannot identify the individual line on PBX A that
Johnston, et al. Informational [Page 130]
Internet Draft SIP Telephony Call Flow Examples July 2000
is placing the call. The SIP URL used to identify the caller is
shown in these flows as sip:IdentifierString@gw1.wcom.com. A unique
IdentifierString is provisioned on the Gateway against each incoming
trunk group.
Message Details
F1 MF Digits PBX A -> GW 1
KP 1 972 555 2222 ST
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Contact: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where the
phone number +1-972-555-2222 is located. Based upon location
analysis the call is forwarded to SIP User B. */
F3 INVITE Proxy 1 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Contact: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
Content-Type: application/sdp
Content-Length: 150
Johnston, et al. Informational [Page 131]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) Proxy 1 -> GW 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 180 Ringing User B -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F6 180 Ringing Proxy 1 -> GW 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
/* One way Voice path is established between GW and the PBX for
ringing. */
F7 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Johnston, et al. Informational [Page 132]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
Contact: LittleGuy <sip:UserB@there.com>
CSeq: 1 INVITE
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F8 200 OK Proxy 1 -> GW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Contact: LittleGuy <sip:UserB@there.com>
Content-Type: application/sdp
Content-Length: 134
v=0
o=UserB 2890844527 2890844527 IN IP4 there.com
s=Session SDP
c=IN IP4 110.111.112.113
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F9 ACK GW 1 -> Proxy 1
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP gw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 133]
Internet Draft SIP Telephony Call Flow Examples July 2000
F10 ACK Proxy 1 -> User B
ACK sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between A and B (via the GW) */
/* User A Hangs Up with User B. */
F11 BYE GW 1 -> Proxy 1
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP gw1.wcom.com:5060
Route: <sip:UserB@there.com;maddr=110.111.112.113>
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
F12 BYE Proxy 1 -> User B
BYE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
F13 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 2 BYE
Johnston, et al. Informational [Page 134]
Internet Draft SIP Telephony Call Flow Examples July 2000
Content-Length: 0
F14 200 OK Proxy 1 -> GW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com;user=phone>
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@gw1.wcom.com
CSeq: 2 BYE
Content-Length: 0
Johnston, et al. Informational [Page 135]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2 Failure Scenarios
5.2.1 Unsuccessful PSTN to SIP REL, SIP error mapped to REL
User A GW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| |
| | 604 F3 | |
| |<---------------| |
| | ACK F4 | |
| |--------------->| |
| REL F5 | | |
|<---------------| | |
| RLC F6 | | |
|--------------->| | |
| | | |
User A attempts to place a call through Gateway GW 1 and Proxy 1,
which is unable to find any routing for the number. The call is
rejected by Proxy 1 with a REL message containing a specific Cause
value mapped by the gateway based on the SIP error.
Message Details
F1 IAM User A -> GW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-9999,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-9999@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@gw1.wcom.com;user=phone
To: sip:+1-972-555-9999@ss1.wcom.com;user=phone
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@gw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
Johnston, et al. Informational [Page 136]
Internet Draft SIP Telephony Call Flow Examples July 2000
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager to find a route to +1-972-555-
9999. A route is not found, so Proxy 1 rejects the call. */
F3 604 Does Not Exist Anywhere Proxy 1 -> GW 1
SIP/2.0 604 Does Not Exist Anywhere
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@gw1.wcom.com;user=phone
To: sip:+1-972-555-9999@ss1.wcom.com;user=phone
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F4 ACK GW 1 -> Proxy 1
ACK sip:+1-972-555-9999@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@gw1.wcom.com;user=phone
To: sip:+1-972-555-9999@ss1.wcom.com;user=phone
Call-ID: 12345602@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F5 REL GW 1 -> User A
REL
CauseCode=1
CodingStandard=CCITT
F6 RLC User A -> GW 1
RLC
Johnston, et al. Informational [Page 137]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2.2 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 600 F5 |
| | |<---------------|
| | | ACK F6 |
| | 600 F7 |--------------->|
| |<---------------| |
| | ACK F8 | |
| |--------------->| |
| REL(17) F9 | | |
|<---------------| | |
| RLC F10 | | |
|<-------------->| | |
| | | |
In this scenario, User A calls User B through Network Gateway NGW 1
and Proxy 1. The call is routed to User B by Proxy 1. The call is
rejected by User B who sends a 600 Busy Everywhere response. The
Gateway sends a REL message containing a specific Cause value mapped
by the gateway based on the SIP error.
Since no interworking is indicated in the IAM (F1), the busy tone is
generated locally by User A's telephone switch. In scenario 5.2.3,
the busy signal is generated by the Gateway since interworking is
indicated. For more discussion on interworking, refer to [9].
Message Details
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Johnston, et al. Informational [Page 138]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine a route for
+1-972-555-2222. The call is then forwarded to User B. */
F3 INVITE F3 Proxy 1 -> User B
INVITE UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) Proxy 1 -> NGW 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
Johnston, et al. Informational [Page 139]
Internet Draft SIP Telephony Call Flow Examples July 2000
CSeq: 1 INVITE
Content-Length: 0
F5 600 Busy Everywhere User B -> Proxy 1
SIP/2.0 600 Busy Everywhere
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F6 ACK Proxy 1 -> User B
ACK UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F7 600 Busy Everywhere Proxy 1 -> NGW 1
SIP/2.0 600 Busy Everywhere
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F8 ACK NGW 1 -> Proxy 1
ACK UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F9 REL NGW 1 -> User A User A -> NGW 1
Johnston, et al. Informational [Page 140]
Internet Draft SIP Telephony Call Flow Examples July 2000
REL
CauseCode=17 Busy
CodingStandard=CCITT
F10 RLC User A -> NGW 1
RLC
Johnston, et al. Informational [Page 141]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2.3 Unsuccessful PSTN->SIP, SIP error interworking to tones
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 600 F5 |
| | |<---------------|
| | | ACK F6 |
| | 600 F7 |--------------->|
| |<---------------| |
| | ACK F8 | |
| ANM F9 |--------------->| |
|<---------------| | |
| Both Way Voice | | |
|<==============>| | |
| Busy Tone | | |
|<===============| | |
| REL(17) F10 | | |
|--------------->| | |
| RLC F11 | | |
|<---------------| | |
| | | |
In this scenario, User A calls User B through Network Gateway NGW1
and Proxy 1. The call is routed to User B by Proxy 1. The call is
rejected by the User B client. NGW 1 sets up a two way voice path to
User A, plays busy tone, and releases call after timeout.
NGW 1 plays the busy tone since the IAM (F1) indicates the
interworking is present. In scenario 5.2.2, with no interworking,
the busy indication is carried in the REL Cause value and is
generated locally instead.
Again, not that for ETSI or ITU ISUP, a CONnect message would be sent
intead of the Answer Message.
Message Details
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
Johnston, et al. Informational [Page 142]
Internet Draft SIP Telephony Call Flow Examples July 2000
CPT=0 0
C=Normal
CCI=Not Required
Interworking=encountered
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine a route for
+1-972-555-2222. The call is then forwarded to User B. */
F3 INVITE Proxy 1 -> User B
INVITE UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 143]
Internet Draft SIP Telephony Call Flow Examples July 2000
F4 (100 Trying) User B -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 600 Busy Everywhere User B -> Proxy 1
SIP/2.0 600 Busy Everywhere
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F6 ACK Proxy 1 -> User B
ACK UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F7 600 Busy Everywhere Proxy 1 -> NGW 1
SIP/2.0 600 Busy Everywhere
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
Johnston, et al. Informational [Page 144]
Internet Draft SIP Telephony Call Flow Examples July 2000
F8 ACK NGW 1 -> Proxy 1
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F9 ACM User B -> NGW 1
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
/* A two way speech path is established between NGW 1 and User A. */
/* Call Released after NGW treatment timer expires. */
F10 REL User A -> NGW 1
REL
CauseCode=17
CodingStandard=CCITT
F11 RLC NGW 1 -> User A
RLC
Johnston, et al. Informational [Page 145]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2.4 Unsuccessful PSTN->SIP, ACM timeout
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | INVITE F5 |
| | |--------------->|
| | | INVITE F6 |
| | |--------------->|
| | | INVITE F7 |
| | |--------------->|
| | | INVITE F8 |
| | |--------------->|
| | | INVITE F9 |
| | |--------------->|
| REL F10 | | |
|--------------->| | |
| RLC F11 | | |
|<---------------| | |
| | CANCEL F12 | |
| |--------------->| |
| | 200 F13 | |
| |<---------------| CANCEL F14 |
| | |--------------->|
| | | CANCEL F15 |
| | |--------------->|
| | | CANCEL F16 |
| | |--------------->|
| | | CANCEL F17 |
| | |--------------->|
| | | CANCEL F18 |
| | |--------------->|
| | | |
User A calls User B through NGW 1 and Proxy 1. Proxy 1 re-sends the
INVITE after the expiration of SIP timer T1 without receiving any
response from User B. User B never responds with 180 Ringing or any
other response (it is reachable but unresponsive). After the
expiration of a timer, User A's network disconnects the call by
sending a Release message REL. The Gateway maps this to a CANCEL
which is again re-sent by Proxy 1 after SIP T1 timer expires.
Message Details
F1 IAM User A -> NGW 1
IAM
Johnston, et al. Informational [Page 146]
Internet Draft SIP Telephony Call Flow Examples July 2000
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine a route for
+1-972-555-2222. The call is then forwarded to User B. */
F3 INVITE Proxy 1 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
c c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 147]
Internet Draft SIP Telephony Call Flow Examples July 2000
F4 100 Trying Proxy 1 -> NGW 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 INVITE Proxy 1 -> User B
Same as Message F3
F6 INVITE Proxy 1 -> User B
Same as Message F3
F7 INVITE Proxy 1 -> User B
Same as Message F3
F8 INVITE Proxy 1 -> User B
Same as Message F3
F9 INVITE Proxy 1 -> User B
Same as Message F3
/* Timer expires in User A's access network. */
F10 REL User A -> NGW 1
REL
CauseCode=16 Normal
CodingStandard=CCITT
F11 RLC NGW 1 -> User A
RLC
Johnston, et al. Informational [Page 148]
Internet Draft SIP Telephony Call Flow Examples July 2000
F12 CANCEL NGW 1 -> Proxy 1
CANCEL sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F13 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F14 CANCEL Proxy 1 -> User B
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F15 CANCEL Proxy 1 -> User B
Same as Message F14
F16 CANCEL Proxy 1 -> User B
Same as Message F14
F17 CANCEL Proxy 1 -> User B
Same as Message F14
F18 CANCEL Proxy 1 -> User B
Same as Message F14
Johnston, et al. Informational [Page 149]
Internet Draft SIP Telephony Call Flow Examples July 2000
F19 CANCEL Proxy 1 -> User B
Same as Message F14
Johnston, et al. Informational [Page 150]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2.5 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | INVITE F4 |--------------->|
| |--------------->| INVITE F5 |
| | INVITE F6 |--------------->|
| |--------------->| INVITE F7 |
| | INVITE F8 |--------------->|
| |--------------->| INVITE F9 |
| | INVITE F10 |--------------->|
| |--------------->| INVITE F11 |
| | INVITE F12 |--------------->|
| |--------------->| INVITE F13 |
| | |--------------->|
| REL F14 | | |
|--------------->| | |
| RLC F15 | | |
|<---------------| | |
| | CANCEL F16 | |
| |--------------->| CANCEL F17 |
| | CANCEL F18 |--------------->|
| |--------------->| CANCEL F19 |
| | CANCEL F20 |--------------->|
| |--------------->| CANCEL F21 |
| | CANCEL F22 |--------------->|
| |--------------->| CANCEL F23 |
| | CANCEL F24 |--------------->|
| |--------------->| CANCEL F25 |
| | CANCEL F26 |--------------->|
| |--------------->| CANCEL F27 |
| | |--------------->|
| | | |
In this scenario, User A calls User B through NGW 1 and Proxy 1.
Since Proxy 1 is stateless (it does not send a 100 Trying response),
NGW 1 re-sends the INVITE and CANCEL messages after the expiration of
SIP timer T1. User B does not respond with 180 Ringing. User A's
network disconnects the call with a release REL.
Message Details
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
Johnston, et al. Informational [Page 151]
Internet Draft SIP Telephony Call Flow Examples July 2000
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE NGW 1 -> Proxy 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine a route for
+1-972-555-2222. The call is then forwarded to User B. */
F3 INVITE Proxy 1 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
Johnston, et al. Informational [Page 152]
Internet Draft SIP Telephony Call Flow Examples July 2000
a=rtpmap:0 PCMU/8000
F4 INVITE NGW 1 -> Proxy 1
Same as Message F2
F5 INVITE Proxy 1 -> User B
Same as Message F3
F6 INVITE NGW 1 -> Proxy 1
Same as Message F2
F7 INVITE Proxy 1 -> User B
Same as Message F3
F8 INVITE NGW 1 -> Proxy 1
Same as Message F2
F9 INVITE Proxy 1 -> User B
Same as Message F3
F10 INVITE NGW 1 -> Proxy 1
Same as Message F2
F11 INVITE Proxy 1 -> User B
Same as Message F3
F12 INVITE NGW 1 -> Proxy 1
Same as Message F2
F13 INVITE Proxy 1 -> User B
Same as Message F3
Johnston, et al. Informational [Page 153]
Internet Draft SIP Telephony Call Flow Examples July 2000
/* A timer expires in User A's access network. */
F14 REL User A -> NGW 1
REL
CauseCode=16 Normal
CodingStandard=CCITT
F15 RLC NGW 1 -> User A
RLC
F16 CANCEL NGW 1 -> Proxy 1
CANCEL sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F17 CANCEL Proxy 1 -> User B
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F18 CANCEL NGW 1 -> Proxy 1
Same as Message F16
F19 CANCEL Proxy 1 -> User B
Same as Message F17
F20 CANCEL NGW 1 -> Proxy 1
Johnston, et al. Informational [Page 154]
Internet Draft SIP Telephony Call Flow Examples July 2000
Same as Message F16
F21 CANCEL Proxy 1 -> User B
Same as Message F17
F22 CANCEL NGW 1 -> Proxy 1
Same as Message F16
F23 CANCEL Proxy 1 -> User B
Same as Message F17
F24 CANCEL NGW 1 -> Proxy 1
Same as Message F16
F25 CANCEL Proxy 1 -> User B
Same as Message F17
F26 CANCEL NGW 1 -> Proxy 1
Same as Message F16
F27 CANCEL Proxy 1 -> User B
Same as Message F17
Johnston, et al. Informational [Page 155]
Internet Draft SIP Telephony Call Flow Examples July 2000
5.2.6 Unsuccessful PSTN->SIP, ANM timeout
User A NGW 1 Proxy 1 User B
| | | |
| IAM F1 | | |
|--------------->| INVITE F2 | |
| |--------------->| INVITE F3 |
| | (100) F4 |--------------->|
| |<---------------| |
| | | 180 F5 |
| | 180 F6 |<---------------|
| ACM F7 |<---------------| |
|<---------------| | |
| One Way Voice | | |
|<===============| | |
| Ringing Tone | | |
|<===============| | |
| | | |
| REL F8 | | |
|--------------->| | |
| RLC F9 | | |
|<---------------| CANCEL F10 | |
| |--------------->| |
| | 200 F11 | |
| |<---------------| |
| | | CANCEL F12 |
| | |--------------->|
| | | 200 F13 |
| | |<---------------|
| | | 487 F14 |
| | |<---------------|
| | | ACK F15 |
| | 487 F16 |--------------->|
| |<---------------| |
| | ACK F17 | |
| |--------------->| |
| | | |
In this scenario, User A calls User B through NGW 1 and Proxy 1.
User B does not respond with 200 OK. NGW 1 plays ringing tone since
the ACM indicates that interworking has been encountered. User A
disconnects the call with a Release message REL which is mapped by
NGW 1 to a CANCEL. Note that if User B had sent a 200 OK response
after the REL, NGW 1 would have sent an ACK then a BYE to properly
terminate the call.
Message Details
Johnston, et al. Informational [Page 156]
Internet Draft SIP Telephony Call Flow Examples July 2000
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=972-555-2222,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE A -> Proxy 1
INVITE sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine a route for
+1-972-555-2222. The call is then forwarded to User B. */
F3 INVITE Proxy 1 -> User B
INVITE sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 150
v=0
o=GATEWAY1 2890844527 2890844527 IN IP4 gatewayone.wcom.com
Johnston, et al. Informational [Page 157]
Internet Draft SIP Telephony Call Flow Examples July 2000
s=Session SDP
c=IN IP4 gatewayone.wcom.com
t=0 0
m=audio 3456 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 (100 Trying) User B -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 180 Ringing User B -> Proxy 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F6 180 Ringing Proxy 1 -> NGW 1
SIP/2.0 180 Ringing
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F7 ACM NGW 1 -> User A
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
Johnston, et al. Informational [Page 158]
Internet Draft SIP Telephony Call Flow Examples July 2000
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
/* Timer expires in User A's access network. */
F8 REL User A -> NGW 1
REL
CauseCode=16 Normal
CodingStandard=CCITT
F9 RLC NGW 1 -> User A
RLC
F10 CANCEL NGW 1 -> Proxy 1
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F11 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F12 CANCEL Proxy 1 -> User B
CANCEL sip:UserB@there.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
Johnston, et al. Informational [Page 159]
Internet Draft SIP Telephony Call Flow Examples July 2000
CSeq: 1 CANCEL
Content-Length: 0
F13 200 OK User B -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 CANCEL
Content-Length: 0
F14 487 Request Cancelled User B -> Proxy 1
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F15 ACK Proxy 1 -> User B
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F16 487 Request Cancelled Proxy 1 -> NGW 1
SIP/2.0 487 Request Cancelled
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-972-555-2222@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
Johnston, et al. Informational [Page 160]
Internet Draft SIP Telephony Call Flow Examples July 2000
F17 ACK NGW 1 -> Proxy 1
ACK sip:+1-972-555-2222@ngw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-972-555-2222@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345602@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
Johnston, et al. Informational [Page 161]
Internet Draft SIP Telephony Call Flow Examples July 2000
6 Gateway to Gateway Dialing via SIP Network
In these scenarios, both the caller and the called party are in the
telephone network, either normal PSTN subscribers or PBX extensions.
The calls route through two Gateways and at least one SIP Proxy
Server. The Proxy Server performs the authentication and location of
the Gateways.
Again it is noted that the intent of this call flows document is not
to provide a detailed parameter level mapping of SIP to PSTN
protocols. For information on SIP to ISUP mapping, the reader is
referred to other references[9].
6.1 Success Scenarios
In these scenarios, the call is successfully completed between the
two Gateways allowing the PSTN or PBX users to communicate. The 183
Session Progress response is used to establish a media path between
the two Gateways, allowing in-band alerting to pass from the called
party telephone switch to the caller.
Johnston, et al. Informational [Page 162]
Internet Draft SIP Telephony Call Flow Examples July 2000
6.1.1 Successful ISUP PSTN to ISUP PSTN call
User A NGW 1 Proxy 1 GW 2 User C
| | | | |
| IAM F1 | | | |
|------------->| | | |
| | INVITE F2 | | |
| |------------->| INVITE F3 | |
| | |------------->| IAM F4 |
| | | |------------->|
| | | | ACM F5 |
| | | 183 F6 |<-------------|
| | 183 F7 |<-------------| |
| ACM F8 |<-------------| | |
|<-------------| | | |
| One Way Voice| Both Way RTP Media | One Way Voice|
|<=============|<===========================>|<=============|
| | | | ANM F9 |
| | | 200 F10 |<-------------|
| | 200 F11 |<-------------| |
| ANM F12 |<-------------| | |
|<-------------| | | |
| | ACK F13 | | |
| |------------->| ACK F14 | |
| | |------------->| |
|Both Way Voice| Both Way RTP Media |Both Way Voice|
|<=============|<===========================>|<=============|
| | | | REL F15 |
| | | |<-------------|
| | | BYE F16 | |
| | BYE F18 |<-------------| REL F17 |
| |<-------------| |------------->|
| | | | |
| | 200 F19 | | |
| |------------->| 200 F20 | |
| | |------------->| |
| REL F21 | | | |
|<-------------| | | |
| RLC F22 | | | |
|------------->| | | |
| | | | |
In this scenario, User A in the PSTN calls User C who is an extension
on a PBX. User A's telephone switch signals via SS7 to the Network
Gateway NGW 1, while User C's PBX signals via SS7 with the Enterprise
Gateway GW 2. The CdPN and CgPN are mapped into SIP URLs and placed
in the To and From headers. Proxy 1 looks up the dialed digits in
the Request-URI and maps the digits to the PBX extension of User C
served by GW 2. The Request-URI in F3 uses the phone-context tag to
identify what private dialing plan is being referenced. For more
Johnston, et al. Informational [Page 163]
Internet Draft SIP Telephony Call Flow Examples July 2000
information on phone-context, refer to [7]. The INVITE is then
forwarded to GW 2 for call completion. An early media path is
established end-to-end so that User A can hear the ringing tone
generated by PBX C.
User C answers the call and the media path is cut through in both
directions. User B hangs up terminating the call.
Message Details
F1 IAM User A -> NGW 1
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=918-555-3333,NPI=E.164,NOA=National
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F2 INVITE NGW 1 -> Proxy 1
INVITE sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 134
v=0
o=GW1 2890844526 2890844526 IN IP4 gw1.wcom.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F3 INVITE Proxy 1 -> GW 2
INVITE sip:444-3333@gw2.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:+1-918-555-3333@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone
Johnston, et al. Informational [Page 164]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 134
v=0
o=GW1 2890844526 2890844526 IN IP4 gw1.wcom.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 IAM GW 2 -> User C
IAM
CgPN=314-555-1111,NPI=E.164,NOA=National
CdPN=444-3333,NPI=Private,NOA=Subscriber
USI=Speech
CPT=0 0
C=Normal
CCI=Not Required
F5 ACM User C -> GW 2
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
/* Based on PROGress message, GW 2 returns a 183 response with SDP
allowing in-band call progress indications to be sent to User A
through NGW 1. */
F6 183 Session Progress GW 2 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Johnston, et al. Informational [Page 165]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Session: mediaContent-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw2.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F7 183 Session Progress Proxy 1 -> GW 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Session: mediaContent-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw2.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* NGW 1 receives packets from GW 2 with encoded ringback, tones or
other audio. NGW 1 decodes this and places it on the originating
trunk. */
F8 ACM NGW 1 -> User A
ACM
Charge Indicator=No Charge
Called Party Status=no indication
Called Party's Category=ordinary subscriber
End To End Method=none available
Interworking=encountered
End to End Information=none available
ISUP Indicator=not used all the way
ISDN Access Terminating access non ISDN
Echo Control=not included
Johnston, et al. Informational [Page 166]
Internet Draft SIP Telephony Call Flow Examples July 2000
/* User B answers */
F9 ANM User C -> GW 2
ANM
F10 200 OK GW 2 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-918-555-3333@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:444-3333@gw2.wcom.com;phone-context=p1234
Content-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F11 200 OK Proxy 1 -> NGW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Record-Route: <sip:+1-918-555-3333@ss1.wcom.com;maddr=ss1.wcom.com>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 INVITE
Contact: sip:444-3333@gw2.wcom.com;phone-context=p1234
Content-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
Johnston, et al. Informational [Page 167]
Internet Draft SIP Telephony Call Flow Examples July 2000
F12 ANM NGW 1 -> User A
ANM
F13 ACK NGW 1 -> Proxy 1
ACK sip:444-3333@ss1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ngw1.wcom.com:5060
Route: <sip:444-3333@gw2.wcom.com;maddr=gw2.wcom.com
;phone-context=p1234>
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F14 ACK Proxy 1 -> GW 2
ACK sip:444-3333@gw2.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP ngw1.wcom.com:5060
From: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
To: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
Call-ID: 12345600@ngw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
/* RTP streams are established between NGW 1 and GW 2. */
/* User B Hangs Up with User A. */
F15 REL User C -> GW 2
REL
CauseCode=16 Normal
CodingStandard=CCITT
F16 BYE GW 2 -> Proxy 1
BYE sip:+1-314-555-1111@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP gw2.wcom.com:5060
Route: <sip:+1-314-555-
1111@ngw1.wcom.com;maddr=ngw1.wcom.com;user=phone>
From: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
To: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Johnston, et al. Informational [Page 168]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call-ID: 12345600@ngw1.wcom.com
CSeq: 4 BYE
Content-Length: 0
F17 RLC GW 2 -> User C
RLC
F18 BYE Proxy 1 -> NGW 1
BYE sip:+1-314-555-1111@gw1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw2.wcom.com:5060
From: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
To: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Call-ID: 12345600@ngw1.wcom.com
CSeq: 4 BYE
Content-Length: 0
F19 200 OK NGW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw2.wcom.com:5060
From: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
To: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Call-ID: 12345600@ngw1.wcom.com
CSeq: 4 BYE
Content-Length: 0
F20 200 OK Proxy 1 -> GW 2
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw2.wcom.com:5060
From: sip:+1-918-555-3333@ss1.wcom.com;user=phone;tag=314159
To: sip:+1-314-555-1111@ngw1.wcom.com;user=phone
Call-ID: 12345600@ngw1.wcom.com
CSeq: 4 BYE
Content-Length: 0
F21 REL User C -> GW 2
REL
CauseCode=16 Normal
CodingStandard=CCITT
Johnston, et al. Informational [Page 169]
Internet Draft SIP Telephony Call Flow Examples July 2000
F22 RLC GW 2 -> User C
RLC
Johnston, et al. Informational [Page 170]
Internet Draft SIP Telephony Call Flow Examples July 2000
6.1.2 Successful FGB PBX to ISDN PBX call with overflow
User A GW 1 Proxy 1 GW 2 GW 3 User B
| | | | | |
| Seizure | | | | |
|----------->| | | | |
| Wink | | | | |
|<-----------| | | | |
|MF Digits F1| | | | |
|----------->| | | | |
| | INVITE F2 | | | |
| |----------->| INVITE F3 | | |
| | |----------->| | |
| | | 503 F4 | | |
| | |<-----------| | |
| | | ACK F5 | | |
| | |----------->| | |
| | | INVITE F6 | |
| | |------------------------>| SETUP F7 |
| | | (100) F8 |----------->|
| | |<------------------------|CALL PROC F9|
| | | |<-----------|
| | | | PROG F10 |
| | | 183 F11 |<-----------|
| | 183 F12 |<------------------------| |
| |<-----------| | |
|OneWay Voice| Both Way RTP Media |OneWay Voice|
|<===========|<====================================>|<===========|
| | | | CONNect F13|
| | | 200 F14 |<-----------|
| | 200 F15 |<------------------------| |
| Seizure |<-----------| | |
|<-----------| ACK F16 | | |
| |----------->| ACK F17 | |
| | |------------------------>|CONN ACK F18|
| | | |----------->|
|BothWayVoice| Both Way RTP Media |BothWayVoice|
|<==========>|<====================================>|<==========>|
| | | | DISC F19 |
| | | |<-----------|
| | | BYE F20 | |
| | BYE F21 |<------------------------| REL F22 |
|Seiz Removal|<-----------| |----------->|
|<-----------| 200 F23 | | |
|Seiz Removal|----------->| 200 F24 | |
|----------->| |------------------------>| REL COM F25|
| | | |<-----------|
| | | | |
Johnston, et al. Informational [Page 171]
Internet Draft SIP Telephony Call Flow Examples July 2000
PBX User A calls PBX User C via Gateway GW 1 and Proxy 1. During the
attempt to reach User C via GW 2, an error is encountered - Proxy 1
receives a 503 Service Unavailable (F4) response to the forwarded
INVITE. This could be due to all circuits being busy, or some other
outage at GW 2. Proxy 1 recognizes the error and uses an alternative
route via GW 3 to terminate the call. From there, the call proceeds
normally with User C answering the call. The call is terminated when
User C hangs up.
Message Details
PBX A -> GW 1
Seizure
GW 1 -> PBX A
Wink
F1 MF Digits PBX A -> GW 1
KP 444 3333 ST
F2 INVITE GW 1 -> Proxy 1
INVITE sip:444-3333@ss1.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Contact: PBX_A <sip:IdentifierString@gw1.wcom.com>
Content-Type: application/sdp
Content-Length: 136
v=0
o=PBX_A 2890844526 2890844526 IN IP4 gw1.wcom.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* Proxy 1 uses a location manager function to determine where B is
located. Response is returned listing alternative routes. */
Johnston, et al. Informational [Page 172]
Internet Draft SIP Telephony Call Flow Examples July 2000
F3 INVITE Proxy 1 -> GW 2
INVITE sip:444-3333@gw2.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:444-3333@ss1.wcom.com;maddr=ss1.wcom.com
;phone-context=p1234>
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Contact: PBX_A <sip:IdentifierString@gw1.wcom.com>
Content-Type: application/sdp
Content-Length: 136
v=0
o=PBX_A 2890844526 2890844526 IN IP4 gw1.wcom.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F4 503 Service Unavailable GW 2 -> Proxy 1
SIP/2.0 503 Service Unavailable
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=314159
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F5 ACK Proxy 1 -> GW 2
ACK sip:444-3333@gw2.wcom.com;phone-context=p1234 SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=314159
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F6 INVITE Proxy 1 -> GW 3
INVITE sip:+1-918-555-3333@gw3.wcom.com;user=phone SIP/2.0
Johnston, et al. Informational [Page 173]
Internet Draft SIP Telephony Call Flow Examples July 2000
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:444-3333@ss1.wcom.com;maddr=ss1.wcom.com
;phone-context=p1234>
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Contact: PBX_A <sip:IdentifierString@gw1.wcom.com>
Content-Type: application/sdp
Content-Length: 136
v=0
o=PBX_A 2890844526 2890844526 IN IP4 gw1.wcom.com
s=Session SDP
c=IN IP4 100.101.102.103
t=0 0
m=audio 49172 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F7 SETUP GW 3 -> PBX C
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=any valid value not in use
Message type=SETUP
Bearer capability: Information transfer capability=0 (Speech) or 16
(3.1 kHz audio)
Channel identification=Preferred or exclusive B-channel
Progress indicator=1 (Call is not end-to-end ISDN; further call
progress information may be available inband)
Called party number:
Type of number and numbering plan ID=33 (National number in ISDN
numbering plan)
Digits=918-555-3333
F8 (100 Trying) GW 3 -> Proxy 1
SIP/2.0 100 Trying
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Content-Length: 0
F9 CALL PROCeeding PBX C -> GW 3
Protocol discriminator=Q.931
Johnston, et al. Informational [Page 174]
Internet Draft SIP Telephony Call Flow Examples July 2000
Call reference: Flag=1, CR value=value in F9 SETUP message
Message type=CALL PROC
Channel identification=Exclusive B-channel
F10 PROGress PBX C -> GW 3
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F9 SETUP message
Message type=PROG
Progress indicator=1 (Call is not end-to-end ISDN;further call
progress information may be available inband)
/* Based on PROGress message, GW 3 returns a 183 response with SDP
allowing in-band call progress indications to be sent to the
originator. */
F11 183 Session Progress GW 3 -> Proxy 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Session: mediaContent-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F12 183 Session Progress Proxy 1 -> GW 1
SIP/2.0 183 Session Progress
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Session: media
Content-Type: application/sdp
Content-Length: 134
Johnston, et al. Informational [Page 175]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
/* GW 1 receives packets from GW 3 with encoded ringback, tones or
other audio. GW 1 decodes this and places it on the originating
trunk. */
F13 CONNect PBX C -> GW 3
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F9 SETUP message
Message type=CONN
F14 200 OK GW 3 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:444-3333@ss1.wcom.com;maddr=ss1.wcom.com
;phone-context=p1234>
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-918-555-3333@gw3.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
F15 200 OK Proxy 1 -> GW 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw1.wcom.com:5060
Record-Route: <sip:444-3333@ss1.wcom.com;maddr=ss1.wcom.com
;phone-context=p1234>
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
Johnston, et al. Informational [Page 176]
Internet Draft SIP Telephony Call Flow Examples July 2000
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 INVITE
Contact: sip:+1-918-555-3333@gw3.wcom.com;user=phone
Content-Type: application/sdp
Content-Length: 134
v=0
o=PBX_B 987654321 987654321 IN IP4 gw3.wcom.com
s=Session SDP
c=IN IP4 100.101.102.104
t=0 0
m=audio 14918 RTP/AVP 0
a=rtpmap:0 PCMU/8000
GW 1 -> PBX A
Seizure
F16 ACK GW 1 -> Proxy 1
ACK sip:+1-918-555-3333@ss1.wcom.com;user=phone SIP/2.0
Via: SIP/2.0/UDP gw1.wcom.com:5060
Route: <sip:+1-918-555-3333@gw3.wcom.com;maddr=gw3.wcom.com
;user=phone>
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F17 ACK Proxy 1 -> GW 3
ACK sip:+1-918-555-3333@gw3.wcom.com;maddr=gw2.wcom.com;user=phone
SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw1.wcom.com:5060
From: PBX_A <sip:IdentifierString@gw1.wcom.com>
To: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 ACK
Content-Length: 0
F18 CONNect ACK GW 3 -> PBX C
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=value in F9 SETUP message
Johnston, et al. Informational [Page 177]
Internet Draft SIP Telephony Call Flow Examples July 2000
Message type=CONN ACK
/* RTP streams are established between GW 1 and GW 3. */
/* User B Hangs Up with User A. */
F19 DISConnect PBX C -> GW 3
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F9 SETUP message
Message type=DISC
Cause=16 (Normal clearing)
F20 BYE GW 3 -> Proxy 1
BYE sip:IdentifierString@ss1.wcom.com SIP/2.0
Via: SIP/2.0/UDP gw3.wcom.com:5060
Route: <sip:IdentifierString@gw1.wcom.com;maddr=gw1.wcom.com>
From: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
To: PBX_A <sip:IdentifierString@gw1.wcom.com>
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 BYE
Content-Length: 0
F21 BYE Proxy 1 -> GW 1
BYE sip:IdentifierString@gw1.wcom.com SIP/2.0
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw3.wcom.com:5060
From: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
To: PBX_A <sip:IdentifierString@gw1.wcom.com>
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 BYE
Content-Length: 0
GW 1 -> PBX A
Seizure removal
F22 RELease GW 3 -> PBX C
Protocol discriminator=Q.931
Call reference: Flag=0, CR value=value in F9 SETUP message
Message type=REL
Johnston, et al. Informational [Page 178]
Internet Draft SIP Telephony Call Flow Examples July 2000
F23 200 OK GW 1 -> Proxy 1
SIP/2.0 200 OK
Via: SIP/2.0/UDP ss1.wcom.com:5060;branch=2d4790.1
Via: SIP/2.0/UDP gw3.wcom.com:5060
From: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
To: PBX_A <sip:IdentifierString@gw1.wcom.com>
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 BYE
Content-Length: 0
F24 200 OK Proxy 1 -> GW 3
SIP/2.0 200 OK
Via: SIP/2.0/UDP gw3.wcom.com:5060
From: sip:444-3333@ss1.wcom.com;phone-context=p1234;tag=123456789
To: PBX_A <sip:IdentifierString@gw1.wcom.com>
Call-ID: 12345600@gw1.wcom.com
CSeq: 1 BYE
Content-Length: 0
F25 RELease COMplete PBX C -> GW 3
Protocol discriminator=Q.931
Call reference: Flag=1, CR value=value in F9 SETUP message
Message type=REL COM
PBX A -> GW 1
Seizure removal
Johnston, et al. Informational [Page 179]
Internet Draft SIP Telephony Call Flow Examples July 2000
7 SIP Test Messages
The files in here are test messages for SIP servers to exercise
various functions. They have been used in SIP "bakeoff"
interoperablity events. All messages shown here are valid, unless
otherwise noted. The correct behavior of servers and clients is also
described.
7.1 INVITE Parser Torture Test Message
This message is a correctly formatting SIP message. It contains:
line folding all over
escaped characters within quotes
LWS between colons, semicolons, headers, and other fields
both comma separated and separate listing of headers
mix or short and long form for the same header
unknown header field
unusual header ordering
nested comments
unknown parameters of a known header
Proxies should forward message and clients should respond as to a
normal INVITE message.
Message Details
INVITE sip:vivekg@chair.dnrc.bell-labs.com SIP/2.0
TO :
sip:vivekg@chair.dnrc.bell-labs.com ; tag = 1918181833n
From : "J Rosenberg \\\"" <sip:jdrosen@lucent.com>
;
tag = 98asjd8
Call-ID
: 0ha0isndaksdj@10.1.1.1
cseq: 8
INVITE
Via : SIP / 2.0
/UDP
135.180.130.133
Subject :
NewFangledHeader: newfangled value
more newfangled value
Content-Type: application/sdp
v: SIP / 2.0 / TCP 12.3.4.5 ;
branch = 9ikj8 ,
SIP / 2.0 / UDP 1.2.3.4 ; hidden
m:"Quoted string \"\"" <sip:jdrosen@bell-labs.com> ; newparam =
newvalue ;
secondparam = secondvalue ; q = 0.33
Johnston, et al. Informational [Page 180]
Internet Draft SIP Telephony Call Flow Examples July 2000
(((nested comments) and (more))) ,
tel:4443322
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.2 INVITE with Proxy-Require and Require
This message tests support for Proxy-Require and Require. It is a
request that contains both headers, listing new features.
Proxies and clients should respond with a 420 Bad Extension, and an
Unsupported header listing these features.
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j_user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.1.1.1
Require: newfeature1, newfeature2
Proxy-Require: newfeature3, newfeature4
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
7.3 INVITE with Unknown Schemes in URIs and URLs
This message contains unknown schemes in the Request URI, To, From
and Contact headers of a request.
A server should probably return a not found error; but other
behaviors are acceptable.
Message Details
INVITE name:John_Smith SIP/2.0
To: isbn:2983792873
From: http://www.cs.columbia.edu
Call-ID: 0ha0isndaksdj@10.1.2.3
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Contact: Joe Bob Briggs <urn:ipaddr:122.1.2.3>
Johnston, et al. Informational [Page 181]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.4 REGISTER with Y2038 Test
This message is a registration request with an expiration year of
2040. This makes sure that a server doesn't crash on seeing a date
past Y2038.
The correct behavior is probably to limit the lifetime to some
configured maximum.
Message Details
REGISTER sip:company.com SIP/2.0
To: sip:user@company.com
From: sip:user@company.com
Contact: sip:user@host.company.com
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 REGISTER
Via: SIP/2.0/UDP 135.180.130.133
Expires: Thu, 01 Dec 2040 16:00:00 GMT
7.5 INVITE with inconsistent Accept and message body
This is a UAS test. It is a request that includes an Accept header
without SDP. The UAS should respond with an error.
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j_user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
Accept: text/newformat
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
Johnston, et al. Informational [Page 182]
Internet Draft SIP Telephony Call Flow Examples July 2000
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.6 INVITE with non-SDP message body
This is a test of a user agent server. It is a request that includes
a body of a non-SDP type.
The user agent server should respond with an error.
Message Details
INVITE sip:user@comapny.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/newformat
<audio>
<pcmu port="443"/>
</audio>
7.7 Unknown Method Message
This request message contains a new unknown method, NEWMETHOD.
A proxy should forward this using the same retransmission rules as
INVITE. A UAS should reject it with an error, and list the available
methods in the response.
Message Details
NEWMETHOD sip:user@comapny.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 NEWMETHOD
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Johnston, et al. Informational [Page 183]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.8 Unknown Method with CSeq Error
This message is nearly identical to the Unknown Method message. It is
a request with a new unknown method, but with a CSeq method tag which
does not match.
A proxy should either respond with an error, or correct the method
tag. The user agent should reject it with an error, and list the
available methods in the response.
Message Details
NEWMETHOD sip:user@comapny.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.1.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.9 REGISTER with Unknown Authorization Scheme
This message is a REGISTER request with an unknown authorization
scheme.
The server should do something reasonable, such as rejecting the
request.
Message Details
Johnston, et al. Informational [Page 184]
Internet Draft SIP Telephony Call Flow Examples July 2000
REGISTER sip:company.com SIP/2.0
To: sip:j.user@company.com
From: sip:j.user@company.com
Call-ID: 0ha0isndaksdj@10.0.1.1
CSeq: 8 REGISTER
Via: SIP/2.0/UDP 135.180.130.133
Authorization: Super-PGP ajsohdaosdh0asyhdaind08yasdknasd09asidhas0d8
7.10 INVITE with Invalid SIP Version Number
This message contains two requests, separated by a bunch of
whitespace. The first request is a valid registration. The second
request is an INVITE with a wrong SIP version number (3.0).
The server should accept the first REGISTER request. The server
should respond to the second request with a bad version error.
Message Details
REGISTER sip:company.com SIP/2.0
To: sip:j.user@company.com
From: sip:j.user@company.com
Call-ID: 0ha0isndaksdj@10.0.2.2
Contact: sip:j.user@host.company.com
CSeq: 8 REGISTER
Via: SIP/2.0/UDP 135.180.130.133
Content-Length: 0
INVITE sip:joe@company.com SIP/3.0
To: sip:joe@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isnda977644900765@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
Johnston, et al. Informational [Page 185]
Internet Draft SIP Telephony Call Flow Examples July 2000
7.11 INVITE missing Required Headers
This message contains no Call-ID, From, or To header.
The server should not crash, and ideally should respond with an
error.
Message Details
INVITE sip:user@company.com SIP/2.0
CSeq: 0 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.12 INVITE with Duplicate Required Headers
The message contains a request with an extra Call-ID and To field.
The server should not crash, and should ideally respond with an
error.
Message Details
INVITE sip:user@company.com SIP/2.0
Via: SIP/2.0/UDP 135.180.130.133
CSeq: 0 INVITE
Call-ID: 98asdh@10.1.1.1
Call-ID: 98asdh@10.1.1.2
From: sip:caller@university.edu
From: sip:caller@organization.org
To: sip:user@company.com
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
Johnston, et al. Informational [Page 186]
Internet Draft SIP Telephony Call Flow Examples July 2000
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.13 INVITE with Illegal Expires Header
This message contains an Expires header which has illegal values for
a number of components, but otherwise is syntactically correct.
Message Details
INVITE sip:user@company.com SIP/2.0
Via: SIP/2.0/UDP 135.180.130.133
CSeq: 0 INVITE
Call-ID: 98asdh@10.1.1.2
Expires: Thu, 44 Dec 19999 16:00:00 EDT
From: sip:caller@university.edu
To: sip:user@company.com
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.14 200 OK Response with Broadcast Via Header
This message is a response with a 2nd Via header of 255.255.255.255.
On receiving this response, the top Via header is stripped and the
packet forwarded. Since the next address is the broadcast address,
it causes the packet to be broadcast onto the network. A smart server
should ignore packets with 2nd Via headers that are 255.255.255.255
or 127.0.0.1. At the very least it should not crash.
Message Details
SIP/2.0 200 OK
Via: SIP/2.0/UDP 135.180.130.57;branch=0
Via: SIP/2.0/UDP 255.255.255.255;branch=0
Call-ID: 0384840201@10.1.1.1
CSeq: 0 INVITE
Johnston, et al. Informational [Page 187]
Internet Draft SIP Telephony Call Flow Examples July 2000
From: sip:user@company.com
To: sip:user@university.edu;tag=2229
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 224.2.17.12/127
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.15 INVITE with Invalid Via and Contact Headers
This is a request with the Via and Contact headers incorrect. They
contain additional semicolons and commas without parameters or
values.
The server should respond with a Bad Request error.
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133;;,;
Contact: "" <> ;,"Joe" <sip:joe@org.org>;;,,;;
Content-Type: application/sdp
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.16 INVITE with Incorrect Content-Length Header
This is a request message with a Content Length that is much larger
than the length of the body.
When sent UDP, the server should respond with an error. With TCP,
there's not much you can do but wait...
Johnston, et al. Informational [Page 188]
Internet Draft SIP Telephony Call Flow Examples July 2000
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Content-Length: 9999
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.17 INVITE with Invalid Value for Content-Length
This is a request message with a negative value for Content-Length.
The server should respond with an error.
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Content-Length: -999
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
7.18 INVITE with Garbage after Message Body
Johnston, et al. Informational [Page 189]
Internet Draft SIP Telephony Call Flow Examples July 2000
This is a request message with garbage after the end of the SDP
included in the body. In fact, the server should treat this garbage
as a second request. However, it is not even close to a valid
message. The server should therefore ignore it, and forward the first
message normally.
Message Details
INVITE sip:user@company.com SIP/2.0
To: sip:j.user@company.com
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Content-Length: 138
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
asdpasd08asdsdk:;;asd
a0sdjhg8a0''...'';;;;
7.19 INVITE with Error in Display Name in To Header
This is a request with an unterminated quote in the display name of
the To field.
The server can either return an error, or proxy it if it is
successful parsing without the terminating quote.
Message Details
INVITE sip:user@company.com SIP/2.0
To: "Mr. J. User <sip:j.user@company.com>
From: sip:caller@university.edu
Call-ID: 0ha0isndaksdj@10.0.0.1
CSeq: 8 INVITE
Via: SIP/2.0/UDP 135.180.130.133
Content-Type: application/sdp
Content-Length: 138
Johnston, et al. Informational [Page 190]
Internet Draft SIP Telephony Call Flow Examples July 2000
v=0
o=mhandley 29739 7272939 IN IP4 126.5.4.3
c=IN IP4 135.180.130.88
m=audio 492170 RTP/AVP 0 12
m=video 3227 RTP/AVP 31
a=rtpmap:31 LPC
8 Acknowledgements
The authors wish to thank the following individuals for their
assistance and review of this call flows document: Hemant Agrawal,
Henry Sinnreich, David Devanatham, Joe Pizzimenti, Matt Cannon, John
Hearty, the whole MCI WorldCom IPOP Design team, Scott Orton, Greg
Osterhout, Pat Sollee, Doug Weisenberg, Danny Mistry, Steve McKinnon,
and Denise Ingram, Denise Caballero, Tom Redman, Ilya Slain, Pat
Sollee, John Truetken, and others from MCI WorldCom, 3Com, Cisco,
Lucent and Nortel.
9 References
[1] S. Bradner, "The Internet Standards Process -- Revision 3", BCP
9, RFC 2026, October 1996.
[2] M. Handley, H. Schulzrinne, E. Schooler, and J. Rosenberg, "SIP:
Session Initiation Protocol", RFC 2543, March 1999.
[4] S. Kent, R. Atkinson, "Security Architecture for the Internet
Protocol", RFC 2401, November 1998.
[5] S. Donovan, J. Hearty, M. Cannon, H. Schulzrinne, and J.
Rosenberg, "SIP 183 Session Progress Message", Internet Draft,
Internet Engineering Task Force, October 1999. Work in
progress.
[6] J. Rosenberg, and H. Schulzrinne, "Reliability of Provisional
Responses in SIP", Internet Draft, Internet Engineering Task
Force, May 2000, Work in progress.
[7] A. Vaha-Sipila, "URLs for Telephone Calls", Internet Draft,
Internet Engineering Task Force, RFC 2806, April 2000.
[8] S. Donovan, M. Cannon, "The SIP INFO Method", Internet Draft,
Internet Engineering Task Force, March 2000. Work in
progress.
[9] G. Camarillo, "Best Current Practice for ISUP to SIP Mapping",
Johnston, et al. Informational [Page 191]
Internet Draft SIP Telephony Call Flow Examples July 2000
Internet Draft, Internet Engineering Task Force, March 2000,
Work in progress.
Author's Addresses
Alan Johnston Email: alan.johnston@wcom.com
Steve Donovan Email: sdonovan@dynamicsoft.com
Robert Sparks Email: rsparks@dynamicsoft.com
Chris Cunningham Email: ccunningham@dynamicsoft.com
Dean Willis Email: dwillis@dynamicsoft.com
Jonathan Rosenberg Email: jdrosen@dynamicsoft.com
Kevin Summers Email: kevin.summers@ttimail.com
Henning Schulzrinne Email: schulzrinne@cs.columbia.edu
Copyright Notice
"Copyright (C) The Internet Society 2000. All Rights Reserved.
This document and translations of it may be copied and furnished to
others, and derivative works that comment on or otherwise explain it
or assist in its implementation may be prepared, copied, published
and distributed, in whole or in part, without restriction of any
kind, provided that the above copyright notice and this paragraph are
included on all such copies and derivative works. However, this
document itself may not be modified in any way, such as by removing
the copyright notice or references to the Internet Society or other
Internet organizations, except as needed for the purpose of
developing Internet standards in which case the procedures for
copyrights defined in the Internet Standards process must be
followed, or as required to translate it into languages other than
English.
The limited permissions granted above are perpetual and will not be
revoked by the Internet Society or its successors or assigns.
This document and the information contained herein is provided on an
"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Johnston, et al. Informational [Page 192]