idnits 2.17.1 draft-ietf-sipping-pstn-call-flows-02.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: ---------------------------------------------------------------------------- == No 'Intended status' indicated for this document; assuming Proposed Standard Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack an IANA Considerations section. (See Section 2.2 of https://www.ietf.org/id-info/checklist for how to handle the case when there are no actions for IANA.) -- The document has examples using IPv4 documentation addresses according to RFC6890, but does not use any IPv6 documentation addresses. Maybe there should be IPv6 examples, too? Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == Line 2733 has weird spacing: '...B. Bob prepa...' == The document doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- 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.) -- The document date (April 2003) is 7681 days in the past. Is this intentional? -- 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: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Missing reference section? '1' on line 53 looks like a reference -- Missing reference section? '2' on line 4919 looks like a reference -- Missing reference section? '3' on line 124 looks like a reference -- Missing reference section? '4' on line 4874 looks like a reference -- Missing reference section? '11' on line 113 looks like a reference -- Missing reference section? '5' on line 124 looks like a reference -- Missing reference section? '6' on line 130 looks like a reference -- Missing reference section? '7' on line 156 looks like a reference -- Missing reference section? '8' on line 4905 looks like a reference -- Missing reference section? '9' on line 167 looks like a reference -- Missing reference section? '10' on line 1413 looks like a reference Summary: 2 errors (**), 0 flaws (~~), 4 warnings (==), 15 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SIPPING Working Group A. Johnston 3 Internet Draft WorldCom 4 Document: draft-ietf-sipping-pstn-call-flows-02.txt S. Donovan 5 Expires: October 2003 R. Sparks 6 C. Cunningham 7 dynamicsoft 8 K. Summers 9 Sonus 10 April 2003 12 Session Initiation Protocol PSTN Call Flows 14 Status of this Memo 16 This document is an Internet-Draft and is in full conformance with 17 all provisions of Section 10 of RFC2026. 19 Internet-Drafts are working documents of the Internet Engineering 20 Task Force (IETF), its areas, and its working groups. Note that 21 other groups may also distribute working documents as Internet- 22 Drafts. 24 Internet-Drafts are draft documents valid for a maximum of six months 25 and may be updated, replaced, or obsoleted by other documents at any 26 time. It is inappropriate to use Internet-Drafts as reference 27 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 document contains best current practice examples of Session 37 Initiation Protocol (SIP) call flows showing interworking with the 38 Public Switched Telephone Network (PSTN). Elements in these call 39 flows include SIP User Agents, SIP Proxy Servers, and PSTN Gateways. 40 Scenarios include SIP to PSTN, PSTN to SIP, and PSTN to PSTN via SIP. 41 PSTN telephony protocols are illustrated using ISDN (Integrated 42 Services Digital Network), ISUP (ISDN User Part), and FGB (Feature 43 Group B) circuit associated signaling. PSTN calls are illustrated 44 using global telephone numbers from the PSTN and private extensions 45 served on by a PBX (Private Branch Exchange). Call flow diagrams and 46 message details are shown. 48 Conventions used in this document 50 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 51 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 52 document are to be interpreted as described in RFC-2119 [1]. 54 Table of Contents 56 1. Overview.......................................................2 57 1.1 General Assumptions........................................3 58 1.2 Legend for Message Flows...................................4 59 1.3 SIP Protocol Assumptions...................................5 60 2. SIP to PSTN Dialing............................................6 61 2.1 Successful SIP to ISUP PSTN call...........................7 62 2.2 Successful SIP to ISDN PBX call...........................15 63 2.3 Successful SIP to ISUP PSTN call with overflow............23 64 2.4 Session established using ENUM Query......................32 65 2.5 Unsuccessful SIP to PSTN call: Treatment from PSTN........38 66 2.6 Unsuccessful SIP to PSTN: REL w/Cause from PSTN...........45 67 2.7 Unsuccessful SIP to PSTN: ANM Timeout.....................50 68 3. PSTN to SIP Dialing...........................................56 69 3.1 Successful PSTN to SIP call...............................57 70 3.2 Successful PSTN to SIP call, Fast Answer..................64 71 3.3 Successful PBX to SIP call................................70 72 3.4 Unsuccessful PSTN to SIP REL, SIP error mapped to REL.....77 73 3.5 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL......79 74 3.6 Unsuccessful PSTN->SIP, SIP error interworking to tones...83 75 3.7 Unsuccessful PSTN->SIP, ACM timeout.......................87 76 3.8 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy......91 77 3.9 Unsuccessful PSTN->SIP, Caller Abandonment................95 78 4. PSTN to PSTN Dialing via SIP Network.........................101 79 4.1 Successful ISUP PSTN to ISUP PSTN call...................102 80 4.2 Successful FGB PBX to ISDN PBX call with overflow........110 81 Security Considerations.........................................118 82 Normative References............................................120 83 Informative References..........................................120 84 Acknowledgments.................................................121 85 Author's Addresses..............................................121 87 1. Overview 89 The call flows shown in this document were developed in the design of 90 a SIP IP communications network. They represent an example 91 minimum set of functionality. 93 It is the hope of the authors that this document will be useful for 94 SIP implementers, designers, and protocol researchers alike and will 95 help further the goal of a standard implementation of RFC 3261 [2]. 96 These flows represent carefully checked and working group reviewed 97 scenarios of the most common SIP/PSTN interworking examples as a 98 companion to the specifications. 100 These call flows are based on the current version 2.0 of SIP in 101 RFC 3261 [2] with SDP usage described in RFC 3264 [3]. Other RFCs 102 also comprise the SIP standard but are not used in this set of basic 103 call flows. The SIP/ISUP mapping is based on RFC zzzz [4]. 105 Various PSTN signaling protocols are illustrated in this document: 106 ISDN (Integrated Services Digital Network), ISUP (ISDN User 107 Part) and FGB (Feature Group B) circuit associated signaling. This 108 document shows mainly ANSI ISUP due to its practical origins. 109 However, as used in this document, the usage is virtually identical 110 to the ITU-T International ISUP used as the reference in [4]. 112 Basic SIP call flow examples are contained in a companion document, 113 RFC yyyy [11]. 115 1.1 General Assumptions 117 A number of architecture, network, and protocol assumptions underlie 118 the call flows in this document. Note that these assumptions are not 119 requirements. They are outlined in this section so that they may be 120 taken into consideration and to aid in the understanding of the call 121 flow examples. 123 The authentication of SIP User Agents in these example call flows is 124 performed using SIP Digest as defined in [3] and [5]. 126 Some Proxy Servers in these call flows insert Record-Route headers 127 into requests to ensure that they are in the signaling path for 128 future message exchanges. 130 These flows show TLS, TCP, and UDP for transport. SCTP [6] could 131 also be used. See the discussion in RFC 3261 [2] for details on the 132 transport issues for SIP. 134 The SIP Proxy Server has access to a Location Service and other 135 databases. Information present in the Request-URI and the context 136 (From header) is sufficient to determine to which proxy or gateway 137 the message should be routed. In most cases, a primary and secondary 138 route will be determined in case of Proxy or Gateway failure 139 downstream. 141 Gateways provide tones (ringing, busy, etc) and announcements to the 142 PSTN side based on SIP response messages, or pass along audio in-band 143 tones (ringing, busy tone, etc.) in an early media stream to the SIP 144 side. 146 The interactions between the Proxy and Gateway can be summarized as 147 follows: 149 . The SIP Proxy Server performs digit analysis and lookup and 150 locates the correct gateway. 152 . The SIP Proxy Server performs gateway location based on primary 153 and secondary routing. 155 Telephone numbers are usually represented as SIP URIs. Note that an 156 alternative is the use of the tel URI [7]. 158 This document shows typical examples of SIP/ISUP interworking. 159 Although in the spirit of the SIP-T framework [8], these examples do 160 not represent a complete implementation of the framework. The 161 examples here represent more of a minimal set of examples for very 162 basic SIP to ISUP interworking, rather than the more complex goal of 163 ISUP transparency. In particular, there are NO examples of 164 encapsulated ISUP in this document. If present, these messages would 165 show S/MIME encryption due to the sensitive nature of this 166 information, as discussed in the SIP-T Framework security 167 considerations section. (Note - RFC 3204 [9] contains an example of 168 an INVITE with encapsulated ISUP.) See the Security Considerations 169 section for a more detailed discussion on the security of these call 170 flows. 172 In ISUP, the Calling Party Number is abbreviated as CgPN and the 173 Called Party Number is abbreviated as CdPN. Other abbreviations 174 include Numbering Plan Indicator (NPI) and Nature of Address (NOA). 176 1.2 Legend for Message Flows 178 Dashed lines (---) represent signaling messages that are mandatory to 179 the call scenario. These messages can be SIP or PSTN 180 signaling. The arrow indicates the direction of message flow. 182 Double dashed lines (===) represent media paths between network 183 elements. 185 Messages with parentheses around their name represent optional 186 messages. 188 Messages are identified in the Figures as F1, F2, etc. This 189 references the message details in the list that follows the Figure. 190 Comments in the message details are shown in the following form: 192 /* Comments. */ 194 1.3 SIP Protocol Assumptions 196 This document does not prescribe the flows precisely as they are 197 shown, but rather the flows illustrate the principles for best 198 practice. They are best practices usages (orderings, syntax, 199 selection of features for the purpose, handling of error) of SIP 200 methods, headers and parameters. IMPORTANT: The exact flows here 201 must not be copied as is by an implementer due to specific incorrect 202 characteristics that were introduced into the document for 203 convenience and are listed below. To sum up, the SIP/PSTN call flows 204 represent well-reviewed examples of SIP usage, which are best common 205 practice according to IETF consensus. 207 For simplicity in reading and editing the document, there are a 208 number of differences between some of the examples and actual SIP 209 messages. For example, the SIP Digest responses are not actual MD5 210 encodings. Call-IDs are often repeated, and CSeq counts often begin 211 at 1. Header fields are usually shown in the same order. Usually 212 only the minimum required header field set is shown, others that 213 would normally be present such as Accept, Supported, Allow, etc are 214 not shown. 216 Actors: 218 Element Display Name URI IP Address 219 ------- ------------ --- ---------- 221 User Agent Alice sip:alice@a.example.com 192.0.2.101 222 User Agent Bob sip:bob@b.example.com 192.0.2.200 223 Proxy Server sip:ss1.a.example.com 192.0.2.111 224 User Agent (Gateway) sip:gw1.a.example.com 192.0.2.201 225 User Agent (Gateway) sip:gw2.a.example.com 192.0.2.202 226 User Agent (Gateway) sip:gw3.a.example.com 192.0.2.203 227 User Agent (Gateway) sip:ngw1.a.example.com 192.0.2.103 228 User Agent (Gateway) sip:ngw2.a.example.com 192.0.2.102 230 Note that NGW 1 and NGW 2 also have a device URIs (Contacts) of 231 sip:ngw1@a.example.com and sip:ngw2@a.example.com which resolves to 232 the Proxy Server sip:ss1.wcom.com using DNS SRV records. 234 2. SIP to PSTN Dialing 236 In the following scenarios, Alice (Alice sip:alice@a.example.com) is 237 a SIP phone or other SIP-enabled device. Bob is reachable via the 238 PSTN at global telephone number +19725552222. Alice places a call 239 to Bob through a Proxy Server Proxy 1 and a Network Gateway. In 240 other scenarios, Alice places calls to Carol, who is served via a 241 PBX (Private Branch Exchange) and is identified by a private 242 extension 444-3333, or global number +1-918-555-3333. Note that User 243 A uses his/her global telephone number +1-314-555-1111 in the From 244 header in the INVITE messages. This then gives the Gateway the 245 option of using this header to populate the calling party 246 identification field in subsequent signaling. Left open is the issue 247 of how the Gateway can determine the accuracy of the telephone 248 number, necessary before passing it as a valid calling party number 249 in the PSTN. 251 In these scenarios, Alice is a SIP phone or other SIP-enabled 252 device. Alice places a call to Bob in the PSTN or Carol on a 253 PBX through a Proxy Server and a Gateway. 255 In the failure scenarios, the call does not complete. In some 256 cases, however, a media stream is still setup. This is due to the 257 fact that some failures in dialing to the PSTN result in in-band 258 tones (busy, reorder tones or announcements - "The number you have 259 dialed has changed. The new number is..."). The 183 Session 260 Progress response containing SDP media information is used to 261 setup this early media path so that the caller Alice knows the final 262 disposition of the call. 264 The media stream is either terminated by the caller after the tone or 265 announcement has been heard and understood, or by the Gateway after a 266 timer expires. 268 In other failure scenarios, a SS7 Release with Cause Code is mapped 269 to a SIP response. In these scenarios, the early media path is not 270 used, but the actual failure code is conveyed to the caller by the 271 SIP User Agent Client. 273 2.1 Successful SIP to ISUP PSTN call 275 Alice Proxy 1 NGW 1 Switch B 276 | | | | 277 | INVITE F1 | | | 278 |--------------->| | | 279 | 100 F2 | | | 280 |<---------------| INVITE F3 | | 281 | |--------------->| | 282 | | 100 F4 | | 283 | |<---------------| IAM F5 | 284 | | |--------------->| 285 | | | ACM F6 | 286 | | 183 F7 |<---------------| 287 | 183 F8 |<---------------| | 288 |<---------------| | | 289 | Both Way RTP Media | One Way Voice | 290 |<===============================>|<===============| 291 | | | ANM F9 | 292 | | 200 F10 |<---------------| 293 | 200 F11 |<---------------| | 294 |<---------------| | | 295 | ACK F12 | | | 296 |--------------->| ACK F13 | | 297 | |--------------->| | 298 | Both Way RTP Media | Both Way Voice | 299 |<===============================>|<==============>| 300 | BYE F14 | | | 301 |--------------->| BYE F15 | | 302 | |--------------->| | 303 | | 200 F16 | | 304 | 200 F17 |<---------------| REL F18 | 305 |<---------------| |--------------->| 306 | | | RLC F19 | 307 | | |<---------------| 308 | | | | 310 Alice dials the globalized E.164 number +19725552222 to reach 311 Bob. Note that A might have only dialed the last 7 digits, or 312 some other dialing plan. It is assumed that the SIP User Agent 313 Client converts the digits into a global number and puts them into a 314 SIP URI. Note that tel URIs could be used instead of SIP URIs. 316 Alice could use either their SIP address (sip:alice@a.example.com) or 317 SIP telephone number (sip:+13145551111@ss1.a.example.com;user=phone) 318 in the From header. In this example, the telephone number is 319 included, and it is shown as being passed as calling party 320 identification through the Network Gateway (NGW 1) to Bob (F5). Note 321 that for this number to be passed into the SS7 network, it would have 322 to be somehow verified for accuracy. 324 In this scenario, Bob answers the call then Alice disconnects the 325 call. Signaling between NGW 1 and Bob's telephone switch is ANSI 326 ISUP. For the details of SIP to ISUP mapping, refer to [4]. 328 In this flow, notice that the Contact returned by NGW 1 in messages 329 F7-11 is sip:ngw1@a.example.com. This is because NGW 1 only accepts 330 SIP messages that come through Proxy 1 - any direct signaling will be 331 ignored. Since this Contact URI may be used outside of this dialog 332 and must be routable (Section 8.1.1.8 in RFC 3261 [2]) the Contact 333 URI for NGW 1 must resolve to Proxy 1. This Contact URI is an AOR 334 which resolves via DNS to Proxy 1 (sip:ss1.a.example.com) which then 335 resolves it to sip:ngw1.a.example.com which is the address of NGW 1. 337 This flow shows TCP transport. 339 Message Details 341 F1 INVITE Alice -> Proxy 1 343 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 344 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 345 Max-Forwards: 70 346 From: Alice 347 ;tag=9fxced76sl 348 To: Bob 349 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 350 CSeq: 1 INVITE 351 Contact: 352 Proxy-Authorization: Digest username="alice", realm="a.example.com", 353 nonce="dc3a5ab25302aa931904ba7d88fa1cf5", opaque="", 354 uri="sip:+19725552222@ss1.a.example.com;user=phone", 355 response="ccdca50cb091d587421457305d097458c" 356 Content-Type: application/sdp 357 Content-Length: 154 359 v=0 360 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 361 s=- 362 c=IN IP4 client.a.example.com 363 t=0 0 364 m=audio 49172 RTP/AVP 0 365 a=rtpmap:0 PCMU/8000 366 F2 100 Trying Proxy 1 -> Alice 368 SIP/2.0 100 Trying 369 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 370 ;received=192.0.2.101 371 From: Alice 372 ;tag=9fxced76sl 373 To: Bob 374 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 375 CSeq: 1 INVITE 376 Content-Length: 0 378 /* Proxy 1 uses a Location Service function to determine the gateway 379 for terminating this call. The call is forwarded to NGW 1. Client 380 for A prepares to receive data on port 49172 from the 381 network.*/ 383 F3 INVITE Proxy 1 -> NGW 1 385 INVITE sip:+19725552222@ngw1.a.example.com;user=phone SIP/2.0 386 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 387 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 388 ;received=192.0.2.101 389 Max-Forwards: 69 390 Record-Route: 391 From: Alice 392 ;tag=9fxced76sl 393 To: Bob 394 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 395 CSeq: 1 INVITE 396 Contact: 397 Content-Type: application/sdp 398 Content-Length: 154 400 v=0 401 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 402 s=- 403 c=IN IP4 client.a.example.com 404 t=0 0 405 m=audio 49172 RTP/AVP 0 406 a=rtpmap:0 PCMU/8000 408 F4 100 Trying NGW 1 -> Proxy 1 410 SIP/2.0 100 Trying 411 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 412 ;received=192.0.2.111 413 From: Alice 414 ;tag=9fxced76sl 415 To: Bob 416 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 417 CSeq: 1 INVITE 418 Content-Length: 0 420 F5 IAM NGW 1 -> Bob 422 IAM 423 CdPN=972-555-2222,NPI=E.164,NOA=National 424 CgPN=314-555-1111,NPI=E.164,NOA=National 426 F6 ACM Bob -> NGW 1 428 ACM 430 F7 183 Session Progress NGW 1 -> Proxy 1 432 SIP/2.0 183 Session Progress 433 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 434 ;received=192.0.2.111 435 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 436 ;received=192.0.2.101 437 Record-Route: 438 From: Alice 439 ;tag=9fxced76sl 440 To: Bob 441 ;tag=314159 442 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 443 CSeq: 1 INVITE 444 Contact: 445 Content-Type: application/sdp 446 Content-Length: 146 448 v=0 449 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 450 s=- 451 c=IN IP4 ngw1.a.example.com 452 t=0 0 453 m=audio 3456 RTP/AVP 0 454 a=rtpmap:0 PCMU/8000 456 /* NGW 1 sends PSTN audio (ringing) in the RTP path to A */ 457 F8 183 Session Progress Proxy 1 -> Alice 459 SIP/2.0 183 Session Progress 460 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 461 ;received=192.0.2.101 462 Record-Route: 463 From: Alice 464 ;tag=9fxced76sl 465 To: Bob 466 ;tag=314159 467 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 468 CSeq: 1 INVITE 469 Contact: 470 Content-Type: application/sdp 471 Content-Length: 146 473 v=0 474 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 475 s=- 476 c=IN IP4 ngw1.a.example.com 477 t=0 0 478 m=audio 3456 RTP/AVP 0 479 a=rtpmap:0 PCMU/8000 481 F9 ANM Bob -> NGW 1 483 ANM 485 F10 200 OK NGW 1 -> Proxy 1 487 SIP/2.0 200 OK 488 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 489 ;received=192.0.2.111 490 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 491 ;received=192.0.2.101 492 Record-Route: 493 From: Alice 494 ;tag=9fxced76sl 495 To: Bob 496 ;tag=314159 497 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 498 CSeq: 1 INVITE 499 Contact: 500 Content-Type: application/sdp 501 Content-Length: 146 502 v=0 503 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 504 s=- 505 c=IN IP4 gw1.a.example.com 506 t=0 0 507 m=audio 3456 RTP/AVP 0 508 a=rtpmap:0 PCMU/8000 510 F11 200 OK Proxy 1 -> Alice 512 SIP/2.0 200 OK 513 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 514 ;received=192.0.2.101 515 Record-Route: 516 From: Alice 517 ;tag=9fxced76sl 518 To: Bob 519 ;tag=314159 520 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 521 CSeq: 1 INVITE 522 Contact: 523 Content-Type: application/sdp 524 Content-Length: 146 526 v=0 527 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 528 s=- 529 c=IN IP4 ngw1.a.example.com 530 t=0 0 531 m=audio 3456 RTP/AVP 0 532 a=rtpmap:0 PCMU/8000 534 F12 ACK Alice -> Proxy 1 536 ACK sip:ngw1@a.example.com SIP/2.0 537 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 538 Max-Forwards: 70 539 Route: 540 From: Alice 541 ;tag=9fxced76sl 542 To: Bob 543 ;tag=314159 544 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 545 CSeq: 1 ACK 546 Content-Length: 0 547 F13 ACK Proxy 1 -> NGW 1 549 ACK sip:ngw1@a.example.com SIP/2.0 550 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 551 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 552 ;received=192.0.2.101 553 Max-Forwards: 69 554 From: Alice 555 ;tag=9fxced76sl 556 To: Bob 557 ;tag=314159 558 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 559 CSeq: 1 ACK 560 Content-Length: 0 562 /* Alice Hangs Up with Bob. */ 564 F14 BYE Alice -> Proxy 1 566 BYE sip:ngw1@a.example.com SIP/2.0 567 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 568 Max-Forwards: 70 569 Route: 570 From: Alice 571 ;tag=9fxced76sl 572 To: Bob 573 ;tag=314159 574 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 575 CSeq: 2 BYE 576 Content-Length: 0 578 F15 BYE Proxy 1 -> NGW 1 580 BYE sip:ngw1@a.example.com SIP/2.0 581 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 582 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 583 ;received=192.0.2.101 584 Max-Forwards: 69 585 From: Alice 586 ;tag=9fxced76sl 587 To: Bob 588 ;tag=314159 589 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 590 CSeq: 2 BYE 591 Content-Length: 0 592 F16 200 OK NGW 1 -> Proxy 1 594 SIP/2.0 200 OK 595 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 596 ;received=192.0.2.111 597 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 598 ;received=192.0.2.101 599 From: Alice 600 ;tag=9fxced76sl 601 To: Bob 602 ;tag=314159 603 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 604 CSeq: 2 BYE 605 Content-Length: 0 607 F17 200 OK Proxy 1 -> A 609 SIP/2.0 200 OK 610 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 611 ;received=192.0.2.101 612 From: Alice 613 ;tag=9fxced76sl 614 To: Bob 615 ;tag=314159 616 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 617 CSeq: 2 BYE 618 Content-Length: 0 620 F18 REL NGW 1 -> B 622 REL 623 CauseCode=16 Normal 625 F19 RLC B -> NGW 1 627 RLC 629 2.2 Successful SIP to ISDN PBX call 631 Alice Proxy 1 GW 1 PBX C 632 | | | | 633 | INVITE F1 | | | 634 |--------------->| | | 635 | 100 F2 | | | 636 |<---------------| INVITE F3 | | 637 | |--------------->| | 638 | | 100 F4 | | 639 | |<---------------| SETUP F5 | 640 | | |--------------->| 641 | | | CALL PROC F6 | 642 | | |<---------------| 643 | | | PROGress F7 | 644 | | 180 F8 |<---------------| 645 | 180 F9 |<---------------| | 646 |<---------------| | | 647 | | | One Way Voice | 648 | | |<===============| 649 | | | CONNect F10 | 650 | | |<---------------| 651 | | | CONNect ACK F11| 652 | | 200 F12 |--------------->| 653 | 200 F13 |<---------------| | 654 |<---------------| | | 655 | ACK F14 | | | 656 |--------------->| ACK F15 | | 657 | |--------------->| | 658 | Both Way RTP Media | Both Way Voice | 659 |<===============================>|<==============>| 660 | BYE F16 | | | 661 |--------------->| BYE F17 | | 662 | |--------------->| | 663 | | 200 F18 | | 664 | 200 F19 |<---------------| DISConnect F20 | 665 |<---------------| |--------------->| 666 | | | RELease F21 | 667 | | |<---------------| 668 | | | RELease COM F22| 669 | | |--------------->| 670 | | | | 672 Alice is a SIP device while Carol is connected via a 673 Gateway (GW 1) to a PBX. The PBX connection is via a ISDN trunk 674 group. Alice dials Carol's telephone number (918-555-3333) which 675 is globalized and put into a SIP URI. 677 The host portion of the Request-URI in the INVITE F3 is used to 678 identify the context (customer, trunk group, or line) in which the 679 private number 444-3333 is valid. Otherwise, this INVITE message 680 could get forwarded by GW 1 and the context of the digits could 681 become lost and the call unroutable. 683 Proxy 1 looks up the telephone number and locates the gateway that 684 serves Carol. Carolis identified by its extension 685 (444-3333) in the Request-URI sent to GW 1. 687 Note that the Contact URI for GW1 as used in messages F8, F9, F12, 688 and F13 is sips:4443333@gw1.a.example.com which does resolve directly 689 to the gateway. 691 This flow shows the use of Secure SIP (sips) URIs. 693 Message Details 695 F1 INVITE Alice -> Proxy 1 697 INVITE sips:+19185553333@ss1.a.example.com;user=phone SIP/2.0 698 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 699 Max-Forwards: 70 700 From: Alice 701 ;tag=9fxced76sl 702 To: Carol 703 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 704 CSeq: 2 INVITE 705 Contact: 706 Proxy-Authorization: Digest username="alice", 707 realm="a.example.com", nonce="qo0dc3a5ab22aa931904badfa1cf5j9h", 708 opaque="", uri="sips:+19185553333@ss1.a.example.com;user=phone", 709 response="6c792f5c9fa360358b93c7fb826bf550" 710 Content-Type: application/sdp 711 Content-Length: 154 713 v=0 714 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 715 s=- 716 c=IN IP4 client.a.example.com 717 t=0 0 718 m=audio 49172 RTP/AVP 0 719 a=rtpmap:0 PCMU/8000 721 F2 100 Trying Proxy 1 -> Alice 723 SIP/2.0 100 Trying 724 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 725 ;received=192.0.2.101 726 From: Alice 727 ;tag=9fxced76sl 728 To: Carol 729 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 730 CSeq: 2 INVITE 731 Content-Length: 0 733 F3 INVITE Proxy 1 -> GW 1 735 INVITE sips:4443333@gw1.a.example.com SIP/2.0 736 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 737 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 738 ;received=192.0.2.101 739 Max-Forwards: 69 740 Record-Route: 741 From: Alice 742 ;tag=9fxced76sl 743 To: Carol 744 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 745 CSeq: 2 INVITE 746 Contact: 747 Content-Type: application/sdp 748 Content-Length: 154 750 v=0 751 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 752 s=- 753 c=IN IP4 client.a.example.com 754 t=0 0 755 m=audio 49172 RTP/AVP 0 756 a=rtpmap:0 PCMU/8000 758 F4 100 Trying GW -> Proxy 1 760 SIP/2.0 100 Trying 761 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 762 ;received=192.0.2.111 763 From: Alice 764 ;tag=9fxced76sl 765 To: Carol 766 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 767 CSeq: 2 INVITE 768 Content-Length: 0 769 F5 SETUP GW 1 -> Carol 771 Protocol discriminator=Q.931 772 Message type=SETUP 773 Bearer capability: Information transfer capability=0 (Speech) or 16 774 (3.1 kHz audio) 775 Channel identification=Preferred or exclusive B-channel 776 Progress indicator=1 (Call is not end-to-end ISDN;further call 777 progress information may be available inband) 778 Called party number: 779 Type of number unknown 780 Digits=444-3333 782 F6 CALL PROCeeding Carol-> GW 1 784 Protocol discriminator=Q.931 785 Message type=CALL PROC 786 Channel identification=Exclusive B-channel 788 F7 PROGress Carol-> GW 1 790 Protocol discriminator=Q.931 791 Message type=PROG 792 Progress indicator=1 (Call is not end-to-end ISDN;further call 793 progress information may be available inband) 795 F8 180 Ringing GW 1 -> Proxy 1 797 SIP/2.0 180 Ringing 798 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 799 ;received=192.0.2.111 800 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 801 ;received=192.0.2.101 802 Record-Route: 803 From: Alice 804 ;tag=9fxced76sl 805 To: Carol 806 ;tag=314159 807 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 808 CSeq: 2 INVITE 809 Contact: 810 Content-Length: 0 812 F9 180 Ringing Proxy 1 -> Alice 813 SIP/2.0 180 Ringing 814 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 815 ;received=192.0.2.101 816 Record-Route: 817 From: Alice 818 ;tag=9fxced76sl 819 To: Carol 820 ;tag=314159 821 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 822 CSeq: 2 INVITE 823 Contact: 824 Content-Length: 0 826 F10 CONNect Carol-> GW 1 828 Protocol discriminator=Q.931 829 Message type=CONN 831 F11 CONNect ACK GW 1 -> Carol 833 Protocol discriminator=Q.931 834 Message type=CONN ACK 836 F12 200 OK GW 1 -> Proxy 1 838 SIP/2.0 200 OK 839 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 840 ;received=192.0.2.111 841 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 842 ;received=192.0.2.101 843 Record-Route: 844 From: Alice 845 ;tag=9fxced76sl 846 To: Carol 847 ;tag=314159 848 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 849 CSeq: 2 INVITE 850 Contact: 851 Content-Type: application/sdp 852 Content-Length: 144 854 v=0 855 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 856 s=- 857 c=IN IP4 gw1.a.example.com 858 t=0 0 859 m=audio 3456 RTP/AVP 0 860 a=rtpmap:0 PCMU/8000 862 F13 200 OK Proxy 1 -> Alice 864 SIP/2.0 200 OK 865 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 866 ;received=192.0.2.101 867 Record-Route: 868 From: Alice 869 ;tag=9fxced76sl 870 To: Carol 871 ;tag=314159 872 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 873 CSeq: 2 INVITE 874 Contact: 875 Content-Type: application/sdp 876 Content-Length: 144 878 v=0 879 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 880 s=- 881 c=IN IP4 gw1.a.example.com 882 t=0 0 883 m=audio 3456 RTP/AVP 0 884 a=rtpmap:0 PCMU/8000 886 F14 ACK Alice -> Proxy 1 888 ACK sips:4443333@gw1.a.example.com SIP/2.0 889 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 890 Max-Forwards: 70 891 Route: 892 From: Alice 893 ;tag=9fxced76sl 894 To: Carol 895 ;tag=314159 896 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 897 CSeq: 2 ACK 898 Content-Length: 0 900 F15 ACK Proxy 1 -> GW 1 902 ACK sips:4443333@gw1.a.example.com SIP/2.0 903 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 904 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 905 ;received=192.0.2.101 906 Max-Forwards: 69 907 From: Alice 908 ;tag=9fxced76sl 909 To: Carol 910 ;tag=314159 911 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 912 CSeq: 2 ACK 913 Content-Length: 0 915 /* Alice Hangs Up with Bob. */ 917 F16 BYE Alice -> Proxy 1 919 BYE sips:4443333@gw1.a.example.com SIP/2.0 920 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 921 Max-Forwards: 70 922 Route: 923 From: Alice 924 ;tag=9fxced76sl 925 To: Carol 926 ;tag=314159 927 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 928 CSeq: 3 BYE 929 Content-Length: 0 931 F17 BYE Proxy 1 -> GW 1 933 BYE sips:4443333@gw1.a.example.com SIP/2.0 934 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 935 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 936 ;received=192.0.2.101 937 Max-Forwards: 69 938 From: Alice 939 ;tag=9fxced76sl 940 To: Carol 941 ;tag=314159 942 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 943 CSeq: 3 BYE 944 Content-Length: 0 946 F18 200 OK GW 1 -> Proxy 1 948 SIP/2.0 200 OK 949 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 950 ;received=192.0.2.111 952 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 953 ;received=192.0.2.101 954 From: Alice 955 ;tag=9fxced76sl 956 To: Carol 957 ;tag=314159 958 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 959 CSeq: 3 BYE 960 Content-Length: 0 962 F19 200 OK Proxy 1 -> A 964 SIP/2.0 200 OK 965 Via: SIP/2.0/TLS client.a.example.com:5061;branch=z9hG4bK74bf9 966 ;received=192.0.2.101 967 From: Alice 968 ;tag=9fxced76sl 969 To: Carol 970 ;tag=314159 971 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 972 CSeq: 3 BYE 973 Content-Length: 0 975 F20 DISConnect GW 1 -> Carol 977 Protocol discriminator=Q.931 978 Message type=DISC 979 Cause=16 (Normal clearing) 981 F21 RELease Carol-> GW 1 983 Protocol discriminator=Q.931 984 Message type=REL 986 F22 RELease COMplete GW 1 -> Carol 988 Protocol discriminator=Q.931 989 Message type=REL COM 991 2.3 Successful SIP to ISUP PSTN call with overflow 993 Alice Proxy 1 NGW 1 NGW 2 Switch B 994 | | | | | 995 | INVITE F1 | | | | 996 |------------->| | | | 997 | | INVITE F2 | | | 998 | 100 F3 |------------->| | | 999 |<-------------| 503 F4 | | | 1000 | |<-------------| | | 1001 | | ACK F5 | | | 1002 | |------------->| | | 1003 | | INVITE F6 | | 1004 | |---------------------------->| IAM F7 | 1005 | | |------------->| 1006 | | | ACM F8 | 1007 | | 183 F9 |<-------------| 1008 | 183 F10 |<----------------------------| | 1009 |<-------------| | | 1010 | Two Way RTP Media | One Way Voice| 1011 |<==========================================>|<=============| 1012 | | | ANM F11 | 1013 | | 200 F12 |<-------------| 1014 | 200 F13 |<----------------------------| | 1015 |<-------------| | | 1016 | ACK F14 | | | 1017 |------------->| ACK F15 | | 1018 | |---------------------------->| | 1019 | Both Way RTP Media |Both Way Voice| 1020 |<==========================================>|<============>| 1021 | BYE F16 | | | 1022 |------------->| BYE F17 | | 1023 | |---------------------------->| | 1024 | | 200 F18 | | 1025 | 200 F19 |<----------------------------| REL F20 | 1026 |<-------------| |------------->| 1027 | | | RLC F21 | 1028 | | |<-------------| 1029 | | | | 1031 Alice calls Bob through Proxy 1. Proxy 1 tries to route to a 1032 Network Gateway NGW 1. NGW 1 is not available and responds with a 503 1033 Service Unavailable (F4). The call is then routed to Network Gateway 1034 NGW 2. Bob answers the call. The call is terminated when Alice 1035 disconnects the call. NGW 2 and Bob's telephone switch use ANSI 1036 ISUP signaling. 1038 NGW 2 also only accepts SIP messages that come through Proxy 1, so 1039 the Contact URI sip:ngw2@a.example.com is used in this flow. 1041 This flow shows UDP transport. 1043 Message Details 1045 F1 INVITE Alice -> Proxy 1 1047 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1048 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1049 Max-Forwards: 70 1050 From: Alice 1051 ;tag=9fxced76sl 1052 To: Bob 1053 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1054 CSeq: 1 INVITE 1055 Contact: 1056 Proxy-Authorization: Digest username="alice", 1057 realm="a.example.com", nonce="b59311c3ba05b401cf80b2a2c5ac51b0", 1058 opaque="", uri="sip:+19725552222@ss1.a.example.com;user=phone", 1059 response="ba6ab44923fa2614b28e3e3957789ab0" 1060 Content-Type: application/sdp 1061 Content-Length: 154 1063 v=0 1064 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1065 s=- 1066 c=IN IP4 client.a.example.com 1067 t=0 0 1068 m=audio 49172 RTP/AVP 0 1069 a=rtpmap:0 PCMU/8000 1071 /* Proxy 1 uses a Location Service function to determine where B is 1072 located. Proxy 1 receives a primary route NGW 1 and a secondary 1073 route NGW 2. NGW 1 is tried first */ 1075 F2 INVITE Proxy 1 -> NGW 1 1077 INVITE sip:+19725552222@ngw1.a.example.com;user=phone SIP/2.0 1078 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1079 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1080 ;received=192.0.2.101 1081 Max-Forwards: 69 1082 Record-Route: 1083 From: Alice 1084 ;tag=9fxced76sl 1085 To: Bob 1086 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1087 CSeq: 1 INVITE 1088 Contact: 1089 Content-Type: application/sdp 1090 Content-Length: 154 1092 v=0 1093 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1094 s=- 1095 c=IN IP4 client.a.example.com 1096 t=0 0 1097 m=audio 49172 RTP/AVP 0 1098 a=rtpmap:0 PCMU/8000 1100 F3 100 Trying Proxy 1 -> Alice 1102 SIP/2.0 100 Trying 1103 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1104 ;received=192.0.2.111 1105 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1106 ;received=192.0.2.101 1107 From: Alice 1108 ;tag=9fxced76sl 1109 To: Bob 1110 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1111 CSeq: 1 INVITE 1112 Content-Length: 0 1114 F4 503 Service Unavailable NGW 1 -> Proxy 1 1116 SIP/2.0 503 Service Unavailable 1117 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1118 ;received=192.0.2.111 1119 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1120 ;received=192.0.2.101 1121 Record-Route: 1122 From: Alice 1123 ;tag=9fxced76sl 1124 To: Bob 1125 ;tag=123456789 1126 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1127 CSeq: 1 INVITE 1128 Content-Length: 0 1130 F5 ACK Proxy 1 -> NGW 1 1131 ACK sip:ngw1@a.example.com SIP/2.0 1132 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1133 Max-Forwards: 70 1134 From: Alice 1135 ;tag=9fxced76sl 1136 To: Bob ;user=phone> 1137 ;tag=123456789 1138 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1139 CSeq: 1 ACK 1140 Content-Length: 0 1142 /* Proxy 1 now tries secondary route to NGW 2 */ 1144 F6 INVITE Proxy 1 -> NGW 2 1146 INVITE sip:+19725552222@ngw2.a.example.com;user=phone SIP/2.0 1147 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1148 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1149 ;received=192.0.2.101 1150 Max-Forwards: 69 1151 Record-Route: 1152 From: Alice 1153 ;tag=9fxced76sl 1154 To: Bob 1155 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1156 CSeq: 1 INVITE 1157 Contact: 1158 Content-Type: application/sdp 1159 Content-Length: 154 1161 v=0 1162 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1163 s=- 1164 c=IN IP4 client.a.example.com 1165 t=0 0 1166 m=audio 49172 RTP/AVP 0 1167 a=rtpmap:0 PCMU/8000 1169 F7 IAM NGW 2 -> Bob 1171 IAM 1172 CdPN=972-555-2222,NPI=E.164,NOA=National 1173 CgPN=314-555-1111,NPI=E.164,NOA=National 1175 F8 ACM Bob -> NGW 2 1176 ACM 1178 F9 183 Session Progress NGW 2 -> Proxy 1 1180 SIP/2.0 183 Session Progress 1181 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1182 ;received=192.0.2.111 1183 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1184 ;received=192.0.2.101 1185 Record-Route: 1186 From: Alice 1187 ;tag=9fxced76sl 1188 To: Bob 1189 ;tag=314159 1190 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1191 CSeq: 1 INVITE 1192 Contact: 1193 Content-Type: application/sdp 1194 Content-Length: 146 1196 v=0 1197 o=GW 2890844527 2890844527 IN IP4 ngw2.a.example.com 1198 s=- 1199 c=IN IP4 ngw2.a.example.com 1200 t=0 0 1201 m=audio 3456 RTP/AVP 0 1202 a=rtpmap:0 PCMU/8000 1204 /* RTP packets are sent by GW to A for audio (e.g. ring tone) */ 1206 F10 183 Session Progress Proxy 1 -> Alice 1208 SIP/2.0 183 Session Progress 1209 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1210 ;received=192.0.2.101 1211 Record-Route: 1212 From: Alice 1213 ;tag=9fxced76sl 1214 To: Bob 1215 ;tag=314159 1216 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1217 CSeq: 1 INVITE 1218 Contact: 1219 Content-Type: application/sdp 1220 Content-Length: 146 1222 v=0 1223 o=GW 2890844527 2890844527 IN IP4 ngw2.a.example.com 1224 s=- 1225 c=IN IP4 ngw2.a.example.com 1226 t=0 0 1227 m=audio 3456 RTP/AVP 0 1228 a=rtpmap:0 PCMU/8000 1230 F11 ANM Bob -> NGW 2 1232 ANM 1234 F12 200 OK NGW 2 -> Proxy 1 1236 SIP/2.0 200 OK 1237 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1238 ;received=192.0.2.111 1239 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1240 ;received=192.0.2.101 1241 Record-Route: 1242 From: Alice 1243 ;tag=9fxced76sl 1244 To: Bob 1245 ;tag=314159 1246 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1247 CSeq: 1 INVITE 1248 Contact: 1249 Content-Type: application/sdp 1250 Content-Length: 146 1252 v=0 1253 o=GW 2890844527 2890844527 IN IP4 ngw2.a.example.com 1254 s=- 1255 c=IN IP4 ngw2.a.example.com 1256 t=0 0 1257 m=audio 3456 RTP/AVP 0 1258 a=rtpmap:0 PCMU/8000 1260 F13 200 OK Proxy 1 -> Alice 1262 SIP/2.0 200 OK 1263 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1264 ;received=192.0.2.101 1265 Record-Route: 1266 From: Alice 1267 ;tag=9fxced76sl 1268 To: Bob 1269 ;tag=314159 1270 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1271 CSeq: 1 INVITE 1272 Contact: 1273 Content-Type: application/sdp 1274 Content-Length: 146 1276 v=0 1277 o=GW 2890844527 2890844527 IN IP4 ngw2.a.example.com 1278 s=- 1279 c=IN IP4 ngw2.a.example.com 1280 t=0 0 1281 m=audio 3456 RTP/AVP 0 1282 a=rtpmap:0 PCMU/8000 1284 F14 ACK Alice -> Proxy 1 1286 ACK sip:ngw2@a.example.com SIP/2.0 1287 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1288 Max-Forwards: 70 1289 Route: 1290 From: Alice 1291 ;tag=9fxced76sl 1292 To: Bob 1293 ;tag=314159 1294 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1295 CSeq: 1 ACK 1296 Content-Length: 0 1298 F15 ACK Proxy 1 -> NGW 2 1300 ACK sip:ngw2@a.example.com SIP/2.0 1301 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1302 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1303 ;received=192.0.2.101 1304 Max-Forwards: 69 1305 From: Alice 1306 ;tag=9fxced76sl 1307 To: Bob 1308 ;tag=314159 1309 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1310 CSeq: 1 ACK 1311 Content-Length: 0 1313 /* RTP streams are established between A and B(via the GW) */ 1314 /* Alice Hangs Up with Bob. */ 1316 F16 BYE Alice -> Proxy 1 1318 BYE sip:ngw2@a.example.com SIP/2.0 1319 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1320 Max-Forwards: 70 1321 Route: 1322 From: Alice 1323 ;tag=9fxced76sl 1324 To: Bob 1325 ;tag=314159 1326 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1327 CSeq: 2 BYE 1328 Content-Length: 0 1330 F17 BYE Proxy 1 -> NGW 2 1332 BYE sip:ngw2@a.example.com SIP/2.0 1333 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1334 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1335 ;received=192.0.2.101 1336 Max-Forwards: 69 1337 From: Alice 1338 ;tag=9fxced76sl 1339 To: Bob 1340 ;tag=314159 1341 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1342 CSeq: 2 BYE 1343 Content-Length: 0 1345 F18 200 OK NGW 2 -> Proxy 1 1347 SIP/2.0 200 OK 1348 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 1349 ;received=192.0.2.111 1350 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1351 ;received=192.0.2.101 1352 From: Alice 1353 ;tag=9fxced76sl 1354 To: Bob 1355 ;tag=314159 1356 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1357 CSeq: 2 BYE 1358 Content-Length: 0 1359 F19 200 OK Proxy 1 -> Alice 1361 SIP/2.0 200 OK 1362 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1363 ;received=192.0.2.101 1364 From: Alice 1365 ;tag=9fxced76sl 1366 To: Bob 1367 ;tag=314159 1368 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1369 CSeq: 2 BYE 1370 Content-Length: 0 1372 F20 REL NGW 2 -> B 1374 REL 1375 CauseCode=16 Normal 1377 F21 RLC B -> NGW 2 1379 RLC 1381 2.4 Successful SIP to SIP using ENUM Query 1383 Alice DNS Server Proxy 3 Bob 1384 | | | | 1385 | ENUM Query F1 | | | 1386 |--------------->| | | 1387 | Response F2 | | | 1388 |<---------------| | | 1389 | INVITE F3 | | 1390 |-------------------------------->| INVITE F4 | 1391 | 100 F5 |--------------->| 1392 |<--------------------------------| 180 F6 | 1393 | 180 F7 |<---------------| 1394 |<--------------------------------| | 1395 | | 200 F8 | 1396 | 200 F9 |<---------------| 1397 |<--------------------------------| | 1398 | ACK F10 | | 1399 |-------------------------------->| ACK F11 | 1400 | |--------------->| 1401 | Both Way RTP Media | 1402 |<================================================>| 1403 | | BYE F12 | 1404 | BYE F13 |<---------------| 1405 |<--------------------------------| | 1406 | 200 F14 | | 1407 |-------------------------------->| 200 F15 | 1408 | |--------------->| 1409 | | | 1411 In this scenario, Alice places a call to Bob by dialing Bob's 1412 telephone number (9725552222). Alice's UA converts the phone number 1413 to an E.164 number (+19725552222) performs an ENUM query [10] on the 1414 E.164 number (2.2.2.2.5.5.5.2.7.9.1.e164.arpa) which returns a NAPTR 1415 record containing a SIP AOR URI for Bob 1416 (sip:+19725552222@b.example.com). As a result, Alice's UA sends an 1417 INVITE and the call completes over IP bypassing the PSTN. 1419 The call is terminated when Bob sends a BYE message. 1421 Message Details 1423 F1 ENUM Query Alice -> DNS Server 1425 2.2.2.2.5.5.5.2.7.9.1.e164.arpa 1426 F2 ENUM NAPTR Set DNS Server -> Alice 1428 $ORIGIN 2.2.2.2.5.5.5.2.7.9.1.e164.arpa. 1429 IN NAPTR 100 10 "u" "sip+E2U" 1430 "!^.*$!sip:+19725552222@b.example.com!". 1432 F3 INVITE Alice -> Proxy 3 1434 INVITE sip:+19725552222@b.example.com SIP/2.0 1435 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1436 Max-Forwards: 70 1437 From: ;tag=9fxced76sl 1438 To: 1439 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1440 CSeq: 2 INVITE 1441 Contact: 1442 Content-Type: application/sdp 1443 Content-Length: 154 1445 v=0 1446 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1447 s=- 1448 c=IN IP4 client.a.example.com 1449 t=0 0 1450 m=audio 49172 RTP/AVP 0 1451 a=rtpmap:0 PCMU/8000 1453 F4 INVITE Proxy 3 -> Bob 1455 INVITE sip:+19725552222@client.b.example.com SIP/2.0 1456 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1457 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1458 ;received=192.0.2.101 1459 Max-Forwards: 69 1460 Record-Route: 1461 From: ;tag=9fxced76sl 1462 To: 1463 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1464 CSeq: 2 INVITE 1465 Contact: 1466 Content-Type: application/sdp 1467 Content-Length: 154 1469 v=0 1470 o=UserA 2890844526 2890844526 IN IP4 client.a.example.com 1471 s=- 1472 c=IN IP4 client.a.example.com 1473 t=0 0 1474 m=audio 49172 RTP/AVP 0 1475 a=rtpmap:0 PCMU/8000 1477 F5 100 Trying Proxy 3 -> Alice 1479 SIP/2.0 100 Trying 1480 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1481 ;received=192.0.2.101 1482 From: ;tag=9fxced76sl 1483 To: 1484 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1485 CSeq: 2 INVITE 1486 Content-Length: 0 1488 F6 180 Ringing B -> Proxy 3 1490 SIP/2.0 180 Ringing 1491 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1492 ;received=192.0.2.233 1493 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1494 ;received=192.0.2.101 1495 Record-Route: 1496 From: ;tag=9fxced76sl 1497 To: ;tag=314159 1498 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1499 CSeq: 2 INVITE 1500 Contact: 1501 Content-Length: 0 1503 F7 180 Ringing Proxy 3 -> Alice 1505 SIP/2.0 180 Ringing 1506 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1507 ;received=192.0.2.101 1508 Record-Route: 1509 From: ;tag=9fxced76sl 1510 To: ;tag=314159 1511 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1512 CSeq: 2 INVITE 1513 Contact: 1514 Content-Length: 0 1516 F8 200 OK Bob -> Proxy 3 1517 SIP/2.0 200 OK 1518 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1519 ;received=192.0.2.233 1520 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1521 ;received=192.0.2.101 1522 Record-Route: 1523 From: ;tag=9fxced76sl 1524 To: ;tag=314159 1525 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1526 CSeq: 2 INVITE 1527 Contact: 1528 Content-Type: application/sdp 1529 Content-Length: 151 1531 v=0 1532 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 1533 s=- 1534 c=IN IP4 client.b.example.com 1535 t=0 0 1536 m=audio 3456 RTP/AVP 0 1537 a=rtpmap:0 PCMU/8000 1539 F9 200 OK Proxy -> Alice 1541 SIP/2.0 200 OK 1542 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1543 ;received=192.0.2.101 1544 Record-Route: 1545 From: ;tag=9fxced76sl 1546 To: ;tag=314159 1547 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1548 CSeq: 2 INVITE 1549 Contact: 1550 Content-Type: application/sdp 1551 Content-Length: 151 1553 v=0 1554 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 1555 s=- 1556 c=IN IP4 192.0.2.100 1557 t=0 0 1558 m=audio 3456 RTP/AVP 0 1559 a=rtpmap:0 PCMU/8000 1561 F10 ACK Alice -> Proxy 3 1563 ACK sip:+19725552222@client.b.example.com SIP/2.0 1564 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bq9 1565 Max-Forwards: 70 1566 Route: 1567 From: ;tag=9fxced76sl 1568 To: ;tag=314159 1569 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1570 CSeq: 2 ACK 1571 Content-Length: 0 1573 F11 ACK Proxy 3 -> Bob 1575 ACK sip:+19725552222@client.b.example.com SIP/2.0 1576 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1577 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bq9 1578 ;received=192.0.2.101 1579 Max-Forwards: 69 1580 From: ;tag=9fxced76sl 1581 To: ;tag=314159 1582 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1583 CSeq: 2 ACK 1584 Content-Type: application/sdp 1585 Content-Length: 0 1587 /* RTP streams are established between A and B*/ 1589 /* User B Hangs Up with User A. */ 1591 F12 BYE Bob -> Proxy 3 1593 BYE sip:+13145551111@client.a.example.com SIP/2.0 1594 Via: SIP/2.0/UDP client.b.example.com:5060;branch=z9hG4bKfgaw2 1595 Max-Forwards: 70 1596 Route: 1597 From: ;tag=314159 1598 To: ;tag=9fxced76sl 1599 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1600 CSeq: 1 BYE 1601 Content-Length: 0 1603 F13 BYE Proxy 3 -> Alice 1605 BYE sip:+13145551111@client.a.example.com SIP/2.0 1606 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1607 ;received=192.0.2.100 1608 Via: SIP/2.0/UDP client.b.example.com:5060;branch=z9hG4bKfgaw2 1609 Max-Forwards: 69 1610 From: ;tag=314159 1611 To: ;tag=9fxced76sl 1612 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1613 CSeq: 1 BYE 1614 Content-Length: 0 1616 F14 200 OK Alice -> Proxy 3 1618 SIP/2.0 200 OK 1619 Via: SIP/2.0/UDP ss3.b.example.com:5060;branch=z9hG4bK721e418c4.1 1620 ;received=192.0.2.233 1621 Via: SIP/2.0/UDP client.b.example.com:5060;branch=z9hG4bKfgaw2 1622 ;received=192.0.2.100 1623 From: ;tag=314159 1624 To: ;tag=9fxced76sl 1625 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1626 CSeq: 1 BYE 1627 Content-Length: 0 1629 F15 200 OK Proxy 3 -> Bob 1631 SIP/2.0 200 OK 1632 Via: SIP/2.0/UDP client.b.example.com:5060;branch=z9hG4bKfgaw2 1633 ;received=192.0.2.100 1634 From: ;tag=314159 1635 To: ;tag=9fxced76sl 1636 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1637 CSeq: 1 BYE 1638 Content-Length: 0 1640 2.5 Unsuccessful SIP to PSTN call: Treatment from PSTN 1642 Alice Proxy 1 NGW 1 Bob 1643 | | | | 1644 | INVITE F1 | | | 1645 |--------------->| | | 1646 | 100 F2 | | | 1647 |<---------------| INVITE F3 | | 1648 | |--------------->| | 1649 | | 100 F4 | | 1650 | |<---------------| IAM F5 | 1651 | | |--------------->| 1652 | | | ACM F6 | 1653 | | 183 F7 |<---------------| 1654 | 183 F8 |<---------------| | 1655 |<---------------| | | 1656 | Two Way RTP Media | One Way Voice | 1657 |<===============================>|<===============| 1658 | Treatment Applied | 1659 |<=================================================| 1660 | CANCEL F9 | | | 1661 |--------------->| | | 1662 | 200 F10 | | | 1663 |<---------------| CANCEL F11 | | 1664 | |--------------->| | 1665 | | 200 F12 | | 1666 | |<---------------| REL F13 | 1667 | | |--------------->| 1668 | | | RLC F14 | 1669 | | 487 F15 |<---------------| 1670 | |<---------------| | 1671 | | ACK F16 | | 1672 | 487 F17 |--------------->| | 1673 |<---------------| | | 1674 | ACK F18 | | | 1675 |--------------->| | | 1676 | | | | 1678 Alice calls Bob in the PSTN through a proxy server Proxy 1 and a 1679 Network Gateway NGW 1. The call is rejected by the PSTN with an in- 1680 band treatment (tone or recording) played. Alice hears the 1681 treatment and then hangs up, which results in a CANCEL (F9) being 1682 sent to terminate the call. (A BYE is not sent since no final 1683 response was ever received by Alice.) 1685 Message Details 1686 F1 INVITE Alice -> Proxy 1 1688 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1689 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1690 Max-Forwards: 70 1691 From: Alice 1692 ;tag=9fxced76sl 1693 To: Bob 1694 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1695 CSeq: 1 INVITE 1696 Contact: 1697 Proxy-Authorization: Digest username="alice", 1698 realm="a.example.com", nonce="01cf8311c3b0b2a2c5ac51bb59a05b40", 1699 opaque="", uri="sip:+19725552222@ss1.a.example.com;user=phone", 1700 response="e178fbe430e6680a1690261af8831f40" 1701 Content-Type: application/sdp 1702 Content-Length: 154 1704 v=0 1705 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1706 s=- 1707 c=IN IP4 client.a.example.com 1708 t=0 0 1709 m=audio 49172 RTP/AVP 0 1710 a=rtpmap:0 PCMU/8000 1712 F2 100 Trying Proxy 1 -> A 1714 SIP/2.0 100 Trying 1715 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1716 ;received=192.0.2.101 1717 From: Alice 1718 ;tag=9fxced76sl 1719 To: Bob 1720 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1721 CSeq: 1 INVITE 1722 Content-Length: 0 1724 /* Proxy 1 uses a Location Service function to determine where B is 1725 located. Based upon location analysis the call is forwarded to NGW 1726 1. Client for A prepares to receive data on port 49172 from the 1727 network. */ 1729 F3 INVITE Proxy 1 -> NGW 1 1731 INVITE sip:+19725552222@ngw1.a.example.com;user=phone SIP/2.0 1732 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1733 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1734 ;received=192.0.2.101 1735 Max-Forwards: 69 1736 Record-Route: 1737 From: Alice 1738 ;tag=9fxced76sl 1739 To: Bob 1740 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1741 CSeq: 1 INVITE 1742 Contact: 1743 Content-Type: application/sdp 1744 Content-Length: 154 1746 v=0 1747 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1748 s=- 1749 c=IN IP4 client.a.example.com 1750 t=0 0 1751 m=audio 49172 RTP/AVP 0 1752 a=rtpmap:0 PCMU/8000 1754 F4 100 Trying NGW 1 -> Proxy 1 1756 SIP/2.0 100 Trying 1757 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1758 ;received=192.0.2.111 1759 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1760 ;received=192.0.2.101 1761 From: Alice 1762 ;tag=9fxced76sl 1763 To: Bob 1764 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1765 CSeq: 1 INVITE 1766 Content-Length: 0 1768 F5 IAM NGW 1 -> Bob 1770 IAM 1771 CdPN=972-555-2222,NPI=E.164,NOA=National 1772 CgPN=314-555-1111,NPI=E.164,NOA=National 1774 F6 ACM Bob -> NGW 1 1776 ACM 1777 F7 183 Session Progress NGW 1 -> Proxy 1 1779 SIP/2.0 183 Session Progress 1780 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1781 ;received=192.0.2.111 1782 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1783 ;received=192.0.2.101 1784 Record-Route: 1785 From: Alice 1786 ;tag=9fxced76sl 1787 To: Bob 1788 ;tag=314159 1789 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1790 CSeq: 1 INVITE 1791 Contact: 1792 Content-Type: application/sdp 1793 Content-Length: 146 1795 v=0 1796 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 1797 s=- 1798 c=IN IP4 ngw1.a.example.com 1799 t=0 0 1800 m=audio 3456 RTP/AVP 0 1801 a=rtpmap:0 PCMU/8000 1803 F8 183 Session Progress Proxy 1 -> Alice 1805 SIP/2.0 183 Session Progress 1806 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1807 ;received=192.0.2.101 1808 Record-Route: 1809 From: Alice 1810 ;tag=9fxced76sl 1811 To: Bob 1812 ;tag=314159 1813 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1814 CSeq: 1 INVITE 1815 Contact: 1816 Content-Type: application/sdp 1817 Content-Length: 146 1819 v=0 1820 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 1821 s=- 1822 c=IN IP4 ngw1.a.example.com 1823 t=0 0 1824 m=audio 3456 RTP/AVP 0 1825 a=rtpmap:0 PCMU/8000 1827 /* Caller hears the recorded announcement, then hangs up */ 1829 F9 CANCEL Alice -> Proxy 1 1831 CANCEL sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1832 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1833 Max-Forwards: 70 1834 From: Alice 1835 ;tag=9fxced76sl 1836 To: Bob 1837 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1838 CSeq: 1 CANCEL 1839 Content-Length: 0 1841 F10 200 OK Proxy 1 -> A 1843 SIP/2.0 200 OK 1844 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1845 ;received=192.0.2.101 1846 From: Alice 1847 ;tag=9fxced76sl 1848 To: Bob 1849 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1850 CSeq: 1 CANCEL 1851 Content-Length: 0 1853 F11 CANCEL Proxy 1 -> NGW 1 1855 CANCEL sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1856 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1857 Max-Forwards: 70 1858 From: Alice 1859 ;tag=9fxced76sl 1860 To: Bob 1861 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1862 CSeq: 1 CANCEL 1863 Content-Length: 0 1865 F12 200 OK NGW 1 -> Proxy 1 1867 SIP/2.0 200 OK 1868 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1869 ;received=192.0.2.111 1871 From: Alice 1872 ;tag=9fxced76sl 1873 To: Bob 1874 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1875 CSeq: 1 CANCEL 1876 Content-Length: 0 1878 F13 REL NGW 1 -> B 1880 REL 1881 CauseCode=18 No user responding 1883 F14 RLC B -> NGW 1 1885 RLC 1887 F15 487 Request Terminated NGW 1 -> Proxy 1 1889 SIP/2.0 487 Request Terminated 1890 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1891 ;received=192.0.2.111 1892 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1893 ;received=192.0.2.101 1894 From: Alice 1895 ;tag=9fxced76sl 1896 To: Bob 1897 ;tag=314159 1898 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1899 CSeq: 1 INVITE 1900 Content-Length: 0 1902 F16 ACK Proxy 1 -> NGW 1 1904 ACK sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1905 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 1906 Max-Forwards: 70 1907 From: Alice 1908 ;tag=9fxced76sl 1909 To: Bob 1910 ;tag=314159 1911 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1912 CSeq: 1 ACK 1913 Content-Length: 0 1914 F17 487 Request Terminated Proxy 1 -> A 1916 SIP/2.0 487 Request Terminated 1917 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1918 ;received=192.0.2.101 1919 From: Alice 1920 ;tag=9fxced76sl 1921 To: Bob 1922 ;tag=314159 1923 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1924 CSeq: 1 INVITE 1925 Content-Length: 0 1927 F18 ACK Alice -> Proxy 1 1929 ACK sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 1930 Via: SIP/2.0/UDP client.a.example.com:5060;branch=z9hG4bK74bf9 1931 Max-Forwards: 70 1932 From: Alice 1933 ;tag=9fxced76sl 1934 To: Bob 1935 ;tag=314159 1936 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1937 CSeq: 1 ACK 1938 Content-Length: 0 1940 2.6 Unsuccessful SIP to PSTN: REL w/Cause from PSTN 1942 Alice Proxy 1 NGW 1 Switch B 1943 | | | | 1944 | INVITE F1 | | | 1945 |--------------->| | | 1946 | 100 F2 | | | 1947 |<---------------| INVITE F3 | | 1948 | |--------------->| | 1949 | | 100 F4 | | 1950 | |<---------------| IAM F5 | 1951 | | |--------------->| 1952 | | | REL(1) F6 | 1953 | | |<---------------| 1954 | | | RLC F7 | 1955 | | 404 F8 |--------------->| 1956 | |<---------------| | 1957 | | ACK F9 | | 1958 | |--------------->| | 1959 | 404 F10 | | | 1960 |<---------------| | | 1961 | ACK F11 | | | 1962 |--------------->| | | 1963 | | | | 1965 Alice calls PSTN Bob through a Proxy Server Proxy 1 and a Network 1966 Gateway NGW 1. The call is rejected by the PSTN with a 1967 ANSI ISUP Release message REL containing a specific Cause code. 1968 This cause value (1) is mapped by the Gateway to a SIP 404 Address 1969 Incomplete response which is proxied back to Alice. For more 1970 details of ISUP cause value to SIP response mapping refer to [4]. 1972 Message Details 1974 F1 INVITE Alice -> Proxy 1 1976 INVITE sip:+44-1234@ss1.a.example.com;user=phone SIP/2.0 1977 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 1978 Max-Forwards: 70 1979 From: Alice 1980 ;tag=9fxced76sl 1981 To: Bob 1982 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 1983 CSeq: 1 INVITE 1984 Contact: 1985 Proxy-Authorization: Digest username="alice", 1986 realm="a.example.com", nonce="j1c3b0b01cf832da2c5ac51bb59a05b40", 1987 opaque="", uri="sip:+44-1234@ss1.a.example.com;user=phone", 1988 response="a451358d46b55512863efe1dccaa2f42" 1989 Content-Type: application/sdp 1990 Content-Length: 154 1992 v=0 1993 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 1994 s=- 1995 c=IN IP4 client.a.example.com 1996 t=0 0 1997 m=audio 49172 RTP/AVP 0 1998 a=rtpmap:0 PCMU/8000 2000 F2 100 Trying Proxy 1 -> A 2002 SIP/2.0 100 Trying 2003 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2004 ;received=192.0.2.101 2005 From: Alice 2006 ;tag=9fxced76sl 2007 To: Bob 2008 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2009 CSeq: 1 INVITE 2010 Content-Length: 0 2012 /* Proxy 1 uses a Location Service function to determine where B is 2013 located. Based upon location analysis the call is forwarded to NGW1. 2014 Client for A prepares to receive data on port 49172 from the network. 2015 */ 2017 F3 INVITE Proxy 1 -> NGW 1 2019 INVITE sip:+44-1234@ngw1.a.example.com;user=phone SIP/2.0 2020 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2021 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2022 ;received=192.0.2.101 2023 Max-Forwards: 69 2024 Record-Route: 2025 From: Alice 2026 ;tag=9fxced76sl 2027 To: Bob 2028 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2029 CSeq: 1 INVITE 2030 Contact: 2031 Content-Type: application/sdp 2032 Content-Length: 154 2033 v=0 2034 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 2035 s=- 2036 c=IN IP4 client.a.example.com 2037 t=0 0 2038 m=audio 49172 RTP/AVP 0 2039 a=rtpmap:0 PCMU/8000 2041 F4 100 Trying NGW 1 -> Proxy 1 2043 SIP/2.0 100 Trying 2044 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2045 ;received=192.0.2.111 2046 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2047 ;received=192.0.2.101 2048 From: Alice 2049 ;tag=9fxced76sl 2050 To: Bob 2051 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2052 CSeq: 1 INVITE 2053 Content-Length: 0 2055 F5 IAM NGW 1 -> Bob 2057 IAM 2058 CdPN=44-1234,NPI=E.164,NOA=International 2059 CgPN=314-555-1111,NPI=E.164,NOA=National 2061 F6 REL Bob -> NGW 1 2063 REL 2064 CauseValue=1 Unallocated number 2066 F7 RLC NGW 1 -> Bob 2068 RLC 2070 /* Network Gateway maps CauseValue=1 to the SIP message 404 Not 2071 Found */ 2073 F8 404 Not Found NGW 1 -> Proxy 1 2075 SIP/2.0 404 Not Found 2076 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2077 ;received=192.0.2.111 2078 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2079 ;received=192.0.2.101 2080 From: Alice 2081 ;tag=9fxced76sl 2082 To: Bob ;tag=314159 2083 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2084 CSeq: 1 INVITE 2085 Error-Info: 2086 Content-Length: 0 2088 F9 ACK Proxy 1 -> NGW 1 2090 ACK sip:+44-1234@ngw1.a.example.com;user=phone SIP/2.0 2091 Max-Forwards: 70 2092 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2093 From: Alice 2094 ;tag=9fxced76sl 2095 To: Bob ;tag=314159 2096 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2097 CSeq: 1 ACK 2098 Content-Length: 0 2100 F10 404 Not Found Proxy 1 -> Alice 2102 SIP/2.0 404 Not Found 2103 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2104 ;received=192.0.2.101 2105 From: Alice 2106 ;tag=9fxced76sl 2107 To: Bob ;tag=314159 2108 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2109 CSeq: 1 INVITE 2110 Error-Info: 2111 Content-Length: 0 2113 F11 ACK Alice -> Proxy 1 2115 ACK sip:+44-1234@ss1.a.example.com;user=phone SIP/2.0 2116 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2117 Max-Forwards: 70 2118 From: Alice 2119 ;tag=9fxced76sl 2120 To: Bob ;tag=314159 2121 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2122 CSeq: 1 ACK 2123 Content-Length: 0 2125 2.7 Unsuccessful SIP to PSTN: ANM Timeout 2127 Alice Proxy 1 NGW 1 Switch B 2128 | | | | 2129 | INVITE F1 | | | 2130 |--------------->| | | 2131 | 100 F2 | | | 2132 |<---------------| INVITE F3 | | 2133 | |--------------->| | 2134 | | 100 F4 | | 2135 | |<---------------| IAM F5 | 2136 | | |--------------->| 2137 | | | ACM F6 | 2138 | | 183 F7 |<---------------| 2139 | 183 F8 |<---------------| | 2140 |<---------------| | | 2141 | | Timer on NGW 1 Expires | 2142 | | | | 2143 | | | REL F9 | 2144 | | |--------------->| 2145 | | | RLC F10 | 2146 | | 480 F11 |<---------------| 2147 | |<---------------| | 2148 | | ACK F12 | | 2149 | |--------------->| | 2150 | 480 F13 | | | 2151 |<---------------| | | 2152 | ACK F14 | | | 2153 |--------------->| | | 2155 Alice calls Bob in the PSTN through a proxy server Proxy 1 and 2156 Network Gateway NGW 1. The call is released by the Gateway after a 2157 timer expires due to no ANswer Message (ANM) being received. The 2158 Gateway sends an ISUP Release REL message to the PSTN and a 480 2159 Temporarily Unavailable response to Alice in the SIP network. 2161 Message Details 2163 F1 INVITE Alice -> Proxy 1 2165 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 2166 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2167 Max-Forwards: 70 2168 From: Alice 2169 ;tag=9fxced76sl 2170 To: Bob 2171 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2172 CSeq: 1 INVITE 2173 Contact: 2174 Proxy-Authorization: Digest username="alice", 2175 realm="a.example.com", nonce="da2c5ac51bb59a05j1c3b0b01cf832b40", 2176 opaque="", uri="sip:+19725552222@ss1.a.example.com;user=phone", 2177 response="579cb9db184cdc25bf816f37cbc03c7d" 2178 Content-Type: application/sdp 2179 Content-Length: 154 2181 v=0 2182 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 2183 s=- 2184 c=IN IP4 client.a.example.com 2185 t=0 0 2186 m=audio 49172 RTP/AVP 0 2187 a=rtpmap:0 PCMU/8000 2189 /* Proxy 1 uses a Location Service function to determine where B is 2190 located. Based upon location analysis the call is forwarded to NGW 2191 1. Client for A prepares to receive data on port 49172 from the 2192 network.*/ 2194 F2 100 Trying Proxy 1 -> A 2196 SIP/2.0 100 Trying 2197 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2198 ;received=192.0.2.101 2199 From: Alice 2200 ;tag=9fxced76sl 2201 To: Bob 2202 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2203 CSeq: 1 INVITE 2204 Content-Length: 0 2206 F3 INVITE Proxy 1 -> NGW 1 2208 INVITE sip:+19725552222@ngw1.a.example.com;user=phone SIP/2.0 2209 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2210 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2211 ;received=192.0.2.101 2212 Max-Forwards: 69 2213 Record-Route: 2214 From: Alice 2215 ;tag=9fxced76sl 2216 To: Bob 2217 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2218 CSeq: 1 INVITE 2219 Contact: 2220 Content-Type: application/sdp 2221 Content-Length: 154 2223 v=0 2224 o=alice 2890844526 2890844526 IN IP4 client.a.example.com 2225 s=- 2226 c=IN IP4 client.a.example.com 2227 t=0 0 2228 m=audio 49172 RTP/AVP 0 2229 a=rtpmap:0 PCMU/8000 2231 F4 100 Trying NGW 1 -> Proxy 1 2233 SIP/2.0 100 Trying 2234 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2235 ;received=192.0.2.111 2236 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2237 ;received=192.0.2.101 2238 From: Alice 2239 ;tag=9fxced76sl 2240 To: Bob 2241 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2242 CSeq: 1 INVITE 2243 Content-Length: 0 2245 F5 IAM NGW 1 -> Bob 2247 IAM 2248 CdPN=972-555-2222,NPI=E.164,NOA=National 2249 CgPN=314-555-1111,NPI=E.164,NOA=National 2251 F6 ACM Bob -> NGW 1 2253 ACM 2255 F7 183 Session Progress NGW 1 -> Proxy 1 2257 SIP/2.0 183 Session Progress 2258 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2259 ;received=192.0.2.111 2260 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2261 ;received=192.0.2.101 2262 Record-Route: 2263 From: Alice 2264 ;tag=9fxced76sl 2265 To: Bob 2266 ;tag=314159 2267 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2268 CSeq: 1 INVITE 2269 Contact: 2270 Content-Type: application/sdp 2271 Content-Length: 146 2273 v=0 2274 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2275 s=- 2276 c=IN IP4 ngw1.a.example.com 2277 t=0 0 2278 m=audio 3456 RTP/AVP 0 2279 a=rtpmap:0 PCMU/8000 2281 F8 183 Session Progress Proxy 1 -> Alice 2283 SIP/2.0 183 Session Progress 2284 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2285 ;received=192.0.2.101 2286 Record-Route: 2287 From: Alice 2288 ;tag=9fxced76sl 2289 To: Bob 2290 ;tag=314159 2291 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2292 CSeq: 1 INVITE 2293 Contact: 2294 Content-Type: application/sdp 2295 Content-Length: 146 2297 v=0 2298 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2299 s=- 2300 c=IN IP4 ngw1.a.example.com 2301 t=0 0 2302 m=audio 3456 RTP/AVP 0 2303 a=rtpmap:0 PCMU/8000 2305 /* After NGW 1's timer expires, Network Gateway sends REL to ISUP 2306 network and 480 to SIP network */ 2308 F9 REL NGW 1 -> Bob 2310 REL 2311 CauseCode=18 No user responding 2313 F10 RLC Bob -> NGW 1 2315 RLC 2317 F11 480 Temporarily Unavailable NGW 1 -> Proxy 1 2319 SIP/2.0 480 Temporarily Unavailable 2320 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2321 ;received=192.0.2.111 2322 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2323 ;received=192.0.2.101 2324 From: Alice 2325 ;tag=9fxced76sl 2326 To: Bob 2327 ;tag=314159 2328 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2329 CSeq: 1 INVITE 2330 Error-Info: 2331 Content-Length: 0 2333 F12 ACK Proxy 1 -> NGW 1 2335 ACK sip:ngw1@a.example.com SIP/2.0 2336 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2337 Max-Forwards: 70 2338 From: Alice 2339 ;tag=9fxced76sl 2340 To: Bob 2341 ;tag=314159 2342 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2343 CSeq: 1 ACK 2344 Content-Length: 0 2346 F13 480 Temporarily Unavailable F13 Proxy 1 -> Alice 2348 SIP/2.0 480 Temporarily Unavailable 2349 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2350 ;received=192.0.2.101 2351 From: Alice 2352 ;tag=9fxced76sl 2353 To: Bob 2354 ;tag=314159 2355 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2356 CSeq: 1 INVITE 2357 Error-Info: 2358 Content-Length: 0 2360 F14 ACK Alice -> Proxy 1 2362 ACK sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 2363 Max-Forwards: 70 2364 Via: SIP/2.0/TCP client.a.example.com:5060;branch=z9hG4bK74bf9 2365 From: Alice 2366 ;tag=9fxced76sl 2367 To: Bob 2368 ;tag=314159 2369 Call-ID: 2xTb9vxSit55XU7p8@a.example.com 2370 CSeq: 1 ACK 2371 Content-Length: 0 2373 3. PSTN to SIP Dialing 2375 In these scenarios, Alice is placing calls from the PSTN to Bob 2376 in a SIP network. Alice's telephone switch signals to a Network 2377 Gateway (NGW 1) using ANSI ISUP. 2379 Since the called SIP User Agent does not send in-band signaling 2380 information, no early media path needs to be established on the IP 2381 side. As a result, the 183 Session Progress response is not used. 2382 However, NGW 1 will establish a one way speech path prior to call 2383 completion, and generate ringing for the PSTN caller. Any tones or 2384 recordings are generated by NGW 1 and played in this speech path. 2385 When the call completes successfully, NGW 1 bridges the PSTN speech 2386 path with the IP media path. 2388 To reduce the number of messages, only a single proxy server is shown 2389 in these flows, which means that the a.example.com proxy server has 2390 access to the b.example.com location service. 2392 3.1 Successful PSTN to SIP call 2394 Switch A NGW 1 Proxy 1 Bob 2395 | | | | 2396 | IAM F1 | | | 2397 |--------------->| INVITE F2 | | 2398 | |--------------->| INVITE F3 | 2399 | | 100 F4 |--------------->| 2400 | |<---------------| | 2401 | | | 180 F5 | 2402 | | 180 F6 |<---------------| 2403 | ACM F7 |<---------------| | 2404 |<---------------| | | 2405 | One Way Voice | | | 2406 |<===============| | | 2407 | Ringing Tone | | 200 F8 | 2408 |<===============| 200 F9 |<---------------| 2409 | |<---------------| | 2410 | | ACK F10 | | 2411 | ANM F12 |--------------->| ACK F11 | 2412 |<---------------| |--------------->| 2413 | Both Way Voice | Both Way RTP Media | 2414 |<==============>|<===============================>| 2415 | REL F13 | | | 2416 |--------------->| | | 2417 | RLC F14 | | | 2418 |<---------------| BYE F15 | | 2419 | |--------------->| BYE F16 | 2420 | | |--------------->| 2421 | | | 200 F17 | 2422 | | 200 F18 |<---------------| 2423 | |<---------------| | 2424 | | | | 2426 In this scenario, Alice from the PSTN calls Bob through a Network 2427 Gateway NGW1 and Proxy Server Proxy 1. When Bob answers the call 2428 the media path is setup end-to-end. The call terminates when Alice 2429 hangs up the call, with Alice's telephone switch sending an ISUP 2430 RELease message which is mapped to a BYE by NGW 1. 2432 Message Details 2434 F1 IAM Alice -> NGW 1 2436 IAM 2437 CgPN=314-555-1111,NPI=E.164,NOA=National 2438 CdPN=972-555-2222,NPI=E.164,NOA=National 2439 F2 INVITE Alice -> Proxy 1 2441 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 2442 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2443 Max-Forwards: 70 2444 From: ;tag=7643kals 2445 To: 2446 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2447 CSeq: 1 INVITE 2448 Contact: 2449 Content-Type: application/sdp 2450 Content-Length: 146 2452 v=0 2453 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2454 s=- 2455 c=IN IP4 ngw1.a.example.com 2456 t=0 0 2457 m=audio 3456 RTP/AVP 0 2458 a=rtpmap:0 PCMU/8000 2460 /* Proxy 1 uses a Location Service function to determine where B is 2461 located. Based upon location analysis the call is forwarded to NGW 2462 1. NGW 1 prepares to receive data on port 3456 from Alice.*/ 2464 F3 INVITE Proxy 1 -> Bob 2466 INVITE sip:bob@client.b.example.com SIP/2.0 2467 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2468 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2469 ;received=192.0.2.103 2470 Max-Forwards: 69 2471 Record-Route: 2472 From: ;tag=7643kals 2473 To: 2474 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2475 CSeq: 1 INVITE 2476 Contact: 2477 Content-Type: application/sdp 2478 Content-Length: 146 2480 v=0 2481 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2482 s=- 2483 c=IN IP4 ngw1.a.example.com 2484 t=0 0 2485 m=audio 3456 RTP/AVP 0 2486 a=rtpmap:0 PCMU/8000 2488 F4 100 Trying Bob -> Proxy 1 2490 SIP/2.0 100 Trying 2491 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2492 ;received=192.0.2.111 2493 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2494 ;received=192.0.2.103 2495 From: ;tag=7643kals 2496 To: 2497 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2498 CSeq: 1 INVITE 2499 Content-Length: 0 2501 F5 180 Ringing Bob -> Proxy 1 2503 SIP/2.0 180 Ringing 2504 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2505 ;received=192.0.2.111 2506 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2507 ;received=192.0.2.103 2508 Record-Route: 2509 From: ;tag=7643kals 2510 To: ;tag=314159 2511 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2512 CSeq: 1 INVITE 2513 Contact: 2514 Content-Length: 0 2516 F6 180 Ringing Proxy 1 -> NGW 1 2518 SIP/2.0 180 Ringing 2519 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2520 ;received=192.0.2.103 2521 Record-Route: 2522 From: ;tag=7643kals 2523 To: ;tag=314159 2524 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2525 CSeq: 1 INVITE 2526 Contact: 2527 Content-Length: 0 2529 F7 ACM NGW 1 -> Alice 2530 ACM 2532 F8 200 OK Bob -> Proxy 1 2534 SIP/2.0 200 OK 2535 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2536 ;received=192.0.2.111 2537 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2538 ;received=192.0.2.103 2539 Record-Route: 2540 From: ;tag=7643kals 2541 To: ;tag=314159 2542 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2543 Contact: 2544 CSeq: 1 INVITE 2545 Content-Type: application/sdp 2546 Content-Length: 151 2548 v=0 2549 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 2550 s=- 2551 c=IN IP4 client.b.example.com 2552 t=0 0 2553 m=audio 3456 RTP/AVP 0 2554 a=rtpmap:0 PCMU/8000 2556 F9 200 OK Proxy 1 -> NGW 1 2558 SIP/2.0 200 OK 2559 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2560 ;received=192.0.2.103 2561 Record-Route: 2562 From: ;tag=7643kals 2563 To: ;tag=314159 2564 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2565 CSeq: 1 INVITE 2566 Contact: 2567 Content-Type: application/sdp 2568 Content-Length: 151 2570 v=0 2571 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 2572 s=- 2573 c=IN IP4 client.b.example.com 2574 t=0 0 2575 m=audio 3456 RTP/AVP 0 2576 a=rtpmap:0 PCMU/8000 2577 F10 ACK NGW 1 -> Proxy 1 2579 ACK sip:bob@client.b.example.com SIP/2.0 2580 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2581 Max-Forwards: 70 2582 Route: 2583 From: ;tag=7643kals 2584 To: ;tag=314159 2585 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2586 CSeq: 1 ACK 2587 Content-Length: 0 2589 F11 ACK Proxy 1 -> Bob 2591 ACK sip:bob@client.b.example.com SIP/2.0 2592 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2593 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2594 ;received=192.0.2.103 2595 Max-Forwards: 69 2596 From: ;tag=7643kals 2597 To: ;tag=314159 2598 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2599 CSeq: 1 ACK 2600 Content-Length: 0 2602 F12 ANM Bob -> NGW 1 2604 ANM 2606 /* RTP streams are established between A and B (via the GW) */ 2608 /* Alice Hangs Up with Bob. */ 2610 F13 REL Alice -> NGW 1 2612 REL 2613 CauseCode=16 Normal 2615 F14 RLC NGW 1 -> Alice 2617 RLC 2618 F15 BYE NGW 1-> Proxy 1 2620 BYE sip:bob@client.b.example.com SIP/2.0 2621 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2622 Max-Forwards: 70 2623 Route: 2624 From: ;tag=7643kals 2625 To: ;tag=314159 2626 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2627 CSeq: 2 BYE 2628 Content-Length: 0 2630 F16 BYE Proxy 1 -> Bob 2632 BYE sip:bob@client.b.example.com SIP/2.0 2633 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2634 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2635 ;received=192.0.2.103 2636 Max-Forwards: 69 2637 From: ;tag=7643kals 2638 To: ;tag=314159 2639 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2640 CSeq: 2 BYE 2641 Content-Length: 0 2643 F17 200 OK Bob -> Proxy 1 2645 SIP/2.0 200 OK 2646 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2647 ;received=192.0.2.111 2648 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2649 ;received=192.0.2.103 2650 From: ;tag=7643kals 2651 To: ;tag=314159 2652 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2653 CSeq: 2 BYE 2654 Content-Length: 0 2656 F18 200 OK Proxy 1 -> NGW 1 2658 SIP/2.0 200 OK 2659 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2660 ;received=192.0.2.103 2661 From: ;tag=7643kals 2662 To: ;tag=314159 2663 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2664 CSeq: 2 BYE 2665 Content-Length: 0 2667 3.2 Successful PSTN to SIP call, Fast Answer 2669 Switch A NGW 1 Proxy 1 Bob 2670 | | | | 2671 | IAM F1 | | | 2672 |--------------->| INVITE F2 | | 2673 | |--------------->| INVITE F3 | 2674 | | 100 F4 |--------------->| 2675 | |<---------------| | 2676 | | | 200 F5 | 2677 | | 200 F6 |<---------------| 2678 | |<---------------| | 2679 | | ACK F7 | | 2680 | ANM F9 |--------------->| ACK F8 | 2681 |<---------------| |--------------->| 2682 | Both Way Voice | Both Way RTP Media | 2683 |<==============>|<===============================>| 2684 | REL F10 | | | 2685 |--------------->| | | 2686 | RLC F11 | | | 2687 |<---------------| BYE F12 | | 2688 | |--------------->| BYE F13 | 2689 | | |--------------->| 2690 | | | 200 F14 | 2691 | | 200 F15 |<---------------| 2692 | |<---------------| | 2693 | | | | 2695 This "fast answer" scenario is similar to 3.1 except that Bob 2696 immediately accepts the call, sending a 200 OK (F5) without sending a 2697 180 Ringing response. The Gateway then sends an Answer Message (ANM) 2698 without sending an Address Complete Message (ACM). Note that for 2699 ETSI and some other ISUP variants, a CONnect message (CON) would be 2700 sent instead of the ANM. 2702 Message Details 2704 F1 IAM Alice -> NGW 1 2706 IAM 2707 CgPN=314-555-1111,NPI=E.164,NOA=National 2708 CdPN=972-555-2222,NPI=E.164,NOA=National 2710 F2 INVITE NGW 1 -> Proxy 1 2712 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 2713 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2714 Max-Forwards: 70 2715 From: ;tag=7643kals 2716 To: 2717 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2718 CSeq: 1 INVITE 2719 Contact: 2720 Content-Type: application/sdp 2721 Content-Length: 146 2723 v=0 2724 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2725 s=- 2726 c=IN IP4 ngw1.a.example.com 2727 t=0 0 2728 m=audio 3456 RTP/AVP 0 2729 a=rtpmap:0 PCMU/8000 2731 /* Proxy 1 uses a Location Service function to determine where B is 2732 located. Based upon location analysis the call is forwarded to User 2733 B. Bob prepares to receive data on port 3456 from Alice.*/ 2735 F3 INVITE Proxy 1 -> Bob 2737 INVITE bob@b.example.com SIP/2.0 2738 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2739 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2740 ;received=192.0.2.103 2741 Max-Forwards: 69 2742 Record-Route: 2743 From: ;tag=7643kals 2744 To: 2745 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2746 CSeq: 1 INVITE 2747 Contact: 2748 Content-Type: application/sdp 2749 Content-Length: 146 2751 v=0 2752 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2753 s=- 2754 c=IN IP4 ngw1.a.example.com 2755 t=0 0 2756 m=audio 3456 RTP/AVP 0 2757 a=rtpmap:0 PCMU/8000 2759 F4 100 Trying Proxy 1 -> NGW 1 2760 SIP/2.0 100 Trying 2761 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2762 ;received=192.0.2.201 2763 From: ;tag=7643kals 2764 To: 2765 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2766 CSeq: 1 INVITE 2767 Content-Length: 0 2769 F5 200 OK Bob -> Proxy 1 2771 SIP/2.0 200 OK 2772 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2773 ;received=192.0.2.111 2774 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2775 ;received=192.0.2.103 2776 Record-Route: 2777 From: ;tag=7643kals 2778 To: ;tag=314159 2779 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2780 CSeq: 1 INVITE 2781 Contact: 2782 Content-Type: application/sdp 2783 Content-Length: 151 2785 v=0 2786 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 2787 s=- 2788 c=IN IP4 client.b.example.com 2789 t=0 0 2790 m=audio 3456 RTP/AVP 0 2791 a=rtpmap:0 PCMU/8000 2793 F6 200 OK Proxy 1 -> NGW 1 2795 SIP/2.0 200 OK 2796 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2797 ;received=192.0.2.103 2798 Record-Route: 2799 From: ;tag=7643kals 2800 To: ;tag=314159 2801 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2802 CSeq: 1 INVITE 2803 Contact: 2804 Content-Type: application/sdp 2805 Content-Length: 151 2806 v=0 2807 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 2808 s=- 2809 c=IN IP4 client.b.example.com 2810 t=0 0 2811 m=audio 3456 RTP/AVP 0 2812 a=rtpmap:0 PCMU/8000 2814 F7 ACK NGW 1 -> Proxy 1 2816 ACK bob@client.b.example.com SIP/2.0 2817 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2818 Max-Forwards: 70 2819 Route: 2820 From: ;tag=7643kals 2821 To: ;tag=314159 2822 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2823 CSeq: 1 ACK 2824 Content-Length: 0 2826 F8 ACK Proxy 1 -> Bob 2828 ACK bob@client.b.example.com SIP/2.0 2829 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2830 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2831 ;received=130.131.132.14 2832 Max-Forwards: 69 2833 From: ;tag=7643kals 2834 To: ;tag=314159 2835 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2836 CSeq: 1 ACK 2837 Content-Length: 0 2839 F9 ANM Bob -> NGW 1 2841 ANM 2843 /* RTP streams are established between A and B (via the GW) */ 2845 /* Alice Hangs Up with Bob. */ 2847 F10 REL ser Alice -> NGW 1 2849 REL 2850 CauseCode=16 Normal 2851 F11 RLC NGW 1 -> Alice 2853 RLC 2855 F12 BYE NGW 1 -> Proxy 1 2857 BYE sip:bob@client.b.example.com SIP/2.0 2858 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2859 Max-Forwards: 70 2860 Route: 2861 From: ;tag=7643kals 2862 To: ;tag=314159 2863 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2864 CSeq: 2 BYE 2865 Content-Length: 0 2867 F13 BYE Proxy 1 -> Bob 2869 BYE sip:bob@client.b.example.com SIP/2.0 2870 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2871 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2872 ;received=192.0.2.103 2873 Max-Forwards: 69 2874 From: ;tag=7643kals 2875 To: ;tag=314159 2876 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2877 CSeq: 2 BYE 2878 Content-Length: 0 2880 F14 200 OK Bob -> Proxy 1 2882 SIP/2.0 200 OK 2883 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2884 ;received=192.0.2.111 2885 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2886 ;received=192.0.2.103 2887 From: ;tag=7643kals 2888 To: ;tag=314159 2889 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2890 CSeq: 2 BYE 2891 Content-Length: 0 2893 F15 200 OK Proxy 1 -> NGW 1 2894 SIP/2.0 200 OK 2895 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 2896 ;received=192.0.2.103 2897 From: ;tag=7643kals 2898 To: ;tag=314159 2899 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 2900 CSeq: 2 BYE 2901 Content-Length: 0 2903 3.3 Successful PBX to SIP call 2905 PBX A GW 1 Proxy 1 Bob 2906 | | | | 2907 | Seizure | | | 2908 |--------------->| | | 2909 | Wink | | | 2910 |<---------------| | | 2911 | MF Digits F1 | | | 2912 |--------------->| INVITE F2 | | 2913 | |--------------->| INVITE F3 | 2914 | | 100 F4 |--------------->| 2915 | |<---------------| | 2916 | | | 180 F5 | 2917 | | 180 F6 |<---------------| 2918 | |<---------------| | 2919 | One Way Voice | | | 2920 |<===============| | | 2921 | Ringing Tone | | 200 F7 | 2922 |<===============| 200 F8 |<---------------| 2923 | |<---------------| | 2924 | | ACK F9 | | 2925 | Seizure |--------------->| ACK F10 | 2926 |<---------------| |--------------->| 2927 | Both Way Voice | Both Way RTP Media | 2928 |<==============>|<===============================>| 2929 | Seizure Removal| | | 2930 |--------------->| | | 2931 | Seizure Removal| | | 2932 |<---------------| BYE F11 | | 2933 | |--------------->| BYE F12 | 2934 | | |--------------->| 2935 | | | 200 F13 | 2936 | | 200 F14 |<---------------| 2937 | |<---------------| | 2938 | | | | 2940 In this scenario, Alice dials from PBX A to Bob through GW 1 and 2941 Proxy 1. This is an example of a call that appears destined for the 2942 PSTN but instead is routed to a SIP Client. 2944 Signaling between PBX A and GW 1 is Feature Group B (FGB) circuit 2945 associated signaling, in-band Mult-Frequency (MF) outpulsing. After 2946 the receipt of the 180 Ringing from Bob, GW 1 generates ringing 2947 tone for Alice. 2949 Bob answers the call by sending a 200 OK. The call terminates 2950 when Alice hangs up, causing GW1 to send a BYE. 2952 The Gateway can only identify the trunk group that the 2953 call came in on, it cannot identify the individual line on PBX A that 2954 is placing the call. The SIP URI used to identify the caller is 2955 shown in these flows as sip:551313@gw1.a.example.com. 2957 Message Details 2959 PBX Alice -> GW 1 2961 Seizure 2963 GW 1 -> PBX A 2965 Wink 2967 F1 MF Digits PBX Alice -> GW 1 2969 KP 1 972 555 2222 ST 2971 F2 INVITE GW 1 -> Proxy 1 2973 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 2974 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 2975 Max-Forwards: 70 2976 From: ;tag=jwdkallkzm 2977 To: 2978 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 2979 CSeq: 1 INVITE 2980 Contact: 2981 Content-Type: application/sdp 2982 Content-Length: 146 2984 v=0 2985 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 2986 s=- 2987 c=IN IP4 gw1.a.example.com 2988 t=0 0 2989 m=audio 3456 RTP/AVP 0 2990 a=rtpmap:0 PCMU/8000 2992 /* Proxy 1 uses a Location Service function to determine where the 2993 phone number +19725552222 is located. Based upon location 2994 analysis the call is forwarded to SIP Bob. */ 2995 F3 INVITE Proxy 1 -> Bob 2997 INVITE sip:bob@client.b.example.com SIP/2.0 2998 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 2999 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3000 ;received=192.0.2.201 3001 Max-Forwards: 69 3002 Record-Route: 3003 From: ;tag=jwdkallkzm 3004 To: 3005 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3006 CSeq: 1 INVITE 3007 Contact: 3008 Content-Type: application/sdp 3009 Content-Length: 146 3011 v=0 3012 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 3013 s=- 3014 c=IN IP4 gw1.a.example.com 3015 t=0 0 3016 m=audio 3456 RTP/AVP 0 3017 a=rtpmap:0 PCMU/8000 3019 F4 100 Trying Proxy 1 -> GW 1 3021 SIP/2.0 100 Trying 3022 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3023 ;received=192.0.2.201 3024 From: ;tag=jwdkallkzm 3025 To: ;tag=314159 3026 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3027 CSeq: 1 INVITE 3028 Content-Length: 0 3030 F5 180 Ringing Bob -> Proxy 1 3032 SIP/2.0 180 Ringing 3033 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3034 ;received=192.0.2.111 3035 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3036 ;received=192.0.2.201 3037 Record-Route: 3038 From: ;tag=jwdkallkzm 3039 To: ;tag=314159 3040 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3041 CSeq: 1 INVITE 3042 Contact: 3043 Content-Length: 0 3045 F6 180 Ringing Proxy 1 -> GW 1 3047 SIP/2.0 180 Ringing 3048 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3049 ;received=192.0.2.201 3050 Record-Route: 3051 From: ;tag=jwdkallkzm 3052 To: ;tag=314159 3053 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3054 CSeq: 1 INVITE 3055 Contact: 3056 Content-Length: 0 3058 /* One way Voice path is established between GW and the PBX for 3059 ringing. */ 3061 F7 200 OK Bob -> Proxy 1 3063 SIP/2.0 200 OK 3064 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3065 ;received=192.0.2.111 3066 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3067 ;received=192.0.2.201 3068 Record-Route: 3069 From: ;tag=jwdkallkzm 3070 To: ;tag=314159 3071 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3072 Contact: 3073 CSeq: 1 INVITE 3074 Content-Type: application/sdp 3075 Content-Length: 151 3077 v=0 3078 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 3079 s=- 3080 c=IN IP4 client.b.example.com 3081 t=0 0 3082 m=audio 3456 RTP/AVP 0 3083 a=rtpmap:0 PCMU/8000 3085 F8 200 OK Proxy 1 -> GW 1 3087 SIP/2.0 200 OK 3088 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3089 ;received=192.0.2.201 3090 Record-Route: 3091 From: ;tag=jwdkallkzm 3092 To: ;tag=314159 3093 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3094 CSeq: 1 INVITE 3095 Contact: 3096 Content-Type: application/sdp 3097 Content-Length: 151 3099 v=0 3100 o=bob 2890844527 2890844527 IN IP4 client.b.example.com 3101 s=- 3102 c=IN IP4 client.b.example.com 3103 t=0 0 3104 m=audio 3456 RTP/AVP 0 3105 a=rtpmap:0 PCMU/8000 3107 F9 ACK GW 1 -> Proxy 1 3109 ACK sip:bob@client.b.example.com SIP/2.0 3110 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3111 Max-Forwards: 70 3112 Route: 3113 From: ;tag=jwdkallkzm 3114 To: ;tag=314159 3115 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3116 CSeq: 1 ACK 3117 Content-Length: 0 3119 F10 ACK Proxy 1 -> Bob 3121 ACK sip:bob@client.b.example.com SIP/2.0 3122 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3123 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3124 ;received=192.0.2.201 3125 Max-Forwards: 69 3126 From: ;tag=jwdkallkzm 3127 To: ;tag=314159 3128 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3129 CSeq: 1 ACK 3130 Content-Length: 0 3132 /* RTP streams are established between A and B (via the GW) */ 3133 /* Alice Hangs Up with Bob. */ 3135 F11 BYE GW 1 -> Proxy 1 3137 BYE sip:bob@client.b.example.com SIP/2.0 3138 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3139 Max-Forwards: 70 3140 Route: 3141 From: ;tag=jwdkallkzm 3142 To: ;tag=314159 3143 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3144 CSeq: 2 BYE 3145 Content-Length: 0 3147 F12 BYE Proxy 1 -> Bob 3149 BYE sip:bob@client.b.example.com SIP/2.0 3150 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3151 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3152 ;received=192.0.2.201 3153 Max-Forwards: 69 3154 To: ;tag=314159 3155 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3156 CSeq: 2 BYE 3157 Content-Length: 0 3159 F13 200 OK Bob -> Proxy 1 3161 SIP/2.0 200 OK 3162 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3163 ;received=192.0.2.111 3164 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3165 ;received=192.0.2.201 3166 From: ;tag=jwdkallkzm 3167 To: ;tag=314159 3168 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3169 CSeq: 2 BYE 3170 Content-Length: 0 3172 F14 200 OK Proxy 1 -> GW 1 3174 SIP/2.0 200 OK 3175 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 3176 ;received=192.0.2.201 3177 From: ;tag=jwdkallkzm 3178 To: ;tag=314159 3179 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3180 CSeq: 2 BYE 3181 Content-Length: 0 3183 3.4 Unsuccessful PSTN to SIP REL, SIP error mapped to REL 3185 Switch A GW 1 Proxy 1 Bob 3186 | | | | 3187 | IAM F1 | | | 3188 |--------------->| INVITE F2 | | 3189 | |--------------->| | 3190 | | 604 F3 | | 3191 | |<---------------| | 3192 | | ACK F4 | | 3193 | |--------------->| | 3194 | REL F5 | | | 3195 |<---------------| | | 3196 | RLC F6 | | | 3197 |--------------->| | | 3198 | | | | 3200 Alice attempts to place a call through Gateway GW 1 and Proxy 1, 3201 which is unable to find any routing for the number. The call is 3202 rejected by Proxy 1 with a REL message containing a specific Cause 3203 value mapped by the gateway based on the SIP error. 3205 Message Details 3207 F1 IAM Alice -> GW 1 3209 IAM 3210 CgPN=314-555-1111,NPI=E.164,NOA=National 3211 CdPN=972-555-9999,NPI=E.164,NOA=National 3213 F2 INVITE Alice -> Proxy 1 3215 INVITE sip:+1972559999@ss1.a.example.com;user=phone SIP/2.0 3216 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3217 Max-Forwards: 70 3218 From: ;tag=076342s 3219 To: 3220 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3221 CSeq: 1 INVITE 3222 Contact: 3223 3224 Content-Type: application/sdp 3225 Content-Length: 144 3227 v=0 3228 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 3229 s=- 3230 c=IN IP4 gw1.a.example.com 3231 t=0 0 3232 m=audio 3456 RTP/AVP 0 3233 a=rtpmap:0 PCMU/8000 3235 /* Proxy 1 uses a Location Service to find a route to +1-972-555- 3236 9999. A route is not found, so Proxy 1 rejects the call. */ 3238 F3 604 Does Not Exist Anywhere Proxy 1 -> GW 1 3240 SIP/2.0 604 Does Not Exist Anywhere 3241 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3242 ;received=192.0.2.201 3243 From: ;tag=076342s 3244 To: ;tag=6a34d410 3245 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3246 CSeq: 1 INVITE 3247 Error-Info: 3248 Content-Length: 0 3250 F4 ACK GW 1 -> Proxy 1 3252 ACK sip:+1972559999@ss1.a.example.com;user=phone SIP/2.0 3253 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3254 Max-Forwards: 70 3255 From: ;tag=076342s 3256 To: ;tag=6a34d410 3257 Call-ID: 4Fde34wkd11wsGFDs3@gw1.a.example.com 3258 CSeq: 1 ACK 3259 Content-Length: 0 3261 F5 REL GW 1 -> Alice 3263 REL 3264 CauseCode=1 3266 F6 RLC Alice -> GW 1 3268 RLC 3270 3.5 Unsuccessful PSTN to SIP REL, SIP busy mapped to REL 3272 Switch A NGW 1 Proxy 1 Bob 3273 | | | | 3274 | IAM F1 | | | 3275 |--------------->| INVITE F2 | | 3276 | |--------------->| INVITE F3 | 3277 | | 100 F4 |--------------->| 3278 | |<---------------| | 3279 | | | 600 F5 | 3280 | | |<---------------| 3281 | | | ACK F6 | 3282 | | 600 F7 |--------------->| 3283 | |<---------------| | 3284 | | ACK F8 | | 3285 | |--------------->| | 3286 | REL(17) F9 | | | 3287 |<---------------| | | 3288 | RLC F10 | | | 3289 |<-------------->| | | 3290 | | | | 3292 In this scenario, Alice calls Bob through Network Gateway NGW 1 3293 and Proxy 1. The call is routed to Bob by Proxy 1. The call is 3294 rejected by Bob who sends a 600 Busy Everywhere response. The 3295 Gateway sends a REL message containing a specific Cause value mapped 3296 by the gateway based on the SIP error. 3298 Since no interworking is indicated in the IAM (F1), the busy tone is 3299 generated locally by Alice's telephone switch. In some scenarios, 3300 the busy signal is generated by the Gateway since interworking is 3301 indicated. For more discussion on interworking, refer to [4]. 3303 Message Details 3305 F1 IAM Alice -> NGW 1 3307 IAM 3308 CgPN=314-555-1111,NPI=E.164,NOA=National 3309 CdPN=972-555-2222,NPI=E.164,NOA=National 3311 F2 INVITE Alice -> Proxy 1 3313 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3314 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3315 Max-Forwards: 70 3316 From: ;tag=7643kals 3317 To: 3318 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3319 CSeq: 1 INVITE 3320 Contact: 3321 Content-Type: application/sdp 3322 Content-Length: 144 3324 v=0 3325 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 3326 s=- 3327 c=IN IP4 gw1.a.example.com 3328 t=0 0 3329 m=audio 3456 RTP/AVP 0 3330 a=rtpmap:0 PCMU/8000 3332 /* Proxy 1 uses a Location Service function to determine a route for 3333 +19725552222. The call is then forwarded to Bob. */ 3335 F3 INVITE F3 Proxy 1 -> Bob 3337 INVITE bob@b.example.com SIP/2.0 3338 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3339 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3340 ;received=192.0.2.201 3341 Max-Forwards: 69 3342 Record-Route: 3343 From: ;tag=7643kals 3344 To: 3345 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3346 CSeq: 1 INVITE 3347 Contact: 3348 Content-Type: application/sdp 3349 Content-Length: 144 3351 v=0 3352 o=GW 2890844527 2890844527 IN IP4 gw1.a.example.com 3353 s=- 3354 c=IN IP4 gw1.a.example.com 3355 t=0 0 3356 m=audio 3456 RTP/AVP 0 3357 a=rtpmap:0 PCMU/8000 3359 F4 100 Trying Proxy 1 -> NGW 1 3361 SIP/2.0 100 Trying 3362 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3363 ;received=192.0.2.201 3364 From: ;tag=7643kals 3365 To: ;tag=314159 3366 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3367 CSeq: 1 INVITE 3368 Content-Length: 0 3370 F5 600 Busy Everywhere Bob -> Proxy 1 3372 SIP/2.0 600 Busy Everywhere 3373 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3374 ;received=192.0.2.111 3375 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3376 ;received=192.0.2.201 3377 From: ;tag=7643kals 3378 To: ;tag=314159 3379 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3380 CSeq: 1 INVITE 3381 Content-Length: 0 3383 F6 ACK Proxy 1 -> Bob 3385 ACK bob@b.example.com SIP/2.0 3386 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3387 Max-Forwards: 70 3388 From: ;tag=7643kals 3389 To: ;tag=314159 3390 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3391 CSeq: 1 ACK 3392 Content-Length: 0 3394 F7 600 Busy Everywhere Proxy 1 -> NGW 1 3396 SIP/2.0 600 Busy Everywhere 3397 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3398 ;received=192.0.2.201 3399 From: ;tag=7643kals 3400 To: ;tag=314159 3401 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3402 CSeq: 1 INVITE 3403 Content-Length: 0 3405 F8 ACK NGW 1 -> Proxy 1 3407 ACK bob@b.example.com SIP/2.0 3408 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3409 Max-Forwards: 70 3410 From: ;tag=7643kals 3411 To: ;tag=314159 3412 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3413 CSeq: 1 ACK 3414 Content-Length: 0 3416 F9 REL NGW 1 -> Alice 3418 REL 3419 CauseCode=17 Busy 3421 F10 RLC Alice -> NGW 1 3423 RLC 3425 3.6 Unsuccessful PSTN->SIP, SIP error interworking to tones 3427 Switch A NGW 1 Proxy 1 Bob 3428 | | | | 3429 | IAM F1 | | | 3430 |--------------->| INVITE F2 | | 3431 | |--------------->| INVITE F3 | 3432 | | 100 F4 |--------------->| 3433 | |<---------------| | 3434 | | | 600 F5 | 3435 | | |<---------------| 3436 | | | ACK F6 | 3437 | | 600 F7 |--------------->| 3438 | |<---------------| | 3439 | | ACK F8 | | 3440 | ACM F9 |--------------->| | 3441 |<---------------| | | 3442 | One Way Voice | | | 3443 |<===============| | | 3444 | Busy Tone | | | 3445 |<===============| | | 3446 | REL(16) F10 | | | 3447 |--------------->| | | 3448 | RLC F11 | | | 3449 |<---------------| | | 3450 | | | | 3452 In this scenario, Alice calls Bob through Network Gateway NGW1 3453 and Proxy 1. The call is routed to Bob by Proxy 1. The call is 3454 rejected by the Bob client. NGW 1 sets up a two way voice path to 3455 Alice and plays busy tone. The caller then disconnects 3457 NGW 1 plays the busy tone since the IAM (F1) indicates the 3458 interworking is present. In scenario 5.2.2, with no interworking, 3459 the busy indication is carried in the REL Cause value and is 3460 generated locally instead. 3462 Again, note that for ETSI or ITU ISUP, a CONnect message would be 3463 sent instead of the Answer Message. 3465 Message Details 3467 F1 IAM Alice -> NGW 1 3469 IAM 3470 CgPN=314-555-1111,NPI=E.164,NOA=National 3471 CdPN=972-555-2222,NPI=E.164,NOA=National 3472 Interworking=encountered 3474 F2 INVITE NGW1 -> Proxy 1 3476 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3477 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3478 Max-Forwards: 70 3479 From: ;tag=7643kals 3480 To: 3481 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3482 CSeq: 1 INVITE 3483 Contact: 3484 Content-Type: application/sdp 3485 Content-Length: 146 3487 v=0 3488 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3489 s=- 3490 c=IN IP4 ngw1.a.example.com 3491 t=0 0 3492 m=audio 3456 RTP/AVP 0 3493 a=rtpmap:0 PCMU/8000 3495 /* Proxy 1 uses a Location Service function to determine a route for 3496 +19725552222. The call is then forwarded to Bob. */ 3498 F3 INVITE Proxy 1 -> Bob 3500 INVITE bob@b.example.com SIP/2.0 3501 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3502 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3503 ;received=192.0.2.103 3504 Max-Forwards: 69 3505 Record-Route: 3506 From: ;tag=7643kals 3507 To: 3508 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3509 CSeq: 1 INVITE 3510 Contact: 3511 Content-Type: application/sdp 3512 Content-Length: 146 3514 v=0 3515 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3516 s=- 3517 c=IN IP4 ngw1.a.example.com 3518 t=0 0 3519 m=audio 3456 RTP/AVP 0 3520 a=rtpmap:0 PCMU/8000 3522 F4 100 Trying Bob -> Proxy 1 3524 SIP/2.0 100 Trying 3525 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3526 ;received=192.0.2.111 3527 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3528 ;received=192.0.2.103 3529 From: ;tag=7643kals 3530 To: 3531 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3532 CSeq: 1 INVITE 3533 Content-Length: 0 3535 F5 600 Busy Everywhere Bob -> Proxy 1 3537 SIP/2.0 600 Busy Everywhere 3538 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3539 ;received=192.0.2.111 3540 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3541 ;received=192.0.2.103 3542 From: ;tag=7643kals 3543 To: ;tag=314159 3544 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3545 CSeq: 1 INVITE 3546 Content-Length: 0 3548 F6 ACK Proxy 1 -> Bob 3550 ACK bob@b.example.com SIP/2.0 3551 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3552 Max-Forwards: 70 3553 From: ;tag=7643kals 3554 To: ;tag=314159 3555 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3556 CSeq: 1 ACK 3557 Content-Length: 0 3559 F7 600 Busy Everywhere Proxy 1 -> NGW 1 3561 SIP/2.0 600 Busy Everywhere 3562 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3563 ;received=192.0.2.103 3564 From: ;tag=7643kals 3565 To: ;tag=314159 3566 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3567 CSeq: 1 INVITE 3568 Content-Length: 0 3570 F8 ACK NGW 1 -> Proxy 1 3572 ACK sip:ngw1@a.example.com SIP/2.0 3573 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3574 Max-Forwards: 70 3575 From: ;tag=7643kals 3576 To: ;tag=314159 3577 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3578 CSeq: 1 ACK 3579 Content-Length: 0 3581 F9 ACM NGW 1 -> Alice 3583 ACM 3585 /* A one way speech path is established between NGW 1 and Alice. */ 3587 /* Call Released after Alice hangs up. */ 3589 F10 REL Alice -> NGW 1 3591 REL 3592 CauseCode=16 3594 F11 RLC NGW 1 -> Alice 3596 RLC 3598 3.7 Unsuccessful PSTN->SIP, ACM timeout 3600 Switch A NGW 1 Proxy 1 Bob 3601 | | | | 3602 | IAM F1 | | | 3603 |--------------->| INVITE F2 | | 3604 | |--------------->| INVITE F3 | 3605 | | 100 F4 |--------------->| 3606 | |<---------------| | 3607 | | | INVITE F5 | 3608 | | |--------------->| 3609 | | | INVITE F6 | 3610 | | |--------------->| 3611 | | | INVITE F7 | 3612 | | |--------------->| 3613 | | | INVITE F8 | 3614 | | |--------------->| 3615 | | | INVITE F9 | 3616 | | |--------------->| 3617 | REL F10 | | | 3618 |--------------->| | | 3619 | RLC F11 | | | 3620 |<---------------| | | 3621 | | CANCEL F12 | | 3622 | |--------------->| | 3623 | | 200 F13 | | 3624 | |<---------------| | 3626 Alice calls Bob through NGW 1 and Proxy 1. Proxy 1 re-sends the 3627 INVITE after the expiration of SIP timer T1 without receiving any 3628 response from Bob. Bob never responds with 180 Ringing or any 3629 other response (it is reachable but unresponsive). After the 3630 expiration of a timer, Alice's network disconnects the call by 3631 sending a Release message REL. The Gateway maps this to a CANCEL. 3632 Message Details 3634 F1 IAM Alice -> NGW 1 3636 IAM 3637 CgPN=314-555-1111,NPI=E.164,NOA=National 3638 CdPN=972-555-2222,NPI=E.164,NOA=National 3640 F2 INVITE Alice -> Proxy 1 3642 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3643 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3644 Max-Forwards: 70 3645 From: ;tag=7643kals 3646 To: 3647 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3648 CSeq: 1 INVITE 3649 Contact: 3650 Content-Type: application/sdp 3651 Content-Length: 146 3653 v=0 3654 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3655 s=- 3656 c=IN IP4 ngw1.a.example.com 3657 t=0 0 3658 m=audio 3456 RTP/AVP 0 3659 a=rtpmap:0 PCMU/8000 3661 /* Proxy 1 uses a Location Service function to determine a route for 3662 +19725552222. The call is then forwarded to Bob. */ 3664 F3 INVITE Proxy 1 -> Bob 3666 INVITE sip:bob@b.example.com SIP/2.0 3667 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3668 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3669 ;received=192.0.2.103 3670 Max-Forwards: 69 3671 Record-Route: 3672 From: ;tag=7643kals 3673 To: 3674 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3675 CSeq: 1 INVITE 3676 Contact: 3677 Content-Type: application/sdp 3678 Content-Length: 146 3680 v=0 3681 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3682 c c=IN IP4 ngw1.a.example.com 3683 t=0 0 3684 m=audio 3456 RTP/AVP 0 3685 a=rtpmap:0 PCMU/8000 3687 F4 100 Trying Proxy 1 -> NGW 1 3689 SIP/2.0 100 Trying 3690 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3691 ;received=192.0.2.103 3692 From: ;tag=7643kals 3693 To: 3694 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3695 CSeq: 1 INVITE 3696 Content-Length: 0 3698 F5 INVITE Proxy 1 -> Bob 3700 Same as Message F3 3702 F6 INVITE Proxy 1 -> Bob 3704 Same as Message F3 3706 F7 INVITE Proxy 1 -> Bob 3708 Same as Message F3 3710 F8 INVITE Proxy 1 -> Bob 3712 Same as Message F3 3714 F9 INVITE Proxy 1 -> Bob 3716 Same as Message F3 3718 /* Timer expires in Alice's access network. */ 3720 F10 REL Alice -> NGW 1 3722 REL 3723 CauseCode=16 Normal 3725 F11 RLC NGW 1 -> Alice 3727 RLC 3729 F12 CANCEL NGW 1 -> Proxy 1 3731 CANCEL sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3732 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3733 Max-Forwards: 70 3734 From: ;tag=7643kals 3735 To: 3736 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3737 CSeq: 1 CANCEL 3738 Content-Length: 0 3740 F13 200 OK Proxy 1 -> NGW 1 3742 SIP/2.0 200 OK 3743 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3744 ;received=192.0.2.103 3745 From: ;tag=7643kals 3746 To: 3747 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3748 CSeq: 1 CANCEL 3749 Content-Length: 0 3751 3.8 Unsuccessful PSTN->SIP, ACM timeout, stateless Proxy 3753 Switch A NGW 1 Stateless Proxy 1 Bob 3754 | | | | 3755 | IAM F1 | | | 3756 |--------------->| INVITE F2 | | 3757 | |--------------->| INVITE F3 | 3758 | | INVITE F4 |--------------->| 3759 | |--------------->| INVITE F5 | 3760 | | INVITE F6 |--------------->| 3761 | |--------------->| INVITE F7 | 3762 | | INVITE F8 |--------------->| 3763 | |--------------->| INVITE F9 | 3764 | | INVITE F10 |--------------->| 3765 | |--------------->| INVITE F11 | 3766 | | INVITE F12 |--------------->| 3767 | |--------------->| INVITE F13 | 3768 | | |--------------->| 3769 | REL F14 | | | 3770 |--------------->| | | 3771 | RLC F15 | | | 3772 |<---------------| | | 3774 In this scenario, Alice calls Bob through NGW 1 and Proxy 1. 3775 Since Proxy 1 is stateless (it does not send a 100 Trying response), 3776 NGW 1 re-sends the INVITE message after the expiration of 3777 SIP timer T1. Bob does not respond with 180 Ringing. Alice's 3778 network disconnects the call with a release REL (CauseCode=102 3779 Timeout). 3781 Message Details 3783 F1 IAM Alice -> NGW 1 3785 IAM 3786 CgPN=314-555-1111,NPI=E.164,NOA=National 3787 CdPN=972-555-2222,NPI=E.164,NOA=National 3789 F2 INVITE NGW 1 -> Proxy 1 3791 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3792 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3793 Max-Forwards: 70 3794 From: ;tag=7643kals 3795 To: 3796 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3797 CSeq: 1 INVITE 3798 Contact: 3799 Content-Type: application/sdp 3800 Content-Length: 146 3802 v=0 3803 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3804 s=- 3805 c=IN IP4 ngw1.a.example.com 3806 t=0 0 3807 m=audio 3456 RTP/AVP 0 3808 a=rtpmap:0 PCMU/8000 3810 /* Proxy 1 uses a Location Service function to determine a route for 3811 +19725552222. The call is then forwarded to Bob. */ 3813 F3 INVITE Proxy 1 -> Bob 3815 INVITE sip:bob@b.example.com SIP/2.0 3816 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3817 Via: SIP/2.0/UDP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3818 ;received=192.0.2.201 3819 Max-Forwards: 69 3820 From: ;tag=7643kals 3821 To: 3822 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3823 CSeq: 1 INVITE 3824 Contact: 3825 Content-Type: application/sdp 3826 Content-Length: 146 3828 v=0 3829 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3830 s=- 3831 c=IN IP4 ngw1.a.example.com 3832 t=0 0 3833 m=audio 3456 RTP/AVP 0 3834 a=rtpmap:0 PCMU/8000 3836 F4 INVITE NGW 1 -> Proxy 1 3838 Same as Message F2 3840 F5 INVITE Proxy 1 -> Bob 3842 Same as Message F3 3843 F6 INVITE NGW 1 -> Proxy 1 3845 Same as Message F2 3847 F7 INVITE Proxy 1 -> Bob 3849 Same as Message F3 3851 F8 INVITE NGW 1 -> Proxy 1 3853 Same as Message F2 3855 F9 INVITE Proxy 1 -> Bob 3857 Same as Message F3 3859 F10 INVITE NGW 1 -> Proxy 1 3861 Same as Message F2 3863 F11 INVITE Proxy 1 -> Bob 3865 Same as Message F3 3867 F12 INVITE NGW 1 -> Proxy 1 3869 Same as Message F2 3871 F13 INVITE Proxy 1 -> Bob 3873 Same as Message F3 3875 /* A timer expires in Alice's access network. */ 3877 F14 REL Alice -> NGW 1 3879 REL 3880 CauseCode=102 Timeout 3881 F15 RLC NGW 1 -> Alice 3883 RLC 3885 3.9 Unsuccessful PSTN->SIP, Caller Abandonment 3887 Switch A NGW 1 Proxy 1 Bob 3888 | | | | 3889 | IAM F1 | | | 3890 |--------------->| INVITE F2 | | 3891 | |--------------->| INVITE F3 | 3892 | | 100 F4 |--------------->| 3893 | |<---------------| | 3894 | | | 180 F5 | 3895 | | 180 F6 |<---------------| 3896 | ACM F7 |<---------------| | 3897 |<---------------| | | 3898 | One Way Voice | | | 3899 |<===============| | | 3900 | Ringing Tone | | | 3901 |<===============| | | 3902 | | | | 3903 | REL F8 | | | 3904 |--------------->| | | 3905 | RLC F9 | | | 3906 |<---------------| CANCEL F10 | | 3907 | |--------------->| | 3908 | | 200 F11 | | 3909 | |<---------------| | 3910 | | | CANCEL F12 | 3911 | | |--------------->| 3912 | | | 200 F13 | 3913 | | |<---------------| 3914 | | | 487 F14 | 3915 | | |<---------------| 3916 | | | ACK F15 | 3917 | | 487 F16 |--------------->| 3918 | |<---------------| | 3919 | | ACK F17 | | 3920 | |--------------->| | 3921 | | | | 3923 In this scenario, Alice calls Bob through NGW 1 and Proxy 1. 3924 Bob does not respond with 200 OK. NGW 1 plays ringing tone since 3925 the ACM indicates that interworking has been encountered. Alice 3926 disconnects the call with a Release message REL which is mapped by 3927 NGW 1 to a CANCEL. Note that if Bob had sent a 200 OK response 3928 after the REL, NGW 1 would have sent an ACK then a BYE to properly 3929 terminate the call. 3931 Message Details 3932 F1 IAM Alice -> NGW 1 3934 IAM 3935 CgPN=314-555-1111,NPI=E.164,NOA=National 3936 CdPN=972-555-2222,NPI=E.164,NOA=National 3938 F2 INVITE Alice -> Proxy 1 3940 INVITE sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 3941 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3942 Max-Forwards: 70 3943 From: ;tag=7643kals 3944 To: 3945 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3946 CSeq: 1 INVITE 3947 Contact: 3948 Content-Type: application/sdp 3949 Content-Length: 146 3951 v=0 3952 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3953 s=- 3954 c=IN IP4 ngw1.a.example.com 3955 t=0 0 3956 m=audio 3456 RTP/AVP 0 3957 a=rtpmap:0 PCMU/8000 3959 /* Proxy 1 uses a Location Service function to determine a route for 3960 +19725552222. The call is then forwarded to Bob. */ 3962 F3 INVITE Proxy 1 -> Bob 3964 INVITE sip:bob@b.example.com SIP/2.0 3965 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3966 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3967 ;received=192.0.2.103 3968 Max-Forwards: 69 3969 Record-Route: 3970 From: ;tag=7643kals 3971 To: 3972 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3973 CSeq: 1 INVITE 3974 Contact: 3975 Content-Type: application/sdp 3976 Content-Length: 146 3977 v=0 3978 o=GW 2890844527 2890844527 IN IP4 ngw1.a.example.com 3979 s=- 3980 c=IN IP4 ngw1.a.example.com 3981 t=0 0 3982 m=audio 3456 RTP/AVP 0 3983 a=rtpmap:0 PCMU/8000 3985 F4 100 Trying Bob -> Proxy 1 3987 SIP/2.0 100 Trying 3988 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 3989 ;received=192.0.2.111 3990 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 3991 ;received=192.0.2.201 3992 From: ;tag=7643kals 3993 To: 3994 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 3995 CSeq: 1 INVITE 3996 Content-Length: 0 3998 F5 180 Ringing Bob -> Proxy 1 4000 SIP/2.0 180 Ringing 4001 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4002 ;received=192.0.2.111 4003 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4004 ;received=192.0.2.103 4005 Record-Route: 4006 From: ;tag=7643kals 4007 To: ;tag=314159 4008 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4009 CSeq: 1 INVITE 4010 Contact: 4011 Content-Length: 0 4013 F6 180 Ringing Proxy 1 -> NGW 1 4015 SIP/2.0 180 Ringing 4016 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4017 ;received=192.0.2.103 4018 Record-Route: 4019 From: ;tag=7643kals 4020 To: ;tag=314159 4021 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4022 CSeq: 1 INVITE 4023 Contact: 4024 Content-Length: 0 4026 F7 ACM NGW 1 -> Alice 4028 ACM 4030 /* Alice hangs up */ 4032 F8 REL Alice -> NGW 1 4034 REL 4035 CauseCode=16 Normal 4037 F9 RLC NGW 1 -> Alice 4039 RLC 4041 F10 CANCEL NGW 1 -> Proxy 1 4043 CANCEL sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 4044 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4045 Max-Forwards: 70 4046 From: ;tag=7643kals 4047 To: 4048 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4049 CSeq: 1 CANCEL 4050 Content-Length: 0 4052 F11 200 OK Proxy 1 -> NGW 1 4054 SIP/2.0 200 OK 4055 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4056 ;received=192.0.2.103 4057 From: ;tag=7643kals 4058 To: 4059 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4060 CSeq: 1 CANCEL 4061 Content-Length: 0 4063 F12 CANCEL Proxy 1 -> Bob 4064 CANCEL sip:bob@b.example.com SIP/2.0 4065 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4066 Max-Forwards: 70 4067 From: ;tag=7643kals 4068 To: 4069 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4070 CSeq: 1 CANCEL 4071 Content-Length: 0 4073 F13 200 OK Bob -> Proxy 1 4075 SIP/2.0 200 OK 4076 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4077 ;received=192.0.2.111 4078 From: ;tag=7643kals 4079 To: 4080 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4081 CSeq: 1 CANCEL 4082 Content-Length: 0 4084 F14 487 Request Terminated Bob -> Proxy 1 4086 SIP/2.0 487 Request Terminated 4087 Via: SIP/2.0/TCP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4088 ;received=192.0.2.111 4089 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4090 ;received=192.0.2.103 4091 From: ;tag=7643kals 4092 To: ;tag=314159 4093 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4094 CSeq: 1 INVITE 4095 Content-Length: 0 4097 F15 ACK Proxy 1 -> Bob 4099 ACK sip:bob@b.example.com SIP/2.0 4100 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4101 Max-Forwards: 70 4102 From: ;tag=7643kals 4103 To: ;tag=314159 4104 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4105 CSeq: 1 ACK 4106 Content-Length: 0 4108 F16 487 Request Terminated Proxy 1 -> NGW 1 4109 SIP/2.0 487 Request Terminated 4110 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4111 ;received=192.0.2.103 4112 From: ;tag=7643kals 4113 To: ;tag=314159 4114 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4115 CSeq: 1 INVITE 4116 Content-Length: 0 4118 F17 ACK NGW 1 -> Proxy 1 4120 ACK sip:+19725552222@ss1.a.example.com;user=phone SIP/2.0 4121 Via: SIP/2.0/TCP ngw1.a.example.com:5060;branch=z9hG4bKlueha2 4122 Max-Forwards: 70 4123 From: ;tag=7643kals 4124 To: ;tag=314159 4125 Call-ID: 4Fde34wkd11wsGFDs3@ngw1.a.example.com 4126 CSeq: 1 ACK 4127 Content-Length: 0 4129 4. PSTN to PSTN Dialing via SIP Network 4131 In these scenarios, both the caller and the called party are in the 4132 telephone network, either normal PSTN subscribers or PBX extensions. 4133 The calls route through two Gateways and at least one SIP Proxy 4134 Server. The Proxy Server performs the authentication and location of 4135 the Gateways. 4137 Again it is noted that the intent of this call flows document is not 4138 to provide a detailed parameter level mapping of SIP to PSTN 4139 protocols. For information on SIP to ISUP mapping, the reader is 4140 referred to other references [4]. 4142 In these scenarios, the call is successfully completed between the 4143 two Gateways allowing the PSTN or PBX users to communicate. The 183 4144 Session Progress response is used to indicate in-band alerting may 4145 flow from the called party telephone switch to the caller. 4147 4.1 Successful ISUP PSTN to ISUP PSTN call 4149 Switch A NGW 1 Proxy 1 GW 2 Switch C 4150 | | | | | 4151 | IAM F1 | | | | 4152 |------------->| | | | 4153 | | INVITE F2 | | | 4154 | |------------->| INVITE F3 | | 4155 | | |------------->| IAM F4 | 4156 | | | |------------->| 4157 | | | | ACM F5 | 4158 | | | 183 F6 |<-------------| 4159 | | 183 F7 |<-------------| | 4160 | ACM F8 |<-------------| | | 4161 |<-------------| | | | 4162 | One Way Voice| Two Way RTP Media | One Way Voice| 4163 |<=============|<===========================>|<=============| 4164 | | | | ANM F9 | 4165 | | | 200 F10 |<-------------| 4166 | | 200 F11 |<-------------| | 4167 | ANM F12 |<-------------| | | 4168 |<-------------| | | | 4169 | | ACK F13 | | | 4170 | |------------->| ACK F14 | | 4171 | | |------------->| | 4172 |Both Way Voice| Both Way RTP Media |Both Way Voice| 4173 |<=============|<===========================>|<=============| 4174 | | | | REL F15 | 4175 | | | |<-------------| 4176 | | | BYE F16 | | 4177 | | BYE F18 |<-------------| RLC F17 | 4178 | |<-------------| |------------->| 4179 | | | | | 4180 | | 200 F19 | | | 4181 | |------------->| 200 F20 | | 4182 | | |------------->| | 4183 | REL F21 | | | | 4184 |<-------------| | | | 4185 | RLC F22 | | | | 4186 |------------->| | | | 4187 | | | | | 4189 In this scenario, Alice in the PSTN calls Carol who is an extension 4190 on a PBX. Alice's telephone switch signals via SS7 to the Network 4191 Gateway NGW 1, while Carol's PBX signals via SS7 with the 4192 Gateway GW 2. The CdPN and CgPN are mapped by GW1 into SIP URIs and 4193 placed in the To and From headers. Proxy 1 looks up the dialed 4194 digits in the Request-URI and maps the digits to the PBX extension of 4195 Carol which is served by GW 2. The Proxy in F3 uses the host portion 4196 of the Request-URI to identify what private dialing plan is being 4197 referenced. The INVITE is then forwarded to GW 2 for call completion. 4198 An early media path is established end-to-end so that Alice can hear 4199 the ringing tone generated by PBX C. 4201 Carol answers the call and the media path is cut through in both 4202 directions. Bob hangs up terminating the call. 4204 Message Details 4206 F1 IAM Switch Alice -> NGW 1 4208 IAM 4209 CgPN=314-555-1111,NPI=E.164,NOA=National 4210 CdPN=918-555-3333,NPI=E.164,NOA=National 4212 F2 INVITE NGW 1 -> Proxy 1 4214 INVITE sips:+19185553333@ss1.a.example.com;user=phone SIP/2.0 4215 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4216 Max-Forwards: 70 4217 From: ;tag=7643kals 4218 To: 4219 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4220 CSeq: 1 INVITE 4221 Contact: 4222 Content-Type: application/sdp 4223 Content-Length: 146 4225 v=0 4226 o=GW 2890844526 2890844526 IN IP4 ngw1.a.example.com 4227 s=- 4228 c=IN IP4 ngw1.a.example.com 4229 t=0 0 4230 m=audio 3456 RTP/AVP 0 4231 a=rtpmap:0 PCMU/8000 4233 /* Proxy 1 consults Location Service and translates the dialed number 4234 to a private number in the Request-URI*/ 4236 F3 INVITE Proxy 1 -> GW 2 4238 INVITE sips:4443333@gw2.a.example.com SIP/2.0 4239 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4240 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKwqwee65 4241 ;received=192.0.2.103 4242 Max-Forwards: 69 4243 Record-Route: 4244 From: ;tag=7643kals 4245 To: 4246 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4247 CSeq: 1 INVITE 4248 Contact: 4249 Content-Type: application/sdp 4250 Content-Length: 146 4252 v=0 4253 o=GW 2890844526 2890844526 IN IP4 ngw1.a.example.com 4254 s=- 4255 c=IN IP4 ngw1.a.example.com 4256 t=0 0 4257 m=audio 3456 RTP/AVP 0 4258 a=rtpmap:0 PCMU/8000 4260 F4 IAM GW 2 -> Switch C 4262 IAM 4263 CgPN=314-555-1111,NPI=E.164,NOA=National 4264 CdPN=444-3333,NPI=Private,NOA=Subscriber 4266 F5 ACM Switch C -> GW 2 4268 ACM 4270 /* Based on the ACM message, GW 2 returns a 183 response. In-band 4271 call progress indications are sent to Alice through NGW 1. */ 4273 F6 183 Session Progress GW 2 -> Proxy 1 4275 SIP/2.0 183 Session Progress 4276 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4277 ;received=192.0.2.111 4278 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4279 ;received=192.0.2.103 4280 Record-Route: 4281 From: ;tag=7643kals 4282 To: ;tag=314159 4283 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4284 CSeq: 1 INVITE 4285 Contact: 4286 Content-Type: application/sdp 4287 Content-Length: 143 4289 v=0 4290 o=GW 987654321 987654321 IN IP4 gw2.a.example.com 4291 s=- 4292 c=IN IP4 gw2.a.example.com 4293 t=0 0 4294 m=audio 14918 RTP/AVP 0 4295 a=rtpmap:0 PCMU/8000 4297 F7 183 Session Progress Proxy 1 -> GW 1 4299 SIP/2.0 183 Session Progress 4300 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4301 ;received=192.0.2.103 4302 Record-Route: 4303 From: ;tag=7643kals 4304 To: ;tag=314159 4305 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4306 CSeq: 1 INVITE 4307 Contact: 4308 Content-Type: application/sdp 4309 Content-Length: 143 4311 v=0 4312 o=GW 987654321 987654321 IN IP4 gw2.a.example.com 4313 s=- 4314 c=IN IP4 gw2.a.example.com 4315 t=0 0 4316 m=audio 14918 RTP/AVP 0 4317 a=rtpmap:0 PCMU/8000 4319 /* NGW 1 receives packets from GW 2 with encoded ringback, tones or 4320 other audio. NGW 1 decodes this and places it on the originating 4321 trunk. */ 4323 F8 ACM NGW 1 -> Switch A 4325 ACM 4327 /* Bob answers */ 4329 F9 ANM Switch C -> GW 2 4331 ANM 4332 F10 200 OK GW 2 -> Proxy 1 4334 SIP/2.0 200 OK 4335 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4336 ;received=192.0.2.111 4337 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4338 ;received=192.0.2.103 4339 Record-Route: 4340 From: ;tag=7643kals 4341 To: ;tag=314159 4342 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4343 CSeq: 1 INVITE 4344 Contact: 4345 Content-Type: application/sdp 4346 Content-Length: 143 4348 v=0 4349 o=GW 987654321 987654321 IN IP4 gw2.a.example.com 4350 s=- 4351 c=IN IP4 gw2.a.example.com 4352 t=0 0 4353 m=audio 14918 RTP/AVP 0 4354 a=rtpmap:0 PCMU/8000 4356 F11 200 OK Proxy 1 -> NGW 1 4358 SIP/2.0 200 OK 4359 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4360 ;received=192.0.2.103 4361 Record-Route: 4362 From: ;tag=7643kals 4363 To: ;tag=314159 4364 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4365 CSeq: 1 INVITE 4366 Contact: 4367 Content-Type: application/sdp 4368 Content-Length: 143 4370 v=0 4371 o=GW 987654321 987654321 IN IP4 gw2.a.example.com 4372 s=- 4373 c=IN IP4 gw2.a.example.com 4374 t=0 0 4375 m=audio 14918 RTP/AVP 0 4376 a=rtpmap:0 PCMU/8000 4377 F12 ANM NGW 1 -> Switch A 4379 ANM 4381 F13 ACK NGW 1 -> Proxy 1 4383 ACK sips:4443333@gw2.a.example.com SIP/2.0 4384 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4385 Max-Forwards: 70 4386 Route: 4387 From: ;tag=7643kals 4388 To: ;tag=314159 4389 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4390 CSeq: 1 ACK 4391 Content-Length: 0 4393 F14 ACK Proxy 1 -> GW 2 4395 ACK sips:4443333@gw2.a.example.com SIP/2.0 4396 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4397 Via: SIP/2.0/TLS ngw1.a.example.com:5061;branch=z9hG4bKlueha2 4398 ;received=192.0.2.103 4399 Max-Forwards: 69 4400 From: ;tag=7643kals 4401 To: ;tag=314159 4402 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4403 CSeq: 1 ACK 4404 Content-Length: 0 4406 /* RTP streams are established between NGW 1 and GW 2. */ 4408 /* Bob Hangs Up with Alice. */ 4410 F15 REL Switch C -> GW 2 4412 REL 4413 CauseCode=16 Normal 4415 F16 BYE GW 2 -> Proxy 1 4417 BYE sips:ngw1@a.example.com SIP/2.0 4418 Via: SIP/2.0/TLS gw2.a.example.com:5061;branch=z9hG4bKtexx6 4419 Max-Forwards: 70 4420 Route: 4421 From: ;tag=314159 4422 To: ;tag=7643kals 4423 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4424 CSeq: 4 BYE 4425 Content-Length: 0 4427 F17 RLC GW 2 -> Switch C 4429 RLC 4431 F18 BYE Proxy 1 -> NGW 1 4433 BYE sips:ngw1@a.example.com SIP/2.0 4434 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4435 Via: SIP/2.0/TLS gw2.a.example.com:5061;branch=z9hG4bKtexx6 4436 ;received=192.0.2.202 4437 Max-Forwards: 69 4438 From: ;tag=314159 4439 To: ;tag=7643kals 4440 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4441 CSeq: 4 BYE 4442 Content-Length: 0 4444 F19 200 OK NGW 1 -> Proxy 1 4446 SIP/2.0 200 OK 4447 Via: SIP/2.0/TLS ss1.a.example.com:5061;branch=z9hG4bK2d4790.1 4448 ;received=192.0.2.111 4449 Via: SIP/2.0/TLS gw2.a.example.com:5061;branch=z9hG4bKtexx6 4450 ;received=192.0.2.202 4451 From: ;tag=314159 4452 To: ;tag=7643kals 4453 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4454 CSeq: 4 BYE 4455 Content-Length: 0 4457 F20 200 OK Proxy 1 -> GW 2 4459 SIP/2.0 200 OK 4460 Via: SIP/2.0/TLS gw2.a.example.com:5061;branch=z9hG4bKtexx6 4461 ;received=192.0.2.202 4462 From: ;tag=314159 4463 To: ;tag=7643kals 4464 Call-ID: 2xTb9vxSit55XU7p8@ngw1.a.example.com 4465 CSeq: 4 BYE 4466 Content-Length: 0 4468 F21 REL Switch C -> GW 2 4470 REL 4471 CauseCode=16 Normal 4473 F22 RLC GW 2 -> Switch C 4475 RLC 4477 4.2 Successful FGB PBX to ISDN PBX call with overflow 4479 PBX A GW 1 Proxy 1 GW 2 GW 3 PBX C 4480 | | | | | | 4481 | Seizure | | | | | 4482 |----------->| | | | | 4483 | Wink | | | | | 4484 |<-----------| | | | | 4485 |MF Digits F1| | | | | 4486 |----------->| | | | | 4487 | | INVITE F2 | | | | 4488 | |----------->| INVITE F3 | | | 4489 | | |----------->| | | 4490 | | | 503 F4 | | | 4491 | | |<-----------| | | 4492 | | | ACK F5 | | | 4493 | | |----------->| | | 4494 | | | INVITE F6 | | 4495 | | |------------------------>| SETUP F7 | 4496 | | | 100 F8 |----------->| 4497 | | |<------------------------|CALL PROC F9| 4498 | | | |<-----------| 4499 | | | | ALERT F10 | 4500 | | | 180 F11 |<-----------| 4501 | | 180 F12 |<------------------------| | 4502 | |<-----------| | | 4503 | Ringtone | | |OneWay Voice| 4504 |<===========| | |<===========| 4505 | | | | CONNect F13| 4506 | | | 200 F14 |<-----------| 4507 | | 200 F15 |<------------------------| | 4508 | Seizure |<-----------| | | 4509 |<-----------| ACK F16 | | | 4510 | |----------->| ACK F17 | | 4511 | | |------------------------>|CONN ACK F18| 4512 | | | |----------->| 4513 |BothWayVoice| Both Way RTP Media |BothWayVoice| 4514 |<==========>|<====================================>|<==========>| 4515 | | | | DISC F19 | 4516 | | | |<-----------| 4517 | | | BYE F20 | | 4518 | | BYE F21 |<------------------------| REL F22 | 4519 |Seiz Removal|<-----------| |----------->| 4520 |<-----------| 200 F23 | | | 4521 |Seiz Removal|----------->| 200 F24 | | 4522 |----------->| |------------------------>| REL COM F25| 4523 | | | |<-----------| 4524 | | | | | 4525 PBX Alice calls PBX Carol via Gateway GW 1 and Proxy 1. During the 4526 attempt to reach Carol via GW 2, an error is encountered - Proxy 1 4527 receives a 503 Service Unavailable (F4) response to the forwarded 4528 INVITE. This could be due to all circuits being busy, or some other 4529 outage at GW 2. Proxy 1 recognizes the error and uses an alternative 4530 route via GW 3 to terminate the call. From there, the call proceeds 4531 normally with Carol answering the call. The call is terminated when 4532 Carol hangs up. 4534 Message Details 4536 PBX Alice -> GW 1 4538 Seizure 4540 GW 1 -> PBX A 4542 Wink 4544 F1 MF Digits PBX Alice -> GW 1 4546 KP 444 3333 ST 4548 F2 INVITE GW 1 -> Proxy 1 4550 INVITE sip:4443333@ss1.a.example.com SIP/2.0 4551 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4552 Max-Forwards: 70 4553 From: ;tag=63412s 4554 To: 4555 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4556 CSeq: 1 INVITE 4557 Contact: 4558 Content-Type: application/sdp 4559 Content-Length: 155 4561 v=0 4562 o=GW 2890844526 2890844526 IN IP4 gw1.a.example.com 4563 s=- 4564 c=IN IP4 gw1.a.example.com 4565 t=0 0 4566 m=audio 49172 RTP/AVP 0 4567 a=rtpmap:0 PCMU/8000 4568 /* Proxy 1 uses a Location Service function to determine where B is 4569 located. Response is returned listing alternative routes, GW2 and 4570 GW3, which are then tried sequentially. */ 4572 F3 INVITE Proxy 1 -> GW 2 4574 INVITE sip:4443333@gw2.a.example.com SIP/2.0 4575 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4576 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4577 ;received=192.0.2.201 4578 Max-Forwards: 69 4579 Record-Route: 4580 From: ;tag=63412s 4581 To: 4582 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4583 CSeq: 1 INVITE 4584 Contact: 4585 Content-Type: application/sdp 4586 Content-Length: 155 4588 v=0 4589 o=GW 2890844526 2890844526 IN IP4 gw1.a.example.com 4590 s=- 4591 c=IN IP4 gw1.a.example.com 4592 t=0 0 4593 m=audio 49172 RTP/AVP 0 4594 a=rtpmap:0 PCMU/8000 4596 F4 503 Service Unavailable GW 2 -> Proxy 1 4598 SIP/2.0 503 Service Unavailable 4599 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4600 ;received=192.0.2.111 4601 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4602 ;received=192.0.2.201 4603 From: ;tag=63412s 4604 To: ;tag=314159 4605 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4606 CSeq: 1 INVITE 4607 Content-Length: 0 4609 F5 ACK Proxy 1 -> GW 2 4611 ACK sip:4443333@ss1.a.example.com SIP/2.0 4612 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.1 4613 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4614 ;received=192.0.2.201 4615 Max-Forward: 70 4616 From: ;tag=63412s 4617 To: ;tag=314159 4618 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4619 CSeq: 1 ACK 4620 Content-Length: 0 4622 F6 INVITE Proxy 1 -> GW 3 4624 INVITE sip:+19185553333@gw3.a.example.com;user=phone SIP/2.0 4625 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4626 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4627 ;received=192.0.2.201 4628 Max-Forwards: 69 4629 Record-Route: 4630 From: ;tag=63412s 4631 To: 4632 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4633 CSeq: 1 INVITE 4634 Contact: 4635 Content-Type: application/sdp 4636 Content-Length: 155 4638 v=0 4639 o=GW 2890844526 2890844526 IN IP4 gw1.a.example.com 4640 s=- 4641 c=IN IP4 gw1.a.example.com 4642 t=0 0 4643 m=audio 49172 RTP/AVP 0 4644 a=rtpmap:0 PCMU/8000 4646 F7 SETUP GW 3 -> PBX C 4648 Protocol discriminator=Q.931 4649 Message type=SETUP 4650 Bearer capability: Information transfer capability=0 (Speech) or 16 4651 (3.1 kHz audio) 4652 Channel identification=Preferred or exclusive B-channel 4653 Progress indicator=1 (Call is not end-to-end ISDN; further call 4654 progress information may be available inband) 4655 Called party number: 4656 Type of number and numbering plan ID=33 (National number in ISDN 4657 numbering plan) 4658 Digits=918-555-3333 4659 F8 100 Trying GW 3 -> Proxy 1 4661 SIP/2.0 100 Trying 4662 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4663 ;received=192.0.2.201 4664 From: ;tag=63412s 4665 To: 4666 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4667 CSeq: 1 INVITE 4668 Content-Length: 0 4670 F9 CALL PROCeeding PBX C -> GW 3 4672 Protocol discriminator=Q.931 4673 Message type=CALL PROC 4675 F10 ALERT PBX C -> GW 3 4677 Protocol discriminator=Q.931 4678 Message type=PROG 4680 /* Based on ALERT message, GW 3 returns a 180 response. */ 4682 F11 180 Ringing GW 3 -> Proxy 1 4684 SIP/2.0 180 Ringing 4685 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4686 ;received=192.0.2.111 4687 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4688 ;received=192.0.2.201 4689 Record-Route: 4690 From: ;tag=63412s 4691 To: ;tag=123456789 4692 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4693 CSeq: 1 INVITE 4694 Contact: 4695 Content-Length: 0 4697 F12 180 Ringing Proxy 1 -> GW 1 4699 SIP/2.0 180 Ringing 4700 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4701 ;received=192.0.2.201 4702 Record-Route: 4703 From: ;tag=63412s 4704 To: ;tag=123456789 4705 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4706 CSeq: 1 INVITE 4707 Contact: 4708 Content-Length: 0 4710 F13 CONNect PBX C -> GW 3 4712 Protocol discriminator=Q.931 4713 Message type=CONN 4715 F14 200 OK GW 3 -> Proxy 1 4717 SIP/2.0 200 OK 4718 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4719 ;received=192.0.2.111 4720 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4721 ;received=192.0.2.201 4722 Record-Route: 4723 From: ;tag=63412s 4724 To: ;tag=123456789 4725 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4726 CSeq: 1 INVITE 4727 Contact: 4728 Content-Type: application/sdp 4729 Content-Length: 143 4731 v=0 4732 o=GW 987654321 987654321 IN IP4 gw3.a.example.com 4733 s=- 4734 c=IN IP4 gw3.a.example.com 4735 t=0 0 4736 m=audio 14918 RTP/AVP 0 4737 a=rtpmap:0 PCMU/8000 4739 F15 200 OK Proxy 1 -> GW 1 4741 SIP/2.0 200 OK 4742 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4743 ;received=192.0.2.201 4744 Record-Route: 4745 From: ;tag=63412s 4746 To: ;tag=123456789 4747 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4748 CSeq: 1 INVITE 4749 Contact: 4750 Content-Type: application/sdp 4751 Content-Length: 143 4753 v=0 4754 o=GW 987654321 987654321 IN IP4 gw3.a.example.com 4755 s=- 4756 c=IN IP4 gw3.a.example.com 4757 t=0 0 4758 m=audio 14918 RTP/AVP 0 4759 a=rtpmap:0 PCMU/8000 4761 GW 1 -> PBX A 4763 Seizure 4765 F16 ACK GW 1 -> Proxy 1 4767 ACK sip:+19185553333@gw3.a.example.com;user=phone SIP/2.0 4768 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4769 Max-Forwards: 70 4770 Route: 4771 From: ;tag=63412s 4772 To: ;tag=123456789 4773 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4774 CSeq: 1 ACK 4775 Content-Length: 0 4777 F17 ACK Proxy 1 -> GW 3 4779 ACK sip:+19185553333@gw3.a.example.com;user=phone SIP/2.0 4780 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4781 Via: SIP/2.0/UDP gw1.a.example.com:5060;branch=z9hG4bKwqwee65 4782 ;received=192.0.2.201 4783 Max-Forwards: 69 4784 From: ;tag=63412s 4785 To: ;tag=123456789 4786 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4787 CSeq: 1 ACK 4788 Content-Length: 0 4790 F18 CONNect ACK GW 3 -> PBX C 4792 Protocol discriminator=Q.931 4793 Message type=CONN ACK 4794 /* RTP streams are established between GW 1 and GW 3. */ 4796 /* Bob Hangs Up with Alice. */ 4798 F19 DISConnect PBX C -> GW 3 4800 Protocol discriminator=Q.931 4801 Message type=DISC 4802 Cause=16 (Normal clearing) 4804 F20 BYE GW 3 -> Proxy 1 4806 BYE sip:551313@gw1.a.example.com SIP/2.0 4807 Via: SIP/2.0/UDP gw3.a.example.com:5060;branch=z9hG4bKkdjuwq 4808 Max-Forwards: 70 4809 Route: 4810 From: ;tag=123456789 4811 To: ;tag=63412s 4812 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4813 CSeq: 1 BYE 4814 Content-Length: 0 4816 F21 BYE Proxy 1 -> GW 1 4818 BYE sip:551313@gw1.a.example.com SIP/2.0 4819 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4820 Via: SIP/2.0/UDP gw3.a.example.com:5060;branch=z9hG4bKkdjuwq 4821 ;received=192.0.2.203 4822 Max-Forwards: 69 4823 From: ;tag=123456789 4824 To: ;tag=63412s 4825 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4826 CSeq: 1 BYE 4827 Content-Length: 0 4829 GW 1 -> PBX A 4831 Seizure removal 4833 F22 RELease GW 3 -> PBX C 4835 Protocol discriminator=Q.931 4836 Message type=REL 4837 F23 200 OK GW 1 -> Proxy 1 4839 SIP/2.0 200 OK 4840 Via: SIP/2.0/UDP ss1.a.example.com:5060;branch=z9hG4bK2d4790.2 4841 ;received=192.0.2.111 4842 Via: SIP/2.0/UDP gw3.a.example.com:5060;branch=z9hG4bKkdjuwq 4843 ;received=192.0.2.203 4844 From: ;tag=123456789 4845 To: ;tag=63412s 4846 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4847 CSeq: 1 BYE 4848 Content-Length: 0 4850 F24 200 OK Proxy 1 -> GW 3 4852 SIP/2.0 200 OK 4853 Via: SIP/2.0/UDP gw3.a.example.com:5060;branch=z9hG4bKkdjuwq 4854 ;received=192.0.2.203 4855 From: ;tag=123456789 4856 To: ;tag=63412s 4857 Call-ID: 2xTb9vxSit55XU7p8@gw1.a.example.com 4858 CSeq: 1 BYE 4859 Content-Length: 0 4861 F25 RELease COMplete PBX C -> GW 3 4863 Protocol discriminator=Q.931 4864 Message type=REL COM 4866 PBX Alice -> GW 1 4868 Seizure removal 4870 Security Considerations 4872 This document provides examples of mapping from SIP to ISUP and ISUP 4873 to SIP. The gateways in these examples are compliant with the 4874 Security Considerations Section of RFC zzzz [4] which is summarized 4875 here. 4877 There are few security concerns relating to the mapping of ISUP to 4878 SIP besides privacy considerations in the calling party number 4879 passing. Some concerns relating to the mapping from tel URI 4880 parameters to ISUP including the user creation of parameters and 4881 codes relating to called number and local number portability (LNP). 4882 An operator of a gateway should use policies similar to those present 4883 in PSTN switches to avoid security problems. 4885 The mapping from a SIP response code to an ISUP Cause Code presents a 4886 theoretical risk, so a gateway operator may implement policies 4887 controlling this mapping. Gateways should also not rely on the 4888 contents of the From header field for identity information, as it may 4889 be arbitrarily populated by a user. Instead, some sort of 4890 cryptographic authentication and authorization should be used for 4891 identity determination. These flows show both HTTP Digest for 4892 authentication of users, although for brevity the challenge is not 4893 always shown. 4895 The early media cut-through shown in some flows is another potential 4896 security risk, but it is also required for proper interaction with 4897 the PSTN. Again, a gateway operator should use proper policies 4898 relating to early media to prevent fraud and misuse. Finally, a user 4899 agent (even a properly authenticated one) can launch multiple 4900 simultaneous requests through a gateway, constituting a denial of 4901 service attack. The adoption of policies to limit the number of 4902 simultaneous requests from a single entity may be used to prevent 4903 this attack. 4905 As discussed in the SIP-T framework [8] SIP/ISUP interworking can be 4906 employed as an interdomain signaling mechanism that may be subject to 4907 pre-existing trust relationships between administrative domains. Any 4908 administrative domain implementing SIP-T or SIP/ISUP interworking 4909 should have an adequate security apparatus (including elements that 4910 manage any appropriate policies to manage fraud and billing in an 4911 interdomain environment) in place to ensure that the translation of 4912 ISUP information does not result in any security violations. 4914 Although no examples of this are shown in this document, transporting 4915 ISUP in SIP bodies may provide opportunities for abuse, fraud, and 4916 privacy concerns, especially when SIP-T requests can be generated, 4917 inspected or modified by arbitrary SIP endpoints. ISUP MIME bodies 4918 should be secured (preferably with S/MIME as detailed in RFC 3261 4919 [2]) to alleviate this concern. Authentication properties provided by 4920 S/MIME would allow the recipient of a SIP-T message to ensure that 4921 the ISUP MIME body was generated by an authorized entity. Encryption 4922 would ensure that only carriers possessing a particular decryption 4923 key are capable of inspecting encapsulated ISUP MIME bodies in a SIP 4924 request. 4926 Normative References 4928 1 Bradner, S., "Key words for use in RFCs to Indicate Requirement 4929 Levels", BCP 14, RFC 2119, March 1997 4931 2 Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., 4932 Peterson, J., Sparks, R., Handley, M., and Schooler, E., "SIP: 4933 Session Initiation Protocol", RFC 3261, June 2002. 4935 3 Rosenberg, J. and Schulzrinne, H., "An Offer/Answer Model with 4936 SDP", Internet Engineering Task Force, RFC 3264, April 2002. 4938 4 G. Camarillo, A. Roach, J. Peterson, L. Ong, "ISUP to SIP 4939 Mapping", Internet Draft, Internet Engineering Task Force, Work in 4940 progress. August 2002. 4942 5 Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, 4943 P., Luotonen, A. and L. Stewart, "HTTP authentication: Basic and 4944 Digest Access Authentication", RFC 2617, June 1999. 4946 6 J. Rosenberg, H. Schulzrinne, and G. Camarillo, "The Stream 4947 Control Transmission Protocol as a Transport for the Session 4948 Initiation Protocol," Internet Draft, Internet Engineering Task 4949 Force, Work in progress. June 2002. 4951 7 A. Vaha-Sipila, "URLs for Telephone Calls", Internet Draft, 4952 Internet Engineering Task Force, RFC 2806, April 2000. 4954 8 A. Vemuri and J. Peterson, "Session Initiation Protocol for 4955 Telephones (SIP-T): Context and Architectures," RFC 3372, 4956 September 2002. 4958 9 E. Zimmerer, J. Peterson, A. Vemuri, L. Ong, F. Audet, M. Watson, 4959 M. Zonoun, "MIME media types for ISUP and QSIG Objects," RFC 3204, 4960 December 2001. 4962 10 P. Faltstrom, "E.164 Numbers and DNS," RFC 2916, September 2000. 4964 Informative References 4966 11 Johnston, A., Donovan, S., Sparks, R., Cunningham, C., Summers, 4967 K., "Session Initiation Protocol Basic Call Flow Examples", RFC 4968 yyyv, August 2002. 4970 Acknowledgments 4972 Thanks to Rohan Mahy, Adam Roach, Gonzalo Camarillo, Cullen Jennings, 4973 and Tom Taylor for their detailed comments during the final review. 4974 Thanks to Dean Willis for his early contributions to the development 4975 of this document. Thanks to Jon Peterson for his help on the 4976 security section. 4978 The authors wish to thank Kundan Singh for performing parser 4979 validation of messages. 4981 The authors wish to thank the following individuals for their 4982 participation in a detailed review of this call flows document: Aseem 4983 Agarwal, Rafi Assadi, Ben Campbell, Sunitha Kumar, Jon Peterson, Marc 4984 Petit-Huguenin, Vidhi Rastogi, and Bodgey Yin Shaohua. 4986 The authors also wish to thank the following individuals for their 4987 assistance: Jean-Francois Mule, Hemant Agrawal, Henry Sinnreich, 4988 David Devanatham, Joe Pizzimenti, Matt Cannon, John Hearty, the whole 4989 MCI WorldCom IPOP Design team, Scott Orton, Greg Osterhout, Pat 4990 Sollee, Doug Weisenberg, Danny Mistry, Steve McKinnon, and Denise 4991 Ingram, Denise Caballero, Tom Redman, Ilya Slain, Pat Sollee, John 4992 Truetken, and others from MCI WorldCom, 3Com, Cisco, Lucent and 4993 Nortel. 4995 Author's Addresses 4997 All listed authors actively contributed large amounts of text to this 4998 document. 5000 Alan Johnston 5001 WorldCom 5002 100 South 4th Street 5003 St. Louis, MO 63102 5004 USA 5006 EMail: alan.johnston@wcom.com 5008 Steve Donovan 5009 dynamicsoft, Inc. 5010 5100 Tennyson Parkway 5011 Suite 1200 5012 Plano, Texas 75024 5013 USA 5015 EMail: sdonovan@dynamicsoft.com 5016 Robert Sparks 5017 dynamicsoft, Inc. 5018 5100 Tennyson Parkway 5019 Suite 1200 5020 Plano, Texas 75024 5021 USA 5023 EMail: rsparks@dynamicsoft.com 5025 Chris Cunningham 5026 dynamicsoft, Inc. 5027 5100 Tennyson Parkway 5028 Suite 1200 5029 Plano, Texas 75024 5030 USA 5032 EMail: ccunningham@dynamicsoft.com 5034 Kevin Summers 5035 Sonus 5036 1701 North Collins Blvd, Suite 3000 5037 Richardson, TX 75080 5038 USA 5040 Email: kevin.summers@sonusnet.com 5042 Intellectual Property Statement 5044 The IETF takes no position regarding the validity or scope of any 5045 intellectual property or other rights that might be claimed to 5046 pertain to the implementation or use of the technology described in 5047 this document or the extent to which any license under such rights 5048 might or might not be available; neither does it represent that it 5049 has made any effort to identify any such rights. Information on the 5050 IETF's procedures with respect to rights in standards-track and 5051 standards-related documentation can be found in BCP-11. Copies of 5052 claims of rights made available for publication and any assurances of 5053 licenses to be made available, or the result of an attempt made to 5054 obtain a general license or permission for the use of such 5055 proprietary rights by implementors or users of this specification can 5056 be obtained from the IETF Secretariat. 5058 The IETF invites any interested party to bring to its attention any 5059 copyrights, patents or patent applications, or other proprietary 5060 rights which may cover technology that may be required to practice 5061 this standard. Please address the information to the IETF Executive 5062 Director. 5064 Full Copyright Statement 5066 Copyright (C) The Internet Society (2003). All Rights Reserved. 5068 This document and translations of it may be copied and furnished to 5069 others, and derivative works that comment on or otherwise explain it 5070 or assist in its implementation may be prepared, copied, published 5071 and distributed, in whole or in part, without restriction of any 5072 kind, provided that the above copyright notice and this paragraph are 5073 included on all such copies and derivative works. However, this 5074 document itself may not be modified in any way, such as by removing 5075 the copyright notice or references to the Internet Society or other 5076 Internet organizations, except as needed for the purpose of 5077 developing Internet standards in which case the procedures for 5078 copyrights defined in the Internet Standards process must be 5079 followed, or as required to translate it into languages other than 5080 English. 5082 The limited permissions granted above are perpetual and will not be 5083 revoked by the Internet Society or its successors or assignees. 5085 This document and the information contained herein is provided on an 5086 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 5087 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 5088 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 5089 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 5090 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 5092 Acknowledgement 5094 Funding for the RFC Editor function is currently provided by the 5095 Internet Society.