idnits 2.17.1 draft-ietf-sipping-call-flows-01.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? ** The document seems to lack a 1id_guidelines paragraph about the list of current Internet-Drafts. ** The document seems to lack a 1id_guidelines paragraph about the list of Shadow Directories. == It seems as if not all pages are separated by form feeds - found 0 form feeds but 218 pages Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. == There are 657 instances of lines with non-RFC2606-compliant FQDNs in the document. == There are 1 instance of lines with non-RFC6890-compliant IPv4 addresses in the document. If these are example addresses, they should be changed. == There are 129 instances of lines with private range IPv4 addresses in the document. If these are generic example addresses, they should be changed to use any of the ranges defined in RFC 6890 (or successor): 192.0.2.x, 198.51.100.x or 203.0.113.x. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- Couldn't find a document date in the document -- date freshness check skipped. -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 2617 (Obsoleted by RFC 7235, RFC 7615, RFC 7616, RFC 7617) ** Obsolete normative reference: RFC 2401 (Obsoleted by RFC 4301) ** Obsolete normative reference: RFC 2246 (Obsoleted by RFC 4346) ** Obsolete normative reference: RFC 2806 (Obsoleted by RFC 3966) Summary: 9 errors (**), 0 flaws (~~), 5 warnings (==), 3 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force Alan Johnston 3 Internet Draft WorldCom 4 Document: draft-ietf-sipping-call-flows-01.txt Steve Donovan 5 Category: Informational Robert Sparks 6 July 2002 Chris Cunningham 7 Expires: December 2002 Dean Willis 8 Jonathan Rosenberg 9 dynamicsoft 10 Kevin Summers 11 Sonus 12 Henning Schulzrinne 13 Columbia University 15 Session Initiation Protocol Call Flow Examples 17 Status of this Memo 19 This document is an Internet-Draft and is in full conformance with 20 all provisions of Section 10 of RFC2026. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF), its areas, and its working groups. Note that other 24 groups may also distribute working documents as Internet-Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet- Drafts as reference 28 material or to cite them other than as "work in progress." 29 The list of current Internet-Drafts can be accessed at 30 http://www.ietf.org/ietf/1id-abstracts.txt 31 The list of Internet-Draft Shadow Directories can be accessed at 32 http://www.ietf.org/shadow.html. 34 Abstract 36 This informational document gives examples of Session Initiation 37 Protocol (SIP) call flows. Elements in these call flows include SIP 38 User Agents and Clients, SIP Proxy and Redirect Servers, and Gateways 39 to the PSTN (Public Switch Telephone Network). Scenarios include SIP 40 Registration, SIP to SIP calling, SIP to Gateway, Gateway to SIP, and 41 Gateway to Gateway via SIP. Call flow diagrams and message details 42 are shown. PSTN telephony protocols are illustrated using ISDN 43 (Integrated Services Digital Network), ANSI ISUP (ISDN User Part), 44 and FGB (Feature Group B) circuit associated signaling. PSTN calls 45 are illustrated using global telephone numbers from the PSTN and 46 private extensions served on by a PBX (Private Branch Exchange). 47 Example SIP messages used for testing during SIP interoperability 48 test events include SIP "torture test" messages, and messages with 49 invalid parameters, methods, and tags. 51 Table of Contents 53 1 Overview...................................................4 54 1.1 General Assumptions........................................4 55 1.2 Legend for Message Flows...................................5 56 1.3 SIP Protocol Assumptions...................................6 57 2 SIP Registration...........................................7 58 2.1 Success Scenarios..........................................7 59 2.1.1 SIP Client New Registration................................7 60 2.1.2 User updates contact list..................................9 61 2.1.3 User Requests Current Contact List........................11 62 2.1.4 User Cancels Registration.................................12 63 2.2 Failure Scenarios.........................................13 64 2.2.1 Unsuccessful SIP registration.............................13 65 3 SIP to SIP Dialing........................................15 66 3.1 Success Scenarios.........................................15 67 3.1.1 Successful Simple SIP to SIP..............................16 68 3.1.2 Successful SIP to SIP through two proxies.................19 69 3.1.3 Successful SIP to SIP with Multi Proxy Authentication.....29 70 3.1.4 Successful SIP to SIP with Proxy failure..................39 71 3.1.5 Successful SIP to SIP through SIP ALG ....................47 72 3.1.6 Successful SIP to SIP via Redirect and Proxy SDP in ACK...55 73 3.1.7 Successful SIP to SIP with re-INVITE......................61 74 3.2 Failure Scenarios.........................................67 75 3.2.1 Unsuccessful SIP to SIP no answer.........................67 76 3.2.2 Unsuccessful SIP to SIP busy..............................74 77 3.2.3 Unsuccessful SIP to SIP no response.......................79 78 3.2.4 Unsuccessful SIP to SIP Temporarily Unavailable...........84 79 4 SIP to Gateway Dialing....................................90 80 4.1 Success Scenarios.........................................90 81 4.1.1 Successful SIP to ISUP PSTN call..........................91 82 4.1.2 Successful SIP to ISDN PBX call...........................99 83 4.1.3 Successful SIP to ISUP PSTN call with overflow...........107 84 4.2 Failure Scenarios........................................115 85 4.2.1 Unsuccessful SIP to PSTN call: Treatment from PSTN.......116 86 4.2.2 Unsuccessful SIP to PSTN: REL w/Cause from PSTN..........123 87 4.2.3 Unsuccessful SIP to PSTN: ANM Timeout....................127 88 5 Gateway to SIP Dialing...................................133 89 5.1 Success Scenarios........................................133 90 5.1.1 Successful PSTN to SIP call..............................134 91 5.1.2 Successful PSTN to SIP call, Fast Answer.................140 92 5.1.3 Successful PBX to SIP call...............................145 93 5.2 Failure Scenarios........................................151 94 5.2.1 Unsuccessful PSTN to SIP REL, SIP error mapped to REL....151 95 5.2.2 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL.....153 96 5.2.3 Unsuccessful PSTN->SIP, SIP error interworking to tones..157 97 5.2.4 Unsuccessful PSTN->SIP, ACM timeout......................161 98 5.2.5 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy.....165 99 5.2.6 Unsuccessful PSTN->SIP, Call Abandonment.................168 100 6 Gateway to Gateway Dialing via SIP Network...............174 101 6.1 Success Scenarios........................................174 102 6.1.1 Successful ISUP PSTN to ISUP PSTN call...................175 103 6.1.2 Successful FGB PBX to ISDN PBX call with overflow........182 104 7 SIP Test Messages........................................191 105 7.1 INVITE Parser Torture Test Message.......................191 106 7.2 INVITE with Proxy-Require and Require....................192 107 7.3 INVITE with Unknown Schemes in URIs and URLs.............192 108 7.4 REGISTER with Y2038 Test.................................193 109 7.5 INVITE with inconsistent Accept and message body.........193 110 7.6 INVITE with non-SDP message body.........................194 111 7.7 Unknown Method Message...................................194 112 7.8 Unknown Method with CSeq Error...........................195 113 7.9 REGISTER with Unknown Authorization Scheme...............195 114 7.10 Multiple SIP Request in a Single Message.................196 115 7.11 INVITE missing Required Headers..........................197 116 7.12 INVITE with Duplicate Required Headers...................197 117 7.13 INVITE with Illegal Expires Header.......................198 118 7.14 200 OK Response with Broadcast Via Header................198 119 7.15 INVITE with Invalid Via and Contact Headers..............199 120 7.16 INVITE with Incorrect Content-Length Header..............200 121 7.17 INVITE with Invalid Value for Content-Length.............200 122 7.18 INVITE with Garbage after Message Body...................201 123 7.19 INVITE with Error in Display Name in To Header...........201 124 7.20 INVITE with long tokens, Call-ID, and SIP URIs...........202 125 7.21 INVITE with Illegal Enclosing of Request-URI in "<>".....202 126 7.22 INVITE with Illegal LWS within Elements of Request-URI...203 127 7.23 INVITE with Illegal >1 SP between elements Request-URI...204 128 7.24 INVITE with a Legal SIP URI With Escaped Characters......204 129 7.25 INVITE with the Illegal Escaped Headers Request-URI......205 130 7.26 INVITE with Unknown Scheme in Request-URI................206 131 7.27 OPTIONS with no LWS between display name and "<".........206 132 7.28 OPTIONS with Extra WS between display name and "<".......206 133 7.29 INVITE with an Illegal Date Format.......................207 134 7.30 INVITE with Passed Expires Time..........................207 135 7.31 INVITE with Max-Forwards Set to Zero.....................208 136 7.32 REGISTER with Escaped Header in a Legal Contact URI......209 137 7.33 REGISTER with Escaped Header in an Illegal Contact URI...209 138 7.34 INVITE with Long Values in Headers.......................210 139 7.35 OPTIONS with Multiple Headers............................211 140 7.36 INVITE with Large Number of SDP Attributes and Long URI..211 141 7.37 REGISTER with Contact Parameter..........................212 142 7.38 REGISTER with a URI Parameter............................213 143 7.39 INVITE with Unquoted Display Name with Tokens............213 144 7.40 INVITE with Unquoted Display Name with Non-Token Chars...213 145 7.41 INVITE with Unknown (Higher) Protocol Version Start Line.214 146 8 Security Considerations .................................214 147 9 IANA Considerations .....................................215 148 10 Acknowledgements.........................................215 149 11 References...............................................215 151 1 Overview 153 The call flows shown in this document were developed in the design of 154 a carrier-class SIP IP Telephony network. They represent an example 155 minimum set of functionality for SIP to be used in IP Telephony 156 applications. The message examples were developed during the SIP 157 interoperability tests known as SIPit. 159 It is the hope of the authors that this document will be useful for 160 SIP implementors, designers, and protocol researchers alike and will 161 help further the goal of a standard SIP implementation for IP 162 Telephony. It is envisioned that as changes to the standard and 163 additional RFCs are added that this document will reflect those 164 changes and represent the current state of a standard interoperable 165 SIP IP Telephony implementation. 167 Note that this document is informational, and is NOT NORMATIVE on any 168 aspect of SIP or SIP/PSTN interworking. 170 These call flows are based on the current version 2.0 of SIP in 171 [RFC3261] with SDP usage described in [RFC3264]. 173 Various PSTN signaling protocols are illustrated in this document: 174 ISDN (Integrated Services Digital Network), ANSI ISUP (ISDN User 175 Part) and FGB (Feature Group B) circuit associated signaling. They 176 were chosen to illustrate the nature of SIP/PSTN interworking - they 177 are not a complete or even representative set. Also, some details 178 and parameters of these PSTN protocols have been omitted. For full 179 information about SIP to ISUP mapping, refer to [SIP-ISUP]. 181 Finally, some example messages are given along with expected 182 behavior of clients and servers. 184 1.1 General Assumptions 186 A number of architecture, network, and protocol assumptions underly 187 the call flows in this document. Note that these assumptions are not 188 requirements. They are outlined in this section so that they may be 189 taken into consideration and to aid in the understanding of the call 190 flow examples. 192 The authentication of SIP User Agents in these example call flows is 193 performed using SIP Digest as defined in [RFC3261] and [RFC2617]. 195 Throughout this document the call flows show a network where the 196 proxy servers authenticate users on behalf of gateways. Gateways may 197 also authenticate users directly. Both of these are reasonable usages 198 of SIP. If gateways do not authenticate directly they would be to 199 refuse requests from entities other than trusted proxy servers with 200 which they have effective channel security (for example [RFC2246] or 201 [RFC2401])." 202 The SIP Proxy Server has access to a Location Service and other 203 databases. Information present in the Request-URI and the context 204 (From header) is sufficient to determine to which proxy or gateway 205 the message should be routed. In most cases, a primary and secondary 206 route will be determined in case of Proxy or Gateway failure 207 downstream. 209 Some Proxy Servers in these call flows insert Record-Route headers 210 into requests to ensure that they are in the signaling path for 211 future message exchanges. 213 Gateways provide tones (ringing, busy, etc) and announcements to the 214 PSTN side based on SIP response messages, or pass along audio in-band 215 tones (ringing, busy tone, etc.) in an early media stream to the SIP 216 side. 218 The interactions between the Proxy and Gateway can be summarized as 219 follows: 221 . The SIP Proxy Server performs digit analysis and lookup and 222 locates the correct gateway. 224 . The SIP Proxy Server performs gateway location based on primary 225 and secondary routing. 227 Telephone numbers are usually represented as SIP URIs. Note that an 228 alternative is the use of the tel URI [RFC2806]. 230 These flows show UDP for transport. Other transport schemes could 231 also be used. 233 1.2 Legend for Message Flows 235 Dashed lines (---) represent signaling messages that are mandatory to 236 the call scenario. These messages can be SIP or PSTN 237 signaling. The arrow indicates the direction of message flow. 239 Double dashed lines (===) represent media paths between network 240 elements. 242 Messages with parentheses around their name represent optional 243 messages. 245 Messages are identified in the Figures as F1, F2, etc. This 246 references the message details in the list that follows the Figure. 247 Comments in the message details are shown in the following form: 249 /* Comments. */ 251 1.3 SIP Protocol Assumptions 252 This document is informational only and is NOT NORMATIVE in any 253 sense. 255 For simplicity in reading and editing the document, there are a 256 number of differences between some of the examples and actual SIP 257 messages. For example, the SIP Digest responses are not actual MD5 258 encodings. Call-IDs are often repeated, and CSeq counts often begin 259 at 1. Header fields are usually shown in the same order. Usually 260 only the minimum required header field set is shown, others that 261 would normally be present such as Accept, Supported, Allow, etc are 262 not shown. 264 Actors: 266 Element Display Name URI IP Address 267 ------- ------------ --- ---------- 269 User Agent BigGuy UserA@atlanta.com 192.168.100.101 270 User Agent LittleGuy UserB@biloxi.com 192.168.200.201 271 User Agent UserB@chicago.com 192.168.200.100 272 Proxy Server ss1.atlanta.com 192.168.255.111 273 Proxy/Registrar ss2.biloxi.com 192.168.156.222 274 Proxy Server ss3.chicago.com 192.168.182.333 275 ALG alg1.atlanta.com 192.168.255.128 276 User Agent (Gateway) gw1.atlanta.com 192.168.255.201 277 User Agent (Gateway) gw2.atlanta.com 192.168.255.202 278 User Agent (Gateway) gw3.atlanta.com 192.168.255.203 279 User Agent (Gateway) ngw1.atlanta.com 192.168.255.101 280 User Agent (Gateway) ngw2.atlanta.com 192.168.255.102 282 2 SIP Registration 284 2.1 Success Scenarios 286 Registration binds a particular device Contact URI with a SIP user 287 AOR (Address of Record). 289 2.1.1 SIP Client New Registration 291 User B SIP Server 292 | | 293 | REGISTER F1 | 294 |------------------------------>| 295 | 401 Unauthorized F2 | 296 |<------------------------------| 297 | REGISTER F3 | 298 |------------------------------>| 299 | 200 OK F4 | 300 |<------------------------------| 301 | | 303 User B sends a SIP REGISTER request to the SIP server. The request 304 includes the user's contact list. The SIP server provides a 305 challenge to User B. User B enters her/his valid user ID and 306 password. User B's SIP client encrypts the user information 307 according to the challenge issued by the SIP server and 308 sends the response to the SIP server. The SIP server validates the 309 user's credentials. It registers the user in its contact database 310 and returns a response (200 OK) to User B's SIP client. The response 311 includes the user's current contact list in Contact headers. The 312 format of the authentication shown is SIP digest. It is assumed that 313 User B has not previously registered with this Server. 315 Message Details 317 F1 REGISTER B -> SIP Server 319 REGISTER sip:ss2.biloxi.com SIP/2.0 320 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 321 Max-Forwards: 70 322 From: LittleGuy ;tag=a73kszlfl 323 To: LittleGuy 324 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 325 CSeq: 1 REGISTER 326 Contact: 327 Content-Length: 0 329 F2 401 Unauthorized SIP Server -> User B 330 SIP/2.0 401 Unauthorized 331 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 332 ;received=192.168.200.201 333 From: LittleGuy ;tag=a73kszlfl 334 To: LittleGuy ;tag=1410948204 335 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 336 CSeq: 1 REGISTER 337 WWW-Authenticate: Digest realm="atlanta.com", qop="auth", 338 nonce="ea9c8e88df84f1cec4341ae6cbe5a359", 339 opaque="", stale=FALSE, algorithm=MD5 340 Content-Length: 0 342 F3 REGISTER B -> SIP Server 344 REGISTER sip:ss2.biloxi.com SIP/2.0 345 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 346 Max-Forwards: 70 347 From: LittleGuy ;tag=ja743ks76zlflH 348 To: LittleGuy 349 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 350 CSeq: 2 REGISTER 351 Contact: 352 Authorization: Digest username="UserB", realm="atlanta.com" 353 nonce="ea9c8e88df84f1cec4341ae6cbe5a359", opaque="", 354 uri="sip:ss2.biloxi.com", response="dfe56131d1958046689d83306477ecc" 355 Content-Length: 0 357 F4 200 OK SIP Server -> B 359 SIP/2.0 200 OK 360 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 361 ;received=192.168.200.201 362 From: LittleGuy ;tag=ja743ks76zlflH 363 To: LittleGuy ;tag=37GkEhwl6 364 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 365 CSeq: 2 REGISTER 366 Contact: ;expires=3600 367 Content-Length: 0 368 2.1.2 User updates contact list 370 User B SIP Server 371 | | 372 | REGISTER F1 | 373 |------------------------------>| 374 | 200 OK F2 | 375 |<------------------------------| 376 | | 378 User B wishes to update the list of addresses where the SIP server 379 will redirect or forward INVITE requests. 381 User B sends a SIP REGISTER request to the SIP server. User B's 382 request includes an updated contact list. Since the user already has 383 authenticated with the server, the user supplies authentication 384 credentials with the request and is not challenged by the server. 385 The SIP server validates the user's credentials. It registers the 386 user in its contact database, updates the user's contact list, and 387 returns a response (200 OK) to User B's SIP client. The response 388 includes the user's current contact list in Contact headers. 390 Message Details 392 F1 REGISTER B -> SIP Server 394 REGISTER sip:ss2.biloxi.com SIP/2.0 395 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 396 Max-Forwards: 70 397 From: LittleGuy ;tag=a73kszlfl 398 To: LittleGuy 399 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 400 CSeq: 1 REGISTER 401 Contact: mailto:UserB@biloxi.com 402 Authorization: Digest username="UserB", realm="atlanta.com", 403 qop="auth", nonce="1cec4341ae6cbe5a359ea9c8e88df84f", opaque="", 404 uri="sip:ss2.biloxi.com", 405 response="71ba27c64bd01de719686aa4590d5824" 406 Content-Length: 0 408 F2 200 OK SIP Server -> B 410 SIP/2.0 200 OK 411 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 412 ;received=192.168.200.201 413 From: LittleGuy ;tag=a73kszlfl 414 To: LittleGuy ;tag=34095828jh 415 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 416 CSeq: 1 REGISTER 417 Contact: ;expires=3600 418 Contact: ;expires=4294967295 419 Content-Length: 0 421 2.1.3 User Requests Current Contact List 423 User B SIP Server 424 | | 425 | REGISTER F1 | 426 |------------------------------>| 427 | 200 OK F2 | 428 |<------------------------------| 429 | | 431 User B sends a register request to the Proxy Server containing no 432 Contact headers, indicating the user wishes to query the server for 433 the user's current contact list. Since the user already has 434 authenticated with the server, the user supplies authentication 435 credentials with the request and is not challenged by the server. The 436 SIP server validates the user's credentials. The server returns a 437 response (200 OK) which includes the user's current registration list 438 in Contact headers. 440 Message Details 442 F1 REGISTER B -> SIP Server 444 REGISTER sip:ss2.biloxi.com SIP/2.0 445 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 446 Max-Forwards: 70 447 From: LittleGuy ;tag=a73kszlfl 448 To: LittleGuy 449 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 450 CSeq: 1 REGISTER 451 Authorization: Digest username="UserB", realm="atlanta.com", 452 nonce="df84f1cec4341ae6cbe5ap359a9c8e88", opaque="", 453 uri="sip:ss2.biloxi.com", 454 response="aa7ab4678258377c6f7d4be6087e2f60" 455 Content-Length: 0 457 F2 200 OK SIP Server -> B 459 SIP/2.0 200 OK 460 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 461 ;received=192.168.200.201 462 From: LittleGuy ;tag=a73kszlfl 463 To: LittleGuy ;tag=jqoiweu75 464 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 465 CSeq: 1 REGISTER 466 Contact: ;expires=3600 467 Contact: ;expires=4294967295 468 Content-Length: 0 470 2.1.4 User Cancels Registration 472 User B SIP Server 473 | | 474 | REGISTER F1 | 475 |------------------------------>| 476 | 200 OK F2 | 477 |<------------------------------| 478 | | 480 User B wishes to cancel their registration with the SIP 481 server. User B sends a SIP REGISTER request to the 482 SIP server. The request has an expiration period of 0 and applies to 483 all existing contact locations. Since the user already has 484 authenticated with the server, the user supplies authentication 485 credentials with the request and is not challenged by the server. 486 The SIP server validates the user's credentials. It clears the 487 user's contact list, and returns a response (200 OK) to User B's SIP 488 client. 490 Message Details 492 F1 REGISTER B -> SIP Server 494 REGISTER sip:ss2.biloxi.com SIP/2.0 495 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 496 Max-Forwards: 70 497 From: LittleGuy ;tag=a73kszlfl 498 To: LittleGuy 499 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 500 CSeq: 1 REGISTER 501 Expires: 0 502 Contact: * 503 Authorization: Digest username="UserB", realm="atlanta.com", 504 nonce="88df84f1cac4341aea9c8ee6cbe5a359", opaque="", 505 uri="sip:ss2.biloxi.com", 506 response="ff0437c51696f9a76244f0cf1dbabbea" 507 Content-Length: 0 509 F2 200 OK SIP Server -> B 511 SIP/2.0 200 OK 512 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 513 ;received=192.168.200.201 514 From: LittleGuy ;tag=a73kszlfl 515 To: LittleGuy ;tag=1418nmdsrf 516 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 517 CSeq: 1 REGISTER 518 Content-Length: 0 520 2.2 Failure Scenarios 522 2.2.1 Unsuccessful SIP registration 524 User B SIP Server 525 | | 526 | REGISTER F1 | 527 |------------------------------>| 528 | 401 Unauthorized F2 | 529 |<------------------------------| 530 | REGISTER F3 | 531 |------------------------------>| 532 | 401 Unauthorized F4 | 533 |<------------------------------| 534 | | 536 User B sends a SIP REGISTER request to the SIP Server. The SIP 537 server provides a challenge to User B. User B enters her/his user ID 538 and password. User B's SIP client encrypts the user information 539 according to the challenge issued by the SIP server and sends the 540 response to the SIP server. The SIP server attempts to validate the 541 user's credentials, but they are not valid (the user's password does 542 not match the password established for the user's account). The 543 server returns a response (401 Unauthorized) to User B's SIP client. 545 Message Details 547 F1 REGISTER B -> SIP Server 549 REGISTER sip:ss2.biloxi.com SIP/2.0 550 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 551 Max-Forwards: 70 552 From: LittleGuy ;tag=a73kszlfl 553 To: LittleGuy 554 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 555 CSeq: 1 REGISTER 556 Contact: 557 Content-Length: 0 559 F2 Unauthorized SIP Server -> User B 561 SIP/2.0 401 Unauthorized 562 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 563 ;received=192.168.200.201 564 From: LittleGuy ;tag=a73kszlfl 565 To: LittleGuy ;tag=1410948204 566 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 567 CSeq: 1 REGISTER 568 WWW-Authenticate: Digest realm="atlanta.com", qop="auth", 569 nonce="f1cec4341ae6ca9c8e88df84be55a359", 570 opaque="", stale=FALSE, algorithm=MD5 571 Content-Length: 0 573 F3 REGISTER B -> SIP Server 575 REGISTER sip:ss2.biloxi.com SIP/2.0 576 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 577 Max-Forwards: 70 578 From: LittleGuy ;tag=JueHGuidj28dfga 579 To: LittleGuy 580 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 581 CSeq: 2 REGISTER 582 Contact: 583 Authorization: Digest username="UserB", realm="atlanta.com", 584 nonce="f1cec4341ae6ca9c8e88df84be55a359", opaque="", 585 uri="sip:ss2.biloxi.com", 586 response="61f8470ceb87d7ebf508220214ed438b" 587 Content-Length: 0 589 /* The response above encodes the incorrect password */ 591 F4 401 Unauthorized SIP Server -> User B 593 SIP/2.0 401 Unauthorized 594 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 595 ;received=192.168.200.201 596 From: LittleGuy ;tag=JueHGuidj28dfga 597 To: LittleGuy ;tag=1410948204 598 Call-ID: 1j9FpLxk3uxtm8tn@biloxi.com 599 CSeq: 2 REGISTER 600 WWW-Authenticate: Digest realm="atlanta.com", qop="auth", 601 nonce="84f1c1ae6cbe5ua9c8e88dfa3ecm3459", 602 opaque="", stale=FALSE, algorithm=MD5 603 Content-Length: 0 605 3 SIP to SIP Dialing 607 3.1 Success Scenarios 609 This section details calls between two SIP User Agents (UAs): 610 User A and User B. User A (LittleGuy sip:UserA@atlanta.com) and User 611 B (BigGuy sip:UserB@biloxi.com) are assumed to be SIP phones or SIP- 612 enabled devices. The successful calls show the initial signaling, 613 the exchange of media information in the form of SDP payloads, the 614 establishment of the media session, then finally the termination of 615 the call. 617 SIP digest authentication is used by Proxy Servers to 618 authenticate the caller User A. It is assumed that User B has 619 registered with Proxy Server Proxy 2 as per Section 2.1 to be able to 620 receive the calls via the Proxy. 622 3.1.1 Successful Simple SIP to SIP 624 User A User B 625 | | 626 | INVITE F1 | 627 |----------------------->| 628 | 180 Ringing F2 | 629 |<-----------------------| 630 | | 631 | 200 OK F3 | 632 |<-----------------------| 633 | ACK F4 | 634 |----------------------->| 635 | Both Way RTP Media | 636 |<======================>| 637 | | 638 | BYE F5 | 639 |<-----------------------| 640 | 200 OK F6 | 641 |----------------------->| 642 | | 644 In this scenario, User A completes a call to User B directly. 646 Message Details 648 F1 INVITE User A -> User B 650 INVITE sip:UserB@biloxi.com SIP/2.0 651 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 652 Max-Forwards: 70 653 From: BigGuy ;tag=9fxced76sl 654 To: LittleGuy 655 Call-ID: 3848276298220188511@atlanta.com 656 CSeq: 1 INVITE 657 Contact: 658 Content-Type: application/sdp 659 Content-Length: 147 661 v=0 662 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 663 s=- 664 c=IN IP4 192.168.100.101 665 t=0 0 666 m=audio 49172 RTP/AVP 0 667 a=rtpmap:0 PCMU/8000 669 F2 180 Ringing User B -> User A 670 SIP/2.0 180 Ringing 671 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 672 ;received=192.168.100.101 673 From: BigGuy ;tag=9fxced76sl 674 To: LittleGuy ;tag=8321234356 675 Call-ID: 3848276298220188511@atlanta.com 676 CSeq: 1 INVITE 677 Content-Length: 0 679 F3 200 OK User B -> User A 681 SIP/2.0 200 OK 682 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 683 ;received=192.168.100.101 684 From: BigGuy ;tag=9fxced76sl 685 To: LittleGuy ;tag=8321234356 686 Call-ID: 3848276298220188511@atlanta.com 687 CSeq: 1 INVITE 688 Contact: 689 Content-Type: application/sdp 690 Content-Length: 145 692 v=0 693 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 694 s=- 695 c=IN IP4 192.168.200.201 696 t=0 0 697 m=audio 3456 RTP/AVP 0 698 a=rtpmap:0 PCMU/8000 700 F4 ACK User A -> User B 702 ACK sip:UserB@biloxi.com SIP/2.0 703 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 704 Max-Forwards: 70 705 From: BigGuy ;tag=9fxced76sl 706 To: LittleGuy ;tag=8321234356 707 Call-ID: 3848276298220188511@atlanta.com 708 CSeq: 1 ACK 709 Content-Length: 0 711 /* RTP streams are established between A and B */ 713 /* User B Hangs Up with User A. Note that the CSeq is NOT 2, since 714 User A and User B maintain their own independent CSeq counts. 715 (The INVITE was request 1 generated by User A, and the BYE is 716 request 1 generated by User B) */ 718 F5 BYE User B -> User A 719 BYE sip:UserA@192.168.100.101 SIP/2.0 720 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 721 Max-Forwards: 70 722 From: LittleGuy ;tag=8321234356 723 To: BigGuy ;tag=9fxced76sl 724 Call-ID: 3848276298220188511@atlanta.com 725 CSeq: 1 BYE 726 Content-Length: 0 728 F6 200 OK User A -> User B 730 SIP/2.0 200 OK 731 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 732 ;received=192.168.200.201 733 From: LittleGuy ;tag=8321234356 734 To: BigGuy ;tag=9fxced76sl 735 Call-ID: 3848276298220188511@atlanta.com 736 CSeq: 1 BYE 737 Content-Length: 0 739 3.1.2 Successful SIP to SIP through two proxies 741 User A Proxy 1 Proxy 2 User B 742 | | | | 743 | INVITE F1 | | | 744 |--------------->| | | 745 | 407 F2 | | | 746 |<---------------| | | 747 | ACK F3 | | | 748 |--------------->| | | 749 | INVITE F4 | | | 750 |--------------->| INVITE F5 | | 751 | 100 F6 |--------------->| INVITE F7 | 752 |<---------------| 100 F8 |--------------->| 753 | |<---------------| | 754 | | | 180 F9 | 755 | | 180 F10 |<---------------| 756 | 180 F11 |<---------------| | 757 |<---------------| | 200 F12 | 758 | | 200 F13 |<---------------| 759 | 200 F14 |<---------------| | 760 |<---------------| | | 761 | ACK F15 | | | 762 |--------------->| ACK F16 | | 763 | |--------------->| ACK F17 | 764 | | |--------------->| 765 | Both Way RTP Media | 766 |<================================================>| 767 | | | BYE F18 | 768 | | BYE F19 |<---------------| 769 | BYE F20 |<---------------| | 770 |<---------------| | | 771 | 200 F21 | | | 772 |--------------->| 200 F22 | | 773 | |--------------->| 200 F23 | 774 | | |--------------->| 775 | | | | 777 In this scenario, User A completes a call to User B using two proxies 778 Proxy 1 and Proxy 2. The initial INVITE (F1) contains a pre-loaded 779 Route header with the address of Proxy 1 (Proxy 1 is configured as a 780 default outbound proxy for User A). The request does not contain the 781 Authorization credentials Proxy 1 requires, so a 407 Proxy 782 Authorization response is sent containing the challenge information. 783 A new INVITE (F4) is then sent containing the correct credentials and 784 the call proceeds. The call terminates when User B disconnects by 785 initiating a BYE message. 787 Proxy 1 inserts a Record-Route header into the INVITE message to 788 ensure that it is present in all subsequent message exchanges. Proxy 789 2 also inserts itself into the Record-Route header. The ACK (F15) 790 and BYE (F18) both have a Route header. 792 Message Details 794 F1 INVITE A -> Proxy 1 796 INVITE sip:UserB@biloxi.com SIP/2.0 797 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 798 Max-Forwards: 70 799 Route: 800 From: BigGuy ;tag=9fxced76sl 801 To: LittleGuy 802 Call-ID: 3848276298220188511@atlanta.com 803 CSeq: 1 INVITE 804 Contact: 805 Content-Type: application/sdp 806 Content-Length: 147 808 v=0 809 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 810 s=- 811 c=IN IP4 192.168.100.101 812 t=0 0 813 m=audio 49172 RTP/AVP 0 814 a=rtpmap:0 PCMU/8000 816 /* Proxy 1 challenges User A for authentication */ 818 F2 407 Proxy Authorization Required Proxy 1 -> User A 820 SIP/2.0 407 Proxy Authorization Required 821 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 822 ;received=192.168.100.101 823 From: BigGuy ;tag=9fxced76sl 824 To: LittleGuy ;tag=3flal12sf 825 Call-ID: 3848276298220188511@atlanta.com 826 CSeq: 1 INVITE 827 Proxy-Authenticate: Digest realm="atlanta.com", qop="auth", 828 nonce="f84f1cec41e6cbe5aea9c8e88d359", 829 opaque="", stale=FALSE, algorithm=MD5 830 Content-Length: 0 832 F3 ACK A -> Proxy 1 834 ACK sip:UserB@biloxi.com SIP/2.0 835 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 836 Max-Forwards: 70 837 From: BigGuy ;tag=9fxced76sl 838 To: LittleGuy ;tag=3flal12sf 839 Call-ID: 3848276298220188511@atlanta.com 840 CSeq: 1 ACK 841 Content-Length: 0 843 /* User A responds be re-sending the INVITE with authentication 844 credentials in it. */ 846 F4 INVITE A -> Proxy 1 848 INVITE sip:UserB@biloxi.com SIP/2.0 849 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 850 Max-Forwards: 70 851 Route: 852 From: BigGuy ;tag=9fxced76sl 853 To: LittleGuy 854 Call-ID: 3848276298220188511@atlanta.com 855 CSeq: 2 INVITE 856 Contact: 857 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 858 nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", 859 uri="sip:UserB@biloxi.com", response="42ce3cef44b22f50c6a6071bc8" 860 Content-Type: application/sdp 861 Content-Length: 147 863 v=0 864 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 865 s=- 866 c=IN IP4 192.168.100.101 867 t=0 0 868 m=audio 49172 RTP/AVP 0 869 a=rtpmap:0 PCMU/8000 871 /* Proxy 1 accepts the credentials and forwards the INVITE to Proxy 872 2. Proxy 1 is assumed to have been authenticated by Proxy 2 using 873 IPSec. Client for A prepares to receive data on port 49172 from the 874 network. */ 876 F5 INVITE Proxy 1 -> Proxy 2 878 INVITE sip:UserB@biloxi.com SIP/2.0 879 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 880 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 881 ;received=192.168.100.101 882 Max-Forwards: 69 883 Record-Route: 884 From: BigGuy ;tag=9fxced76sl 885 To: LittleGuy 886 Call-ID: 3848276298220188511@atlanta.com 887 CSeq: 2 INVITE 888 Contact: 889 Content-Type: application/sdp 890 Content-Length: 147 892 v=0 893 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 894 s=- 895 c=IN IP4 192.168.100.101 896 t=0 0 897 m=audio 49172 RTP/AVP 0 898 a=rtpmap:0 PCMU/8000 900 F6 100 Trying Proxy 1 -> User A 902 SIP/2.0 100 Trying 903 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 904 ;received=192.168.100.101 905 From: BigGuy ;tag=9fxced76sl 906 To: LittleGuy 907 Call-ID: 3848276298220188511@atlanta.com 908 CSeq: 2 INVITE 909 Content-Length: 0 911 F7 INVITE Proxy 2 -> B 913 INVITE sip:UserB@192.168.200.201 SIP/2.0 914 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 915 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 916 ;received=192.168.255.111 917 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 918 ;received=192.168.100.101 919 Max-Forwards: 68 920 Record-Route: , 921 From: BigGuy ;tag=9fxced76sl 922 To: LittleGuy 923 Call-ID: 3848276298220188511@atlanta.com 924 CSeq: 2 INVITE 925 Contact: 926 Content-Type: application/sdp 927 Content-Length: 147 929 v=0 930 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 931 s=- 932 c=IN IP4 192.168.100.101 933 t=0 0 934 m=audio 49172 RTP/AVP 0 935 a=rtpmap:0 PCMU/8000 937 F8 100 Trying Proxy 2 -> Proxy 1 938 SIP/2.0 100 Trying 939 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 940 ;received=192.168.255.111 941 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 942 ;received=192.168.100.101 943 From: BigGuy ;tag=9fxced76sl 944 To: LittleGuy 945 Call-ID: 3848276298220188511@atlanta.com 946 CSeq: 2 INVITE 947 Content-Length: 0 949 F9 180 Ringing B -> Proxy 2 951 SIP/2.0 180 Ringing 952 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 953 ;received=192.168.156.222 954 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 955 ;received=192.168.255.111 956 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 957 ;received=192.168.100.101 958 Record-Route: , 959 From: BigGuy ;tag=9fxced76sl 960 To: LittleGuy ;tag=314159 961 Call-ID: 3848276298220188511@atlanta.com 962 Contact: 963 CSeq: 2 INVITE 964 Content-Length: 0 966 F10 180 Ringing Proxy 2 -> Proxy 1 968 SIP/2.0 180 Ringing 969 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 970 ;received=192.168.255.111 971 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 972 ;received=192.168.100.101 973 Record-Route: , 974 From: BigGuy ;tag=9fxced76sl 975 To: LittleGuy ;tag=314159 976 Call-ID: 3848276298220188511@atlanta.com 977 Contact: 978 CSeq: 2 INVITE 979 Content-Length: 0 981 F11 180 Ringing Proxy 1 -> A 983 SIP/2.0 180 Ringing 984 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 985 ;received=192.168.100.101 987 Record-Route: , 988 From: BigGuy ;tag=9fxced76sl 989 To: LittleGuy ;tag=314159 990 Call-ID: 3848276298220188511@atlanta.com 991 Contact: 992 CSeq: 2 INVITE 993 Content-Length: 0 995 F12 200 OK B -> Proxy 2 997 SIP/2.0 200 OK 998 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 999 ;received=192.168.156.222 1000 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1001 ;received=192.168.255.111 1002 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1003 ;received=192.168.100.101 1004 Record-Route: , 1005 From: BigGuy ;tag=9fxced76sl 1006 To: LittleGuy ;tag=314159 1007 Call-ID: 3848276298220188511@atlanta.com 1008 CSeq: 2 INVITE 1009 Contact: 1010 Content-Type: application/sdp 1011 Content-Length: 145 1013 v=0 1014 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1015 s=- 1016 c=IN IP4 192.168.200.201 1017 t=0 0 1018 m=audio 3456 RTP/AVP 0 1019 a=rtpmap:0 PCMU/8000 1021 F13 200 OK Proxy 2 -> Proxy 1 1023 SIP/2.0 200 OK 1024 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1025 ;received=192.168.255.111 1026 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1027 ;received=192.168.100.101 1028 Record-Route: , 1029 From: BigGuy ;tag=9fxced76sl 1030 To: LittleGuy ;tag=314159 1031 Call-ID: 3848276298220188511@atlanta.com 1032 CSeq: 2 INVITE 1033 Contact: 1034 Content-Type: application/sdp 1035 Content-Length: 145 1036 v=0 1037 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1038 s=- 1039 c=IN IP4 192.168.200.201 1040 t=0 0 1041 m=audio 3456 RTP/AVP 0 1042 a=rtpmap:0 PCMU/8000 1044 F14 200 OK Proxy 1 -> A 1046 SIP/2.0 200 OK 1047 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1048 ;received=192.168.100.101 1049 Record-Route: , 1050 From: BigGuy ;tag=9fxced76sl 1051 To: LittleGuy ;tag=314159 1052 Call-ID: 3848276298220188511@atlanta.com 1053 CSeq: 2 INVITE 1054 Contact: 1055 Content-Type: application/sdp 1056 Content-Length: 145 1058 v=0 1059 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1060 s=- 1061 c=IN IP4 192.168.200.201 1062 t=0 0 1063 m=audio 3456 RTP/AVP 0 1064 a=rtpmap:0 PCMU/8000 1066 F15 ACK A -> Proxy 1 1068 ACK sip:UserB@192.168.200.201 SIP/2.0 1069 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1070 Max-Forwards: 70 1071 Route: , 1072 From: BigGuy ;tag=9fxced76sl 1073 To: LittleGuy ;tag=314159 1074 Call-ID: 3848276298220188511@atlanta.com 1075 CSeq: 2 ACK 1076 Content-Length: 0 1078 F16 ACK Proxy 1 -> Proxy 2 1080 ACK sip:UserB@192.168.200.201 SIP/2.0 1081 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1082 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1083 ;received=192.168.100.101 1084 Max-Forwards: 69 1085 Route: 1086 From: BigGuy ;tag=9fxced76sl 1087 To: LittleGuy ;tag=314159 1088 Call-ID: 3848276298220188511@atlanta.com 1089 CSeq: 2 ACK 1090 Content-Length: 0 1092 F17 ACK Proxy 2 -> B 1094 ACK sip:UserB@192.168.200.201 SIP/2.0 1095 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1096 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1097 ;received=192.168.255.111 1098 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1099 ;received=192.168.100.101 1100 Max-Forwards: 68 1101 From: BigGuy ;tag=9fxced76sl 1102 To: LittleGuy ;tag=314159 1103 Call-ID: 3848276298220188511@atlanta.com 1104 CSeq: 2 ACK 1105 Content-Length: 0 1107 /* RTP streams are established between A and B */ 1109 /* User B Hangs Up with User A. */ 1111 /* Again, note that the CSeq is NOT 3. User A and User B maintain 1112 their own separate CSeq counts */ 1114 F18 BYE User B -> Proxy 2 1116 BYE sip:UserA@192.168.100.101 SIP/2.0 1117 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1118 Max-Forwards: 70 1119 Route: , 1120 From: LittleGuy ;tag=314159 1121 To: BigGuy ;tag=9fxced76sl 1122 Call-ID: 3848276298220188511@atlanta.com 1123 CSeq: 1 BYE 1124 Content-Length: 0 1126 F19 BYE Proxy 2 -> Proxy 1 1128 BYE sip:UserA@192.168.100.101 SIP/2.0 1129 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1130 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1131 ;received=192.168.200.201 1132 Max-Forwards: 69 1133 Route: 1134 From: LittleGuy ;tag=314159 1135 To: BigGuy ;tag=9fxced76sl 1136 Call-ID: 3848276298220188511@atlanta.com 1137 CSeq: 1 BYE 1138 Content-Length: 0 1140 F20 BYE Proxy 1 -> User A 1142 BYE sip:UserA@192.168.100.101 SIP/2.0 1143 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1144 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1145 ;received=192.168.156.222 1146 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1147 ;received=192.168.200.201 1148 Max-Forwards: 68 1149 From: LittleGuy ;tag=314159 1150 To: BigGuy ;tag=9fxced76sl 1151 Call-ID: 3848276298220188511@atlanta.com 1152 CSeq: 1 BYE 1153 Content-Length: 0 1155 F21 200 OK User A -> Proxy 1 1157 SIP/2.0 200 OK 1158 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 1159 ;received=192.168.255.111 1160 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1161 ;received=192.168.156.222 1162 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1163 ;received=192.168.200.201 1164 From: LittleGuy ;tag=314159 1165 To: BigGuy ;tag=9fxced76sl 1166 Call-ID: 3848276298220188511@atlanta.com 1167 CSeq: 1 BYE 1168 Content-Length: 0 1170 F22 200 OK Proxy 1 -> Proxy 2 1172 SIP/2.0 200 OK 1173 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1174 ;received=192.168.156.222 1175 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1176 ;received=192.168.100.101 1177 From: LittleGuy ;tag=314159 1178 To: BigGuy ;tag=9fxced76sl 1179 Call-ID: 3848276298220188511@atlanta.com 1180 CSeq: 1 BYE 1181 Content-Length: 0 1182 F23 200 OK Proxy 2 -> User B 1184 SIP/2.0 200 OK 1185 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1186 ;received=192.168.200.201 1187 From: LittleGuy ;tag=314159 1188 To: BigGuy ;tag=9fxced76sl 1189 Call-ID: 3848276298220188511@atlanta.com 1190 CSeq: 1 BYE 1191 Content-Length: 0 1193 3.1.3 SIP to SIP with Multi Proxy Authentication 1195 User A Proxy 1 Proxy 2 User B 1196 | | | | 1197 | INVITE F1 | | | 1198 |----------->| | | 1199 | 407 Proxy Authorization Required F2 | 1200 |<-----------| | | 1201 | ACK F3 | | | 1202 |----------->| | | 1203 | INVITE F4 | | | 1204 |----------->| | | 1205 | 100 F5 | | | 1206 |<-----------| INVITE F6 | | 1207 | |---------->| | 1208 | | 407 Proxy Authorization Required F7 1209 | |<----------| | 1210 | | ACK F8 | | 1211 | |---------->| | 1212 | 407 Proxy Authorization Required F9 | 1213 |<-----------| | | 1214 | ACK F10 | | | 1215 |----------->| | | 1216 | INVITE F11| | | 1217 |----------->| | | 1218 | 100 F12 | | | 1219 |<-----------| INVITE F13| | 1220 | |---------->| | 1221 | | 100 F14 | | 1222 | |<----------| INVITE F15 | 1223 | | |------------>| 1224 | | | 200 OK F16 | 1225 | | 200 OK F17|<------------| 1226 | 200 OK F18 |<----------| | 1227 |<-----------| | | 1228 | ACK F19 | | | 1229 |----------->| ACK F20 | | 1230 | |---------->| ACK F21 | 1231 | | |------------>| 1232 | RTP Media Path | 1233 |<====================================>| 1235 In this scenario, User A completes a call to User B using two proxies 1236 Proxy 1 and Proxy 2. User A has valid credentials in both domains. 1237 Since the initial INVITE (F1) does not contain the 1238 Authorization credentials Proxy 1 requires, so a 407 Proxy 1239 Authorization response is sent containing the challenge information. 1240 A new INVITE (F4) is then sent containing the correct credentials and 1241 the call proceeds after Proxy 2 challenges and receives valid 1242 credentials. The call terminates when User B disconnects by 1243 initiating a BYE message. 1245 Proxy 1 inserts a Record-Route header into the INVITE message to 1246 ensure that it is present in all subsequent message exchanges. Proxy 1247 2 also inserts itself into the Record-Route header. 1249 Message Details 1251 F1 INVITE A -> Proxy 1 1253 INVITE sip:UserB@biloxi.com SIP/2.0 1254 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1255 Max-Forwards: 70 1256 Route: 1257 From: BigGuy ;tag=9fxced76sl 1258 To: LittleGuy 1259 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1260 CSeq: 1 INVITE 1261 Contact: 1262 Content-Type: application/sdp 1263 Content-Length: 147 1265 v=0 1266 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1267 s=- 1268 c=IN IP4 192.168.100.101 1269 t=0 0 1270 m=audio 49172 RTP/AVP 0 1271 a=rtpmap:0 PCMU/8000 1273 /* Proxy 1 challenges User A for authentication */ 1275 F2 407 Proxy Authorization Required Proxy 1 -> User A 1277 SIP/2.0 407 Proxy Authorization Required 1278 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1279 ;received=192.168.100.101 1280 From: BigGuy ;tag=9fxced76sl 1281 To: LittleGuy ;tag=876321 1282 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1283 CSeq: 1 INVITE 1284 Proxy-Authenticate: Digest realm="atlanta.com", qop="auth", 1285 nonce="wf84f1cczx41ae6cbeaea9ce88d359", 1286 opaque="", stale=FALSE, algorithm=MD5 1287 Content-Length: 0 1289 F3 ACK A -> Proxy 1 1291 ACK sip:UserB@biloxi.com SIP/2.0 1292 Max-Forwards: 70 1293 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1294 From: BigGuy ;tag=9fxced76sl 1295 To: LittleGuy ;tag=876321 1296 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1297 CSeq: 1 ACK 1298 Content-Length: 0 1300 /* User A responds be re-sending the INVITE with authentication 1301 credentials in it. The same Call-ID is used, so the CSeq is 1302 increased. */ 1304 F4 INVITE A -> Proxy 1 1306 INVITE sip:UserB@biloxi.com SIP/2.0 1307 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1308 Max-Forwards: 70 1309 Route: 1310 From: BigGuy ;tag=9fxced76sl 1311 To: LittleGuy 1312 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1313 CSeq: 2 INVITE 1314 Contact: 1315 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 1316 nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", 1317 uri="sip:UserB@biloxi.com", response="42ce3cef44b22f50c6a6071bc8" 1318 Content-Type: application/sdp 1319 Content-Length: 147 1321 v=0 1322 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1323 s=- 1324 c=IN IP4 192.168.100.101 1325 t=0 0 1326 m=audio 49172 RTP/AVP 0 1327 a=rtpmap:0 PCMU/8000 1329 /* Proxy 1 accepts the credentials and forwards the INVITE to Proxy 1330 2. Proxy 1 is assumed to have been authenticated by Proxy 2 using 1331 IPSec. Client for A prepares to receive data on port 49172 from the 1332 network. */ 1334 F5 100 Trying Proxy 1 -> User A 1336 SIP/2.0 100 Trying 1337 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1338 ;received=192.168.100.101 1339 From: BigGuy ;tag=9fxced76sl 1340 To: LittleGuy 1341 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1342 CSeq: 2 INVITE 1343 Content-Length: 0 1345 F6 INVITE Proxy 1 -> Proxy 2 1347 INVITE sip:UserB@biloxi.com SIP/2.0 1348 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1349 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1350 ;received=192.168.100.101 1351 Max-Forwards: 69 1352 Record-Route: 1353 From: BigGuy ;tag=9fxced76sl 1354 To: LittleGuy 1355 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1356 CSeq: 2 INVITE 1357 Contact: 1358 Content-Type: application/sdp 1359 Content-Length: 147 1361 v=0 1362 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1363 s=- 1364 c=IN IP4 192.168.100.101 1365 t=0 0 1366 m=audio 49172 RTP/AVP 0 1367 a=rtpmap:0 PCMU/8000 1369 /* Proxy 2 challenges User A for authentication */ 1371 F7 407 Proxy Authorization Required Proxy 2 -> Proxy 1 1373 SIP/2.0 407 Proxy Authorization Required 1374 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1375 ;received=192.168.255.111 1376 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1377 ;received=192.168.100.101 1378 From: BigGuy ;tag=9fxced76sl 1379 To: LittleGuy ;tag=838209 1380 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1381 CSeq: 2 INVITE 1382 Proxy-Authenticate: Digest realm="biloxi.com", qop="auth", 1383 nonce="c1e22c41ae6cbe5ae983a9c8e88d359", 1384 opaque="", stale=FALSE, algorithm=MD5 1385 Content-Length: 0 1387 F8 ACK Proxy 1 -> Proxy 2 1389 ACK sip:UserB@biloxi.com SIP/2.0 1390 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1391 Max-Forwards: 70 1392 From: BigGuy ;tag=9fxced76sl 1393 To: LittleGuy ;tag=838209 1394 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1395 CSeq: 2 ACK 1396 Content-Length: 0 1398 /* Proxy 1 forwards the challenge to User A for authentication from 1399 Proxy 2 */ 1401 F9 407 Proxy Authorization Required Proxy 1 -> User A 1403 SIP/2.0 407 Proxy Authorization Required 1404 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1405 ;received=192.168.100.101 1406 From: BigGuy ;tag=9fxced76sl 1407 To: LittleGuy ;tag=838209 1408 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1409 CSeq: 2 INVITE 1410 Proxy-Authenticate: Digest realm="biloxi.com", qop="auth", 1411 nonce="c1e22c41ae6cbe5ae983a9c8e88d359", 1412 opaque="", stale=FALSE, algorithm=MD5 1413 Content-Length: 0 1415 F10 ACK User A -> Proxy 1 1417 ACK sip:UserB@biloxi.com SIP/2.0 1418 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1419 Max-Forwards: 70 1420 From: BigGuy ;tag=9fxced76sl 1421 To: LittleGuy ;tag=838209 1422 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1423 CSeq: 2 ACK 1424 Content-Length: 0 1426 /* User A responds be re-sending the INVITE with authentication 1427 credentials for Proxy 1 AND Proxy 2. */ 1429 F11 INVITE A -> Proxy 1 1431 INVITE sip:UserB@biloxi.com SIP/2.0 1432 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1433 Max-Forwards: 70 1434 From: BigGuy ;tag=9fxced76sl 1435 To: LittleGuy 1436 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1437 CSeq: 3 INVITE 1438 Contact: 1439 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 1440 nonce="wf84f1ceczx41ae6cbe5aea9c8e88d359", opaque="", 1441 uri="sip:UserB@biloxi.com", response="42ce3cef44b22f50c6a6071bc8" 1442 Proxy-Authorization: Digest username="UserA", realm="biloxi.com", 1443 nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", 1444 uri="sip:UserB@biloxi.com", response="f44ab22f150c6a56071bce8" 1445 Content-Type: application/sdp 1446 Content-Length: 147 1448 v=0 1449 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1450 s=- 1451 c=IN IP4 192.168.100.101 1452 t=0 0 1453 m=audio 49172 RTP/AVP 0 1454 a=rtpmap:0 PCMU/8000 1456 /* Proxy 1 finds its credentials and authorizes User A, forwarding 1457 the INVITE to Proxy. */ 1459 F12 100 Trying Proxy 1 -> User A 1461 SIP/2.0 100 Trying 1462 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1463 ;received=192.168.100.101 1464 From: BigGuy ;tag=9fxced76sl 1465 To: LittleGuy 1466 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1467 CSeq: 3 INVITE 1468 Content-Length: 0 1470 F13 INVITE Proxy 1 -> Proxy 2 1472 INVITE sip:UserB@biloxi.com SIP/2.0 1473 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1474 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1475 ;received=192.168.100.101 1476 Max-Forwards: 69 1477 Record-Route: 1478 From: BigGuy ;tag=9fxced76sl 1479 To: LittleGuy 1480 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1481 CSeq: 3 INVITE 1482 Contact: 1483 Proxy-Authorization: Digest username="UserA", realm="biloxi.com", 1484 nonce="c1e22c41ae6cbe5ae983a9c8e88d359", opaque="", 1485 uri="sip:UserB@biloxi.com", response="f44ab22f150c6a56071bce8" 1486 Content-Type: application/sdp 1487 Content-Length: 147 1488 v=0 1489 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1490 s=- 1491 c=IN IP4 192.168.100.101 1492 t=0 0 1493 m=audio 49172 RTP/AVP 0 1494 a=rtpmap:0 PCMU/8000 1496 /* Proxy 2 finds its credentials and authorizes User A, forwarding 1497 the INVITE to User B. */ 1499 F14 100 Trying Proxy 2 -> Proxy 1 1501 SIP/2.0 100 Trying 1502 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1503 ;received=192.168.255.111 1504 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1505 ;received=192.168.100.101 1506 From: BigGuy ;tag=9fxced76sl 1507 To: LittleGuy 1508 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1509 CSeq: 3 INVITE 1510 Content-Length: 0 1512 F15 INVITE Proxy 2 -> User B 1514 INVITE sip:UserB@192.168.200.201 SIP/2.0 1515 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1 1516 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1517 ;received=192.168.255.111 1518 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1519 ;received=192.168.100.101 1520 Max-Forwards: 68 1521 Record-Route: , 1522 From: BigGuy ;tag=9fxced76sl 1523 To: LittleGuy 1524 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1525 CSeq: 3 INVITE 1526 Contact: 1527 Content-Type: application/sdp 1528 Content-Length: 147 1530 v=0 1531 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1532 s=- 1533 c=IN IP4 192.168.100.101 1534 t=0 0 1535 m=audio 49172 RTP/AVP 0 1536 a=rtpmap:0 PCMU/8000 1537 /* User B answers the call immediately */ 1539 F16 200 OK User B -> Proxy 2 1541 SIP/2.0 200 OK 1542 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1 1543 ;received=192.168.156.222 1544 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1545 ;received=192.168.255.111 1546 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1547 ;received=192.168.100.101 1548 Record-Route: , 1549 From: BigGuy ;tag=9fxced76sl 1550 To: LittleGuy ;tag=9103874 1551 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1552 CSeq: 3 INVITE 1553 Contact: 1554 Content-Type: application/sdp 1555 Content-Length: 145 1557 v=0 1558 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1559 s=- 1560 c=IN IP4 192.168.200.201 1561 t=0 0 1562 m=audio 3456 RTP/AVP 0 1563 a=rtpmap:0 PCMU/8000 1565 F17 200 OK Proxy 2 -> Proxy 1 1567 SIP/2.0 200 OK 1568 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1569 ;received=192.168.255.111 1570 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1571 ;received=192.168.100.101 1572 Record-Route: , 1573 From: BigGuy ;tag=9fxced76sl 1574 To: LittleGuy ;tag=9103874 1575 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1576 CSeq: 3 INVITE 1577 Contact: 1578 Content-Type: application/sdp 1579 Content-Length: 145 1581 v=0 1582 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1583 s=- 1584 c=IN IP4 192.168.200.201 1585 t=0 0 1586 m=audio 3456 RTP/AVP 0 1587 a=rtpmap:0 PCMU/8000 1589 F18 200 OK Proxy 1 -> User A 1591 SIP/2.0 200 OK 1592 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1593 ;received=192.168.100.101 1594 Record-Route: , 1595 From: BigGuy ;tag=9fxced76sl 1596 To: LittleGuy ;tag=9103874 1597 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1598 CSeq: 3 INVITE 1599 Contact: 1600 Content-Type: application/sdp 1601 Content-Length: 145 1603 v=0 1604 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1605 s=- 1606 c=IN IP4 192.168.200.201 1607 t=0 0 1608 m=audio 3456 RTP/AVP 0 1609 a=rtpmap:0 PCMU/8000 1611 F19 ACK User A -> Proxy 1 1613 ACK sip:UserB@192.168.200.201 SIP/2.0 1614 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1615 Max-Forwards: 70 1616 Route: , 1617 From: BigGuy ;tag=9fxced76sl 1618 To: LittleGuy ;tag=9103874 1619 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1620 CSeq: 3 ACK 1621 Content-Length: 0 1623 F20 ACK Proxy 1 -> Proxy 2 1625 ACK sip:UserB@192.168.200.201 SIP/2.0 1626 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1627 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1628 ;received=192.168.100.101 1629 Max-Forwards: 69 1630 Route: 1631 From: BigGuy ;tag=9fxced76sl 1632 To: LittleGuy ;tag=9103874 1633 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1634 CSeq: 3 ACK 1635 Contact: 1636 Content-Length: 0 1638 F21 ACK Proxy 2 -> User A 1640 ACK sip:UserB@192.168.200.201 SIP/2.0 1641 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK31972.1 1642 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK230f2.1 1643 ;received=192.168.255.111 1644 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1645 ;received=192.168.100.101 1646 Max-Forwards: 68 1647 From: BigGuy ;tag=9fxced76sl 1648 To: LittleGuy ;tag=9103874 1649 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1650 CSeq: 3 ACK 1651 Contact: 1652 Content-Length: 0 1654 3.1.4 Successful SIP to SIP with Proxy failure 1656 User A Proxy 1 Proxy 2 User B 1657 | | | | 1658 | INVITE F1 | | | 1659 |--------------->| | | 1660 | INVITE F2 | | | 1661 |--------------->| | | 1662 | INVITE F3 | | | 1663 |--------------->| | | 1664 | INVITE F4 | | | 1665 |--------------->| | | 1666 | INVITE F5 | | | 1667 |--------------->| | | 1668 | INVITE F6 | | | 1669 |--------------->| | | 1670 | INVITE F7 | | | 1671 |--------------->| | | 1672 | INVITE F8 | | 1673 |-------------------------------->| | 1674 | 407 F9 | | 1675 |<--------------------------------| | 1676 | ACK F10 | | 1677 |-------------------------------->| | 1678 | INVITE F11 | | 1679 |-------------------------------->| INVITE F12 | 1680 | 100 F13 |--------------->| 1681 |<--------------------------------| | 1682 | | 180 F14 | 1683 | 180 F15 |<---------------| 1684 |<--------------------------------| | 1685 | | 200 F16 | 1686 | 200 F17 |<---------------| 1687 |<--------------------------------| | 1688 | ACK F18 | | 1689 |-------------------------------->| ACK F19 | 1690 | |--------------->| 1691 | Both Way RTP Media | 1692 |<================================================>| 1693 | | BYE F20 | 1694 | BYE F21 |<---------------| 1695 |<--------------------------------| | 1696 | 200 F22 | | 1697 |-------------------------------->| 200 F23 | 1698 | |--------------->| 1699 | | | 1701 In this scenario, User A completes a call to User B via a Proxy 1702 Server. User A is configured for a primary SIP Proxy Server Proxy 1 1703 and a secondary SIP Proxy Server Proxy 2 (Or is able to use DNS SRV 1704 records to locate Proxy 1 and Proxy 2). User A has valid credentials 1705 for both domains. Proxy 1 is out of service and does not respond to 1706 INVITEs (it is reachable, but unresponsive). User A then completes 1707 the call to User B using Proxy 2. 1709 Message Details 1711 F1 INVITE A -> Proxy 1 1713 INVITE sip:UserB@biloxi.com SIP/2.0 1714 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK465bf9 1715 Max-Forwards: 70 1716 Route: 1717 From: BigGuy ;tag=9fxced76sl 1718 To: LittleGuy 1719 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 1720 CSeq: 1 INVITE 1721 Contact: 1722 Content-Type: application/sdp 1723 Content-Length: 147 1725 v=0 1726 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1727 s=- 1728 c=IN IP4 192.168.100.101 1729 t=0 0 1730 m=audio 49172 RTP/AVP 0 1731 a=rtpmap:0 PCMU/8000 1733 F2 INVITE A -> Proxy 1 1735 Same as Message F1 1737 F3 INVITE A -> Proxy 1 1739 Same as Message F1 1741 F4 INVITE A -> Proxy 1 1743 Same as Message F1 1745 F5 INVITE A -> Proxy 1 1747 Same as Message F1 1749 F6 INVITE A -> Proxy 1 1750 Same as Message F1 1752 F7 INVITE A -> Proxy 1 1754 Same as Message F1 1756 /* User A gives up on the unresponsive proxy */ 1758 F8 INVITE A -> Proxy 2 1760 INVITE sip:UserB@biloxi.com SIP/2.0 1761 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1762 Max-Forwards: 70 1763 From: BigGuy ;tag=9fxced76sl 1764 To: LittleGuy 1765 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1766 CSeq: 1 INVITE 1767 Contact: 1768 Content-Type: application/sdp 1769 Content-Length: 147 1771 v=0 1772 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1773 s=- 1774 c=IN IP4 192.168.100.101 1775 t=0 0 1776 m=audio 49172 RTP/AVP 0 1777 a=rtpmap:0 PCMU/8000 1779 /* Proxy 2 challenges User A for authentication */ 1781 F9 407 Proxy Authorization Required Proxy 2 -> User A 1783 SIP/2.0 407 Proxy Authorization Required 1784 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1785 ;received=192.168.100.101 1786 From: BigGuy ;tag=9fxced76sl 1787 To: LittleGuy ;tag=2421452 1788 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1789 CSeq: 1 INVITE 1790 Proxy-Authenticate: Digest realm="biloxi.com", qop="auth", 1791 nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", 1792 opaque="", stale=FALSE, algorithm=MD5 1793 Content-Length: 0 1795 F10 ACK A -> Proxy 2 1796 ACK sip:UserB@biloxi.com SIP/2.0 1797 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1798 Max-Forwards: 70 1799 From: BigGuy ;tag=9fxced76sl 1800 To: LittleGuy ;tag=2421452 1801 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1802 CSeq: 1 ACK 1803 Content-Length: 0 1805 /* User A responds be re-sending the INVITE with authentication 1806 credentials in it. */ 1808 F11 INVITE A -> Proxy 2 1810 INVITE sip:UserB@biloxi.com SIP/2.0 1811 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1812 Max-Forwards: 70 1813 From: BigGuy ;tag=9fxced76sl 1814 To: LittleGuy 1815 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1816 CSeq: 2 INVITE 1817 Contact: 1818 Proxy-Authorization: Digest username="UserA", realm="biloxi.com", 1819 nonce="1ae6cbe5ea9c8e8df84fqnlec434a359", opaque="", 1820 uri="sip:UserB@biloxi.com", 1821 response="8a880c919d1a52f20a1593e228adf599" 1822 Content-Type: application/sdp 1823 Content-Length: 147 1825 v=0 1826 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1827 s=- 1828 c=IN IP4 192.168.100.101 1829 t=0 0 1830 m=audio 49172 RTP/AVP 0 1831 a=rtpmap:0 PCMU/8000 1833 /* Proxy 2 accepts the credentials and forwards the INVITE to User B. 1834 Client for A prepares to receive data on port 49172 from the network. 1835 */ 1837 F12 INVITE Proxy 2 -> B 1839 INVITE sip:UserB@192.168.200.201 SIP/2.0 1840 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1841 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1842 ;received=192.168.100.101 1843 Max-Forwards: 69 1844 Record-Route: 1845 From: BigGuy ;tag=9fxced76sl 1846 To: LittleGuy 1847 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1848 CSeq: 2 INVITE 1849 Contact: 1850 Content-Type: application/sdp 1851 Content-Length: 147 1853 v=0 1854 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 1855 s=- 1856 c=IN IP4 192.168.100.101 1857 t=0 0 1858 m=audio 49172 RTP/AVP 0 1859 a=rtpmap:0 PCMU/8000 1861 F13 100 Trying Proxy 2 -> User A 1863 SIP/2.0 100 Trying 1864 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1865 ;received=192.168.100.101 1866 From: BigGuy ;tag=9fxced76sl 1867 To: LittleGuy 1868 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1869 CSeq: 2 INVITE 1870 Content-Length: 0 1872 F14 180 Ringing B -> Proxy 2 1874 SIP/2.0 180 Ringing 1875 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1876 ;received=192.168.156.222 1877 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1878 ;received=192.168.100.101 1879 Record-Route: 1880 From: BigGuy ;tag=9fxced76sl 1881 To: LittleGuy ;tag=314159 1882 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1883 CSeq: 2 INVITE 1884 Contact: 1885 Content-Length: 0 1887 F15 180 Ringing Proxy 2 -> A 1889 SIP/2.0 180 Ringing 1890 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1891 ;received=192.168.100.101 1892 Record-Route: 1893 From: BigGuy ;tag=9fxced76sl 1894 To: LittleGuy ;tag=314159 1895 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1896 CSeq: 2 INVITE 1897 Contact: 1898 Content-Length: 0 1900 F16 200 OK B -> Proxy 2 1902 SIP/2.0 200 OK 1903 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1904 ;received=192.168.156.222 1905 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1906 ;received=192.168.100.101 1907 Record-Route: 1908 From: BigGuy ;tag=9fxced76sl 1909 To: LittleGuy ;tag=314159 1910 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1911 CSeq: 2 INVITE 1912 Contact: 1913 Content-Type: application/sdp 1914 Content-Length: 145 1916 v=0 1917 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1918 s=- 1919 c=IN IP4 192.168.200.201 1920 t=0 0 1921 m=audio 3456 RTP/AVP 0 1922 a=rtpmap:0 PCMU/8000 1924 F17 200 OK Proxy 2 -> A 1926 SIP/2.0 200 OK 1927 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1928 ;received=192.168.100.101 1929 Record-Route: 1930 From: BigGuy ;tag=9fxced76sl 1931 To: LittleGuy ;tag=314159 1932 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1933 CSeq: 2 INVITE 1934 Contact: 1935 Content-Type: application/sdp 1936 Content-Length: 145 1938 v=0 1939 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 1940 s=- 1941 c=IN IP4 192.168.200.201 1942 t=0 0 1943 m=audio 3456 RTP/AVP 0 1944 a=rtpmap:0 PCMU/8000 1946 F18 ACK A -> Proxy 2 1948 ACK sip:UserB@192.168.200.201 SIP/2.0 1949 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1950 Max-Forwards: 70 1951 Route: 1952 From: BigGuy ;tag=9fxced76sl 1953 To: LittleGuy ;tag=314159 1954 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1955 CSeq: 2 ACK 1956 Content-Length: 0 1958 F19 ACK Proxy 2 -> B 1960 ACK sip:UserB@192.168.200.201 SIP/2.0 1961 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1962 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 1963 ;received=192.168.100.101 1964 Max-Forwards: 69 1965 From: BigGuy ;tag=9fxced76sl 1966 To: LittleGuy ;tag=314159 1967 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1968 CSeq: 2 ACK 1969 Content-Length: 0 1971 /* RTP streams are established between A and B */ 1973 /* User B Hangs Up with User A. */ 1975 F20 BYE User B -> Proxy 2 1977 BYE sip:UserA@192.168.100.101 SIP/2.0 1978 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1979 Max-Forwards: 70 1980 Route: 1981 From: LittleGuy ;tag=314159 1982 To: BigGuy ;tag=9fxced76sl 1983 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1984 CSeq: 1 BYE 1985 Content-Length: 0 1987 F21 BYE Proxy 2 -> User A 1989 BYE sip:UserA@192.168.100.101 SIP/2.0 1990 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 1991 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 1992 ;received=192.168.200.201 1993 Max-Forwards: 69 1994 From: LittleGuy ;tag=314159 1995 To: BigGuy ;tag=9fxced76sl 1996 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 1997 CSeq: 1 BYE 1998 Content-Length: 0 2000 F22 200 OK User A -> Proxy 2 2002 SIP/2.0 200 OK 2003 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 2004 ;received=192.168.156.222 2005 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 2006 ;received=192.168.200.201 2007 From: LittleGuy ;tag=314159 2008 To: BigGuy ;tag=9fxced76sl 2009 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 2010 CSeq: 1 BYE 2011 Content-Length: 0 2013 F23 200 OK Proxy 2 -> User B 2015 SIP/2.0 200 OK 2016 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKnashds7 2017 ;received=192.168.200.201 2018 From: LittleGuy ;tag=314159 2019 To: BigGuy ;tag=9fxced76sl 2020 Call-ID: 4Fde34wkd11wsGFDs3@atlanta.com 2021 CSeq: 1 BYE 2022 Content-Length: 0 2024 3.1.5 Successful SIP to SIP through SIP ALG 2026 User A ALG Proxy 2 User B 2027 | | | | 2028 | INVITE F1 | | | 2029 |--------------->| INVITE F2 | | 2030 | 100 F3 |--------------->| INVITE F4 | 2031 |<---------------| 100 F5 |--------------->| 2032 | |<---------------| 180 F6 | 2033 | | 180 F7 |<---------------| 2034 | 180 F8 |<---------------| | 2035 |<---------------| | 200 F9 | 2036 | | 200 F10 |<---------------| 2037 | 200 F11 |<---------------| | 2038 |<---------------| | 2039 | ACK F12 | | 2040 |--------------->| ACK F13 | 2041 | |-------------------------------->| 2042 | RTP Media | Both Way RTP Media | 2043 |<==============>|<===============================>| 2044 | BYE F14 | | 2045 |--------------->| BYE F15 | 2046 | |-------------------------------->| 2047 | | 200 F16 | 2048 | 200 F17 |<--------------------------------| 2049 |<---------------| | 2050 | | | 2052 User A completes a call to User B through a ALG (Application Layer 2053 Gateway) and a SIP Proxy. The routing through the ALG is 2054 accomplished using a pre-loaded Route header in the INVITE F1. Note 2055 that the media stream setup is not end-to-end - the ALG terminates 2056 both media streams and bridges them. This is done by the ALG 2057 modifying the SDP in the INVITE (F1) and 200 OK (F10) messages, and 2058 possibly any 18x or ACK messages containing SDP. 2060 In addition to firewall traversal, this Back-to-Back User Agent 2061 (B2BUA) could be used as part of an anonymizer 2062 service (in which all identifying information on User A would be 2063 removed), or to perform codec media conversion, such as mu-law to A- 2064 law conversion of PCM on an international call. 2066 Also note that Proxy 2 does not Record-Route in this call flow. 2068 Message Details 2070 F1 INVITE A -> SIP ALG 2072 INVITE sip:UserB@biloxi.com SIP/2.0 2073 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2074 Max-Forwards: 70 2075 From: BigGuy ;tag=9fxced76sl 2076 To: LittleGuy 2077 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2078 CSeq: 1 INVITE 2079 Contact: 2080 Route: 2081 Proxy-Authorization: Digest username="UserA", realm="biloxi.com", 2082 nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="", 2083 uri="sip:UserB@biloxi.com", 2084 response="b3f392f9218a328b9294076d708e6815" 2085 Content-Type: application/sdp 2086 Content-Length: 147 2088 v=0 2089 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2090 s=- 2091 c=IN IP4 192.168.100.101 2092 t=0 0 2093 m=audio 49172 RTP/AVP 0 2094 a=rtpmap:0 PCMU/8000 2096 /* Client for A prepares to receive data on port 49172 from the 2097 network. */ 2099 F2 INVITE SIP ALG -> Proxy 2 2101 INVITE sip:UserB@biloxi.com SIP/2.0 2102 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2103 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2104 ;received=192.168.100.101 2105 Max-Forwards: 69 2106 Record-Route: 2107 From: BigGuy ;tag=9fxced76sl 2108 To: LittleGuy 2109 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2110 CSeq: 1 INVITE 2111 Contact: 2112 Proxy-Authorization: Digest username="UserA", realm="biloxi.com", 2113 nonce="85b4f1cen4341ae6cbe5a3a9c8e88df9", opaque="", 2114 uri="sip:UserB@biloxi.com", 2115 response="b3f392f9218a328b9294076d708e6815" 2116 Content-Type: application/sdp 2117 Content-Length: 146 2119 v=0 2120 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2121 s=- 2122 c=IN IP4 192.168.255.128 2123 t=0 0 2124 m=audio 2000 RTP/AVP 0 2125 a=rtpmap:0 PCMU/8000 2126 F3 100 Trying SIP ALG -> A 2128 SIP/2.0 100 Trying 2129 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2130 ;received=192.168.100.101 2131 From: BigGuy ;tag=9fxced76sl 2132 To: LittleGuy 2133 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2134 CSeq: 1 INVITE 2135 Content-Length: 0 2137 /* SIP ALG prepares to proxy data from port 192.168.255.128/2000 to 2138 192.168.100.101/49172. Proxy 2 uses a Location Service function to 2139 determine where B is located. Based upon location analysis the call 2140 is forwarded to User B */ 2142 F4 INVITE Proxy 2 -> B 2144 INVITE sip:UserB@192.168.200.201 SIP/2.0 2145 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2146 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2147 ;received=192.168.255.128 2148 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2149 ;received=192.168.100.101 2150 Max-Forwards: 68 2151 Record-Route: 2152 From: BigGuy ;tag=9fxced76sl 2153 To: LittleGuy 2154 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2155 CSeq: 1 INVITE 2156 Contact: 2157 Content-Type: application/sdp 2158 Content-Length: 146 2160 v=0 2161 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2162 s=- 2163 c=IN IP4 192.168.255.128 2164 t=0 0 2165 m=audio 2000 RTP/AVP 0 2166 a=rtpmap:0 PCMU/8000 2168 F5 100 Trying Proxy 2 -> SIP ALG 2170 SIP/2.0 100 Trying 2171 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2172 ;received=192.168.255.128 2173 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2174 ;received=192.168.100.101 2175 From: BigGuy ;tag=9fxced76sl 2176 To: LittleGuy 2177 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2178 CSeq: 1 INVITE 2179 Content-Length: 0 2181 F6 180 Ringing B -> Proxy 2 2183 SIP/2.0 180 Ringing 2184 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2185 ;received=192.168.156.222 2186 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2187 ;received=192.168.255.128 2188 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2189 ;received=192.168.100.101 2190 Record-Route: 2191 From: BigGuy ;tag=9fxced76sl 2192 To: LittleGuy ;tag=314159 2193 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2194 CSeq: 1 INVITE 2195 Contact: 2196 Content-Length: 0 2198 F7 180 Ringing Proxy 2 -> SIP ALG 2200 SIP/2.0 180 Ringing 2201 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2202 ;received=192.168.255.128 2203 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2204 ;received=192.168.100.101 2205 Record-Route: 2206 From: BigGuy ;tag=9fxced76sl 2207 To: LittleGuy ;tag=314159 2208 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2209 CSeq: 1 INVITE 2210 Contact: 2211 Content-Length: 0 2213 F8 180 Ringing SIP ALG -> A 2215 SIP/2.0 180 Ringing 2216 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2217 ;received=192.168.100.101 2218 Record-Route: 2219 From: BigGuy ;tag=9fxced76sl 2220 To: LittleGuy ;tag=314159 2221 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2222 CSeq: 1 INVITE 2223 Contact: 2224 Content-Length: 0 2226 F9 200 OK B -> Proxy 2 2228 SIP/2.0 200 OK 2229 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2230 ;received=192.168.156.222 2231 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2232 ;received=192.168.255.128 2233 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2234 ;received=192.168.100.101 2235 Record-Route: 2236 From: BigGuy ;tag=9fxced76sl 2237 To: LittleGuy ;tag=314159 2238 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2239 CSeq: 1 INVITE 2240 Contact: 2241 Content-Type: application/sdp 2242 Content-Length: 145 2244 v=0 2245 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 2246 s=- 2247 c=IN IP4 192.168.200.201 2248 t=0 0 2249 m=audio 3456 RTP/AVP 0 2250 a=rtpmap:0 PCMU/8000 2252 F10 200 OK Proxy 2 -> SIP ALG 2254 SIP/2.0 200 OK 2255 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2256 ;received=192.168.255.128 2257 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2258 ;received=192.168.100.101 2259 Record-Route: 2260 From: BigGuy ;tag=9fxced76sl 2261 To: LittleGuy ;tag=314159 2262 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2263 CSeq: 1 INVITE 2264 Contact: 2265 Content-Type: application/sdp 2266 Content-Length: 145 2268 v=0 2269 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 2270 s=- 2271 c=IN IP4 192.168.200.201 2272 t=0 0 2273 m=audio 3456 RTP/AVP 0 2274 a=rtpmap:0 PCMU/8000 2276 F11 200 OK SIP ALG -> A 2278 SIP/2.0 200 OK 2279 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2280 ;received=192.168.100.101 2281 Record-Route: 2282 From: BigGuy ;tag=9fxced76sl 2283 To: LittleGuy ;tag=314159 2284 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2285 CSeq: 1 INVITE 2286 Contact: 2287 Content-Type: application/sdp 2288 Content-Length: 145 2290 v=0 2291 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 2292 s=- 2293 c=IN IP4 192.168.255.128 2294 t=0 0 2295 m=audio 1734 RTP/AVP 0 2296 a=rtpmap:0 PCMU/8000 2298 /* The ALG prepares to proxy packets from 192.168.255.128/ 2299 1734 to 192.168.200.201/3456 */ 2301 F12 ACK A -> SIP ALG 2303 ACK sip:UserB@192.168.200.201 SIP/2.0 2304 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2305 Max-Forwards: 70 2306 Route: 2307 From: BigGuy ;tag=9fxced76sl 2308 To: LittleGuy ;tag=314159 2309 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2310 CSeq: 1 ACK 2311 Content-Length: 0 2313 F13 ACK SIP ALG -> B 2315 ACK sip:UserB@192.168.200.201 SIP/2.0 2316 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2317 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2318 ;received=192.168.100.101 2319 Max-Forwards: 69 2320 From: BigGuy ;tag=9fxced76sl 2321 To: LittleGuy ;tag=314159 2322 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2323 CSeq: 1 ACK 2324 Content-Length: 0 2326 /* RTP streams are established between A and the ALG and 2327 between the ALG and B*/ 2329 /* User A Hangs Up with User B. */ 2331 F14 BYE A -> SIP ALG 2333 BYE sip:UserB@192.168.200.201 SIP/2.0 2334 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2335 Max-Forwards: 70 2336 Route: 2337 From: BigGuy ;tag=9fxced76sl 2338 To: LittleGuy ;tag=314159 2339 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2340 CSeq: 2 BYE 2341 Content-Length: 0 2343 F15 BYE SIP ALG -> B 2345 BYE sip:UserB@192.168.200.201 SIP/2.0 2346 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2347 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2348 ;received=192.168.100.101 2349 Max-Forwards: 69 2350 From: BigGuy ;tag=9fxced76sl 2351 To: LittleGuy ;tag=314159 2352 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2353 CSeq: 2 BYE 2354 Content-Length: 0 2356 F16 200 OK B -> SIP ALG 2358 SIP/2.0 200 OK 2359 Via: SIP/2.0/UDP alg1.atlanta.com:5060;branch=z9hG4bK739578.1 2360 ;received=192.168.255.128 2361 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2362 ;received=192.168.100.101 2363 From: BigGuy ;tag=9fxced76sl 2364 To: LittleGuy ;tag=314159 2365 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2366 CSeq: 2 BYE 2367 Content-Length: 0 2368 F17 200 OK SIP ALG -> A 2370 SIP/2.0 200 OK 2371 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2372 ;received=192.168.100.101 2373 From: BigGuy ;tag=9fxced76sl 2374 To: LittleGuy ;tag=314159 2375 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2376 CSeq: 2 BYE 2377 Content-Length: 0 2379 3.1.6 Successful SIP to SIP via Redirect and Proxy with SDP in ACK 2381 User A Redirect Server Proxy 3 User B 2382 | | | | 2383 | INVITE F1 | | | 2384 |--------------->| | | 2385 | 302 F2 | | | 2386 |<---------------| | | 2387 | ACK F3 | | | 2388 |--------------->| | | 2389 | INVITE F4 | | 2390 |-------------------------------->| INVITE F5 | 2391 | 100 F6 |--------------->| 2392 |<--------------------------------| 180 F7 | 2393 | 180 F8 |<---------------| 2394 |<--------------------------------| | 2395 | | 200 F9 | 2396 | 200 F10 |<---------------| 2397 |<--------------------------------| | 2398 | ACK F11 | | 2399 |-------------------------------->| ACK F12 | 2400 | |--------------->| 2401 | Both Way RTP Media | 2402 |<================================================>| 2403 | | BYE F13 | 2404 | BYE F14 |<---------------| 2405 |<--------------------------------| | 2406 | 200 F15 | | 2407 |-------------------------------->| 200 F16 | 2408 | |--------------->| 2409 | | | 2411 In this scenario, User A places a call to User B using first a 2412 Redirect server then a Proxy Server. The INVITE message is first 2413 sent to the Redirect Server. The Server returns a 302 Moved 2414 Temporarily response (F2) containing a Contact header with User B's 2415 current SIP address. User A then generates a new INVITE and sends to 2416 User B via the Proxy Server and the call proceeds normally. In this 2417 example, no SDP is present in the INVITE, so the SDP is carried in 2418 the ACK message. 2420 The call is terminated when User B sends a BYE message. 2422 Message Details 2424 F1 INVITE A -> Redirect Server 2426 INVITE sip:UserB@biloxi.com SIP/2.0 2427 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 2428 Max-Forwards: 70 2429 From: BigGuy ;tag=9fxced76sl 2430 To: LittleGuy 2431 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2432 CSeq: 1 INVITE 2433 Contact: 2434 Content-Length: 0 2436 F2 302 Moved Temporarily Redirect Proxy -> A 2438 SIP/2.0 302 Moved Temporarily 2439 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 2440 ;received=192.168.100.101 2441 From: BigGuy ;tag=9fxced76sl 2442 To: LittleGuy ;tag=53fHlqlQ2 2443 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2444 CSeq: 1 INVITE 2445 Contact: sip:UserB@chicago.com 2446 Content-Length: 0 2448 F3 ACK A -> Redirect Server 2450 ACK sip:UserB@biloxi.com SIP/2.0 2451 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bKbf9f44 2452 Max-Forwards: 70 2453 From: BigGuy ;tag=9fxced76sl 2454 To: LittleGuy ;tag=53fHlqlQ2 2455 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2456 CSeq: 1 ACK 2457 Content-Length: 0 2459 F4 INVITE A -> Proxy 3 2461 INVITE sip:UserB@chicago.com SIP/2.0 2462 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2463 Max-Forwards: 70 2464 From: BigGuy ;tag=9fxced76sl 2465 To: LittleGuy 2466 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2467 CSeq: 2 INVITE 2468 Contact: 2469 Content-Length: 0 2471 F5 INVITE Proxy 3 -> B 2473 INVITE sip:UserB@192.168.200.100 SIP/2.0 2474 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2475 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2476 ;received=192.168.100.101 2478 Max-Forwards: 69 2479 Record-Route: 2480 From: BigGuy ;tag=9fxced76sl 2481 To: LittleGuy 2482 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2483 CSeq: 2 INVITE 2484 Contact: 2485 Content-Length: 0 2487 F6 100 Trying Proxy 3 -> A 2489 SIP/2.0 100 Trying 2490 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2491 ;received=192.168.100.101 2492 From: BigGuy ;tag=9fxced76sl 2493 To: LittleGuy 2494 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2495 CSeq: 2 INVITE 2496 Content-Length: 0 2498 F7 180 Ringing B -> Proxy 3 2500 SIP/2.0 180 Ringing 2501 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2502 ;received=192.168.182.333 2503 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2504 ;received=192.168.100.101 2505 Record-Route: 2506 From: BigGuy ;tag=9fxced76sl 2507 To: LittleGuy ;tag=314159 2508 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2509 CSeq: 2 INVITE 2510 Contact: 2511 Content-Length: 0 2513 F8 180 Ringing Proxy 3 -> A 2515 SIP/2.0 180 Ringing 2516 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2517 ;received=192.168.100.101 2518 Record-Route: 2519 From: BigGuy ;tag=9fxced76sl 2520 To: LittleGuy ;tag=314159 2521 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2522 CSeq: 2 INVITE 2523 Contact: 2524 Content-Length: 0 2525 F9 200 OK B -> Proxy 3 2527 SIP/2.0 200 OK 2528 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2529 ;received=192.168.182.333 2530 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2531 ;received=192.168.100.101 2532 Record-Route: 2533 From: BigGuy ;tag=9fxced76sl 2534 To: LittleGuy ;tag=314159 2535 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2536 CSeq: 2 INVITE 2537 Contact: 2538 Content-Type: application/sdp 2539 Content-Length: 146 2541 v=0 2542 o=UserB 2890844527 2890844527 IN IP4 client.chicago.com 2543 s=- 2544 c=IN IP4 192.168.200.100 2545 t=0 0 2546 m=audio 3456 RTP/AVP 0 2547 a=rtpmap:0 PCMU/8000 2549 F10 200 OK Proxy -> A 2551 SIP/2.0 200 OK 2552 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2553 ;received=192.168.100.101 2554 Record-Route: 2555 From: BigGuy ;tag=9fxced76sl 2556 To: LittleGuy ;tag=314159 2557 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2558 CSeq: 2 INVITE 2559 Contact: 2560 Content-Type: application/sdp 2561 Content-Length: 146 2563 v=0 2564 o=UserB 2890844527 2890844527 IN IP4 client.chicago.com 2565 s=- 2566 c=IN IP4 192.168.200.100 2567 t=0 0 2568 m=audio 3456 RTP/AVP 0 2569 a=rtpmap:0 PCMU/8000 2571 /* ACK contains SDP of A since none present in INVITE */ 2573 F11 ACK A -> Proxy 3 2574 ACK sip:UserB@192.168.200.100 SIP/2.0 2575 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2576 Max-Forwards: 70 2577 Route: 2578 From: BigGuy ;tag=9fxced76sl 2579 To: LittleGuy ;tag=314159 2580 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2581 CSeq: 2 ACK 2582 Content-Type: application/sdp 2583 Content-Length: 147 2585 v=0 2586 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2587 s=- 2588 c=IN IP4 192.168.100.101 2589 t=0 0 2590 m=audio 49172 RTP/AVP 0 2591 a=rtpmap:0 PCMU/8000 2593 F12 ACK Proxy 3 -> B 2595 ACK sip:UserB@111.112.112.114 SIP/2.0 2596 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2597 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2598 ;received=192.168.100.101 2599 Max-Forwards: 69 2600 From: BigGuy ;tag=9fxced76sl 2601 To: LittleGuy ;tag=314159 2602 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2603 CSeq: 2 ACK 2604 Content-Type: application/sdp 2605 Content-Length: 147 2607 v=0 2608 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2609 s=- 2610 c=IN IP4 192.168.100.101 2611 t=0 0 2612 m=audio 49172 RTP/AVP 0 2613 a=rtpmap:0 PCMU/8000 2615 /* RTP streams are established between A and B*/ 2617 /* User B Hangs Up with User A. */ 2619 F13 BYE B -> Proxy 3 2621 BYE sip:UserA@192.168.100.101 SIP/2.0 2622 Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKfgaw2 2623 Max-Forwards: 70 2624 Route: 2625 From: LittleGuy ;tag=314159 2626 To: BigGuy ;tag=9fxced76sl 2627 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2628 CSeq: 1 BYE 2629 Content-Length: 0 2631 F14 BYE Proxy 3 -> A 2633 BYE sip:UserA@192.168.100.101 SIP/2.0 2634 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2635 ;received=192.168.200.100 2636 Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKfgaw2 2637 Max-Forwards: 69 2638 From: LittleGuy ;tag=314159 2639 To: BigGuy ;tag=9fxced76sl 2640 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2641 CSeq: 1 BYE 2642 Content-Length: 0 2644 F15 200 OK A -> Proxy 3 2646 SIP/2.0 200 OK 2647 Via: SIP/2.0/UDP ss3.chicago.com:5060;branch=z9hG4bK721e418c4.1 2648 ;received=192.168.182.333 2649 Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKfgaw2 2650 ;received=192.168.200.100 2651 From: LittleGuy ;tag=314159 2652 To: BigGuy ;tag=9fxced76sl 2653 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2654 CSeq: 1 BYE 2655 Content-Length: 0 2657 F16 200 OK Proxy 3 -> B 2659 SIP/2.0 200 OK 2660 Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKfgaw2 2661 ;received=192.168.200.100 2662 From: LittleGuy ;tag=314159 2663 To: BigGuy ;tag=9fxced76sl 2664 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2665 CSeq: 1 BYE 2666 Content-Length: 0 2668 3.1.7 Successful SIP to SIP with re-INVITE (IP Address Change) 2670 User A Proxy 2 User B 2671 | F1 INVITE | | 2672 |------------------->| F2 INVITE | 2673 | F3 100 Trying |------------------->| 2674 |<-------------------| F4 180 Ringing | 2675 | F5 180 Ringing |<-------------------| 2676 |<-------------------| | 2677 | | F6 200 OK | 2678 | F7 200 OK |<-------------------| 2679 |<-------------------| | 2680 | F8 ACK | 2681 |---------------------------------------->| 2682 | Both Way RTP Media Established | 2683 |<=======================================>| 2684 | | 2685 | B changes IP address | 2686 | | 2687 | F9 INVITE | 2688 |<----------------------------------------| 2689 | F10 200 OK | 2690 |---------------------------------------->| 2691 | F11 ACK | 2692 |<----------------------------------------| 2693 | New RTP Media Stream | 2694 |<=======================================>| 2695 | F12 BYE | 2696 |---------------------------------------->| 2697 | F25 200 OK | 2698 |<----------------------------------------| 2699 | | 2701 This example shows a session in which the media is changes midway 2702 through the session. When User B?s IP address changes during the 2703 session, User B sends a re-INVITE containing a new Contact and SDP 2704 (version number incremented) information to A. In this flow, the 2705 proxy does not Record-Route so is not in the SIP messaging path after 2706 the initial exchange. 2708 Message Details 2710 F1 INVITE A -> Proxy 2 2712 INVITE sip:UserB@biloxi.com SIP/2.0 2713 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2714 Max-Forwards: 70 2715 From: BigGuy ;tag=9fxced76sl 2716 To: LittleGuy 2717 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2718 CSeq: 1 INVITE 2719 Contact: 2720 Content-Type: application/sdp 2721 Content-Length: 147 2723 v=0 2724 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2725 s=- 2726 c=IN IP4 192.168.100.101 2727 t=0 0 2728 m=audio 49172 RTP/AVP 0 2729 a=rtpmap:0 PCMU/8000 2731 F2 INVITE Proxy 2 -> B 2733 INVITE sip:UserB@192.168.200.201 SIP/2.0 2734 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2735 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2736 ;received=192.168.100.101 2737 Max-Forwards: 69 2738 From: BigGuy ;tag=9fxced76sl 2739 To: LittleGuy 2740 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2741 CSeq: 1 INVITE 2742 Contact: 2743 Content-Type: application/sdp 2744 Content-Length: 147 2746 v=0 2747 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2748 s=- 2749 c=IN IP4 192.168.100.101 2750 t=0 0 2751 m=audio 49172 RTP/AVP 0 2752 a=rtpmap:0 PCMU/8000 2754 F3 100 Trying Proxy 2 -> A 2756 SIP/2.0 100 Trying 2757 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2758 ;received=192.168.100.101 2759 From: BigGuy ;tag=9fxced76sl 2760 To: LittleGuy 2761 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2762 CSeq: 1 INVITE 2763 Content-Length: 0 2765 F4 180 Ringing B -> Proxy 2 2766 SIP/2.0 180 Ringing 2767 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2768 ;received=192.168.156.222 2769 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2770 ;received=192.168.100.101 2771 From: BigGuy ;tag=9fxced76sl 2772 To: LittleGuy ;tag=314159 2773 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2774 CSeq: 1 INVITE 2775 Contact: 2776 Content-Length: 0 2778 F5 180 Ringing Proxy 2 -> A 2780 SIP/2.0 180 Ringing 2781 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2782 ;received=192.168.100.101 2783 From: BigGuy ;tag=9fxced76sl 2784 To: LittleGuy ;tag=314159 2785 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2786 CSeq: 1 INVITE 2787 Contact: 2788 Content-Length: 0 2790 F6 200 OK B -> Proxy 2 2792 SIP/2.0 200 OK 2793 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK2d4790.1 2794 ;received=192.168.156.222 2795 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2796 ;received=192.168.100.101 2797 From: BigGuy ;tag=9fxced76sl 2798 To: LittleGuy ;tag=314159 2799 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2800 CSeq: 1 INVITE 2801 Contact: 2802 Content-Type: application/sdp 2803 Content-Length: 145 2805 v=0 2806 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 2807 s=- 2808 c=IN IP4 192.168.200.201 2809 t=0 0 2810 m=audio 3456 RTP/AVP 0 2811 a=rtpmap:0 PCMU/8000 2813 F7 200 OK Proxy 2 -> A 2814 SIP/2.0 200 OK 2815 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2816 ;received=192.168.100.101 2817 From: BigGuy ;tag=9fxced76sl 2818 To: LittleGuy ;tag=314159 2819 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2820 CSeq: 1 INVITE 2821 Contact: 2822 Content-Type: application/sdp 2823 Content-Length: 145 2825 v=0 2826 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 2827 s=- 2828 c=IN IP4 192.168.200.201 2829 t=0 0 2830 m=audio 3456 RTP/AVP 0 2831 a=rtpmap:0 PCMU/8000 2833 F8 ACK A -> B 2835 ACK sip:UserB@192.168.200.201 SIP/2.0 2836 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2837 Max-Forwards: 70 2838 From: BigGuy ;tag=9fxced76sl 2839 To: LittleGuy ;tag=314159 2840 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2841 CSeq: 1 ACK 2842 Content-Length: 0 2844 /* RTP streams are established between A and B */ 2846 /* B changes IP address and re-INVITEs A with new Contact and SDP */ 2848 F9 INVITE B -> A 2850 INVITE sip:UserA@192.168.100.101 SIP/2.0 2851 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKlkld5l 2852 Max-Forwards: 70 2853 From: LittleGuy ;tag=314159 2854 To: BigGuy ;tag=9fxced76sl 2855 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2856 CSeq: 14 INVITE 2857 Contact: 2858 Content-Type: application/sdp 2859 Content-Length: 147 2861 v=0 2862 o=UserB 2890844527 2890844528 IN IP4 client.chicago.com 2863 s=- 2864 c=IN IP4 192.168.200.100 2865 t=0 0 2866 m=audio 47172 RTP/AVP 0 2867 a=rtpmap:0 PCMU/8000 2869 F10 200 OK A ->B 2871 SIP/2.0 200 OK 2872 Via: SIP/2.0/UDP client.chicago.com:5060;branch=z9hG4bKlkld5l 2873 ;received=192.168.200.100 2874 Max-Forwards: 70 2875 From: LittleGuy ;tag=314159 2876 To: BigGuy ;tag=9fxced76sl 2877 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2878 CSeq: 14 INVITE 2879 Contact: 2880 Content-Type: application/sdp 2881 Content-Length: 147 2883 v=0 2884 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2885 s=- 2886 c=IN IP4 192.168.100.101 2887 t=0 0 2888 m=audio 1000 RTP/AVP 0 2889 a=rtpmap:0 PCMU/8000 2891 F11 ACK B -> A 2893 ACK sip:UserA@192.168.100.101 SIP/2.0 2894 Via: SIP/2.0/UDP client.biloxi.com:5060;branch=z9hG4bKlkld5l 2895 Max-Forwards: 70 2896 From: LittleGuy ;tag=314159 2897 To: BigGuy ;tag=9fxced76sl 2898 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2899 CSeq: 14 ACK 2900 Content-Length: 0 2902 /* New RTP stream established between A and B */ 2904 /* A hangs up with B */ 2906 F12 BYE A -> B 2908 BYE sip:UserB@192.168.200.100 SIP/2.0 2909 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2910 Max-Forwards: 70 2911 From: BigGuy ;tag=9fxced76sl 2912 To: LittleGuy ;tag=314159 2913 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2914 CSeq: 2 BYE 2915 Content-Length: 0 2917 F13 200 OK B -> A 2919 SIP/2.0 200 OK 2920 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2921 ;received=192.168.100.101 2922 Max-Forwards: 70 2923 From: BigGuy ;tag=9fxced76sl 2924 To: LittleGuy ;tag=314159 2925 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2926 CSeq: 2 BYE 2927 Content-Length: 0 2929 3.2 Failure Scenarios 2931 3.2.1 Unsuccessful SIP to SIP no answer 2933 User A Proxy 1 Proxy 2 User B 2934 | | | | 2935 | INVITE F1 | | | 2936 |--------------->| INVITE F2 | | 2937 | 100 F3 |--------------->| INVITE F4 | 2938 |<---------------| 100 F5 |--------------->| 2939 | |<---------------| | 2940 | | | 180 F6 | 2941 | | 180 F7 |<---------------| 2942 | 180 F8 |<---------------| | 2943 |<---------------| | | 2944 | | | | 2945 | CANCEL F9 | | | 2946 |--------------->| | | 2947 | 200 F10 | | | 2948 |<---------------| CANCEL F11 | | 2949 | |--------------->| | 2950 | | 200 F12 | | 2951 | |<---------------| | 2952 | | | CANCEL F13 | 2953 | | |--------------->| 2954 | | | 200 F14 | 2955 | | |<---------------| 2956 | | | 487 F15 | 2957 | | |<---------------| 2958 | | | ACK F16 | 2959 | | 487 F17 |--------------->| 2960 | |<---------------| | 2961 | | ACK F18 | | 2962 | 487 F19 |--------------->| | 2963 |<---------------| | | 2964 | ACK F20 | | | 2965 |--------------->| | | 2966 | | | | 2968 In this scenario, User A gives up on the call before User B answers 2969 (sends a 200 OK response). User A sends a CANCEL (F9) since no final 2970 response had been received from User B. If a 200 OK to the INVITE 2971 had crossed with the CANCEL, User A would have sent an ACK then a BYE 2972 to User B in order to properly terminate the call. 2974 Note that the CANCEL message is acknowledged with a 200 OK on a hop 2975 by hop basis, rather than end to end. 2977 Message Details 2979 F1 INVITE A -> Proxy 1 2981 INVITE sip:UserB@biloxi.com SIP/2.0 2982 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 2983 Max-Forwards: 70 2984 Route: 2985 From: BigGuy ;tag=9fxced76sl 2986 To: LittleGuy 2987 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 2988 CSeq: 1 INVITE 2989 Contact: 2990 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 2991 nonce="ze7k1ee88df84f1cec431ae6cbe5a359", opaque="", 2992 uri="sip:UserB@biloxi.com", 2993 response="b00b416324679d7e243f55708d44be7b" 2994 Content-Type: application/sdp 2995 Content-Length: 147 2997 v=0 2998 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 2999 s=- 3000 c=IN IP4 192.168.100.101 3001 t=0 0 3002 m=audio 49172 RTP/AVP 0 3003 a=rtpmap:0 PCMU/8000 3005 /*Client for A prepares to receive data on port 49172 from the 3006 network.*/ 3008 F2 INVITE Proxy 1 -> Proxy 2 3010 INVITE sip:UserB@biloxi.com SIP/2.0 3011 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3012 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3013 ;received=192.168.100.101 3014 Max-Forwards: 69 3015 Record-Route: 3016 From: BigGuy ;tag=9fxced76sl 3017 To: LittleGuy 3018 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3019 CSeq: 1 INVITE 3020 Contact: 3021 Content-Type: application/sdp 3022 Content-Length: 147 3024 v=0 3025 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3026 s=- 3027 c=IN IP4 192.168.100.101 3028 t=0 0 3029 m=audio 49172 RTP/AVP 0 3030 a=rtpmap:0 PCMU/8000 3032 F3 100 Trying Proxy 1 -> A 3034 SIP/2.0 100 Trying 3035 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3036 ;received=192.168.100.101 3037 From: BigGuy ;tag=9fxced76sl 3038 To: LittleGuy 3039 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3040 CSeq: 1 INVITE 3041 Content-Length: 0 3043 F4 INVITE Proxy 2 -> B 3045 INVITE sip:UserB@192.168.200.201 SIP/2.0 3046 Via: SIP/2.0/UDP ss2.client.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3047 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3048 ;received=192.168.255.111 3049 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3050 ;received=192.168.100.101 3051 Record-Route: , 3052 Max-Forwards: 68 3053 From: BigGuy ;tag=9fxced76sl 3054 To: LittleGuy 3055 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3056 CSeq: 1 INVITE 3057 Contact: 3058 Content-Type: application/sdp 3059 Content-Length: 147 3061 v=0 3062 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3063 s=- 3064 c=IN IP4 192.168.100.101 3065 t=0 0 3066 m=audio 49172 RTP/AVP 0 3067 a=rtpmap:0 PCMU/8000 3069 F5 100 Trying Proxy 2 -> Proxy 1 3071 SIP/2.0 100 Trying 3072 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3073 ;received=192.168.255.111 3074 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3075 ;received=192.168.100.101 3077 From: BigGuy ;tag=9fxced76sl 3078 To: LittleGuy 3079 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3080 CSeq: 1 INVITE 3081 Content-Length: 0 3083 F6 180 Ringing B -> Proxy 2 3085 SIP/2.0 180 Ringing 3086 Via: SIP/2.0/UDP ss2.client.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3087 ;received=192.168.156.222 3088 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3089 ;received=192.168.255.111 3090 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3091 ;received=192.168.100.101 3092 Record-Route: , 3093 From: BigGuy ;tag=9fxced76sl 3094 To: LittleGuy ;tag=314159 3095 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3096 CSeq: 1 INVITE 3097 Contact: 3098 Content-Length: 0 3100 F7 180 Ringing Proxy 2 -> Proxy 1 3102 SIP/2.0 180 Ringing 3103 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3104 ;received=192.168.255.111 3105 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3106 ;received=192.168.100.101 3107 Record-Route: , 3108 From: BigGuy ;tag=9fxced76sl 3109 To: LittleGuy ;tag=314159 3110 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3111 CSeq: 1 INVITE 3112 Contact: 3113 Content-Length: 0 3115 F8 180 Ringing Proxy 1 -> A 3117 SIP/2.0 180 Ringing 3118 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3119 ;received=192.168.100.101 3120 Record-Route: , 3121 From: BigGuy ;tag=9fxced76sl 3122 To: LittleGuy ;tag=314159 3123 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3124 CSeq: 1 INVITE 3125 Contact: 3126 Content-Length: 0 3128 F9 CANCEL A -> Proxy 1 3130 CANCEL sip:UserB@biloxi.com SIP/2.0 3131 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3132 Max-Forwards: 70 3133 From: BigGuy ;tag=9fxced76sl 3134 To: LittleGuy 3135 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3136 CSeq: 1 CANCEL 3137 Content-Length: 0 3139 F10 200 OK Proxy 1 -> A 3141 SIP/2.0 200 OK 3142 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3143 ;received=192.168.100.101 3144 From: BigGuy ;tag=9fxced76sl 3145 To: LittleGuy 3146 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3147 CSeq: 1 CANCEL 3148 Content-Length: 0 3150 F11 CANCEL Proxy 1 -> Proxy 2 3152 CANCEL sip:UserA@atlanta.com SIP/2.0 3153 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3154 Max-Forwards: 70 3155 From: BigGuy ;tag=9fxced76sl 3156 To: LittleGuy 3157 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3158 CSeq: 1 CANCEL 3159 Content-Length: 0 3161 F12 200 OK Proxy 2 -> Proxy 1 3163 SIP/2.0 200 OK 3164 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3165 ;received=192.168.255.111 3166 From: BigGuy ;tag=9fxced76sl 3167 To: LittleGuy 3168 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3169 CSeq: 1 CANCEL 3170 Content-Length: 0 3172 F13 CANCEL Proxy 2 -> B 3173 CANCEL sip:UserB@192.168.200.201 SIP/2.0 3174 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3175 Max-Forwards: 70 3176 From: BigGuy ;tag=9fxced76sl 3177 To: LittleGuy 3178 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3179 CSeq: 1 CANCEL 3180 Content-Length: 0 3182 F14 200 OK B -> Proxy 2 3184 SIP/2.0 200 OK 3185 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3186 ;received=192.168.156.222 3187 From: BigGuy ;tag=9fxced76sl 3188 To: LittleGuy 3189 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3190 CSeq: 1 CANCEL 3191 Content-Length: 0 3193 F15 487 Request Terminated B -> Proxy 2 3195 SIP/2.0 487 Request Terminated 3196 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3197 ;received=192.168.156.222 3198 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3199 ;received=192.168.255.111 3200 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3201 ;received=192.168.100.101 3202 From: BigGuy ;tag=9fxced76sl 3203 To: LittleGuy ;tag=314159 3204 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3205 CSeq: 1 INVITE 3206 Content-Length: 0 3208 F16 ACK Proxy 2 -> B 3210 ACK sip:UserB@192.168.200.201 SIP/2.0 3211 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3212 Max-Forwards: 70 3213 From: BigGuy ;tag=9fxced76sl 3214 To: LittleGuy ;tag=314159 3215 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3216 CSeq: 1 ACK 3217 Content-Length: 0 3219 F17 487 Request Terminated Proxy 2 -> Proxy 1 3220 SIP/2.0 487 Request Terminated 3221 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3222 ;received=192.168.255.111 3223 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3224 ;received=192.168.100.101 3225 From: BigGuy ;tag=9fxced76sl 3226 To: LittleGuy ;tag=314159 3227 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3228 CSeq: 1 INVITE 3229 Content-Length: 0 3231 F18 ACK Proxy 1 -> Proxy 2 3233 ACK sip:UserB@biloxi.com SIP/2.0 3234 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3235 Max-Forwards: 70 3236 From: BigGuy ;tag=9fxced76sl 3237 To: LittleGuy ;tag=314159 3238 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3239 CSeq: 1 ACK 3240 Content-Length: 0 3242 F19 487 Request Terminated Proxy 1 -> A 3244 SIP/2.0 487 Request Terminated 3245 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3246 ;received=192.168.100.101 3247 From: BigGuy ;tag=9fxced76sl 3248 To: LittleGuy ;tag=314159 3249 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3250 CSeq: 1 INVITE 3252 F20 ACK A -> Proxy 1 3254 ACK sip:UserB@biloxi.com SIP/2.0 3255 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3256 Max-Forwards: 70 3257 From: BigGuy ;tag=9fxced76sl 3258 To: LittleGuy ;tag=314159 3259 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3260 CSeq: 1 ACK 3261 Content-Length: 0 3263 3.2.2 Unsuccessful SIP to SIP busy 3265 User A Proxy 1 Proxy 2 User B 3266 | | | | 3267 | INVITE F1 | | | 3268 |--------------->| INVITE F2 | | 3269 | 100 F3 |--------------->| INVITE F4 | 3270 |<---------------| 100 F5 |--------------->| 3271 | |<---------------| | 3272 | | | 486 F6 | 3273 | | |<---------------| 3274 | | | ACK F7 | 3275 | | 486 F8 |--------------->| 3276 | |<---------------| | 3277 | | ACK F9 | | 3278 | 486 F10 |--------------->| | 3279 |<---------------| | | 3280 | ACK F11 | | | 3281 |--------------->| | | 3282 | | | | 3284 In this scenario, User B is busy and sends a 486 Busy Here response 3285 to User A's INVITE. Note that the non-2xx response is acknowleged on 3286 a hop-by-hop basis instead of end-to-end. 3288 Message Details 3290 F1 INVITE User A -> Proxy 1 3292 INVITE sip:UserB@biloxi.com SIP/2.0 3293 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3294 Max-Forwards: 70 3295 Route: 3296 From: BigGuy ;tag=9fxced76sl 3297 To: LittleGuy 3298 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3299 CSeq: 1 INVITE 3300 Contact: 3301 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 3302 nonce="dc3a5ab2530aa93112cf5904ba7d88fa", opaque="", 3303 uri="sip:UserB@biloxi.com", 3304 response="702138b27d869ac8741e10ec643d55be" 3305 Content-Type: application/sdp 3306 Content-Length: 147 3308 v=0 3309 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3310 s=- 3311 c=IN IP4 192.168.100.101 3312 t=0 0 3313 m=audio 49172 RTP/AVP 0 3314 a=rtpmap:0 PCMU/8000 3316 /*Client for A prepares to receive data on port 49172 from the 3317 network.*/ 3319 F2 INVITE Proxy 1 -> Proxy 2 3321 INVITE sip:UserB@biloxi.com SIP/2.0 3322 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3323 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3324 ;received=192.168.100.101 3325 Max-Forwards: 69 3326 Record-Route: 3327 From: BigGuy ;tag=9fxced76sl 3328 To: LittleGuy 3329 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3330 CSeq: 1 INVITE 3331 Contact: 3332 Content-Type: application/sdp 3333 Content-Length: 147 3335 v=0 3336 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3337 s=- 3338 c=IN IP4 192.168.100.101 3339 t=0 0 3340 m=audio 49172 RTP/AVP 0 3341 a=rtpmap:0 PCMU/8000 3343 F3 100 Trying Proxy 1 -> User A 3345 SIP/2.0 100 Trying 3346 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3347 ;received=192.168.100.101 3348 From: BigGuy ;tag=9fxced76sl 3349 To: LittleGuy 3350 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3351 CSeq: 1 INVITE 3352 Content-Length: 0 3354 F4 INVITE Proxy 2 -> User B 3356 INVITE sip:UserB@192.168.200.201 SIP/2.0 3357 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3358 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3359 ;received=192.168.255.111 3360 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3361 ;received=192.168.100.101 3363 Max-Forwards: 68 3364 Record-Route: , 3365 From: BigGuy ;tag=9fxced76sl 3366 To: LittleGuy 3367 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3368 CSeq: 1 INVITE 3369 Contact: 3370 Content-Type: application/sdp 3371 Content-Length: 147 3373 v=0 3374 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3375 s=- 3376 c=IN IP4 192.168.100.101 3377 t=0 0 3378 m=audio 49172 RTP/AVP 0 3379 a=rtpmap:0 PCMU/8000 3381 F5 100 Trying Proxy 2 -> Proxy 1 3383 SIP/2.0 100 Trying 3384 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3385 ;received=192.168.255.111 3386 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3387 ;received=192.168.100.101 3388 From: BigGuy ;tag=9fxced76sl 3389 To: LittleGuy 3390 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3391 CSeq: 1 INVITE 3392 Content-Length: 0 3394 F6 486 Busy Here User B -> Proxy 2 3396 SIP/2.0 486 Busy Here 3397 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3398 ;received=192.168.156.222 3399 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3400 ;received=192.168.255.111 3401 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3402 ;received=192.168.100.101 3403 From: BigGuy ;tag=9fxced76sl 3404 To: LittleGuy ;tag=314159 3405 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3406 CSeq: 1 INVITE 3407 Content-Length: 0 3409 F7 ACK Proxy 2 -> User B 3411 ACK sip:UserB@192.168.200.201 SIP/2.0 3412 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3413 Max-Forwards: 70 3414 From: BigGuy ;tag=9fxced76sl 3415 To: LittleGuy ;tag=314159 3416 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3417 CSeq: 1 ACK 3418 Content-Length: 0 3420 F8 486 Busy Here Proxy 2 -> Proxy 1 3422 SIP/2.0 486 Busy Here 3423 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3424 ;received=192.168.255.111 3425 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3426 ;received=192.168.100.101 3427 From: BigGuy ;tag=9fxced76sl 3428 To: LittleGuy ;tag=314159 3429 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3430 CSeq: 1 INVITE 3431 Content-Length: 0 3433 F9 ACK Proxy 1 -> Proxy 2 3435 ACK sip:UserB@biloxi.com SIP/2.0 3436 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3437 Max-Forwards: 70 3438 From: BigGuy ;tag=9fxced76sl 3439 To: LittleGuy ;tag=314159 3440 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3441 CSeq: 1 ACK 3442 Content-Length: 0 3444 F10 486 Busy Here Proxy 1 -> User A 3446 SIP/2.0 486 Busy Here 3447 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3448 ;received=192.168.100.101 3449 From: BigGuy ;tag=9fxced76sl 3450 To: LittleGuy ;tag=314159 3451 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3452 CSeq: 1 INVITE 3453 Content-Length: 0 3455 F11 ACK User A -> Proxy 1 3457 ACK sip:UserB@biloxi.com SIP/2.0 3458 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3459 Max-Forwards: 70 3460 From: BigGuy ;tag=9fxced76sl 3461 To: LittleGuy ;tag=314159 3462 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3463 CSeq: 1 ACK 3464 Content-Length: 0 3466 3.2.3 Unsuccessful SIP to SIP no response 3468 User A Proxy 1 Proxy 2 User B 3469 | | | | 3470 | INVITE F1 | | | 3471 |--------------->| INVITE F2 | | 3472 | 100 F3 |--------------->| INVITE F4 | 3473 |<---------------| 100 F5 |--------------->| 3474 | |<---------------| INVITE F6 | 3475 | | |--------------->| 3476 | | | INVITE F7 | 3477 | | |--------------->| 3478 | | | INVITE F8 | 3479 | | |--------------->| 3480 | | | INVITE F9 | 3481 | | |--------------->| 3482 | | | INVITE F10 | 3483 | | |--------------->| 3484 | | | INVITE F11 | 3485 | | 480 F12 |--------------->| 3486 | |<---------------| | 3487 | | ACK F13 | | 3488 | 480 F14 |--------------->| | 3489 |<---------------| | | 3490 | ACK F15 | | | 3491 |--------------->| | | 3492 | | | | 3494 In this example, there is no response from User B to User A's INVITE 3495 messages being re-transmitted by Proxy 2. After the sixth re- 3496 transmission, Proxy 2 gives up and sends a 480 No Response to User A. 3498 Message Details 3500 F1 INVITE User A -> Proxy 1 3502 INVITE sip:UserB@biloxi.com SIP/2.0 3503 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3504 Max-Forwards: 70 3505 Route: 3506 From: BigGuy ;tag=9fxced76sl 3507 To: LittleGuy 3508 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3509 CSeq: 1 INVITE 3510 Contact: 3511 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 3512 nonce="cf5904ba7d8dc3a5ab2530aa931128fa", opaque="", 3513 uri="sip:UserB@biloxi.com", 3514 response="7afc04be7961f053c24f80e7dbaf888f" 3515 Content-Type: application/sdp 3516 Content-Length: 147 3518 v=0 3519 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3520 s=- 3521 c=IN IP4 192.168.100.101 3522 t=0 0 3523 m=audio 49172 RTP/AVP 0 3524 a=rtpmap:0 PCMU/8000 3526 /*Client for A prepares to receive data on port 49172 from the 3527 network.*/ 3529 F2 INVITE Proxy 1 -> Proxy 2 3531 INVITE sip:UserB@biloxi.com SIP/2.0 3532 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3533 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3534 ;received=192.168.100.101 3535 Max-Forwards: 69 3536 Record-Route: 3537 From: BigGuy ;tag=9fxced76sl 3538 To: LittleGuy 3539 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3540 CSeq: 1 INVITE 3541 Contact: 3542 Content-Type: application/sdp 3543 Content-Length: 147 3545 v=0 3546 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3547 s=- 3548 c=IN IP4 192.168.100.101 3549 t=0 0 3550 m=audio 49172 RTP/AVP 0 3551 a=rtpmap:0 PCMU/8000 3553 F3 100 Trying Proxy 1 -> User A 3555 SIP/2.0 100 Trying 3556 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3557 ;received=192.168.100.101 3558 From: BigGuy ;tag=9fxced76sl 3559 To: LittleGuy 3560 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3561 CSeq: 1 INVITE 3562 Content-Length: 0 3564 F4 INVITE Proxy 2 -> User B 3565 INVITE sip:UserB@192.168.200.201 SIP/2.0 3566 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3567 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3568 ;received=192.168.255.111 3569 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3570 ;received=192.168.100.101 3571 Max-Forwards: 68 3572 Record-Route: , 3573 From: BigGuy ;tag=9fxced76sl 3574 To: LittleGuy 3575 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3576 CSeq: 1 INVITE 3577 Contact: 3578 Content-Type: application/sdp 3579 Content-Length: 147 3581 v=0 3582 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3583 s=- 3584 c=IN IP4 192.168.100.101 3585 t=0 0 3586 m=audio 49172 RTP/AVP 0 3587 a=rtpmap:0 PCMU/8000 3589 F5 100 Trying Proxy 2 -> Proxy 1 3591 SIP/2.0 100 Trying 3592 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3593 ;received=192.168.255.111 3594 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3595 ;received=192.168.100.101 3596 From: BigGuy ;tag=9fxced76sl 3597 To: LittleGuy 3598 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3599 CSeq: 1 INVITE 3600 Content-Length: 0 3602 F6 INVITE Proxy 2 -> User B 3604 Resend of Message F4 3606 F7 INVITE Proxy 2 -> User B 3608 Resend of Message F4 3610 F8 INVITE Proxy 2 -> User B 3611 Resend of Message F4 3613 F9 INVITE Proxy 2 -> User B 3615 Resend of Message F4 3617 F10 INVITE Proxy 2 -> User B 3619 Resend of Message F4 3621 F11 INVITE Proxy 2 -> User B 3623 Resend of Message F4 3625 /* Proxy 2 gives up */ 3627 F12 480 No Response Proxy 2 -> Proxy 1 3629 SIP/2.0 480 No Response 3630 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3631 ;received=192.168.255.111 3632 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3633 ;received=192.168.100.101 3634 From: BigGuy ;tag=9fxced76sl 3635 To: LittleGuy ;tag=314159 3636 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3637 CSeq: 1 INVITE 3638 Content-Length: 0 3640 F13 ACK Proxy 1 -> Proxy 2 3642 ACK sip:UserB@biloxi.com SIP/2.0 3643 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3644 Max-Forwards: 70 3645 From: BigGuy ;tag=9fxced76sl 3646 To: LittleGuy ;tag=314159 3647 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3648 CSeq: 1 ACK 3649 Content-Length: 0 3651 F14 480 No Response Proxy 1 -> User A 3653 SIP/2.0 480 No Response 3654 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3655 ;received=192.168.100.101 3656 From: BigGuy ;tag=9fxced76sl 3657 To: LittleGuy ;tag=314159 3658 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3659 CSeq: 1 INVITE 3660 Content-Length: 0 3662 F15 ACK User A -> Proxy 1 3664 ACK sip:UserB@biloxi.com SIP/2.0 3665 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3666 Max-Forwards: 70 3667 From: BigGuy ;tag=9fxced76sl 3668 To: LittleGuy ;tag=314159 3669 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3670 CSeq: 1 ACK 3671 Content-Length: 0 3673 3.2.4 Unsuccessful SIP to SIP Temporarily Unavailable 3675 User A Proxy 1 Proxy 2 User B 3676 | | | | 3677 | INVITE F1 | | | 3678 |--------------->| INVITE F2 | | 3679 | 100 F3 |--------------->| INVITE F4 | 3680 |<---------------| 100 F5 |--------------->| 3681 | |<---------------| 180 F6 | 3682 | | 180 F7 |<---------------| 3683 | 180 F8 |<---------------| | 3684 |<---------------| | 480 F9 | 3685 | | |<---------------| 3686 | | | ACK F10 | 3687 | | 480 F11 |--------------->| 3688 | |<---------------| | 3689 | | ACK F12 | | 3690 | 480 F13 |--------------->| | 3691 |<---------------| | | 3692 | ACK F14 | | | 3693 |--------------->| | | 3694 | | | | 3696 In this scenario, User B initially sends a 180 Ringing response to 3697 User A, indicating that alerting is taking place. However, then a 3698 480 Unavailable is then sent to User A. This response is 3699 acknowledged then proxied back to User A. 3701 Message Details 3703 F1 INVITE A -> Proxy 1 3705 INVITE sip:UserB@biloxi.com SIP/2.0 3706 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3707 Max-Forwards: 70 3708 Route: 3709 From: BigGuy ;tag=9fxced76sl 3710 To: LittleGuy 3711 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3712 CSeq: 1 INVITE 3713 Contact: 3714 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 3715 nonce="aa9311cf5904ba7d8dc3a5ab253028fa", opaque="", 3716 uri="sip:UserB@biloxi.com", 3717 response="59a46a91bf1646562a4d486c84b399db" 3718 Content-Type: application/sdp 3719 Content-Length: 147 3721 v=0 3722 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3723 s=- 3724 c=IN IP4 192.168.100.101 3725 t=0 0 3726 m=audio 49172 RTP/AVP 0 3727 a=rtpmap:0 PCMU/8000 3729 /*Client for A prepares to receive data on port 49172 from the 3730 network.*/ 3732 F2 INVITE Proxy 1 -> Proxy 2 3734 INVITE sip:UserB@biloxi.com SIP/2.0 3735 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3736 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3737 ;received=192.168.100.101 3738 Max-Forwards: 69 3739 Record-Route: 3740 From: BigGuy ;tag=9fxced76sl 3741 To: LittleGuy 3742 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3743 CSeq: 1 INVITE 3744 Contact: 3745 Content-Type: application/sdp 3746 Content-Length: 147 3748 v=0 3749 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3750 s=- 3751 c=IN IP4 192.168.100.101 3752 t=0 0 3753 m=audio 49172 RTP/AVP 0 3754 a=rtpmap:0 PCMU/8000 3756 F3 100 Trying Proxy 1 -> A 3758 SIP/2.0 100 Trying 3759 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3760 ;received=192.168.100.101 3761 From: BigGuy ;tag=9fxced76sl 3762 To: LittleGuy 3763 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3764 CSeq: 1 INVITE 3765 Content-Length: 0 3767 F4 INVITE Proxy 2 -> B 3769 INVITE sip:UserB@192.168.200.201 SIP/2.0 3770 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3771 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3772 ;received=192.168.255.111 3773 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3774 ;received=192.168.100.101 3775 Max-Forwards: 68 3776 Record-Route: , 3777 From: BigGuy ;tag=9fxced76sl 3778 To: LittleGuy 3779 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3780 CSeq: 1 INVITE 3781 Contact: 3782 Content-Type: application/sdp 3783 Content-Length: 147 3785 v=0 3786 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 3787 s=- 3788 c=IN IP4 192.168.100.101 3789 t=0 0 3790 m=audio 49172 RTP/AVP 0 3791 a=rtpmap:0 PCMU/8000 3793 F5 100 Trying Proxy 2 -> Proxy 1 3795 SIP/2.0 100 Trying 3796 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3797 ;received=192.168.255.111 3798 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3799 ;received=192.168.100.101 3800 From: BigGuy ;tag=9fxced76sl 3801 To: LittleGuy 3802 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3803 CSeq: 1 INVITE 3804 Content-Length: 0 3806 F6 180 Ringing B -> Proxy 2 3808 SIP/2.0 180 Ringing 3809 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3810 ;received=192.168.156.222 3811 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3812 ;received=192.168.255.111 3813 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3814 ;received=192.168.100.101 3815 Record-Route: , 3816 From: BigGuy ;tag=9fxced76sl 3817 To: LittleGuy ;tag=314159 3818 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3819 CSeq: 1 INVITE 3820 Contact: 3821 Content-Length: 0 3823 F7 180 Ringing Proxy 2 -> Proxy 1 3825 SIP/2.0 180 Ringing 3826 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3827 ;received=192.168.255.111 3828 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3829 ;received=192.168.100.101 3830 Record-Route: , 3831 From: BigGuy ;tag=9fxced76sl 3832 To: LittleGuy ;tag=314159 3833 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3834 CSeq: 1 INVITE 3835 Contact: 3836 Content-Length: 0 3838 F8 180 Ringing Proxy 1 -> A 3840 SIP/2.0 180 Ringing 3841 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3842 ;received=192.168.100.101 3843 Record-Route: , 3844 From: BigGuy ;tag=9fxced76sl 3845 To: LittleGuy ;tag=314159 3846 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3847 CSeq: 1 INVITE 3848 Contact: 3849 Content-Length: 0 3851 F9 480 Temporarily Unavailable B -> Proxy 2 3853 SIP/2.0 480 Temporarily Unavailable 3854 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3855 ;received=192.168.156.222 3856 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3857 ;received=192.168.255.111 3858 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3859 ;received=192.168.100.101 3860 From: BigGuy ;tag=9fxced76sl 3861 To: LittleGuy ;tag=314159 3862 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3863 CSeq: 1 INVITE 3864 Content-Length: 0 3866 F10 ACK Proxy 2 -> B 3868 ACK sip:UserB@192.168.200.201 SIP/2.0 3869 Via: SIP/2.0/UDP ss2.biloxi.com:5060;branch=z9hG4bK721e418c4.1 3870 Max-Forwards: 70 3871 From: BigGuy ;tag=9fxced76sl 3872 To: LittleGuy ;tag=314159 3873 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3874 CSeq: 1 ACK 3875 Content-Length: 0 3877 F11 480 Temporarily Unavailable Proxy 2 -> Proxy 1 3879 SIP/2.0 480 Temporarily Unavailable 3880 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3881 ;received=192.168.255.111 3882 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3883 ;received=192.168.100.101 3884 From: BigGuy ;tag=9fxced76sl 3885 To: LittleGuy ;tag=314159 3886 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3887 CSeq: 1 INVITE 3888 Content-Length: 0 3890 F12 ACK Proxy 1 -> Proxy 2 3892 ACK sip:UserB@biloxi.com SIP/2.0 3893 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 3894 Max-Forwards: 70 3895 From: BigGuy ;tag=9fxced76sl 3896 To: LittleGuy ;tag=314159 3897 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3898 CSeq: 1 ACK 3899 Content-Length: 0 3901 F13 480 Temporarily Unavailable Proxy 1 -> A 3903 SIP/2.0 480 Temporarily Unavailable 3904 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3905 ;received=192.168.100.101 3906 From: BigGuy ;tag=9fxced76sl 3907 To: LittleGuy ;tag=314159 3908 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3909 CSeq: 1 INVITE 3910 Content-Length: 0 3912 F14 ACK A -> Proxy 1 3914 ACK sip:UserB@biloxi.com SIP/2.0 3915 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 3916 Max-Forwards: 70 3917 From: BigGuy ;tag=9fxced76sl 3918 To: LittleGuy ;tag=314159 3919 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 3920 CSeq: 1 ACK 3921 Content-Length: 0 3923 4 SIP to Gateway Dialing 3925 In the following scenarios, User A (BigGuy sip:UserA@atlanta.com) is 3926 a SIP phone or other SIP-enabled device. User B is reachable via the 3927 PSTN at global telephone number +19725552222. User A places a call 3928 to User B through a Proxy Server Proxy 1 and a Network Gateway. In 3929 other scenarios, User A places calls to User C, who is served via a 3930 PBX (Private Branch Exchange) and is identified by a private 3931 extension 444-3333, or global number +1-918-555-3333. Note that User 3932 A uses his/her global telephone number +1-314-555-1111 in the From 3933 header in the INVITE messages. This then gives the Gateway the 3934 option of using this header to populate the calling party 3935 identification field in subsequent signaling (CgPN in ISUP). Left 3936 open is the issue of how the Gateway can determine the accuracy of 3937 the telephone number, necessary before passing it as a valid CgPN in 3938 the PSTN. 3940 There is a major difference in the call flows in this section. In- 3941 band alerting (ringing tone, busy tone, recorded announcements, etc.) 3942 may be present in the PSTN speech path after the receipt of the SS7 3943 Address Complete Message (ACM) which maps to the SIP 180 Ringing 3944 response. To establish a two way media path prior to the call being 3945 answered (200 OK), a 183 Session Progress response is sent instead of 3946 a 180 Ringing. Note that since this 183 response is not sent 3947 reliably, it should be periodically resent by the gateway. The same 3948 SDP in the 183 should also be present in the 200 OK when the call is 3949 answered. 3951 4.1 Success Scenarios 3953 In these scenarios, User A is a SIP phone or other SIP-enabled 3954 device. User A places a call to User B in the PSTN or User C on a 3955 PBX through a Proxy Server and a Gateway. 3957 4.1.1 Successful SIP to ISUP PSTN call 3959 User A Proxy 1 NGW 1 Switch B 3960 | | | | 3961 | INVITE F1 | | | 3962 |--------------->| | | 3963 | 100 F2 | | | 3964 |<---------------| INVITE F3 | | 3965 | |--------------->| | 3966 | | 100 F4 | | 3967 | |<---------------| IAM F5 | 3968 | | |--------------->| 3969 | | | ACM F6 | 3970 | | 183 F7 |<---------------| 3971 | 183 F8 |<---------------| | 3972 |<---------------| | | 3973 | Both Way RTP Media | One Way Voice | 3974 |<===============================>|<===============| 3975 | | | ANM F9 | 3976 | | 200 F10 |<---------------| 3977 | 200 F11 |<---------------| | 3978 |<---------------| | | 3979 | ACK F12 | | | 3980 |--------------->| ACK F13 | | 3981 | |--------------->| | 3982 | Both Way RTP Media | Both Way Voice | 3983 |<===============================>|<==============>| 3984 | BYE F14 | | | 3985 |--------------->| BYE F15 | | 3986 | |--------------->| | 3987 | | 200 F16 | | 3988 | 200 F17 |<---------------| REL F18 | 3989 |<---------------| |--------------->| 3990 | | | RLC F19 | 3991 | | |<---------------| 3992 | | | | 3994 User A dials the globalized E.164 number +19725552222 to reach 3995 User B. Note that A might have only dialed the last 7 digits, or 3996 some other dialing plan. It is assumed that the SIP User Agent 3997 Client converts the digits into a global number and puts them into a 3998 SIP URI. Note that tel URIs could be used instead of SIP URIs. 4000 User A could use either their SIP address (sip:UserA@atlanta.com) or 4001 SIP telephone number (sip:+13145551111@ss1.atlanta.com;user=phone) in 4002 the From header. In this example, the telephone number is included, 4003 and it is shown as being passed as calling party identification 4004 through the Network Gateway (NGW 1) to User B (F5). Note that for 4005 this number to be passed into the SS7 network, it would have to be 4006 somehow verified for accuracy. 4008 In this scenario, User B answers the call then User A disconnects the 4009 call. Signaling between NGW 1 and User B's telephone switch is ANSI 4010 ISUP. For the details of SIP to ISUP mapping, refer to [SIP-ISUP]. 4012 Message Details 4014 F1 INVITE A -> Proxy 1 4016 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 4017 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4018 Max-Forwards: 70 4019 From: BigGuy 4020 ;tag=9fxced76sl 4021 To: LittleGuy 4022 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4023 CSeq: 1 INVITE 4024 Contact: 4025 Proxy-Authorization: Digest username="UserA", realm="atlanta.com", 4026 nonce="dc3a5ab25302aa931904ba7d88fa1cf5", opaque="", 4027 uri="sip:+19725552222@ss1.atlanta.com;user=phone", 4028 response="ccdca50cb091d587421457305d097458c" 4029 Content-Type: application/sdp 4030 Content-Length: 147 4032 v=0 4033 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4034 s=- 4035 c=IN IP4 192.168.100.101 4036 t=0 0 4037 m=audio 49172 RTP/AVP 0 4038 a=rtpmap:0 PCMU/8000 4040 F2 100 Trying Proxy 1 -> User A 4042 SIP/2.0 100 Trying 4043 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4044 ;received=192.168.100.101 4045 From: BigGuy 4046 ;tag=9fxced76sl 4047 To: LittleGuy 4048 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4049 CSeq: 1 INVITE 4050 Content-Length: 0 4052 /* Proxy 1 uses a Location Service function to determine the gateway 4053 for terminating this call. The call is forwarded to NGW 1. Client 4054 for A prepares to receive data on port 49172 from the 4055 network.*/ 4057 F3 INVITE Proxy 1 -> NGW 1 4059 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4060 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4061 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4062 ;received=192.168.100.101 4063 Max-Forwards: 69 4064 Record-Route: 4065 From: BigGuy 4066 ;tag=9fxced76sl 4067 To: LittleGuy 4068 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4069 CSeq: 1 INVITE 4070 Contact: 4071 Content-Type: application/sdp 4072 Content-Length: 147 4074 v=0 4075 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4076 s=- 4077 c=IN IP4 192.168.100.101 4078 t=0 0 4079 m=audio 49172 RTP/AVP 0 4080 a=rtpmap:0 PCMU/8000 4082 F4 100 Trying NGW 1 -> Proxy 1 4084 SIP/2.0 100 Trying 4085 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4086 ;received=192.168.255.111 4087 From: BigGuy 4088 ;tag=9fxced76sl 4089 To: LittleGuy 4090 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4091 CSeq: 1 INVITE 4092 Content-Length: 0 4094 F5 IAM NGW 1 -> User B 4096 IAM 4097 CdPN=972-555-2222,NPI=E.164,NOA=National 4098 CgPN=314-555-1111,NPI=E.164,NOA=National 4100 F6 ACM User B -> NGW 1 4102 ACM 4103 F7 183 Session Progress NGW 1 -> Proxy 1 4105 SIP/2.0 183 Session Progress 4106 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4107 ;received=192.168.255.111 4108 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4109 ;received=192.168.100.101 4110 Record-Route: 4111 From: BigGuy 4112 ;tag=9fxced76sl 4113 To: LittleGuy 4114 ;tag=314159 4115 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4116 CSeq: 1 INVITE 4117 Contact: 4118 Content-Type: application/sdp 4119 Content-Length: 141 4121 v=0 4122 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 4123 s=- 4124 c=IN IP4 192.168.255.101 4125 t=0 0 4126 m=audio 3456 RTP/AVP 0 4127 a=rtpmap:0 PCMU/8000 4129 /* NGW 1 sends PSTN audio (ringing) in the RTP path to A */ 4131 F8 183 Session Progress Proxy 1 -> User A 4133 SIP/2.0 183 Session Progress 4134 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4135 ;received=192.168.100.101 4136 Record-Route: 4137 From: BigGuy 4138 ;tag=9fxced76sl 4139 To: LittleGuy 4140 ;tag=314159 4141 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4142 CSeq: 1 INVITE 4143 Contact: 4144 Content-Type: application/sdp 4145 Content-Length: 141 4147 v=0 4148 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 4149 s=- 4150 c=IN IP4 192.168.255.101 4151 t=0 0 4152 m=audio 3456 RTP/AVP 0 4153 a=rtpmap:0 PCMU/8000 4155 F9 ANM User B -> NGW 1 4157 ANM 4159 F10 200 OK NGW 1 -> Proxy 1 4161 SIP/2.0 200 OK 4162 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4163 ;received=192.168.255.111 4164 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4165 ;received=192.168.100.101 4166 Record-Route: 4167 From: BigGuy 4168 ;tag=9fxced76sl 4169 To: LittleGuy 4170 ;tag=314159 4171 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4172 CSeq: 1 INVITE 4173 Contact: 4174 Content-Type: application/sdp 4175 Content-Length: 141 4177 v=0 4178 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 4179 s=- 4180 c=IN IP4 192.168.255.201 4181 t=0 0 4182 m=audio 3456 RTP/AVP 0 4183 a=rtpmap:0 PCMU/8000 4185 F11 200 OK Proxy 1 -> User A 4187 SIP/2.0 200 OK 4188 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4189 ;received=192.168.100.101 4190 Record-Route: 4191 From: BigGuy 4192 ;tag=9fxced76sl 4193 To: LittleGuy 4194 ;tag=314159 4195 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4196 CSeq: 1 INVITE 4197 Contact: 4198 Content-Type: application/sdp 4199 Content-Length: 141 4201 v=0 4202 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 4203 s=- 4204 c=IN IP4 192.168.255.101 4205 t=0 0 4206 m=audio 3456 RTP/AVP 0 4207 a=rtpmap:0 PCMU/8000 4209 F12 ACK A -> Proxy 1 4211 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4212 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4213 Max-Forwards: 70 4214 Route: 4215 From: BigGuy 4216 ;tag=9fxced76sl 4217 To: LittleGuy 4218 ;tag=314159 4219 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4220 CSeq: 1 ACK 4221 Content-Length: 0 4223 F13 ACK Proxy 1 -> NGW 1 4225 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4226 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4227 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4228 ;received=192.168.100.101 4229 Max-Forwards: 69 4230 From: BigGuy 4231 ;tag=9fxced76sl 4232 To: LittleGuy 4233 ;tag=314159 4234 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4235 CSeq: 1 ACK 4236 Content-Length: 0 4238 /* User A Hangs Up with User B. */ 4240 F14 BYE A -> Proxy 1 4242 BYE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4243 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4244 Max-Forwards: 70 4245 Route: 4246 From: BigGuy 4247 ;tag=9fxced76sl 4248 To: LittleGuy 4249 ;tag=314159 4250 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4251 CSeq: 2 BYE 4252 Content-Length: 0 4254 F15 BYE Proxy 1 -> NGW 1 4256 BYE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4257 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4258 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4259 ;received=192.168.100.101 4260 Max-Forwards: 69 4261 From: BigGuy 4262 ;tag=9fxced76sl 4263 To: LittleGuy 4264 ;tag=314159 4265 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4266 CSeq: 2 BYE 4267 Content-Length: 0 4269 F16 200 OK NGW 1 -> Proxy 1 4271 SIP/2.0 200 OK 4272 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4273 ;received=192.168.255.111 4274 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4275 ;received=192.168.100.101 4276 From: BigGuy 4277 ;tag=9fxced76sl 4278 To: LittleGuy 4279 ;tag=314159 4280 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4281 CSeq: 2 BYE 4282 Content-Length: 0 4284 F17 200 OK Proxy 1 -> A 4286 SIP/2.0 200 OK 4287 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4288 ;received=192.168.100.101 4289 From: BigGuy 4290 ;tag=9fxced76sl 4291 To: LittleGuy 4292 ;tag=314159 4293 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4294 CSeq: 2 BYE 4295 Content-Length: 0 4297 F18 REL NGW 1 -> B 4298 REL 4299 CauseCode=16 Normal 4301 F19 RLC B -> NGW 1 4303 RLC 4305 4.1.2 Successful SIP to ISDN PBX call 4307 User A Proxy 1 GW 1 PBX C 4308 | | | | 4309 | INVITE F1 | | | 4310 |--------------->| | | 4311 | 100 F2 | | | 4312 |<---------------| INVITE F3 | | 4313 | |--------------->| | 4314 | | 100 F4 | | 4315 | |<---------------| SETUP F5 | 4316 | | |--------------->| 4317 | | | CALL PROC F6 | 4318 | | |<---------------| 4319 | | | PROGress F7 | 4320 | | 180 F8 |<---------------| 4321 | 180 F9 |<---------------| | 4322 |<---------------| | | 4323 | | | One Way Voice | 4324 | | |<===============| 4325 | | | CONNect F10 | 4326 | | |<---------------| 4327 | | | CONNect ACK F11| 4328 | | 200 F12 |--------------->| 4329 | 200 F13 |<---------------| | 4330 |<---------------| | | 4331 | ACK F14 | | | 4332 |--------------->| ACK F15 | | 4333 | |--------------->| | 4334 | Both Way RTP Media | Both Way Voice | 4335 |<===============================>|<==============>| 4336 | BYE F16 | | | 4337 |--------------->| BYE F17 | | 4338 | |--------------->| | 4339 | | 200 F18 | | 4340 | 200 F19 |<---------------| DISConnect F20 | 4341 |<---------------| |--------------->| 4342 | | | RELease F21 | 4343 | | |<---------------| 4344 | | | RELease COM F22| 4345 | | |--------------->| 4346 | | | | 4348 User A is a SIP device while User C is connected via a 4349 Gateway (GW 1) to a PBX. The PBX connection is via a ISDN trunk 4350 group. User A dials User C's telephone number (918-555-3333) which 4351 is globalized and put into a SIP URI. 4353 The host portion of the Request-URI in the INVITE F3 is used to 4354 identify the context (customer, trunk group, or line) in which the 4355 private number 444-3333 is valid. Otherwise, this INVITE message 4356 could get forwarded by GW 1 and the context of the digits could 4357 become lost and the call unroutable. 4359 Proxy 1 looks up the telephone number and locates the gateway that 4360 serves User C. User C is identified by its extension 4361 (444-3333) in the Request-URI sent to GW 1. 4363 Message Details 4365 F1 INVITE A -> Proxy 1 4367 INVITE sip:+19185553333@ss1.atlanta.com;user=phone SIP/2.0 4368 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4369 Max-Forwards: 70 4370 From: BigGuy 4371 ;tag=9fxced76sl 4372 To: OtherGuy 4373 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4374 CSeq: 2 INVITE 4375 Contact: 4376 Proxy-Authorization: Digest username="UserA", 4377 realm="atlanta.com", nonce="qo0dc3a5ab22aa931904badfa1cf5j9h", 4378 opaque="", uri="sip:+19185553333@ss1.atlanta.com;user=phone", 4379 response="6c792f5c9fa360358b93c7fb826bf550" 4380 Content-Type: application/sdp 4381 Content-Length: 147 4383 v=0 4384 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4385 s=- 4386 c=IN IP4 192.168.100.101 4387 t=0 0 4388 m=audio 49172 RTP/AVP 0 4389 a=rtpmap:0 PCMU/8000 4391 F2 100 Trying Proxy 1 -> User A 4393 SIP/2.0 100 Trying 4394 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4395 ;received=192.168.100.101 4396 From: BigGuy 4397 ;tag=9fxced76sl 4398 To: OtherGuy 4399 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4400 CSeq: 2 INVITE 4401 Content-Length: 0 4403 F3 INVITE Proxy 1 -> GW 1 4404 INVITE sip:4443333@gw1.atlanta.com SIP/2.0 4405 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4406 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4407 ;received=192.168.100.101 4408 Max-Forwards: 69 4409 Record-Route: 4410 From: BigGuy 4411 ;tag=9fxced76sl 4412 To: OtherGuy 4413 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4414 CSeq: 2 INVITE 4415 Contact: 4416 Content-Type: application/sdp 4417 Content-Length: 147 4419 v=0 4420 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4421 s=- 4422 c=IN IP4 192.168.100.101 4423 t=0 0 4424 m=audio 49172 RTP/AVP 0 4425 a=rtpmap:0 PCMU/8000 4427 F4 100 Trying GW -> Proxy 1 4429 SIP/2.0 100 Trying 4430 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4431 ;received=192.168.255.111 4432 From: BigGuy 4433 ;tag=9fxced76sl 4434 To: OtherGuy 4435 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4436 CSeq: 2 INVITE 4437 Content-Length: 0 4439 F5 SETUP GW 1 -> User C 4441 Protocol discriminator=Q.931 4442 Message type=SETUP 4443 Bearer capability: Information transfer capability=0 (Speech) or 16 4444 (3.1 kHz audio) 4445 Channel identification=Preferred or exclusive B-channel 4446 Progress indicator=1 (Call is not end-to-end ISDN;further call 4447 progress information may be available inband) 4448 Called party number: 4449 Type of number unknown 4450 Digits=444-3333 4452 F6 CALL PROCeeding User C -> GW 1 4453 Protocol discriminator=Q.931 4454 Message type=CALL PROC 4455 Channel identification=Exclusive B-channel 4457 F7 PROGress User C -> GW 1 4459 Protocol discriminator=Q.931 4460 Message type=PROG 4461 Progress indicator=1 (Call is not end-to-end ISDN;further call 4462 progress information may be available inband) 4464 F8 180 Ringing GW 1 -> Proxy 1 4466 SIP/2.0 180 Ringing 4467 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4468 ;received=192.168.255.111 4469 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4470 ;received=192.168.100.101 4471 Record-Route: 4472 From: BigGuy 4473 ;tag=9fxced76sl 4474 To: OtherGuy 4475 ;tag=314159 4476 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4477 CSeq: 2 INVITE 4478 Contact: 4479 Content-Length: 0 4481 F9 180 Ringing Proxy 1 -> User A 4483 SIP/2.0 180 Ringing 4484 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4485 ;received=192.168.100.101 4486 Record-Route: 4487 From: BigGuy 4488 ;tag=9fxced76sl 4489 To: OtherGuy 4490 ;tag=314159 4491 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4492 CSeq: 2 INVITE 4493 Contact: 4494 Content-Length: 0 4496 F10 CONNect User C -> GW 1 4498 Protocol discriminator=Q.931 4499 Message type=CONN 4500 F11 CONNect ACK GW 1 -> User C 4502 Protocol discriminator=Q.931 4503 Message type=CONN ACK 4505 F12 200 OK GW 1 -> Proxy 1 4507 SIP/2.0 200 OK 4508 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4509 ;received=192.168.255.111 4510 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4511 ;received=192.168.100.101 4512 Record-Route: 4513 From: BigGuy 4514 ;tag=9fxced76sl 4515 To: OtherGuy 4516 ;tag=314159 4517 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4518 CSeq: 2 INVITE 4519 Contact: 4520 Content-Type: application/sdp 4521 Content-Length: 140 4523 v=0 4524 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 4525 s=- 4526 c=IN IP4 192.168.255.201 4527 t=0 0 4528 m=audio 3456 RTP/AVP 0 4529 a=rtpmap:0 PCMU/8000 4531 F13 200 OK Proxy 1 -> User A 4533 SIP/2.0 200 OK 4534 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4535 ;received=192.168.100.101 4536 Record-Route: 4537 From: BigGuy 4538 ;tag=9fxced76sl 4539 To: OtherGuy ;tag=314159 4540 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4541 CSeq: 2 INVITE 4542 Contact: 4543 Content-Type: application/sdp 4544 Content-Length: 140 4546 v=0 4547 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 4548 s=- 4549 c=IN IP4 192.168.255.201 4550 t=0 0 4551 m=audio 3456 RTP/AVP 0 4552 a=rtpmap:0 PCMU/8000 4554 F14 ACK A -> Proxy 1 4556 ACK sip:4443333@gw1.atlanta.com SIP/2.0 4557 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4558 Max-Forwards: 70 4559 Route: 4560 From: BigGuy 4561 ;tag=9fxced76sl 4562 To: OtherGuy 4563 ;tag=314159 4564 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4565 CSeq: 2 ACK 4566 Content-Length: 0 4568 F15 ACK Proxy 1 -> GW 1 4570 ACK sip:4443333@gw1.atlanta.com SIP/2.0 4571 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4572 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4573 ;received=192.168.100.101 4574 Max-Forwards: 69 4575 From: BigGuy 4576 ;tag=9fxced76sl 4577 To: OtherGuy 4578 ;tag=314159 4579 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4580 CSeq: 2 ACK 4581 Content-Length: 0 4583 /* User A Hangs Up with User B. */ 4585 F16 BYE A -> Proxy 1 4587 BYE sip:4443333@gw1.atlanta.com SIP/2.0 4588 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4589 Max-Forwards: 70 4590 Route: 4591 From: BigGuy 4592 ;tag=9fxced76sl 4593 To: OtherGuy 4594 ;tag=314159 4595 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4596 CSeq: 3 BYE 4597 Content-Length: 0 4599 F17 BYE Proxy 1 -> GW 1 4601 BYE sip:4443333@gw1.atlanta.com SIP/2.0 4602 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4603 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4604 ;received=192.168.100.101 4605 Max-Forwards: 69 4606 From: BigGuy 4607 ;tag=9fxced76sl 4608 To: OtherGuy 4609 ;tag=314159 4610 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4611 CSeq: 3 BYE 4612 Content-Length: 0 4614 F18 200 OK GW 1 -> Proxy 1 4616 SIP/2.0 200 OK 4617 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4618 ;received=192.168.255.111 4619 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4620 ;received=192.168.100.101 4621 From: BigGuy 4622 ;tag=9fxced76sl 4623 To: OtherGuy 4624 ;tag=314159 4625 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4626 CSeq: 3 BYE 4627 Content-Length: 0 4629 F19 200 OK Proxy 1 -> A 4631 SIP/2.0 200 OK 4632 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4633 ;received=192.168.100.101 4634 From: BigGuy 4635 ;tag=9fxced76sl 4636 To: OtherGuy 4637 ;tag=314159 4638 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4639 CSeq: 3 BYE 4640 Content-Length: 0 4642 F20 DISConnect GW 1 -> User C 4644 Protocol discriminator=Q.931 4645 Message type=DISC 4646 Cause=16 (Normal clearing) 4648 F21 RELease User C -> GW 1 4650 Protocol discriminator=Q.931 4651 Message type=REL 4653 F22 RELease COMplete GW 1 -> User C 4655 Protocol discriminator=Q.931 4656 Message type=REL COM 4658 4.1.3 Successful SIP to ISUP PSTN call with overflow 4660 User A Proxy 1 NGW 1 NGW 2 Switch B 4661 | | | | | 4662 | INVITE F1 | | | | 4663 |------------->| | | | 4664 | | INVITE F2 | | | 4665 | 100 F3 |------------->| | | 4666 |<-------------| 503 F4 | | | 4667 | |<-------------| | | 4668 | | ACK F5 | | | 4669 | |------------->| | | 4670 | | INVITE F6 | | 4671 | |---------------------------->| IAM F7 | 4672 | | |------------->| 4673 | | | ACM F8 | 4674 | | 183 F9 |<-------------| 4675 | 183 F10 |<----------------------------| | 4676 |<-------------| | | 4677 | Two Way RTP Media | One Way Voice| 4678 |<==========================================>|<=============| 4679 | | | ANM F11 | 4680 | | 200 F12 |<-------------| 4681 | 200 F13 |<----------------------------| | 4682 |<-------------| | | 4683 | ACK F14 | | | 4684 |------------->| ACK F15 | | 4685 | |---------------------------->| | 4686 | Both Way RTP Media |Both Way Voice| 4687 |<==========================================>|<============>| 4688 | BYE F16 | | | 4689 |------------->| BYE F17 | | 4690 | |---------------------------->| | 4691 | | 200 F18 | | 4692 | 200 F19 |<----------------------------| REL F20 | 4693 |<-------------| |------------->| 4694 | | | RLC F21 | 4695 | | |<-------------| 4696 | | | | 4698 User A calls User B through Proxy 1. Proxy 1 tries to route to a 4699 Network Gateway NGW 1. NGW 1 is not available and responds with a 503 4700 Service Unavailable (F4). The call is then routed to Network Gateway 4701 NGW 2. User B answers the call. The call is terminated when User A 4702 disconnects the call. NGW 2 and User B's telephone switch use ANSI 4703 ISUP signaling. 4705 Message Details 4707 F1 INVITE A -> Proxy 1 4708 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 4709 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4710 Max-Forwards: 70 4711 From: BigGuy 4712 ;tag=9fxced76sl 4713 To: LittleGuy 4714 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4715 CSeq: 1 INVITE 4716 Contact: 4717 Proxy-Authorization: Digest username="UserA", 4718 realm="atlanta.com", nonce="b59311c3ba05b401cf80b2a2c5ac51b0", 4719 opaque="", uri="sip:+19725552222@ss1.atlanta.com;user=phone", 4720 response="ba6ab44923fa2614b28e3e3957789ab0" 4721 Content-Type: application/sdp 4722 Content-Length: 147 4724 v=0 4725 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4726 s=- 4727 c=IN IP4 192.168.100.101 4728 t=0 0 4729 m=audio 49172 RTP/AVP 0 4730 a=rtpmap:0 PCMU/8000 4732 /* Proxy 1 uses a Location Service function to determine where B is 4733 located. Proxy 1 receives a primary route NGW 1 and a secondary 4734 route NGW 2. NGW 1 is tried first */ 4736 F2 INVITE Proxy 1 -> NGW 1 4738 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4739 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4740 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4741 ;received=192.168.100.101 4742 Max-Forwards: 69 4743 Record-Route: 4744 From: BigGuy 4745 ;tag=9fxced76sl 4746 To: LittleGuy 4747 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4748 CSeq: 1 INVITE 4749 Contact: 4750 Content-Type: application/sdp 4751 Content-Length: 147 4753 v=0 4754 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4755 s=- 4756 c=IN IP4 192.168.100.101 4757 t=0 0 4758 m=audio 49172 RTP/AVP 0 4759 a=rtpmap:0 PCMU/8000 4761 F3 100 Trying Proxy 1 -> User A 4763 SIP/2.0 100 Trying 4764 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4765 ;received=192.168.255.111 4766 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4767 ;received=192.168.100.101 4768 From: BigGuy 4769 ;tag=9fxced76sl 4770 To: LittleGuy 4771 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4772 CSeq: 1 INVITE 4773 Content-Length: 0 4775 F4 503 Service Unavailable NGW 1 -> Proxy 1 4777 SIP/2.0 503 Service Unavailable 4778 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4779 ;received=192.168.255.111 4780 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4781 ;received=192.168.100.101 4782 Record-Route: 4783 From: BigGuy 4784 ;tag=9fxced76sl 4785 To: LittleGuy 4786 ;tag=123456789 4787 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4788 CSeq: 1 INVITE 4789 Content-Length: 0 4791 F5 ACK Proxy 1 -> NGW 1 4793 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 4794 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 4795 Max-Forwards: 70 4796 From: BigGuy 4797 ;tag=9fxced76sl 4798 To: LittleGuy ;user=phone> 4799 ;tag=123456789 4800 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4801 CSeq: 1 ACK 4802 Content-Length: 0 4804 /* Proxy 1 now tries secondary route to NGW 2 */ 4806 F6 INVITE Proxy 1 -> NGW 2 4807 INVITE sip:+19725552222@ngw2.atlanta.com;user=phone SIP/2.0 4808 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 4809 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4810 ;received=192.168.100.101 4811 Max-Forwards: 69 4812 Record-Route: 4813 From: BigGuy 4814 ;tag=9fxced76sl 4815 To: LittleGuy 4816 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4817 CSeq: 1 INVITE 4818 Contact: 4819 Content-Type: application/sdp 4820 Content-Length: 147 4822 v=0 4823 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 4824 s=- 4825 c=IN IP4 192.168.100.101 4826 t=0 0 4827 m=audio 49172 RTP/AVP 0 4828 a=rtpmap:0 PCMU/8000 4830 F7 IAM NGW 2 -> User B 4832 IAM 4833 CdPN=972-555-2222,NPI=E.164,NOA=National 4834 CgPN=314-555-1111,NPI=E.164,NOA=National 4836 F8 ACM User B -> NGW 2 4838 ACM 4840 F9 183 Session Progress NGW 2 -> Proxy 1 4842 SIP/2.0 183 Session Progress 4843 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 4844 ;received=192.168.255.111 4845 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4846 ;received=192.168.100.101 4847 Record-Route: 4848 From: BigGuy 4849 ;tag=9fxced76sl 4850 To: LittleGuy 4851 ;tag=314159 4852 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4853 CSeq: 1 INVITE 4854 Contact: 4855 Content-Type: application/sdp 4856 Content-Length: 141 4858 v=0 4859 o=GW 2890844527 2890844527 IN IP4 ngw2.atlanta.com 4860 s=- 4861 c=IN IP4 192.168.255.102 4862 t=0 0 4863 m=audio 3456 RTP/AVP 0 4864 a=rtpmap:0 PCMU/8000 4866 /* RTP packets are sent by GW to A for audio (e.g. ring tone) */ 4868 F10 183 Session Progress Proxy 1 -> User A 4870 SIP/2.0 183 Session Progress 4871 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4872 ;received=192.168.100.101 4873 Record-Route: 4874 From: BigGuy 4875 ;tag=9fxced76sl 4876 To: LittleGuy 4877 ;tag=314159 4878 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4879 CSeq: 1 INVITE 4880 Contact: 4881 Content-Type: application/sdp 4882 Content-Length: 141 4884 v=0 4885 o=GW 2890844527 2890844527 IN IP4 ngw2.atlanta.com 4886 s=- 4887 c=IN IP4 192.168.255.102 4888 t=0 0 4889 m=audio 3456 RTP/AVP 0 4890 a=rtpmap:0 PCMU/8000 4892 F11 ANM User B -> NGW 2 4894 ANM 4896 F12 200 OK NGW 2 -> Proxy 1 4898 SIP/2.0 200 OK 4899 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 4900 ;received=192.168.255.111 4901 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4902 ;received=192.168.100.101 4903 Record-Route: 4904 From: BigGuy 4905 ;tag=9fxced76sl 4906 To: LittleGuy 4907 ;tag=314159 4908 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4909 CSeq: 1 INVITE 4910 Contact: 4911 Content-Type: application/sdp 4912 Content-Length: 141 4914 v=0 4915 o=GW 2890844527 2890844527 IN IP4 ngw2.atlanta.com 4916 s=- 4917 c=IN IP4 192.168.255.102 4918 t=0 0 4919 m=audio 3456 RTP/AVP 0 4920 a=rtpmap:0 PCMU/8000 4922 F13 200 OK Proxy 1 -> User A 4924 SIP/2.0 200 OK 4925 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4926 ;received=192.168.100.101 4927 Record-Route: 4928 From: BigGuy 4929 ;tag=9fxced76sl 4930 To: LittleGuy 4931 ;tag=314159 4932 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4933 CSeq: 1 INVITE 4934 Contact: 4935 Content-Type: application/sdp 4936 Content-Length: 141 4938 v=0 4939 o=GW 2890844527 2890844527 IN IP4 ngw2.atlanta.com 4940 s=- 4941 c=IN IP4 192.168.255.102 4942 t=0 0 4943 m=audio 3456 RTP/AVP 0 4944 a=rtpmap:0 PCMU/8000 4946 F14 ACK A -> Proxy 1 4948 ACK sip:+19725552222@ngw2.atlanta.com;user=phone SIP/2.0 4949 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4950 Max-Forwards: 70 4951 Route: 4952 From: BigGuy 4953 ;tag=9fxced76sl 4955 To: LittleGuy 4956 ;tag=314159 4957 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4958 CSeq: 1 ACK 4959 Content-Length: 0 4961 F15 ACK Proxy 1 -> NGW 2 4963 ACK sip:+19725552222@ngw2.atlanta.com;user=phone SIP/2.0 4964 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 4965 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4966 ;received=192.168.100.101 4967 Max-Forwards: 69 4968 From: BigGuy 4969 ;tag=9fxced76sl 4970 To: LittleGuy 4971 ;tag=314159 4972 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4973 CSeq: 1 ACK 4974 Content-Length: 0 4976 /* RTP streams are established between A and B(via the GW) */ 4978 /* User A Hangs Up with User B. */ 4980 F16 BYE A -> Proxy 1 4982 BYE sip:+19725552222@ngw2.atlanta.com;user=phone SIP/2.0 4983 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4984 Max-Forwards: 70 4985 Route: 4986 From: BigGuy 4987 ;tag=9fxced76sl 4988 To: LittleGuy 4989 ;tag=314159 4990 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 4991 CSeq: 2 BYE 4992 Content-Length: 0 4994 F17 BYE Proxy 1 -> NGW 2 4996 BYE sip:+19725552222@ngw2.atlanta.com;user=phone SIP/2.0 4997 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 4998 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 4999 ;received=192.168.100.101 5000 Max-Forwards: 69 5001 From: BigGuy 5002 ;tag=9fxced76sl 5003 To: LittleGuy 5004 ;tag=314159 5005 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5006 CSeq: 2 BYE 5007 Content-Length: 0 5009 F18 200 OK NGW 2 -> Proxy 1 5011 SIP/2.0 200 OK 5012 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 5013 ;received=192.168.255.111 5014 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5015 ;received=192.168.100.101 5016 From: BigGuy 5017 ;tag=9fxced76sl 5018 To: LittleGuy 5019 ;tag=314159 5020 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5021 CSeq: 2 BYE 5022 Content-Length: 0 5024 F19 200 OK Proxy 1 -> User A 5026 SIP/2.0 200 OK 5027 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5028 ;received=192.168.100.101 5029 From: BigGuy 5030 ;tag=9fxced76sl 5031 To: LittleGuy 5032 ;tag=314159 5033 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5034 CSeq: 2 BYE 5035 Content-Length: 0 5037 F20 REL NGW 2 -> B 5039 REL 5040 CauseCode=16 Normal 5042 F21 RLC B -> NGW 2 5044 RLC 5046 4.2 Failure Scenarios 5048 In these failure scenarios, the call does not complete. In most 5049 cases, however, a media stream is still setup. This is due to the 5050 fact that most failures in dialing to the PSTN result in in-band 5051 tones (busy, reorder tones or announcements - "The number you have 5052 dialed has changed. The new number is..."). The 183 Session 5053 Progress response containing SDP media information is used to 5054 setup this early media path so that the caller User A knows the final 5055 disposition of the call. 5057 The media stream is either terminated by the caller after the tone or 5058 announcement has been heard and understood, or by the Gateway after a 5059 timer expires. 5061 In other failure scenarios, a SS7 Release with Cause Code is mapped 5062 to a SIP response. In these scenarios, the early media path is not 5063 used, but the actual failure code is conveyed to the caller by the 5064 SIP User Agent Client. 5066 4.2.1 Unsuccessful SIP to PSTN call: Treatment from PSTN 5068 User A Proxy 1 NGW 1 User B 5069 | | | | 5070 | INVITE F1 | | | 5071 |--------------->| | | 5072 | 100 F2 | | | 5073 |<---------------| INVITE F3 | | 5074 | |--------------->| | 5075 | | 100 F4 | | 5076 | |<---------------| IAM F5 | 5077 | | |--------------->| 5078 | | | ACM F6 | 5079 | | 183 F7 |<---------------| 5080 | 183 F8 |<---------------| | 5081 |<---------------| | | 5082 | Two Way RTP Media | One Way Voice | 5083 |<===============================>|<===============| 5084 | Treatment Applied | 5085 |<=================================================| 5086 | CANCEL F9 | | | 5087 |--------------->| | | 5088 | 200 F10 | | | 5089 |<---------------| CANCEL F11 | | 5090 | |--------------->| | 5091 | | 200 F12 | | 5092 | |<---------------| REL F13 | 5093 | | |--------------->| 5094 | | | RLC F14 | 5095 | | 487 F15 |<---------------| 5096 | |<---------------| | 5097 | | ACK F16 | | 5098 | 487 F17 |--------------->| | 5099 |<---------------| | | 5100 | ACK F18 | | | 5101 |--------------->| | | 5102 | | | | 5104 User A calls User B in the PSTN through a proxy server Proxy 1 and a 5105 Network Gateway NGW 1. The call is rejected by the PSTN with an in- 5106 band treatment (tone or recording) played. User A hears the 5107 treatment and then hangs up, which results in a CANCEL (F9) being 5108 sent to terminate the call. (A BYE is not sent since no final 5109 response was ever received by User A.) 5111 Message Details 5113 F1 INVITE A -> Proxy 1 5115 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5116 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5117 Max-Forwards: 70 5118 From: BigGuy 5119 ;tag=9fxced76sl 5120 To: LittleGuy 5121 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5122 CSeq: 1 INVITE 5123 Contact: 5124 Proxy-Authorization: Digest username="UserA", 5125 realm="atlanta.com", nonce="01cf8311c3b0b2a2c5ac51bb59a05b40", 5126 opaque="", uri="sip:+19725552222@ss1.atlanta.com;user=phone", 5127 response="e178fbe430e6680a1690261af8831f40" 5128 Content-Type: application/sdp 5129 Content-Length: 147 5131 v=0 5132 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5133 s=- 5134 c=IN IP4 192.168.100.101 5135 t=0 0 5136 m=audio 49172 RTP/AVP 0 5137 a=rtpmap:0 PCMU/8000 5139 F2 100 Trying Proxy 1 -> A 5141 SIP/2.0 100 Trying 5142 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5143 ;received=192.168.100.101 5144 From: BigGuy 5145 ;tag=9fxced76sl 5146 To: LittleGuy 5147 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5148 CSeq: 1 INVITE 5149 Content-Length: 0 5151 /* Proxy 1 uses a Location Service function to determine where B is 5152 located. Based upon location analysis the call is forwarded to NGW 5153 1. Client for A prepares to receive data on port 49172 from the 5154 network. */ 5156 F3 INVITE Proxy 1 -> NGW 1 5158 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 5159 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5160 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5161 ;received=192.168.100.101 5162 Max-Forwards: 69 5163 Record-Route: 5164 From: BigGuy 5165 ;tag=9fxced76sl 5167 To: LittleGuy 5168 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5169 CSeq: 1 INVITE 5170 Contact: 5171 Content-Type: application/sdp 5172 Content-Length: 147 5174 v=0 5175 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5176 s=- 5177 c=IN IP4 192.168.100.101 5178 t=0 0 5179 m=audio 49172 RTP/AVP 0 5180 a=rtpmap:0 PCMU/8000 5182 F4 100 Trying NGW 1 -> Proxy 1 5184 SIP/2.0 100 Trying 5185 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5186 ;received=192.168.255.111 5187 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5188 ;received=192.168.100.101 5189 From: BigGuy 5190 ;tag=9fxced76sl 5191 To: LittleGuy 5192 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5193 CSeq: 1 INVITE 5194 Content-Length: 0 5196 F5 IAM NGW 1 -> User B 5198 IAM 5199 CdPN=972-555-2222,NPI=E.164,NOA=National 5200 CgPN=314-555-1111,NPI=E.164,NOA=National 5202 F6 ACM User B -> NGW 1 5204 ACM 5206 F7 183 Session Progress NGW 1 -> Proxy 1 5208 SIP/2.0 183 Session Progress 5209 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5210 ;received=192.168.255.111 5211 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5212 ;received=192.168.100.101 5213 Record-Route: 5214 From: BigGuy 5215 ;tag=9fxced76sl 5216 To: LittleGuy 5217 ;tag=314159 5218 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5219 CSeq: 1 INVITE 5220 Contact: 5221 Content-Type: application/sdp 5222 Content-Length: 141 5224 v=0 5225 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5226 s=- 5227 c=IN IP4 192.168.255.101 5228 t=0 0 5229 m=audio 3456 RTP/AVP 0 5230 a=rtpmap:0 PCMU/8000 5232 F8 183 Session Progress Proxy 1 -> User A 5234 SIP/2.0 183 Session Progress 5235 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5236 ;received=192.168.100.101 5237 Record-Route: 5238 From: BigGuy 5239 ;tag=9fxced76sl 5240 To: LittleGuy 5241 ;tag=314159 5242 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5243 CSeq: 1 INVITE 5244 Contact: 5245 Content-Type: application/sdp 5246 Content-Length: 141 5248 v=0 5249 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5250 s=- 5251 c=IN IP4 192.168.255.101 5252 t=0 0 5253 m=audio 3456 RTP/AVP 0 5254 a=rtpmap:0 PCMU/8000 5256 /* Caller hears the recorded announcement, then hangs up */ 5258 F9 CANCEL A -> Proxy 1 5260 CANCEL sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5261 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5262 Max-Forwards: 70 5263 From: BigGuy 5264 ;tag=9fxced76sl 5266 To: LittleGuy 5267 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5268 CSeq: 1 CANCEL 5269 Content-Length: 0 5271 F10 200 OK Proxy 1 -> A 5273 SIP/2.0 200 OK 5274 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5275 ;received=192.168.100.101 5276 From: BigGuy 5277 ;tag=9fxced76sl 5278 To: LittleGuy 5279 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5280 CSeq: 1 CANCEL 5281 Content-Length: 0 5283 F11 CANCEL Proxy 1 -> NGW 1 5285 CANCEL sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 5286 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5287 Max-Forwards: 70 5288 From: BigGuy 5289 ;tag=9fxced76sl 5290 To: LittleGuy 5291 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5292 CSeq: 1 CANCEL 5293 Content-Length: 0 5295 F12 200 OK NGW 1 -> Proxy 1 5297 SIP/2.0 200 OK 5298 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5299 ;received=192.168.255.111 5300 From: BigGuy 5301 ;tag=9fxced76sl 5302 To: LittleGuy 5303 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5304 CSeq: 1 CANCEL 5305 Content-Length: 0 5307 F13 REL NGW 1 -> B 5309 REL 5310 CauseCode=18 No user responding 5312 F14 RLC B -> NGW 1 5313 RLC 5315 F15 487 Request Terminated NGW 1 -> Proxy 1 5317 SIP/2.0 487 Request Terminated 5318 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5319 ;received=192.168.255.111 5320 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5321 ;received=192.168.100.101 5322 From: BigGuy 5323 ;tag=9fxced76sl 5324 To: LittleGuy 5325 ;tag=314159 5326 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5327 CSeq: 1 INVITE 5328 Content-Length: 0 5330 F16 ACK Proxy 1 -> NGW 1 5332 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 5333 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5334 Max-Forwards: 70 5335 From: BigGuy 5336 ;tag=9fxced76sl 5337 To: LittleGuy 5338 ;tag=314159 5339 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5340 CSeq: 1 ACK 5341 Content-Length: 0 5343 F17 487 Request Terminated Proxy 1 -> A 5345 SIP/2.0 487 Request Terminated 5346 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5347 ;received=192.168.100.101 5348 From: BigGuy 5349 ;tag=9fxced76sl 5350 To: LittleGuy 5351 ;tag=314159 5352 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5353 CSeq: 1 INVITE 5354 Content-Length: 0 5356 F18 ACK A -> Proxy 1 5358 ACK sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5359 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5360 Max-Forwards: 70 5361 From: BigGuy 5362 ;tag=9fxced76sl 5363 To: LittleGuy 5364 ;tag=314159 5365 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5366 CSeq: 1 ACK 5367 Content-Length: 0 5369 4.2.2 Unsuccessful SIP to PSTN: REL w/Cause from PSTN 5371 User A Proxy 1 NGW 1 Switch B 5372 | | | | 5373 | INVITE F1 | | | 5374 |--------------->| | | 5375 | 100 F2 | | | 5376 |<---------------| INVITE F3 | | 5377 | |--------------->| | 5378 | | 100 F4 | | 5379 | |<---------------| IAM F5 | 5380 | | |--------------->| 5381 | | | REL(1) F6 | 5382 | | |<---------------| 5383 | | | RLC F7 | 5384 | | 404 F8 |--------------->| 5385 | |<---------------| | 5386 | | ACK F9 | | 5387 | |--------------->| | 5388 | 404 F10 | | | 5389 |<---------------| | | 5390 | ACK F11 | | | 5391 |--------------->| | | 5392 | | | | 5394 User A calls PSTN User B through a Proxy Server Proxy 1 and a Network 5395 Gateway NGW 1. The call is rejected by the PSTN with a 5396 ANSI ISUP Release message REL containing a specific Cause code. 5397 This cause value (1) is mapped by the Gateway to a SIP 404 Address 5398 Incomplete response which is proxied back to User A. For more 5399 details of ISUP cause value to SIP responses refer to [SIP-ISUP]. 5401 Message Details 5403 F1 INVITE A -> Proxy 1 5405 INVITE sip:+44-1234@ss1.atlanta.com;user=phone SIP/2.0 5406 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5407 Max-Forwards: 70 5408 From: BigGuy 5409 ;tag=9fxced76sl 5410 To: LittleGuy 5411 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5412 CSeq: 1 INVITE 5413 Contact: 5414 Proxy-Authorization: Digest username="UserA", 5415 realm="atlanta.com", nonce="j1c3b0b01cf832da2c5ac51bb59a05b40", 5416 opaque="", uri="sip:+44-1234@ss1.atlanta.com;user=phone", 5417 response="a451358d46b55512863efe1dccaa2f42" 5418 Content-Type: application/sdp 5419 Content-Length: 147 5421 v=0 5422 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5423 s=- 5424 c=IN IP4 192.168.100.101 5425 t=0 0 5426 m=audio 49172 RTP/AVP 0 5427 a=rtpmap:0 PCMU/8000 5429 F2 100 Trying Proxy 1 -> A 5431 SIP/2.0 100 Trying 5432 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5433 ;received=192.168.100.101 5434 From: BigGuy 5435 ;tag=9fxced76sl 5436 To: LittleGuy 5437 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5438 CSeq: 1 INVITE 5439 Content-Length: 0 5441 /* Proxy 1 uses a Location Service function to determine where B is 5442 located. Based upon location analysis the call is forwarded to NGW1. 5443 Client for A prepares to receive data on port 49172 from the network. 5444 */ 5446 F3 INVITE Proxy 1 -> NGW 1 5448 INVITE sip:+44-1234@ngw1.atlanta.com;user=phone SIP/2.0 5449 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5450 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5451 ;received=192.168.100.101 5452 Max-Forwards: 69 5453 Record-Route: 5454 From: BigGuy 5455 ;tag=9fxced76sl 5456 To: LittleGuy 5457 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5458 CSeq: 1 INVITE 5459 Contact: 5460 Content-Type: application/sdp 5461 Content-Length: 147 5463 v=0 5464 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5465 s=- 5466 c=IN IP4 192.168.100.101 5467 t=0 0 5468 m=audio 49172 RTP/AVP 0 5469 a=rtpmap:0 PCMU/8000 5471 F4 100 Trying NGW 1 -> Proxy 1 5473 SIP/2.0 100 Trying 5474 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5475 ;received=192.168.255.111 5476 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5477 ;received=192.168.100.101 5478 From: BigGuy 5479 ;tag=9fxced76sl 5480 To: LittleGuy 5481 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5482 CSeq: 1 INVITE 5483 Content-Length: 0 5485 F5 IAM NGW 1 -> User B 5487 IAM 5488 CdPN=44-1234,NPI=E.164,NOA=International 5489 CgPN=314-555-1111,NPI=E.164,NOA=National 5491 F6 REL User B -> NGW 1 5493 REL 5494 CauseValue=1 Unallocated number 5496 F7 RLC NGW 1 -> User B 5498 RLC 5500 /* Network Gateway maps CauseValue=1 to the SIP message 404 Not 5501 Found */ 5503 F8 404 Not Found NGW 1 -> Proxy 1 5505 SIP/2.0 404 Not Found 5506 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5507 ;received=192.168.255.111 5508 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5509 ;received=192.168.100.101 5510 From: BigGuy 5511 ;tag=9fxced76sl 5512 To: LittleGuy ;tag=314159 5513 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5514 CSeq: 1 INVITE 5515 Error-Info: 5516 Content-Length: 0 5518 F9 ACK Proxy 1 -> NGW 1 5520 ACK sip:+44-1234@ngw1.atlanta.com;user=phone SIP/2.0 5521 Max-Forwards: 70 5522 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5523 From: BigGuy 5524 ;tag=9fxced76sl 5525 To: LittleGuy ;tag=314159 5526 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5527 CSeq: 1 ACK 5528 Content-Length: 0 5530 F10 404 Not Found Proxy 1 -> User A 5532 SIP/2.0 404 Not Found 5533 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5534 ;received=192.168.100.101 5535 From: BigGuy 5536 ;tag=9fxced76sl 5537 To: LittleGuy ;tag=314159 5538 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5539 CSeq: 1 INVITE 5540 Error-Info: 5541 Content-Length: 0 5543 F11 ACK User A -> Proxy 1 5545 ACK sip:+44-1234@ss1.atlanta.com;user=phone SIP/2.0 5546 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5547 Max-Forwards: 70 5548 From: BigGuy 5549 ;tag=9fxced76sl 5550 To: LittleGuy ;tag=314159 5551 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5552 CSeq: 1 ACK 5553 Content-Length: 0 5555 4.2.3 Unsuccessful SIP to PSTN: ANM Timeout 5557 User A Proxy 1 NGW 1 Switch B 5558 | | | | 5559 | INVITE F1 | | | 5560 |--------------->| | | 5561 | 100 F2 | | | 5562 |<---------------| INVITE F3 | | 5563 | |--------------->| | 5564 | | 100 F4 | | 5565 | |<---------------| IAM F5 | 5566 | | |--------------->| 5567 | | | ACM F6 | 5568 | | 183 F7 |<---------------| 5569 | 183 F8 |<---------------| | 5570 |<---------------| | | 5571 | | Timer on NGW 1 Expires | 5572 | | | | 5573 | | | REL F9 | 5574 | | |--------------->| 5575 | | | RLC F10 | 5576 | | 480 F11 |<---------------| 5577 | |<---------------| | 5578 | | ACK F12 | | 5579 | |--------------->| | 5580 | 480 F13 | | | 5581 |<---------------| | | 5582 | ACK F14 | | | 5583 |--------------->| | | 5585 User A calls User B in the PSTN through a proxy server Proxy 1 and 5586 Network Gateway NGW 1. The call is released by the Gateway after a 5587 timer expires due to no ANswer Message (ANM) being received. The 5588 Gateway sends an ISUP Release REL message to the PSTN and a 480 5589 Temporarily Unavailable response to User A in the SIP network. 5591 Message Details 5593 F1 INVITE A -> Proxy 1 5595 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5596 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5597 Max-Forwards: 70 5598 From: BigGuy 5599 ;tag=9fxced76sl 5600 To: LittleGuy 5601 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5602 CSeq: 1 INVITE 5603 Contact: 5604 Proxy-Authorization: Digest username="UserA", 5605 realm="atlanta.com", nonce="da2c5ac51bb59a05j1c3b0b01cf832b40", 5606 opaque="", uri="sip:+19725552222@ss1.atlanta.com;user=phone", 5607 response="579cb9db184cdc25bf816f37cbc03c7d" 5608 Content-Type: application/sdp 5609 Content-Length: 147 5611 v=0 5612 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5613 s=- 5614 c=IN IP4 192.168.100.101 5615 t=0 0 5616 m=audio 49172 RTP/AVP 0 5617 a=rtpmap:0 PCMU/8000 5619 /* Proxy 1 uses a Location Service function to determine where B is 5620 located. Based upon location analysis the call is forwarded to NGW 5621 1. Client for A prepares to receive data on port 49172 from the 5622 network.*/ 5624 F2 100 Trying Proxy 1 -> A 5626 SIP/2.0 100 Trying 5627 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5628 ;received=192.168.100.101 5629 From: BigGuy 5630 ;tag=9fxced76sl 5631 To: LittleGuy 5632 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5633 CSeq: 1 INVITE 5634 Content-Length: 0 5636 F3 INVITE Proxy 1 -> NGW 1 5638 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 5639 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5640 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5641 ;received=192.168.100.101 5642 Max-Forwards: 69 5643 Record-Route: 5644 From: BigGuy 5645 ;tag=9fxced76sl 5646 To: LittleGuy 5647 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5648 CSeq: 1 INVITE 5649 Contact: 5650 Content-Type: application/sdp 5651 Content-Length: 147 5653 v=0 5654 o=UserA 2890844526 2890844526 IN IP4 client.atlanta.com 5655 s=- 5656 c=IN IP4 192.168.100.101 5657 t=0 0 5658 m=audio 49172 RTP/AVP 0 5659 a=rtpmap:0 PCMU/8000 5661 F4 100 Trying NGW 1 -> Proxy 1 5663 SIP/2.0 100 Trying 5664 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5665 ;received=192.168.255.111 5666 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5667 ;received=192.168.100.101 5668 From: BigGuy 5669 ;tag=9fxced76sl 5670 To: LittleGuy 5671 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5672 CSeq: 1 INVITE 5673 Content-Length: 0 5675 F5 IAM NGW 1 -> User B 5677 IAM 5678 CdPN=972-555-2222,NPI=E.164,NOA=National 5679 CgPN=314-555-1111,NPI=E.164,NOA=National 5681 F6 ACM User B -> NGW 1 5683 ACM 5685 F7 183 Session Progress NGW 1 -> Proxy 1 5687 SIP/2.0 183 Session Progress 5688 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5689 ;received=192.168.255.111 5690 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5691 ;received=192.168.100.101 5692 Record-Route: 5693 From: BigGuy 5694 ;tag=9fxced76sl 5695 To: LittleGuy 5696 ;tag=314159 5697 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5698 CSeq: 1 INVITE 5699 Contact: 5700 Content-Type: application/sdp 5701 Content-Length: 141 5702 v=0 5703 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5704 s=- 5705 c=IN IP4 192.168.255.101 5706 t=0 0 5707 m=audio 3456 RTP/AVP 0 5708 a=rtpmap:0 PCMU/8000 5710 F8 183 Session Progress Proxy 1 -> User A 5712 SIP/2.0 183 Session Progress 5713 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5714 ;received=192.168.100.101 5715 Record-Route: 5716 From: BigGuy 5717 ;tag=9fxced76sl 5718 To: LittleGuy 5719 ;tag=314159 5720 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5721 CSeq: 1 INVITE 5722 Contact: 5723 Content-Type: application/sdp 5724 Content-Length: 141 5726 v=0 5727 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5728 s=- 5729 c=IN IP4 192.168.255.201 5730 t=0 0 5731 m=audio 3456 RTP/AVP 0 5732 a=rtpmap:0 PCMU/8000 5734 /* After NGW 1's timer expires, Network Gateway sends REL to ISUP 5735 network and 480 to SIP network */ 5737 F9 REL NGW 1 -> User B 5739 REL 5740 CauseCode=18 No user responding 5742 F10 RLC User B -> NGW 1 5744 RLC 5746 F11 480 Temporarily Unavailable NGW 1 -> Proxy 1 5748 SIP/2.0 480 Temporarily Unavailable 5749 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5750 ;received=192.168.255.111 5751 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5752 ;received=192.168.100.101 5753 From: BigGuy 5754 ;tag=9fxced76sl 5755 To: LittleGuy 5756 ;tag=314159 5757 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5758 CSeq: 1 INVITE 5759 Error-Info: 5760 Content-Length: 0 5762 F12 ACK Proxy 1 -> NGW 1 5764 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 5765 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5766 Max-Forwards: 70 5767 From: BigGuy 5768 ;tag=9fxced76sl 5769 To: LittleGuy 5770 ;tag=314159 5771 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5772 CSeq: 1 ACK 5773 Content-Length: 0 5775 F13 480 Temporarily Unavailable F13 Proxy 1 -> User A 5777 SIP/2.0 480 Temporarily Unavailable 5778 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5779 ;received=192.168.100.101 5780 From: BigGuy 5781 ;tag=9fxced76sl 5782 To: LittleGuy 5783 ;tag=314159 5784 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5785 CSeq: 1 INVITE 5786 Error-Info: 5787 Content-Length: 0 5789 F14 ACK User A -> Proxy 1 5791 ACK sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5792 Max-Forwards: 70 5793 Via: SIP/2.0/UDP client.atlanta.com:5060;branch=z9hG4bK74bf9 5794 From: BigGuy 5795 ;tag=9fxced76sl 5796 To: LittleGuy 5797 ;tag=314159 5798 Call-ID: 2xTb9vxSit55XU7p8@atlanta.com 5799 CSeq: 1 ACK 5800 Content-Length: 0 5802 5 Gateway to SIP Dialing 5804 5.1 Success Scenarios 5806 In these scenarios, User A is placing calls from the PSTN to User B 5807 in a SIP network. User A's telephone switch signals to a Network 5808 Gateway (NGW 1) using ANSI ISUP. 5810 Since the called SIP User Agent does not send in-band signaling 5811 information, no early media path needs to be established on the IP 5812 side. As a result, the 183 Session Progress response is not used. 5813 However, NGW 1 will establish a one way speech path prior to call 5814 completion, and generate ringing for the PSTN caller. Any tones or 5815 recordings are generated by NGW 1 and played in this speech path. 5816 When the call completes successfully, NGW 1 bridges the PSTN speech 5817 path with the IP media path. 5819 To reduce the number of messages, only a single proxy server is shown 5820 in these flows, which means that the atlanta.com proxy server has 5821 access to the biloxi.com location service. 5823 5.1.1 Successful PSTN to SIP call 5825 Switch A NGW 1 Proxy 1 User B 5826 | | | | 5827 | IAM F1 | | | 5828 |--------------->| INVITE F2 | | 5829 | |--------------->| INVITE F3 | 5830 | | 100 F4 |--------------->| 5831 | |<---------------| | 5832 | | | 180 F5 | 5833 | | 180 F6 |<---------------| 5834 | ACM F7 |<---------------| | 5835 |<---------------| | | 5836 | One Way Voice | | | 5837 |<===============| | | 5838 | Ringing Tone | | 200 F8 | 5839 |<===============| 200 F9 |<---------------| 5840 | |<---------------| | 5841 | | ACK F10 | | 5842 | ANM F12 |--------------->| ACK F11 | 5843 |<---------------| |--------------->| 5844 | Both Way Voice | Both Way RTP Media | 5845 |<==============>|<===============================>| 5846 | REL F13 | | | 5847 |--------------->| | | 5848 | RLC F14 | | | 5849 |<---------------| BYE F15 | | 5850 | |--------------->| BYE F16 | 5851 | | |--------------->| 5852 | | | 200 F17 | 5853 | | 200 F18 |<---------------| 5854 | |<---------------| | 5855 | | | | 5857 In this scenario, User A from the PSTN calls User B through a Network 5858 Gateway NGW1 and Proxy Server Proxy 1. When User B answers the call 5859 the media path is setup end-to-end. The call terminates when User A 5860 hangs up the call, with User A's telephone switch sending an ISUP 5861 RELease message which is mapped to a BYE by NGW 1. 5863 Message Details 5865 F1 IAM User A -> NGW 1 5867 IAM 5868 CgPN=314-555-1111,NPI=E.164,NOA=National 5869 CdPN=972-555-2222,NPI=E.164,NOA=National 5871 F2 INVITE A -> Proxy 1 5872 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 5873 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5874 Max-Forwards: 70 5875 From: ;tag=7643kals 5876 To: 5877 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5878 CSeq: 1 INVITE 5879 Contact: 5880 Content-Type: application/sdp 5881 Content-Length: 141 5883 v=0 5884 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5885 s=- 5886 c=IN IP4 192.168.255.101 5887 t=0 0 5888 m=audio 3456 RTP/AVP 0 5889 a=rtpmap:0 PCMU/8000 5891 /* Proxy 1 uses a Location Service function to determine where B is 5892 located. Based upon location analysis the call is forwarded to NGW 5893 1. NGW 1 prepares to receive data on port 3456 from User A.*/ 5895 F3 INVITE Proxy 1 -> User B 5897 INVITE sip:UserB@192.168.200.201 SIP/2.0 5898 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5899 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5900 ;received=192.168.255.101 5901 Max-Forwards: 69 5902 Record-Route: 5903 From: ;tag=7643kals 5904 To: 5905 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5906 CSeq: 1 INVITE 5907 Contact: 5908 Content-Type: application/sdp 5909 Content-Length: 141 5911 v=0 5912 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 5913 s=- 5914 c=IN IP4 192.168.255.101 5915 t=0 0 5916 m=audio 3456 RTP/AVP 0 5917 a=rtpmap:0 PCMU/8000 5919 F4 100 Trying User B -> Proxy 1 5921 SIP/2.0 100 Trying 5922 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5923 ;received=192.168.255.111 5924 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5925 ;received=192.168.255.101 5926 From: ;tag=7643kals 5927 To: 5928 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5929 CSeq: 1 INVITE 5930 Content-Length: 0 5932 F5 180 Ringing User B -> Proxy 1 5934 SIP/2.0 180 Ringing 5935 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5936 ;received=192.168.255.111 5937 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5938 ;received=192.168.255.101 5939 Record-Route: 5940 From: ;tag=7643kals 5941 To: ;tag=314159 5942 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5943 CSeq: 1 INVITE 5944 Contact: 5945 Content-Length: 0 5947 F6 180 Ringing Proxy 1 -> NGW 1 5949 SIP/2.0 180 Ringing 5950 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5951 ;received=192.168.255.101 5952 Record-Route: 5953 From: ;tag=7643kals 5954 To: ;tag=314159 5955 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5956 CSeq: 1 INVITE 5957 Contact: 5958 Content-Length: 0 5960 F7 ACM NGW 1 -> User A 5962 ACM 5964 F8 200 OK User B -> Proxy 1 5966 SIP/2.0 200 OK 5967 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 5968 ;received=192.168.255.111 5969 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5970 ;received=192.168.255.101 5971 Record-Route: 5972 From: ;tag=7643kals 5973 To: ;tag=314159 5974 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5975 Contact: 5976 CSeq: 1 INVITE 5977 Content-Type: application/sdp 5978 Content-Length: 145 5980 v=0 5981 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 5982 s=- 5983 c=IN IP4 192.168.200.201 5984 t=0 0 5985 m=audio 3456 RTP/AVP 0 5986 a=rtpmap:0 PCMU/8000 5988 F9 200 OK Proxy 1 -> NGW 1 5990 SIP/2.0 200 OK 5991 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 5992 ;received=192.168.255.101 5993 Record-Route: 5994 From: ;tag=7643kals 5995 To: ;tag=314159 5996 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 5997 CSeq: 1 INVITE 5998 Contact: 5999 Content-Type: application/sdp 6000 Content-Length: 145 6002 v=0 6003 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 6004 s=- 6005 c=IN IP4 192.168.200.201 6006 t=0 0 6007 m=audio 3456 RTP/AVP 0 6008 a=rtpmap:0 PCMU/8000 6010 F10 ACK NGW 1 -> Proxy 1 6012 ACK sip:UserB@192.168.200.201 SIP/2.0 6013 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6014 Max-Forwards: 70 6015 Route: 6016 From: ;tag=7643kals 6017 To: ;tag=314159 6018 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6019 CSeq: 1 ACK 6020 Content-Length: 0 6022 F11 ACK Proxy 1 -> User B 6024 ACK sip:UserB@192.168.200.201 SIP/2.0 6025 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6026 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6027 ;received=192.168.255.101 6028 Max-Forwards: 69 6029 From: ;tag=7643kals 6030 To: ;tag=314159 6031 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6032 CSeq: 1 ACK 6033 Content-Length: 0 6035 F12 ANM User B -> NGW 1 6037 ANM 6039 /* RTP streams are established between A and B (via the GW) */ 6041 /* User A Hangs Up with User B. */ 6043 F13 REL User A -> NGW 1 6045 REL 6046 CauseCode=16 Normal 6048 F14 RLC NGW 1 -> User A 6050 RLC 6052 F15 BYE NGW 1-> Proxy 1 6054 BYE sip:UserB@192.168.200.201 SIP/2.0 6055 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6056 Max-Forwards: 70 6057 Route: 6058 From: ;tag=7643kals 6059 To: ;tag=314159 6060 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6061 CSeq: 2 BYE 6062 Content-Length: 0 6064 F16 BYE Proxy 1 -> User B 6065 BYE sip:UserB@192.168.200.201 SIP/2.0 6066 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6067 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6068 ;received=192.168.255.101 6069 Max-Forwards: 69 6070 From: ;tag=7643kals 6071 To: ;tag=314159 6072 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6073 CSeq: 2 BYE 6074 Content-Length: 0 6076 F17 200 OK User B -> Proxy 1 6078 SIP/2.0 200 OK 6079 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6080 ;received=192.168.255.111 6081 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6082 ;received=192.168.255.101 6083 From: ;tag=7643kals 6084 To: ;tag=314159 6085 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6086 CSeq: 2 BYE 6087 Content-Length: 0 6089 F18 200 OK Proxy 1 -> NGW 1 6091 SIP/2.0 200 OK 6092 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6093 ;received=192.168.255.101 6094 From: ;tag=7643kals 6095 To: ;tag=314159 6096 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6097 CSeq: 2 BYE 6098 Content-Length: 0 6100 5.1.2 Successful PSTN to SIP call, Fast Answer 6102 Switch A NGW 1 Proxy 1 User B 6103 | | | | 6104 | IAM F1 | | | 6105 |--------------->| INVITE F2 | | 6106 | |--------------->| INVITE F3 | 6107 | | 100 F4 |--------------->| 6108 | |<---------------| | 6109 | | | 200 F5 | 6110 | | 200 F6 |<---------------| 6111 | |<---------------| | 6112 | | ACK F7 | | 6113 | ANM F9 |--------------->| ACK F8 | 6114 |<---------------| |--------------->| 6115 | Both Way Voice | Both Way RTP Media | 6116 |<==============>|<===============================>| 6117 | REL F10 | | | 6118 |--------------->| | | 6119 | RLC F11 | | | 6120 |<---------------| BYE F12 | | 6121 | |--------------->| BYE F13 | 6122 | | |--------------->| 6123 | | | 200 F14 | 6124 | | 200 F15 |<---------------| 6125 | |<---------------| | 6126 | | | | 6128 This "fast answer" scenario is similar to 5.1.1 except that User B 6129 immediately accepts the call, sending a 200 OK (F5) without sending a 6130 180 Ringing response. The Gateway then sends an Answer Message (ANM) 6131 without sending an Address Complete Message (ACM). Note that for 6132 ETSI and some other ISUP variants, a CONnect message (CON) would be 6133 sent instead of the ANM. 6135 Message Details 6137 F1 IAM User A -> NGW 1 6139 IAM 6140 CgPN=314-555-1111,NPI=E.164,NOA=National 6141 CdPN=972-555-2222,NPI=E.164,NOA=National 6143 F2 INVITE NGW 1 -> Proxy 1 6145 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 6146 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6147 Max-Forwards: 70 6148 From: ;tag=7643kals 6149 To: 6150 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6151 CSeq: 1 INVITE 6152 Contact: 6153 Content-Type: application/sdp 6154 Content-Length: 141 6156 v=0 6157 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6158 s=- 6159 c=IN IP4 192.168.255.101 6160 t=0 0 6161 m=audio 3456 RTP/AVP 0 6162 a=rtpmap:0 PCMU/8000 6164 /* Proxy 1 uses a Location Service function to determine where B is 6165 located. Based upon location analysis the call is forwarded to User 6166 B. User B prepares to receive data on port 3456 from User A.*/ 6168 F3 INVITE Proxy 1 -> User B 6170 INVITE UserB@biloxi.com SIP/2.0 6171 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6172 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6173 ;received=192.168.255.101 6174 Max-Forwards: 69 6175 Record-Route: 6176 From: ;tag=7643kals 6177 To: 6178 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6179 CSeq: 1 INVITE 6180 Contact: 6181 Content-Type: application/sdp 6182 Content-Length: 141 6184 v=0 6185 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6186 s=- 6187 c=IN IP4 192.168.255.101 6188 t=0 0 6189 m=audio 3456 RTP/AVP 0 6190 a=rtpmap:0 PCMU/8000 6192 F4 100 Trying Proxy 1 -> NGW 1 6194 SIP/2.0 100 Trying 6195 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6196 ;received=192.168.255.201 6197 From: ;tag=7643kals 6198 To: 6199 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6200 CSeq: 1 INVITE 6201 Content-Length: 0 6203 F5 200 OK User B -> Proxy 1 6205 SIP/2.0 200 OK 6206 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6207 ;received=192.168.255.111 6208 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6209 ;received=192.168.255.101 6210 Record-Route: 6211 From: ;tag=7643kals 6212 To: ;tag=314159 6213 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6214 CSeq: 1 INVITE 6215 Contact: 6216 Content-Type: application/sdp 6217 Content-Length: 145 6219 v=0 6220 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 6221 s=- 6222 c=IN IP4 192.168.200.201 6223 t=0 0 6224 m=audio 3456 RTP/AVP 0 6225 a=rtpmap:0 PCMU/8000 6227 F6 200 OK Proxy 1 -> NGW 1 6229 SIP/2.0 200 OK 6230 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6231 ;received=192.168.255.101 6232 Record-Route: 6233 From: ;tag=7643kals 6234 To: ;tag=314159 6235 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6236 CSeq: 1 INVITE 6237 Contact: 6238 Content-Type: application/sdp 6239 Content-Length: 145 6241 v=0 6242 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6243 s=- 6244 c=IN IP4 192.168.200.201 6245 t=0 0 6246 m=audio 3456 RTP/AVP 0 6247 a=rtpmap:0 PCMU/8000 6248 F7 ACK NGW 1 -> Proxy 1 6250 ACK UserB@192.168.200.201 SIP/2.0 6251 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6252 Max-Forwards: 70 6253 Route: 6254 From: ;tag=7643kals 6255 To: ;tag=314159 6256 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6257 CSeq: 1 ACK 6258 Content-Length: 0 6260 F8 ACK Proxy 1 -> User B 6262 ACK UserB@192.168.200.201 SIP/2.0 6263 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6264 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6265 ;received=130.131.132.14 6266 Max-Forwards: 69 6267 From: ;tag=7643kals 6268 To: ;tag=314159 6269 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6270 CSeq: 1 ACK 6271 Content-Length: 0 6273 F9 ANM User B -> NGW 1 6275 ANM 6277 /* RTP streams are established between A and B (via the GW) */ 6279 /* User A Hangs Up with User B. */ 6281 F10 REL ser A -> NGW 1 6283 REL 6284 CauseCode=16 Normal 6286 F11 RLC NGW 1 -> User A 6288 RLC 6290 F12 BYE NGW 1 -> Proxy 1 6292 BYE sip:UserB@192.168.200.201 SIP/2.0 6293 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6294 Max-Forwards: 70 6295 Route: 6296 From: ;tag=7643kals 6297 To: ;tag=314159 6298 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6299 CSeq: 2 BYE 6300 Content-Length: 0 6302 F13 BYE Proxy 1 -> User B 6304 BYE sip:UserB@192.168.200.201 SIP/2.0 6305 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6306 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6307 ;received=192.168.255.101 6308 Max-Forwards: 69 6309 From: ;tag=7643kals 6310 To: ;tag=314159 6311 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6312 CSeq: 2 BYE 6313 Content-Length: 0 6315 F14 200 OK User B -> Proxy 1 6317 SIP/2.0 200 OK 6318 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6319 ;received=192.168.255.111 6320 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6321 ;received=192.168.255.101 6322 From: ;tag=7643kals 6323 To: ;tag=314159 6324 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6325 CSeq: 2 BYE 6326 Content-Length: 0 6328 F15 200 OK Proxy 1 -> NGW 1 6330 SIP/2.0 200 OK 6331 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6332 ;received=192.168.255.101 6333 From: ;tag=7643kals 6334 To: ;tag=314159 6335 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6336 CSeq: 2 BYE 6337 Content-Length: 0 6339 5.1.3 Successful PBX to SIP call 6341 PBX A GW 1 Proxy 1 User B 6342 | | | | 6343 | Seizure | | | 6344 |--------------->| | | 6345 | Wink | | | 6346 |<---------------| | | 6347 | MF Digits F1 | | | 6348 |--------------->| INVITE F2 | | 6349 | |--------------->| INVITE F3 | 6350 | | 100 F4 |--------------->| 6351 | |<---------------| | 6352 | | | 180 F5 | 6353 | | 180 F6 |<---------------| 6354 | |<---------------| | 6355 | One Way Voice | | | 6356 |<===============| | | 6357 | Ringing Tone | | 200 F7 | 6358 |<===============| 200 F8 |<---------------| 6359 | |<---------------| | 6360 | | ACK F9 | | 6361 | Seizure |--------------->| ACK F10 | 6362 |<---------------| |--------------->| 6363 | Both Way Voice | Both Way RTP Media | 6364 |<==============>|<===============================>| 6365 | Seizure Removal| | | 6366 |--------------->| | | 6367 | Seizure Removal| | | 6368 |<---------------| BYE F11 | | 6369 | |--------------->| BYE F12 | 6370 | | |--------------->| 6371 | | | 200 F13 | 6372 | | 200 F14 |<---------------| 6373 | |<---------------| | 6374 | | | | 6376 In this scenario, User A dials from PBX A to User B through GW 1 and 6377 Proxy 1. This is an example of a call that appears destined for the 6378 PSTN but instead is routed to a SIP Client. 6380 Signaling between PBX A and GW 1 is Feature Group B (FGB) circuit 6381 associated signaling, in-band Mult-Frequency (MF) outpulsing. After 6382 the receipt of the 180 Ringing from User B, GW 1 generates ringing 6383 tone for User A. 6385 User B answers the call by sending a 200 OK. The call terminates 6386 when User A hangs up, causing GW1 to send a BYE. 6388 The Gateway can only identify the trunk group that the 6389 call came in on, it cannot identify the individual line on PBX A that 6390 is placing the call. The SIP URI used to identify the caller is 6391 shown in these flows as sip:551313@gw1.atlanta.com. 6393 Message Details 6395 PBX A -> GW 1 6397 Seizure 6399 GW 1 -> PBX A 6401 Wink 6403 F1 MF Digits PBX A -> GW 1 6405 KP 1 972 555 2222 ST 6407 F2 INVITE GW 1 -> Proxy 1 6409 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 6410 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6411 Max-Forwards: 70 6412 From: ;tag=jwdkallkzm 6413 To: 6414 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6415 CSeq: 1 INVITE 6416 Contact: 6417 Content-Type: application/sdp 6418 Content-Length: 141 6420 v=0 6421 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6422 s=- 6423 c=IN IP4 192.168.255.201 6424 t=0 0 6425 m=audio 3456 RTP/AVP 0 6426 a=rtpmap:0 PCMU/8000 6428 /* Proxy 1 uses a Location Service function to determine where the 6429 phone number +19725552222 is located. Based upon location 6430 analysis the call is forwarded to SIP User B. */ 6432 F3 INVITE Proxy 1 -> User B 6434 INVITE sip:UserB@192.168.200.201 SIP/2.0 6435 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6436 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6437 ;received=192.168.255.201 6439 Max-Forwards: 69 6440 Record-Route: 6441 From: ;tag=jwdkallkzm 6442 To: 6443 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6444 CSeq: 1 INVITE 6445 Contact: 6446 Content-Type: application/sdp 6447 Content-Length: 141 6449 v=0 6450 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 6451 s=- 6452 c=IN IP4 192.168.255.201 6453 t=0 0 6454 m=audio 3456 RTP/AVP 0 6455 a=rtpmap:0 PCMU/8000 6457 F4 100 Trying Proxy 1 -> GW 1 6459 SIP/2.0 100 Trying 6460 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6461 ;received=192.168.255.201 6462 From: ;tag=jwdkallkzm 6463 To: ;tag=314159 6464 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6465 CSeq: 1 INVITE 6466 Content-Length: 0 6468 F5 180 Ringing User B -> Proxy 1 6470 SIP/2.0 180 Ringing 6471 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6472 ;received=192.168.255.111 6473 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6474 ;received=192.168.255.201 6475 Record-Route: 6476 From: ;tag=jwdkallkzm 6477 To: ;tag=314159 6478 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6479 CSeq: 1 INVITE 6480 Contact: 6481 Content-Length: 0 6483 F6 180 Ringing Proxy 1 -> GW 1 6485 SIP/2.0 180 Ringing 6486 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6487 ;received=192.168.255.201 6489 Record-Route: 6490 From: ;tag=jwdkallkzm 6491 To: ;tag=314159 6492 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6493 CSeq: 1 INVITE 6494 Contact: 6495 Content-Length: 0 6497 /* One way Voice path is established between GW and the PBX for 6498 ringing. */ 6500 F7 200 OK User B -> Proxy 1 6502 SIP/2.0 200 OK 6503 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6504 ;received=192.168.255.111 6505 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6506 ;received=192.168.255.201 6507 Record-Route: 6508 From: ;tag=jwdkallkzm 6509 To: ;tag=314159 6510 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6511 Contact: 6512 CSeq: 1 INVITE 6513 Content-Type: application/sdp 6514 Content-Length: 145 6516 v=0 6517 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 6518 s=- 6519 c=IN IP4 192.168.200.201 6520 t=0 0 6521 m=audio 3456 RTP/AVP 0 6522 a=rtpmap:0 PCMU/8000 6524 F8 200 OK Proxy 1 -> GW 1 6526 SIP/2.0 200 OK 6527 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6528 ;received=192.168.255.201 6529 Record-Route: 6530 From: ;tag=jwdkallkzm 6531 To: ;tag=314159 6532 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6533 CSeq: 1 INVITE 6534 Contact: 6535 Content-Type: application/sdp 6536 Content-Length: 145 6538 v=0 6539 o=UserB 2890844527 2890844527 IN IP4 client.biloxi.com 6540 s=- 6541 c=IN IP4 192.168.200.201 6542 t=0 0 6543 m=audio 3456 RTP/AVP 0 6544 a=rtpmap:0 PCMU/8000 6546 F9 ACK GW 1 -> Proxy 1 6548 ACK sip:UserB@192.168.200.201 SIP/2.0 6549 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6550 Max-Forwards: 70 6551 Route: 6552 From: ;tag=jwdkallkzm 6553 To: ;tag=314159 6554 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6555 CSeq: 1 ACK 6556 Content-Length: 0 6558 F10 ACK Proxy 1 -> User B 6560 ACK sip:UserB@192.168.200.201 SIP/2.0 6561 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6562 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6563 ;received=192.168.255.201 6564 Max-Forwards: 69 6565 From: ;tag=jwdkallkzm 6566 To: ;tag=314159 6567 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6568 CSeq: 1 ACK 6569 Content-Length: 0 6571 /* RTP streams are established between A and B (via the GW) */ 6573 /* User A Hangs Up with User B. */ 6575 F11 BYE GW 1 -> Proxy 1 6577 BYE sip:UserB@192.168.200.201 SIP/2.0 6578 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6579 Max-Forwards: 70 6580 Route: 6581 From: ;tag=jwdkallkzm 6582 To: ;tag=314159 6583 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6584 CSeq: 2 BYE 6585 Content-Length: 0 6586 F12 BYE Proxy 1 -> User B 6588 BYE sip:UserB@192.168.200.201 SIP/2.0 6589 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6590 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6591 ;received=192.168.255.201 6592 Max-Forwards: 69 6593 To: ;tag=314159 6594 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6595 CSeq: 2 BYE 6596 Content-Length: 0 6598 F13 200 OK User B -> Proxy 1 6600 SIP/2.0 200 OK 6601 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6602 ;received=192.168.255.111 6603 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6604 ;received=192.168.255.201 6605 From: ;tag=jwdkallkzm 6606 To: ;tag=314159 6607 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6608 CSeq: 2 BYE 6609 Content-Length: 0 6611 F14 200 OK Proxy 1 -> GW 1 6613 SIP/2.0 200 OK 6614 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 6615 ;received=192.168.255.201 6616 From: ;tag=jwdkallkzm 6617 To: ;tag=314159 6618 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6619 CSeq: 2 BYE 6620 Content-Length: 0 6622 5.2 Failure Scenarios 6624 5.2.1 Unsuccessful PSTN to SIP REL, SIP error mapped to REL 6626 Switch A GW 1 Proxy 1 User B 6627 | | | | 6628 | IAM F1 | | | 6629 |--------------->| INVITE F2 | | 6630 | |--------------->| | 6631 | | 604 F3 | | 6632 | |<---------------| | 6633 | | ACK F4 | | 6634 | |--------------->| | 6635 | REL F5 | | | 6636 |<---------------| | | 6637 | RLC F6 | | | 6638 |--------------->| | | 6639 | | | | 6641 User A attempts to place a call through Gateway GW 1 and Proxy 1, 6642 which is unable to find any routing for the number. The call is 6643 rejected by Proxy 1 with a REL message containing a specific Cause 6644 value mapped by the gateway based on the SIP error. 6646 Message Details 6648 F1 IAM User A -> GW 1 6650 IAM 6651 CgPN=314-555-1111,NPI=E.164,NOA=National 6652 CdPN=972-555-9999,NPI=E.164,NOA=National 6654 F2 INVITE A -> Proxy 1 6656 INVITE sip:+1972559999@ss1.atlanta.com;user=phone SIP/2.0 6657 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6658 Max-Forwards: 70 6659 From: ;tag=076342s 6660 To: 6661 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6662 CSeq: 1 INVITE 6663 Contact: 6664 Content-Type: application/sdp 6665 Content-Length: 140 6667 v=0 6668 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 6669 s=- 6670 c=IN IP4 192.168.255.201 6671 t=0 0 6672 m=audio 3456 RTP/AVP 0 6673 a=rtpmap:0 PCMU/8000 6675 /* Proxy 1 uses a Location Service to find a route to +1-972-555- 6676 9999. A route is not found, so Proxy 1 rejects the call. */ 6678 F3 604 Does Not Exist Anywhere Proxy 1 -> GW 1 6680 SIP/2.0 604 Does Not Exist Anywhere 6681 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6682 ;received=192.168.255.201 6683 From: ;tag=076342s 6684 To: ;tag=6a34d410 6685 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6686 CSeq: 1 INVITE 6687 Error-Info: 6688 Content-Length: 0 6690 F4 ACK GW 1 -> Proxy 1 6692 ACK sip:+1972559999@ss1.atlanta.com;user=phone SIP/2.0 6693 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6694 Max-Forwards: 70 6695 From: ;tag=076342s 6696 To: ;tag=6a34d410 6697 Call-ID: 4Fde34wkd11wsGFDs3@gw1.atlanta.com 6698 CSeq: 1 ACK 6699 Content-Length: 0 6701 F5 REL GW 1 -> User A 6703 REL 6704 CauseCode=1 6706 F6 RLC User A -> GW 1 6708 RLC 6710 5.2.2 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL 6712 Switch A NGW 1 Proxy 1 User B 6713 | | | | 6714 | IAM F1 | | | 6715 |--------------->| INVITE F2 | | 6716 | |--------------->| INVITE F3 | 6717 | | 100 F4 |--------------->| 6718 | |<---------------| | 6719 | | | 600 F5 | 6720 | | |<---------------| 6721 | | | ACK F6 | 6722 | | 600 F7 |--------------->| 6723 | |<---------------| | 6724 | | ACK F8 | | 6725 | |--------------->| | 6726 | REL(17) F9 | | | 6727 |<---------------| | | 6728 | RLC F10 | | | 6729 |<-------------->| | | 6730 | | | | 6732 In this scenario, User A calls User B through Network Gateway NGW 1 6733 and Proxy 1. The call is routed to User B by Proxy 1. The call is 6734 rejected by User B who sends a 600 Busy Everywhere response. The 6735 Gateway sends a REL message containing a specific Cause value mapped 6736 by the gateway based on the SIP error. 6738 Since no interworking is indicated in the IAM (F1), the busy tone is 6739 generated locally by User A's telephone switch. In scenario 5.2.3, 6740 the busy signal is generated by the Gateway since interworking is 6741 indicated. For more discussion on interworking, refer to [SIP-ISUP]. 6743 Message Details 6745 F1 IAM User A -> NGW 1 6747 IAM 6748 CgPN=314-555-1111,NPI=E.164,NOA=National 6749 CdPN=972-555-2222,NPI=E.164,NOA=National 6751 F2 INVITE A -> Proxy 1 6753 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 6754 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6755 Max-Forwards: 70 6756 From: ;tag=7643kals 6757 To: 6758 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6759 CSeq: 1 INVITE 6760 Contact: 6761 Content-Type: application/sdp 6762 Content-Length: 140 6764 v=0 6765 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 6766 s=- 6767 c=IN IP4 192.168.255.201 6768 t=0 0 6769 m=audio 3456 RTP/AVP 0 6770 a=rtpmap:0 PCMU/8000 6772 /* Proxy 1 uses a Location Service function to determine a route for 6773 +19725552222. The call is then forwarded to User B. */ 6775 F3 INVITE F3 Proxy 1 -> User B 6777 INVITE UserB@biloxi.com SIP/2.0 6778 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6779 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6780 ;received=192.168.255.201 6781 Max-Forwards: 69 6782 Record-Route: 6783 From: ;tag=7643kals 6784 To: 6785 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6786 CSeq: 1 INVITE 6787 Contact: 6788 Content-Type: application/sdp 6789 Content-Length: 140 6791 v=0 6792 o=GW 2890844527 2890844527 IN IP4 gw1.atlanta.com 6793 s=- 6794 c=IN IP4 192.168.255.201 6795 t=0 0 6796 m=audio 3456 RTP/AVP 0 6797 a=rtpmap:0 PCMU/8000 6799 F4 100 Trying Proxy 1 -> NGW 1 6801 SIP/2.0 100 Trying 6802 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6803 ;received=192.168.255.201 6804 From: ;tag=7643kals 6805 To: ;tag=314159 6806 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6807 CSeq: 1 INVITE 6808 Content-Length: 0 6809 F5 600 Busy Everywhere User B -> Proxy 1 6811 SIP/2.0 600 Busy Everywhere 6812 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6813 ;received=192.168.255.111 6814 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6815 ;received=192.168.255.201 6816 From: ;tag=7643kals 6817 To: ;tag=314159 6818 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6819 CSeq: 1 INVITE 6820 Content-Length: 0 6822 F6 ACK Proxy 1 -> User B 6824 ACK UserB@biloxi.com SIP/2.0 6825 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6826 Max-Forwards: 70 6827 From: ;tag=7643kals 6828 To: ;tag=314159 6829 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6830 CSeq: 1 ACK 6831 Content-Length: 0 6833 F7 600 Busy Everywhere Proxy 1 -> NGW 1 6835 SIP/2.0 600 Busy Everywhere 6836 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6837 ;received=192.168.255.201 6838 From: ;tag=7643kals 6839 To: ;tag=314159 6840 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6841 CSeq: 1 INVITE 6842 Content-Length: 0 6844 F8 ACK NGW 1 -> Proxy 1 6846 ACK UserB@biloxi.com SIP/2.0 6847 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6848 Max-Forwards: 70 6849 From: ;tag=7643kals 6850 To: ;tag=314159 6851 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6852 CSeq: 1 ACK 6853 Content-Length: 0 6854 F9 REL NGW 1 -> User A 6856 REL 6857 CauseCode=17 Busy 6859 F10 RLC User A -> NGW 1 6861 RLC 6863 5.2.3 Unsuccessful PSTN->SIP, SIP error interworking to tones 6865 Switch A NGW 1 Proxy 1 User B 6866 | | | | 6867 | IAM F1 | | | 6868 |--------------->| INVITE F2 | | 6869 | |--------------->| INVITE F3 | 6870 | | 100 F4 |--------------->| 6871 | |<---------------| | 6872 | | | 600 F5 | 6873 | | |<---------------| 6874 | | | ACK F6 | 6875 | | 600 F7 |--------------->| 6876 | |<---------------| | 6877 | | ACK F8 | | 6878 | ACM F9 |--------------->| | 6879 |<---------------| | | 6880 | One Way Voice | | | 6881 |<===============| | | 6882 | Busy Tone | | | 6883 |<===============| | | 6884 | REL(16) F10 | | | 6885 |--------------->| | | 6886 | RLC F11 | | | 6887 |<---------------| | | 6888 | | | | 6890 In this scenario, User A calls User B through Network Gateway NGW1 6891 and Proxy 1. The call is routed to User B by Proxy 1. The call is 6892 rejected by the User B client. NGW 1 sets up a two way voice path to 6893 User A and plays busy tone. The caller then disconnects 6895 NGW 1 plays the busy tone since the IAM (F1) indicates the 6896 interworking is present. In scenario 5.2.2, with no interworking, 6897 the busy indication is carried in the REL Cause value and is 6898 generated locally instead. 6900 Again, note that for ETSI or ITU ISUP, a CONnect message would be 6901 sent instead of the Answer Message. 6903 Message Details 6905 F1 IAM User A -> NGW 1 6907 IAM 6908 CgPN=314-555-1111,NPI=E.164,NOA=National 6909 CdPN=972-555-2222,NPI=E.164,NOA=National 6910 Interworking=encountered 6911 F2 INVITE NGW1 -> Proxy 1 6913 INVITE sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 6914 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6915 Max-Forwards: 70 6916 From: ;tag=7643kals 6917 To: 6918 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6919 CSeq: 1 INVITE 6920 Contact: 6921 Content-Type: application/sdp 6922 Content-Length: 141 6924 v=0 6925 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6926 s=- 6927 c=IN IP4 192.168.255.101 6928 t=0 0 6929 m=audio 3456 RTP/AVP 0 6930 a=rtpmap:0 PCMU/8000 6932 /* Proxy 1 uses a Location Service function to determine a route for 6933 +19725552222. The call is then forwarded to User B. */ 6935 F3 INVITE Proxy 1 -> User B 6937 INVITE UserB@biloxi.com SIP/2.0 6938 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6939 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6940 ;received=192.168.255.101 6941 Max-Forwards: 69 6942 Record-Route: 6943 From: ;tag=7643kals 6944 To: 6945 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6946 CSeq: 1 INVITE 6947 Contact: 6948 Content-Type: application/sdp 6949 Content-Length: 141 6951 v=0 6952 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 6953 s=- 6954 c=IN IP4 192.168.255.101 6955 t=0 0 6956 m=audio 3456 RTP/AVP 0 6957 a=rtpmap:0 PCMU/8000 6959 F4 100 Trying User B -> Proxy 1 6960 SIP/2.0 100 Trying 6961 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6962 ;received=192.168.255.111 6963 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6964 ;received=192.168.255.101 6965 From: ;tag=7643kals 6966 To: 6967 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6968 CSeq: 1 INVITE 6969 Content-Length: 0 6971 F5 600 Busy Everywhere User B -> Proxy 1 6973 SIP/2.0 600 Busy Everywhere 6974 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6975 ;received=192.168.255.111 6976 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6977 ;received=192.168.255.101 6978 From: ;tag=7643kals 6979 To: ;tag=314159 6980 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6981 CSeq: 1 INVITE 6982 Content-Length: 0 6984 F6 ACK Proxy 1 -> User B 6986 ACK UserB@biloxi.com SIP/2.0 6987 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 6988 Max-Forwards: 70 6989 From: ;tag=7643kals 6990 To: ;tag=314159 6991 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 6992 CSeq: 1 ACK 6993 Content-Length: 0 6995 F7 600 Busy Everywhere Proxy 1 -> NGW 1 6997 SIP/2.0 600 Busy Everywhere 6998 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 6999 ;received=192.168.255.101 7000 From: ;tag=7643kals 7001 To: ;tag=314159 7002 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7003 CSeq: 1 INVITE 7004 Content-Length: 0 7006 F8 ACK NGW 1 -> Proxy 1 7007 ACK sip:+19725552222@ngw1.atlanta.com;user=phone SIP/2.0 7008 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7009 Max-Forwards: 70 7010 From: ;tag=7643kals 7011 To: ;tag=314159 7012 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7013 CSeq: 1 ACK 7014 Content-Length: 0 7016 F9 ACM NGW 1 -> User A 7018 ACM 7020 /* A one way speech path is established between NGW 1 and User A. */ 7022 /* Call Released after User A hangs up. */ 7024 F10 REL User A -> NGW 1 7026 REL 7027 CauseCode=16 7029 F11 RLC NGW 1 -> User A 7031 RLC 7033 5.2.4 Unsuccessful PSTN->SIP, ACM timeout 7035 Switch A NGW 1 Proxy 1 User B 7036 | | | | 7037 | IAM F1 | | | 7038 |--------------->| INVITE F2 | | 7039 | |--------------->| INVITE F3 | 7040 | | 100 F4 |--------------->| 7041 | |<---------------| | 7042 | | | INVITE F5 | 7043 | | |--------------->| 7044 | | | INVITE F6 | 7045 | | |--------------->| 7046 | | | INVITE F7 | 7047 | | |--------------->| 7048 | | | INVITE F8 | 7049 | | |--------------->| 7050 | | | INVITE F9 | 7051 | | |--------------->| 7052 | REL F10 | | | 7053 |--------------->| | | 7054 | RLC F11 | | | 7055 |<---------------| | | 7056 | | CANCEL F12 | | 7057 | |--------------->| | 7058 | | 200 F13 | | 7059 | |<---------------| | 7061 User A calls User B through NGW 1 and Proxy 1. Proxy 1 re-sends the 7062 INVITE after the expiration of SIP timer T1 without receiving any 7063 response from User B. User B never responds with 180 Ringing or any 7064 other response (it is reachable but unresponsive). After the 7065 expiration of a timer, User A's network disconnects the call by 7066 sending a Release message REL. The Gateway maps this to a CANCEL. 7067 Message Details 7069 F1 IAM User A -> NGW 1 7071 IAM 7072 CgPN=314-555-1111,NPI=E.164,NOA=National 7073 CdPN=972-555-2222,NPI=E.164,NOA=National 7075 F2 INVITE A -> Proxy 1 7077 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 7078 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7079 Max-Forwards: 70 7080 From: ;tag=7643kals 7081 To: 7082 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7083 CSeq: 1 INVITE 7084 Contact: 7085 Content-Type: application/sdp 7086 Content-Length: 141 7088 v=0 7089 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7090 s=- 7091 c=IN IP4 192.168.255.101 7092 t=0 0 7093 m=audio 3456 RTP/AVP 0 7094 a=rtpmap:0 PCMU/8000 7096 /* Proxy 1 uses a Location Service function to determine a route for 7097 +19725552222. The call is then forwarded to User B. */ 7099 F3 INVITE Proxy 1 -> User B 7101 INVITE sip:UserB@biloxi.com SIP/2.0 7102 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7103 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7104 ;received=192.168.255.101 7105 Max-Forwards: 69 7106 Record-Route: 7107 From: ;tag=7643kals 7108 To: 7109 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7110 CSeq: 1 INVITE 7111 Contact: 7112 Content-Type: application/sdp 7113 Content-Length: 141 7115 v=0 7116 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7117 c c=IN IP4 192.168.255.101 7118 t=0 0 7119 m=audio 3456 RTP/AVP 0 7120 a=rtpmap:0 PCMU/8000 7122 F4 100 Trying Proxy 1 -> NGW 1 7124 SIP/2.0 100 Trying 7125 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7126 ;received=192.168.255.101 7127 From: ;tag=7643kals 7128 To: 7129 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7130 CSeq: 1 INVITE 7131 Content-Length: 0 7133 F5 INVITE Proxy 1 -> User B 7134 Same as Message F3 7136 F6 INVITE Proxy 1 -> User B 7138 Same as Message F3 7140 F7 INVITE Proxy 1 -> User B 7142 Same as Message F3 7144 F8 INVITE Proxy 1 -> User B 7146 Same as Message F3 7148 F9 INVITE Proxy 1 -> User B 7150 Same as Message F3 7152 /* Timer expires in User A's access network. */ 7154 F10 REL User A -> NGW 1 7156 REL 7157 CauseCode=16 Normal 7159 F11 RLC NGW 1 -> User A 7161 RLC 7163 F12 CANCEL NGW 1 -> Proxy 1 7165 CANCEL sip:+19725552222@ss11.atlanta.com;user=phone SIP/2.0 7166 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7167 Max-Forwards: 70 7168 From: ;tag=7643kals 7169 To: 7170 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7171 CSeq: 1 CANCEL 7172 Content-Length: 0 7174 F13 200 OK Proxy 1 -> NGW 1 7176 SIP/2.0 200 OK 7177 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7178 ;received=192.168.255.101 7179 From: ;tag=7643kals 7180 To: 7181 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7182 CSeq: 1 CANCEL 7183 Content-Length: 0 7185 5.2.5 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy 7187 Switch A NGW 1 Stateless Proxy 1 User B 7188 | | | | 7189 | IAM F1 | | | 7190 |--------------->| INVITE F2 | | 7191 | |--------------->| INVITE F3 | 7192 | | INVITE F4 |--------------->| 7193 | |--------------->| INVITE F5 | 7194 | | INVITE F6 |--------------->| 7195 | |--------------->| INVITE F7 | 7196 | | INVITE F8 |--------------->| 7197 | |--------------->| INVITE F9 | 7198 | | INVITE F10 |--------------->| 7199 | |--------------->| INVITE F11 | 7200 | | INVITE F12 |--------------->| 7201 | |--------------->| INVITE F13 | 7202 | | |--------------->| 7203 | REL F14 | | | 7204 |--------------->| | | 7205 | RLC F15 | | | 7206 |<---------------| | | 7208 In this scenario, User A calls User B through NGW 1 and Proxy 1. 7209 Since Proxy 1 is stateless (it does not send a 100 Trying response), 7210 NGW 1 re-sends the INVITE message after the expiration of 7211 SIP timer T1. User B does not respond with 180 Ringing. User A's 7212 network disconnects the call with a release REL (CauseCode=102 7213 Timeout). 7215 Message Details 7217 F1 IAM User A -> NGW 1 7219 IAM 7220 CgPN=314-555-1111,NPI=E.164,NOA=National 7221 CdPN=972-555-2222,NPI=E.164,NOA=National 7223 F2 INVITE NGW 1 -> Proxy 1 7225 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 7226 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7227 Max-Forwards: 70 7228 From: ;tag=7643kals 7229 To: 7230 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7231 CSeq: 1 INVITE 7232 Contact: 7233 Content-Type: application/sdp 7234 Content-Length: 141 7236 v=0 7237 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7238 s=- 7239 c=IN IP4 192.168.255.101 7240 t=0 0 7241 m=audio 3456 RTP/AVP 0 7242 a=rtpmap:0 PCMU/8000 7244 /* Proxy 1 uses a Location Service function to determine a route for 7245 +19725552222. The call is then forwarded to User B. */ 7247 F3 INVITE Proxy 1 -> User B 7249 INVITE sip:UserB@biloxi.com SIP/2.0 7250 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7251 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7252 ;received=192.168.255.201 7253 Max-Forwards: 69 7254 From: ;tag=7643kals 7255 To: 7256 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7257 CSeq: 1 INVITE 7258 Contact: 7259 Content-Type: application/sdp 7260 Content-Length: 141 7262 v=0 7263 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7264 s=- 7265 c=IN IP4 192.168.255.101 7266 t=0 0 7267 m=audio 3456 RTP/AVP 0 7268 a=rtpmap:0 PCMU/8000 7270 F4 INVITE NGW 1 -> Proxy 1 7272 Same as Message F2 7274 F5 INVITE Proxy 1 -> User B 7276 Same as Message F3 7278 F6 INVITE NGW 1 -> Proxy 1 7280 Same as Message F2 7281 F7 INVITE Proxy 1 -> User B 7283 Same as Message F3 7285 F8 INVITE NGW 1 -> Proxy 1 7287 Same as Message F2 7289 F9 INVITE Proxy 1 -> User B 7291 Same as Message F3 7293 F10 INVITE NGW 1 -> Proxy 1 7295 Same as Message F2 7297 F11 INVITE Proxy 1 -> User B 7299 Same as Message F3 7301 F12 INVITE NGW 1 -> Proxy 1 7303 Same as Message F2 7305 F13 INVITE Proxy 1 -> User B 7307 Same as Message F3 7309 /* A timer expires in User A's access network. */ 7311 F14 REL User A -> NGW 1 7313 REL 7314 CauseCode=102 Timeout 7316 F15 RLC NGW 1 -> User A 7318 RLC 7320 5.2.6 Unsuccessful PSTN->SIP, Caller Abandonment 7322 Switch A NGW 1 Proxy 1 User B 7323 | | | | 7324 | IAM F1 | | | 7325 |--------------->| INVITE F2 | | 7326 | |--------------->| INVITE F3 | 7327 | | 100 F4 |--------------->| 7328 | |<---------------| | 7329 | | | 180 F5 | 7330 | | 180 F6 |<---------------| 7331 | ACM F7 |<---------------| | 7332 |<---------------| | | 7333 | One Way Voice | | | 7334 |<===============| | | 7335 | Ringing Tone | | | 7336 |<===============| | | 7337 | | | | 7338 | REL F8 | | | 7339 |--------------->| | | 7340 | RLC F9 | | | 7341 |<---------------| CANCEL F10 | | 7342 | |--------------->| | 7343 | | 200 F11 | | 7344 | |<---------------| | 7345 | | | CANCEL F12 | 7346 | | |--------------->| 7347 | | | 200 F13 | 7348 | | |<---------------| 7349 | | | 487 F14 | 7350 | | |<---------------| 7351 | | | ACK F15 | 7352 | | 487 F16 |--------------->| 7353 | |<---------------| | 7354 | | ACK F17 | | 7355 | |--------------->| | 7356 | | | | 7358 In this scenario, User A calls User B through NGW 1 and Proxy 1. 7359 User B does not respond with 200 OK. NGW 1 plays ringing tone since 7360 the ACM indicates that interworking has been encountered. User A 7361 disconnects the call with a Release message REL which is mapped by 7362 NGW 1 to a CANCEL. Note that if User B had sent a 200 OK response 7363 after the REL, NGW 1 would have sent an ACK then a BYE to properly 7364 terminate the call. 7366 Message Details 7368 F1 IAM User A -> NGW 1 7369 IAM 7370 CgPN=314-555-1111,NPI=E.164,NOA=National 7371 CdPN=972-555-2222,NPI=E.164,NOA=National 7373 F2 INVITE A -> Proxy 1 7375 INVITE sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 7376 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7377 Max-Forwards: 70 7378 From: ;tag=7643kals 7379 To: 7380 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7381 CSeq: 1 INVITE 7382 Contact: 7383 Content-Type: application/sdp 7384 Content-Length: 141 7386 v=0 7387 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7388 s=- 7389 c=IN IP4 192.168.255.101 7390 t=0 0 7391 m=audio 3456 RTP/AVP 0 7392 a=rtpmap:0 PCMU/8000 7394 /* Proxy 1 uses a Location Service function to determine a route for 7395 +19725552222. The call is then forwarded to User B. */ 7397 F3 INVITE Proxy 1 -> User B 7399 INVITE sip:UserB@biloxi.com SIP/2.0 7400 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7401 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7402 ;received=192.168.255.101 7403 Max-Forwards: 69 7404 Record-Route: 7405 From: ;tag=7643kals 7406 To: 7407 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7408 CSeq: 1 INVITE 7409 Contact: 7410 Content-Type: application/sdp 7411 Content-Length: 141 7413 v=0 7414 o=GW 2890844527 2890844527 IN IP4 ngw1.atlanta.com 7415 s=- 7416 c=IN IP4 192.168.255.101 7417 t=0 0 7418 m=audio 3456 RTP/AVP 0 7419 a=rtpmap:0 PCMU/8000 7421 F4 100 Trying User B -> Proxy 1 7423 SIP/2.0 100 Trying 7424 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7425 ;received=192.168.255.111 7426 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7427 ;received=192.168.255.201 7428 From: ;tag=7643kals 7429 To: 7430 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7431 CSeq: 1 INVITE 7432 Content-Length: 0 7434 F5 180 Ringing User B -> Proxy 1 7436 SIP/2.0 180 Ringing 7437 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7438 ;received=192.168.255.111 7439 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7440 ;received=192.168.255.101 7441 Record-Route: 7442 From: ;tag=7643kals 7443 To: ;tag=314159 7444 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7445 CSeq: 1 INVITE 7446 Contact: 7447 Content-Length: 0 7449 F6 180 Ringing Proxy 1 -> NGW 1 7451 SIP/2.0 180 Ringing 7452 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7453 ;received=192.168.255.101 7454 Record-Route: 7455 From: ;tag=7643kals 7456 To: ;tag=314159 7457 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7458 CSeq: 1 INVITE 7459 Contact: 7460 Content-Length: 0 7462 F7 ACM NGW 1 -> User A 7464 ACM 7465 /* User A hangs up */ 7467 F8 REL User A -> NGW 1 7469 REL 7470 CauseCode=16 Normal 7472 F9 RLC NGW 1 -> User A 7474 RLC 7476 F10 CANCEL NGW 1 -> Proxy 1 7478 CANCEL sip:+19725552222@ss1.atlanta.com;user=phone SIP/2.0 7479 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7480 Max-Forwards: 70 7481 From: ;tag=7643kals 7482 To: 7483 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7484 CSeq: 1 CANCEL 7485 Content-Length: 0 7487 F11 200 OK Proxy 1 -> NGW 1 7489 SIP/2.0 200 OK 7490 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7491 ;received=192.168.255.101 7492 From: ;tag=7643kals 7493 To: 7494 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7495 CSeq: 1 CANCEL 7496 Content-Length: 0 7498 F12 CANCEL Proxy 1 -> User B 7500 CANCEL sip:UserB@biloxi.com SIP/2.0 7501 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7502 Max-Forwards: 70 7503 From: ;tag=7643kals 7504 To: 7505 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7506 CSeq: 1 CANCEL 7507 Content-Length: 0 7509 F13 200 OK User B -> Proxy 1 7510 SIP/2.0 200 OK 7511 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7512 ;received=192.168.255.111 7513 From: ;tag=7643kals 7514 To: 7515 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7516 CSeq: 1 CANCEL 7517 Content-Length: 0 7519 F14 487 Request Terminated User B -> Proxy 1 7521 SIP/2.0 487 Request Terminated 7522 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7523 ;received=192.168.255.111 7524 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7525 ;received=192.168.255.101 7526 From: ;tag=7643kals 7527 To: ;tag=314159 7528 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7529 CSeq: 1 INVITE 7530 Content-Length: 0 7532 F15 ACK Proxy 1 -> User B 7534 ACK sip:UserB@biloxi.com SIP/2.0 7535 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7536 Max-Forwards: 70 7537 From: ;tag=7643kals 7538 To: ;tag=314159 7539 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7540 CSeq: 1 ACK 7541 Content-Length: 0 7543 F16 487 Request Terminated Proxy 1 -> NGW 1 7545 SIP/2.0 487 Request Terminated 7546 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7547 ;received=192.168.255.101 7548 From: ;tag=7643kals 7549 To: ;tag=314159 7550 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7551 CSeq: 1 INVITE 7552 Content-Length: 0 7554 F17 ACK NGW 1 -> Proxy 1 7556 ACK sip:+19725552222@ss11.atlanta.com;user=phone SIP/2.0 7557 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7558 Max-Forwards: 70 7559 From: ;tag=7643kals 7560 To: ;tag=314159 7561 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.atlanta.com 7562 CSeq: 1 ACK 7563 Content-Length: 0 7565 6 Gateway to Gateway Dialing via SIP Network 7567 In these scenarios, both the caller and the called party are in the 7568 telephone network, either normal PSTN subscribers or PBX extensions. 7569 The calls route through two Gateways and at least one SIP Proxy 7570 Server. The Proxy Server performs the authentication and location of 7571 the Gateways. 7573 Again it is noted that the intent of this call flows document is not 7574 to provide a detailed parameter level mapping of SIP to PSTN 7575 protocols. For information on SIP to ISUP mapping, the reader is 7576 referred to other references [SIP-ISUP]. 7578 6.1 Success Scenarios 7580 In these scenarios, the call is successfully completed between the 7581 two Gateways allowing the PSTN or PBX users to communicate. The 183 7582 Session Progress response is used to indicate in-band alerting may 7583 flow from the called party telephone switch to the caller. 7585 6.1.1 Successful ISUP PSTN to ISUP PSTN call 7587 Switch A NGW 1 Proxy 1 GW 2 Switch C 7588 | | | | | 7589 | IAM F1 | | | | 7590 |------------->| | | | 7591 | | INVITE F2 | | | 7592 | |------------->| INVITE F3 | | 7593 | | |------------->| IAM F4 | 7594 | | | |------------->| 7595 | | | | ACM F5 | 7596 | | | 183 F6 |<-------------| 7597 | | 183 F7 |<-------------| | 7598 | ACM F8 |<-------------| | | 7599 |<-------------| | | | 7600 | One Way Voice| Two Way RTP Media | One Way Voice| 7601 |<=============|<===========================>|<=============| 7602 | | | | ANM F9 | 7603 | | | 200 F10 |<-------------| 7604 | | 200 F11 |<-------------| | 7605 | ANM F12 |<-------------| | | 7606 |<-------------| | | | 7607 | | ACK F13 | | | 7608 | |------------->| ACK F14 | | 7609 | | |------------->| | 7610 |Both Way Voice| Both Way RTP Media |Both Way Voice| 7611 |<=============|<===========================>|<=============| 7612 | | | | REL F15 | 7613 | | | |<-------------| 7614 | | | BYE F16 | | 7615 | | BYE F18 |<-------------| RLC F17 | 7616 | |<-------------| |------------->| 7617 | | | | | 7618 | | 200 F19 | | | 7619 | |------------->| 200 F20 | | 7620 | | |------------->| | 7621 | REL F21 | | | | 7622 |<-------------| | | | 7623 | RLC F22 | | | | 7624 |------------->| | | | 7625 | | | | | 7627 In this scenario, User A in the PSTN calls User C who is an extension 7628 on a PBX. User A's telephone switch signals via SS7 to the Network 7629 Gateway NGW 1, while User C's PBX signals via SS7 with the 7630 Gateway GW 2. The CdPN and CgPN are mapped by GW1 into SIP URIs and 7631 placed in the To and From headers. Proxy 1 looks up the dialed 7632 digits in the Request-URI and maps the digits to the PBX extension of 7633 User C which is served by GW 2. The Proxy in F3 uses the host 7634 portion of the Request-URI to identify what private dialing plan is 7635 being referenced. The INVITE is then forwarded to GW 2 for call 7636 completion. An early media path is established end-to-end so that 7637 User A can hear the ringing tone generated by PBX C. 7639 User C answers the call and the media path is cut through in both 7640 directions. User B hangs up terminating the call. 7642 Message Details 7644 F1 IAM Switch A -> NGW 1 7646 IAM 7647 CgPN=314-555-1111,NPI=E.164,NOA=National 7648 CdPN=918-555-3333,NPI=E.164,NOA=National 7650 F2 INVITE NGW 1 -> Proxy 1 7652 INVITE sip:+19185553333@ss1.atlanta.com;user=phone SIP/2.0 7653 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7654 Max-Forwards: 70 7655 From: ;tag=7643kals 7656 To: 7657 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7658 CSeq: 1 INVITE 7659 Contact: 7660 Content-Type: application/sdp 7661 Content-Length: 141 7663 v=0 7664 o=GW 2890844526 2890844526 IN IP4 gw1.atlanta.com 7665 s=- 7666 c=IN IP4 192.168.255.101 7667 t=0 0 7668 m=audio 49172 RTP/AVP 0 7669 a=rtpmap:0 PCMU/8000 7671 /* Proxy 1 consults Location Service and translates the dialed number 7672 to a private number in the Request-URI*/ 7674 F3 INVITE Proxy 1 -> GW 2 7676 INVITE sip:4443333@gw2.atlanta.com SIP/2.0 7677 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7678 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKwqwee65 7679 ;received=192.168.255.101 7680 Max-Forwards: 69 7681 Record-Route: 7682 From: ;tag=7643kals 7683 To: 7684 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7685 CSeq: 1 INVITE 7686 Contact: 7687 Content-Type: application/sdp 7688 Content-Length: 141 7690 v=0 7691 o=GW 2890844526 2890844526 IN IP4 ngw1.atlanta.com 7692 s=- 7693 c=IN IP4 192.168.255.101 7694 t=0 0 7695 m=audio 49172 RTP/AVP 0 7696 a=rtpmap:0 PCMU/8000 7698 F4 IAM GW 2 -> Switch C 7700 IAM 7701 CgPN=314-555-1111,NPI=E.164,NOA=National 7702 CdPN=444-3333,NPI=Private,NOA=Subscriber 7704 F5 ACM Switch C -> GW 2 7706 ACM 7708 /* Based on the ACM message, GW 2 returns a 183 response. In-band 7709 call progress indications are sent to User A through NGW 1. */ 7711 F6 183 Session Progress GW 2 -> Proxy 1 7713 SIP/2.0 183 Session Progress 7714 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7715 ;received=192.168.255.111 7716 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7717 ;received=192.168.255.101 7718 Record-Route: 7719 From: ;tag=7643kals 7720 To: ;tag=314159 7721 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7722 CSeq: 1 INVITE 7723 Contact: 7724 Content-Type: application/sdp 7725 Content-Length: 149 7727 v=0 7728 o=GW 987654321 987654321 IN IP4 gw2.atlanta.com 7729 s=- 7730 c=IN IP4 192.168.255.202 7731 t=0 0 7732 m=audio 14918 RTP/AVP 0 7733 a=rtpmap:0 PCMU/8000 7734 F7 183 Session Progress Proxy 1 -> GW 1 7736 SIP/2.0 183 Session Progress 7737 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7738 ;received=192.168.255.101 7739 Record-Route: 7740 From: ;tag=7643kals 7741 To: ;tag=314159 7742 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7743 CSeq: 1 INVITE 7744 Contact: 7745 Content-Type: application/sdp 7746 Content-Length: 149 7748 v=0 7749 o=GW 987654321 987654321 IN IP4 gw2.atlanta.com 7750 s=- 7751 c=IN IP4 192.168.255.202 7752 t=0 0 7753 m=audio 14918 RTP/AVP 0 7754 a=rtpmap:0 PCMU/8000 7756 /* NGW 1 receives packets from GW 2 with encoded ringback, tones or 7757 other audio. NGW 1 decodes this and places it on the originating 7758 trunk. */ 7760 F8 ACM NGW 1 -> Switch A 7762 ACM 7764 /* User B answers */ 7766 F9 ANM Switch C -> GW 2 7768 ANM 7770 F10 200 OK GW 2 -> Proxy 1 7772 SIP/2.0 200 OK 7773 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7774 ;received=192.168.255.111 7775 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7776 ;received=192.168.255.101 7777 Record-Route: 7778 From: ;tag=7643kals 7779 To: ;tag=314159 7780 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7781 CSeq: 1 INVITE 7782 Contact: 7783 Content-Type: application/sdp 7784 Content-Length: 149 7786 v=0 7787 o=GW 987654321 987654321 IN IP4 gw2.atlanta.com 7788 s=- 7789 c=IN IP4 192.168.255.202 7790 t=0 0 7791 m=audio 14918 RTP/AVP 0 7792 a=rtpmap:0 PCMU/8000 7794 F11 200 OK Proxy 1 -> NGW 1 7796 SIP/2.0 200 OK 7797 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7798 ;received=192.168.255.101 7799 Record-Route: 7800 From: ;tag=7643kals 7801 To: ;tag=314159 7802 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7803 CSeq: 1 INVITE 7804 Contact: 7805 Content-Type: application/sdp 7806 Content-Length: 149 7808 v=0 7809 o=GW 987654321 987654321 IN IP4 gw2.atlanta.com 7810 s=- 7811 c=IN IP4 192.168.255.202 7812 t=0 0 7813 m=audio 14918 RTP/AVP 0 7814 a=rtpmap:0 PCMU/8000 7816 F12 ANM NGW 1 -> Switch A 7818 ANM 7820 F13 ACK NGW 1 -> Proxy 1 7822 ACK sip:4443333@gw2.atlanta.com SIP/2.0 7823 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7824 Max-Forwards: 70 7825 Route: 7826 From: ;tag=7643kals 7827 To: ;tag=314159 7828 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 7829 CSeq: 1 ACK 7830 Content-Length: 0 7832 F14 ACK Proxy 1 -> GW 2 7834 ACK sip:4443333@gw2.atlanta.com SIP/2.0 7835 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7836 Via: SIP/2.0/UDP ngw1.atlanta.com:5060;branch=z9hG4bKlueha2 7837 ;received=192.168.255.101 7838 Max-Forwards: 69 7839 From: ;tag=7643kals 7840 To: ;tag=314159 7841 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7842 CSeq: 1 ACK 7843 Content-Length: 0 7845 /* RTP streams are established between NGW 1 and GW 2. */ 7847 /* User B Hangs Up with User A. */ 7849 F15 REL Switch C -> GW 2 7851 REL 7852 CauseCode=16 Normal 7854 F16 BYE GW 2 -> Proxy 1 7856 BYE sip:+13145551111@ngw1.atlanta.com;user=phone SIP/2.0 7857 Via: SIP/2.0/UDP gw2.atlanta.com:5060;branch=z9hG4bKtexx6 7858 Max-Forwards: 70 7859 Route: 7860 From: ;tag=314159 7861 To: ;tag=7643kals 7862 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7863 CSeq: 4 BYE 7864 Content-Length: 0 7866 F17 RLC GW 2 -> Switch C 7868 RLC 7870 F18 BYE Proxy 1 -> NGW 1 7872 BYE sip:+13145551111@ngw1.atlanta.com;user=phone SIP/2.0 7873 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7874 Via: SIP/2.0/UDP gw2.atlanta.com:5060;branch=z9hG4bKtexx6 7875 ;received=192.168.255.202 7877 Max-Forwards: 69 7878 From: ;tag=314159 7879 To: ;tag=7643kals 7880 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7881 CSeq: 4 BYE 7882 Content-Length: 0 7884 F19 200 OK NGW 1 -> Proxy 1 7886 SIP/2.0 200 OK 7887 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 7888 ;received=192.168.255.111 7889 Via: SIP/2.0/UDP gw2.atlanta.com:5060;branch=z9hG4bKtexx6 7890 ;received=192.168.255.202 7891 From: ;tag=314159 7892 To: ;tag=7643kals 7893 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7894 CSeq: 4 BYE 7895 Content-Length: 0 7897 F20 200 OK Proxy 1 -> GW 2 7899 SIP/2.0 200 OK 7900 Via: SIP/2.0/UDP gw2.atlanta.com:5060;branch=z9hG4bKtexx6 7901 ;received=192.168.255.202 7902 From: ;tag=314159 7903 To: ;tag=7643kals 7904 Call-ID: 2xTb9vxSit55XU7p8@ngw1.atlanta.com 7905 CSeq: 4 BYE 7906 Content-Length: 0 7908 F21 REL Switch C -> GW 2 7910 REL 7911 CauseCode=16 Normal 7913 F22 RLC GW 2 -> Switch C 7915 RLC 7917 6.1.2 Successful FGB PBX to ISDN PBX call with overflow 7919 PBX A GW 1 Proxy 1 GW 2 GW 3 PBX C 7920 | | | | | | 7921 | Seizure | | | | | 7922 |----------->| | | | | 7923 | Wink | | | | | 7924 |<-----------| | | | | 7925 |MF Digits F1| | | | | 7926 |----------->| | | | | 7927 | | INVITE F2 | | | | 7928 | |----------->| INVITE F3 | | | 7929 | | |----------->| | | 7930 | | | 503 F4 | | | 7931 | | |<-----------| | | 7932 | | | ACK F5 | | | 7933 | | |----------->| | | 7934 | | | INVITE F6 | | 7935 | | |------------------------>| SETUP F7 | 7936 | | | 100 F8 |----------->| 7937 | | |<------------------------|CALL PROC F9| 7938 | | | |<-----------| 7939 | | | | ALERT F10 | 7940 | | | 180 F11 |<-----------| 7941 | | 180 F12 |<------------------------| | 7942 | |<-----------| | | 7943 | Ringtone | | |OneWay Voice| 7944 |<===========| | |<===========| 7945 | | | | CONNect F13| 7946 | | | 200 F14 |<-----------| 7947 | | 200 F15 |<------------------------| | 7948 | Seizure |<-----------| | | 7949 |<-----------| ACK F16 | | | 7950 | |----------->| ACK F17 | | 7951 | | |------------------------>|CONN ACK F18| 7952 | | | |----------->| 7953 |BothWayVoice| Both Way RTP Media |BothWayVoice| 7954 |<==========>|<====================================>|<==========>| 7955 | | | | DISC F19 | 7956 | | | |<-----------| 7957 | | | BYE F20 | | 7958 | | BYE F21 |<------------------------| REL F22 | 7959 |Seiz Removal|<-----------| |----------->| 7960 |<-----------| 200 F23 | | | 7961 |Seiz Removal|----------->| 200 F24 | | 7962 |----------->| |------------------------>| REL COM F25| 7963 | | | |<-----------| 7964 | | | | | 7966 PBX User A calls PBX User C via Gateway GW 1 and Proxy 1. During the 7967 attempt to reach User C via GW 2, an error is encountered - Proxy 1 7968 receives a 503 Service Unavailable (F4) response to the forwarded 7969 INVITE. This could be due to all circuits being busy, or some other 7970 outage at GW 2. Proxy 1 recognizes the error and uses an alternative 7971 route via GW 3 to terminate the call. From there, the call proceeds 7972 normally with User C answering the call. The call is terminated when 7973 User C hangs up. 7975 Message Details 7977 PBX A -> GW 1 7979 Seizure 7981 GW 1 -> PBX A 7983 Wink 7985 F1 MF Digits PBX A -> GW 1 7987 KP 444 3333 ST 7989 F2 INVITE GW 1 -> Proxy 1 7991 INVITE sip:4443333@ss1.atlanta.com SIP/2.0 7992 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 7993 Max-Forwards: 70 7994 From: ;tag=63412s 7995 To: 7996 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 7997 CSeq: 1 INVITE 7998 Contact: 7999 Content-Type: application/sdp 8000 Content-Length: 141 8002 v=0 8003 o=GW 2890844526 2890844526 IN IP4 gw1.atlanta.com 8004 s=- 8005 c=IN IP4 192.168.255.201 8006 t=0 0 8007 m=audio 49172 RTP/AVP 0 8008 a=rtpmap:0 PCMU/8000 8010 /* Proxy 1 uses a Location Service function to determine where B is 8011 located. Response is returned listing alternative routes, GW2 and 8012 GW3, which are then tried sequentially. */ 8013 F3 INVITE Proxy 1 -> GW 2 8015 INVITE sip:4443333@gw2.atlanta.com SIP/2.0 8016 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 8017 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8018 ;received=192.168.255.201 8019 Max-Forwards: 69 8020 Record-Route: 8021 From: ;tag=63412s 8022 To: 8023 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8024 CSeq: 1 INVITE 8025 Contact: 8026 Content-Type: application/sdp 8027 Content-Length: 141 8029 v=0 8030 o=GW 2890844526 2890844526 IN IP4 gw1.atlanta.com 8031 s=- 8032 c=IN IP4 192.168.255.201 8033 t=0 0 8034 m=audio 49172 RTP/AVP 0 8035 a=rtpmap:0 PCMU/8000 8037 F4 503 Service Unavailable GW 2 -> Proxy 1 8039 SIP/2.0 503 Service Unavailable 8040 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 8041 ;received=192.168.255.111 8042 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8043 ;received=192.168.255.201 8044 From: ;tag=63412s 8045 To: ;tag=314159 8046 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8047 CSeq: 1 INVITE 8048 Content-Length: 0 8050 F5 ACK Proxy 1 -> GW 2 8052 ACK sip:4443333@ss1.atlanta.com SIP/2.0 8053 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.1 8054 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8055 ;received=192.168.255.201 8056 Max-Forward: 70 8057 From: ;tag=63412s 8058 To: ;tag=314159 8059 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8060 CSeq: 1 ACK 8061 Content-Length: 0 8062 F6 INVITE Proxy 1 -> GW 3 8064 INVITE sip:+19185553333@gw3.atlanta.com;user=phone SIP/2.0 8065 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8066 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8067 ;received=192.168.255.201 8068 Max-Forwards: 69 8069 Record-Route: 8070 From: ;tag=63412s 8071 To: 8072 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8073 CSeq: 1 INVITE 8074 Contact: 8075 Content-Type: application/sdp 8076 Content-Length: 141 8078 v=0 8079 o=GW 2890844526 2890844526 IN IP4 gw1.atlanta.com 8080 s=- 8081 c=IN IP4 192.168.255.201 8082 t=0 0 8083 m=audio 49172 RTP/AVP 0 8084 a=rtpmap:0 PCMU/8000 8086 F7 SETUP GW 3 -> PBX C 8088 Protocol discriminator=Q.931 8089 Message type=SETUP 8090 Bearer capability: Information transfer capability=0 (Speech) or 16 8091 (3.1 kHz audio) 8092 Channel identification=Preferred or exclusive B-channel 8093 Progress indicator=1 (Call is not end-to-end ISDN; further call 8094 progress information may be available inband) 8095 Called party number: 8096 Type of number and numbering plan ID=33 (National number in ISDN 8097 numbering plan) 8098 Digits=918-555-3333 8100 F8 100 Trying GW 3 -> Proxy 1 8102 SIP/2.0 100 Trying 8103 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8104 ;received=192.168.255.201 8105 From: ;tag=63412s 8106 To: 8107 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8108 CSeq: 1 INVITE 8109 Content-Length: 0 8110 F9 CALL PROCeeding PBX C -> GW 3 8112 Protocol discriminator=Q.931 8113 Message type=CALL PROC 8115 F10 ALERT PBX C -> GW 3 8117 Protocol discriminator=Q.931 8118 Message type=PROG 8120 /* Based on ALERT message, GW 3 returns a 180 response. */ 8122 F11 180 Ringing GW 3 -> Proxy 1 8124 SIP/2.0 180 Ringing 8125 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8126 ;received=192.168.255.111 8127 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8128 ;received=192.168.255.201 8129 Record-Route: 8130 From: ;tag=63412s 8131 To: ;tag=123456789 8132 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8133 CSeq: 1 INVITE 8134 Contact: 8135 Content-Length: 0 8137 F12 180 Ringing Proxy 1 -> GW 1 8139 SIP/2.0 180 Ringing 8140 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8141 ;received=192.168.255.201 8142 Record-Route: 8143 From: ;tag=63412s 8144 To: ;tag=123456789 8145 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8146 CSeq: 1 INVITE 8147 Contact: 8148 Content-Length: 0 8150 F13 CONNect PBX C -> GW 3 8152 Protocol discriminator=Q.931 8153 Message type=CONN 8155 F14 200 OK GW 3 -> Proxy 1 8156 SIP/2.0 200 OK 8157 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8158 ;received=192.168.255.111 8159 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8160 ;received=192.168.255.201 8161 Record-Route: 8162 From: ;tag=63412s 8163 To: ;tag=123456789 8164 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8165 CSeq: 1 INVITE 8166 Contact: 8167 Content-Type: application/sdp 8168 Content-Length: 149 8170 v=0 8171 o=GW 987654321 987654321 IN IP4 gw3.atlanta.com 8172 s=- 8173 c=IN IP4 192.168.255.203 8174 t=0 0 8175 m=audio 14918 RTP/AVP 0 8176 a=rtpmap:0 PCMU/8000 8178 F15 200 OK Proxy 1 -> GW 1 8180 SIP/2.0 200 OK 8181 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8182 ;received=192.168.255.201 8183 Record-Route: 8184 From: ;tag=63412s 8185 To: ;tag=123456789 8186 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8187 CSeq: 1 INVITE 8188 Contact: 8189 Content-Type: application/sdp 8190 Content-Length: 149 8192 v=0 8193 o=GW 987654321 987654321 IN IP4 gw3.atlanta.com 8194 s=- 8195 c=IN IP4 192.168.255.203 8196 t=0 0 8197 m=audio 14918 RTP/AVP 0 8198 a=rtpmap:0 PCMU/8000 8200 GW 1 -> PBX A 8202 Seizure 8203 F16 ACK GW 1 -> Proxy 1 8205 ACK sip:+19185553333@gw3.atlanta.com;user=phone SIP/2.0 8206 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8207 Max-Forwards: 70 8208 Route: 8209 From: ;tag=63412s 8210 To: ;tag=123456789 8211 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8212 CSeq: 1 ACK 8213 Content-Length: 0 8215 F17 ACK Proxy 1 -> GW 3 8217 ACK sip:+19185553333@gw3.atlanta.com;user=phone SIP/2.0 8218 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8219 Via: SIP/2.0/UDP gw1.atlanta.com:5060;branch=z9hG4bKwqwee65 8220 ;received=192.168.255.201 8221 Max-Forwards: 69 8222 From: ;tag=63412s 8223 To: ;tag=123456789 8224 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8225 CSeq: 1 ACK 8226 Content-Length: 0 8228 F18 CONNect ACK GW 3 -> PBX C 8230 Protocol discriminator=Q.931 8231 Message type=CONN ACK 8233 /* RTP streams are established between GW 1 and GW 3. */ 8235 /* User B Hangs Up with User A. */ 8237 F19 DISConnect PBX C -> GW 3 8239 Protocol discriminator=Q.931 8240 Message type=DISC 8241 Cause=16 (Normal clearing) 8243 F20 BYE GW 3 -> Proxy 1 8245 BYE sip:551313@gw1.atlanta.com SIP/2.0 8246 Via: SIP/2.0/UDP gw3.atlanta.com:5060;branch=z9hG4bKkdjuwq 8247 Max-Forwards: 70 8248 Route: 8249 From: ;tag=123456789 8250 To: ;tag=63412s 8251 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8252 CSeq: 1 BYE 8253 Content-Length: 0 8255 F21 BYE Proxy 1 -> GW 1 8257 BYE sip:551313@gw1.atlanta.com SIP/2.0 8258 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8259 Via: SIP/2.0/UDP gw3.atlanta.com:5060;branch=z9hG4bKkdjuwq 8260 ;received=192.168.255.203 8261 Max-Forwards: 69 8262 From: ;tag=123456789 8263 To: ;tag=63412s 8264 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8265 CSeq: 1 BYE 8266 Content-Length: 0 8268 GW 1 -> PBX A 8270 Seizure removal 8272 F22 RELease GW 3 -> PBX C 8274 Protocol discriminator=Q.931 8275 Message type=REL 8277 F23 200 OK GW 1 -> Proxy 1 8279 SIP/2.0 200 OK 8280 Via: SIP/2.0/UDP ss1.atlanta.com:5060;branch=z9hG4bK2d4790.2 8281 ;received=192.168.255.111 8282 Via: SIP/2.0/UDP gw3.atlanta.com:5060;branch=z9hG4bKkdjuwq 8283 ;received=192.168.255.203 8284 From: ;tag=123456789 8285 To: ;tag=63412s 8286 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8287 CSeq: 1 BYE 8288 Content-Length: 0 8290 F24 200 OK Proxy 1 -> GW 3 8292 SIP/2.0 200 OK 8293 Via: SIP/2.0/UDP gw3.atlanta.com:5060;branch=z9hG4bKkdjuwq 8294 ;received=192.168.255.203 8295 From: ;tag=123456789 8296 To: ;tag=63412s 8297 Call-ID: 2xTb9vxSit55XU7p8@gw1.atlanta.com 8298 CSeq: 1 BYE 8299 Content-Length: 0 8301 F25 RELease COMplete PBX C -> GW 3 8303 Protocol discriminator=Q.931 8304 Message type=REL COM 8306 PBX A -> GW 1 8308 Seizure removal 8310 7 SIP Test Messages 8312 The files in here are test messages for SIP servers to exercise 8313 various functions. They have been used in SIPit 8314 interoperablity events. All messages shown here are valid, unless 8315 otherwise noted. The correct behavior of servers and clients is also 8316 described. 8318 7.1 INVITE Parser Torture Test Message 8320 This message is a correctly formatting SIP message. It contains: 8322 line folding all over 8323 escaped characters within quotes 8324 LWS between colons, semicolons, headers, and other fields 8325 both comma separated and separate listing of headers 8326 mix or short and long form for the same header 8327 unknown header field 8328 unusual header ordering 8329 unknown parameters of a known header 8331 Proxies should forward message and clients should respond as to a 8332 normal INVITE message. 8334 Message Details 8336 INVITE sip:vivekg@chair.dnrc.bell-labs.com SIP/2.0 8337 TO : 8338 sip:vivekg@chair.dnrc.bell-labs.com ; tag = 1918181833n 8339 From : "J Rosenberg \\\"" 8340 ; 8341 tag = 98asjd8 8342 Max-Forwards: 6 8343 Call-ID 8344 : 0ha0isndaksdj@10.1.1.1 8345 cseq: 8 8346 INVITE 8347 Via : SIP / 2.0 8348 /UDP 8349 135.180.130.133;branch=z9hG4bKkdjuw 8350 Subject : 8351 NewFangledHeader: newfangled value 8352 more newfangled value 8353 Content-Type: application/sdp 8354 v: SIP / 2.0 / TCP 1192.168.156.222 ; 8355 branch = 9ikj8 , 8356 SIP / 2.0 / UDP 192.168.255.111 ; hidden 8357 m:"Quoted string \"\"" ; newparam = 8358 newvalue ; 8359 secondparam = secondvalue ; q = 0.33, 8360 tel:4443322 8362 v=0 8363 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8364 s=- 8365 c=IN IP4 135.180.130.88 8366 t=0 0 8367 m=audio 492170 RTP/AVP 0 12 8368 m=video 3227 RTP/AVP 31 8369 a=rtpmap:31 LPC 8371 7.2 INVITE with Proxy-Require and Require 8373 This message tests support for Proxy-Require and Require. It is a 8374 request that contains both headers, listing new features. 8376 Proxies and clients should respond with a 420 Bad Extension, and an 8377 Unsupported header listing these features. 8379 Message Details 8381 INVITE sip:user@company.com SIP/2.0 8382 To: sip:j_user@company.com 8383 From: sip:caller@university.edu;tag=242etr 8384 Max-Forward: 6 8385 Call-ID: 0ha0isndaksdj@10.1.1.1 8386 Require: newfeature1, newfeature2 8387 Proxy-Require: newfeature3, newfeature4 8388 CSeq: 8 INVITE 8389 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8391 7.3 INVITE with Unknown Schemes in URIs 8393 This message contains unknown schemes in the Request URI, To, From 8394 and Contact headers of a request. 8396 A server should probably return a not found error; but other 8397 behaviors are acceptable. 8399 Message Details 8401 INVITE name:John_Smith SIP/2.0 8402 To: isbn:2983792873 8403 From: ;tag=3234233 8404 Call-ID: 0ha0isndaksdj@10.1.2.3 8405 CSeq: 8 INVITE 8406 Max-Forward: 7 8407 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 8408 Content-Type: application/sdp 8409 v=0 8410 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8411 s=- 8412 c=IN IP4 135.180.130.88 8413 t=0 0 8414 m=audio 492170 RTP/AVP 0 12 8415 m=video 3227 RTP/AVP 31 8416 a=rtpmap:31 LPC 8418 7.4 REGISTER with Y2038 Test 8420 This message is a registration request with an expiration year of 8421 2040. This makes sure that a server doesn't crash on seeing a date 8422 past Y2038. 8424 The correct behavior is probably to limit the lifetime to some 8425 configured maximum. 8427 Message Details 8429 REGISTER sip:company.com SIP/2.0 8430 To: sip:user@company.com 8431 From: sip:user@company.com;tag=3411345 8432 Max-Forwards: 8 8433 Contact: sip:user@host.company.com 8434 Call-ID: 0ha0isndaksdj@10.0.0.1 8435 CSeq: 8 REGISTER 8436 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8437 Expires: Sat, 01 Dec 2040 16:00:00 GMT 8439 7.5 INVITE with inconsistent Accept and message body 8441 This is a UAS test. It is a request that includes an Accept header 8442 without SDP. The UAS should respond with an error. 8444 Message Details 8446 INVITE sip:user@company.com SIP/2.0 8447 To: sip:j_user@company.com 8448 From: sip:caller@university.edu;tag=234 8449 Max-Forwards: 5 8450 Call-ID: 0ha0isndaksdj@10.0.0.1 8451 Accept: text/newformat 8452 CSeq: 8 INVITE 8453 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8454 Content-Type: application/sdp 8455 v=0 8456 c=IN IP4 135.180.130.88 8457 m=audio 492170 RTP/AVP 0 12 8458 m=video 3227 RTP/AVP 31 8459 a=rtpmap:31 LPC 8461 7.6 INVITE with non-SDP message body 8463 This is a test of a user agent server. It is a request that includes 8464 a body of a non-SDP type. 8466 The user agent server should respond with an error. 8468 Message Details 8470 INVITE sip:user@comapny.com SIP/2.0 8471 To: sip:j.user@company.com 8472 From: sip:caller@university.edu;tag=8 8473 Max-Forwards: 70 8474 Call-ID: 0ha0isndaksdj@10.0.0.1 8475 CSeq: 8 INVITE 8476 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8477 Content-Type: application/newformat 8479 8483 7.7 Unknown Method Message 8485 This request message contains a new unknown method, NEWMETHOD. 8487 A proxy should forward this using the same retransmission rules as 8488 BYE. A UAS should reject it with an error, and list the available 8489 methods in the response. 8491 Message Details 8493 NEWMETHOD sip:user@comapny.com SIP/2.0 8494 To: sip:j.user@company.com 8495 From: sip:caller@university.edu;tag=34525 8496 Max-Forwards: 6 8497 Call-ID: 0ha0isndaksdj@10.0.0.1 8498 CSeq: 8 NEWMETHOD 8499 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8500 Content-Type: application/sdp 8501 v=0 8502 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8503 c=IN IP4 135.180.130.88 8504 m=audio 492170 RTP/AVP 0 12 8505 m=video 3227 RTP/AVP 31 8506 a=rtpmap:31 LPC 8508 7.8 Unknown Method with CSeq Error 8510 This message is nearly identical to the Unknown Method message. It is 8511 a request with a new unknown method, but with a CSeq method tag which 8512 does not match. 8514 A proxy should either respond with an error, or correct the method 8515 tag. The user agent should reject it with an error, and list the 8516 available methods in the response. 8518 Message Details 8520 NEWMETHOD sip:user@comapny.com SIP/2.0 8521 To: sip:j.user@company.com 8522 From: sip:caller@university.edu;tag=23411413 8523 Max-Forwards: 3 8524 Call-ID: 0ha0isndaksdj@10.0.1.1 8525 CSeq: 8 INVITE 8526 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8527 Content-Type: application/sdp 8529 v=0 8530 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8531 s=- 8532 c=IN IP4 135.180.130.88 8533 t=0 0 8534 m=audio 492170 RTP/AVP 0 12 8535 m=video 3227 RTP/AVP 31 8536 a=rtpmap:31 LPC 8538 7.9 REGISTER with Unknown Authorization Scheme 8540 This message is a REGISTER request with an unknown authorization 8541 scheme. 8543 The server should do something reasonable, such as rejecting the 8544 request. 8546 Message Details 8548 REGISTER sip:company.com SIP/2.0 8549 To: sip:j.user@company.com 8550 From: sip:j.user@company.com;tag=87321hj23128 8551 Max-Forwards: 8 8552 Call-ID: 0ha0isndaksdj@10.0.1.1 8553 CSeq: 8 REGISTER 8554 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8555 Authorization: Super-PGP ajsohdaosdh0asyhdaind08yasdknasd09asidhas0d8 8557 7.10 Multiple SIP Request in a Single Message 8559 This message contains two requests, separated by a bunch of 8560 whitespace. Since the message exceeds the length indicated in the 8561 Content-Length header, the message should be rejected. (Multiple SIP 8562 requests per UDP packet are no longer allowed.) 8564 Message Details 8566 REGISTER sip:company.com SIP/2.0 8567 To: sip:j.user@company.com 8568 From: sip:j.user@company.com;tag=43251j3j324 8569 Max-Forwards: 8 8570 Call-ID: 0ha0isndaksdj@10.0.2.2 8571 Contact: sip:j.user@host.company.com 8572 CSeq: 8 REGISTER 8573 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8574 Content-Length: 0 8576 INVITE sip:joe@company.com SIP/2.0 8577 To: sip:joe@company.com 8578 From: sip:caller@university.edu;tag=141334 8579 Max-Forwards: 8 8580 Call-ID: 0ha0isnda977644900765@10.0.0.1 8581 CSeq: 8 INVITE 8582 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8583 Content-Type: application/sdp 8585 v=0 8586 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8587 s=- 8588 c=IN IP4 135.180.130.88 8589 t=0 0 8590 m=audio 492170 RTP/AVP 0 12 8591 m =video 3227 RTP/AVP 31 8592 a=rtpmap:31 LPC 8594 7.11 INVITE missing Required Headers 8596 This message contains no Call-ID, From, or To header. 8598 The server should not crash, and ideally should respond with an 8599 error. 8601 Message Details 8603 INVITE sip:user@company.com SIP/2.0 8604 CSeq: 0 INVITE 8605 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8606 Content-Type: application/sdp 8608 v=0 8609 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8610 s=- 8611 c=IN IP4 135.180.130.88 8612 t=0 0 8613 m=audio 492170 RTP/AVP 0 12 8614 m=video 3227 RTP/AVP 31 8615 a=rtpmap:31 LPC 8617 7.12 INVITE with Duplicate Required Headers 8619 The message contains a request with an extra Call-ID and To field. 8621 The server should not crash, and should ideally respond with an 8622 error. 8624 Message Details 8626 INVITE sip:user@company.com SIP/2.0 8627 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8628 Max-Forwards: 70 8629 CSeq: 0 INVITE 8630 Call-ID: 98asdh@10.1.1.1 8631 Call-ID: 98asdh@10.1.1.2 8632 From: sip:caller@university.edu;tag=3413415 8633 From: sip:caller@organization.org 8634 To: sip:user@company.com 8635 Content-Type: application/sdp 8637 v=0 8638 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8639 s=- 8640 c=IN IP4 135.180.130.88 8641 t=0 0 8642 m=audio 492170 RTP/AVP 0 12 8643 m=video 3227 RTP/AVP 31 8644 a=rtpmap:31 LPC 8646 7.13 INVITE with Illegal Expires Header 8648 This message contains an Expires header which has illegal values for 8649 a number of components, but otherwise is syntactically correct. 8651 Message Details 8653 INVITE sip:user@company.com SIP/2.0 8654 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8655 Max-Forwards: 88 8656 CSeq: 0 INVITE 8657 Call-ID: 98asdh@10.1.1.2 8658 Expires: Thu, 44 Dec 19999 16:00:00 EDT 8659 From: sip:caller@university.edu;tag=3651 8660 To: sip:user@company.com 8661 Content-Type: application/sdp 8663 v=0 8664 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8665 s=- 8666 c=IN IP4 135.180.130.88 8667 t=0 0 8668 m=audio 492170 RTP/AVP 0 12 8669 m=video 3227 RTP/AVP 31 8670 a=rtpmap:31 LPC 8672 7.14 200 OK Response with Broadcast Via Header 8674 This message is a response with a 2nd Via header of 255.255.255.255. 8676 On receiving this response, the top Via header is stripped and the 8677 packet forwarded. Since the next address is the broadcast address, 8678 it causes the packet to be broadcast onto the network. A smart server 8679 should ignore packets with 2nd Via headers that are 255.255.255.255 8680 or 127.0.0.1. At the very least it should not crash. 8682 Message Details 8683 SIP/2.0 200 OK 8684 Via: SIP/2.0/UDP 135.180.130.57;branch=0 8685 Via: SIP/2.0/UDP 255.255.255.255;branch=0 8686 Max-Forwards: 70 8687 Call-ID: 0384840201@10.1.1.1 8688 CSeq: 0 INVITE 8689 From: sip:user@company.com;tag=11141343 8690 To: sip:user@university.edu;tag=2229 8691 Content-Type: application/sdp 8693 v=0 8694 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8695 s=- 8696 c=IN IP4 224.2.17.12/127 8697 t=0 0 8698 m=audio 492170 RTP/AVP 0 12 8699 m=video 3227 RTP/AVP 31 8700 a=rtpmap:31 LPC 8702 7.15 INVITE with Invalid Via and Contact Headers 8704 This is a request with the Via and Contact headers incorrect. They 8705 contain additional semicolons and commas without parameters or 8706 values. 8708 The server should respond with a Bad Request error. 8710 Message Details 8712 INVITE sip:user@company.com SIP/2.0 8713 To: sip:j.user@company.com 8714 From: sip:caller@university.edu;tag=134161461246 8715 Max-Forwards: 7 8716 Call-ID: 0ha0isndaksdj@10.0.0.1 8717 CSeq: 8 INVITE 8718 Via: SIP/2.0/UDP 135.180.130.133;;,; 8719 Contact: "" <> ;,"Joe" ;;,,;; 8720 Content-Type: application/sdp 8722 v=0 8723 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8724 s=- 8725 c=IN IP4 135.180.130.88 8726 t=0 0 8727 m=audio 492170 RTP/AVP 0 12 8728 m=video 3227 RTP/AVP 31 8729 a=rtpmap:31 LPC 8731 7.16 INVITE with Incorrect Content-Length Header 8733 This is a request message with a Content Length that is much larger 8734 than the length of the body. 8736 When sent UDP, the server should respond with an error. With TCP, 8737 there's not much you can do but wait... 8739 Message Details 8741 INVITE sip:user@company.com SIP/2.0 8742 Max-Forwards: 80 8743 To: sip:j.user@company.com 8744 From: sip:caller@university.edu;tag=93942939o2 8745 Call-ID: 0ha0isndaksdj@10.0.0.1 8746 CSeq: 8 INVITE 8747 Via: SIP/2.0/UDP 135.180.130.133 8748 Content-Type: application/sdp 8749 Content-Length: 9999 8751 v=0 8752 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8753 s=- 8754 c=IN IP4 135.180.130.88 8755 t=0 0 8756 m=audio 492170 RTP/AVP 0 12 8757 m=video 3227 RTP/AVP 31 8758 a=rtpmap:31 LPC 8760 7.17 INVITE with Invalid Value for Content-Length 8762 This is a request message with a negative value for Content-Length. 8764 The server should respond with an error. 8766 Message Details 8768 INVITE sip:user@company.com SIP/2.0 8769 Max-Forwards: 254 8770 To: sip:j.user@company.com 8771 From: sip:caller@university.edu;tag=3 8772 Call-ID: 0ha0isndaksdj@10.0.0.1 8773 CSeq: 8 INVITE 8774 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8775 Content-Type: application/sdp 8776 Content-Length: -999 8777 v=0 8778 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8779 s=- 8780 c=IN IP4 135.180.130.88 8781 t=0 0 8782 m=audio 492170 RTP/AVP 0 12 8783 m=video 3227 RTP/AVP 31 8784 a=rtpmap:31 LPC 8786 7.18 INVITE with Garbage after Message Body 8788 This is a request message with garbage after the end of the SDP 8789 included in the body. 8791 The servers should reject the request as the body is longer than the 8792 Content-Length. 8794 Message Details 8796 INVITE sip:user@company.com SIP/2.0 8797 To: sip:j.user@company.com 8798 From: sip:caller@university.edu;tag=3223 8799 Max-Forwards: 7 8800 Call-ID: 0ha0isndaksdj@10.0.0.1 8801 CSeq: 8 INVITE 8802 Via: SIP/2.0/UDP 135.180.130.133 8803 Content-Type: application/sdp 8804 Content-Length: 138 8806 v=0 8807 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8808 s=- 8809 c=IN IP4 135.180.130.88 8810 t=0 0 8811 m=audio 492170 RTP/AVP 0 12 8812 m=video 3227 RTP/AVP 31 8813 a=rtpmap:31 LPC 8814 asdpasd08asdsdk:;;asd 8815 a0sdjhg8a0''...'';;;; 8817 7.19 INVITE with Error in Display Name in To Header 8819 This is a request with an unterminated quote in the display name of 8820 the To field. 8822 The server can either return an error, or proxy it if it is 8823 successful parsing without the terminating quote. 8825 Message Details 8827 INVITE sip:user@company.com SIP/2.0 8828 To: "Mr. J. User 8829 From: sip:caller@university.edu;tag=93334 8830 Max-Forwards: 10 8831 Call-ID: 0ha0isndaksdj@10.0.0.1 8832 CSeq: 8 INVITE 8833 Via: SIP/2.0/UDP 135.180.130.133:5050;branch=z9hG4bKkdjuw 8834 Content-Type: application/sdp 8835 Content-Length: 138 8837 v=0 8838 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8839 s=- 8840 c=IN IP4 135.180.130.88 8841 t=0 0 8842 m=audio 492170 RTP/AVP 0 12 8843 m=video 3227 RTP/AVP 31 8844 a=rtpmap:31 LPC 8846 7.20 INVITE with a Semicolon-Separated Parameter in the "user" Part 8848 This is an INVITE request with a semicolon-separated parameter in 8849 the "user" part. 8851 Outbound proxies should direct it appropriately. 8853 Message Details 8855 INVITE sip:user;par=u%40h.com@company.com SIP/2.0 8856 To: sip:j_user@company.com 8857 From: sip:caller@university.edu;tag=33242 8858 Max-Forwards: 3 8859 Call-ID: 0ha0isndaksdj@10.1.1.1 8860 CSeq: 8 INVITE 8861 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 8863 7.21 INVITE with Illegal Enclosing of Request-URI in "<>" 8865 This INVITE is illegal because the Request-URI has been enclosed 8866 within in "<>". 8868 An intelligent server may be able to deal with this and fix up 8869 athe Request-URI if acting as a Proxy. If not it should respond 400 8870 with an appropriate reason phrase. 8872 Message Details 8874 INVITE SIP/2.0 8875 To: sip:user@company.com 8876 From: sip:caller@university.edu;tag=39291 8877 Max-Forwards: 23 8878 Call-ID: 1@10.0.0.1 8879 CSeq: 1 INVITE 8880 Via: SIP/2.0/UDP 135.180.130.133 8881 Content-Type: application/sdp 8882 Content-Length: 174 8884 v=0 8885 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8886 s=- 8887 c=IN IP4 135.180.130.88 8888 t=3149328700 0 8889 m=audio 492170 RTP/AVP 0 12 8890 m=video 3227 RTP/AVP 31 8891 a=rtpmap:31 LPC 8893 7.22 INVITE with Illegal LWS within Elements of Request-URI 8895 This INVITE has illegal LWS within the SIP URI. 8897 An intelligent server may be able to deal with this and fix up 8898 the Request-URI if acting as a Proxy. If not it should respond 400 8899 with an appropriate reason phrase. 8901 Message Details 8903 INVITE sip:user@company.com; transport=udp SIP/2.0 8904 To: sip:user@company.com 8905 From: sip:caller@university.edu;tag=231413434 8906 Max-Forwards: 5 8907 Call-ID: 2@10.0.0.1 8908 CSeq: 1 INVITE 8909 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 8910 Content-Type: application/sdp 8911 Content-Length: 174 8913 v=0 8914 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8915 s=- 8916 c=IN IP4 135.180.130.88 8917 t=3149328700 0 8918 m=audio 492170 RTP/AVP 0 12 8919 m=video 3227 RTP/AVP 31 8920 a=rtpmap:31 LPC 8922 7.23 INVITE with illegal >1 SP between elements of Request URI 8924 This INVITE has illegal >1 SP between elements of the Request-URI. 8926 An intelligent server may be able to deal with this and fix up 8927 the Request-URI if acting as a Proxy. If not it should respond 400 8928 with an appropriate reason phrase. 8930 Message Details 8932 INVITE sip:user@company.com SIP/2.0 8933 Max-Forwards: 8 8934 To: sip:user@company.com 8935 From: sip:caller@university.edu;tag=8814 8936 Call-ID: 3@10.0.0.1 8937 CSeq: 1 INVITE 8938 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 8939 Content-Type: application/sdp 8940 Content-Length: 174 8942 v=0 8943 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8944 s=- 8945 c=IN IP4 135.180.130.88 8946 t=0 0 8947 m=audio 492170 RTP/AVP 0 12 8948 m=video 3227 RTP/AVP 31 8949 a=rtpmap:31 LPC 8951 7.24 INVITE with a legal SIP URI containing escaped characters 8953 This INVITE is legal and has a Request-URI with a SIP URI containing 8954 escaped characters. 8956 Message Details 8958 INVITE sip:sip%3Auser%40example.com@company.com;other-param=summit 8959 SIP/2.0 8960 To: sip:user@company.com 8961 From: sip:caller@university.edu;tag=938 8962 Max-Forwards: 87 8963 Call-ID: 4@10.0.0.1 8964 CSeq: 1 INVITE 8965 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 8966 Content-Type: application/sdp 8967 Content-Length: 174 8969 v=0 8970 o=mhandley 29739 7272939 IN IP4 126.5.4.3 8971 s=- 8972 c=IN IP4 135.180.130.88 8973 t=0 0 8974 m=audio 492170 RTP/AVP 0 12 8975 m=video 3227 RTP/AVP 31 8976 a=rtpmap:31 LPC 8978 7.25 INVITE with the illegal use of escaped headers in Request-URI 8980 This INVITE is illegal as it the Request-URI contains a SIP URI 8981 containing 8982 escaped headers. 8984 An intelligent server may be liberal enough to accept this. A server 8985 acting as a proxy should remove the escaped header before processing. 8987 Message Details 8989 INVITE sip:user@company.com?Route=%3Csip:sip.example.com%3E SIP/2.0 8990 To: sip:user@company.com 8991 From: sip:caller@university.edu;tag=341518 8992 Max-Forwards: 7 8993 Call-ID: 5@10.0.0.1 8994 CSeq: 1 INVITE 8995 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 8996 Content-Type: application/sdp 8997 Content-Length: 174 8999 v=0 9000 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9001 s=- 9002 c=IN IP4 135.180.130.88 9003 t=0 0 9004 m=audio 492170 RTP/AVP 0 12 9005 m=video 3227 RTP/AVP 31 9006 a=rtpmap:31 LPC 9008 7.26 INVITE containing an unknown scheme in the Request URI 9009 This INVITE contains an unknown URI scheme in the Request-URI. 9011 A server should reject this message with a 400 response plus an 9012 appropriate reason phrase despite being able to understand the 9013 To header as a SIP URI. 9015 Message Details 9017 INVITE name:user SIP/2.0 9018 To: sip:user@company.com 9019 From: sip:caller@university.edu;tag=384 9020 Max-Forwards: 3 9021 Call-ID: 6@10.0.0.1 9022 CSeq: 1 INVITE 9023 Via: SIP/2.0/UDP 135.180.130.133;branch=z9hG4bKkdjuw 9024 Content-Type: application/sdp 9025 Content-Length: 174 9027 v=0 9028 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9029 s=- 9030 c=IN IP4 135.180.130.88 9031 t=0 0 9032 m=audio 492170 RTP/AVP 0 12 9033 m=video 3227 RTP/AVP 31 9034 a=rtpmap:31 LPC 9036 7.27 OPTIONS with no LWS between display name and < 9038 This OPTIONS request is legal despite there being no LWS between 9039 the display name and < in the From header. 9041 Message Details 9043 OPTIONS sip:user@company.com SIP/2.0 9044 To: sip:user@company.com 9045 From: "caller";tag=323 9046 Max-Forwards: 70 9047 Call-ID: 1234abcd@10.0.0.1 9048 CSeq: 1 OPTIONS 9049 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9051 7.28 OPTIONS with extran LWS between display name and < 9053 This OPTIONS request is legal despite there being extra LWS between 9054 the display name and < in the From header. 9056 Message Details 9058 OPTIONS sip:user@company.com SIP/2.0 9059 To: sip:user@company.com 9060 From: "caller" ;tag=32 9061 Max-Forwards: 70 9062 Call-ID: 1234abcd@10.0.0.1 9063 CSeq: 2 OPTIONS 9064 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9066 7.29 INVITE with an illegal SIP Date format. 9068 This INVITE is illegal as it contains a non GMT time zone in the SIP 9069 Date header. 9071 An intelligent server may be able to fix this up and correct the time 9072 to GMT. Alternatively this message may illicit a 400 response with an 9073 appropriate reason phrase. 9075 Message Details 9077 INVITE sip:user@company.com SIP/2.0 9078 To: sip:user@company.com 9079 From: sip:caller@university.edu;tag=2 9080 Max-Forwards: 70 9081 Call-ID: 7@10.0.0.1 9082 CSeq: 1 INVITE 9083 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9084 Date: Fri, 01 Jan 2010 16:00:00 EST 9085 Content-Type: application/sdp 9086 Content-Length: 174 9088 v=0 9089 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9090 s=- 9091 c=IN IP4 135.180.130.88 9092 t=0 0 9093 m=audio 492170 RTP/AVP 0 12 9094 m=video 3227 RTP/AVP 31 9095 a=rtpmap:31 LPC 9097 7.30 INVITE with Passed Expries Time 9099 This is a legal INVITE but the message content has long since 9100 expired. 9102 A server should respond 408 (Timeout). 9104 Message Details 9106 INVITE sip:user@company.com SIP/2.0 9107 To: sip:user@company.com 9108 From: sip:caller@university.edu;tag=3843 9109 Max-Forwards: 70 9110 Call-ID: 8@10.0.0.1 9111 CSeq: 1 INVITE 9112 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9113 Expires: Thu, 01 Dec 1994 16:00:00 GMT 9114 Content-Type: application/sdp 9115 Content-Length: 174 9117 v=0 9118 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9119 s=- 9120 c=IN IP4 135.180.130.88 9121 t=0 0 9122 m=audio 492170 RTP/AVP 0 12 9123 m=video 3227 RTP/AVP 31 9124 a=rtpmap:31 LPC 9126 7.31 INVITE with Max-Forwards Set to Zero 9128 This is a legal SIP request with the Max-Forwards header set to zero. 9130 A proxy or gateway should not forward the request and respond 483 9131 (Too Many Hops). 9133 Message Details 9135 INVITE sip:user@company.com SIP/2.0 9136 To: sip:user@company.com 9137 From: sip:caller@university.edu;tag=3ghsd41 9138 Call-ID: 9@10.0.0.1 9139 CSeq: 1 INVITE 9140 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9141 Max-Forwards: 0 9142 Content-Type: application/sdp 9143 Content-Length: 174 9145 v=0 9146 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9147 s=- 9148 c=IN IP4 135.180.130.88 9149 t=0 0 9150 m=audio 492170 RTP/AVP 0 12 9151 m=video 3227 RTP/AVP 31 9152 a=rtpmap:31 LPC 9154 7.32 REGISTER with a Escaped Header in a Legal SIP URI of a Contact 9156 This is a legal REGISTER message where the Contact header contains a 9157 SIP URI with an escaped header within it. 9159 Message Details 9161 REGISTER sip:company.com SIP/2.0 9162 To: sip:user@company.com 9163 From: sip:user@company.com;tag=8 9164 Max-Forwards: 70 9165 Contact: sip:user@host.company.com 9166 Call-ID: k345asrl3fdbv@10.0.0.1 9167 CSeq: 1 REGISTER 9168 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9169 Contact: 9171 7.33 REGISTER with a Escaped Header in a Illegal SIP URI of a Contact 9173 This is an illegal message as the REGISTER request contains a SIP 9174 URI with an escaped header but it is not enclosed in <> 9176 A server should respond 400 with an appropriate reason phrase. 9178 Message Details 9180 REGISTER sip:company.com SIP/2.0 9181 To: sip:user@company.com 9182 From: sip:user@company.com;tag=998332 9183 Max-Forwards: 70 9184 Contact: sip:user@host.company.com 9185 Call-ID: k345asrl3fdbv@10.0.0.1 9186 CSeq: 1 REGISTER 9187 Via: SIP/2.0/UDP 135.180.130.133:5060;branch=z9hG4bKkdjuw 9188 Contact: sip:user@example.com?Route=%3Csip:sip.example.com%3E 9190 7.34 INVITE with Long Values in Headers 9192 This is a legal message that contains long values in many headers. 9194 Message Details 9196 INVITE sip:user@company.com SIP/2.0 9197 To: "I have a user name of extreme proportion" 9198 9200 From: sip:caller@university.edu;tag=12481841982424 9201 Call-ID: 9202 kl24ahsd546folnyt2vbak9sad98u23naodiunzds09a3bqw0sdfbsk34poouymnae004 9203 3nsed09mfkvc74bd0cuwnms05dknw87hjpobd76f 9204 CSeq: 1 INVITE 9205 P-My-State: sldkjflzdsfaret0803adgaasd0afds0asdaasd 9206 Via: SIP/2.0/TCP sip33.example.com 9207 Via: SIP/2.0/TCP sip32.example.com 9208 Via: SIP/2.0/TCP sip31.example.com 9209 Via: SIP/2.0/TCP sip30.example.com 9210 Via: SIP/2.0/TCP sip29.example.com 9211 Via: SIP/2.0/TCP sip28.example.com 9212 Via: SIP/2.0/TCP sip27.example.com 9213 Via: SIP/2.0/TCP sip26.example.com 9214 Via: SIP/2.0/TCP sip25.example.com 9215 Via: SIP/2.0/TCP sip24.example.com 9216 Via: SIP/2.0/TCP sip23.example.com 9217 Via: SIP/2.0/TCP sip22.example.com 9218 Via: SIP/2.0/TCP sip21.example.com 9219 Via: SIP/2.0/TCP sip20.example.com 9220 Via: SIP/2.0/TCP sip19.example.com 9221 Via: SIP/2.0/TCP sip18.example.com 9222 Via: SIP/2.0/TCP sip17.example.com 9223 Via: SIP/2.0/TCP sip16.example.com 9224 Via: SIP/2.0/TCP sip15.example.com 9225 Via: SIP/2.0/TCP sip14.example.com 9226 Via: SIP/2.0/TCP sip13.example.com 9227 Via: SIP/2.0/TCP sip12.example.com 9228 Via: SIP/2.0/TCP sip11.example.com 9229 Via: SIP/2.0/TCP sip10.example.com 9230 Via: SIP/2.0/TCP sip9.example.com 9231 Via: SIP/2.0/TCP sip8.example.com 9232 Via: SIP/2.0/TCP sip7.example.com 9233 Via: SIP/2.0/TCP sip6.example.com 9234 Via: SIP/2.0/TCP sip5.example.com 9235 Via: SIP/2.0/TCP sip4.example.com 9236 Via: SIP/2.0/TCP sip3.example.com 9237 Via: SIP/2.0/TCP sip2.example.com 9238 Via: SIP/2.0/TCP sip1.example.com 9239 Via: SIP/2.0/TCP 9240 host.example.com;received=135.180.130.133;branch=C1C3344E2710000000E2 9241 99E568E7potato10potato0potato0 9242 Content-Type: application/sdp 9243 v=0 9244 o=mhandley 29739 7272939 IN IP4 126.5.4.3 9245 s=- 9246 c=IN IP4 135.180.130.88 9247 t=0 0 9248 m=audio 492170 RTP/AVP 0 12 9249 m=video 3227 RTP/AVP 31 9250 a=rtpmap:31 LPC 9252 7.35 OPTIONS with multiple headers. 9254 This is an illegal and badly mangled message. 9256 A server should respond 400 with an appropriate reason phrase if it 9257 can. It may just drop this message. 9259 Message Details 9261 OPTIONS sip:135.180.130.133 SIP/2.0 9262 Via: SIP/2.0/UDP company.com:5604 9263 Max-Forwards: 70 9264 From: sip:iuser@company.com;tag=74345345 9265 To: sip:user@135.180.130.133 9266 Call-ID: 1804928587@company.com 9267 CSeq: 1 OPTIONS 9268 Expires: 0 0l@company.com 9269 To: sip:user@135.180.130.133 9270 Call-ID: 1804928587@company.com 9271 CSeq: 1 OPTIONS 9272 Contact: sip:host.company.com 9273 Expires: 0xpires: 0sip:host.company.com 9274 Expires: 0 9275 Contact: sip:host.company.com 9277 7.36 INVITE with large number of SDP attributes and telephone subscriber 9278 Request-URI 9280 This is a legal message with a large number of SDP attributes and a 9281 long telephone subscriber Request-URI 9283 Message Details 9285 INVITE sip:+19725552222;phone- 9286 context=name%40domain;new=user?%22Route%3a%20X%40Y%3bZ=W%22@gw1.atlan 9287 ta.com;user=phone SIP/2.0 9288 Via: SIP/2.0/UDP iftgw.biloxi.com:5060;branch=z9hG4bKjeefr3 9289 Max-Forwards: 70 9290 From: 9291 ;tag=332lflke 9292 To: sip:+16555552222@ss1.atlanta.com;user=phone 9293 Call-ID: 1717@ift.client.atlanta.com 9294 CSeq: 56 INVITE 9295 Content-Type: application/sdp 9296 Content-Length: 320 9298 v=0 9299 o=faxgw1 2890844527 2890844527 IN IP4 iftgw.biloxi.com 9300 s=- 9301 c=IN IP4 iftmg.biloxi.com 9302 t=0 0 9303 m=image 49172 udptl t38 9304 a=T38FaxVersion:0 9305 a=T38maxBitRate:14400 9306 a=T38FaxFillBitRemoval:0 9307 a=T38FaxTranscodingMMR:0 9308 a=T38FaxTranscodingJBIG:0 9309 a=T38FaxRateManagement:transferredTCF 9310 a=T38FaxMaxBuffer:260 9311 a=T38FaxUdpEC:t38UDPR 9313 7.37 REGISTER with a contact parameter. 9315 This REGISTER contains a contact where the 'user' parameter should be 9316 interpreted as being a contact-param and not a url-param. 9318 The register should succeed but a subsequent retrieval of the 9319 registration must not include "user=phone" as a url-parameter. 9321 Message Details 9323 REGISTER sip:bell-tel.com SIP/2.0 9324 Via: SIP/2.0/UDP saturn.bell-tel.com:5060;branch=z9hG4bKkdjuw 9325 Max-Forwards: 70 9326 From: sip:watson@bell-tel.com;tag=DkfVgjkrtMwaerKKpe 9327 To: sip:watson@bell-tel.com 9328 Call-ID: 70710@saturn.bell-tel.com 9329 CSeq: 2 REGISTER 9330 Contact: sip:+19725552222@gw1.atlanta.com;user=phone 9332 7.38 REGISTER with a url parameter. 9334 This register contains a contact where the 'user'parameter is a url- 9335 param. 9337 The register should succeed and a subsequent retrieval of the 9338 registration must 9339 include "user=phone" as a url-parameter. 9341 Message Details 9343 REGISTER sip:bell-tel.com SIP/2.0 9344 Via: SIP/2.0/UDP saturn.bell-tel.com:5060;branch=z9hG4bKkdjuw 9345 Max-Forwards: 70 9346 From: sip:watson@bell-tel.com;tag=838293 9347 To: sip:watson@bell-tel.com 9348 Call-ID: 70710@saturn.bell-tel.com 9349 CSeq: 3 REGISTER 9350 Contact: 9352 7.39 INVITE with an Unquoted Display Name Containing Multiple Tokens 9354 This is a legal INVITE where the To and From header contain display 9355 names that contain multiple tokens but are unquoted. 9357 Message Details 9359 INVITE sip:t.watson@ieee.org SIP/2.0 9360 Via: SIP/2.0/UDP c.bell-tel.com:5060;branch=z9hG4bKkdjuw 9361 Max-Forwards: 70 9362 From: A. Bell ;tag=459843 9363 To: T. Watson 9364 Call-ID: 31414@c.bell-tel.com 9365 CSeq: 1 INVITE 9367 7.40 INVITE with an Unquoted Display Name Containg Non-Token Characters 9369 This is an illegal invite at the display names in the To and From 9370 headers contain non-token characters but are unquoted. 9372 A server may be intelligent enough to cope with this but may also 9373 return a 400 response with an appropriate reason phrase. 9375 Message Details 9377 INVITE sip:t.watson@ieee.org SIP/2.0 9378 Via: SIP/2.0/UDP c.bell-tel.com:5060;branch=z9hG4bKkdjuw 9379 Max-Forwards: 70 9380 From: Bell, Alexander ;tag=43 9381 To: Watson, Thomas 9382 Call-ID: 31415@c.bell-tel.com 9383 CSeq: 1 INVITE 9385 7.41 INVITE with Unknown (Higher) Protocol Version in Start Line 9387 This is an illegal INVITE as the SIP Protocol version is unknown. 9389 The server should respond to the request with a bad version error. 9391 Message Details 9393 INVITE sip:t.watson@ieee.org SIP/7.0 9394 Via: SIP/2.0/UDP c.bell-tel.com;branch=z9hG4bKkdjuw 9395 Max-Forwards: 70 9396 From: A. Bell ;tag=qweoiqpe 9397 To: T. Watson 9398 Call-ID: 31417@c.bell-tel.com 9399 CSeq: 1 INVITE 9401 7.42 INVITE with RFC2543 syntax 9403 This is a legal message per RFC 2543 which should be accepted by RFC 9404 3261 elements which want to maintain backwards compatibility. 9406 Message Details 9408 INVITE sip:UserB@biloxi.com SIP/2.0 9409 Via: SIP/2.0/UDP iftgw.biloxi.com 9410 From: ;tag=93752 9411 Record-Route: 9412 To: sip:+16505552222@ss1.atlanta.com;user=phone 9413 Call-ID: 1717@ift.client.atlanta.com 9414 CSeq: 56 INVITE 9416 8 Security Considerations 9418 Since this document represents NON NORMATIVE examples of SIP session 9419 establishment and interworking between SIP and the PSTN, the security 9420 considerations in RFC 3261 [RFC3261] and [SIP-ISUP] apply. 9422 9 IANA Considerations 9424 None. 9426 10 Acknowledgements 9428 Thanks to Rohan Mahy, Adam Roach, Gonzalo Camarillo, Cullen Jennings, 9429 and Tom Taylor for their detailed comments during the final final 9430 review. 9432 The authors wish to thank Neil Deason for his additions to the 9433 Torture Test messages and Kundan Singh for performing parser 9434 validation of messages. 9436 The authors wish to thank the following individuals for their 9437 participation in the final review of this call flows document: Aseem 9438 Agarwal, Rafi Assadi, Ben Campbell, Sunitha Kumar, Jon Peterson, Marc 9439 Petit-Huguenin, Vidhi Rastogi, and Bodgey Yin Shaohua. 9441 The authors also wish to thank the following individuals for their 9442 assistance: Jean-Francois Mule, Hemant Agrawal, Henry Sinnreich, 9443 David Devanatham, Joe Pizzimenti, Matt Cannon, John Hearty, the whole 9444 MCI WorldCom IPOP Design team, Scott Orton, Greg Osterhout, Pat 9445 Sollee, Doug Weisenberg, Danny Mistry, Steve McKinnon, and Denise 9446 Ingram, Denise Caballero, Tom Redman, Ilya Slain, Pat Sollee, John 9447 Truetken, and others from MCI WorldCom, 3Com, Cisco, Lucent and 9448 Nortel. 9450 11 References 9452 [RFC3261] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, 9453 J. Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP: 9454 Session Initiation Protocol", Internet Engineering Task Force, 9455 Work in Progress. 9457 [RFC2617] Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., 9458 Leach, P., Luotonen, A. and L. Stewart, "HTTP authentication: 9459 Basic and Digest Access Authentication", RFC 2617, June 1999. 9461 [RFC3264] J.Rosenberg and H.Schulzrinne, "An Offer/Answer Model 9462 with SDP", Internet Engineering Task Force, RFC 3264, April 2002. 9464 [RFC2401] S. Kent, R. Atkinson, "Security Architecture for the 9465 Internet Protocol", RFC 2401, November 1998. 9467 [RFC2246] Dierks, T. and C. Allen, "The TLS Protocol Version 1.0", 9468 RFC 2246, January 1999. 9470 [RFC2806] A. Vaha-Sipila, "URLs for Telephone Calls", Internet Draft, 9471 Internet Engineering Task Force, RFC 2806, April 2000. 9473 [SIP-ISUP] G. Camarillo, "Best Current Practice for ISUP to SIP 9474 Mapping", Internet Draft, Internet Engineering Task Force, 9475 Work in progress. 9477 Author's Addresses 9479 All listed authors actively contributed large amounts of text to this 9480 document. 9482 Alan Johnston 9483 WorldCom 9484 100 South 4th Street 9485 St. Louis, MO 63102 9486 USA 9488 EMail: alan.johnston@wcom.com 9490 Steve Donovan 9491 dynamicsoft, Inc. 9492 5100 Tennyson Parkway 9493 Suite 1200 9494 Plano, Texas 75024 9495 USA 9497 EMail: sdonovan@dynamicsoft.com 9499 Robert Sparks 9500 dynamicsoft, Inc. 9501 5100 Tennyson Parkway 9502 Suite 1200 9503 Plano, Texas 75024 9504 USA 9506 EMail: rsparks@dynamicsoft.com 9508 Chris Cunningham 9509 dynamicsoft, Inc. 9510 5100 Tennyson Parkway 9511 Suite 1200 9512 Plano, Texas 75024 9513 USA 9515 EMail: ccunningham@dynamicsoft.com 9517 Dean Willis 9518 dynamicsoft, Inc. 9519 5100 Tennyson Parkway 9520 Suite 1200 9521 Plano, Texas 75024 9522 USA 9524 Email: dwillis@dynamicsoft.com 9525 Jonathan Rosenberg 9526 dynamicsoft 9527 72 Eagle Rock Ave 9528 East Hanover, NJ 07936 9529 USA 9531 EMail: jdrosen@dynamicsoft.com 9533 Kevin Summers 9534 Sonus 9535 1701 North Collins Blvd, Suite 3000 9536 Richardson, TX 75080 9537 USA 9539 Email: kevin.summers@sonusnet.com 9541 Henning Schulzrinne 9542 Dept. of Computer Science 9543 Columbia University 9544 1214 Amsterdam Avenue 9545 New York, NY 10027 9546 USA 9548 EMail: schulzrinne@cs.columbia.edu 9550 Copyright Notice 9552 "Copyright (C) The Internet Society 2002. All Rights Reserved. 9554 This document and translations of it may be copied and furnished to 9555 others, and derivative works that comment on or otherwise explain it 9556 or assist in its implementation may be prepared, copied, published 9557 and distributed, in whole or in part, without restriction of any 9558 kind, provided that the above copyright notice and this paragraph are 9559 included on all such copies and derivative works. However, this 9560 document itself may not be modified in any way, such as by removing 9561 the copyright notice or references to the Internet Society or other 9562 Internet organizations, except as needed for the purpose of 9563 developing Internet standards in which case the procedures for 9564 copyrights defined in the Internet Standards process must be 9565 followed, or as required to translate it into languages other than 9566 English. 9568 The limited permissions granted above are perpetual and will not be 9569 revoked by the Internet Society or its successors or assigns. 9571 This document and the information contained herein is provided on an 9572 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 9573 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 9574 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 9575 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 9576 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 9578 Acknowledgement 9580 Funding for the RFC Editor function is currently provided by the 9581 Internet Society.