SIPPING Working Group                                    A. Johnston
   Internet Draft                                              WorldCom
   Document:                                                 S. Donovan
    draft-ietf-sipping-basic-call-flows-01.txt
    draft-ietf-sipping-basic-call-flows-02.txt                R. Sparks
   Expires: April October 2003                                  C. Cunningham
                                                            dynamicsoft
                                                             K. Summers
                                                                  Sonus
                                                           October 2002
                                                             April 2003

           Session Initiation Protocol Basic 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.

   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 informational document gives examples of Session Initiation
   Protocol (SIP) call flows.  Elements in these call flows include SIP
   User Agents and Clients, SIP Proxy and Redirect Servers.  Scenarios
   include SIP Registration and SIP session establishment.  Call flow
   diagrams and message details are shown.

Conventions used in this document

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC-2119 [1]. RFC-2119.

                     SIP Basic Call Flow Examples         October 2002           April 2003

Table of Contents

   1. Overview.......................................................2
      1.1 General Assumptions........................................3
      1.2 Legend for Message Flows...................................3
      1.3 SIP Protocol Assumptions...................................3
   2. SIP Registration...............................................5
      2.1 Successful New Registration................................5
      2.2 Update of Contact List.....................................7
      2.3 Request for Current Contact List...........................9
      2.4 Cancellation of Registration..............................11
      2.5 Unsuccessful Registration.................................13
   3. SIP Session Establishment.....................................15
      3.1 Successful Session Establishment..........................15
      3.2 Session Establishment Through Two Proxies.................18
      3.3 Session with Multiple Proxy Authentication................28 Authentication................29
      3.4 Successful Session with Proxy Failure.....................38 Failure.....................40
      3.5 Session Through a SIP ALG.................................47 ALG.................................49
      3.6 Session via Redirect and Proxy Servers with SDP in ACK....55 ACK....57
      3.7 Session with re-INVITE (IP Address Change)................62 Change)................64
      3.8 Unsuccessful No Answer....................................68 Answer....................................70
      3.9 Unsuccessful Busy.........................................76 Busy.........................................78
      3.10 Unsuccessful No Response from User Agent.................81 Agent.................83
      3.11 Unsuccessful Temporarily Unavailable.....................86 Unavailable.....................88
   Security Considerations..........................................91
   References.......................................................91
   Acknowledgments..................................................92 Considerations..........................................93
   Normative References.............................................94
   Informative References...........................................94
   Acknowledgments..................................................94
   Author's Addresses...............................................92 Addresses...............................................95

1.   Overview

   The call flows shown in this document were developed in the design of
   a SIP IP communications network.  They represent an example
   minimum set of functionality.

   It is the hope of the authors that this document will be useful for
   SIP implementors, implementers, designers, and protocol researchers alike and will
   help further the goal of a standard implementation of RFC 3261[2]. 3261[1].
   These flows represent carefully checked and working group reviewed
   scenarios of the most basic examples as a companion to the
   specifications.

   These call flows are based on the current version 2.0 of SIP in
   RFC 3261[2] 3261[i] with SDP usage described in RFC 3264[3]. 3264[ii]. Other RFCs also
   comprise the SIP standard but are not used in this set of basic call
   flows.

                     SIP Basic Call Flow Examples           April 2003

   Call flow examples of SIP interworking with the PSTN through gateways
   are contained in a companion document, RFC xxxx[4].

                     SIP Basic Call Flow Examples         October 2002

 1.1 General Assumptions

   A number of architecture, network, and protocol assumptions underlie
   the call flows in this document. Note that these assumptions are not
   requirements.  They are outlined in this section so that they may be
   taken into consideration and to aid in the understanding of the call
   flow examples.

   The authentication of SIP User Agents in these example call flows is
   performed using HTTP Digest as defined in [2] [1] and [5]. [iii].

   Some 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.

   These flows show TCP, TLS, and UDP for transport.  Other  See the discussion
   in RFC 3261 for details on the transport
   schemes could also be used.  If UDP is used, care must be taken to
   avoid packet fragmentation and congestion. issues for SIP.

 1.2 Legend for Message Flows

   Dashed lines (---) represent signaling messages that are mandatory to
   the call scenario. These messages can be SIP or PSTN
   signaling.  The arrow indicates the direction of message flow.

   Double dashed lines (===) represent media paths between network
   elements.

   Messages with parentheses around their name represent optional
   messages.

   Messages are identified in the Figures as F1, F2, etc.  This
   references the message details in the list that follows the Figure.
   Comments in the message details are shown in the following form:

    /* Comments. */

 1.3 SIP Protocol Assumptions

   This document is informational only and is NOT NORMATIVE in any
   sense, in that it does not prescribe the flows that precisely as they are
   shown, indeed
   they MUST NOT but rather the flows illustrate the principles for best
   practice.  They are best practices usages (orderings, syntax,
   selection of features for the purpose, handling of error) of SIP
   methods, headers and parameters.  IMPORTANT: The exact flows here
   must not be copied as is by an implementer due to specific incorrect
   characteristics that were introduced into the reasons described in the next
   paragraph.  On the other hand, document for
   convenience and are listed below.  To sum up, the basic call flows
                     SIP Basic Call Flow Examples           April 2003

   represent well-
   reviewed well-reviewed examples of SIP usage that usage, which are best common
   practice according to community IETF consensus.

   For simplicity in reading and editing the document, there are a
   number of differences between some of the examples and actual SIP
                     SIP Basic Call Flow Examples         October 2002
   messages.  For example, the HTTP Digest responses are not actual MD5
   encodings.  Call-IDs are often repeated, and CSeq counts often begin
   at 1.  Header fields are usually shown in the same order.  Usually
   only the minimum required header field set is shown, others that
   would normally be present such as Accept, Supported, Allow, etc are
   not shown.

   Actors:

   Element       Display Name   URI                         IP Address
   -------       ------------   ---                         ----------

   User Agent    BigGuy         UserA@atlanta.com    192.0.2.101    Alice          alice@atlanta.example.com   192.0.2.10
   User Agent    LittleGuy      UserB@biloxi.com    Bob            bob@biloxi.example.com      192.0.2.201
   User Agent                   UserB@chicago.com                   bob@chicago.example.com     192.0.2.100
   Proxy Server                 ss1.atlanta.com                 ss1.atlanta.example.com     192.0.2.111
   Proxy/Registrar              ss2.biloxi.com              ss2.biloxi.example.com      192.0.2.222
   Proxy Server                 ss3.chicago.com                 ss3.chicago.example.com     192.0.2.233
   ALG                          alg1.atlanta.com                          alg1.atlanta.example.com    192.0.2.128
                     SIP Basic Call Flow Examples         October 2002           April 2003

2.   SIP Registration

   Registration binds a particular device Contact URI with a SIP user
   Address of Record (AOR).

 2.1 Successful New Registration

    User B

    Bob                        SIP Server
     |                               |
     |          REGISTER F1          |
     |------------------------------>|
     |      401 Unauthorized F2      |
     |<------------------------------|
     |          REGISTER F3          |
     |------------------------------>|
     |            200 OK F4          |
     |<------------------------------|
     |                               |

   User B

   Bob sends a SIP REGISTER request to the SIP server.  The request
   includes the user's contact list.  This flow shows the use of HTTP
   Digest for authentication using TLS transport.  TLS transport is used
   due to the lack of integrity protection in HTTP Digest and the danger
   of registration hijacking without it, as described in RFC 3261 [2]. [1].
   The SIP server provides a challenge to User B.  User B Bob.  Bob enters her/his valid
   user ID and password.  User B's  Bob'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 Bob's SIP client.  The response
   includes the user's current contact list in Contact headers.  The
   format of the authentication shown is HTTP digest.  It is assumed
   that User B Bob has not previously registered with this Server.

   Message Details

   F1 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Contact: <sip:UserB@client.biloxi.com> <sips:bob@client.biloxi.example.com>
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Length: 0

   F2 401 Unauthorized SIP Server -> User B Bob

   SIP/2.0 401 Unauthorized
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=1410948204 Bob <sips:bob@biloxi.example.com>;tag=1410948204
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   WWW-Authenticate: Digest realm="atlanta.com", realm="atlanta.example.com", qop="auth",
    nonce="ea9c8e88df84f1cec4341ae6cbe5a359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F3 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=ja743ks76zlflH Bob <sips:bob@biloxi.example.com>;tag=ja743ks76zlflH
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 2 REGISTER
   Contact: <sip:UserB@client.biloxi.com> <sips:bob@client.biloxi.example.com>
   Authorization: Digest username="UserB", realm="atlanta.com" username="bob", realm="atlanta.example.com"
    nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="",
    uri="sip:ss2.biloxi.com",
    uri="sips:ss2.biloxi.example.com",
    response="dfe56131d1958046689d83306477ecc"
   Content-Length: 0

   F4 200 OK SIP Server -> B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=ja743ks76zlflH Bob <sips:bob@biloxi.example.com>;tag=ja743ks76zlflH
   To: LittleGuy <sip:UserB@biloxi.com>;tag=37GkEhwl6 Bob <sips:bob@biloxi.example.com>;tag=37GkEhwl6
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 2 REGISTER
   Contact: <sip:UserB@client.biloxi.com>;expires=3600 <sips:bob@client.biloxi.example.com>;expires=3600
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 2.2 Update of Contact List

   User B

   Bob                        SIP Server
     |                               |
     |          REGISTER F1          |
     |------------------------------>|
     |            200 OK F2          |
     |<------------------------------|
     |                               |

   User B

   Bob wishes to update the list of addresses where the SIP server
   will redirect or forward INVITE requests.

   User B

   Bob sends a SIP REGISTER request to the SIP server.  User B's  Bob'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 Bob's SIP client.  The response
   includes the user's current contact list in Contact headers.

   Message Details

   F1 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Contact: mailto:UserB@biloxi.com mailto:bob@biloxi.example.com
   Authorization: Digest username="UserB", realm="atlanta.com", username="bob", realm="atlanta.example.com",
    qop="auth", nonce="1cec4341ae6cbe5a359ea9c8e88df84f", opaque="",
    uri="sip:ss2.biloxi.com",
    uri="sips:ss2.biloxi.example.com",
    response="71ba27c64bd01de719686aa4590d5824"
   Content-Length: 0

   F2 200 OK SIP Server -> B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
                     SIP Basic Call Flow Examples         October 2002           April 2003

    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=34095828jh Bob <sips:bob@biloxi.example.com>;tag=34095828jh
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Contact: <sip:UserB@client.biloxi.com>;expires=3600 <sips:bob@client.biloxi.example.com>;expires=3600
   Contact: <mailto:UserB@biloxi.com>;expires=4294967295 <mailto:bob@biloxi.example.com>;expires=4294967295
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 2.3 Request for Current Contact List

   User B

   Bob                        SIP Server
     |                               |
     |          REGISTER F1          |
     |------------------------------>|
     |            200 OK F2          |
     |<------------------------------|
     |                               |

   User B

   Bob 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.  The server returns a
   response (200 OK) which includes the user's current registration list
   in Contact headers.

   Message Details

   F1 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Authorization: Digest username="UserB", realm="atlanta.com", username="bob", realm="atlanta.example.com",
    nonce="df84f1cec4341ae6cbe5ap359a9c8e88", opaque="",
    uri="sip:ss2.biloxi.com",
    uri="sips:ss2.biloxi.example.com",
    response="aa7ab4678258377c6f7d4be6087e2f60"
   Content-Length: 0

   F2 200 OK SIP Server -> B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=jqoiweu75 Bob <sips:bob@biloxi.example.com>;tag=jqoiweu75
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Contact: <sip:UserB@client.biloxi.com>;expires=3600 <sips:bob@client.biloxi.example.com>;expires=3600
   Contact: <mailto:UserB@biloxi.com>;expires=4294967295 <mailto:bob@biloxi.example.com>;expires=4294967295
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 2.4 Cancellation of Registration

   User B

   Bob                         SIP Server
     |                               |
     |          REGISTER F1          |
     |------------------------------>|
     |            200 OK F2          |
     |<------------------------------|
     |                               |

   User B

   Bob wishes to cancel their registration with the SIP
   server. User B Bob 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 Bob's SIP
   client.

   Message Details

   F1 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Expires: 0
   Contact: *
   Authorization: Digest username="UserB", realm="atlanta.com", username="bob", realm="atlanta.example.com",
    nonce="88df84f1cac4341aea9c8ee6cbe5a359", opaque="",
    uri="sip:ss2.biloxi.com",
    uri="sips:ss2.biloxi.example.com",
    response="ff0437c51696f9a76244f0cf1dbabbea"
   Content-Length: 0

   F2 200 OK SIP Server -> B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=1418nmdsrf Bob <sips:bob@biloxi.example.com>;tag=1418nmdsrf
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 2.5 Unsuccessful Registration

   User B

   Bob                        SIP Server
     |                               |
     |          REGISTER F1          |
     |------------------------------>|
     |      401 Unauthorized F2      |
     |<------------------------------|
     |          REGISTER F3          |
     |------------------------------>|
     |      401 Unauthorized F4      |
     |<------------------------------|
     |                               |

   User B

   Bob sends a SIP REGISTER request to the SIP Server.  The SIP
   server provides a challenge to User B.  User B Bob.  Bob enters her/his user ID
   and password.  User B's  Bob'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 Bob's SIP client.

   Message Details

   F1 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   Contact: <sip:UserB@client.biloxi.com> <sips:bob@client.biloxi.example.com>
   Content-Length: 0

   F2 Unauthorized SIP Server -> User B Bob

   SIP/2.0 401 Unauthorized
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
                     SIP Basic Call Flow Examples         October 2002           April 2003

   From: LittleGuy <sip:UserB@biloxi.com>;tag=a73kszlfl Bob <sips:bob@biloxi.example.com>;tag=a73kszlfl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=1410948204 Bob <sips:bob@biloxi.example.com>;tag=1410948204
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 1 REGISTER
   WWW-Authenticate: Digest realm="atlanta.com", realm="atlanta.example.com", qop="auth",
    nonce="f1cec4341ae6ca9c8e88df84be55a359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F3 REGISTER B Bob -> SIP Server

   REGISTER sip:ss2.biloxi.com sips:ss2.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=JueHGuidj28dfga Bob <sips:bob@biloxi.example.com>;tag=JueHGuidj28dfga
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sips:bob@biloxi.example.com>
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 2 REGISTER
   Contact: <sip:UserB@client.biloxi.com> <sips:bob@client.biloxi.example.com>
   Authorization: Digest username="UserB", realm="atlanta.com", username="bob", realm="atlanta.example.com",
    nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="",
    uri="sip:ss2.biloxi.com",
    uri="sips:ss2.biloxi.example.com",
    response="61f8470ceb87d7ebf508220214ed438b"
   Content-Length: 0

   /*  The response above encodes the incorrect password */

   F4 401 Unauthorized SIP Server -> User B Bob

   SIP/2.0 401 Unauthorized
   Via: SIP/2.0/TLS client.biloxi.com:5061;branch=z9hG4bKnashds7 client.biloxi.example.com:5061;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=JueHGuidj28dfga Bob <sips:bob@biloxi.example.com>;tag=JueHGuidj28dfga
   To: LittleGuy <sip:UserB@biloxi.com>;tag=1410948204 Bob <sips:bob@biloxi.example.com>;tag=1410948204
   Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 1j9FpLxk3uxtm8tn@biloxi.example.com
   CSeq: 2 REGISTER
   WWW-Authenticate: Digest realm="atlanta.com", realm="atlanta.example.com", qop="auth",
    nonce="84f1c1ae6cbe5ua9c8e88dfa3ecm3459",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

3.    SIP Session Establishment

   This section details session establishment between two SIP User
   Agents (UAs): User A Alice and User B.  User A (LittleGuy
   sip:UserA@atlanta.com) Bob.  Alice (sip:alice@atlanta.example.com)
   and User B (BigGuy sip:UserB@biloxi.com) Bob (sip:bob@biloxi.example.com) are assumed to be SIP phones or
   SIP-enabled devices.  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.

   HTTP Digest authentication is used by Proxy Servers to authenticate
   the caller User A. Alice. It is assumed that User B Bob has registered with Proxy
   Server Proxy 2 as per Section 2 to be able to receive the calls via
   the Proxy.

 3.1 Successful Session Establishment

   User A                  User B

   Alice                     Bob
     |                        |
     |       INVITE F1        |
     |----------------------->|
     |    180 Ringing F2      |
     |<-----------------------|
     |                        |
     |       200 OK F3        |
     |<-----------------------|
     |         ACK F4         |
     |----------------------->|
     |   Both Way RTP Media   |
     |<======================>|
     |                        |
     |         BYE F5         |
     |<-----------------------|
     |       200 OK F6        |
     |----------------------->|
     |                        |

   In this scenario, User A Alice completes a call to User B Bob directly.

   Message Details

   F1 INVITE User A Alice -> User B Bob

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
                     SIP Basic Call Flow Examples         October 2002           April 2003

   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F2 180 Ringing User B Bob -> User A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=8321234356 Bob <sip:bob@biloxi.example.com>;tag=8321234356
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   Content-Length: 0

   F3 200 OK User B Bob -> User A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=8321234356 Bob <sip:bob@biloxi.example.com>;tag=8321234356
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   a=rtpmap:0 PCMU/8000

   F4 ACK User A Alice -> User B Bob

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bd5 client.atlanta.example.com:5060;branch=z9hG4bK74bd5
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=8321234356 Bob <sip:bob@biloxi.example.com>;tag=8321234356
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* RTP streams are established between A Alice and B Bob */

   /* User B Bob Hangs Up with User A. Alice. Note that the CSeq is NOT 2, since
      User A
      Alice and User B Bob maintain their own independent CSeq counts.
      (The INVITE was request 1 generated by User A, Alice, and the BYE is
      request 1 generated by User B) Bob) */

   F5 BYE User B Bob -> User A Alice

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=8321234356 Bob <sip:bob@biloxi.example.com>;tag=8321234356
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F6 200 OK User A Alice -> User B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=8321234356 Bob <sip:bob@biloxi.example.com>;tag=8321234356
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.2 Session Establishment Through Two Proxies

   User A

   Alice           Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   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 Alice completes a call to User B Bob using two proxies
   Proxy 1 and Proxy 2.  The initial INVITE (F1) contains a pre-loaded
   Route header with the address of Proxy 1 (Proxy 1 is configured as a
   default outbound proxy for User A). Alice).  The request 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 Bob disconnects by
   initiating a BYE message.

                     SIP Basic Call Flow Examples         October 2002           April 2003

   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.

   Message Details

   F1 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b43 client.atlanta.example.com:5060;branch=z9hG4bK74b43
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 1 challenges User A Alice for authentication */

   F2 407 Proxy Authorization Required Proxy 1 -> User A Alice

   SIP/2.0 407 Proxy Authorization Required
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b43 client.atlanta.example.com:5060;branch=z9hG4bK74b43
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=3flal12sf Bob <sip:bob@biloxi.example.com>;tag=3flal12sf
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 INVITE
   Proxy-Authenticate: Digest realm="atlanta.com", realm="atlanta.example.com", qop="auth",
    nonce="f84f1cec41e6cbe5aea9c8e88d359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F3 ACK A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b43 client.atlanta.example.com:5060;branch=z9hG4bK74b43
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=3flal12sf Bob <sip:bob@biloxi.example.com>;tag=3flal12sf
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* User A Alice responds be re-sending the INVITE with authentication
      credentials in it. */

   F4 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="42ce3cef44b22f50c6a6071bc8"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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 Alice prepares to receive data on port 49172 from the
   network. */

   F5 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com SIP/2.0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   INVITE sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F6 100 Trying Proxy 1 -> User A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Content-Length: 0

   F7 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>
   Call-ID: 3848276298220188511@atlanta.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> Bob <sip:bob@biloxi.example.com>
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Call-ID: 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Content-Length: 0

   F9 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   CSeq: 2 INVITE
   Content-Length: 0
                     SIP Basic Call Flow Examples           April 2003

   F10 180 Ringing Proxy 2 -> Proxy 1

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
                     SIP Basic Call Flow Examples         October 2002
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   CSeq: 2 INVITE
   Content-Length: 0

   F11 180 Ringing Proxy 1 -> A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   CSeq: 2 INVITE
   Content-Length: 0

   F12 200 OK B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
                     SIP Basic Call Flow Examples           April 2003

   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
                     SIP Basic Call Flow Examples         October 2002
   a=rtpmap:0 PCMU/8000

   F13 200 OK Proxy 2 -> Proxy 1

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F14 200 OK Proxy 1 -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 INVITE
                     SIP Basic Call Flow Examples           April 2003

   Contact: <sip:UserB@client.biloxi.com;transport=tcp> <sip:bob@client.biloxi.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
                     SIP Basic Call Flow Examples         October 2002

   F15 ACK A Alice -> Proxy 1

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b76 client.atlanta.example.com:5060;branch=z9hG4bK74b76
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr>, <sip:ss2.biloxi.com;lr> <sip:ss1.atlanta.example.com;lr>,
    <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0

   F16 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b76 client.atlanta.example.com:5060;branch=z9hG4bK74b76
    ;received=192.0.2.101
   Max-Forwards: 69
   Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0

   F17 ACK Proxy 2 -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
                     SIP Basic Call Flow Examples           April 2003

   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74b76 client.atlanta.example.com:5060;branch=z9hG4bK74b76
    ;received=192.0.2.101
   Max-Forwards: 68
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0

   /* RTP streams are established between A Alice and B Bob */

   /* User B Bob Hangs Up with User A. Alice. */
                     SIP Basic Call Flow Examples         October 2002

   /* Again, note that the CSeq is NOT 3.  User A  Alice and User B Bob maintain
      their own separate CSeq counts */

   F18 BYE User B Bob -> Proxy 2

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
   Max-Forwards: 70
   Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F19 BYE Proxy 2 -> Proxy 1

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   Max-Forwards: 69
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F20 BYE Proxy 1 -> User A Alice
                     SIP Basic Call Flow Examples           April 2003

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   Max-Forwards: 68
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F21 200 OK User A Alice -> Proxy 1
                     SIP Basic Call Flow Examples         October 2002

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F22 200 OK Proxy 1 -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.101
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F23 200 OK Proxy 2 -> User B Bob
                     SIP Basic Call Flow Examples           April 2003

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 3848276298220188511@atlanta.com 3848276298220188511@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.3 Session with Multiple Proxy Authentication

     User A

     Alice        Proxy 1     Proxy 2       User B         Bob
       |            |           |             |
       |  INVITE F1 |           |             |
       |----------->|           |             |
       |  407 Proxy Authorization Required F2 |
       |<-----------|           |             |
       |   ACK F3   |           |             |
       |----------->|           |             |
       |  INVITE F4 |           |             |
       |----------->|           |             |
       |   100 F5   |           |             |
       |<-----------| INVITE F6 |             |
       |            |---------->|             |
       |            |  407 Proxy Authorization Required F7
       |            |<----------|             |
       |            |   ACK F8  |             |
       |            |---------->|             |
       |  407 Proxy Authorization Required F9 |
       |<-----------|           |             |
       |   ACK F10  |           |             |
       |----------->|           |             |
       |  INVITE F11|           |             |
       |----------->|           |             |
       |   100 F12  |           |             |
       |<-----------| INVITE F13|             |
       |            |---------->|             |
       |            |  100 F14  |             |
       |            |<----------|  INVITE F15 |
       |            |           |------------>|
       |            |           | 200 OK F16  |
       |            | 200 OK F17|<------------|
       | 200 OK F18 |<----------|             |
       |<-----------|           |             |
       |   ACK F19  |           |             |
       |----------->|  ACK F20  |             |
       |            |---------->|   ACK F21   |
       |            |           |------------>|
       |           RTP Media Path             |
       |<====================================>|

   In this scenario, User A Alice completes a call to User B Bob using two proxies
   Proxy 1 and Proxy 2.  User A  Alice has valid credentials in both domains.
   Since 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
                     SIP Basic Call Flow Examples         October 2002           April 2003

   the call proceeds after Proxy 2 challenges and receives valid
   credentials.  The call terminates when User B Bob 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.

   Message Details

   F1 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b03 client.atlanta.example.com:5060;branch=z9hG4bK74b03
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 1 challenges User A Alice for authentication */

   F2 407 Proxy Authorization Required Proxy 1 -> User A Alice

   SIP/2.0 407 Proxy Authorization Required
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b03 client.atlanta.example.com:5060;branch=z9hG4bK74b03
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=876321 Bob <sip:bob@biloxi.example.com>;tag=876321
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Proxy-Authenticate: Digest realm="atlanta.com", realm="atlanta.example.com", qop="auth",
    nonce="wf84f1cczx41ae6cbeaea9ce88d359",
                     SIP Basic Call Flow Examples         October 2002           April 2003

    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F3 ACK A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Max-Forwards: 70
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b03 client.atlanta.example.com:5060;branch=z9hG4bK74b03
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=876321 Bob <sip:bob@biloxi.example.com>;tag=876321
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* User A Alice responds be re-sending the INVITE with authentication
      credentials in it.  The same Call-ID is used, so the CSeq is
      increased. */

   F4 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="42ce3cef44b22f50c6a6071bc8"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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
                     SIP Basic Call Flow Examples           April 2003

   2.  Proxy 1 is assumed to have been authenticated by Proxy 2 using
   IPSec.  Client for A Alice prepares to receive data on port 49172 from the
                     SIP Basic Call Flow Examples         October 2002
   network. */

   F5 100 Trying Proxy 1 -> User A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Content-Length: 0

   F6 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 2 challenges User A Alice for authentication */

   F7 407 Proxy Authorization Required Proxy 2 -> Proxy 1

   SIP/2.0 407 Proxy Authorization Required
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples         October 2002           April 2003

   From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=838209 Bob <sip:bob@biloxi.example.com>;tag=838209
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Proxy-Authenticate: Digest realm="biloxi.com", realm="biloxi.example.com", qop="auth",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F8 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=838209 Bob <sip:bob@biloxi.example.com>;tag=838209
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0

   /* Proxy 1 forwards the challenge to User A Alice for authentication from
   Proxy 2 */

   F9 407 Proxy Authorization Required Proxy 1 -> User A Alice

   SIP/2.0 407 Proxy Authorization Required
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=838209 Bob <sip:bob@biloxi.example.com>;tag=838209
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Proxy-Authenticate: Digest realm="biloxi.com", realm="biloxi.example.com", qop="auth",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F10 ACK User A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b21 client.atlanta.example.com:5060;branch=z9hG4bK74b21
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=838209 Bob <sip:bob@biloxi.example.com>;tag=838209
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="42ce3cef44b22f50c6a6071bc8"
   Content-Length: 0

   /* User A Alice responds be re-sending the INVITE with authentication
   credentials for Proxy 1 AND Proxy 2.  */

   F11 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="42ce3cef44b22f50c6a6071bc8"
   Proxy-Authorization: Digest username="UserA", realm="biloxi.com", username="alice",
    realm="biloxi.example.com",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 1 finds its credentials and authorizes User A, Alice, forwarding the
   INVITE to Proxy.  */

   F12 100 Trying Proxy 1 -> User A Alice

   SIP/2.0 100 Trying
                     SIP Basic Call Flow Examples           April 2003

   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002

   F13 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="biloxi.com", username="alice",
    realm="biloxi.example.com",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 2 finds its credentials and authorizes User A, Alice, forwarding the
   INVITE to User B. Bob.  */

   F14 100 Trying Proxy 2 -> Proxy 1

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples           April 2003

   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Content-Length: 0

   F15 INVITE Proxy 2 -> User B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1
                     SIP Basic Call Flow Examples         October 2002 ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* User B Bob answers the call immediately */

   F16 200 OK User B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1 ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874 Bob <sip:bob@biloxi.example.com>;tag=9103874
                     SIP Basic Call Flow Examples           April 2003

   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
                     SIP Basic Call Flow Examples         October 2002
   a=rtpmap:0 PCMU/8000

   F17 200 OK Proxy 2 -> Proxy 1

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874 Bob <sip:bob@biloxi.example.com>;tag=9103874
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F18 200 OK Proxy 1 -> User A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples           April 2003

   To: Bob <sip:bob@biloxi.example.com>;tag=9103874
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
                     SIP Basic Call Flow Examples         October 2002

   F19 ACK User A Alice -> Proxy 1

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b44 client.atlanta.example.com:5060;branch=z9hG4bK74b44
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr>, <sip:ss2.biloxi.com;lr> <sip:ss1.atlanta.example.com;lr>,
    <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874 Bob <sip:bob@biloxi.example.com>;tag=9103874
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 ACK
   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="42ce3cef44b22f50c6a6071bc8"
   Proxy-Authorization: Digest username="alice",
    realm="biloxi.example.com",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="",
    uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8"
   Content-Length: 0

   F20 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b44 client.atlanta.example.com:5060;branch=z9hG4bK74b44
    ;received=192.0.2.101
   Max-Forwards: 69
   Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874 Bob <sip:bob@biloxi.example.com>;tag=9103874
                     SIP Basic Call Flow Examples           April 2003

   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 ACK
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Proxy-Authorization: Digest username="alice",
    realm="biloxi.example.com",
    nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="",
    uri="sip:bob@biloxi.example.com", response="f44ab22f150c6a56071bce8"
   Content-Length: 0

   F21 ACK Proxy 2 -> User A Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1 ss2.biloxi.example.com:5060;branch=z9hG4bK31972.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 ss1.atlanta.example.com:5060;branch=z9hG4bK230f2.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b44 client.atlanta.example.com:5060;branch=z9hG4bK74b44
    ;received=192.0.2.101
   Max-Forwards: 68
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=9103874 Bob <sip:bob@biloxi.example.com>;tag=9103874
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 3 ACK
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

3.4 Successful Session with Proxy Failure

   User A

   Alice           Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|                |                |
     |   INVITE F2    |                |                |
     |--------------->|                |                |
     |   INVITE F3    |                |                |
     |--------------->|                |                |
     |   INVITE F4    |                |                |
     |--------------->|                |                |
     |   INVITE F5    |                |                |
     |--------------->|                |                |
     |   INVITE F6    |                |                |
     |--------------->|                |                |
     |   INVITE F7    |                |                |
     |--------------->|                |                |
     |     INVITE F8                   |                |
     |-------------------------------->|                |
     |            407 F9               |                |
     |<--------------------------------|                |
     |             ACK F10             |                |
     |-------------------------------->|                |
     |           INVITE F11            |                |
     |-------------------------------->|   INVITE F12   |
     |             100  F13            |--------------->|
     |<--------------------------------|                |
     |                                 |     180 F14    |
     |             180 F15             |<---------------|
     |<--------------------------------|                |
     |                                 |     200 F16    |
     |             200 F17             |<---------------|
     |<--------------------------------|                |
     |             ACK F18             |                |
     |-------------------------------->|     ACK F19    |
     |                                 |--------------->|
     |                Both Way RTP Media                |
     |<================================================>|
     |                                 |     BYE F20    |
     |             BYE F21             |<---------------|
     |<--------------------------------|                |
     |             200 F22             |                |
     |-------------------------------->|     200 F23    |
     |                                 |--------------->|
     |                                 |                |
                     SIP Basic Call Flow Examples         October 2002           April 2003

   In this scenario, User A Alice completes a call to User B Bob via a Proxy Server. User A
   Alice 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).  User A  Alice has valid credentials for both
   domains.  Proxy 1 is out of service and does not respond to INVITEs
   (it is reachable, but unresponsive).  User A  Alice then completes the call
   to User B Bob using Proxy 2.

   Message Details

   F1 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK465b6d client.atlanta.example.com:5060;branch=z9hG4bK465b6d
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F2 INVITE A Alice -> Proxy 1

   Same as Message F1

   F3 INVITE A Alice -> Proxy 1

   Same as Message F1

   F4 INVITE A Alice -> Proxy 1

   Same as Message F1
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F5 INVITE A Alice -> Proxy 1

   Same as Message F1

   F6 INVITE A Alice -> Proxy 1

   Same as Message F1

   F7 INVITE A Alice -> Proxy 1

   Same as Message F1

   /* User A Alice gives up on the unresponsive proxy */

   F8 INVITE A Alice -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b8a client.atlanta.example.com:5060;branch=z9hG4bK74b8a
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Proxy 2 challenges User A Alice for authentication */

   F9 407 Proxy Authorization Required Proxy 2 -> User A Alice

   SIP/2.0 407 Proxy Authorization Required
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b8a client.atlanta.example.com:5060;branch=z9hG4bK74b8a
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples         October 2002           April 2003

   To: LittleGuy <sip:UserB@biloxi.com>;tag=2421452 Bob <sip:bob@biloxi.example.com>;tag=2421452
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 INVITE
   Proxy-Authenticate: Digest realm="biloxi.com", realm="biloxi.example.com", qop="auth",
    nonce="1ae6cbe5ea9c8e8df84fqnlec434a359",
    opaque="", stale=FALSE, algorithm=MD5
   Content-Length: 0

   F10 ACK A Alice -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b8a client.atlanta.example.com:5060;branch=z9hG4bK74b8a
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=2421452 Bob <sip:bob@biloxi.example.com>;tag=2421452
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* User A Alice responds be re-sending the INVITE with authentication
   credentials in it.  */

   F11 INVITE A Alice -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="biloxi.com", username="alice",
    realm="biloxi.example.com",
    nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="8a880c919d1a52f20a1593e228adf599"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
                     SIP Basic Call Flow Examples         October 2002           April 2003

   /* Proxy 2 accepts the credentials and forwards the INVITE to User B. Bob.
   Client for A Alice prepares to receive data on port 49172 from the
   network.
   */

   F12 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F13 100 Trying Proxy 2 -> User A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Content-Length: 0

   F14 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
                     SIP Basic Call Flow Examples           April 2003

   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
                     SIP Basic Call Flow Examples         October 2002
   Record-Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F15 180 Ringing Proxy 2 -> A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F16 200 OK B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
                     SIP Basic Call Flow Examples           April 2003

   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F17 200 OK Proxy 2 -> A
                     SIP Basic Call Flow Examples         October 2002 Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F18 ACK A Alice -> Proxy 2

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b8g client.atlanta.example.com:5060;branch=z9hG4bK74b8g
   Max-Forwards: 70
   Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0

   F19 ACK Proxy 2 -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b8g client.atlanta.example.com:5060;branch=z9hG4bK74b8g
    ;received=192.0.2.101
   Max-Forwards: 69
                     SIP Basic Call Flow Examples           April 2003

   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 2 ACK
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002

   /* RTP streams are established between A Alice and B Bob */

   /* User B Bob Hangs Up with User A. Alice. */

   F20 BYE User B Bob -> Proxy 2

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
   Max-Forwards: 70
   Route: <sip:ss2.biloxi.com;lr> <sip:ss2.biloxi.example.com;lr>
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F21 BYE Proxy 2 -> User A Alice

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   Max-Forwards: 69
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F22 200 OK User A Alice -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples           April 2003

   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F23 200 OK Proxy 2 -> User B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7
                     SIP Basic Call Flow Examples         October 2002 client.biloxi.example.com:5060;branch=z9hG4bKnashds7
    ;received=192.0.2.201
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 4Fde34wkd11wsGFDs3@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.5 Session Through a SIP ALG

   User A

   Alice             ALG           Proxy 2          User B            Bob
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|   INVITE F2    |                |
     |     100 F3     |--------------->|   INVITE F4    |
     |<---------------|     100 F5     |--------------->|
     |                |<---------------|      180 F6    |
     |                |     180 F7     |<---------------|
     |     180 F8     |<---------------|                |
     |<---------------|                |      200 F9    |
     |                |    200 F10     |<---------------|
     |     200 F11    |<---------------|                |
     |<---------------|                                 |
     |     ACK F12    |                                 |
     |--------------->|             ACK F13             |
     |                |-------------------------------->|
     |    RTP Media   |        Both Way RTP Media       |
     |<==============>|<===============================>|
     |     BYE F14    |                                 |
     |--------------->|             BYE F15             |
     |                |-------------------------------->|
     |                |             200 F16             |
     |     200 F17    |<--------------------------------|
     |<---------------|                                 |
     |                |                                 |

   User A

   Alice completes a call to User B Bob through a ALG (Application Layer
   Gateway) and a SIP Proxy.  The routing through the ALG is
   accomplished using a pre-loaded Route header in the INVITE F1. Note
   that the media stream setup is not end-to-end - the ALG terminates
   both media streams and bridges them.  This is done by the ALG
   modifying the SDP in the INVITE (F1) and 200 OK (F10) messages, and
   possibly any 18x or ACK messages containing SDP.

   In addition to firewall traversal, this Back-to-Back User Agent
   (B2BUA) could be used as part of an anonymizer
   service (in which all identifying information on User A Alice would be
   removed), or to perform codec media conversion, such as mu-law to A-
   law conversion of PCM on an international call.

   Also note that Proxy 2 does not Record-Route in this call flow.

   Message Details
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F1 INVITE A Alice -> SIP ALG

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   Proxy-Authorization: Digest username="UserA", realm="biloxi.com", username="alice",
    realm="biloxi.example.com",
    nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="b3f392f9218a328b9294076d708e6815"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* Client for A Alice prepares to receive data on port 49172 from the
   network. */

   F2 INVITE SIP ALG -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="biloxi.com", username="alice",
    realm="biloxi.example.com",
    nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="b3f392f9218a328b9294076d708e6815"
   Content-Type: application/sdp
   Content-Length: 142
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Type: application/sdp
   Content-Length: 150

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.128
   t=0 0
   m=audio 2000 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying SIP ALG -> A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   /* SIP ALG prepares to proxy data from port 192.0.2.128/2000 to
   192.0.2.101/49172.   Proxy 2 uses a Location Service function to
   determine where B Bob is located. Based upon location analysis the call
   is forwarded to User B Bob */

   F4 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 142 150

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com
   s=-
   c=IN IP4 192.0.2.128 client.atlanta.example.com
                     SIP Basic Call Flow Examples         October 2002           April 2003

   s=-
   c=IN IP4 192.0.2.128
   t=0 0
   m=audio 2000 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F5 100 Trying Proxy 2 -> SIP ALG

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F6 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F7 180 Ringing Proxy 2 -> SIP ALG

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com
   CSeq: 1 INVITE Bob <sip:bob@biloxi.example.com>;tag=314159
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Call-ID: 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F8 180 Ringing SIP ALG -> A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F9 200 OK B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F10 200 OK Proxy 2 -> SIP ALG

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1
                     SIP Basic Call Flow Examples         October 2002           April 2003

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F11 200 OK SIP ALG -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.128
   t=0 0
   m=audio 1734 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* The ALG prepares to proxy packets from 192.0.2.128/
      1734 to 192.0.2.201/3456 */

   F12 ACK A -> SIP ALG
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F12 ACK Alice -> SIP ALG

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bhh client.atlanta.example.com:5060;branch=z9hG4bK74bhh
   Max-Forwards: 70
   Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F13 ACK SIP ALG -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bhh client.atlanta.example.com:5060;branch=z9hG4bK74bhh
    ;received=192.0.2.101
   Max-Forwards: 69
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* RTP streams are established between A Alice and the ALG and
   between the ALG and B*/

   /* User A Alice Hangs Up with User B. Bob. */

   F14 BYE A Alice -> SIP ALG

   BYE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74be5 client.atlanta.example.com:5060;branch=z9hG4bK74be5
   Max-Forwards: 70
   Route: <sip:alg1.atlanta.com;lr> <sip:alg1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0

   F15 BYE SIP ALG -> B Bob

   BYE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74be5
    ;received=192.0.2.101 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Via: SIP/2.0/UDP client.atlanta.example.com:5060;branch=z9hG4bK74be5
    ;received=192.0.2.101
   Max-Forwards: 69
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0

   F16 200 OK B Bob -> SIP ALG

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 alg1.atlanta.example.com:5060;branch=z9hG4bK739578.1
    ;received=192.0.2.128
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74be5 client.atlanta.example.com:5060;branch=z9hG4bK74be5
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0

   F17 200 OK SIP ALG -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74be5 client.atlanta.example.com:5060;branch=z9hG4bK74be5
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.6 Session via Redirect and Proxy Servers with SDP in ACK

   User A

   Alice        Redirect Server     Proxy 3           User B             Bob
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|                |                |
     |     302 F2     |                |                |
     |<---------------|                |                |
     |     ACK F3     |                |                |
     |--------------->|                |                |
     |     INVITE F4                   |                |
     |-------------------------------->|    INVITE F5   |
     |             100  F6             |--------------->|
     |<--------------------------------|      180 F7    |
     |             180 F8              |<---------------|
     |<--------------------------------|                |
     |                                 |     200 F9     |
     |             200 F10             |<---------------|
     |<--------------------------------|                |
     |             ACK F11             |                |
     |-------------------------------->|     ACK F12    |
     |                                 |--------------->|
     |                Both Way RTP Media                |
     |<================================================>|
     |                                 |     BYE F13    |
     |             BYE F14             |<---------------|
     |<--------------------------------|                |
     |             200 F15             |                |
     |-------------------------------->|     200 F16    |
     |                                 |--------------->|
     |                                 |                |

   In this scenario, User A Alice places a call to User B Bob 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 Bob's
   current SIP address.  User A  Alice then generates a new INVITE and sends to
   User B
   Bob via the Proxy Server and the call proceeds normally.  In this
   example, no SDP is present in the INVITE, so the SDP is carried in
   the ACK message.

   The call is terminated when User B Bob sends a BYE message.

   Message Details

   F1 INVITE A Alice -> Redirect Server
                     SIP Basic Call Flow Examples         October 2002           April 2003

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 client.atlanta.example.com:5060;branch=z9hG4bKbf9f44
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Length: 0

   F2 302 Moved Temporarily Redirect Proxy -> A Alice

   SIP/2.0 302 Moved Temporarily
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 client.atlanta.example.com:5060;branch=z9hG4bKbf9f44
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=53fHlqlQ2 Bob <sip:bob@biloxi.example.com>;tag=53fHlqlQ2
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@chicago.com;transport=tcp> <sip:bob@chicago.example.com;transport=tcp>
   Content-Length: 0

   F3 ACK A Alice -> Redirect Server

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 client.atlanta.example.com:5060;branch=z9hG4bKbf9f44
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=53fHlqlQ2 Bob <sip:bob@biloxi.example.com>;tag=53fHlqlQ2
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F4 INVITE A Alice -> Proxy 3

   INVITE sip:UserB@chicago.com sip:bob@chicago.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F5 INVITE Proxy 3 -> B Bob

   INVITE sip:UserB@client.chicago.com sip:bob@client.chicago.example.com SIP/2.0
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Length: 0

   F6 100 Trying Proxy 3 -> A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Content-Length: 0

   F7 180 Ringing B Bob -> Proxy 3

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.233
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.chicago.com;transport=tcp> <sip:bob@client.chicago.example.com;transport=tcp>
   Content-Length: 0

   F8 180 Ringing Proxy 3 -> A

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 Alice
                     SIP Basic Call Flow Examples         October 2002           April 2003

   SIP/2.0 180 Ringing
   Via: SIP/2.0/TCP client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.chicago.com;transport=tcp> <sip:bob@client.chicago.example.com;transport=tcp>
   Content-Length: 0

   F9 200 OK B Bob -> Proxy 3

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.233
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.chicago.com;transport=tcp> <sip:bob@client.chicago.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 142 148

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.chicago.com client.chicago.example.com
   s=-
   c=IN IP4 192.0.2.100
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F10 200 OK Proxy -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 INVITE
   Contact: <sip:UserB@client.chicago.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 142 <sip:bob@client.chicago.example.com;transport=tcp>
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Type: application/sdp
   Content-Length: 148

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.chicago.com client.chicago.example.com
   s=-
   c=IN IP4 192.0.2.100
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* ACK contains SDP of A Alice since none present in INVITE */

   F11 ACK A Alice -> Proxy 3

   ACK sip:UserB@client.chicago.com sip:bob@client.chicago.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bq9 client.atlanta.example.com:5060;branch=z9hG4bK74bq9
   Max-Forwards: 70
   Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 ACK
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F12 ACK Proxy 3 -> B Bob

   ACK sip:UserB@client.chicago.com sip:bob@client.chicago.example.com SIP/2.0
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bq9 client.atlanta.example.com:5060;branch=z9hG4bK74bq9
    ;received=192.0.2.101
   Max-Forwards: 69
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 ACK
   Content-Type: application/sdp
                     SIP Basic Call Flow Examples           April 2003

   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com
                     SIP Basic Call Flow Examples         October 2002 client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /* RTP streams are established between A Alice and B*/ Bob */

   /* User B Bob Hangs Up with User A. Alice. */

   F13 BYE B Bob -> Proxy 3

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP client.chicago.com:5060;branch=z9hG4bKfgaw2 client.chicago.example.com:5060;branch=z9hG4bKfgaw2
   Max-Forwards: 70
   Route: <sip:ss3.chicago.com;lr> <sip:ss3.chicago.example.com;lr>
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F14 BYE Proxy 3 -> A Alice

   BYE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.100
   Via: SIP/2.0/TCP client.chicago.com:5060;branch=z9hG4bKfgaw2 client.chicago.example.com:5060;branch=z9hG4bKfgaw2
   Max-Forwards: 69
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0

   F15 200 OK A Alice -> Proxy 3

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1
   ss3.chicago.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.233
   Via: SIP/2.0/TCP client.chicago.com:5060;branch=z9hG4bKfgaw2 client.chicago.example.com:5060;branch=z9hG4bKfgaw2
                     SIP Basic Call Flow Examples           April 2003

    ;received=192.0.2.100
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002

   F16 200 OK Proxy 3 -> B Bob

   SIP/2.0 200 OK
   Via: SIP/2.0/TCP client.chicago.com:5060;branch=z9hG4bKfgaw2 client.chicago.example.com:5060;branch=z9hG4bKfgaw2
    ;received=192.0.2.100
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

  3.7 Session with re-INVITE (IP Address Change)

        User A

        Alice                Proxy 2              User B                Bob
           |   F1 INVITE        |                    |
           |------------------->|      F2 INVITE     |
           |   F3 100 Trying    |------------------->|
           |<-------------------|   F4 180 Ringing   |
           |   F5 180 Ringing   |<-------------------|
           |<-------------------|                    |
           |                    |    F6 200 OK       |
           |    F7 200 OK       |<-------------------|
           |<-------------------|                    |
           |                 F8  ACK                 |
           |---------------------------------------->|
           |      Both Way RTP Media Established     |
           |<=======================================>|
           |                                         |
           |            B           Bob changes IP address        |
           |                                         |
           |                 F9 INVITE               |
           |<----------------------------------------|
           |                F10 200 OK               |
           |---------------------------------------->|
           |                 F11  ACK                |
           |<----------------------------------------|
           |         New RTP Media Stream            |
           |<=======================================>|
           |                 F12 BYE                 |
           |---------------------------------------->|
           |               F25 200 OK                |
           |<----------------------------------------|
           |                                         |

   This example shows a session in which the media is changes midway
   through the session.  When User BĘs BobĘs IP address changes during the
   session, User B Bob sends a re-INVITE containing a new Contact and SDP
   (version number incremented) information to A.  In this flow, the
   proxy does not Record-Route so is not in the SIP messaging path after
   the initial exchange.

   Message Details

   F1 INVITE A Alice -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F2 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying Proxy 2 -> A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples         October 2002           April 2003

   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F4 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F5 180 Ringing Proxy 2 -> A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F6 200 OK B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 ss2.biloxi.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147
                     SIP Basic Call Flow Examples         October 2002           April 2003

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F7 200 OK Proxy 2 -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Type: application/sdp
   Content-Length: 141 147

   v=0
   o=UserB
   o=bob 2890844527 2890844527 IN IP4 client.biloxi.com client.biloxi.example.com
   s=-
   c=IN IP4 192.0.2.201
   t=0 0
   m=audio 3456 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F8 ACK A Alice -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74b7b client.atlanta.example.com:5060;branch=z9hG4bK74b7b
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   /* RTP streams are established between A Alice and B Bob */

   /* B Bob changes IP address and re-INVITEs A Alice with new Contact and
   SDP */

   F9 INVITE B Bob -> A Alice
                     SIP Basic Call Flow Examples         October 2002           April 2003

   INVITE sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKlkld5l client.chicago.example.com:5060;branch=z9hG4bKlkld5l
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 14 INVITE
   Contact: <sip:UserB@client.chicago.com> <sip:bob@client.chicago.example.com>
   Content-Type: application/sdp
   Content-Length: 143 149

   v=0
   o=UserB
   o=bob 2890844527 2890844528 IN IP4 client.chicago.com client.chicago.example.com
   s=-
   c=IN IP4 192.0.2.100
   t=0 0
   m=audio 47172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F10 200 OK A Alice ->B

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKlkld5l client.chicago.example.com:5060;branch=z9hG4bKlkld5l
    ;received=192.0.2.100
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 14 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 150

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 1000 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F11 ACK B Bob -> A Alice

   ACK sip:UserA@client.atlanta.com sip:alice@client.atlanta.example.com SIP/2.0
   Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKlkldcc client.chicago.example.com:5060;branch=z9hG4bKlkldcc
   Max-Forwards: 70
   From: LittleGuy <sip:UserB@biloxi.com>;tag=314159
                     SIP Basic Call Flow Examples         October 2002           April 2003

   From: Bob <sip:bob@biloxi.example.com>;tag=314159
   To: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 14 ACK
   Content-Length: 0

   /* New RTP stream established between A Alice and B Bob */

   /* A Alice hangs up with B Bob */

   F12 BYE A Alice -> B Bob

   BYE sip:UserB@client.chicago.com sip:bob@client.chicago.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bo4 client.atlanta.example.com:5060;branch=z9hG4bK74bo4
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0

   F13 200 OK B Bob -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bo4 client.atlanta.example.com:5060;branch=z9hG4bK74bo4
    ;received=192.0.2.101
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 2 BYE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.8 Unsuccessful No Answer

   User A

   Alice           Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   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 Alice gives up on the call before User B Bob answers
   (sends a 200 OK response).  User A  Alice sends a CANCEL (F9) since no final
   response had been received from User B. Bob.  If a 200 OK to the INVITE
   had crossed with the CANCEL, User A Alice would have sent an ACK then a BYE
   to User B Bob 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.

                     SIP Basic Call Flow Examples         October 2002           April 2003

   Message Details

   F1 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="b00b416324679d7e243f55708d44be7b"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /*Client for A Alice prepares to receive data on port 49172 from the
   network.*/

   F2 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Length: 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying Proxy 1 -> A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F4 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.client.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.client.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   Max-Forwards: 68
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000
                     SIP Basic Call Flow Examples         October 2002           April 2003

   a=rtpmap:0 PCMU/8000

   F5 100 Trying Proxy 2 -> Proxy 1

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F6 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss2.client.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.client.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F7 180 Ringing Proxy 2 -> Proxy 1

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
                     SIP Basic Call Flow Examples           April 2003

   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F8 180 Ringing Proxy 1 -> A
                     SIP Basic Call Flow Examples         October 2002 Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F9 CANCEL A Alice -> Proxy 1

   CANCEL sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Route: <sip:ss1.atlanta.example.com;lr>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0

   F10 200 OK Proxy 1 -> A Alice

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0

   F11 CANCEL Proxy 1 -> Proxy 2

   CANCEL sip:UserA@atlanta.com sip:alice@atlanta.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
                     SIP Basic Call Flow Examples           April 2003

   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002

   F12 200 OK Proxy 2 -> Proxy 1

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0

   F13 CANCEL Proxy 2 -> B Bob

   CANCEL sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0

   F14 200 OK B Bob -> Proxy 2

   SIP/2.0 200 OK
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 CANCEL
   Content-Length: 0

   F15 487 Request Terminated B Bob -> Proxy 2

   SIP/2.0 487 Request Terminated
                     SIP Basic Call Flow Examples           April 2003

   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
                     SIP Basic Call Flow Examples         October 2002
   Content-Length: 0

   F16 ACK Proxy 2 -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F17 487 Request Terminated Proxy 2 -> Proxy 1

   SIP/2.0 487 Request Terminated
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F18 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
                     SIP Basic Call Flow Examples           April 2003

   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F19 487 Request Terminated Proxy 1 -> A Alice

   SIP/2.0 487 Request Terminated
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com
                     SIP Basic Call Flow Examples         October 2002 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE

   F20 ACK A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="b00b416324679d7e243f55708d44be7b"
   CSeq: 1 ACK
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.9 Unsuccessful Busy

   User A

   Alice           Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   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 Bob is busy and sends a 486 Busy Here response
   to User A's Alice's INVITE.  Note that the non-2xx response is acknowledged on
   a hop-by-hop basis instead of end-to-end.  Also note that many SIP
   UAs will not return a 486 response, as they have multiple line and
   other features.

   Message Details

   F1 INVITE User A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="702138b27d869ac8741e10ec643d55be"
   Content-Type: application/sdp
   Content-Length: 143
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Length: 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /*Client for A Alice prepares to receive data on port 49172 from the
   network.*/

   F2 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying Proxy 1 -> User A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   F4 INVITE Proxy 2 -> User B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com;transport=tcp> <sip:alice@client.atlanta.example.com;transport=tcp>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F6 486 Busy Here User B Bob -> Proxy 2

   SIP/2.0  486 Busy Here
                     SIP Basic Call Flow Examples           April 2003

   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
                     SIP Basic Call Flow Examples         October 2002
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F7 ACK Proxy 2 -> User B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F8 486 Busy Here Proxy 2 -> Proxy 1

   SIP/2.0  486 Busy Here
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F9 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com
   CSeq: 1 ACK
   Content-Length: 0

   F10 2xTb9vxSit55XU7p8@atlanta.example.com
                     SIP Basic Call Flow Examples           April 2003

   CSeq: 1 ACK
   Content-Length: 0

   F10 486 Busy Here Proxy 1 -> User A
                     SIP Basic Call Flow Examples         October 2002 Alice

   SIP/2.0  486 Busy Here
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F11 ACK User A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/TCP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="702138b27d869ac8741e10ec643d55be"
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.10 Unsuccessful No Response from User Agent

   User A

   Alice           Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|   INVITE F2    |                |
     |     100  F3    |--------------->|   INVITE F4    |
     |<---------------|     100  F5    |--------------->|
     |                |<---------------|   INVITE F6    |
     |                |                |--------------->|
     |                |                |   INVITE F7    |
     |                |                |--------------->|
     |                |                |   INVITE F8    |
     |                |                |--------------->|
     |                |                |   INVITE F9    |
     |                |                |--------------->|
     |                |                |   INVITE F10   |
     |                |                |--------------->|
     |                |                |   INVITE F11   |
     |                |     480 F12    |--------------->|
     |                |<---------------|                |
     |                |     ACK F13    |                |
     |     480 F14    |--------------->|                |
     |<---------------|                |                |
     |     ACK F15    |                |                |
     |--------------->|                |                |
     |                |                |                |

   In this example, there is no response from User B Bob to User A's Alice's INVITE
   messages being re-transmitted by Proxy 2.  After the sixth re-
   transmission, Proxy 2 gives up and sends a 480 No Response to User A. Alice.

   Message Details

   F1 INVITE User A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com",
    nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="", username="alice",
    realm="atlanta.example.com",
                     SIP Basic Call Flow Examples         October 2002

    uri="sip:UserB@biloxi.com",           April 2003

    nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="7afc04be7961f053c24f80e7dbaf888f"
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /*Client for A Alice prepares to receive data on port 49172 from the
   network.*/

   F2 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying Proxy 1 -> User A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples         October 2002           April 2003

   To: Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F4 INVITE Proxy 2 -> User B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0
                     SIP Basic Call Flow Examples           April 2003

   F6 INVITE Proxy 2 -> User B Bob

   Resend of Message F4
                     SIP Basic Call Flow Examples         October 2002

   F7 INVITE Proxy 2 -> User B Bob

   Resend of Message F4

   F8 INVITE Proxy 2 -> User B Bob

   Resend of Message F4

   F9 INVITE Proxy 2 -> User B Bob

   Resend of Message F4

   F10 INVITE Proxy 2 -> User B Bob

   Resend of Message F4

   F11 INVITE Proxy 2 -> User B Bob

   Resend of Message F4

   /* Proxy 2 gives up */

   F12 480 No Response Proxy 2 -> Proxy 1

   SIP/2.0 480 No Response
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F13 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Max-Forwards: 70
   From: Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F14 480 No Response Proxy 1 -> User A Alice

   SIP/2.0 480 No Response
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F15 ACK User A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="7afc04be7961f053c24f80e7dbaf888f"
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

 3.11 Unsuccessful Temporarily Unavailable

   User A

   Alice          Proxy 1          Proxy 2          User B            Bob
     |                |                |                |
     |   INVITE F1    |                |                |
     |--------------->|   INVITE F2    |                |
     |     100  F3    |--------------->|   INVITE F4    |
     |<---------------|     100  F5    |--------------->|
     |                |<---------------|      180 F6    |
     |                |     180 F7     |<---------------|
     |     180 F8     |<---------------|                |
     |<---------------|                |     480 F9     |
     |                |                |<---------------|
     |                |                |     ACK F10    |
     |                |     480 F11    |--------------->|
     |                |<---------------|                |
     |                |     ACK F12    |                |
     |     480 F13    |--------------->|                |
     |<---------------|                |                |
     |     ACK F14    |                |                |
     |--------------->|                |                |
     |                |                |                |

   In this scenario, User B Bob initially sends a 180 Ringing response to
   User A,
   Alice, indicating that alerting is taking place.  However, then a
   480 Unavailable is then sent to User A. Alice.  This response is
   acknowledged then proxied back to User A. Alice.

   Message Details

   F1 INVITE A Alice -> Proxy 1

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Proxy-Authorization: Digest username="UserA", realm="atlanta.com", username="alice",
    realm="atlanta.example.com",
    nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="",
    uri="sip:UserB@biloxi.com",
    uri="sip:bob@biloxi.example.com",
    response="59a46a91bf1646562a4d486c84b399db"
   Content-Type: application/sdp
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   /*Client for A Alice prepares to receive data on port 49172 from the
   network.*/

   F2 INVITE Proxy 1 -> Proxy 2

   INVITE sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 69
   Record-Route: <sip:ss1.atlanta.com;lr> <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   t=0 0
   m=audio 49172 RTP/AVP 0
   a=rtpmap:0 PCMU/8000

   F3 100 Trying Proxy 1 -> A Alice

   SIP/2.0 100 Trying
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Content-Length: 0

   F4 INVITE Proxy 2 -> B Bob

   INVITE sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Max-Forwards: 68
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserA@client.atlanta.com> <sip:alice@client.atlanta.example.com>
   Content-Type: application/sdp
   Content-Length: 143 151

   v=0
   o=UserA
   o=alice 2890844526 2890844526 IN IP4 client.atlanta.com client.atlanta.example.com
   s=-
   c=IN IP4 192.0.2.101
   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.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com> Bob <sip:bob@biloxi.example.com>
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F6 180 Ringing B Bob -> Proxy 2

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1
                     SIP Basic Call Flow Examples         October 2002           April 2003

   Via: SIP/2.0/UDP
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F7 180 Ringing Proxy 2 -> Proxy 1

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0

   F8 180 Ringing Proxy 1 -> A Alice

   SIP/2.0 180 Ringing
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   Record-Route: <sip:ss2.biloxi.com;lr>, <sip:ss1.atlanta.com;lr> <sip:ss2.biloxi.example.com;lr>,
   <sip:ss1.atlanta.example.com;lr>
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Contact: <sip:UserB@client.biloxi.com> <sip:bob@client.biloxi.example.com>
   Content-Length: 0
                     SIP Basic Call Flow Examples           April 2003

   F9 480 Temporarily Unavailable B Bob -> Proxy 2

   SIP/2.0 480 Temporarily Unavailable
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
    ;received=192.0.2.222
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
                     SIP Basic Call Flow Examples         October 2002
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F10 ACK Proxy 2 -> B Bob

   ACK sip:UserB@client.biloxi.com sip:bob@client.biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1
   ss2.biloxi.example.com:5060;branch=z9hG4bK721e418c4.1
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F11 480 Temporarily Unavailable Proxy 2 -> Proxy 1

   SIP/2.0 480 Temporarily Unavailable
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
    ;received=192.0.2.111
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F12 ACK Proxy 1 -> Proxy 2

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1
   Max-Forwards: 70
                     SIP Basic Call Flow Examples           April 2003

   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 ACK
   Content-Length: 0

   F13 480 Temporarily Unavailable Proxy 1 -> A
                     SIP Basic Call Flow Examples         October 2002 Alice

   SIP/2.0 480 Temporarily Unavailable
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
    ;received=192.0.2.101
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   CSeq: 1 INVITE
   Content-Length: 0

   F14 ACK A Alice -> Proxy 1

   ACK sip:UserB@biloxi.com sip:bob@biloxi.example.com SIP/2.0
   Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 client.atlanta.example.com:5060;branch=z9hG4bK74bf9
   Max-Forwards: 70
   From: BigGuy <sip:UserA@atlanta.com>;tag=9fxced76sl Alice <sip:alice@atlanta.example.com>;tag=9fxced76sl
   To: LittleGuy <sip:UserB@biloxi.com>;tag=314159 Bob <sip:bob@biloxi.example.com>;tag=314159
   Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2xTb9vxSit55XU7p8@atlanta.example.com
   Proxy-Authorization: Digest username="alice",
    realm="atlanta.example.com",
    nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="",
    uri="sip:bob@biloxi.example.com",
    response="59a46a91bf1646562a4d486c84b399db"
   CSeq: 1 ACK
   Content-Length: 0

Security Considerations

   Since this document contains examples of SIP session establishment,
   the security considerations in RFC 3261 [2] [1] apply.  RFC 3261
   describes the basic threats including registration hijacking, server
   impersonation, message body tampering, session modifying or teardown,
   and denial of service and amplification attacks.  The use of HTTP
   Digest as shown in this document provides one-way authentication and
   protection against replay attacks.  TLS transport is used in
   registration scenarios due to the lack of integrity protection in
   HTTP Digest and the danger of registration hijacking without it, as
   described in RFC 3261 [2]. [1].  A full discussion of the weaknesses of
   HTTP Digest is provided in RFC 3261 [2]. [1].  The use of TLS and the
   Secure SIP (sips) URI scheme provides a better level of security
                     SIP Basic Call Flow Examples           April 2003

   including two-way authentication.  IPsec can also improve security. S/MIME can provide end-to-end
   confidentiality and integrity protection of message bodies, as
   described in RFC 3261.

Normative References

  1  Bradner, S., "Key words for use in RFCs to Indicate Requirement
      Levels", BCP 14, RFC 2119, March 1997

  2 Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
      Peterson, J., Sparks, R., Handley, M., and Schooler, E., "SIP:
      Session Initiation Protocol", RFC 3261, June 2002.

                     SIP Basic Call Flow Examples         October 2002

  3

  2 Rosenberg, J. and Schulzrinne, H., "An Offer/Answer Model with
      SDP", Internet Engineering Task Force, RFC 3264, April 2002.

  4 Johnston, A., Donovan, S., Sparks, R., Cunningham, C., Summers, K.,
      "Session Initiation Protocol PSTN Call Flows", RFC xxxx, August
      2002.

  5

  3 Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach,
      P., Luotonen, A. and Stewart, L., "HTTP authentication: Basic and
      Digest Access Authentication", RFC 2617, June 1999.

Informative References

  4 Johnston, A., Donovan, S., Sparks, R., Cunningham, C., Summers, K.,
      "Session Initiation Protocol PSTN Call Flow Examples", RFC xxxx,
      August 2002.

Acknowledgments

   This document is has been a group effort by the SIP and SIPPING WGs.
   The authors wish to thank everyone who has read, reviewed, commented,
   or made suggestions to improve this document.

   Thanks to Rohan Mahy, Adam Roach, Gonzalo Camarillo, Cullen Jennings,
   and Tom Taylor for their detailed comments during the final review.
   Thanks to Dean Willis for his early contributions to the development
   of this document.

   The authors wish to thank Neil Deason for his additions to the
   Torture Test messages and Kundan Singh for performing parser
   validation of messages.

   The authors wish to thank the following individuals for their
   participation in the review of this call flows document: Aseem
   Agarwal, Rafi Assadi, Ben Campbell, Sunitha Kumar, Jon Peterson, Marc
   Petit-Huguenin, Vidhi Rastogi, and Bodgey Yin Shaohua.

                     SIP Basic Call Flow Examples           April 2003

   The authors also wish to thank the following individuals for their
   assistance: Jean-Francois Mule, 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.

Author's Addresses
                     SIP Basic Call Flow Examples         October 2002

   All listed authors actively contributed large amounts of text to this
   document.

      Alan Johnston
      WorldCom
      100 South 4th Street
      St. Louis, MO 63102
      USA

      EMail:  alan.johnston@wcom.com

      Steve Donovan
      dynamicsoft, Inc.
      5100 Tennyson Parkway
      Suite 1200
      Plano, Texas 75024
      USA

      EMail:  sdonovan@dynamicsoft.com

      Robert Sparks
      dynamicsoft, Inc.
      5100 Tennyson Parkway
      Suite 1200
      Plano, Texas 75024
      USA

      EMail:  rsparks@dynamicsoft.com

      Chris Cunningham
      dynamicsoft, Inc.
      5100 Tennyson Parkway
      Suite 1200
      Plano, Texas 75024
      USA
                     SIP Basic Call Flow Examples           April 2003

      EMail: ccunningham@dynamicsoft.com

      Kevin Summers
      Sonus
      1701 North Collins Blvd, Suite 3000
      Richardson, TX 75080
      USA

      Email: kevin.summers@sonusnet.com
                     SIP Basic Call Flow Examples         October 2002

Intellectual Property Statement

   The IETF takes no position regarding the validity or scope of any
   intellectual property or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; neither does it represent that it
   has made any effort to identify any such rights. Information on the
   IETF's procedures with respect to rights in standards-track and
   standards-related documentation can be found in BCP-11. Copies of
   claims of rights made available for publication and any assurances of
   licenses to be made available, or the result of an attempt made to
   obtain a general license or permission for the use of such
   proprietary rights by implementors or users of this specification can
   be obtained from the IETF Secretariat.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights which may cover technology that may be required to practice
   this standard. Please address the information to the IETF Executive
   Director.

Full Copyright Statement

   Copyright Notice

   "Copyright (C) The Internet Society 2002. (2003). 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
                     SIP Basic Call Flow Examples           April 2003

   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. assignees.

   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.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.