idnits 2.17.1 draft-dcsgroup-sip-arch-06.txt: ** The Abstract section seems to be numbered 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: ---------------------------------------------------------------------------- ** Missing expiration date. The document expiration date should appear on the first and last page. == The page length should not exceed 58 lines per page, but there was 165 longer pages, the longest (page 2) being 59 lines 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 seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. ** There are 2 instances of too long lines in the document, the longest one being 61 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the RFC 3978 Section 5.4 Copyright Line does not match the current year == 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.) -- Couldn't find a document date in the document -- date freshness check skipped. -- Found something which looks like a code comment -- if you have code sections in the document, please surround them with '' and '' lines. Checking references for intended status: Informational ---------------------------------------------------------------------------- -- Missing reference section? '1' on line 50 looks like a reference -- Missing reference section? '2' on line 100 looks like a reference -- Missing reference section? '9' on line 643 looks like a reference -- Missing reference section? '8' on line 621 looks like a reference -- Missing reference section? '7' on line 636 looks like a reference Summary: 6 errors (**), 0 flaws (~~), 3 warnings (==), 8 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 SIP Working Group W. Marshall 3 Internet Draft AT&T 4 Document: 5 Category: Informational K. Ramakrishnan 6 TeraOptic Networks 8 E. Miller 9 Terayon 11 G. Russell 12 M. Osman 13 CableLabs 15 B. Beser 16 Juniper Networks 18 M. Mannette 19 K. Steinbrenner 20 3Com 22 D. Oran 23 F. Andreasen 24 Cisco 26 J. Pickens 27 Com21 29 P. Lalwaney 30 Nokia 32 J. Fellows 33 Copper Mountain Networks 35 D. Evans 36 D. R. Evans Consulting 38 K. Kelly 39 NetSpeak 41 February 28, 2002 43 Architectural Considerations for Providing Carrier Class Telephony 44 Services Utilizing SIP-based Distributed Call Control Mechanisms 46 Status of this Memo 48 This document is an Internet-Draft and is in full conformance with 49 all provisions of Section 10 of RFC2026[1]. 51 DCS Group Category: Informational - Expiration 8/31/02 1 52 DCS Architecture February 2002 54 Internet-Drafts are working documents of the Internet Engineering 55 Task Force (IETF), its areas, and its working groups. Note that 56 other groups may also distribute working documents as Internet- 57 Drafts. Internet-Drafts are draft documents valid for a maximum of 58 six months and may be updated, replaced, or obsoleted by other 59 documents at any time. It is inappropriate to use Internet-Drafts as 60 reference material or to cite them other than as "work in progress." 62 The list of current Internet-Drafts can be accessed at 63 http://www.ietf.org/ietf/1id-abstracts.txt 65 The list of Internet-Draft Shadow Directories can be accessed at 66 http://www.ietf.org/shadow.html. 68 1. Abstract 70 This document provides an overview of a SIP-based Distributed Call 71 Signaling (DCS) architecture to support carrier class packet-based 72 voice, video, and other real time multimedia services. Companion 73 documents address a specific set of SIP 2.0 protocol extensions and 74 usage rules that are necessary to implement the DCS architecture in 75 an interoperable fashion. 77 The DCS architecture takes advantage of endpoint intelligence in 78 supporting telephony services without sacrificing the network's 79 ability to provide value through mechanisms such as resource 80 management, lookup of directory information and translation 81 databases, routing services, security, and privacy enforcement. At 82 the same time, the architecture provides flexibility to allow 83 evolution in the services that may be provided by endpoints and the 84 network. 86 DCS also takes into account the need to manage access to network 87 resources and account for resource usage. The SIP usage rules 88 defined in the accompanying IDs specifically address the 89 coordination between Distributed Call Signaling and dynamic quality 90 of service control mechanisms for managing resources over the access 91 network. In addition, the DCS architecture defines the interaction 92 needed between network provided call controllers, known as a "DCS- 93 proxy" for supporting these services. 95 2. Conventions used in this document 97 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 98 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in 99 this document are to be interpreted as described in RFC-2119 [2]. 101 DCS Group Category: Informational - Expiration 8/31/02 2 102 DCS Architecture February 2002 104 3. Table of Contents 106 1. Abstract........................................................2 107 2. Conventions used in this document...............................2 108 3. Table of Contents...............................................3 109 4. Introduction....................................................4 110 4.1 Background and Motivation......................................4 111 4.2 Requirements And Design Principles............................6 112 4.3 Distributed Call Signaling Architecture........................7 113 4.4 Trust Boundary................................................10 114 4.5 Basic Call Flow...............................................10 115 5. Resource Management............................................13 116 6. Distributed Call State.........................................14 117 7. DCS Proxy - DCS Proxy Communications...........................16 118 8. Privacy........................................................17 119 9. Security Considerations........................................19 120 10. Call Flows....................................................19 121 10.1 Basic Call Flow from MTA to MTA..............................20 122 10.2 Basic Call Flow from MTA to CMS..............................34 123 10.3 Basic Call Flow from CMS to MTA..............................43 124 10.4 Basic Call Flow from CMS to CMS..............................52 125 10.5 Call-Forwarding-Unconditional and Call-Forwarding-Busy.......59 126 10.6 Call-Forwarding-No-Answer....................................65 127 10.7 Call-Forwarding-MTA-Unavailable..............................71 128 10.8 Return-Call..................................................73 129 10.9 Customer-Originated-Trace....................................77 130 10.10 Call-Waiting................................................79 131 10.11 Call-Transfer-Blind.........................................85 132 10.12 Call-Transfer-Consultative..................................92 133 10.13 Three-Way-Calling (with Network Bridge)....................100 134 10.14 Three-Way-Calling Hangup sequences.........................110 135 10.15 CODEC Change within previous authorization.................116 136 10.16 CODEC Change requiring new authorization...................118 137 10.17 Busy-Line-Verification.....................................125 138 10.18 Operator break-in..........................................128 139 10.19 Lawfully Authorized Electronic Surveillance................130 140 10.19.1 Call-Forwarding-Unconditional with Forwarder under 141 Surveillance.....................................................131 142 10.19.2 Call-Transfer-Blind with Transferer under Surveillance...135 143 10.19.3 Call-Transfer with new destination unable to do interception 144 .................................................................140 145 10.19.4 Call-Transfer-Consultative with Transferer under 146 Surveillance.....................................................141 147 10.20 Privacy with Application-level Anonymizer..................146 148 11. Notice Regarding Intellectual Property Rights................163 149 12. References...................................................163 150 13. Acknowledgements.............................................164 151 14. Author's Addresses...........................................164 152 Full Copyright Statement.........................................167 154 4. Introduction 156 DCS Group Category: Informational - Expiration 8/31/02 3 157 DCS Architecture February 2002 159 This document provides an overview of a SIP-based Distributed Call 160 Signaling (DCS) architecture to support carrier class packet-based 161 voice, video, and other real time multimedia services. The DCS 162 architecture and the corresponding SIP protocol enhancements 163 (described in companion documents) are being developed as part of 164 the cable industry's PacketCable initiative, managed out of 165 CableLabs (see www.cablelabs.com). PacketCable is defining a series 166 of interface specifications that will enable vendors to develop 167 interoperable products for providing internet telephony and other 168 multimedia services over DOCSIS-enabled cable data networks. 169 The DCS architecture described herein has its roots in the DOSA work 170 performed by AT&T Laboratories ["Distributed Open Signaling 171 Architecture"; Kalmanek, Marshall, Mishra, Nortz, Ramakrishnan, et 172 al.; October, 1998]. A relatively large group of vendors have 173 cooperated in an intensive effort to develop the DCS architecture 174 and SIP protocol extensions described here and in the accompanying 175 protocol drafts. Although DCS was originally designed with cable 176 access networks in mind, the SIP signaling enhancements have general 177 applicability to carrier class VOIP services running over QoS 178 enabled IP networks. 180 The authors are submitting this draft to the IETF in order to 181 provide general information regarding the DCS architecture and to 182 convey the motivation behind the SIP enhancements recommended in the 183 accompanying protocol drafts. We believe that incorporation of the 184 concepts and mechanisms described in this set of drafts by the IETF 185 into the SIP standard will significantly enhance SIP's ability to 186 function as a carrier-class signaling protocol. Such an enhancement 187 to SIP would undoubtedly aid in its widespread acceptance and 188 deployment. We have incorporated several useful comments received at 189 the IETF SIP Working group on earlier versions of this and the other 190 DCS related drafts. 192 The PacketCable Draft Specification for DCS is available from the 193 CableLabs website at: 194 ftp://ftp.cablelabs.com/pub/ietfdocs/dcsdraft2.pdf. 196 4.1 Background and Motivation 198 The design of the Distributed Call Signaling (DCS) architecture 199 recognizes the trend towards use of packet networks as the 200 underlying framework for communications. These networks will 201 provide a broad range of services, including traditional best-effort 202 data service as well as enhanced, value-added services, such as 203 telephony. At the same time, improvements in silicon will reinforce 204 the trend towards increased functionality in endpoints. These 205 intelligent endpoints will take advantage of the widespread 206 availability of packet networks to enable a rich set of applications 207 and services for users. 209 DCS Group Category: Informational - Expiration 8/31/02 4 210 DCS Architecture February 2002 212 However, when the network is used for real-time telephony 213 applications, it is essential to have service differentiation at the 214 IP layer. The ability to control and monitor usage is needed for 215 the provider to be able to provide service differentiation and to 216 derive revenue from the enhanced services. At the same time, the 217 availability of best effort communications and the migration of 218 functionality to the endpoints pose a challenge to the provider to 219 find incentives for users to use or pay for enhanced services. 221 We see three key functions that a provider can offer, as incentives 222 to use enhanced services. First, the network service provider has 223 the unique ability to manage and provide network layer quality of 224 service. When users depend on the quality of the service, as with 225 telephony, there is a strong incentive to use the enhanced service, 226 rather than a best effort service. Second, the network service 227 provider can play an important role as a trusted intermediary. This 228 includes ensuring the integrity of call routing, as well as ensuring 229 both the accuracy and the privacy of information that is exchanged. 230 The service provider can also add value by ensuring that services 231 are provided consistently and reliably, even when an endpoint is 232 unavailable. Finally, there are a number of services that may be 233 offered more efficiently by the network service provider rather than 234 in endpoints. For example, conference bridging may be more cost 235 effective to implement in a multi-point bridge rather than in every 236 endpoint attached to the network. 238 A key contribution of the DCS architecture is a recognition of the 239 need for coordination between call signaling, which controls access 240 to telephony specific services, and resource management, which 241 controls access to network-layer resources. This coordination is 242 designed to meet the user expectations and human factors associated 243 with telephony. For example, the called party should not be 244 alerted until the resources necessary to complete the call are 245 available. If resources were not available when the called party 246 picked up, the user would experience a call defect. In addition, 247 users expect to be charged for service only after the called party 248 answers the phone. As a result, usage accounting starts only after 249 the called party picks up. Coordination between call signaling and 250 resource management is also needed to prevent fraud and theft of 251 service. The coordination between DCS and Dynamic QoS protocols 252 ensures that users are authenticated and authorized before receiving 253 access to the enhanced QoS associated with the telephony service. 255 It is important to be able to deploy a residential telephone service 256 at very large scale, cost-effectively. To achieve this, DCS 257 minimizes the messaging overhead on network call servers, and does 258 not require these servers to maintain call state for active calls. 259 Once a call is established, call state is maintained only where it 260 is needed, in keeping (informally) with the principle of "fate- 261 sharing" at the endpoints that are involved in the call, and at the 262 Edge Routers in the bearer path that are providing differentiated 263 service to the media flow. This allows the network call servers to 265 DCS Group Category: Informational - Expiration 8/31/02 5 266 DCS Architecture February 2002 268 scale to support more users, and imposes less stringent reliability 269 requirements on those servers. 271 DCS is also designed so that calling users receive consistent 272 service even when a called endpoint is unavailable. For example, 273 when an endpoint is unavailable service logic in a network call 274 server can forward telephone calls to a voice mailbox. 276 4.2 Requirements And Design Principles 278 In this section, we briefly describe the application requirements 279 that led to a set of DCS signaling design principles. In its most 280 basic implementation, DCS supports a residential telephone service 281 comparable to the local telephone services offered today. In 282 addition to the commonly used service features that need to be 283 supported, there are important requirements in the areas of 284 reliability, performance, and scalability that influence the 285 signaling architecture. Supporting an IP telephony service 286 comparable to the telephony service offered today requires enhanced 287 bearer channel and signaling performance, including: 289 . Low delay - end-to-end packet delay must be small enough that it 290 does not interfere with normal voice conversations. The ITU 291 recommends no greater than 300 ms roundtrip delay for telephony 292 service. 294 . Low packet loss - packet loss must be small enough to not 295 perceptibly impede voice quality or performance of fax and voice 296 band modems. 298 . Short post-dial delay - the delay between the user dialing the 299 last digit and receiving positive confirmation from the network 300 must be short enough that users do not perceive a difference with 301 post-dial delay in the circuit switched network or believe that 302 the network has failed. 304 . Short post pickup delay - the delay between a user picking up a 305 ringing phone and the voice path being cut through must be short 306 enough so that the "hello" from either the initiator or the 307 receiver of the call is not clipped. 309 We identify a number of key design principles that arise from the 310 requirements and philosophy outlined above. 312 1. Providing differentiated network-layer quality of service is 313 essential, while allowing the provider to derive revenues from the 314 use of such differentiated services. 316 2. The architecture should allow, and even encourage, implementation 317 of services and features in the intelligent endpoints, where 318 economically feasible, while still retaining value in the network 319 and network-based services 321 DCS Group Category: Informational - Expiration 8/31/02 6 322 DCS Architecture February 2002 324 3. The architecture must ensure that the network is protected from 325 fraud and theft of service. The service provider must be able to 326 authenticate users requesting service and ensure that only those 327 authorized to receive a particular service be able to obtain it. 329 4. The architecture must enable the service provider to add value by 330 supporting the functions of a trusted intermediary. This includes 331 protecting the privacy of calling and called party information, 332 and ensuring the accuracy of the information that is provided in 333 messages from the network. 335 5. The architecture must enable the service provider to give a 336 consistent view of basic services and features even when customer 337 premise equipment is unavailable, and allow users to take 338 advantage of functionality that is provided in the network, when 339 it is cost-effective and easy to use. 341 6. The architecture must be implementable, cost-effectively, at very 342 large scale. 344 4.3 Distributed Call Signaling Architecture 346 The Distributed Call Signaling Architecture follows the principles 347 outlined above to support a robust telephony service. Figure 1 348 introduces the key components in the architecture. 350 The architecture assumes a broad range of DCS-compliant endpoints 351 that provide telephony service to the user including Media Terminal 352 Adapters (MTAs) that may be integrated with a Cable Modem or is a 353 standalone device, as well as other endpoints such as personal 354 computers. The access network interfaces to an IP backbone through 355 a system we refer to as the Edge Router (ER). The ER is the first 356 trusted element within the provider's network and is considered to 357 be the edge of the network for providing access to differentiated 358 quality of service. We believe that the access network is likely to 359 manage resources on a per-flow basis, with associated signaling 360 mechanisms (such as RSVP). The ER performs resource management, acts 361 as a policy enforcement point and as a source of billing 362 information. 364 DCS-proxies (DPs) process call signaling messages and support number 365 translation, call routing, feature support and admission control. 366 In the context of SIP, a DCS-proxy is a SIP proxy that is involved 367 in processing and forwarding of SIP requests. DPs act as trusted 368 decision points for controlling when resources are committed to 369 particular users. Media servers represent network-based components 370 that operate on media flows to support the service. Media servers 371 perform audio bridging, play terminating announcements, provide 372 interactive voice response services, etc. Finally, PSTN gateways 373 interface to the Public Switched Telephone Network. 375 DCS Group Category: Informational - Expiration 8/31/02 7 376 DCS Architecture February 2002 378 +-----+ 379 | MTA | MTA: media terminal adapter 380 +-----+ 381 | ER: Edge Router 382 Access Network | 383 | 384 +----+ 385 | ER | 386 +----+ 387 | +-----------+ 388 |----| DCS Proxy | 389 | +-----------+ 390 | 391 | +------------+ 392 Backbone Network |----|Media Server| 393 | +------------+ 394 | 395 | +------------+ 396 |----|PSTN Gateway| 397 | +------------+ 398 +----+ 399 | ER | 400 +----+ 401 | 402 Access Network | 403 | 404 +-----+ 405 | MTA | 406 +-----+ 407 Figure 1: A Simple view of Components of an IP Telephony 408 Architecture used in a HFC Cable Environment. 410 Telephony endpoints are considered to be "clients" of the telephony 411 service. Consistent with the design principles, the architecture 412 allows a range of services to be implemented by intelligent 413 endpoints. They collect dialed digits, participate in signaling and 414 contain the service logic required for basic call setup and feature 415 support. Endpoints also participate in end-to-end capability 416 negotiation. However, endpoints are not trusted to provide accurate 417 information to the network or to keep information that is received 418 private, except when it is in the endpoint's best interests to do 419 so. 421 Access to network resources on a differentiated basis is likely to 422 be controlled by the service provider. The ER receives resource 423 management requests from endpoints, and is responsible for ensuring 424 that packets are provided the QoS they are authorized to receive 425 (either through packet marking, or through routing and queueing the 426 packets as a specific QoS assured flow). The ER requires 427 authorization from a network entity (on a call-by-call basis for the 429 DCS Group Category: Informational - Expiration 8/31/02 8 430 DCS Architecture February 2002 432 telephony service) before providing access to enhanced QoS for an 433 end-to-end IP flow. The obvious point where this policy and control 434 function resides is the DCS-proxy (also called a gate-controller, 435 because of this responsibility for managing access to enhanced QoS). 436 Thus, the ER is able to ensure that enhanced QoS is only provided 437 for end-to-end flows that have been authorized and for which usage 438 accounting is being done. Since the ER knows about the resource 439 usage associated with individual IP flows, it generates the usage 440 events that allow a user to be charged for service. 442 We introduce the concept of a "gate" in the ER, which manages access 443 to enhanced quality of service. The gate is a packet classifier and 444 policer that ensures that only those IP flows that have been 445 authorized by the DCS-proxy are granted access to enhanced QoS in 446 the access and backbone networks. Gates are "opened" selectively 447 for a flow. For the telephony service, they are opened for 448 individual calls. Opening a gate involves an admission control 449 check that is performed when a resource management request is 450 received from the endpoint for an individual call, and it may 451 involve resource reservation in the network for the call if 452 necessary. The packet filter in the gate allows a flow of packets to 453 receive enhanced QoS for a call from a specific IP source address 454 and port number to a specific IP destination address and port 455 number. 457 The DCS-proxy, in addition to implementing many of the call control 458 functions, is responsible for the policy decision regarding whether 459 the gate should be opened. DCS sets up a gate in advance of a 460 resource management message. This allows the policy function, which 461 is at the DCS-proxy, to be "stateless" in that it does not need to 462 know the state of calls that are already in progress. 464 DCS-proxies are typically organized in domains. A DCS-proxy is 465 responsible for a set of endpoints and the associated ERs. While 466 endpoints are not trusted, there is a trust relationship between the 467 ER and its associated DCS-proxy, since the DCS-proxy plays a role as 468 a policy server controlling when the ER can provide enhanced QoS 469 service. There is also a trust relationship among DCS-proxies. 470 Details of the security model are outside the scope of this draft. 472 The DCS-proxy is designed as a simple transaction server, so that 473 the failure of a DCS-proxy does not affect calls in progress. A 474 domain will likely have a primary and one or more secondary DCS- 475 proxies. If the primary DCS-proxy fails, only calls in a transient 476 state are affected. The endpoints involved in those calls will time 477 out and retry. All active calls are unaffected. This is possible 478 because the DCS-proxy retains no call state for stable calls. We 479 believe this design makes the DCS-proxy efficient and highly 480 scalable, and keeps the reliability requirements manageable. 482 DCS supports inter-working with the circuit switched telephone 483 network through PSTN gateways. A PSTN gateway may be realized as a 484 combination of a media controller, media gateway, and a signaling 486 DCS Group Category: Informational - Expiration 8/31/02 9 487 DCS Architecture February 2002 489 gateway. A media gateway acts as the IP peer of an endpoint for 490 media packets, converting between the data format used over the IP 491 network and the PCM format required for transmission over the PSTN. 492 The signaling gateway acts as the IP peer of an endpoint for 493 signaling packets, providing signaling inter-working between DCS and 494 conventional telephony signaling protocols such as ISUP/SS7. A media 495 gateway control protocol is used to control the operation of the 496 media gateway from the signaling gateway. 498 There are additional system elements that may be involved in 499 providing the telephony service. For example, the DCS-proxy may 500 interface with other servers that implement the authorization or 501 translation functions. Similarly, three way calling may be 502 supported using media servers in the network. 504 4.4 Trust Boundary 506 The DCS architecture defines a trust boundary around the various 507 systems and servers that are owned, operated by, and/or controlled 508 by the service provider. These trusted systems include the proxies 509 and various servers such as bridge servers, voicemail servers, 510 announcement servers, etc. Outside of the trust boundary lie the 511 customer premises equipment, and various media servers operated by 512 third-party service providers. 514 Certain subscriber-specific information, such as billing and 515 accounting information, stays within the trust boundary. Other 516 subscriber-specific information, such as endpoint identity, may be 517 presented to untrusted endpoints or may be withheld based on 518 subscriber profiles. 520 The SIP User Agent (UA) may be either within the trust boundary 521 (e.g. PSTN gateway) or outside the trust boundary (e.g. MTA), 522 depending on exactly what function is being performed and exactly 523 how it is being performed. Accordingly, the procedures followed by 524 a User Agent, as contained in the accompanying drafts, are different 525 depending on whether the UA is within the trust boundary or outside 526 the trust boundary. A trusted user agent is, in almost all cases, 527 equivalent to the combination of an untrusted user agent and a 528 proxy. 530 4.5 Basic Call Flow 532 Figure 2 presents a high-level overview of a basic MTA-to-MTA call 533 flow in DCS. Each MTA is associated with a DCS-proxy, which acts as 534 a SIP proxy. When a user goes off-hook and dials a telephone 535 number, the originating MTA (MTA-o) collects the dialed digits and 536 sends the initial INVITE message in SIP, to the "originating" DCS- 537 proxy (DP-o). This INVITE contains SDP proposing a set of codecs 538 that are acceptable to MTA-o (and their implied bandwidth 539 requirements), and an indication of the (mandatory) QoS 540 preconditions [9] needed for the session. DP-o verifies that MTA-o 541 is a valid subscriber of the telephony service (using authentication 543 DCS Group Category: Informational - Expiration 8/31/02 10 544 DCS Architecture February 2002 546 information in the INVITE message) and determines whether this 547 subscriber is authorized to place this call. DP-o then translates 548 the dialed number into the address of a "terminating" DCS-proxy (DP- 549 t) and forwards the INVITE message to it. 551 We assume that the originating and terminating DCS-proxies trust 552 each other. DP-o augments the INVITE message that it forwards with 553 additional information, such as billing information containing the 554 account number of the caller. DP-t then translates the dialed 555 number into the address of the terminating MTA (MTA-t) and forwards 556 the INVITE message to MTA to notify it about the incoming call. 558 The initial INVITE message invokes call feature handling at the 559 terminating MTA, such as call-forwarding. Assuming that the call is 560 not forwarded, MTA-t negotiates the coding style and bandwidth 561 requirements for the media streams. A reliable provisional 1xx 562 response to the initial INVITE is forwarded back through the DCS- 563 proxies. 565 DCS Group Category: Informational - Expiration 8/31/02 11 566 DCS Architecture February 2002 568 MTA-o ER-o DP-o DP-t ER-t MTA-t 570 | Invite | | | | | 571 |----------|--------->| Invite | | | 572 | | |--------->| | | 573 | | | | Invite | | 574 | | | |----------|--------->| 575 | | | | | 183 SDP | 576 | | | |<---------|----------| 577 | | | | | | 578 | | Gate | 183 SDP |Gate Setup| | 579 | | Setup |<---------|--------->| | 580 | |<---------| | | | 581 | 183 SDP | | | | | 582 |<---------|----------| | | | 583 | | | PRACK | | | 584 |----------|----------|----------|----------|--------->| 585 | | 200 OK (acknowledging PRACK) | | 586 |<---------|----------|----------|----------|----------| 587 | | | | | | 588 |<---------|--------Reserve Resources-------|--------->| 589 | | | | | | 590 | | COMET | | 591 |----------|--------- |----------|----------|--------->| 592 | 200 OK (acknowledging COMET) | 593 |<---------|----------|----------|----------|----------| 594 | | | | | 180 Ring | 595 | | | 180 Ring |<---------|----------| 596 | | 180 Ring |<---------| | | 597 |<---------|----------| | | | 598 | | | PRACK | | | 599 |----------|----------|----------|----------|--------->| 600 | | 200 OK (acknowledging PRACK) | | 601 |<---------|----------|----------|----------|----------| 602 | | | | | | User 603 | | | | | 200 OK | Answers 604 | | | 200 OK |<---------|----------| 605 | | 200 OK |<---------| | | 606 |<---------|----------| | | | 607 | ACK | | | | | 608 |----------|----------|----------|----------|--------->| 609 | | | | | | 610 |<---------|----------Active Call----------|--------->| 611 | | | | | | User 612 | | | | | BYE | Hangs Up 613 |<---------|----------|----------|----------|----------| 614 | | | | | 200 OK | 615 |----------|----------|----------|----------|--------->| 616 Figure 2: A Basic Call Flow, including Resource Management functions 618 DCS Group Category: Informational - Expiration 8/31/02 12 619 DCS Architecture February 2002 621 In the figure, MTA-t sends a 183 SDP message[8] to DP-t. The 183 622 SDP contains a subset of the capabilities in the INVITE message that 623 are acceptable to MTA-t. The SDP also carries the QoS preconditions 624 from the INVITE. DP-t sends a GATE-SETUP message to the terminating 625 ER (ER-t), conveying policy instructions allowing ER-t to open a 626 gate for the IP flow associated with this phone call. The GATE_SETUP 627 message contains billing information containing the account number 628 of the subscriber that will pay for the call. 630 DP-t forwards the 183 SDP to DP-o. DP-o sends a GATE-SETUP message 631 to the originating ER (ER-o) to indicate that it can open a gate for 632 the IP flow associated with the phone call. Finally, DP-o forwards 633 200 OK to MTA-o. The initial INVITE request and 183 SDP response 634 contain a SIP Contact header to indicate the IP address of the 635 remote MTA to be used for subsequent end-to-end SIP signaling 636 exchanges. MTA-o acknowledges the 183 SDP by sending a PRACK [7] 637 directly to MTA-t. The PRACK may contain the SDP to allow for a 638 further step in the negotiation of capabilities for the session. 640 Once the initial INVITE/183/PRACK exchange has completed, both MTAs 641 reserve the resources that will be needed for the media streams. 642 Once MTA-o has successfully made its reservation, it sends a COMET 643 message [9] to MTA-t, which is immediately acknowledged by MTA-t 644 with a 200-OK. MTA-o uses the COMET message to communicate the fact 645 that the desired pre-conditions necessary for the session as 646 perceived by MTA-o are satisfied (e.g., successful reservation of 647 resources, as perceived by MTA-o.) MTA-t acknowledges the COMET 648 message with a 200 OK final response directly to MTA-o. However, 649 resource reservation from MTA-t's perspective may not be completed 650 yet. Thus, the 200 OK acknowledging the COMET message does not 651 indicate successful resource reservation. Once MTA-t successfully 652 reserves the resources needed for the call, it sends a 180 Ringing 653 through the proxies to indicate that the phone is ringing, and that 654 the calling party should be given a ringback call progress tone. We 655 have not described, in detail, the messaging involved in resource 656 reservation here, as we believe that it is appropriate to allow for 657 a variety of resource management mechanisms. Thus, the MTA may use 658 the resource management mechanism that is most suitable to the 659 network segment that it is attached to. When the called party 660 answers, by going off-hook, MTA-t sends a 200 OK final response 661 through the proxies, which MTA-o acknowledges with an end-to-end 662 ACK. At this point the resources that were previously reserved are 663 committed to this conversation, and the call is "cut through." 665 Either party can terminate the call. An MTA that detects an on-hook 666 sends a SIP BYE message to the remote MTA, which is acknowledged. 668 5. Resource Management 670 DCS's resource management protocols distinguish between two phases: 671 a "Reserve" phase and a "Commit" phase. During the Reserve phase, 672 resources are reserved but are not yet made available to the 673 endpoint. This ensures that resources are available before ringing 675 DCS Group Category: Informational - Expiration 8/31/02 13 676 DCS Architecture February 2002 678 the far-end telephone. The Commit phase, which commits the 679 resources associated with the flow, is initiated after ringing the 680 far end telephone and after the called party picks up. At this 681 point, the resources are made available to the endpoint, and 682 recording is started so that the user can be billed for usage. The 683 use of a two-phase approach is essential because of the unique 684 requirements associated with human communication, such as telephony. 685 Recognition of the need for a two phase resource management approach 686 is a significant motivation for the call flow adopted in the 687 previous section. 689 Although we believe that issues of billing ought not to be the 690 primary consideration in the design of the protocol, the protocol 691 design should not preclude the possibility of usage sensitive 692 billing. Therefore, in addition to ensuring that resources are 693 available before ringing the phone, the two-phase resource 694 management protocol also allows us to preserve the semantics of 695 billing that users are accustomed to, whereby usage recording is not 696 started until the called party picks up the phone. Backbone 697 resources are reserved and allocated in the first phase of the two- 698 phase resource reservation protocol. This is important in order to 699 limit the impact of backbone resource management on post-pickup 700 delay (this minimizes the likelihood of clipping the first few 701 syllables of the conversation). 703 6. Distributed Call State 705 In order to provide enhanced services to millions of endpoints, we 706 need an architecture that can be implemented cost-effectively at 707 very large scale. Just as we enable flexibility by exploiting 708 intelligence at the endpoints, services can be provided in a 709 scaleable manner by storing the state associated with applications 710 at the endpoints, rather than in network servers. Especially with 711 telephony, endpoints are directly involved in handling calls and 712 therefore need to maintain and use call state. In contrast, while 713 network servers may need to be involved when setting up a call to 714 gain access to enhanced QoS, there is no fundamental need for those 715 servers to be involved throughout the lifetime of the call. 716 Maintaining state for every call at network servers, while 717 achievable, increases the reliability requirements and load on the 718 servers. The less state kept in the network, the better. 720 As a result, the DCS-proxies in DCS are designed to be Call 721 stateless transaction servers. The proxy maintains SIP transaction 722 state. So, when a DCS-proxy processes a service request from an 723 endpoint, it maintains state until the transaction is complete, but 724 does not maintain any per-call state about active calls in the 725 network. There are two major advantages to this design. First the 726 reliability of the service does not depend on the reliability of an 727 individual DCS-proxy. A DCS-proxy can fail without affecting calls 728 that are currently in progress. Second, it removes many complex 729 synchronization problems where two (or more) entities need to have 730 simultaneously accurate information. Since interactions with the 732 DCS Group Category: Informational - Expiration 8/31/02 14 733 DCS Architecture February 2002 735 DCS-proxies are simple stateless transactions, it is not necessary 736 for consecutive calls to be processed by the same DCS-proxy. DCS- 737 proxy crashes affect only the transient calls (the calls that are in 738 the process of being set up), and not stable conversations. 739 Further, it is likely that most calls in a transient state can be 740 recovered and successfully established through a backup or spare 741 DCS-proxy using endpoint retransmission, with no explicit 742 synchronization protocol required between the DCS-proxies. We 743 believe this design principle will enable us to operate in very 744 large scale, cost effectively. Furthermore it places the function 745 of managing the state of a call where it belongs - at the endpoint. 746 An existing call can only be affected by failures along the path or 747 by failure of the endpoints: there are no unnecessary elements 748 involved in a call. 750 We note that there are many services that involve the use of servers 751 or proxy endpoints that communicate directly with clients. Since 752 these endpoints are directly involved in providing service, it is 753 necessary and appropriate for them to maintain state. Examples of 754 proxy endpoints include application layer firewalls, caching 755 servers, transcoders, network-based conference bridges, interactive 756 voice response systems, and PSTN gateways. The DCS architecture 757 models these as end-points, that maintain appropriate call state. 759 We now turn to the mechanisms that allow us to avoid state in the 760 DCS-proxies. A number of examples of the need for distributed state 761 arise in the implementation of telephony features. These give rise 762 to two types of information that a DCS-proxy may present to an 763 endpoint that may subsequently be given back to the proxy by the 764 endpoint. The first type of information is Remote endpoint 765 identification, contained in the "Remote-Party-ID" header. The 766 second type of information is associated with an active session that 767 an endpoint is participating in. This latter information, stored in 768 the "State" header, is information that a service provider or proxy 769 may need for methods that are invoked by an endpoint related to that 770 session. Thus, a DCS-proxy stores the state information about the 771 calls at an endpoint in two new headers, "State" and "Remote-Party- 772 ID". The State header is both encrypted and signed by the proxy to 773 ensure the privacy and the integrity of the information contained in 774 the header. The information that may be contained in State includes 775 resource information (such as Gate information) and billing 776 information (such as a billing id). The Remote-Party-ID is only 777 encrypted when privacy is requested by the endpoint (covered in 778 detail in the Section 7 below.) 780 When needed, the endpoint provides the State to the DCS-proxy that 781 generated it, which can use the information to provide additional 782 functionality. 783 Because the State header is encrypted and signed by the DCS-proxy, 784 the information it contains is trusted by the network even though 785 the endpoint itself is not trusted. In addition, DCS-proxies store 786 service-specific opaque data associated with a call at the edge 788 DCS Group Category: Informational - Expiration 8/31/02 15 789 DCS Architecture February 2002 791 router. Since charging for telephony services may be tied to the 792 use of resources, this information is best stored at the edge 793 router, where knowledge of resource usage exists. 795 The endpoint returns the state (possibly both State and Remote- 796 Party-ID) information to the DCS-proxy when it is needed to 797 implement specific features. The endpoint cannot interpret the 798 information in the encrypted and signed State header (and Remote- 799 Party-ID if it is also encrypted), and any attempt to tamper with it 800 can be detected by the DCS-proxy. 802 An example of use of the State information is one where a change in 803 coding method in the middle of a call (e.g., upon detection of a fax 804 tone) may require the proxies to authorize additional resources. 805 Services such as call-transfer and three-way-calling require the 806 proxy to be involved in authorizing resources for packet flows to 807 the new destination(s). 809 7. DCS Proxy - DCS Proxy Communications 811 DCS-proxies implement a set of service-specific control functions 812 required to support the telephony service: 814 . Authentication and authorization: Since services are only provided 815 to authorized subscribers, DCS-proxies authenticate signaling 816 messages and authorize requests for service on a call-by-call 817 basis. 819 . Name/number translation and call routing: DCS-proxies translate 820 dialed E.164 numbers, or names, to a terminating IP address based 821 on call routing logic to support a wide range of call features. 823 . Service-specific admission control: DCS-proxies can implement a 824 broad range of admission control policies for the telephony 825 service. For example, DCS-proxies may provide precedence for 826 particular calls (e.g., 911 calls). Admission control may also be 827 used to implement overload control mechanisms, e.g. to restrict 828 the number of calls to a particular location or to restrict the 829 frequency of call setup to avoid signaling overload. 831 . Signaling and service feature support: While many service features 832 are implemented by endpoints, the DCS-proxy also plays a role in 833 feature support. DCS signaling provides a set of service 834 primitives to end-points that are mediated by the DCS-proxy. The 835 DCS-proxy is involved in implementing service features that depend 836 on the privacy of calling information, e.g., caller-ID blocking. 837 It also plays a role in supporting service features that require 838 users to receive a consistent view of feature operation even when 839 an endpoint is down. For example, while an endpoint may normally 840 participate in call forwarding, the DCS-proxy can control call 841 forwarding on behalf of an endpoint when the endpoint is down. 843 DCS Group Category: Informational - Expiration 8/31/02 16 844 DCS Architecture February 2002 846 End-points MTA-o and MTA-t communicate through the DCS-Proxies DP-o 847 and DP-t, as shown in Figure 2. The interface of concern in this 848 section is the one between the DCS-Proxies DP-o and DP-t. In 849 contrast to a true stateless SIP proxy, the DCS-Proxy maintains 850 transaction state. During the interval that a call is being setup, a 851 DCS-Proxy keeps state related to a request until a response is 852 received. 854 For each call made to a phone number, DP-o may need to perform the 855 functions needed for Local Number Portability (LNP). If a LNP 856 database lookup is performed and the resulting dialed string is 857 modified, DP-o must modify the Request-URI to include the result of 858 the LNP lookup. The originating proxy DP-o generates and stores the 859 State header. This information is intended to be sent to endpoint 860 MTA-o and included with the first response that is returned to MTA- 861 o. The originating DCS-Proxy, DP-o, may then use the call state 862 information provided to it in the State header to manipulate call- 863 legs when requested by MTA-o. 865 As with conventional SIP proxies, DP-o adds its address to the top 866 of the Via: header list with a branch=1 field when forwarding the 867 request. In addition, to support billing functions for a carrier, 868 DP-o appends opaque information called the Billing-Info and Billing- 869 ID. In addition, to support the resource management functions (such 870 as manipulating Gates for resource management in concert with call- 871 leg manipulation), a Gate-Location: header is included. This allows 872 for the subsequent generation of requests for access network QoS by 873 the end-points. 875 We also depend on originating DCS-Proxy, DP-o to be responsible for 876 manipulating call legs. For instance, when a call is being 877 forwarded, information about the new destination that the call is 878 being forwarded to is provided by DP-t to DP-o. The new INVITE is 879 then issued from DP-o. The information exchanged between the DCS- 880 proxies enables such a function to be performed. 882 8. Privacy 884 Many conventional telephony systems have the ability to provide 885 information about the identity of the calling party to the called 886 party before the latter accepts the call (such a capability is 887 typically termed "Caller-ID"). Systems that support Caller-ID 888 usually provide a mechanism that allows the calling party to 889 instruct the network to refrain from delivering this information to 890 the destination. 892 In order for an IP-based network to provide a caller with a similar 893 capability, a new SIP header is needed to signal the desire for 894 anonymity to the network elements that would otherwise provide the 895 caller's identity to the destination party. If a caller desires to 896 remain anonymous, several additional changes to standard SIP are 897 necessary. 899 DCS Group Category: Informational - Expiration 8/31/02 17 900 DCS Architecture February 2002 902 The triplet {From:, To:, Call-ID:} is used to identify a call leg in 903 both endpoints and in proxies. Because call state information is 904 pushed to the edge of the network, this information must be 905 delivered unchanged to the destination endpoint. 907 The SIP From: header normally contains information that identifies 908 the caller. In order to hide the identity of the caller, the From: 909 header information is encrypted with the originating endpoint's key. 910 The destination endpoint does not possess the key to decrypt the 911 From: information. No new syntax for SIP is introduced here. 913 Normally, the SIP Call-ID: header also contains information about 914 the caller. In the DCS architecture, to support privacy the value of 915 the Call-ID: header is a cryptographic hash string that contains no 916 information about the user. 918 Since all the normally available mechanisms for passing information 919 about the caller are no longer available, a new SIP header, Remote- 920 Party-ID, is used to pass the caller's identity to the destination. 921 The Remote-Party-ID header is primarily used for endpoint 922 identification. This header contains the information that would 923 normally be present in the From: header; the network passes it to 924 the destination endpoint only if the caller has not requested 925 anonymity. If the caller had requested anonymity, then the Remote- 926 Party-ID header contains an encrypted string that can be used by the 927 proxy in handling further requests. 929 If the user at an endpoint wants to return the last call (e.g., by 930 dialing *69 on a traditional telephone) the "call return" function 931 is invoked. If the user had subscribed to the caller ID service 932 feature, the terminating endpoint could store the information (phone 933 number or IP address) associated with the last call. However, it 934 may be the case that the user does not subscribe to the feature, or 935 the originator of the previous call may have requested that this 936 information be blocked in order to retain privacy. In this case, 937 call return can be implemented, while keeping the caller's identity 938 private, by using the encrypted Remote-Party-ID header. 940 In addition to the usual privacy elements provided by telephone 941 systems, IP-based systems must implement methods of hiding the 942 source IP address from the destination if the caller requires 943 privacy. The entire address must be obscured, since even a few 944 address bits may provide partial location information. Likewise, IP 945 addresses of the destination should not be revealed to the caller, 946 in order to maintain privacy of transfer destinations. 948 IP addresses typically appear in the Contact: header; they also 949 appear in SDP descriptions contained in SIP messages. These must all 950 be protected. We chose to use an application-level anonymizer that 951 inspects the SIP call signaling messages and replaces any 952 identifying information contained therein in a consistent manner. 953 The identifying information is modified such that when the messages 955 DCS Group Category: Informational - Expiration 8/31/02 18 956 DCS Architecture February 2002 958 are delivered to the destination endpoint any identifying 959 information has been replaced with fields that obscure the identity 960 of the party seeking privacy. 962 This mechanism does not require any modification to the call 963 signaling initiated by the endpoints: the application-level 964 anonymizer performs these functions silently within the network. 966 9. Security Considerations 968 Detailed security considerations related to this architecture will 969 be addressed in a future companion draft. 971 10. Call Flows 973 This section contains sample message flows between MTAs, DCS- 974 Proxies, and Call Management Systems (CMSs, which are trusted User 975 Agents, as described in section 3.4). 977 The first four subsections provide details for handling of basic 978 calls, between all combinations of MTAs and CMSs. 980 Following subsections provide details of the handling of call 981 features, such as call-forwarding, call-transfer, three-way-calling, 982 CODEC changes, operator services, electronic surveillance, and IP 983 address privacy. 985 DCS Group Category: Informational - Expiration 8/31/02 19 986 DCS Architecture February 2002 988 10.1 Basic Call Flow from MTA to MTA 990 MTA-o ER-o Proxy-o Proxy-t ER-t MTA-t 992 | (1)Invite | | | | 993 |----------|--------->|(2)Invite | | | 994 | | |--------->| | | 995 | | | |(3)Invite | | 996 | | | |----------|--------->| 997 | | | | |(4)183 SDP| 998 | | | |<---------|----------| 999 | | | | | | 1000 | | Gate |(5)183 SDP|Gate Setup| | 1001 | | Setup |<---------|--------->| | 1002 | |<---------| | | | 1003 | (6)183 SDP | | | | 1004 |<---------|----------| | | | 1005 | | |(7)PRACK | | | 1006 |----------|----------|----------|----------|--------->| 1007 | |(8)200 OK (acknowledging PRACK) | | 1008 |<---------|----------|----------|----------|----------| 1009 | | | | | | 1010 |<---------|--------Reserve Resources-------|--------->| 1011 | | | | | | 1012 | | (9)COMET | | 1013 |----------|--------- |----------|----------|--------->| 1014 | (10)200 OK (acknowledging COMET) | 1015 |<---------|----------|----------|----------|----------| 1016 | | | | (11)180 Ring | 1017 | | | (12)180 |<---------|----------| 1018 | (13)180 Ring |<---------| | | 1019 |<---------|----------| | | | 1020 | | |(14)PRACK | | | 1021 |----------|----------|----------|----------|--------->| 1022 | | (15)200 OK (acknowledging PRACK) | 1023 |<---------|----------|----------|----------|----------| 1024 | | | | | | User 1025 | | | | (16)200 OK | Answers 1026 | | | (17)200 |<---------|----------| 1027 | (18)200 OK |<---------| | | 1028 |<---------|----------| | | | 1029 | (19)ACK | | | | 1030 |----------|----------|----------|----------|--------->| 1031 | | | | | | 1032 |<---------|----------Active Call----------|--------->| 1033 | | | | | | User 1034 | | | | (20)BYE | Hangs Up 1035 |<---------|----------|----------|----------|----------| 1036 | | | | (21)200 OK | 1037 |----------|----------|----------|----------|--------->| 1039 DCS Group Category: Informational - Expiration 8/31/02 20 1040 DCS Architecture February 2002 1042 The above figure shows the basic DCS call flow from one MTA to 1043 another. The basic DCS call flow starts with an INVITE from MTA-o 1044 to MTA-t through proxies Proxy-o and Proxy-t. It follows the 1045 conventions of SIP. The Via headers are used to track the path of 1046 the request (INVITE) so that the response can traverse backwards 1047 through the same path. 1049 This INVITE is sent requesting that MTA-t not ring until the QoS 1050 preconditions are met. The purpose of this first INVITE is to 1051 invoke call features, such as call forwarding, to determine the 1052 proper destination MTA, and to negotiate the bandwidth and codec to 1053 be used so that the proper resources can be reserved. The response 1054 (183-Session-Progress) acknowledges the receipt of the INVITE 1055 message, provides the SDP for the forward media flow, and provides 1056 contact information for end-to-end messages that happen later in the 1057 call flow. When the INVITE is received, MTA-t's state reflects that 1058 a call is now being set-up. After MTA-o receives the 183-Session- 1059 Progress, it sends a PRACK message directly to MTA-t (as specified 1060 in the contact header) to acknowledgement receipt of MTA-t's SDP. 1062 After resources are reserved for the call, a COMET is sent to MTA-t. 1063 MTA-t responds with a 200-OK, and also sends a ringback indication 1064 in the form of a 180-Ringing message. When the call is answered, a 1065 200-OK to the INVITE is sent back to MTA-o, which ACKs the OK to 1066 MTA-t to complete the triple handshake. 1068 The bearer channel session can now be established. When the call is 1069 over, either end can send a BYE message directly to the other end. 1070 This BYE request must also be responded to with a 200-OK. 1072 The detailed steps followed and messages exchanged are: 1074 A call setup begins when MTA-o detects off-hook on one of its lines. 1075 MTA-o first puts that line in the "busy" state. MTA-o sends an 1076 audible dialtone signal to the customer and begins to detect DTMF 1077 digits. Upon receiving the first digit, MTA-o stops dialtone. 1078 Once a complete E.164 number has been received (based upon a digit 1079 map that has been provisioned in the MTA), MTA-o generates the 1080 following INVITE message and sends it to Proxy-o (the DCS-proxy that 1081 manages MTA-o). MTA-o starts the retransmission timer (T-proxy- 1082 request). 1084 (1) INVITE 1085 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 1086 Via: SIP/2.0/UDP Host(mta-o.provider) 1087 Supported: 100rel, state 1088 Remote-Party-ID: John Doe 1089 Anonymity: Off 1090 From: "Alien Blaster" 1092 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1094 DCS Group Category: Informational - Expiration 8/31/02 21 1095 DCS Architecture February 2002 1097 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1098 Cseq: 127 INVITE 1099 Contact: sip:Host(mta-o.provider) 1100 Content-Type: application/sdp 1101 Content-length: (.) 1103 v=0 1104 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1105 s=- 1106 c= IN IP4 Host(mta-o.provider) 1107 b=AS:64 1108 t=907165275 0 1109 a=X-pc-csuite:312F 1110 a=rtpmap:0 PCMU/8000 1111 a=rtpmap:96 G726-32/8000 1112 m=audio 3456 RTP/AVP 0 1113 a=qos:mandatory sendrecv 1114 a=X-pc-codecs:96 1116 The Request-URI starts with the dialed number from the user. The 1117 Remote-Party-ID gives the calling name and number, as provided by 1118 the MTA. Even though Anonymity indicates calling name and number 1119 privacy is not required for this call, the From, To, and Call-ID 1120 headers contain cryptographically random values to maintain privacy 1121 of the caller. 1123 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 1124 standard IPSec authentication. Proxy-o examines the Remote-Party-ID: 1125 line and checks to see that this originating phone number belongs to 1126 MTA-o, and is authorized for originating service. Proxy-o also 1127 checks to make sure the calling name in the Remote-Party-ID: line is 1128 a valid calling name for this line. Proxy-o then sends the dialed 1129 number to a directory server for resolution to an IP address. In 1130 this example, the directory server returns the address of Proxy-t, 1131 the Proxy that manages the terminating MTA. Proxy-o generates the 1132 following INVITE message and sends it to Proxy-t. Proxy-oadds a 1133 number of parameters to the INVITE message, which are described 1134 below. Upon sending this INVITE message, Proxy-o starts the 1135 retransmisison timer (T-proxy-request) and starts the T3 session 1136 timer (T-proxy-setup). The retransmission timer is cancelled on 1137 receipt of the optional 100-Trying provisional response (not present 1138 in this call flow); both are cancelled on receipt of the 183- 1139 Session-Progress provisional response. 1141 (2) INVITE 1142 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 1143 npdi=yes@Host(dp-t);user=phone SIP/2.0 1144 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 1145 Via: SIP/2.0/UDP Host(mta-o.provider) 1146 Supported: 100rel, state 1147 Require: state 1148 Proxy-Require: dcs, state 1150 DCS Group Category: Informational - Expiration 8/31/02 22 1151 DCS Architecture February 2002 1153 Remote-Party-ID: John Doe; 1154 Anonymity: Off 1155 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 1156 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/ 1157 212-555-1111/212-555-2222> 1158 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1159 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1160 orig-dest=tel:+1-212-555-2222; num-redirects=0 1161 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 1162 From: "Alien Blaster" 1164 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1165 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1166 Cseq: 127 INVITE 1167 Contact: sip:Host(mta-o.provider) 1168 Content-Type: application/sdp 1169 Content-length: (.) 1171 v=0 1172 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1173 s=- 1174 c= IN IP4 Host(mta-o.provider) 1175 b=AS:64 1176 t=907165275 0 1177 a=X-pc-csuites:312F 1178 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1179 a=rtpmap:0 PCMU/8000 1180 a=rtpmap:96 G726-32/8000 1181 m=audio 3456 RTP/AVP 0 1182 a=qos:mandatory sendrecv 1183 a=X-pc-codecs:96 1185 The "lrn" in the Request-URI shows that LNP dip has been done, and 1186 gives the result. The dialed number is fully expanded into E.164 1187 number. The Remote-Party-ID header contains verified Calling-Name 1188 and full E.164 Calling-Number. Dcs-Gate contains the IP address of 1189 the CMTS, the identity of the originating gate, and key for gate 1190 coordination messages. Also contained is the indication that gate 1191 coordination is required for this call. Dcs-Billing-Info contains 1192 the IP address of the record-keeping-server for event collection, 1193 the account number, originating number, and terminating number for 1194 billing of this call. State contains the state information wanted 1195 by Proxy-o for handling of messages from MTA-t to MTA-o. Dcs- 1196 Billing-ID contains the unique Billing identifier, made up of the 1197 CMS IP address, timestamp, and sequence number. A suggested 1198 encryption key is inserted into the SDP. 1200 Upon receiving this INVITE message, Proxy-t authenticates that the 1201 sender was Proxy-o using IPSec, and sends the E.164-t address to the 1202 directory server. In this example, the Directory Server is able to 1203 translate E.164-t to the IP address of MTA-t (one of the MTAs 1204 managed by Proxy-t). Proxy-t then checks to see if MTA-t is 1205 authorized for receiving this call. Proxy-talso checks the account 1207 DCS Group Category: Informational - Expiration 8/31/02 23 1208 DCS Architecture February 2002 1210 information to determine if MTA-o is paying for the call or if MTA-t 1211 is expected to pay. Proxy-t generates the following INVITE message 1212 and sends it to MTA-t. The Remote-Party-ID line appears unchanged 1213 only if the destination MTA has subscribed to caller-id service; 1214 otherwise, or if the caller had specified privacy of the caller 1215 information, the Remote-Party-ID line would be altered. Note that 1216 the Via lines have been encrypted, maintaining the privacy of the 1217 caller. The line State has been added, and contains all the 1218 information needed by the Proxy for any subsequent call features 1219 that may be requested. This information is signed by Proxy-t and 1220 encrypted. 1222 Upon sending this INVITE message, Proxy-t starts the retransmisison 1223 timer (T-proxy-request) and starts the T3 session timer (T-proxy- 1224 setup). The retransmission timer is cancelled on receipt of the 1225 optional 100-Trying provisional response (not present in this call 1226 flow); both are cancelled on receipt of the 183-Session-Progress 1227 provisional response. 1229 (3) INVITE 1230 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 1231 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1232 o.provider); branch=1"; via=Host(mta-o.provider)}K 1233 Supported: 100rel, state 1234 Require: state 1235 Remote-Party-ID: John Doe; 1236 Media-Authorization: 31S14621 1237 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1238 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1239 state="Host(dp-o.provider); nexthop=sip:555- 1240 1111@Host(mta-o.provider); gate=Host(cmts- 1241 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1242 2222; num-redirects=0"}K" 1243 From: "Alien Blaster" 1245 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1246 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1247 Cseq: 127 INVITE 1248 Contact: sip:Host(mta-o.provider) 1249 Content-Type: application/sdp 1250 Content-length: (.) 1252 v=0 1253 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1254 s=- 1255 c= IN IP4 Host(mta-o.provider) 1256 b=AS:64 1257 t=907165275 0 1258 a=X-pc-csuites:312F 1259 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1260 a=rtpmap:0 PCMU/8000 1261 a=rtpmap:96 G726-32/8000 1262 m=audio 3456 RTP/AVP 0 1264 DCS Group Category: Informational - Expiration 8/31/02 24 1265 DCS Architecture February 2002 1267 a=qos:mandatory sendrecv 1268 a=X-pc-codecs:96 1270 Local number portability information has been removed from the 1271 Request-URI, and the username is a string that is known to MTA-t. 1272 Via headers are encrypted to provide calling party privacy. Media- 1273 Authorization header contains the Gate-ID at the CMTS controlling 1274 the resources for MTA-t. State contains a string encrypted with a 1275 Proxy-t privately-held key, and contains nexthop routing 1276 information, CMTS address, Gate-ID, and all previous state headers 1277 from other proxies. 1279 Upon receiving this INVITE, MTA-t authenticates that the message 1280 came from Proxy-t using IPSec. MTA-t checks the telephone line 1281 associated with the E.164-t (as found in the Request URI) to see if 1282 it is available. If it is available, MTA-t looks at the capability 1283 parameters in the Session Description Protocol (SDP) part of the 1284 message and determines which media channel parameters it can 1285 accommodate for this call. MTA-t stores the INVITE message, 1286 including the encrypted State parameters, for later use. MTA-t 1287 puts this line in the "busy" state (so any other call attempts are 1288 rejected until this call clears), generates the following 183- 1289 Session-Progress response, and sends it to Proxy-t. MTA-t starts 1290 the retransmission timer with value (T-proxy-response) and starts 1291 the session timer (T3) with value (T-resource). 1293 MTA-t can, at its option, still accept further incoming calls and 1294 present them all to the customer. Such enhanced user interfaces for 1295 the MTA is beyond the scope of this specification. Note that MTA-t 1296 can't use the To: header field to determine the proper line, as it 1297 may be totally unrelated to the phone number at MTA-t. 1299 (4)183-Session-Progress 1300 SIP/2.0 183 Session Progress 1301 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1302 o.provider); branch=1"; via=Host(mta-o.provider)}K 1303 Require: 100rel 1304 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1305 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1306 state="Host(dp-o.provider); nexthop=sip:555- 1307 1111@Host(mta-o.provider); gate=Host(cmts- 1308 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1309 2222; num-redirects=0"}K" 1310 Remote-Party-ID: John Smith 1311 Anonymity: off 1312 From: "Alien Blaster" 1314 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1315 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1316 Cseq: 127 INVITE 1317 Rseq: 9021 1318 Content-Disposition: precondition 1319 Contact: sip:Host(mta-t.provider) 1321 DCS Group Category: Informational - Expiration 8/31/02 25 1322 DCS Architecture February 2002 1324 Content-Type: application/sdp 1325 Content-length: (.) 1327 v=0 1328 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1329 s=- 1330 c= IN IP4 Host(mta-t.provider) 1331 b=AS:64 1332 t=907165275 0 1333 a=X-pc-csuites:312F 1334 a=rtpmap:0 PCMU/8000 1335 m=audio 6544 RTP/AVP 0 1336 a=qos:mandatory sendrecv confirm 1338 Remote-Party-ID contains the called name and number, as provided by 1339 MTA. Anonymity indicates called name and number privacy is not 1340 requested for this call. SDP contains MTA-t's bearer channel IP 1341 address, and negotiated voice encoding parameters. 1343 Upon receiving the 183-Session-Progress message, Proxy-t forwards 1344 the following message to Proxy-o, restoring the Via headers, and 1345 adding Dcs-Gate information. At this point Proxy-t has completed 1346 all the call processing functions needed for this call, deletes its 1347 local state information, and handles all remaining messages as a 1348 stateless proxy. Proxy-t may include Dcs-Billing-Information if it 1349 wishes to override the billing information that came in the INVITE 1350 (e.g. collect or toll-free call). 1352 (5) 183-Session-Progress: 1353 SIP/2.0 183 Session Progress 1354 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1355 Via: SIP/2.0/UDP Host(mta-o.provider) 1356 Require: 100rel, state 1357 Proxy-Require: dcs, state 1358 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 1359 t.provider); gate=Host(cmts-t.provider):4321/31S14621; 1360 orig-dest=tel:+1-212-555-1111; num-redirects=0 1361 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1362 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1363 orig-dest=tel:+1-212-555-2222; num-redirects=0 1364 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 1365 Remote-Party-ID: John Smith 1366 Anonymity: off 1367 From: "Alien Blaster" 1369 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1370 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1371 Cseq: 127 INVITE 1372 Rseq: 9021 1373 Content-Disposition: precondition 1374 Contact: sip:Host(mta-t.provider) 1375 Content-Type: application/sdp 1377 DCS Group Category: Informational - Expiration 8/31/02 26 1378 DCS Architecture February 2002 1380 Content-length: (.) 1382 v=0 1383 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1384 s=- 1385 c= IN IP4 Host(mta-t.provider) 1386 b=AS:64 1387 t=907165275 0 1388 a=X-pc-csuites:312F 1389 a=rtpmap:0 PCMU/8000 1390 m=audio 6544 RTP/AVP 0 1391 a=qos:mandatory sendrecv confirm 1393 Upon receiving the 183-Session-Progress message, Proxy-o forwards 1394 the following message to MTA-o. This message contains a State 1395 parameter giving all the information needed by the Proxy for later 1396 features. The State value is signed by Proxy-o and encrypted by 1397 Proxy-o's privately-held key. At this point Proxy-o has completed 1398 all the call processing functions needed for this call, deletes its 1399 local state information, and handles all remaining messages as a 1400 stateless proxy. 1402 (6) 183-Session-Progress: 1403 SIP/2.0 183 Session Progress 1404 Via: Sip/2.0/UDP Host(mta-o.provider) 1405 Require: 100rel, state 1406 Media-Authorization: 17S30124 1407 State: Host(dp-o.provider); state="{gate= Host(cmts- 1408 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 1409 2222;rn=+1-212-2342222;npdi=yes@Host(DP-t), 1410 state="Host(dp- t.provider); 1411 nexthop=sip:555-2222@Host(mta-t.provider); 1412 gate=Host(cmts-t.provider):4321/31S14621; orig- 1413 dest=tel:+1-212-555-1111; num-redirects=0"}K" 1414 Remote-Party-ID: John Smith 1415 From: "Alien Blaster" 1417 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1418 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1419 Cseq: 127 INVITE 1420 Rseq: 9021 1421 Content-Disposition: precondition 1422 Contact: sip:Host(mta-t.provider) 1423 Content-Type: application/sdp 1424 Content-length: (.) 1426 v=0 1427 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1428 s=- 1429 c= IN IP4 Host(mta-o.provider) 1430 b=AS:64 1431 t=907165275 0 1433 DCS Group Category: Informational - Expiration 8/31/02 27 1434 DCS Architecture February 2002 1436 a=X-pc-csuites:312F 1437 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1438 a=rtpmap:0 PCMU/8000 1439 m=audio 6544 RTP/AVP 0 1440 a=qos:mandatory sendrecv confirm 1442 Upon receiving the 183-Session-Progress message, MTA-o stops timer 1443 (T-proxy-request) and sends the following PRACK message directly to 1444 MTA-t using the IP address in the Contact header of the 183-Session- 1445 Progress message. 1447 (7) PRACK: 1448 PRACK sip:Host(mta-t.provider) SIP/2.0 1449 Via: SIP/2.0/UDP Host(mta-o.provider) 1450 From: "Alien Blaster" 1452 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1453 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1454 Cseq: 128 PRACK 1455 Rack: 9021 127 INVITE 1456 Content-Type: application/sdp 1457 Content-length: (.) 1459 v=0 1460 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1461 s=- 1462 c= IN IP4 Host(mta-o.provider) 1463 b=AS:64 1464 t=907165275 0 1465 a=X-pc-csuites:312F 1466 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1467 a=rtpmap:0 PCMU/8000 1468 m=audio 3456 RTP/AVP 0 1469 a=qos:mandatory sendrecv 1471 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 1472 the resources necessary for the call. 1474 (8) 200 OK: 1475 SIP/2.0 200 OK 1476 Via: SIP/2.0/UDP Host(mta-o.provider) 1477 From: "Alien Blaster" 1479 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1480 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1481 Cseq: 128 PRACK 1483 After sending PRACK(7), MTA-o attempts to reserve network resources 1484 if necessary. If resource reservation is successful, MTA-o sends 1485 the following COMET message directly to MTA-t. MTA-o starts timer 1486 (T-direct-request). 1488 DCS Group Category: Informational - Expiration 8/31/02 28 1489 DCS Architecture February 2002 1491 (9) COMET: 1492 COMET sip:Host(mta-t.provider) SIP/2.0 1493 Via: SIP/2.0/UDP Host(mta-o.provider) 1494 From: "Alien Blaster" 1496 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1497 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1498 Cseq: 129 COMET 1499 Content-Type: application/sdp 1500 Content-length: (.) 1502 v=0 1503 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1504 s=- 1505 c= IN IP4 Host(mta-o.provider) 1506 b=AS:64 1507 t=907165275 0 1508 a=X-pc-csuites:312F 1509 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1510 a=rtpmap:0 PCMU/8000 1511 m=audio 3456 RTP/AVP 0 1512 a=qos:success send 1514 MTA-t acknowledges the COMET message with a 200-OK. 1516 (10) 200 OK: 1517 SIP/2.0 200 OK 1518 Via: SIP/2.0/UDP Host(mta-o.provider) 1519 From: "Alien Blaster" 1521 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1522 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1523 Cseq: 129 COMET 1525 Upon receipt of the 200-OK(10), MTA-o stops timer (T-direct- 1526 request). 1528 Upon receipt of the (7) PRACK message, MTA-t stops timer (T-proxy- 1529 response) and attempts to reserve network resources if necessary. 1530 Once MTA-t both receives the COMET message and has successfully 1531 reserved network resources, MTA-t begins to send ringing voltage to 1532 the designated line and sends the following 180 RINGING message 1533 through Proxy-t. MTA-t restarts the session timer (T3) with value 1534 (T-ringing). 1536 (11) 180 RINGING: 1537 SIP/2.0 180 Ringing 1538 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1539 o.provider); branch=1"; via=Host(mta-o.provider)} K 1540 Require: 100rel 1542 DCS Group Category: Informational - Expiration 8/31/02 29 1543 DCS Architecture February 2002 1545 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1546 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1547 state="Host(dp-o.provider); nexthop=sip:555- 1548 1111@Host(mta-o.provider); gate=Host(cmts- 1549 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1550 2222; num-redirects=0"}K" 1551 From: "Alien Blaster" 1553 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1554 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1555 Contact: sip:Host(mta-t.provider) 1556 Cseq: 127 INVITE 1557 Rseq: 9022 1559 Proxy-t decodes the Via: headers, and passes the 180-Ringing to 1560 Proxy-o. This operation is done as a SIP stateless proxy. 1562 (12) 180 RINGING: 1563 SIP/2.0 180 Ringing 1564 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1565 Via: SIP/2.0/UDP Host(mta-o.provider) 1566 Require: 100rel 1567 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1568 o.provider); gate=Host(cmts-o.provider):3612/17S30124 1569 From: "Alien Blaster" 1571 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1572 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1573 Cseq: 127 INVITE 1574 Rseq: 9022 1576 Proxy-o handles the message as a SIP stateless proxy, and passes the 1577 180-Ringing to MTA-o. 1579 (13) 180 RINGING: 1580 SIP/2.0 180 Ringing 1581 Via: SIP/2.0/UDP Host(mta-o.provider) 1582 Require: 100rel 1583 From: "Alien Blaster" 1585 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1586 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1587 Cseq: 127 INVITE 1588 Rseq: 9022 1590 Upon receipt of the 180 RINGING message, MTA-o restarts the 1591 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 1592 the provisional response with a PRACK, and plays audible ringback 1593 tone to the customer. 1595 DCS Group Category: Informational - Expiration 8/31/02 30 1596 DCS Architecture February 2002 1598 (14) PRACK: 1599 PRACK sip:Host(mta-t.provider) SIP/2.0 1600 Via: SIP/2.0/UDP Host(mta-o.provider) 1601 From: "Alien Blaster" 1603 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1604 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1605 Contact: sip:Host(mta-t.provider) 1606 Cseq: 130 PRACK 1607 Rseq: 9022 127 INVITE 1609 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 1610 proxy-response). 1612 (15) 200 OK: 1613 SIP/2.0 200 OK 1614 Via: SIP/2.0/UDP Host(mta-o.provider) 1615 From: "Alien Blaster" 1617 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1618 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1619 Cseq: 130 PRACK 1621 Once MTA-t detects off-hook on the called line, it disconnects 1622 ringing voltage from the line and sends the final response through 1623 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 1624 proxy-response). If necessary, MTA-t may also commit to resources 1625 that have been reserved for this call. At this point, MTA-t begins 1626 to generate bearer channel packets of encoded voice and send them to 1627 MTA-o using the IP address and port number specified in the SDP part 1628 of the original INVITE message. 1630 (16) 200-OK: 1631 SIP/2.0 200 OK 1632 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1633 o.provider); branch=1"; via=Host(mta-o.provider)} K 1634 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1635 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1636 state="Host(dp-o.provider); nexthop=sip:555- 1637 1111@Host(mta-o.provider); gate=Host(cmts- 1638 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1639 2222; num-redirects=0"}K" 1640 From: "Alien Blaster" 1642 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1643 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1644 Cseq: 127 INVITE 1646 Proxy-t handles the message as a SIP stateless proxy, and forwards 1647 it to Proxy-o. 1649 DCS Group Category: Informational - Expiration 8/31/02 31 1650 DCS Architecture February 2002 1652 (17) 200-OK: 1653 SIP/2.0 200 OK 1654 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1655 Via: SIP/2.0/UDP Host(mta-o.provider) 1656 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1657 o.provider); gate=Host(cmts-o.provider):3612/17S30124 1658 From: "Alien Blaster" 1660 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1661 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1662 Cseq: 127 INVITE 1664 Proxy-o handles the message as a SIP stateless proxy, and forwards 1665 it to MTA-o. 1667 (18) 200-OK: 1668 SIP/2.0 200 OK 1669 Via: SIP/2.0/UDP Host(mta-o.provider) 1670 From: "Alien Blaster" 1672 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1673 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1674 Cseq: 127 INVITE 1676 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 1677 and stops playing audible ringback tone to the customer and begins 1678 to play the bearer channel stream that is received from MTA-t. MTA- 1679 o sends the following ACK message to MTA-t. If necessary, MTA-o may 1680 also commit to resources that have been reserved for this call. At 1681 this point, MTA-o begins to generate bearer channel packets of 1682 encoded voice and send them to MTA-t using the IP address and port 1683 number specified in the SDP part of the original 183-Session- 1684 Progress message (that was a response to the original INVITE). 1686 (19) ACK: 1687 ACK sip:Host(mta-t.provider) SIP/2.0 1688 Via: SIP/2.0/UDP Host(mta-o.provider) 1689 From: "Alien Blaster" 1691 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1692 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1693 Cseq: 127 ACK 1695 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 1696 response). 1698 When either MTA detects hangup, it sends out a BYE message to the 1699 other MTA. In this example, MTA-o detected that the customer hung 1700 up the phone. MTA-o puts that line in the "idle" state so new calls 1701 can be made or received. It sends the following BYE message 1702 directly to MTA-t. MTA-o may also need to release network resources 1704 DCS Group Category: Informational - Expiration 8/31/02 32 1705 DCS Architecture February 2002 1707 that have been used for the call. MTA-o starts timer (T-direct- 1708 request). 1710 (20) BYE: 1711 BYE sip:Host(mta-t.provider) SIP/2.0 1712 Via: SIP/2.0/UDP Host(mta-o.provider) 1713 From: "Alien Blaster" 1715 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1716 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1717 Cseq: 131 BYE 1719 Upon receipt of the BYE message, MTA-t stops playing the bearer 1720 channel stream received from MTA-o and, if necessary, releases 1721 network resources that have been used for this call. MTA-tsends the 1722 following 200-OK message to MTA-o. MTA-t starts a 15-second timer 1723 (T-hangup) (Note: this is a local interface issue, and not part of 1724 this specification). If MTA-t does not detect hangup on the line 1725 before timer (T-hangup) expires, it plays "reorder" tone on the 1726 customer line. Once hangup is detected, MTA-t puts that line in the 1727 "idle" state so new calls can be made or received. 1729 (21) 200-OK: 1730 SIP/2.0 200 OK 1731 Via: SIP/2.0/UDP Host(mta-o.provider) 1732 From: "Alien Blaster" 1734 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1735 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1736 Cseq: 131 BYE 1738 Upon receipt of 200-OK, MTA-o stops timer (T-direct-request). 1740 DCS Group Category: Informational - Expiration 8/31/02 33 1741 DCS Architecture February 2002 1743 10.2 Basic Call Flow from MTA to CMS 1745 MTA-o Proxy-o CMS-t Endpoint-t 1747 | (1)Invite | | | 1748 |-------------------->|(2)Invite | | 1749 | |--------->| | 1750 | | | Private Signaling | 1751 | | |<------------------->| 1752 | |(3)183 SDP| | 1753 | |<---------| | 1754 | | | | 1755 | (4)183 SDP | | | 1756 |<--------------------| | | 1757 | (5)PRACK | | 1758 |---------------------|--------->| | 1759 | | | Private Signaling | 1760 | | |<------------------->| 1761 | (6)200 OK (acknowledging PRACK)| | 1762 |<--------------------|----------| | 1763 | | | | 1764 |<------------------Reserve Resources----------------->| 1765 | | | | 1766 | (7)COMET | | 1767 |-------------------- |--------->| | 1768 |(8)200 OK (acknowledging COMET) | 1769 |<--------------------|----------| | 1770 | | | Private Signaling | 1771 | | |<------------------->| 1772 | | (9)180 | | 1773 | (10)180 Ringing |<---------| | 1774 |<--------------------| | | 1775 | (11)PRACK | | 1776 |---------------------|--------->| | 1777 |(12)200 OK (acknowledging PRACK) | 1778 |<--------------------|----------| | 1779 | | | | User 1780 | | | Private Signaling | Answers 1781 | | |<------------------->| 1782 | | (13)200 | | 1783 | (14)200 OK |<---------| | 1784 |<--------------------| | | 1785 | (15)ACK | | | 1786 |---------------------|--------->| | 1787 | | | | 1788 |<--------------------Active Call-------------------->| 1789 | | | | User 1790 | | | Private Signaling | Hangs Up 1791 | (16)BYE |<------------------->| 1792 |<--------------------|----------| | 1793 | (17)200 OK | | 1794 |---------------------|--------->| | 1796 DCS Group Category: Informational - Expiration 8/31/02 34 1797 DCS Architecture February 2002 1799 This section describes the DCS call signaling flow for a basic call 1800 that terminate on the PSTN, or some other endpoint controlled by a 1801 CMS. 1803 A call setup begins when MTA-o detects off-hook on one of its lines. 1804 MTA-o first puts that line in the "busy" state. MTA-o sends an 1805 audible dialtone signal to the customer and begins to detect DTMF 1806 digits. Upon receiving the first digit, MTA-o stops dialtone. Once 1807 a complete E.164 number has been received (based upon a digit map 1808 that has been provisioned in the MTA), MTA-o generates the following 1809 SIP INVITE message and sends it to Proxy-o (the Proxy that manages 1810 MTA-o). MTA-o starts the retransmission timer (T-proxy-request). 1812 (1) INVITE: 1813 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 1814 Via: SIP/2.0/UDP Host(mta-o.provider) 1815 Supported: 100rel, state 1816 Remote-Party-ID: John Doe 1817 Anonymity: Off 1818 From: "Alien Blaster" 1820 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1821 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1822 Cseq: 127 INVITE 1823 Contact: sip:Host(mta-o.provider) 1824 Content-Type: application/sdp 1825 Content-length: (.) 1827 v=0 1828 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1829 s=- 1830 c= IN IP4 Host(mta-o.provider) 1831 b=AS:64 1832 t=907165275 0 1833 a=X-pc-csuite:312F 1834 a=rtpmap:0 PCMU/8000 1835 a=rtpmap:96 G726-32/8000 1836 m=audio 3456 RTP/AVP 0 1837 a=qos:mandatory sendrecv 1838 a=X-pc-codecs:96 1840 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 1841 standard IPSec authentication. Proxy-o examines the Remote-Party-ID: 1842 line and checks to see that this originating phone number belongs to 1843 MTA-o, and is authorized for originating service. Proxy-o also 1844 checks to make sure the calling name in the Remote-Party-ID: line is 1845 a valid calling name for this line. Proxy-o then sends the dialed 1846 number to a directory server for resolution to an IP address. In 1847 this example, the directory server returns the address of CMS-t, the 1849 DCS Group Category: Informational - Expiration 8/31/02 35 1850 DCS Architecture February 2002 1852 CMS that manages the endpoint device. Proxy-o generates the 1853 following INVITE message and sends it to CMS-t. Proxy-oadds a number 1854 of parameters to the INVITE message, which are described below. Upon 1855 sending this INVITE message, Proxy-o starts the retransmisison timer 1856 (T-proxy-request) and starts the T3 session timer (T-proxy-setup). 1857 The retransmission timer is cancelled on receipt of the optional 1858 100-Trying provisional response (not present in this call flow); 1859 both are cancelled on receipt of the 183-Session-Progress 1860 provisional response. 1862 (2) INVITE: 1863 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 1864 npdi=yes@Host(cms-t);user=phone SIP/2.0 1865 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 1866 Via: SIP/2.0/UDP Host(mta-o.provider) 1867 Supported: 100rel, state 1868 Require: state 1869 Proxy-Require: dcs, state 1870 Remote-Party-ID: John Doe; 1871 Anonymity: Off 1872 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 1873 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 1874 555-1111/212-555-2222> 1875 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1876 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1877 orig-dest=tel:+1-212-555-2222; num-redirects=0 1878 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 1879 From: "Alien Blaster" 1881 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1882 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1883 Cseq: 127 INVITE 1884 Contact: sip:Host(mta-o.provider) 1885 Content-Type: application/sdp 1886 Content-length: (.) 1888 v=0 1889 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1890 s=- 1891 c= IN IP4 Host(mta-o.provider) 1892 b=AS:64 1893 t=907165275 0 1894 a=X-pc-csuites:312F 1895 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1896 a=rtpmap:0 PCMU/8000 1897 a=rtpmap:96 G726-32/8000 1898 m=audio 3456 RTP/AVP 0 1899 a=qos:mandatory sendrecv 1900 a=X-pc-codecs:96 1902 Upon receiving this INVITE message, CMS-t authenticates that the 1903 sender was Proxy-o using IPSec, and determines the proper endpoint 1904 device to receive this call. CMS-t engages in local signaling with 1906 DCS Group Category: Informational - Expiration 8/31/02 36 1907 DCS Architecture February 2002 1909 that endpoint device, outside the scope of this specification, and 1910 determines the proper SDP for the media flow to this endpoint 1911 device. When complete, CMS-t forwards the following message message 1912 to Proxy-o. The CMS-t lists itself as the location of the Dcs-Gate, 1913 since it simulates the gate operation. CMS-t may include Dcs- 1914 Billing-Information if it wishes to override the billing information 1915 that came in the INVITE (e.g. collect or toll-free call). 1917 (3) 183-Session-Progress: 1918 SIP/2.0 183 Session Progress 1919 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1920 Via: SIP/2.0/UDP Host(mta-o.provider) 1921 Require: 100rel, state 1922 Proxy-Require: dcs, state 1923 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1924 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1925 orig-dest=tel:+1-212-555-2222; num-redirects=0 1926 Dcs-Gate: Host(cms-t.provider):4321/137S90721/805628 1927 Remote-Party-ID: John Smith 1928 Anonymity: off 1929 From: "Alien Blaster" 1931 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1932 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1933 Cseq: 127 INVITE 1934 Rseq: 9021 1935 Content-Disposition: precondition 1936 Contact: sip:Host(cms-t.provider) 1937 Content-Type: application/sdp 1938 Content-length: (.) 1940 v=0 1941 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1942 s=- 1943 c= IN IP4 Host(mg02.provider) 1944 b=AS:64 1945 t=907165275 0 1946 a=X-pc-csuites:312F 1947 a=rtpmap:0 PCMU/8000 1948 m=audio 6544 RTP/AVP 0 1949 a=qos:mandatory sendrecv confirm 1951 Upon receiving the 183-Session-Progress message, Proxy-o forwards 1952 the following message to MTA-o. This message contains a State 1953 parameter giving all the information needed by the Proxy for later 1954 features. The State value is signed by Proxy-o and encrypted by 1955 Proxy-o's privately-held key. At this point Proxy-o has completed 1956 all the call processing functions needed for this call, deletes its 1957 local state information, and handles all remaining messages as a 1958 stateless proxy. 1960 (4) 183-Session-Progress: 1961 SIP/2.0 183 Session Progress 1963 DCS Group Category: Informational - Expiration 8/31/02 37 1964 DCS Architecture February 2002 1966 Via: Sip/2.0/UDP Host(mta-o.provider) 1967 Require: 100rel, state 1968 Media-Authorization: 17S30124 1969 State: Host(dp-o.provider); state="{gate= Host(cmts- 1970 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 1971 2222;rn=+1-212-234-2222;npdi=yes@Host(cms-t)}K" 1972 Remote-Party-ID: John Smith 1973 From: "Alien Blaster" 1975 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1976 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1977 Cseq: 127 INVITE 1978 Rseq: 9021 1979 Content-Disposition: precondition 1980 Contact: sip:Host(cms-t.provider) 1981 Content-Type: application/sdp 1982 Content-length: (.) 1984 v=0 1985 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1986 s=- 1987 c= IN IP4 Host(mg02.provider) 1988 b=AS:64 1989 t=907165275 0 1990 a=X-pc-csuites:312F 1991 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1992 a=rtpmap:0 PCMU/8000 1993 m=audio 6544 RTP/AVP 0 1994 a-X=pc-qos:mandatory sendrecv confirm 1996 Upon receiving the 183-Session-Progress message, MTA-o stops timer 1997 (T-proxy-request) and sends the following PRACK message directly to 1998 CMS-t using the IP address in the Contact header of the 183-Session- 1999 Progress message. 2001 (5) PRACK: 2002 PRACK sip:Host(cms-t.provider) SIP/2.0 2003 Via: SIP/2.0/UDP Host(mta-o.provider) 2004 From: "Alien Blaster" 2006 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2007 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2008 Cseq: 128 PRACK 2009 Rack: 9021 127 INVITE 2010 Content-Type: application/sdp 2011 Content-length: (.) 2013 v=0 2014 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2015 s=- 2016 c= IN IP4 Host(mta-o.provider) 2017 b=AS:64 2018 t=907165275 0 2020 DCS Group Category: Informational - Expiration 8/31/02 38 2021 DCS Architecture February 2002 2023 a=X-pc-csuites:312F 2024 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2025 a=rtpmap:0 PCMU/8000 2026 m=audio 3456 RTP/AVP 0 2027 a-Qos:mandatory sendrecv 2028 CMS-t acknowledges the PRACK with a 200-OK, and performs local 2029 signaling with the endpoint (outside the scope of this 2030 specification) in order to begin reserving the resources necessary 2031 for the call. 2033 (6) 200 OK: 2034 SIP/2.0 200 OK 2035 Via: SIP/2.0/UDP Host(mta-o.provider) 2036 From: "Alien Blaster" 2038 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2039 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2040 Cseq: 128 PRACK 2042 After sending PRACK(5), MTA-o attempts to reserve network resources 2043 if necessary. If resource reservation is successful, MTA-o sends 2044 the following COMET message directly to CMS-t. MTA-o starts timer 2045 (T-direct-request). 2047 (7) COMET: 2048 COMET sip:Host(cms-t.provider) SIP/2.0 2049 Via: SIP/2.0/UDP Host(mta-o.provider) 2050 From: "Alien Blaster" 2052 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2053 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2054 Cseq: 129 COMET 2055 Content-Type: application/sdp 2056 Content-length: (.) 2058 v=0 2059 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2060 s=- 2061 c= IN IP4 Host(mta-o.provider) 2062 b=AS:64 2063 t=907165275 0 2064 a=X-pc-csuites:312F 2065 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2066 a=rtpmap:0 PCMU/8000 2067 m=audio 3456 RTP/AVP 0 2068 a=qos:success send 2070 CMS-t acknowledges the COMET message with a 200-OK. 2072 (8) 200 OK: 2073 SIP/2.0 200 OK 2074 Via: SIP/2.0/UDP Host(mta-o.provider) 2076 DCS Group Category: Informational - Expiration 8/31/02 39 2077 DCS Architecture February 2002 2079 From: "Alien Blaster" 2081 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2082 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2083 Cseq: 129 COMET 2085 Upon receipt of the 200-OK(8), MTA-o stops timer (T-direct-request). 2086 Upon receipt of the (5) PRACK message, CMS-t stops timer (T-proxy- 2087 response) and signals the endpoint device to attempt to reserve the 2088 network resources necessary. Once CMS-t both receives the COMET 2089 message and acknowledgement from the endpoint device, CMS-t sends 2090 the following 180-Ringing (or 183-Sesison-Progress, with a 2091 Session:Media header) message. CMS-t restarts the session timer(T3) 2092 with value (T-ringing). 2094 (9) 180 RINGING: 2095 SIP/2.0 180 Ringing 2096 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2097 Via: SIP/2.0/UDP Host(mta-o.provider) 2098 Require: 100rel 2099 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 2100 o.provider); gate=Host(cmts-o.provider):3612/17S30124 2101 From: "Alien Blaster" 2103 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2104 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2105 Contact: sip:Host(cms-t.provider) 2106 Cseq: 127 INVITE 2107 Rseq: 9022 2109 Proxy-o handles the message as a SIP stateless proxy, and passes the 2110 180-Ringing (or 183-Session-Progress) to MTA-o. 2112 (10) 180 RINGING: 2113 SIP/2.0 180 Ringing 2114 Via: SIP/2.0/UDP Host(mta-o.provider) 2115 Require: 100rel 2116 From: "Alien Blaster" 2118 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2119 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2120 Contact: sip:Host(cms-t.provider) 2121 Cseq: 127 INVITE 2122 RSeq: 9022 2124 Upon receipt of the 180 RINGING message, MTA-o restarts the 2125 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 2126 the provisional response with a PRACK, and plays audible ringback 2127 tone to the customer. 2129 (11) PRACK: 2130 PRACK sip:Host(cms-t.provider) SIP/2.0 2131 Via: SIP/2.0/UDP Host(mta-o.provider) 2133 DCS Group Category: Informational - Expiration 8/31/02 40 2134 DCS Architecture February 2002 2136 From: "Alien Blaster" 2138 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2139 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2140 Cseq: 130 PRACK 2141 RAck: 9022 127 INVITE 2143 CMS-t acknowledges the PRACK with a 200-OK, and stops timer (T- 2144 proxy-response). 2146 (12) 200 OK: 2147 SIP/2.0 200 OK 2148 Via: SIP/2.0/UDP Host(mta-o.provider) 2149 From: "Alien Blaster" 2151 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2152 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2153 Cseq: 130 PRACK 2155 Once CMS-t, via private signaling with the endpoint device, detects 2156 off-hook on the called line, it sends the final response to the 2157 INVITE. CMS-t stops timer (T-ringing) and starts timer (T-proxy- 2158 response). If necessary, MTA-t may also commit to resources that 2159 have been reserved for this call. At this point, the endpoint 2160 device begins to generate bearer channel packets of encoded voice 2161 and send them to MTA-o using the IP address and port number 2162 specified in the SDP part of the original INVITE message. 2164 (13) 200-OK: 2165 SIP/2.0 200 OK 2166 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2167 Via: SIP/2.0/UDP Host(mta-o.provider) 2168 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 2169 o.provider); gate=Host(cmts-o.provider):3612/17S30124 2170 From: "Alien Blaster" 2172 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2173 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2174 Cseq: 127 INVITE 2176 Proxy-o handles the message as a SIP stateless proxy, and forwards 2177 it to MTA-o. 2179 (14) 200-OK: 2180 SIP/2.0 200 OK 2181 Via: SIP/2.0/UDP Host(mta-o.provider) 2182 From: "Alien Blaster" 2184 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2185 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2186 Cseq: 127 INVITE 2188 DCS Group Category: Informational - Expiration 8/31/02 41 2189 DCS Architecture February 2002 2191 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 2192 and stops playing audible ringback tone to the customer and begins 2193 to play the bearer channel stream that is received. MTA-o sends the 2194 following ACK message to CMS-t. If necessary, MTA-o may also commit 2195 to resources that have been reserved for this call. At this point, 2196 MTA-o begins to generate bearer channel packets of encoded voice and 2197 send them to the remote endpoint using the IP address and port 2198 number specified in the SDP part of the original 183-Session- 2199 Progress message (that was a response to the original INVITE). 2201 (15) ACK: 2202 ACK sip:Host(mta-t.provider) SIP/2.0 2203 Via: SIP/2.0/UDP Host(mta-o.provider) 2204 From: "Alien Blaster" 2206 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2207 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2208 Cseq: 127 ACK 2210 Upon receipt of the ACK message, CMS-t stop timer (T-proxy- 2211 response). 2213 When MTA-o detects a hangup, or the endpoint device controlled by 2214 CMS-t detects a hangup, it sends out a BYE message to the other 2215 endpoint. In this example, CMS-t detected that the customer hung up 2216 the phone. CMS-t puts that line in the "idle" state so new calls can 2217 be made or received. It sends the following BYE message directly to 2218 MTA-o. CMS-t may also need to release network resources that have 2219 been used for the call. CMS-t starts timer (T-direct-request). 2221 (16) BYE: 2222 BYE sip:Host(mta-o.provider) SIP/2.0 2223 Via: SIP/2.0/UDP Host(cms-t.provider) 2224 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2225 To: "Alien Blaster" 2227 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2228 Cseq: 131 BYE 2230 Upon receipt of the BYE message, MTA-o stops playing the bearer 2231 channel stream received from the endpoint device, and, if necessary, 2232 releases network resources that have been used for this call. MTA-o 2233 sends the following 200-OK message to CMS-t. MTA-o starts a 15- 2234 second timer (T-hangup) (Note: this is a local interface issue, and 2235 not part of this specification). If MTA-o does not detect hangup on 2236 the line before timer (T-hangup) expires, it plays "reorder" tone on 2237 the customer line. Once hangup is detected, MTA-o puts that line in 2238 the "idle" state so new calls can be made or received. 2240 (17) 200-OK: 2241 SIP/2.0 200 OK 2242 Via: SIP/2.0/UDP Host(cms-t.provider) 2243 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2245 DCS Group Category: Informational - Expiration 8/31/02 42 2246 DCS Architecture February 2002 2248 To: "Alien Blaster" 2250 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2251 Cseq: 131 BYE 2253 Upon receipt of 200-OK, CMS-t stops timer (T-direct-request). 2255 10.3 Basic Call Flow from CMS to MTA 2257 Endpoint-o CMS-o Proxy-t MTA-t 2259 | Private Signaling | | | 2260 |<------------------->|(1)INVITE | | 2261 | |--------->| (2)INVITE | 2262 | | |-------------------->| 2263 | | | (3) 183 SDP | 2264 | | |<--------------------| 2265 | |(4)183 SDP| | 2266 | |<---------| | 2267 | Private Signaling | | | 2268 |<------------------->| | (5)PRACK | 2269 | |------------------------------->| 2270 | | (6)200 OK (acknowledging PRACK)| 2271 | |<-------------------------------| 2272 | | | | 2273 |<------------------Reserve Resources----------------->| 2274 | | | | 2275 | Private Signaling | | | 2276 |<------------------->| (7)COMET | 2277 | |------------------------------->| 2278 | |(8)200 OK (acknowledging COMET) | 2279 | |<--------------------|----------| 2280 | | | (9) 180 Ringing | 2281 | | |<------------------->| 2282 | | (10)180 | | 2283 | Private Signaling |<---------| | 2284 |<------------------->| (11)PRACK | 2285 | |------------------------------->| 2286 | |(12)200 OK (acknowledging PRACK)| 2287 | |<-------------------------------| 2288 | | | | User 2289 | | | (13)200 OK | Answers 2290 | | |<--------------------| 2291 | | (14)200 | | 2292 | Private Signaling |<---------| | 2293 |<------------------->| (15)ACK | 2294 | |------------------------------->| 2295 | | | | 2296 |<--------------------Active Call-------------------->| 2297 | | | | User 2298 | | (16)BYE | Hangs Up 2299 | |<-------------------------------| 2301 DCS Group Category: Informational - Expiration 8/31/02 43 2302 DCS Architecture February 2002 2304 | | (17)200 OK | 2305 | |------------------------------->| 2307 This example shows a call originating on the PSTN and directed to a 2308 destination on the PacketCable network. We assume the same sequence 2309 of user behavior as in the basic call flow of section 10.1, only 2310 difference being the location of the originator. 2312 A call setup begins when the endpoint device controlled by CMS-o 2313 detects an off-hook condition on one of its lines. This event is 2314 communicated to CMS-o through a private signaling exchange beyond 2315 the scope of this specification. CMS-o first puts that line in the 2316 "busy" state, and collects a complete E.164 number. As a result of a 2317 translation function performed by CMS-o, the destination is 2318 determined to be a DCS device served by Proxy-t. CMS-o generates 2319 the following SIP INVITE message and sends it to Proxy-t. CMS-o 2320 starts the retransmission timer (T-proxy-request) and starts the T3 2321 session timer (T -setup). The retransmission timer is cancelled on 2322 receipt of the optional 100-Trying provisional response (not present 2323 in this call flow); both are cancelled on receipt of the 183- 2324 Session-Progress provisional response. 2326 (1) INVITE: 2327 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 2328 npdi=yes@Host(DP-t);user=phone SIP/2.0 2329 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2330 Supported: 100rel, state 2331 Require: state 2332 Proxy-Require: dcs, state 2333 Remote-Party-ID: John Doe; 2334 Anonymity: Off 2335 Dcs-Gate: Host(cms-o.provider):3612/17S30124/37FA1948 optional 2336 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 2337 555-1111/212-555-2222> 2338 Dcs-Billing-ID: Host(cms-o.provider):36123E5C:0152 2339 From: John Doe; 2340 To: tel:+1-212-555-2222 2341 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2342 Cseq: 127 INVITE 2343 Contact: sip:Host(cms-o.provider) 2344 Content-Type: application/sdp 2345 Content-length: (.) 2347 v=0 2348 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2349 s=- 2350 c= IN IP4 Host(mg02.provider) 2351 b=AS:64 2352 t=907165275 0 2353 a=X-pc-csuites:312F 2354 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2355 a=rtpmap:0 PCMU/8000 2356 a=rtpmap:96 G726-32/8000 2358 DCS Group Category: Informational - Expiration 8/31/02 44 2359 DCS Architecture February 2002 2361 m=audio 3456 RTP/AVP 0 2362 a=qos:mandatory sendrecv 2363 a=X-pc-codecs:96 2365 Upon receiving this INVITE message, Proxy-t authenticates that the 2366 sender was CMS-o using IPSec, and sends the E.164-t address to the 2367 directory server. In this example, the Directory Server is able to 2368 translate E.164-t to the IP address of MTA-t (one of the MTAs 2369 managed by Proxy-t). Proxy-t then checks to see if MTA-t is 2370 authorized for receiving this call. Proxy-talso checks the account 2371 information to determine if MTA-o is paying for the call or if MTA-t 2372 is expected to pay. Proxy-t generates the following INVITE message 2373 and sends it to MTA-t. The Remote-Party-ID line appears unchanged 2374 only if the destination MTA has subscribed to caller-id service; 2375 otherwise, or if the caller had specified privacy of the caller 2376 information, the Remote-Party-ID line would be altered. Note that 2377 the Via lines have been encrypted, maintaining the privacy of the 2378 caller. The line State has been added, and contains all the 2379 information needed by the Proxy for any subsequent call features 2380 that may be requested. This information is signed by Proxy-t and 2381 encrypted. 2383 Upon sending this INVITE message, Proxy-t starts the retransmisison 2384 timer (T-proxy-request) and starts the T3 session timer (T-proxy- 2385 setup). The retransmission timer is cancelled on receipt of the 2386 optional 100-Trying provisional response (not present in this call 2387 flow); both are cancelled on receipt of the 183-Session-Progress 2388 provisional response. 2390 (2) INVITE: 2391 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 2392 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2393 o.provider); branch=1"}K 2394 Supported: 100rel, state 2395 Require: state 2396 Remote-Party-ID: John Doe; 2397 Media-Authorization: 31S14621 2398 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2399 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2400 From: John Doe; 2401 To: tel:+1-212-555-2222 2402 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2403 Cseq: 127 INVITE 2404 Contact: sip:Host(cms-o.provider) 2405 Content-Type: application/sdp 2406 Content-length: (.) 2408 v=0 2409 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2410 s=- 2411 c= IN IP4 Host(mg02.provider) 2412 b=AS:64 2413 t=907165275 0 2415 DCS Group Category: Informational - Expiration 8/31/02 45 2416 DCS Architecture February 2002 2418 a=X-pc-csuites:312F 2419 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2420 a=rtpmap:0 PCMU/8000 2421 a=rtpmap:96 G726-32/8000 2422 m=audio 3456 RTP/AVP 0 2423 a=qos:mandatory sendrecv 2424 a=X-pc-codecs:96 2426 Upon receiving this INVITE, MTA-t authenticates that the message 2427 came from Proxy-t using IPSec. MTA-t checks the telephone line 2428 associated with the E.164-t (as found in the Request URI) to see if 2429 it is available. If it is available, MTA-t looks at the capability 2430 parameters in the Session Description Protocol (SDP) part of the 2431 message and determines which media channel parameters it can 2432 accommodate for this call. MTA-t stores the INVITE message, 2433 including the encrypted State parameters, for later use. MTA-t 2434 puts this line in the "busy" state (so any other call attempts are 2435 rejected until this call clears), generates the following 183- 2436 Session-Progress response, and sends it to Proxy-t. MTA-t starts 2437 the retransmission timer with value (T-proxy-response) and starts 2438 the session timer (T3) with value (T-resource). 2439 MTA-t can, at its option, still accept further incoming calls and 2440 present them all to the customer. Such enhanced user interfaces for 2441 the MTA is beyond the scope of this specification. Note that MTA-t 2442 can't use the To: header field to determine the proper line, as it 2443 may be totally unrelated to the phone number at MTA-t. 2445 (3) 183-Session-Progress: 2446 SIP/2.0 183 Session Progress 2447 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2448 o.provider); branch=1"}K 2449 Require: 100rel 2450 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2451 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2452 Remote-Party-ID: John Smith 2453 Anonymity: off 2454 From: John Doe; 2455 To: tel:+1-212-555-2222 2456 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2457 Cseq: 127 INVITE 2458 Rseq: 9021 2459 Content-Disposition: precondition 2460 Contact: sip:Host(mta-t.provider) 2461 Content-Type: application/sdp 2462 Content-length: (.) 2464 v=0 2465 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2466 s=- 2467 c= IN IP4 Host(mta-t.provider) 2468 b=AS:64 2469 t=907165275 0 2470 a=X-pc-csuites:312F 2472 DCS Group Category: Informational - Expiration 8/31/02 46 2473 DCS Architecture February 2002 2475 a=rtpmap:0 PCMU/8000 2476 m=audio 6544 RTP/AVP 0 2477 a=qos:mandatory sendrecv confirm 2479 Upon receiving the 183-Session-Progress message, Proxy-t forwards 2480 the following message to CMS-o, restoring the Via headers, and 2481 adding Dcs-Gate information. At this point Proxy-t has completed 2482 all the call processing functions needed for this call, deletes its 2483 local state information, and handles all remaining messages as a 2484 stateless proxy. Proxy-t may include Dcs-Billing-Information if it 2485 wishes to override the billing information that came in the INVITE 2486 (e.g. collect or toll-free call). 2488 (4) 183-Session-Progress: 2489 SIP/2.0 183 Session Progress 2490 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2491 Require: 100rel, state 2492 State: Host(dp-t.provider); nexthop=sip:Host(dp-o.provider); 2493 gate=Host(cmts-t.provider):4321/31S14621; orig- 2494 dest=tel:+1-212-555-1111; num-redirects=0 2495 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 2496 Remote-Party-ID: John Smith 2497 Anonymity: off 2498 From: John Doe; 2499 To: tel:+1-212-555-2222 2500 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2501 Cseq: 127 INVITE 2502 Rseq: 9021 2503 Content-Disposition: precondition 2504 Contact: sip:Host(mta-t.provider) 2505 Content-Type: application/sdp 2506 Content-length: (.) 2508 v=0 2509 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2510 s=- 2511 c= IN IP4 Host(mta-t.provider) 2512 b=AS:64 2513 t=907165275 0 2514 a=X-pc-csuites:312F 2515 a=rtpmap:0 PCMU/8000 2516 m=audio 6544 RTP/AVP 0 2517 a=qos:mandatory sendrecv confirm 2519 Upon receiving the 183-Session-Progress message, CMS-o stops timer 2520 (T-proxy-request) and sends the following PRACK message directly to 2521 MTA-t using the IP address in the Contact header of the 183-Session- 2522 Progress message. 2524 (5) PRACK: 2525 PRACK sip:Host(mta-t.provider) SIP/2.0 2526 Via: SIP/2.0/UDP Host(cms-o.provider) 2527 From: John Doe; 2529 DCS Group Category: Informational - Expiration 8/31/02 47 2530 DCS Architecture February 2002 2532 To: tel:+1-212-555-2222 2533 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2534 Cseq: 128 PRACK 2535 Rack: 9021 127 INVITE 2536 Content-Type: application/sdp 2537 Content-length: (.) 2539 v=0 2540 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2541 s=- 2542 c= IN IP4 Host(mg02.provider) 2543 b=AS:64 2544 t=907165275 0 2545 a=X-pc-csuites:312F 2546 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2547 a=rtpmap:0 PCMU/8000 2548 m=audio 3456 RTP/AVP 0 2549 a-qos:mandatory sendrecv 2551 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 2552 the resources necessary for the call. 2554 (6) 200 OK: 2555 SIP/2.0 200 OK 2556 Via: SIP/2.0/UDP Host(cms-o.provider) 2557 From: John Doe; 2558 To: tel:+1-212-555-2222 2559 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2560 Cseq: 128 PRACK 2562 After sending PRACK(5), CMS-o signals to the endpoint device to 2563 attempt to reserve the network resources necessary for the 2564 connection. If the endpoint signals that resource reservation is 2565 successful, CMS-o sends the following COMET message directly to MTA- 2566 t. CMS-o starts timer (T-direct-request). 2568 (7) COMET: 2569 COMET sip:Host(mta-t.provider) SIP/2.0 2570 Via: SIP/2.0/UDP Host(cms-o.provider) 2571 From: John Doe; 2572 To: tel:+1-212-555-2222 2573 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2574 Cseq: 129 COMET 2575 Content-Type: application/sdp 2576 Content-length: (.) 2578 v=0 2579 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2580 s=- 2581 c= IN IP4 Host(mg02.provider) 2582 b=AS:64 2583 t=907165275 0 2584 a=X-pc-csuites:312F 2586 DCS Group Category: Informational - Expiration 8/31/02 48 2587 DCS Architecture February 2002 2589 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2590 a=rtpmap:0 PCMU/8000 2591 m=audio 3456 RTP/AVP 0 2592 a=qos:success send 2594 MTA-t acknowledges the COMET message with a 200-OK. 2596 (8) 200 OK: 2597 SIP/2.0 200 OK 2598 Via: SIP/2.0/UDP Host(cms-o.provider) 2599 From: John Doe; 2600 To: tel:+1-212-555-2222 2601 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2602 Cseq: 129 COMET 2604 Upon receipt of the 200-OK(10), CMS-o stops timer (T-direct- 2605 request). 2607 Upon receipt of the (5) PRACK message, MTA-t stops timer (T-proxy- 2608 response) and attempts to reserve network resources if necessary. 2609 Once MTA-t both receives the COMET message and has successfully 2610 reserved network resources, MTA-t begins to send ringing voltage to 2611 the designated line and sends the following 180 RINGING message 2612 through Proxy-t. MTA-t restarts the session timer(T3) with value 2613 (T-ringing). 2615 (9) 180 RINGING: 2616 SIP/2.0 180 Ringing 2617 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2618 o.provider); branch=1"}K 2619 Require: 100rel 2620 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2621 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2622 From: John Doe; 2623 To: tel:+1-212-555-2222 2624 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2625 Contact: sip:Host(mta-t.provider) 2626 Cseq: 127 INVITE 2627 Rseq: 9022 2629 Proxy-t decodes the Via: headers, and passes the 180-Ringing to CMS- 2630 o. This operation is done as a SIP stateless proxy. 2632 (10) 180 RINGING: 2633 SIP/2.0 180 Ringing 2634 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2635 Require: 100rel 2636 From: John Doe; 2637 To: tel:+1-212-555-2222 2638 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2639 Contact: sip:Host(mta-t.provider) 2640 Cseq: 127 INVITE 2641 RSeq: 9022 2643 DCS Group Category: Informational - Expiration 8/31/02 49 2644 DCS Architecture February 2002 2646 Upon receipt of the 180 RINGING message, CMS-o restarts the 2647 transaction timer (T3) with value (T-ringing). CMS-o acknowledges 2648 the provisional response with a PRACK, and signals the endpoint 2649 device to play audible ringback tone to the customer. 2651 (11) PRACK: 2652 PRACK sip:Host(mta-t.provider) SIP/2.0 2653 Via: SIP/2.0/UDP Host(cms-o.provider) 2654 From: John Doe; 2655 To: tel:+1-212-555-2222 2656 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2657 Cseq: 130 PRACK 2658 RAck: 9022 127 INVITE 2660 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 2661 proxy-response). 2663 (12) 200 OK: 2664 SIP/2.0 200 OK 2665 Via: SIP/2.0/UDP Host(cms-o.provider) 2666 From: John Doe; 2667 To: tel:+1-212-555-2222 2668 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2669 Cseq: 130 PRACK 2671 Once MTA-t detects off-hook on the called line, it disconnects 2672 ringing voltage from the line and sends the final response through 2673 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 2674 proxy-response). If necessary, MTA-t may also commit to resources 2675 that have been reserved for this call. At this point, MTA-t begins 2676 to generate bearer channel packets of encoded voice and send them to 2677 MTA-o using the IP address and port number specified in the SDP part 2678 of the original INVITE message. 2680 (13) 200-OK: 2681 SIP/2.0 200 OK 2682 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2683 o.provider); branch=1"}K 2684 State: Host(dp-t.provider); state="{nexthop=sip:Host(cms- 2685 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 2686 via="Host(cms-o.provider);branch=1"}K" 2687 From: John Doe; 2688 To: tel:+1-212-555-2222 2689 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2690 Cseq: 127 INVITE 2692 Proxy-t handles the message as a SIP stateless proxy, and forwards 2693 it to CMS-o. 2695 (14) 200-OK: 2696 SIP/2.0 200 OK 2697 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2699 DCS Group Category: Informational - Expiration 8/31/02 50 2700 DCS Architecture February 2002 2702 Via: SIP/2.0/UDP Host(mta-o.provider) 2703 From: John Doe; 2704 To: tel:+1-212-555-2222 2705 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2706 Cseq: 127 INVITE 2708 Upon receipt of the 200-OK message, CMS-o stops timer (T-ringing) 2709 and signals the endpoint device to stop playing audible ringback 2710 tone to the customer and to begin to play the bearer channel stream 2711 that is received from MTA-t. CMS-o sends the following ACK message 2712 to MTA-t. If necessary, CMS-o may also commit to resources that have 2713 been reserved for this call. At this point, the endpoint device 2714 begins to generate bearer channel packets of encoded voice and send 2715 them to MTA-t using the IP address and port number specified in the 2716 SDP part of the original 183-Session-Progress message (that was a 2717 response to the original INVITE). 2719 (15) ACK: 2720 ACK sip:Host(mta-t.provider) SIP/2.0 2721 Via: SIP/2.0/UDP Host(cms-o.provider) 2722 From: John Doe; 2723 To: tel:+1-212-555-2222 2724 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2725 Cseq: 127 ACK 2727 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 2728 response). 2730 When either endpoint detects hangup, it sends out a BYE message to 2731 the other one. In this example, MTA-t detected that the customer 2732 hung up the phone. MTA-t puts that line in the "idle" state so new 2733 calls can be made or received. It sends the following BYE message 2734 directly to CMS-o. MTA-t may also need to release network resources 2735 that have been used for the call. MTA-t starts timer (T-direct- 2736 request). 2738 (16) BYE: 2739 BYE sip:Host(cms-o.provider) SIP/2.0 2740 Via: SIP/2.0/UDP Host(mta-t.provider) 2741 From: tel:+1-212-555-2222 2742 To: John Doe; 2743 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2744 Cseq: 131 BYE 2746 Upon receipt of the BYE message, CMS-o signals the endpoint device 2747 to stop playing the bearer channel stream received from MTA-t and, 2748 if necessary, releases network resources that have been used for 2749 this call. CMS-o sends the following 200-OK message to MTA-t. Once 2750 hangup is detected on the endpoint device, CMS-o puts that line in 2751 the "idle" state so new calls can be made or received. 2753 (17) 200-OK: 2754 SIP/2.0 200 OK 2756 DCS Group Category: Informational - Expiration 8/31/02 51 2757 DCS Architecture February 2002 2759 Via: SIP/2.0/UDP Host(mta-t.provider) 2760 From: tel:+1-212-555-2222 2761 To: John Doe; 2762 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2763 Cseq: 131 BYE 2765 Upon receipt of 200-OK, MTA-t stops timer (T-direct-request). 2767 10.4 Basic Call Flow from CMS to CMS 2769 Endpoint-o CMS-o CMS-t Endpoint-t 2771 | Private Signaling | | | 2772 |<------------------->|(1)INVITE | | 2773 | |--------->| Private Signaling | 2774 | | |<------------------->| 2775 | |(2)183 SDP| | 2776 | |<---------| | 2777 | Private Signaling | | | 2778 |<------------------->|(3)PRACK | | 2779 | |--------->| | 2780 | |(4)200 OK | Private Signaling | 2781 | |<-------->|<------------------->| 2782 | | | | 2783 |<------------------Reserve Resources----------------->| 2784 | | | | 2785 | Private Signaling | | | 2786 |<------------------->|(5)COMET | | 2787 | |--------->| | 2788 | |(6)200 OK | Private Signaling | 2789 | |<-------->|<------------------->| 2790 | | (7)180 | | 2791 | Private Signaling |<---------| | 2792 |<------------------->|(8)PRACK | | 2793 | |--------->| | 2794 | |(9)200 OK | | 2795 | |<---------| | User 2796 | | | Private Signaling | Answers 2797 | | |<------------------->| 2798 | | (10)200 | | 2799 | Private Signaling |<---------| | 2800 |<------------------->| (11)ACK | | 2801 | |--------->| | 2802 | | | | 2803 |<--------------------Active Call-------------------->| 2804 | | | | User 2805 | | (12)BYE | Private Signaling | Hangs Up 2806 | |<---------|<------------------->| 2807 | |(13)200 OK| | 2808 | |----------| | 2810 DCS Group Category: Informational - Expiration 8/31/02 52 2811 DCS Architecture February 2002 2813 A call setup begins when the endpoint device controlled by CMS-o 2814 detects an off-hook condition on one of its lines. This event is 2815 communicated to CMS-o through a private signaling exchange beyond 2816 the scope of this specification. CMS-o first puts that line in the 2817 "busy" state, and collects a complete E.164 number. As a result of a 2818 translation function performed by CMS-o, the destination is 2819 determined to be an endpoint device served by CMS-t. CMS-o 2820 generates the following SIP INVITE message and sends it to CMS-t. 2821 CMS-o starts the retransmission timer (T-proxy-request) and starts 2822 the T3 session timer (T-setup). The retransmission timer is 2823 cancelled on receipt of the optional 100-Trying provisional response 2824 (not present in this call flow); both are cancelled on receipt of 2825 the 183-Session-Progress provisional response. 2827 (1) INVITE: 2828 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 2829 npdi=yes@Host(cms-t);user=phone SIP/2.0 2830 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2831 Supported: 100rel, state 2832 Require: state 2833 Proxy-Require: dcs, state 2834 Remote-Party-ID: John Doe; 2835 Anonymity: Off 2836 Dcs-Gate: Host(cms-o.provider):3612/17S30124/37FA1948 optional 2837 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 2838 555-1111/212-555-2222> 2839 Dcs-Billing-ID: Host(cms-o.provider):36123E5C:0152 2840 From: John Doe; 2841 To: tel:+1-212-555-2222 2842 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2843 Cseq: 127 INVITE 2844 Contact: sip:Host(cms-o.provider) 2845 Content-Type: application/sdp 2846 Content-length: (.) 2848 v=0 2849 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2850 s=- 2851 c= IN IP4 Host(mg02.provider) 2852 b=AS:64 2853 t=907165275 0 2854 a=X-pc-csuites:312F 2855 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2856 a=rtpmap:0 PCMU/8000 2857 a=rtpmap:96 G726-32/8000 2858 m=audio 3456 RTP/AVP 0 2859 a=qos:mandatory sendrecv 2860 a=X-pc-codecs:96 2862 Upon receiving this INVITE message, CMS-t authenticates that the 2863 sender was CMS-o using IPSec, and sends the E.164-t address to the 2864 directory server. In this example, the Directory Server is able to 2865 translate E.164-t to the IP address of one of the endpoint devices 2867 DCS Group Category: Informational - Expiration 8/31/02 53 2868 DCS Architecture February 2002 2870 controlled by CMS-t. CMS-t then checks to see if the endpoint 2871 device is authorized for receiving this call. CMS-talso checks the 2872 account information to determine if the originator is paying for the 2873 call or if the destination is expected to pay. CMS-t engages in 2874 private signaling exchange with the endpoint device, beyond the 2875 scope of this specification, and determines the SDP description of 2876 the media stream to be sent to this endpoint. 2878 CMS-t puts this line in the "busy" state (so any other call attempts 2879 are rejected until this call clears), generates the following 183- 2880 Session-Progress response, and sends it to CMS-o. The Dcs-Gate 2881 header is omitted from this message, since CMS-o indicated it was 2882 optional, and CMS-t considers it optional as well. CMS-t starts the 2883 retransmission timer with value (T-proxy-response) and starts the 2884 session timer (T3) with value (T-resource). CMS-t may include Dcs- 2885 Billing-Information if it wishes to override the billing information 2886 that came in the INVITE (e.g. collect or toll-free call). 2888 (2) 183-Session-Progress: 2889 SIP/2.0 183 Session Progress 2890 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2891 Require: 100rel, state 2892 Proxy-Require: dcs, state 2893 From: John Doe; 2894 To: tel:+1-212-555-2222 2895 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2896 Cseq: 127 INVITE 2897 Rseq: 9021 2898 Content-Disposition: precondition 2899 Contact: sip:Host(cms-t.provider) 2900 Content-Type: application/sdp 2901 Content-length: (.) 2903 v=0 2904 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2905 s=- 2906 c= IN IP4 Host(rgw12.provider) 2907 b=AS:64 2908 t=907165275 0 2909 a=X-pc-csuites:312F 2910 a=rtpmap:0 PCMU/8000 2911 m=audio 6544 RTP/AVP 0 2912 a=qos:mandatory sendrecv confirm 2914 Upon receiving the 183-Session-Progress message, CMS-o stops timer 2915 (T-proxy-request) and sends the following PRACK message to CMS-t 2916 using the IP address in the Contact header of the 183-Session- 2917 Progress message. 2919 (3) PRACK: 2920 PRACK sip:Host(cms-t.provider) SIP/2.0 2921 Via: SIP/2.0/UDP Host(cms-o.provider) 2922 From: John Doe; 2924 DCS Group Category: Informational - Expiration 8/31/02 54 2925 DCS Architecture February 2002 2927 To: tel:+1-212-555-2222 2928 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2929 Cseq: 128 PRACK 2930 Rack: 9021 127 INVITE 2931 Content-Type: application/sdp 2932 Content-length: (.) 2934 v=0 2935 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2936 s=- 2937 c= IN IP4 Host(mg02.provider) 2938 b=AS:64 2939 t=907165275 0 2940 a=X-pc-csuites:312F 2941 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2942 a=rtpmap:0 PCMU/8000 2943 m=audio 3456 RTP/AVP 0 2944 a-qos:mandatory sendrecv 2946 CMS-t acknowledges the PRACK with a 200-OK, and signals the endpoint 2947 device to begin to reserve the resources necessary for the call. 2949 (4) 200 OK: 2950 SIP/2.0 200 OK 2951 Via: SIP/2.0/UDP Host(cms-o.provider) 2952 From: John Doe; 2953 To: tel:+1-212-555-2222 2954 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2955 Cseq: 128 PRACK 2957 After sending PRACK(3), CMS-o signals to the endpoint device to 2958 attempt to reserve the network resources necessary for the 2959 connection. If the endpoint signals that resource reservation is 2960 successful, CMS-o sends the following COMET message to CMS-t. CMS-o 2961 starts timer (T-direct-request). 2963 (5) COMET: 2964 COMET sip:Host(cms-t.provider) SIP/2.0 2965 Via: SIP/2.0/UDP Host(cms-o.provider) 2966 From: John Doe; 2967 To: tel:+1-212-555-2222 2968 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2969 Cseq: 129 COMET 2970 Content-Type: application/sdp 2971 Content-length: (.) 2973 v=0 2974 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2975 s=- 2976 c= IN IP4 Host(mg02.provider) 2977 b=AS:64 2978 t=907165275 0 2979 a=X-pc-csuites:312F 2981 DCS Group Category: Informational - Expiration 8/31/02 55 2982 DCS Architecture February 2002 2984 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2985 a=rtpmap:0 PCMU/8000 2986 m=audio 3456 RTP/AVP 0 2987 a=qos:success send 2989 CMS-t acknowledges the COMET message with a 200-OK. 2991 (6) 200 OK: 2992 SIP/2.0 200 OK 2993 Via: SIP/2.0/UDP Host(cms-o.provider) 2994 From: John Doe; 2995 To: tel:+1-212-555-2222 2996 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2997 Cseq: 129 COMET 2999 Upon receipt of the 200-OK(6), CMS-o stops timer (T-direct-request). 3000 Upon receipt of the (3) PRACK message, CMS-t stops timer (T-proxy- 3001 response) and attempts to reserve network resources if necessary. 3002 Once CMS-t both receives the COMET message and has successfully 3003 reserved network resources, CMS-t signals the endpoint to begin to 3004 send ringing voltage to the designated line and sends the following 3005 180 RINGING message. CMS-t restarts the session timer (T3) with 3006 value (T-ringing). 3008 (7) 180 RINGING: 3009 SIP/2.0 180 Ringing 3010 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 3011 Require: 100rel 3012 From: John Doe; 3013 To: tel:+1-212-555-2222 3014 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3015 Contact: sip:Host(cms-t.provider) 3016 Cseq: 127 INVITE 3017 Rseq: 9022 3019 Upon receipt of the 180 RINGING message, CMS-o restarts the 3020 transaction timer (T3) with value (T-ringing). CMS-o acknowledges 3021 the provisional response with a PRACK, and signals the endpoint 3022 device to play audible ringback tone to the customer. 3024 (8) PRACK: 3025 PRACK sip:Host(cms-t.provider) SIP/2.0 3026 Via: SIP/2.0/UDP Host(cms-o.provider) 3027 From: John Doe; 3028 To: tel:+1-212-555-2222 3029 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3030 Cseq: 130 PRACK 3031 RAck: 9022 127 INVITE 3033 CMS-t acknowledges the PRACK with a 200-OK, and stops timer (T- 3034 proxy-response). 3036 (9) 200 OK: 3038 DCS Group Category: Informational - Expiration 8/31/02 56 3039 DCS Architecture February 2002 3041 SIP/2.0 200 OK 3042 Via: SIP/2.0/UDP Host(cms-o.provider) 3043 From: John Doe; 3044 To: tel:+1-212-555-2222 3045 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3046 Cseq: 130 PRACK 3048 Once CMS-t detects off-hook on the called line, it disconnects 3049 ringing voltage from the line and sends the final response. CMS-t 3050 stops timer (T-ringing) and starts timer (T-proxy-response). If 3051 necessary, CMS-t may also commit to resources that have been 3052 reserved for this call. At this point, CMS-t signals to the 3053 endpoint device to begin to generate bearer channel packets of 3054 encoded voice and send them to the originating endpoint, at the IP 3055 address and port number specified in the SDP part of the original 3056 INVITE message. 3058 (10) 200-OK: 3059 SIP/2.0 200 OK 3060 Via: SIP/2.0/UDP Host(cms-o.provider); branch=1 3061 From: John Doe; 3062 To: tel:+1-212-555-2222 3063 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3064 Cseq: 127 INVITE 3066 Upon receipt of the 200-OK message, CMS-o stops timer (T-ringing) 3067 and signals the endpoint device to stop playing audible ringback 3068 tone to the customer and to begin to play the bearer channel stream 3069 that is received from the destination endpoint. CMS-o sends the 3070 following ACK message to CMS-t. If necessary, CMS-o may also commit 3071 to resources that have been reserved for this call. At this point, 3072 the endpoint device begins to generate bearer channel packets of 3073 encoded voice and send them to the destination endpoint using the IP 3074 address and port number specified in the SDP part of the original 3075 183-Session-Progress message (that was a response to the original 3076 INVITE). 3078 (11) ACK: 3079 ACK sip:Host(cms-t.provider) SIP/2.0 3080 Via: SIP/2.0/UDP Host(cms-o.provider) 3081 From: John Doe; 3082 To: tel:+1-212-555-2222 3083 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3084 Cseq: 127 ACK 3086 Upon receipt of the ACK message, CMS-t stop timer (T-proxy- 3087 response). 3089 When either endpoint detects hangup, it sends out a BYE message to 3090 the other one. In this example, the originating endpoint detected 3091 that the customer hung up the phone. CMS-o puts that line in the 3092 "idle" state so new calls can be made or received. It sends the 3094 DCS Group Category: Informational - Expiration 8/31/02 57 3095 DCS Architecture February 2002 3097 following BYE message directly to CMS-t. CMS-o starts timer (T- 3098 direct-request). 3100 (12) BYE: 3101 BYE sip:Host(cms-t.provider) SIP/2.0 3102 Via: SIP/2.0/UDP Host(cms-o.provider) 3103 From: John Doe; 3104 To: tel:+1-212-555-2222 3105 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3106 Cseq: 131 BYE 3108 Upon receipt of the BYE message, CMS-t signals the endpoint device 3109 to stop playing the bearer channel stream received from the 3110 originator and, if necessary, releases network resources that have 3111 been used for this call. CMS-tsends the following 200-OK message to 3112 CMS-o. Once hangup is detected on the endpoint device, CMS-t puts 3113 that line in the "idle" state so new calls can be made or received. 3115 (13) 200-OK: 3116 SIP/2.0 200 OK 3117 Via: SIP/2.0/UDP Host(cms-o.provider) 3118 From: John Doe; 3119 To: tel:+1-212-555-2222 3120 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3121 Cseq: 131 BYE 3123 Upon receipt of 200-OK, CMS-o stops timer (T-direct-request). 3125 DCS Group Category: Informational - Expiration 8/31/02 58 3126 DCS Architecture February 2002 3128 10.5 Call-Forwarding-Unconditional and Call-Forwarding-Busy 3130 MTA-o Proxy-o Proxy-t MTA-t 3132 | INVITE | | | 3133 |----------------->| INVITE | | 3134 | |-------------->| (1)INVITE | 3135 | | |------------------>| 3136 | | | (2)302 Redirect | 3137 | | |<------------------| 3138 | | (3)302 | | 3139 | |<--------------| (4)ACK | 3140 | | |------------------>| 3141 | | (5)ACK | | 3142 | |-------------->| | 3143 | | 3144 | | Proxy-f MTA-f 3145 | | | | 3146 | | (6)INVITE | | 3147 | |-------------->| (7)INVITE | 3148 | | |------------------>| 3149 | | | (8)183 SDP | 3150 | | |<------------------| 3151 | | | | 3153 The initial call flow for Call-Forwarding-Unconditional/Busy is 3154 identical to that shown in Section 10.1 until MTA-t receives the 3155 following INVITE message from Proxy-t. 3157 (1) INVITE: 3158 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3159 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3160 o.provider); branch=1"; via=Host(mta-o.provider)}K 3161 Supported: 100rel, state 3162 Require: state 3163 Remote-Party-ID: John Doe 3164 Media-Authorization: 31S14621 3165 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3166 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3167 state="Host(dp-o.provider); nexthop=sip:555- 3168 1111@Host(mta-o.provider); gate=Host(cmts- 3169 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3170 2222; num-redirects=0"}K" 3171 From: "Alien Blaster" 3173 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3174 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3175 Cseq: 127 INVITE 3177 DCS Group Category: Informational - Expiration 8/31/02 59 3178 DCS Architecture February 2002 3180 Contact: sip:Host(mta-o.provider) 3181 Content-Type: application/sdp 3182 Content-length: (.) 3184 v=0 3185 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3186 s=- 3187 c= IN IP4 Host(mta-o.provider) 3188 b=AS:64 3189 t=907165275 0 3190 a=X-pc-csuites:312F 3191 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3192 a=rtpmap:0 PCMU/8000 3193 a=rtpmap:96 G726-32/8000 3194 m=audio 3456 RTP/AVP 0 3195 a=qos:mandatory sendrecv 3196 a=X-pc-codecs:96 3198 Upon receiving this message, MTA-t determines that the line 3199 associated with 212-555-2222 is having all calls forwarded. It may 3200 initiate some local action (e.g. to play special ringing tones) to 3201 provide notification that the call is being forwarded. It may 3202 perform some functions as a SIP proxy, using the received Call-ID 3203 and SDP description, to further locate the user. It then issues a 3204 REDIRECT (302) response to indicate that it wants the call 3205 forwarded. This message carries the forwarding number in the Contact 3206 header. 3208 (2) 302-Redirect 3209 SIP/2.0 302 Moved Temporarily 3210 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3211 o.provider); branch=1"; via=Host(mta-o.provider)}K 3212 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3213 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3214 state="Host(dp-o.provider); nexthop=sip:555- 3215 1111@Host(mta-o.provider); gate=Host(cmts- 3216 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3217 2222; num-redirects=0"}K" 3218 Remote-Party-ID: John Smith 3219 Anonymity: off 3220 From: "Alien Blaster" 3222 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3223 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3224 Cseq: 127 INVITE 3225 Contact: tel:555-3333 3227 Proxy-t verifies on receipt of the 302-Redirect message that the 3228 called party is a subscriber to the Call Forwarding service. Proxy-t 3229 also verifies that the called party is permitted to forward the call 3230 to the supplied destination. It then adds a DCS-billing field to 3231 the 302-Redirect message to allow the "second leg" of the forwarded 3232 call to be charged to the user associated with 212-555-2222. It also 3234 DCS Group Category: Informational - Expiration 8/31/02 60 3235 DCS Architecture February 2002 3237 restores the suppressed Via headers to allow the response to be 3238 routed back to Proxy-o. 3240 (3) 302-Redirect 3241 SIP/2.0 302 Moved Temporarily 3242 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 3243 Via: SIP/2.0/UDP Host(mta-o.provider) 3244 Proxy-Require: dcs 3245 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3246 555-1111/212-555-2222> 3247 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3248 555-2222/212-555-3333> 3249 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3250 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3251 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3252 orig-dest=tel:+1-212-555-2222; num-redirects=0 3253 Remote-Party-ID: John Smith 3254 Anonymity: off 3255 From: "Alien Blaster" 3257 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3258 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3259 Cseq: 127 INVITE 3260 Contact: tel:+1-212-555-3333 3262 Proxy-t also sends an ACK to MTA-t. 3264 (4) ACK 3265 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3266 Via: SIP/2.0/UDP Host(dp-t.provider) 3267 From: "Alien Blaster" 3269 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3270 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3271 Cseq: 127 ACK 3273 The transaction at MTA-t is now complete. 3275 Proxy-o matches the 302 response to the INVITE it had sent out. It 3276 sends an ACK back to Proxy-t . 3278 (5) ACK 3279 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3280 Via: Sip/2.0/UDP Host(dp-o.provider) 3281 From: "Alien Blaster" 3283 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3284 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3285 CSeq: 127 ACK 3287 The transaction at Proxy-t is now complete. 3289 DCS Group Category: Informational - Expiration 8/31/02 61 3290 DCS Architecture February 2002 3292 Proxy-o determines the Proxy-f for the E.164 number 212-555-3333 3293 when it receives the 302-Redirect message. It generates an INVITE 3294 message and sends it to Proxy-f. It embeds two Dcs-Billing-Info 3295 headers in this message. The first one identifies the user 3296 associated with the E.164 number 212-555-1111 as paying for the 3297 initial call leg (212-555-1111/212-555-2222). The second one 3298 identifies the user associated with the E.164 number 212-555-2222 as 3299 paying for the second call leg (212-555-2222/212-555-3333). Proxy-o 3300 adds the Dcs-Redirect header giving the information about this call 3301 redirection. 3303 (6) INVITE: 3304 INVITE sip:+1-212-555-3333;rn=+1-212-265-3333; 3305 npdi=yes@Host(dp-f) ;user=phone SIP/2.0 3306 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 2 3307 Via: SIP/2.0/UDP Host(mta-o.provider); 3308 Supported: 100rel, state 3309 Require: state 3310 Proxy-Require: dcs, state 3311 Remote-Party-ID: John Doe; 3312 Anonymity: Off 3313 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 3314 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3315 555-1111/212-555-2222> 3316 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3317 555-2222/212-555-3333> 3318 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3319 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3320 orig-dest=tel:+1-212-555-2222; num-redirects=1 3321 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3322 From: "Alien Blaster" 3324 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3325 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3326 CSeq: 127 INVITE 3327 Contact: sip:Host(mta-o.provider) 3328 Content-Type: application/sdp 3329 Content-length: (.) 3331 v=0 3332 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3333 s=- 3334 c= IN IP4 Host(mta-o.provider) 3335 b=AS:64 3336 t=907165275 0 3337 a=X-pc-csuites:312F 3338 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3339 a=rtpmap:0 PCMU/8000 3340 a=rtpmap:96 G726-32/8000 3341 m=audio 3456 RTP/AVP 0 3342 a=qos:mandatory sendrecv 3343 a=X-pc-codecs:96 3345 DCS Group Category: Informational - Expiration 8/31/02 62 3346 DCS Architecture February 2002 3348 Upon receiving this INVITE, Proxy-f queries the directory server to 3349 determine the IP address (MTA-f) associated with 212-555-3333. It 3350 then forwards the INVITE message to MTA-f. 3352 (7) INVITE: 3353 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 3354 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 3355 o.provider); branch=1"; via=Host(mta-o.provider)}K 3356 Supported: 100rel, state 3357 Require: state 3358 Remote-Party-ID: John Doe 3359 Media-Authorization: 22S21718 3360 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 3361 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 3362 state="Host(dp-o.provider); nexthop=sip:555- 3363 1111@Host(mta-o.provider); gate=Host(cmts- 3364 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3365 2222; num-redirects=1"}K" 3366 From: "Alien Blaster" 3368 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3369 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3370 Cseq: 127 INVITE 3371 Contact: sip:Host(mta-o.provider) 3372 Content-Type: application/sdp 3373 Content-length: (.) 3375 v=0 3376 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3377 s=- 3378 c= IN IP4 Host(mta-o.provider) 3379 b=AS:64 3380 t=907165275 0 3381 a=X-pc-csuites:312F 3382 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3383 a=rtpmap:0 PCMU/8000 3384 a=rtpmap:96 G726-32/8000 3385 m=audio 3456 RTP/AVP 0 3386 a=qos:mandatory sendrecv 3387 a=X-pc-codecs:96 3389 Upon receiving this INVITE, MTA-f authenticates that the message 3390 came from Proxy-f using IPSec. It checks the telephone line 3391 associated with the E.164-f to see if it is available. If it is 3392 available, MTA-f looks at the capability parameters in the Session 3393 Description Protocol (SDP) part of the message and determines which 3394 media channel parameters it can accommodate for this call. MTA-f 3395 stores the INVITE message, including the encrypted State parameters, 3396 for later use. MTA-f puts this line in the "busy" state (so any 3397 other call attempts are rejected until this call clears), generates 3398 the following 183-Session-Progress response, and sends it to Proxy- 3399 f. MTA-f starts timer (T-proxy-response). 3401 DCS Group Category: Informational - Expiration 8/31/02 63 3402 DCS Architecture February 2002 3404 (8) 183-Session-Progress: 3405 SIP/2.0 183 Session Progress 3406 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 3407 o.provider); branch=1"; via=Host(mta-o.provider)}K 3408 Require: 100rel 3409 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 3410 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 3411 state="Host(dp-o.provider); nexthop=sip:555- 3412 1111@Host(mta-o.provider); gate=Host(cmts- 3413 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3414 2222; num-redirects=1"}K" 3415 From: "Alien Blaster" 3417 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3418 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3419 Cseq: 127 INVITE 3420 Rseq: 9021 3421 Content-Disposition: precondition 3422 Contact: sip:Host(mta-f.provider) 3423 Content-Type: application/sdp 3424 Content-length: (.) 3426 v=0 3427 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3428 s=- 3429 c= IN IP4 Host(mta-f.provider) 3430 b=AS:64 3431 t=907165275 0 3432 a=X-pc-csuites:312F 3433 a=rtpmap:0 PCMU/8000 3434 m=audio 6544 RTP/AVP 0 3435 a=qos:mandatory sendrecv confirm 3437 The subsequent signaling call flows are identical to those shown in 3438 Section 10.1. 3440 DCS Group Category: Informational - Expiration 8/31/02 64 3441 DCS Architecture February 2002 3443 10.6 Call-Forwarding-No-Answer 3445 MTA-o Proxy-o Proxy-t MTA-t 3447 ... ... ... ... 3448 | | | | 3449 | | | (1)180 Ringing | 3450 | | |<------------------| 3451 | |(2)180 Ringing | | 3452 | (3)180 Ringing |<--------------| | 3453 |<-----------------| | | 3454 | | (4)PRACK | | 3455 |----------------------------------------------------->| 3456 | | (5)200 OK | | 3457 |<-----------------------------------------------------| 3458 | | | | 3459 | | | | 3460 | | | (6)302 Redirect | 3461 | | |<------------------| 3462 | | (7)302 | | 3463 | (8)302 Redirect |<--------------| (9)ACK | 3464 |<-----------------| |------------------>| 3465 | | (10)ACK | | 3466 | (11) ACK |-------------->| | 3467 |----------------->| 3468 | | Proxy-f MTA-f 3469 | (12) INVITE | | | 3470 |----------------->| (13)INVITE | | 3471 | |-------------->| (14)INVITE | 3472 | | |------------------>| 3473 | | | | 3475 The Call Forwarding No Answer service is triggered when a called 3476 party does not pick up the phone after it rings for a pre-specified 3477 period of time. The subsequent call flow is different from that for 3478 the Call Forwarding Busy and Call Forwarding Unconditional services 3479 since the originating and terminating MTAs have already identified 3480 each other, have already reserved the resources for the call, and 3481 since the CMS/Proxies are no longer storing transaction state when 3482 the Forwarding function is triggered. 3484 The initial set of messages for this service are the same as in 3485 Section 10.1 through the point at which MTA-t is ringing the phone, 3486 and MTA-o is generating ringback. For purposes of this example, 3487 consider the initial INVITE message received by MTA-t to be the 3488 following. 3490 (not shown) INVITE: 3492 DCS Group Category: Informational - Expiration 8/31/02 65 3493 DCS Architecture February 2002 3495 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3496 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3497 o.provider); branch=1"; via=Host(mta-o.provider)}K 3498 Supported: 100rel, state 3499 Require: state 3500 Remote-Party-ID: John Doe 3501 Media-Authorization: 31S14621 3502 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3503 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3504 state="Host(dp-o.provider); nexthop=sip:555- 3505 1111@Host(mta-o.provider); gate=Host(cmts- 3506 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3507 2222; num-redirects=0"}K" 3508 From: "Alien Blaster" 3510 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3511 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3512 Cseq: 127 INVITE 3513 Contact: sip:Host(mta-o.provider) 3514 Content-Type: application/sdp 3515 Content-length: (.) 3517 v=0 3518 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3519 s=- 3520 c= IN IP4 Host(mta-o.provider) 3521 b=AS:64 3522 t=907165275 0 3523 a=X-pc-csuites:312F 3524 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3525 a=rtpmap:0 PCMU/8000 3526 a=rtpmap:96 G726-32/8000 3527 m=audio 3456 RTP/AVP 0 3528 a=qos:mandatory sendrecv 3529 a=X-pc-codecs:96 3531 In response to the INVITE message, MTA-t starts local ringback and 3532 sends a 180 RINGING notification to MTA-o. It also starts the timer 3533 (T-ringing). 3535 (1) 180 RINGING: 3536 SIP/2.0 180 Ringing 3537 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3538 o.provider); branch=1"; via=Host(mta-o.provider)}K 3539 Require: 100rel 3540 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3541 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3542 state="Host(dp-o.provider); nexthop=sip:555- 3543 1111@Host(mta-o.provider); gate=Host(cmts- 3544 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3545 2222; num-redirects=0"}K" 3546 From: "Alien Blaster" 3549 DCS Group Category: Informational - Expiration 8/31/02 66 3550 DCS Architecture February 2002 3552 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3553 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3554 Contact: sip:Host(mta-o.provider) 3555 Cseq: 127 INVITE 3556 Rseq: 9022 3558 The 180-Ringing message from Proxy-t to Proxy-o (2), the 180-Ringing 3559 message from Proxy-o to MTA-o (3), and the PRACK exchange (4) and 3560 (5), are identical to the basic call flow in Section 10.1, and not 3561 repeated here. 3562 When the timer(T-ringing) at the MTA-t expires, it determines the 3563 forwarding number (555-3333) and sends a 302-Redirect response with 3564 this number in the Contact header. 3566 (6) 302-Redirect 3567 SIP/2.0 302 Moved Temporarily 3568 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3569 o.provider); branch=1"; via=Host(mta-o.provider)}K 3570 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3571 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3572 state="Host(dp-o.provider); nexthop=sip:555- 3573 1111@Host(mta-o.provider); gate=Host(cmts- 3574 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3575 2222; num-redirects=0"}K" 3576 From: "Alien Blaster" 3578 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3579 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3580 Cseq: 127 INVITE 3581 Contact: tel:555-3333 3583 Proxy-t uses its IPSec association with MTA-t to determine the 3584 identity of the request. It then verifies the line subscribes to 3585 the Call-Forwarding-No-Answer service. Proxy-t uses its State value 3586 to recover the billing information for the current call (which is 3587 either stored directly in the State value, or stored indirectly with 3588 a pointer to the Gate which stores the billing information). Proxy- 3589 t adds an additional Dcs-Billing-Info header containing the billing 3590 information for the second leg of the forwarded call. Proxy-t 3591 converts the new destination number in the Contact header into a 3592 full E.164 number, and passes the 302-Redirect message to Proxy-o. 3594 (7) 302-Redirect 3595 SIP/2.0 302 Moved Temporarily 3596 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 3597 Via: SIP/2.0/UDP Host(mta-o.provider) 3598 Proxy-Require: dcs 3599 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3600 555-1111/212-555-2222> 3601 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3602 555-2222/212-555-3333> 3603 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3605 DCS Group Category: Informational - Expiration 8/31/02 67 3606 DCS Architecture February 2002 3608 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3609 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3610 orig-dest=tel:+1-212-555-2222; num-redirects=0 3611 From: "Alien Blaster" 3613 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3614 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3615 Cseq: 127 INVITE 3616 Contact: tel:+1-212-555-3333 3618 Proxy-o converts the Contact header into a private format URL 3619 containing the billing information and usage restrictions for the 3620 new call. By including a timestamp, Proxy-o insures the URL can't 3621 be used for later call attempts beyond those authorized by the 3622 forwarder. Also encoded in the URL is the information needed for 3623 the Dcs-Redirect header and any required LAES. 3625 (8) 302-Redirect 3626 SIP/2.0 302 Moved Temporarily 3627 Via: SIP/2.0/UDP Host(mta-o.provider) 3628 From: "Alien Blaster" 3630 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3631 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3632 Cseq: 127 INVITE 3633 Contact: sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 3634 info= Host(rks-o.provider)<5123-0123-4567-8900/212-555- 3635 1111/212-555-2222>; billing-info= Host(rks- 3636 t.provider)<4278-9865-8765-9000/212-555-2222/212-555- 3637 3333>; billing-id= Host(dp-o.provider):36123E5C:0152; 3638 expires=36123E9A; orig-dest=+1-212-555-2222; 3639 redirected-by=+1-212-555-2222; num- 3640 redirects=1}K@Host(dp-o.provider);user=private 3642 Proxy-t sends the following ACK message to MTA-t after sending 302- 3643 Redirect(8). 3645 (9) ACK 3646 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3647 Via: SIP/2.0/UDP Host(dp-t.provider) 3648 From: "Alien Blaster" 3650 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3651 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3652 Cseq: 127 ACK 3654 Proxy-o sends the following ACK message to Proxy-t after sending 3655 302-Redirect(9). 3657 (10) ACK 3658 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3659 Via: SIP/2.0/UDP Host(dp-o.provider) 3661 DCS Group Category: Informational - Expiration 8/31/02 68 3662 DCS Architecture February 2002 3664 From: "Alien Blaster" 3666 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3667 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3668 Cseq: 127 ACK 3670 MTA-o sends the following ACK message to Proxy-o on receipt of the 3671 302-Redirect(8). 3673 (11) ACK 3674 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3675 Via: SIP/2.0/UDP Host(mta-o.provider) 3676 From: "Alien Blaster" 3678 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3679 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3680 Cseq: 127 ACK 3682 The transaction at Proxy-o, Proxy-t and MTA-t is now complete. 3684 MTA-o, if it so desires, may now initiate a new call to the 3685 destination given in the Contact header. To avoid confusion at MTA- 3686 o, the call leg identification for this new call is different from 3687 that of the previous call. Therefore, any stored State headers are 3688 not included in this INVITE, and only the Request-URI gives the 3689 handling and billing information. 3691 (12) INVITE: 3692 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 3693 info= Host(rks-o.provider)<5123-0123-4567-8900/212-555- 3694 1111/212-555-2222>; billing-info= Host(rks- 3695 t.provider)<4278-9865-8765-9000/212-555-2222/212-555- 3696 3333>; billing-id= Host(dp-o.provider):36123E5C:0152; 3697 expires=36123E9A; orig-dest=+1-212-555-2222; 3698 redirected-by=+1-212-555-2222; num- 3699 redirects=1}K@Host(dp-o.provider);user=private SIP/2.0 3700 Via: SIP/2.0/UDP Host(mta-o.provider) 3701 Supported: 100rel, state 3702 Remote-Party-ID: John Doe 3703 Anonymity: Off 3704 From: "Alien Blaster" 3706 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 3707 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 3708 Cseq: 127 INVITE 3709 Contact: sip:Host(mta-o.provider) 3710 Content-Type: application/sdp 3711 Content-length: (.) 3713 v=0 3714 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3715 s=- 3716 c= IN IP4 Host(mta-o.provider) 3718 DCS Group Category: Informational - Expiration 8/31/02 69 3719 DCS Architecture February 2002 3721 b=AS:64 3722 t=907165275 0 3723 a=X-pc-csuite:312F 3724 a=rtpmap:0 PCMU/8000 3725 a=rtpmap:96 G726-32/8000 3726 m=audio 3456 RTP/AVP 0 3727 a=qos:mandatory sendrecv 3728 a=X-pc- codecs:96 3730 Proxy-o does all its normal authorization and authentication 3731 functions, and decodes the encrypted private username in the 3732 Request-URI. From that it builds the Dcs-Billing-Info, Dcs-Billing- 3733 ID, and Dcs-Redirect headers, and determines the destination 3734 address. The INVITE message sent on to Proxy-f is as follows. 3736 (13) INVITE: 3737 INVITE sip:+1-212-555-3333;rn=+1-212-265-3333; 3738 npdi=yes@Host(dp-f);user=phone SIP/2.0 3739 Via: SIP/2.0/UDP Host(dp-o.provider);branch=2 3740 Via: SIP/2.0/UDP Host(mta-o.provider) 3741 Supported: 100rel, state 3742 Require: state 3743 Proxy-Require: dcs, state 3744 Remote-Party-ID: John Doe; 3745 Anonymity: Off 3746 Dcs-Gate: Host(cmts-o.provider):3612/3S73916/518C3B22 required 3747 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3748 555-1111/212-555-2222> 3749 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3750 555-2222/212-555-3333> 3751 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3752 o.provider); gate=Host(cmts-o.provider):3612/3S73916; 3753 orig-dest=tel:+1-212-555-2222; num-redirects=1 3754 Dcs-Billing-ID: Host(dp-o.provider):36123E98:0171 3755 From: "Alien Blaster" 3757 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 3758 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 3759 Cseq: 127 INVITE 3760 Contact: sip:Host(mta-o.provider) 3761 Content-Type: application/sdp 3762 Content-length: (.) 3764 v=0 3765 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3766 s=- 3767 c= IN IP4 Host(mta-o.provider) 3768 b=AS:64 3769 t=907165275 0 3770 a=X-pc-csuites:312F 3771 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3772 a=rtpmap:0 PCMU/8000 3773 a=rtpmap:96 G726-32/8000 3775 DCS Group Category: Informational - Expiration 8/31/02 70 3776 DCS Architecture February 2002 3778 m=audio 3456 RTP/AVP 0 3779 a=qos:mandatory sendrecv 3780 a=X-pc-codecs:96 3782 The remainder of the call procedes as in Section 10.1. 3784 10.7 Call-Forwarding-MTA-Unavailable 3786 MTA-o Proxy-o Proxy-t MTA-t 3788 | | | (1) REGISTER | 3789 | | |<------------------| 3790 | | | (2)200 OK | 3791 | | |------------------>| 3792 | | | | 3793 | INVITE | | | 3794 |----------------->| INVITE | | 3795 | |-------------->| INVITE | 3796 | | |------------------>| 3797 | | | | 3798 | | (Timeout) | 3799 | | | | 3800 | | 302 REDIRECT | | 3801 | |<--------------| | 3802 | | ACK | | 3803 | |-------------->| | 3804 | | 3805 | | Proxy-f MTA-f 3806 | | | | 3807 | | INVITE | | 3808 | |-------------->| INVITE | 3809 | | |------------------>| 3810 | | | | 3812 This service consists of two parts. First, the MTA must register 3813 the forwarding address with the Proxy. Later, when an incomming 3814 call is handled by the proxy and the MTA is not available, the Proxy 3815 initiates the call forwarding. 3817 MTA-t recognizes that the customer dialed the code to activate Call 3818 Forwarding, and prompts the customer for the forwarding telephone 3819 number. This information is sent to the Proxy in a REGISTER 3820 message. 3822 (1) REGISTER 3823 REGISTER sip:Host(dp-o.provider) SIP/2.0 3824 Via: SIP/2.0/UDP Host(mta-t.provider) 3825 From: sip:555-2222@Host(mta-t.provider); user=phone 3826 To: sip:Host(dp-o.provider) 3827 Call-ID: B64(SHA-1(555-2222;time=361013B8;seq=1)) 3828 Cseq: 1 REGISTER 3830 DCS Group Category: Informational - Expiration 8/31/02 71 3831 DCS Architecture February 2002 3833 Contact: tel:555-3333 3834 Expires: 7200 3836 The Proxy validates that the forwarding number maps to either a MTA 3837 it knows about or to another valid Proxy. The Proxy also checks to 3838 make sure that the customer subscribes to the Call Forwarding 3839 service, and if so activates the service and stores the forwarding 3840 number for later use. It responds to the MTA with a 200-OK. 3842 (2) 200-OK 3843 SIP 2.0 200 OK 3844 Via: SIP/2.0/UDP Host(mta-t.provider) 3845 From: sip:555-2222@Host(mta-t.provider); user=phone 3846 To: sip:Host(dp-o.provider) 3847 Call-ID: B64(SHA-1(555-2222;time=361013B8;seq=1)) 3848 Cseq: 1 REGISTER 3850 For an incomming call, the initial sequence of messages is identical 3851 to that for a regular call setup as shown in Section 10.1, until 3852 Proxy-t forwards the INVITE message to MTA-t. Proxy-t times out when 3853 it does not receive a response to the INVITE from MTA-t. It 3854 determines that the called party subscribes to Call Forwarding 3855 service and that the forwarding number is 212-555-3333. It then 3856 generates a SIP 302 (Redirect) message with the forwarding number in 3857 the Contact header. It then adds the DCS-billing and Dcs-Billing-ID 3858 fields to the 302 message that allows the second leg of the 3859 forwarded call to be charged to the user associated with 212-555- 3860 2222. The subsequent call flow is the same as with Call Forwarding 3861 Unconditional, (or Call Forwarding Busy), and is given in Section 3862 10.5. 3864 DCS Group Category: Informational - Expiration 8/31/02 72 3865 DCS Architecture February 2002 3867 10.8 Return-Call 3869 MTA-o Proxy-o Proxy-t MTA-t 3871 | (1) INVITE | | | 3872 |----------------->| (2) INVITE | | 3873 | |-------------->| (3) INVITE | 3874 | | |------------------>| 3875 | | | (4) 183 SDP | 3876 | | (5) 183 SDP |<------------------| 3877 | (6) 183 SDP |<--------------| | 3878 |<-----------------| (7) PRACK | | 3879 |----------------------------------------------------->| 3880 | | (8) 200 OK | | 3881 |<-----------------------------------------------------| 3882 | | (9) COMET | | 3883 |----------------------------------------------------->| 3884 | | (10) 200 OK | | 3885 |<-----------------------------------------------------| 3886 | | | (11) 180 Ringing | 3887 | |(12)180Ringing |<------------------| 3888 | (13)180 Ringing |<--------------| | 3889 |<-----------------| (14) PRACK | | 3890 |----------------------------------------------------->| 3891 | | (15) 200 OK | | 3892 |<-----------------------------------------------------| 3893 | | | | 3894 | (16) CANCEL | | | 3895 |----------------->| (17) CANCEL | | 3896 | |-------------->| (18) CANCEL | 3897 | | |------------------>| 3898 | | | (19) 200 OK | 3899 | | (20) 200 OK |<------------------| 3900 | (21) 200 OK |<--------------| | 3901 |<-----------------| | | 3902 | | | | 3903 | | | (22) INVITE | 3904 | | (23) INVITE |<------------------| 3905 | |<--------------| | 3907 We assume for this example that MTA-t had last received a call from 3908 MTA-o. The INVITE message forwarded to MTA-o included the Remote- 3909 Party-ID line, which contained, among other items, a URL that 3910 identified MTA-o. If the original caller did not request privacy, 3911 and the destination subscribed to caller-id, then the URL contains 3912 the E.164 number, which can be used to place the return call. We 3914 DCS Group Category: Informational - Expiration 8/31/02 73 3915 DCS Architecture February 2002 3917 assume for this example that was not the case, and that MTA-t does 3918 not know the identity of the new call's destination. 3920 Messages (1) through (15) in the above diagram are identical to 3921 those for the basic call flow given in Section 10.1, and message 3922 (16) through (21) is a standard SIP CANCEL operation. The key 3923 parameters used in processing the return-call are contained in 3924 message (3), reproduced below. For purposes of this example, we 3925 assume the destination had not subscribed to Caller-ID service, and 3926 therefore the calling-name and calling-number information is not 3927 present in (3) INVITE. 3929 (3) INVITE: 3930 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3931 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3932 o.provider); branch=1"; via=Host(mta-o.provider)}K 3933 Supported: 100rel, state 3934 Require: state 3935 Remote-Party-ID: ; rpi-id=na 3938 Media-Authorization: 31S14621 3939 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3940 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3941 state="Host(dp-o.provider); nexthop=sip:555- 3942 1111@Host(mta-o.provider); gate=Host(cmts- 3943 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3944 2222; num-redirects=0"}K" 3945 From: "Alien Blaster" 3947 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3948 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3949 Cseq: 127 INVITE 3950 Contact: sip:Host(mta-o.provider) 3951 Content-Type: application/sdp 3952 Content-length: (.) 3954 v=0 3955 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3956 s=- 3957 c= IN IP4 Host(mta-o.provider) 3958 b=AS:64 3959 t=907165275 0 3960 a=X-pc-csuites:312F 3961 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3962 a=rtpmap:0 PCMU/8000 3963 a=rtpmap:96 G726-32/8000 3964 m=audio 3456 RTP/AVP 0 3965 a=qos:mandatory sendrecv 3966 a=X-pc-codecs:96 3968 DCS Group Category: Informational - Expiration 8/31/02 74 3969 DCS Architecture February 2002 3971 Upon the user dialing *69, MTA-t initiates a call by sending an 3972 INVITE message to its Proxy, with the Request-URI containing the URL 3973 for the call to be returned. The complete message is as follows. 3975 (22) INVITE: 3976 INVITE sip:{type=remote-id; orig=tel:+1-212-555-1111; 3977 otherstuff=whatever}K@Host(dp-t.provider); user=private 3978 SIP/2.0 3979 Via: SIP/2.0/UDP Host(mta-t.provider) 3980 Supported: 100rel, state 3981 Remote-Party-ID: John Smith 3982 Anonymity: Off 3983 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 3984 To: sip:B64(SHA-1(*69; time=36123F12;seq=4))@localhost 3985 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 3986 Cseq: 127 INVITE 3987 Contact: sip:Host(mta-t.provider) 3988 Content-Type: application/sdp 3989 Content-length: (.) 3991 v=0 3992 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3993 s=- 3994 c= IN IP4 Host(mta-t.provider) 3995 b=AS:64 3996 t=907165275 0 3997 a=X-pc-csuites:312F 3998 a=rtpmap:0 PCMU/8000 3999 a=rtpmap:96 G726-32/8000 4000 m=audio 7242 RTP/AVP 0 4001 a=qos:mandatory sendrecv 4002 a=X-pc-codecs:96 4004 Upon receiving the INVITE message, Proxy-t authenticates MTA-t using 4005 standard IPSec. Proxy-t decrypts the destination string using its 4006 privately-held key, and checks its signature in the result. From 4007 this string the real destination E.164 is extracted. Proxy-t checks 4008 the "Remote-Party-ID:" line, and checks to see that this line 4009 belongs to MTA-t, and has either subscribed to call-return service, 4010 or is authorized to use the service and be charged on a per-use 4011 basis. Proxy-t then performs all the regular call handling 4012 functions, as described in the basic call flow. The message sent to 4013 Proxy-o is the following, and the call proceeds identically to the 4014 basic call flow from this point onward. 4016 (23) INVITE: 4017 INVITE sip:+1-212-555-1111;rn=+1-212-237-1111; 4018 npdi=yes@Host(dp-o.provider);user=phone SIP/2.0 4019 Via: SIP/2.0/UDP Host(dp-t.provider);branch=1 4020 Via: SIP/2.0/UDP Host(mta-t.provider) 4021 Supported: 100rel, state 4022 Require: state 4023 Proxy-Require: dcs, state 4025 DCS Group Category: Informational - Expiration 8/31/02 75 4026 DCS Architecture February 2002 4028 Remote-Party-ID: John Smith 4029 Anonymity: Off 4030 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 4031 Dcs-Billing-Info: Host(rks-t.provider)<5098-0987-6543-2100/212- 4032 555-2222/212-555-1111/*69> 4033 Dcs-Billing-ID: Host(dp-t.provider):36123F12:0381 4034 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 4035 t.provider); gate=Host(cmts-t.provider):4321/31S14621 4036 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 4037 To: sip:B64(SHA-1(*69; time=36123F12;seq=4))@localhost 4038 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 4039 Cseq: 127 INVITE 4040 Contact: sip:Host(mta-t.provider) 4041 Content-Type: application/sdp 4042 Content-length: (.) 4044 v=0 4045 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4046 s=- 4047 c= IN IP4 Host(mta-t.provider) 4048 b=AS:64 4049 t=907165275 0 4050 a=X-pc-csuites:312F 4051 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4052 a=rtpmap:0 PCMU/8000 4053 a=rtpmap:96 G726-32/8000 4054 m=audio 7242 RTP/AVP 0 4055 a=qos:mandatory sendrecv 4056 a=X-pc-codecs:96 4058 Remainder of call proceeds identically to the basic call flow given 4059 in Section 10.1. 4061 DCS Group Category: Informational - Expiration 8/31/02 76 4062 DCS Architecture February 2002 4064 10.9 Customer-Originated-Trace 4066 MTA-o Proxy-o Proxy-t MTA-t 4068 | (1) INVITE | | | 4069 |----------------->| (2) INVITE | | 4070 | |-------------->| (3) INVITE | 4071 | | |------------------>| 4072 | | | (4) 183 SDP | 4073 | | (5) 183 SDP |<------------------| 4074 | (6) 183 SDP |<--------------| | 4075 |<-----------------| (7) PRACK | | 4076 |----------------------------------------------------->| 4077 | | (8) 200 OK | | 4078 |<-----------------------------------------------------| 4079 | | (9) COMET | | 4080 |----------------------------------------------------->| 4081 | | (10) 200 OK | | 4082 |<-----------------------------------------------------| 4083 | | | (11) 180 Ringing | 4084 | |(12)180Ringing |<------------------| 4085 | (13)180 Ringing |<--------------| | 4086 |<-----------------| (14) PRACK | | 4087 |----------------------------------------------------->| 4088 | | (15) 200 OK | | 4089 |<-----------------------------------------------------| 4090 | | | | 4091 | | | (16) 200 OK | 4092 | | (17) 200 OK |<------------------| 4093 | (18) 200 OK |<--------------| | 4094 |<-----------------| | | 4095 | | | | 4096 | | | (19) INVITE | 4097 | | (20) INVITE|<------------------| 4098 | | <---------| | 4100 Call-trace (*57) is almost identical to return-call (*69), but the 4101 action taken by the Proxy is to report the information to law 4102 enforcement authorities, and complete the call either to the Service 4103 Provider's office or to an announcement server (which tells the 4104 customer to call the Service Provider's office). 4106 (19) INVITE: 4107 INVITE sip:call-trace@Host(dp-t.provider) SIP/2.0 4109 DCS Group Category: Informational - Expiration 8/31/02 77 4110 DCS Architecture February 2002 4112 Via: SIP/2.0/UDP Host(mta-t.provider) 4113 Supported: 100rel, state 4114 Dcs-Trace-Party-ID: sip:{type=remote-id; orig=tel:+1-212-555- 4115 1111; otherstuff=whatever}K@Host(dp-t.provider); 4116 user=private 4117 Remote-Party-ID: John Smith 4118 Anonymity: Off 4119 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 4120 To: sip:B64(SHA-1(*57; time=36123F12;seq=4))@localhost 4121 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 4122 Cseq: 127 INVITE 4123 Contact: sip:Host(mta-t.provider) 4124 Content-Type: application/sdp 4125 Content-length: (.) 4127 v=0 4128 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4129 s=- 4130 c= IN IP4 Host(mta-t.provider) 4131 b=AS:64 4132 t=907165275 0 4133 a=X-pc-csuites:312F 4134 a=rtpmap:0 PCMU/8000 4135 a=rtpmap:96 G726-32/8000 4136 m=audio 7242 RTP/AVP 0 4137 a=qos:mandatory sendrecv 4138 a=X-pc-codecs:96 4140 Proxy performs the reporting function and connects to either (1) an 4141 announcement server telling customer the information is recorded, 4142 and to now call the Business Office during normal business hours, or 4143 (2) the Business Office. 4145 DCS Group Category: Informational - Expiration 8/31/02 78 4146 DCS Architecture February 2002 4148 10.10 Call-Waiting 4150 MTA-o2 MTA-o1 Proxy-o Proxy-t MTA-t 4152 | (1) INVITE | | | 4153 |----------------->| (2) INVITE | | 4154 | | |-------------->| (3) INVITE | 4155 | | | |------------------>| 4156 | | | | (4) 183 SDP | 4157 | | | (5) 183 SDP |<------------------| 4158 | (6) 183 SDP |<--------------| | 4159 |<-----------------| (7) PRACK | | 4160 |----------------------------------------------------->| 4161 | | | (8) 200 OK | | 4162 |<-----------------------------------------------------| 4163 | | | (9) COMET | | 4164 |----------------------------------------------------->| 4165 | | | (10) 200 OK | | 4166 |<-----------------------------------------------------| 4167 | | | | (11) 180 Ringing | 4168 | | |(12)180Ringing |<------------------| 4169 | (13)180 Ringing |<--------------| | 4170 |<-----------------| (14) PRACK | | 4171 |----------------------------------------------------->| 4172 | | | (15) 200 OK | | 4173 |<-----------------------------------------------------| 4174 | | | (16) INVITE(Hold) | 4175 | |<-----------------------------------------| 4176 | | | (17) 200 OK | 4177 | |----------------------------------------->| 4178 | | | (18) ACK | 4179 | |<-----------------------------------------| 4180 | | | | (19) 200 OK | 4181 | | | (20) 200 OK |<------------------| 4182 | (21) 200 OK |<--------------| | 4183 |<-----------------| | | 4184 | | | | | 4185 | | |(22) INVITE(Hold) | 4186 |<-----------------------------------------------------| 4187 | | | (23) 200 OK | | 4188 |----------------------------------------------------->| 4189 | | | (24) ACK | | 4190 |<-----------------------------------------------------| 4191 | | | (25) INVITE(Resume) | 4192 | |<-----------------------------------------| 4194 DCS Group Category: Informational - Expiration 8/31/02 79 4195 DCS Architecture February 2002 4197 | | | (26) 200 OK | 4198 | |----------------------------------------->| 4199 | | | (27) ACK | 4200 | |<-----------------------------------------| 4202 Call Waiting is a service that allows a customer to respond to an 4203 incoming call during the time the phone line is busy. The customer 4204 hears an audible alerting tone, and indicates acceptance of the new 4205 call via a hookflash (putting the previous call on hold). 4206 Subsequent hookflashes switch between the two active calls. The 4207 originator of the second call may hear a distinctive ringback tone. 4208 For this example, consider an existing call initiated by MTA-o1, 4209 with the following call identification: 4211 MTA-t state for call from MTA-o1 to MTA-t 4212 From: "Alien Blaster" 4214 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4215 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4216 Contact: sip:Host(mta-o1.provider) 4217 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4218 o1.provider); gate=Host(cmts-t.provider):4321/31S14621; 4219 state="Host(dp-o1.provider); nexthop=sip:555- 4220 1111@Host(mta-o1.provider); gate=Host(cmts- 4221 o1.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4222 2222; num-redirects=0"}K" 4223 Dcs-Billing-Info: Host(rks-o1.provider)/04FA37<5123-0123-4567- 4224 8900/212-555-1111/212-555-2222> 4225 Dcs-Billing-ID: Host(dp-o1.provider):36123E5C:0152 4227 The initial set of messages associated with the second arriving 4228 call, (1) through (13), as shown in the figure above, are very 4229 similar to those involved in a Basic Call Setup and are not 4230 explicitly enumerated below. After the initial INVITE exchange, the 4231 state information stored for this new call is: 4233 MTA-t state for call from MTA-o2 to MTA-t 4234 From: sip:B64(SHA-1(555-3333; time=36124125;seq=23))@localhost 4235 To: sip:B64(SHA-1(555-2222; time=36124125;seq=24)@localhost 4236 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4237 Contact: sip:Host(mta-o2.provider) 4238 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4239 o2.provider); gate=Host(cmts-t.provider):4321/32S35378; 4240 state="Host(dp-o2.provider); nexthop=sip:555- 4241 3333@Host(mta-o2.provider); gate=Host(cmts- 4242 o2.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4243 2222; num-redirects=0"}K" 4244 Dcs-Billing-Info: Host(rks-o2.provider)/173F419B<6010-4500- 4245 6789-0123/212-555-3333/212-555-2222> 4246 Dcs-Billing-ID: Host(dp-o2.provider):36124125:0031 4248 DCS Group Category: Informational - Expiration 8/31/02 80 4249 DCS Architecture February 2002 4251 In response to the INVITE for the second incoming call, the user at 4252 MTA-t is provided some indication of the second call, e.g. using a 4253 special tone. If the user at MTA-t hits a flash hook in response to 4254 this, MTA-t issues a INVITE(Hold) message to MTA-o1 to put it on 4255 HOLD. 4257 (16) INVITE (Hold): 4258 INVITE sip:Host(mta-o1.provider) SIP/2.0 4259 Via: SIP/2.0/UDP Host(mta-t.provider) 4260 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4261 To: "Alien Blaster" 4263 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4264 Cseq: 129 INVITE 4265 Content-Type: application/sdp 4266 Content-length: (.) 4268 v=0 4269 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4270 s=- 4271 c= IN IP4 0.0.0.0 4272 b=AS:64 4273 t=907165275 0 4274 a=X-pc-csuites:312F 4275 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4276 a=rtpmap:0 PCMU/8000 4277 m=audio 3456 RTP/AVP 0 4279 MTA-o1 acknowledges the HOLD command with a 200-OK message. The 4280 response contains an updated SDP description for the stream to be 4281 received at MTA-o1, indicating an IP address of 0.0.0.0 for a held 4282 call. 4284 (17) 200-OK 4285 SIP/2.0 200 OK 4286 Via: SIP/2.0/UDP Host(mta-t.provider) 4287 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4288 To: "Alien Blaster" 4290 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4291 Cseq: 129 INVITE 4292 Content-Type: application/sdp 4293 Content-length: (.) 4295 v=0 4296 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4297 s=- 4298 c= IN IP4 0.0.0.0 4299 b=AS:64 4300 t=907165275 0 4301 a=X-pc-csuites:312F 4302 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4303 a=rtpmap:0 PCMU/8000 4305 DCS Group Category: Informational - Expiration 8/31/02 81 4306 DCS Architecture February 2002 4308 m=audio 6522 RTP/AVP 0 4310 MTA-t responds to the 200-OK message with the standard SIP ACK 4311 message. At this point it is safe for MTA-t to stop sending voice 4312 payload packets to MTA-o1 and not risk dropping the connection due 4313 to "dead MTA recovery." 4315 (18) ACK 4316 ACK Host(mta-o1.provider) 4317 Via: SIP/2.0/UDP Host(mta-t.provider) 4318 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4319 To: "Alien Blaster" 4321 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4322 Cseq: 129 ACK 4324 Once the first conversation is successfully placed on hold, MTA-t 4325 indicates a completion to the "ringing" to MTA-o2. 4327 (19) 200-OK 4328 SIP/2.0 200 OK 4329 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 4330 o.provider); branch=1"; via=Host(mta-o.provider)}K 4331 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4332 o2.provider); gate=Host(cmts-t.provider):4321/32S35378; 4333 state="Host(dp-o2.provider); nexthop=sip:555- 4334 3333@Host(mta-o2.provider); gate=Host(cmts- 4335 o2.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4336 2222; num-redirects=0"}K" 4337 From: sip:B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4338 To: sip:B64(SHA-1(555-1111; time=36124125;seq=24)@localhost 4339 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4340 Cseq: 128 INVITE 4342 This 200-OK is passed through the proxy chain in messages (18) and 4343 (19) to MTA-o2. MTA-o2 responds with an acknowledgement, in a manor 4344 identical to the basic call flow. 4346 (22) ACK 4347 ACK Host(mta-t.provider) 4348 Via: SIP/2.0/UDP Host(mta-o2.provider) 4349 From: sip:B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4350 To: sip:B64(SHA-1(555-1111; time=36124125;seq=24)@localhost 4351 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4352 CSeq: 128 ACK 4354 At this point the user at MTA-t has a connection to the second 4355 caller, MTA-o2, with the first caller, MTA-o1, on hold. 4357 Subsequent hookflashes repeat the sequence of INVITE(hold)/200- 4358 OK/ACK to one destination, and INVITE(resume)/200-OK/ACK to the 4359 other. The INVITE (Hold) sequence (22) through (24) is identical to 4361 DCS Group Category: Informational - Expiration 8/31/02 82 4362 DCS Architecture February 2002 4364 (16) through (18). Once the 200-OK is received, it is safe for MTA- 4365 t to stop sending voice packets. 4367 INVITE (Resume) is very similar, except that the SDP description 4368 includes the proper IP address in the "c=" line. 4370 (25) INVITE (Resume): 4371 INVITE sip:Host(mta-o1.provider) SIP/2.0 4372 Via: SIP/2.0/UDP Host(mta-t.provider) 4373 From: "Alien Blaster" 4375 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4376 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4377 CSeq: 130 INVITE 4378 Content-Type: application/sdp 4379 Content-length: (.) 4381 v=0 4382 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4383 s=- 4384 c= IN IP4 Host(mta-t.provider) 4385 b=AS:64 4386 t=907165275 0 4387 a=X-pc-csuites:312F 4388 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4389 a=rtpmap:0 PCMU/8000 4390 m=audio 6544 RTP/AVP 0 4392 MTA-o1 acknowledges the Resume command with a 200-OK message. The 4393 response contains an updated SDP description for the stream to be 4394 received at MTA-o1, indicating the real IP address of Host(mta- 4395 o1.provider). 4397 (26) 200-OK 4398 SIP/2.0 200 OK 4399 Via: SIP/2.0/UDP Host(mta-t.provider) 4400 From: "Alien Blaster" 4402 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4403 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4404 CSeq: 129 INVITE 4405 Content-Type: application/sdp 4406 Content-length: (.) 4408 v=0 4409 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4410 s=- 4411 c= IN IP4 Host(mta-o1.provider) 4412 b=AS:64 4413 t=907165275 0 4414 a=X-pc-csuites:312F 4415 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4416 a=rtpmap:0 PCMU/8000 4418 DCS Group Category: Informational - Expiration 8/31/02 83 4419 DCS Architecture February 2002 4421 m=audio 3456 RTP/AVP 0 4423 MTA-t responds to the 200-OK message with the standard SIP ACK 4424 message. At this point it is safe for MTA-t to start sending voice 4425 payload packets to MTA-o1. 4427 (27) ACK 4428 ACK Host(mta-o.provider) 4429 Via: SIP/2.0/UDP Host(mta-t.provider) 4430 From: "Alien Blaster" 4432 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4433 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4434 CSeq: 129 ACK 4436 DCS Group Category: Informational - Expiration 8/31/02 84 4437 DCS Architecture February 2002 4439 10.11 Call-Transfer-Blind 4441 MTA-o Proxy-o Proxy-t MTA-t 4443 | | | | 4444 |<-----------------call-in-progress------------------->| 4445 | | | (1) REFER | 4446 | | (2) REFER |<------------------| 4447 | (3) REFER |<--------------| | 4448 |<-----------------| | | 4449 | | 4450 | | Proxy-f MTA-f 4451 | (4) INVITE | | | 4452 |----------------->| (5) INVITE | | 4453 | |-------------->| (6) INVITE | 4454 | | |------------------>| 4455 | | | (7) 183 SDP | 4456 | | (8) 183 SDP |<------------------| 4457 | (9) 183 SDP |<--------------| : 4458 |<-----------------| : : 4459 : : : (10) 200 OK | 4460 : : (11) 200 OK |<------------------| 4461 | (12) 200 OK |<--------------| | 4462 |<-----------------| | | 4463 | | 4464 | | Proxy-t MTA-t 4465 | (13) 200 OK | | | 4466 |----------------->| (14) 200 OK | | 4467 | |-------------->| (15) 200 OK | 4468 | | (16) ACK |------------------>| 4469 |<-----------------------------------------------------| 4470 | | (17) BYE | | 4471 |----------------------------------------------------->| 4472 | | (18) 200 OK | | 4473 |<-----------------------------------------------------| 4474 | | 4476 The Call Transfer service is triggered by the user by methods beyond 4477 the scope of this specification. Described in this section is a 4478 transfer service common known as "blind transfer" where the party 4479 initiating the transfer (MTA-t in this example) is not informed of 4480 the success or failure of the transfer operation. The alternative, 4481 commonly known as "consultative transfer" is described later. 4483 DCS Group Category: Informational - Expiration 8/31/02 85 4484 DCS Architecture February 2002 4486 For this example, consider an existing call initiated by MTA-o, with 4487 the following call identification: 4489 MTA-t state for call from MTA-o to MTA-t 4490 From: "Alien Blaster" 4492 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4493 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4494 Contact: sip:Host(mta-o.provider) 4495 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4496 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 4497 state="Host(dp-o.provider); nexthop=sip:555- 4498 1111@Host(mta-o.provider); gate=Host(cmts- 4499 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4500 2222; num-redirects=0"}K" 4501 Dcs-Billing-Info: Host(rks-o.provider)/04FA37<5123-0123-4567- 4502 8900/212-555-1111/212-555-2222> 4503 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 4505 When MTA-t desires to transfer the existing call, it determines the 4506 forwarding number (in this example 555-3333) and issues a REFER 4507 message to MTA-o. REFER is the same as a regular INVITE but includes 4508 an additional "Refer-to:" header and "Referred-by:" header. The 4509 "Refer-to:" header identifies the number to which the call needs to 4510 be forwarded, while the "Referred-by:" header identifies the 4511 existing call leg at MTA-o. The following message is sent to MTA- 4512 t's Proxy, Proxy-t. 4514 (1) REFER: 4515 REFER sip: Host(mta-o.provider) SIP/2.0 4516 Via: SIP/2.0/UDP Host(mta-t.provider) 4517 Supported: 100rel, state 4518 Refer-to: tel:555-3333 4519 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4520 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 4521 state="Host(dp-o.provider); nexthop=sip:555- 4522 1111@Host(mta-o.provider); gate=Host(cmts- 4523 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4524 2222; num-redirects=0"}K" 4525 Remote-Party-ID: John Smith 4526 Anonymity: off 4527 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4528 To: "Alien Blaster" 4530 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4531 Cseq: 8001 INVITE 4532 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4533 seq=73))@localhost 4535 When the REFER is received at Proxy-t, it first verifies MTA-t has 4536 subscribed to Call Forwarding service. If so, it decrypts the State 4537 information to determine the local gate location and identification. 4538 Proxy-t queries the gate to obtain the call's billing information. 4540 DCS Group Category: Informational - Expiration 8/31/02 86 4541 DCS Architecture February 2002 4543 Proxy-t inserts billing information to indicate that the user 4544 associated with the number 212-555-2222 will pay for the new call 4545 segment. Proxy-t extracts the call routing from the Dcs-state 4546 information, and then forwards the message to Proxy-o. 4548 (2) REFER: 4549 REFER sip: Host(dp-o.provider) SIP/2.0 4550 Via: SIP/2.0/UDP Host(dp-t.provider) 4551 Via: SIP/2.0/UDP Host(mta-t.provider) 4552 Supported: 100rel, state 4553 Proxy-Require: dcs 4554 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 4555 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 4556 orig-dest=tel:+1-212-555-2222; num-redirects=0 4557 Refer-to: tel:+1-212-555-3333? Dcs-Billing-Info= Host(rks- 4558 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4559 2222> & Dcs-Billing-Info= Host(rks-t.provider)<4278- 4560 9865-8765-9000/212-555-2222/212-555-3333> & Dcs- 4561 Billing-ID= Host(dp-o.provider): 36123E5C:0152 4562 Remote-Party-ID: John Smith 4563 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4564 To: "Alien Blaster" 4566 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4567 Cseq: 8001 INVITE 4568 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4569 seq=73))@localhost 4571 Proxy-o forwards the REFER message to MTA-o after encrypting the 4572 headers. 4574 (3) REFER: 4575 REFER sip: 555-1111@Host(mta-o.provider) SIP/2.0 4576 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 4577 t.provider); branch=1"; via=Host(mta-t.provider)}K 4578 Supported: 100rel, state 4579 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-3333; 4580 billing-id=Host(dp-o.provider): 36123E5C:0152; 4581 expires=; billing-info=Host(rks- 4582 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4583 2222>; billing-info=Host(rks-t.provider)<4278-9865- 4584 8765-9000/212-555-2222/212-555-3333>; orig-dest=tel:+1- 4585 212-555-2222; redirected-by=tel:+1-212-555-2222; num- 4586 redirects=1}K@Host(dp-o.provider);user=private 4587 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4588 To: "Alien Blaster" 4590 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4591 Cseq: 8001 INVITE 4592 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4593 seq=73))@localhost 4595 DCS Group Category: Informational - Expiration 8/31/02 87 4596 DCS Architecture February 2002 4598 After processing the REFER, MTA-o issues a INVITE to MTA-f. In 4599 addition to the standard headers carried in an INVITE message, the 4600 encrypted {Dcs-Billing-INFO, Dcs-Billing-ID} fields received in the 4601 REFER message are copied into the INVITE message. These fields 4602 indicate that the user associated with the 212-555-2222 number will 4603 be charged for the second call leg. 4605 (4) INVITE: 4606 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 4607 id=Host(dp-o.provider): 36123E5C:0152; 4608 expires=; billing-info=Host(rks- 4609 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4610 2222>; billing-info=Host(rks-t.provider)<4278-9865- 4611 8765-9000/212-555-2222/212-555-3333>; orig-dest=tel:+1- 4612 212-555-2222; redirected-by=tel:+1-212-555-2222; num- 4613 redirects=1}K@Host(dp-o.provider);user=private SIP/2.0 4614 Via: SIP/2.0/UDP Host(mta-o.provider) 4615 Supported: 100rel, state 4616 Remote-Party-ID: John Doe 4617 Anonymity: Off 4618 From: "Alien Blaster" 4620 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 4621 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 4622 Cseq: 129 INVITE 4623 Contact: sip:Host(mta-o.provider) 4624 Content-Type: application/sdp 4625 Content-length: (.) 4627 v=0 4628 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4629 s=- 4630 c= IN IP4 Host(mta-o.provider) 4631 b=AS:64 4632 t=907165275 0 4633 a=X-pc-csuites:312F 4634 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4635 a=rtpmap:0 PCMU/8000 4636 a=rtpmap:96 G726-32/8000 4637 m=audio 3456 RTP/AVP 0 4638 a=qos:mandatory sendrecv 4639 a=X-pc-codecs:96 4641 When the Proxy-o receives the INVITE it first decrypts the header 4642 information to find the real destination for the call. Proxy 4643 compares the current time against the timestamp in the encrypted 4644 string; if the request is too old, it is refused. It invokes the 4645 call routing logic to determine which Proxy (Proxy-f) to which the 4646 INVITE needs to be routed. It also embeds two Dcs-Billing-Info 4647 headers in this message. The first one identifies the user 4648 associated with the E.164 number 212-555-1111 as paying for the 4649 initial call leg (212-555-1111/212-555-2222). This information was 4650 derived from the customer account information for the caller during 4652 DCS Group Category: Informational - Expiration 8/31/02 88 4653 DCS Architecture February 2002 4655 the first call attempt. The second Dcs-Billing-Info header 4656 identifies the user associated with the E.164 number 212-555-2222 as 4657 paying for the second call leg (212-555-2222/212-555-3333), and was 4658 provided by Proxy-t in the REFER message. 4660 (5) INVITE: 4661 INVITE sip: +1-212-555-3333;rn=+1-212-265-3333; 4662 npdi=yes@Host(dp-f);user=phone SIP/2.0 4663 Via: SIP/2.0/UDP Host(dp-o.provider); branch=1; 4664 Via: SIP/2.0/UDP Host(mta-o.provider); 4665 Supported: 100rel, state 4666 Require: state 4667 Proxy-Require: dcs, state 4668 Remote-Party-ID: John Doe 4669 Anonymity: Off 4670 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 4671 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 4672 555-1111/212-555-2222> 4673 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 4674 555-2222/212-555-3333> 4675 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 4676 From: "Alien Blaster" 4678 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 4679 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 4680 Cseq: 129 INVITE 4681 Contact: sip:Host(mta-o.provider) 4682 Content-Type: application/sdp 4683 Content-length: (.) 4685 v=0 4686 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4687 s=- 4688 c= IN IP4 Host(mta-o.provider) 4689 b=AS:64 4690 t=907165275 0 4691 a=X-pc-csuites:312F 4692 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4693 a=rtpmap:0 PCMU/8000 4694 a=rtpmap:96 G726-32/8000 4695 m=audio 3456 RTP/AVP 0 4696 a=qos:mandatory sendrecv 4697 a=X-pc-codecs:96 4699 Upon receiving this INVITE, Proxy-f queries the directory server to 4700 determine the IP address (MTA-f) associated with 212-555-3333. It 4701 then forwards the INVITE message to MTA-f, after stripping off all 4702 of the billing fields, and adding the encrypted state information. 4703 This is identical to the basic call flow shown in Section 10.1, and 4704 is not repeated here. 4706 Upon receipt of the 200-OK message, MTA-o sends the final response 4707 of the REFER, a 200-OK, to MTA-t. This message is routed through 4709 DCS Group Category: Informational - Expiration 8/31/02 89 4710 DCS Architecture February 2002 4712 the Proxy Proxy-o, Proxy-t, and then delivered to MTA-t. MTA-t 4713 responds directly with an ACK. Proxy-t is now done; MTA-o sends the 4714 BYE message, which follows immediately. 4716 (13) 200-OK: 4717 SIP/2.0 200 OK 4718 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 4719 t.provider); branch=1"; via=Host(mta-t.provider)}K 4720 State: Host(dp-o.provider); state="{gate= Host(cmts- 4721 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 4722 2222;rn=+1-212-234-2222@Host(DP-t), state="Host(dp- 4723 t.provider); nexthop=sip:Host(dp-o.provider); 4724 gate=Host(cmts-t.provider):4321/31S14621; orig- 4725 dest=tel:+1-212-555-1111; num-redirects=0"}K" 4726 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4727 To: "Alien Blaster" 4729 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4730 Cseq: 8001 REFER 4732 Proxy-o restores the encrypted Via headers, and forwards the OK to 4733 topmost Via - Proxy-t. 4735 (14) 200-OK: 4736 SIP/2.0 200 OK 4737 Via: SIP/2.0/UDP Host(dp-t.provider) 4738 Via: SIP/2.0/UDP Host(mta-t.provider) 4739 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4740 To: "Alien Blaster" 4742 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4743 Cseq: 8001 REFER 4745 Proxy-tforwards the 200-OK to MTA-t. 4747 (15) 200-OK: 4748 SIP/2.0 200 OK 4749 Via: SIP/2.0/UDP Host(mta-t.provider) 4750 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4751 To: "Alien Blaster" 4753 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4754 Cseq: 8001 REFER 4756 MTA-t responds with an ACK message. 4758 (16) ACK: 4759 ACK sip:Host(mta-o.provider) SIP/2.0 4760 Via: SIP/2.0/UDP Host(mta-t.provider) 4761 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4762 To: "Alien Blaster" 4764 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4766 DCS Group Category: Informational - Expiration 8/31/02 90 4767 DCS Architecture February 2002 4769 Cseq: 8001 ACK 4771 (17) BYE: 4772 BYE sip:Host(mta-t.provider) SIP/2.0 4773 Via: SIP/2.0/UDP Host(mta-o.provider) 4774 From: "Alien Blaster" 4776 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4777 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4778 Cseq: 129 BYE 4780 Upon receipt of the BYE message, MTA-t releases all network 4781 resources that have been used for this call. MTA-t sends the 4782 following 200-OK message to MTA-o. 4784 (18) 200-OK: 4785 SIP/2.0 200 OK 4786 Via: SIP/2.0/UDP Host(mta-o.provider) 4787 From: "Alien Blaster" 4789 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4790 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4791 Cseq: 129 BYE 4793 DCS Group Category: Informational - Expiration 8/31/02 91 4794 DCS Architecture February 2002 4796 10.12 Call-Transfer-Consultative 4798 Call Transfer with Consultation is triggered by the user by methods 4799 beyond the scope of this specification. It consists of two distinct 4800 phases: first placing the existing call on hold and placing a new 4801 call to another destination (the consultation), and secondly 4802 transfering the first call to the second destination (the transfer). 4803 For this example, consider an existing call initiated by MTA-t1 to 4804 MTA-o. The call identification information at MTA-o is as follows: 4806 MTA-o state for call from MTA-t1 to MTA-o 4807 From: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 4808 To: tel:555-1111 4809 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 4810 Contact: sip: Host(mta-t1.provider) 4811 Remote-Party-ID: tel:+1-212-555-2222 4812 State: Host(dp-o.provider); state="{nexthop=sip:Host(dp- 4813 t1.provider); gate=Host(cmts-o.provider):3612/17S30124; 4814 state="Host(dp-t1.provider); nexthop=sip:555- 4815 2222@Host(mta-t1.provider); gate=Host(cmts- 4816 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 4817 1111; num-redirects=0"}K" 4818 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 4819 9000/212-555-2222/212-555-1111> 4820 Dcs-Billing-ID: Host(dp-t1.provider):36124033:0381 4822 MTA-o places this call on hold and determines the destination for 4823 consultation. MTA-o initiates a second call to the consultation 4824 endpoint, MTA-t2, as shown in the figure below. 4826 DCS Group Category: Informational - Expiration 8/31/02 92 4827 DCS Architecture February 2002 4829 MTA-o Proxy-o Proxy-t2 MTA-t1 MTA-t2 4831 | (1) INVITE(Hold)| | | | 4832 |------------------------------------------>| | 4833 | (2) 200 OK | | | | 4834 |<------------------------------------------| | 4835 | (3) ACK | | | | 4836 |------------------------------------------>| | 4837 | | | | | 4838 | (4) INVITE | | | | 4839 |----------------->| (5) INVITE | | | 4840 | |-------------->| (6) INVITE | 4841 | | |------------------>| 4842 | | | (7) 183 SDP | 4843 | | (8) 183 SDP |<------------------| 4844 | (9) 183 SDP |<--------------| | | 4845 |<-----------------| (10) PRACK | | | 4846 |----------------------------------------------------->| 4847 | | (11) 200 OK | | 4848 |<-----------------------------------------------------| 4849 | | (12) COMET | | 4850 |----------------------------------------------------->| 4851 | | (13) 200 OK | | 4852 |<-----------------------------------------------------| 4853 | | | (14) 180 Ringing | 4854 | |(15)180Ringing |<------------------| 4855 | (16)180 Ringing |<--------------| | 4856 |<-----------------| (17) PRACK | | 4857 |----------------------------------------------------->| 4858 | | (18) 200 OK | | 4859 |<-----------------------------------------------------| 4860 | | | | 4861 | | | (19) 200 OK | 4862 | | (20) 200 OK |<------------------| 4863 | (21) 200 OK |<--------------| | 4864 |<-----------------| (22) ACK | | 4865 |----------------------------------------------------->| 4866 | | | | 4868 Signaling messages (1) to (3), placing the first call on hold, are 4869 identical to those used in Call Waiting (see Section 10.10), and are 4870 not reproduced here. 4872 DCS Group Category: Informational - Expiration 8/31/02 93 4873 DCS Architecture February 2002 4875 Signaling messages (4) to (22), placing the second call, are 4876 identical to those for a basic call flow (see Section 10.1), and are 4877 not reproduced here. For this example, assume the Call-ID was 4878 B64(SHA-1(555-1111;time=36124125;seq=23))@localhost. 4880 State at MTA-o for call from MTA-o to MTA-t2 4881 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4882 To: tel:555-3333 4883 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4884 Contact: sip: Host(mta-t2.provider) 4885 Remote-Party-ID: tel:+1-212-555-3333 4886 State: Host(dp-o.provider); state="{gate= Host(cmts- 4887 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 4888 3333;rn=+1-212-256-3333;npdi=yes@Host(dp-t2.provider), 4889 state="Host(dp- t2.provider); 4890 nexthop=sip:555-3333@Host(mta-t2.provider); 4891 gate=Host(cmts- t2.provider):4321/31S14621; 4892 orig-dest=tel:+1-212-555-1111; num-redirects=0"}K" 4893 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 4894 555-1111/212-555-3333> 4895 Dcs-Billing-ID: Host(dp-o.provider):3612E5C:0152 4897 After some period of consultation, MTA-o initiates a transfer of the 4898 call from MTA-t1 to the new destination, MTA-t2. This involves 4899 placing the second call on hold (message sequence described 4900 earlier), and sending a REFER message to MTA-t2, giving it the 4901 information about the call with MTA-t1 in the REFER-By header. The 4902 INVITE message, since it changes parties involved in the call, is 4903 routed through the proxies. The sequence is shown in the following 4904 figure, and detailed below. 4906 DCS Group Category: Informational - Expiration 8/31/02 94 4907 DCS Architecture February 2002 4909 MTA-o MTA-t1 Proxy-o Proxy-t2 MTA-t2 4911 | (1) REFER | | | 4912 |----------------->| (2) REFER | | 4913 | | |-------------->| (3) REFER | 4914 | | | |------------------>| 4915 | | | | 4916 | | Proxy-t1 | (4) INVITE | 4917 | | | (5)INVITE |<------------------| 4918 | |(6)INVITE|<--------------| | 4919 | |<--------| | | 4920 | | (7)SDP | | | 4921 | |-------->| (8) SDP | | 4922 | | |-------------->| (9) SDP | 4923 | | | (10) PRACK |------------------>| 4924 | |<--------------------------------------------| 4925 | | | (11) 200 OK | | 4926 | |-------------------------------------------->| 4927 | | | (12) COMET | | 4928 | |<--------------------------------------------| 4929 | | | (13) 200 OK | | 4930 | |-------------------------------------------->| 4931 | |(14)200 | | | 4932 | |-------->| (15) 200 OK | | 4933 | | |-------------->| (16) 200 OK | 4934 | | | (17) ACK |------------------>| 4935 | |<--------------------------------------------| 4936 | | | | | 4937 | | Proxy-o | (17) 200 OK | 4938 | | | (18)200 OK |<------------------| 4939 | (19) 200 OK |<--------------| | 4940 |<-----------------| | | 4941 | | | (20) BYE | | 4942 |----------------------------------------------------->| 4943 | | | (21) 200 OK | | 4944 |<-----------------------------------------------------| 4945 |(22)BYE | | | | 4946 |------->| | | | 4947 |(23)200 | | | | 4948 |<-------| | | | 4950 DCS Group Category: Informational - Expiration 8/31/02 95 4951 DCS Architecture February 2002 4953 After placing the second call on hold, MTA-o initiates a transfer by 4954 sending a REFER to MTA-t2, routed through the proxies. 4956 (1) REFER: 4957 REFER sip: Host(mta-t2.provider) SIP/2.0 4958 Via: SIP/2.0/UDP Host(mta-o.provider) 4959 Supported: 100rel, state 4960 Remote-Party-ID: John Doe 4961 Anonymity: off 4962 Refer-to: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 4963 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 4964 & State= Host(dp-o.provider);state="{nexthop=sip:Host( 4965 dp-t1.provider); gate=Host(cmts- 4966 o.provider):3612/17S30124; state="Host(dp-t1.provider); 4967 nexthop=sip:555-2222@Host(mta-t1.provider); 4968 gate=Host(cmts-t1.provider):4321/31S14621; orig- 4969 dest=tel:+1-212-555-1111; num-redirects=0"}K" 4970 State: Host(dp-o.provider); state="{gate= Host(cmts- 4971 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 4972 3333;rn=+1-212-256-3333;npdi=yes@Host(dp-t2.provider), 4973 state="Host(dp- t2.provider); 4974 nexthop=sip:555-3333@Host(mta-t2.provider); 4975 gate=Host(cmts- t2.provider):4321/31S14621; 4976 orig-dest=tel:+1-212-555-1111; num-redirects=0"}K" 4977 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4978 To: tel:555-3333 4979 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4980 CSeq: 133 REFER 4981 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 4982 seq=23))@localhost 4984 When the REFER is received at Proxy-o, it first verifies MTA-o has 4985 subscribed to Call Transfer service. If so, it decrypts the State 4986 information in the Refer-to header to determine the local gate 4987 location and identification. Proxy-o queries the gate to obtain the 4988 transferred call's original billing information. Proxy-o inserts 4989 billing information to indicate that the user associated with the 4990 number 212-555-1111 will pay for the new call segment. Proxy-o 4991 extracts the call routing from the Dcs-state information, and then 4992 forwards the message to Proxy-t2. 4994 (2) REFER: 4995 REFER sip: Host(dp-o.provider) SIP/2.0 4996 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 4997 Via: SIP/2.0/UDP Host(mta-o.provider) 4998 Supported: 100rel, state 4999 Proxy-Require: dcs 5000 State: Host(dp-t2.provider); nexthop=sip:555-3333@Host(mta- 5001 t2.provider); gate=Host(cmts- 5002 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5003 1111; num-redirects=0 5004 Refer-to: tel:+1-212-555-2222? Call-ID=B64(SHA-1(555- 5005 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 5007 DCS Group Category: Informational - Expiration 8/31/02 96 5008 DCS Architecture February 2002 5010 & Dcs-Billing-Info= Host(rks-t1.provider)<4278-9865- 5011 8765-9000/212-555-2222/212-555-1111> & Dcs-Billing- 5012 Info= Host(rks-t2.provider)<5123-0123-4567-8900/212- 5013 555-1111/212-555-3333> & Dcs-Billing-ID= Host(dp- 5014 o.provider): 36123E5C:0152 5015 Remote-Party-ID: John Smith 5016 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5017 To: tel:555-3333 5018 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5019 CSeq: 133 REFER 5020 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 5021 seq=23))@localhost 5023 Proxy-t2 forwards the REFER message to MTA-t2 after encrypting the 5024 destination of the transfer, and the Dcs-Billing, Dcs-Billing-ID 5025 headers. 5027 (3) REFER: 5028 REFER sip: 555-3333@Host(mta-t2.provider) SIP/2.0 5029 Via: SIP/2.0/UDP Host(dp-t2.provider), {via="Host(dp- 5030 o.provider); branch=1"; via=Host(mta-o.provider)}K 5031 Supported: 100rel, state 5032 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-2222; 5033 billing-id=Host(dp-o.provider): 36123E5C:0152; 5034 expires=; billing-info= Host(rks- 5035 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 5036 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 5037 4567-8900/212-555-1111/212-555-3333>}K@Host(dp- 5038 t2.provider);user=private ? Call-ID=B64(SHA-1(555- 5039 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 5040 Remote-Party-ID: John Smith 5041 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5042 To: tel:555-3333 5043 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5044 CSeq: 133 INVITE 5045 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 5046 seq=23))@localhost 5048 After processing the REFER, MTA-t2 issues a INVITE to MTA-t1. In 5049 addition to the standard headers carried in an INVITE message, the 5050 encrypted {Dcs-Billing, Dcs-Billing-ID} fields received in the REFER 5051 message are copied into the Request-URI of the INVITE message. These 5052 fields indicate the destination, and that the user associated with 5053 the 212-555-1111 number will be charged for the second call leg. 5055 (4) INVITE: 5056 INVITE sip:{type=transfer; dest=tel:+1-212-555-2222; billing- 5057 id=Host(dp-o.provider): 36123E5C:0152; 5058 expires=; billing-info= Host(rks- 5059 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 5060 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 5062 DCS Group Category: Informational - Expiration 8/31/02 97 5063 DCS Architecture February 2002 5065 4567-8900/212-555-1111/212-555-3333>}K@Host(dp- 5066 t2.provider);user=private SIP/2.0 5067 Via: SIP/2.0/UDP Host(mta-t2.provider) 5068 Supported: 100rel, state 5069 Remote-Party-ID: John Smith 5070 Anonymity: Off 5071 From: "Alien Blaster" 5073 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 5074 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 5075 Cseq: 129 INVITE 5076 Referred-by: tel:555-1111 5077 Contact: sip:Host(mta-t2.provider) 5078 Content-Type: application/sdp 5079 Content-length: (.) 5081 v=0 5082 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5083 s=- 5084 c= IN IP4 Host(mta-t2.provider) 5085 b=AS:64 5086 t=907165275 0 5087 a=X-pc-csuites:312F 5088 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5089 a=rtpmap:0 PCMU/8000 5090 a=rtpmap:96 G726-32/8000 5091 m=audio 3456 RTP/AVP 0 5092 a=qos:mandatory sendrecv 5093 a=X-pc-codecs:96 5095 When the Proxy-t2 receives the INVITE it first decrypts the header 5096 information to find the real destination for the call. Proxy 5097 compares the current time against the timestamp in the encrypted 5098 string; if the request is too old, it is refused. It invokes the 5099 call routing logic to determine which Proxy (Proxy-t1) to which the 5100 INVITE needs to be routed. It also embeds two Dcs-Billing-Info 5101 headers in this message. The first one identifies the user 5102 associated with the E.164 number 212-555-2222 as paying for the 5103 initial call leg (212-555-2222/212-555-1111). This information was 5104 derived from the customer account information for the caller during 5105 the first call attempt. The second Dcs-Billing-Info header 5106 identifies the user associated with the E.164 number 212-555-1111 as 5107 paying for the second call leg (212-555-1111/212-555-3333), and was 5108 provided by Proxy-o in the REFER message. 5110 (5) INVITE: 5111 INVITE sip: +1-212-555-2222;rn=+1-212-265-2222; 5112 npdi=yes@Host(dp-t1);user=phone SIP/2.0 5113 Via: SIP/2.0/UDP Host(dp-t2.provider); branch=1; 5114 Via: SIP/2.0/UDP Host(mta-t2.provider); 5115 Supported: 100rel, state 5116 Require: state 5117 Proxy-Require: dcs, state 5119 DCS Group Category: Informational - Expiration 8/31/02 98 5120 DCS Architecture February 2002 5122 Remote-Party-ID: John Smith 5123 Anonymity: Off 5124 Dcs-Gate: Host(cmts-t2.provider):3612/17S30124/37FA1948 5125 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5126 9000/212-555-2222/212-555-1111> 5127 Dcs-Billing-Info: Host(rks-t2.provider)<5123-0123-4567- 5128 8900/212-555-1111/212-555-3333> 5129 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 5130 From: "Alien Blaster" 5132 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 5133 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 5134 Cseq: 129 INVITE 5135 Reffered-By: tel:555-1111 5136 Contact: sip:Host(mta-t2.provider) 5137 Content-Type: application/sdp 5138 Content-length: (.) 5140 v=0 5141 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5142 s=- 5143 c= IN IP4 Host(mta-o.provider) 5144 b=AS:64 5145 t=907165275 0 5146 a=X-pc-csuites:312F 5147 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5148 a=rtpmap:0 PCMU/8000 5149 a=rtpmap:96 G726-32/8000 5150 m=audio 3456 RTP/AVP 0 5151 a=qos:mandatory sendrecv 5152 a=X-pc-codecs:96 5154 Upon receiving this INVITE, Proxy-t1 queries the directory server to 5155 determine the IP address (MTA-t1) associated with 212-555-2222. It 5156 then forwards the INVITE message to MTA-t1, after stripping off all 5157 of the billing fields, and adding the encrypted state information. 5158 MTA-t1 recognizes the Call-ID matching an existing call, and matches 5159 the value of the Reffered-By: header to the From/To of that call. 5160 Since they match, the call is allowed to proceed, with the 183- 5161 Session-Progress, receiving PRACK, COMET, etc. These messages are 5162 identical to the basic call flow shown in Section 10.1, and are not 5163 repeated here. 5165 Upon receipt of the 200-OK response from MTA-t1, MTA-t2 sends the 5166 final response of the REFER by sending a 200-OK to MTA-o. This 5167 message is routed through the Proxy Proxy-t2, Proxy-o, and then 5168 delivered to MTA-o. MTA-o responds directly with an ACK. Proxy-o 5169 is now done, and MTA-o sends a BYE message to terminate the call leg 5170 from MTA-o to MTA-t2, and a BYE message to terminate the call leg 5171 from MTA-o to MTA-t1. 5173 DCS Group Category: Informational - Expiration 8/31/02 99 5174 DCS Architecture February 2002 5176 10.13 Three-Way-Calling (with Network Bridge) 5178 Three-way calling is a fairly complex consumer service that allows a 5179 subscriber to simultaneously talk to two parties, and for those two 5180 parties to hear each other. It is often thought of as an ad-hoc 5181 conference bridge. Usage of the service proceeds as follows. The 5182 customer has an active call, either one initiated or received. The 5183 customer then does a hookflash, which places the existing call on 5184 hold and presents a dialtone. The user then dials the a second 5185 number, and connects to that party. A hookflash at this point 5186 creates a 3-way call, bridging the two calls together. Note the 5187 distinction between three-way calling and call waiting (where the 5188 two calls are alternately placed on hold and connected) lies in the 5189 fact that the subscriber initiated the second call; if the second 5190 call was an incoming call then the call-waiting service would be 5191 active. 5193 The desired state during the three-way-call is three separate call 5194 legs, from each participant to the bridge server. If the 5195 participants initiate the calls, then they all have the same Call- 5196 ID, which tells the bridge to mix them together. If the bridge 5197 initiates the connections, there is no necessity for a common Call- 5198 ID. Multiple methods exist using combinations of REFER methods and 5199 headers to achieve the desired connections. One way involves the 5200 subscriber establishing a connection to a bridge element, then 5201 transferring both of the existing calls to the bridge. Another 5202 method involves the subscriber asking the bridge to handle 5203 redirecting the existing calls to itself. The latter involves fewer 5204 signaling messages, and is preferred over the former. There is, of 5205 course, a third option - that the conference bridging function is 5206 done within the MTA and the network sees it as two separate 5207 simultaneous calls. As this consumes double the access network 5208 bandwidth, it is discouraged. 5210 Initially a single call is active. For purposes of this example, 5211 consider that call to have been a call initiated by MTA-t1 to MTA-o. 5212 The call identification information at MTA-o is as follows: 5214 MTA-o state for call from MTA-t1 to MTA-o 5215 From: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5216 To: tel:555-1111 5217 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5219 DCS Group Category: Informational - Expiration 8/31/02 100 5220 DCS Architecture February 2002 5222 Contact: sip: Host(mta-t1.provider) 5223 Remote-Party-ID: tel:+1-212-555-2222 5224 State: Host(dp-o.provider); state="{nexthop=sip:Host(dp- 5225 t.provider); gate=Host(cmts-o.provider):3612/17S30124; 5226 state="Host(dp-t.provider); nexthop=sip:555- 5227 2222@Host(mta-t1.provider); gate=Host(cmts- 5228 t.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5229 1111; num-redirects=0"}K" 5230 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5231 9000/212-555-2222/212-555-1111> 5232 Dcs-Billing-ID: Host(dp-t1.provider):36124033:0381 5234 MTA-o observes a hookflash and places this call on hold, issues a 5235 dialtone, and collects digits for a second call (212-555-3333). 5236 This sequence is shown in Section 10.10, resulting in the first call 5237 being held and a conversation active to the second destination. 5238 For this example, assume the second call is identified as follows: 5240 State at MTA-o for call from MTA-o to MTA-t2 5241 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5242 To: tel:555-3333 5243 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5244 Contact: sip: Host(mta-t2.provider) 5245 Remote-Party-ID: tel:+1-212-555-3333 5246 State: Host(dp-o.provider); state="{gate= Host(cmts- 5247 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 5248 3333;rn=+1-212-256-3333@Host(DP-t), state="Host(dp- 5249 t.provider); nexthop=sip:555-3333@Host(mta-t.provider); 5250 gate=Host(cmts-t.provider):4321/31S14621; orig- 5251 dest=tel:+1-212-555-1111; num-redirects=0"}K" 5252 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5253 555-1111/212-555-3333> 5254 Dcs-Billing-ID: Host(dp-o.provider):3612E5C:0152 5256 The three-way-calling method described in this appendix asks the 5257 bridge to redirect the existing calls via an INVITE(Refer). The 5258 bridge therefore is in control of managing the endpoints, and knows 5259 the proper media streams for mixing, even though they don't have a 5260 common Call-ID. 5262 DCS Group Category: Informational - Expiration 8/31/02 101 5263 DCS Architecture February 2002 5265 MTA-o MTA-t1 Proxy-o Proxy-b MTA-t2 5267 | | (1) INVITE(Hold) | 5268 |----------------------------------------------------->| 5269 | | (2) 200 OK | | 5270 |----------------------------------------------------->| 5271 | | (3) ACK | | 5272 |----------------------------------------------------->| 5273 | | | 5274 | (4) REFER | | Bridge 5275 |----------------->| (5) REFER | | 5276 | | |-------------->| (6) REFER | 5277 | | | |------------------>| 5278 | | | | (7) 183 SDP | 5279 | | | (8) 183 SDP |<------------------| 5280 | (9) 183 SDP |<--------------| | 5281 |<-----------------| (10) PRACK | | 5282 |----------------------------------------------------->| 5283 | | | (11) 200 OK | | 5284 |<-----------------------------------------------------| 5285 | | | (12) COMET | | 5286 |----------------------------------------------------->| 5287 | | | (13) 200 OK | | 5288 |<-----------------------------------------------------| 5289 | | | | (14) 200 OK | 5290 | | | (15) 200 OK |<------------------| 5291 | (16) 200 OK |<--------------| | 5292 |<-----------------| (17) ACK | | 5293 |----------------------------------------------------->| 5294 | | | | | 5295 | | | | (18) INVITE | 5296 | | | (19)INVITE |<------------------| 5297 | (20)INVITE|<--------------| | 5298 | |<--------| | | 5299 | |(21)SDP | | | 5300 | |-------->| (22) SDP | | 5301 | | |-------------->| (23) SDP | 5302 | | | (24) PRACK |------------------>| 5303 | |<--------------------------------------------| 5304 | | | (25) 200 OK | | 5305 | |-------------------------------------------->| 5306 | | | (26) COMET | | 5308 DCS Group Category: Informational - Expiration 8/31/02 102 5309 DCS Architecture February 2002 5311 | |<--------------------------------------------| 5312 | | | (27) 200 OK | | 5313 | |-------------------------------------------->| 5314 | |(28)200 | | | 5315 | |-------->| (29) 200 OK | | 5316 | | |-------------->| (30) 200 OK | 5317 | | | (31) ACK |------------------>| 5318 |(32)BYE |<--------------------------------------------| 5319 |<-------| | | | 5320 |(33)200 | | | | 5321 |------->| | | | 5323 Messages (1) to (3), for putting an existing call on hold, are 5324 identical to those used in Call Waiting (see Section 10.10). 5325 In response to the hook-flash, MTA also issues an INVITE to a bridge 5326 with a new call ID. The identity of the destination is given via 5327 the service name "bridge," which is a pre-defined service name in 5328 DCS. 5330 (4) REFER: 5331 REFER sip: bridge@Host(dp-o) SIP/2.0 5332 Via: SIP/2.0/UDP Host(mta-o.provider) 5333 Supported: 100rel, state 5334 Remote-Party-ID: John Doe 5335 Anonymity: Off 5336 Refer-To: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 5337 2222;time=36124033;seq=72))@localhost & Reffered-By 5338 =tel:555-1111 & State= Host(dp-o.provider); 5339 state="{nexthop=sip:Host(dp-t.provider); 5340 gate=Host(cmts-o.provider):3612/17S30124; 5341 state="Host(dp-t.provider); nexthop=sip:555- 5342 2222@Host(mta-t1.provider); gate=Host(cmts- 5343 t.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5344 1111; num-redirects=0"}K" 5345 Refer-To: tel:+1-222-555-3333 ? Call-ID=B64(SHA-1(555- 5346 1111;time=36124125;seq=23))@localhost & Reffered-By 5347 =B64(SHA-1(555-1111;time- 5348 36124125;seq=23))@localhost & State= Host(dp- 5349 o.provider); state="{gate= Host(cmts-o.provider): 5350 3612/3S10782, nexthop=sip:+1-212-555-3333;rn=+1-212- 5351 256-3333@Host(DP-t), state="Host(dp-t.provider); 5352 nexthop=sip:555-3333@Host(mta-t.provider); 5353 gate=Host(cmts-t.provider):4321/31S14621; orig- 5354 dest=tel:+1-212-555-1111; num-redirects=0"}K" 5355 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5356 To: sip: bridge@Host(dp-o.provider) 5357 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5358 Contact: sip:Host(mta-o.provider) 5359 Cseq: 131 INVITE 5360 Content-Type: application/sdp 5361 Content-length: (.) 5363 v=0 5365 DCS Group Category: Informational - Expiration 8/31/02 103 5366 DCS Architecture February 2002 5368 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5369 s=- 5370 c= IN IP4 Host(mta-o.provider) 5371 b=AS:64 5372 t=907165275 0 5373 a=X-pc-csuites:312F 5374 a=rtpmap:0 PCMU/8000 5375 a=rtpmap:96 G726-32/8000 5376 m=audio 3460 RTP/AVP 0 5377 a=qos:mandatory sendrecv 5378 a=X-pc-codecs:96 5380 Proxy-o resolves the "bridge service name" to an available bridge 5381 (mcu41@Host(dp-b.provider) in this example), and forwards the INVITE 5382 to the associated Proxy (Proxy-b). In general, bridges will be 5383 available locally at Proxy-o, but this example demonstrates the 5384 messages exchanged if the bridge is remote. In general, bridges 5385 will be network services and located within the trusted domain of 5386 the network. However, they may also be provided by others. This 5387 example call flow diagram shows the latter case, where the bridge is 5388 outside the trusted domain of the service provider. 5390 If the bridge is a trusted network element, the Bridge (for 5391 signaling purposes) would be functionally equivalent to a CMS, and 5392 use the same message set as is used between CMSs. In the diagram 5393 above, this would appear as if the lines Proxy-b and BRIDGE were 5394 merged together. 5396 Proxy-o decrypts the state header values attached to the Refer-To 5397 headers, extracts the billing information for each of the previous 5398 call legs, and expands this information into the Dcs-Billing-Info 5399 values 5401 (5) REFER: 5402 REFER sip:mcu41@Host(dp-b.provider) SIP/2.0 5403 Via: SIP/2.0/UDP Host(dp-o.provider) 5404 Via: SIP/2.0/UDP Host(mta-o.provider) 5405 Supported: 100rel, state 5406 Proxy-Require: dcs, state 5407 Require: state 5408 Remote-Party-ID: John Doe 5409 Anonymity: Off 5410 Dcs-Gate: Host(cmts-o.provider):3612/5S12045/9142E7A1 5411 Dcs-Billing-Info: Host(rks-o.provider)<5123-4567-8900/212-555- 5412 1111/mcu41@Host(dp-b.provider)/bridge-3> 5413 Dcs-Billing-ID: Host(dp-o.provider):36124135:92 5414 Refer-To: tel:+1-212-555-2222 ? CallID= B64(SHA-1(555- 5415 2222;time=36124033;seq=72))@localhost & Dcs-Billing- 5416 Info= Host(rks-t1.provider)<4278-9865-8765-9000/212- 5417 555-2222/212-555-1111> & Dcs-Billing-Info= Host(rks- 5418 o.provider)<5123-4567-8900/212-555-1111/mcu41@Host(dp- 5419 b.provider)> & Dcs-Billing-ID= Host(dp- 5420 t1.provider):36124033:0381 & Reffered-By=tel:555-1111 5422 DCS Group Category: Informational - Expiration 8/31/02 104 5423 DCS Architecture February 2002 5425 Refer-to: tel:+1-212-555-3333 ? CallID= B64(SHA-1(555- 5426 1111;time=36124125;seq=23))@localhost & Dcs-Billing- 5427 Info= Host(rks-o.provider)/<5123-4567-8900/212-555- 5428 1111/212-555-3333> & Dcs-Billing-Info= Host(rks- 5429 o.provider)<5123-4567-8900/212-555-1111/mcu41@Host(dp- 5430 b.provider)> & Dcs-Billing-ID= Host(dp- 5431 o.provider):36123E5C:0152 & Reffered-By:B64(SHA-1(555- 5432 1111;time-36124125;seq=23))@localhost 5433 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 5434 o.provider); gate=Host(cmts-o.provider):3612/17S30124 5435 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5436 To: sip: bridge@Host(dp-o.provider) 5437 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5438 Contact: sip:Host(mta-o.provider) 5439 Cseq: 131 INVITE 5440 Content-Type: application/sdp 5441 Content-length: (.) 5443 v=0 5444 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5445 s=- 5446 c= IN IP4 Host(mta-o.provider) 5447 b=AS:64 5448 t=907165275 0 5449 a=X-pc-csuites:312F 5450 A=rtpmap:0 PCMU/8000 5451 a=rtpmap:96 G726-32/8000 5452 m=audio 3460 RTP/AVP 0 5453 a=qos:mandatory sendrecv 5454 a=X-pc-codecs:96 5456 Proxy-b encrypts the various fields into two Refer-To: headers, 5457 caches the Via headers, and passes the message to the bridge. 5459 (6) REFER: 5460 REFER sip:mcu41.provider SIP/2.0 5461 Via: SIP/2.0/UDP Host(dp-b.provider), {via=Host(dp-o.provider); 5462 via=Host(mta-o.provider)}K 5463 Supported: 100rel, state 5464 Require: state 5465 Remote-Party-ID: John Doe 5466 Dcs-Gate: 27S6028 5467 Refer-To: sip:{type=transfer; dest=+1-212-555-2222; Billing- 5468 info=Host(dp-t1.provider):36124033:0381; ; 5469 Billing-info=Host(rks-t1.provider)<4278-9865-8765- 5470 9000/212-555-2222/212-555-1111>; Billing-id=Host(rks- 5471 o.provider)<5123-4567-8900/212-555- 5472 1111/mcu41.provider>}K@dp-b.provider;user=private ? 5473 Call-ID= B64(SHA-1(555-2222;time=36124033;seq=72)) 5474 @localhost & Reffered-By=tel:555-1111 5475 Refer-To: sip:{type=transfer; dest=+1-212-555-3333; billing- 5476 id=Host(dp-o.provider):36123E5C:0152; 5477 expires=; billing-info=Host(rks- 5479 DCS Group Category: Informational - Expiration 8/31/02 105 5480 DCS Architecture February 2002 5482 o.provider)/<5123-4567-8900/212-555-1111/212-555-3333>; 5483 billing-info=Host(rks-o.provider)<5123-4567-8900/212- 5484 555-1111/mcu41.provider>}K@dp-b.provider; user=private 5485 ? Call-ID= B64(SHA-1(555- 5486 1111;time=36124125;seq=23))@localhost & Reffered-By 5487 :B64(SHA-1(555-1111;time-36124125;seq=23)) 5488 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5489 o.provider); gate=Host(cmts-b.provider): 3612/27S6028; 5490 via="Host(dp-o.provider);branch=1", via=Host(mta- 5491 o.provider), state="Host(dp-o.provider); 5492 nexthop=sip:555-1111@Host(mta-o.provider); 5493 gate=Host(cmts-o.provider):3612/17S30124"}K" 5494 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5495 To: sip: bridge@Host(dp-o.provider) 5496 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5497 Contact: sip:Host(mta-o.provider) 5498 Cseq: 131 INVITE 5499 Content-Type: application/sdp 5500 Content-length: (.) 5502 v=0 5503 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5504 s=- 5505 c= IN IP4 Host(mta-o.provider) 5506 b=AS:64 5507 t=907165275 0 5508 a=X-pc-csuites:312F 5509 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5510 A=rtpmap:0 PCMU/8000 5511 a=rtpmap:96 G726-32/8000 5512 m=audio 3460 RTP/AVP 0 5513 a=X-pc-codecs:96 5515 Bridge completes the call from MTA-o in a manner very similar to the 5516 basic call flow of Section 10.1. Since a bridge doesn't need to 5517 alert a human, it responds immediately with 200-OK when resources 5518 are known to be available. Messages (7) through (17) are not 5519 detailed in this section. 5521 Bridge initiates two calls in parallel, one to each of the 5522 participants listed in the Refer-To: headers. The Request URI in 5523 the new INVITE message is the encrypted string received in the 5524 Refer-To: header, the To: header is a generic string such as 5525 "participant" since the bridge has no knowledge of the identity 5526 of the participants, and the Call-ID is the value from the Refer-To 5527 header. Part of the message sequence for MTA-t1 (messages (18) to 5528 (33)) is detailed here; messages (34) through (49) are identical and 5529 not shown in the figure. 5531 (18) INVITE (Refer-By): 5532 INVITE sip:{type=transfer; dest=+1-212-555-2222; Billing- 5533 info=Host(dp-t1.provider):36124033:0381; ; 5534 Billing-info=Host(rks-t1.provider)<4278-9865-8765- 5536 DCS Group Category: Informational - Expiration 8/31/02 106 5537 DCS Architecture February 2002 5539 9000/212-555-2222/212-555-1111>; Billing-id=Host(rks- 5540 o.provider)<5123-4567-8900/212-555- 5541 1111/mcu41.provider>}K@dp-b.provider; user=private 5542 SIP/2.0 5543 Via: SIP/2.0/UDP Host(mcu41.provider) 5544 Supported: 100rel, state 5545 Remote-Party-ID: Bridge Service 5546 Anonymity: URL, Name 5547 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5548 To: sip: participant1@localhost 5549 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5550 Contact: sip:Host(mcu41.provider) 5551 Cseq: 128 INVITE 5552 Refer-By:tel:555-1111 5553 Content-Type: application/sdp 5554 Content-length: (.) 5556 v=0 5557 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5558 s=- 5559 c= IN IP4 Host(mcu41.provider) 5560 b=AS:64 5561 t=907165275 0 5562 a=X-pc-csuites:312F 5563 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5564 a=rtpmap:0 PCMU/8000 5565 a=rtpmap:96 G726-32/8000 5566 m=audio 3174 RTP/AVP 0 5567 a=X-pc-Qos:mandatory sendrecv 5568 a=X-pc-codecs:96 5570 Proxy-b decodes the encrypted Request-URI to find the real 5571 destination for this call. Proxy compares the current time against 5572 the expiration time in the encrypted string; if the request is too 5573 old it is refused. The call routing is determined from the 5574 destination contained in the encrypted string, as is the billing 5575 information for the call. Proxy-b sends the following INVITE 5576 message to Proxy-t1: 5578 (19) INVITE (Refer-By): 5579 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 5580 npdi=yes@Host(dp-t1.provider);user=phone SIP/2.0 5581 Via: SIP/2.0/UDP Host(dp-b.provider) 5582 Via: SIP/2.0/UDP Host(mcu41.provider) 5583 Supported: 100rel, state 5584 Require: state 5585 Proxy-Require: dcs, state 5586 Remote-Party-ID: Bridge Service 5587 Anonymity: URL, Name 5588 Dcs-Gate: Host(cmts-b.provider):3612/28S6029/079317A3 5589 State: Host(dp-b.provider); nexthop=Host(mcu41.provider); 5590 gate=Host(cmts-b)::3621/28S6029; orig-dest=tel:+1-212- 5591 555-2222; num-redirects=0 5593 DCS Group Category: Informational - Expiration 8/31/02 107 5594 DCS Architecture February 2002 5596 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5597 To: sip: participant1@localhost 5598 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5599 Contact: sip:Host(mcu41.provider) 5600 Cseq: 128 INVITE 5601 Refer-By:tel:555-1111 5602 Content-Type: application/sdp 5603 Content-length: (.) 5605 v=0 5606 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5607 s=- 5608 c= IN IP4 Host(bridge.provider) 5609 b=AS:64 5610 t=907165275 0 5611 a=X-pc-csuites:312F 5612 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5613 a=rtpmap:0 PCMU/8000 5614 a=rtpmap:96 G726-32/8000 5615 a=qos:mandatory sendrecv 5616 m=audio 3174 RTP/AVP 0 5618 Proxy-t1 processes this exactly as a normal INVITE message, and 5619 passes the message to MTA-t1. 5621 (20) INVITE (Refer-By): 5622 INVITE sip:555-2222@Host(mta-t1.provider) SIP/2.0 5623 Via: SIP/2.0/UDP Host(dp-t1.provider), {via=Host(dp- 5624 b.provider); via=Host(mcu41.provider)}K 5625 Supported: 100rel, state 5626 Require: state 5627 Remote-Party-ID: 5629 Media-Authorization: 5S32740 5630 State: Host(dp-t1.provider); state={nexthop=sip:Host(dp-b); 5631 gate=Host(cmts-t1:3621/53S32740;state="Host(dp- 5632 b.provider); nexthop=Host(mcu41.provider); 5633 gate=Host(cmts-b)::3621/28S6029; orig-dest=tel:+1-212- 5634 555-2222; num-redirects=0"}K 5635 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5636 To: sip: participant1@localhost 5637 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5638 Contact: sip:Host(mcu41.provider) 5639 Cseq: 128 INVITE 5640 Refer-By:tel:555-1111 5641 Content-Type: application/sdp 5642 Content-length: (.) 5644 v=0 5645 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5646 s=- 5647 c= IN IP4 Host(mcu41.provider) 5648 b=AS:64 5650 DCS Group Category: Informational - Expiration 8/31/02 108 5651 DCS Architecture February 2002 5653 t=907165275 0 5654 a=X-pc-csuites:312F 5655 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5656 a=rtpmap:0 PCMU/8000 5657 a=rtpmap:96 G726-32/8000 5658 m=audio 3174 RTP/AVP 0 5659 a=X-pc-Qos:mandatory sendrecv 5660 a=X-pc-codecs:96 5662 MTA-t1 notes the Call-ID: header, and determines that it has a call 5663 with that ID and that the Refer-By: header matches either the From: 5664 or To: value for the call. This INVITE is therefore interpreted as 5665 an update to that existing call. The provisional response (183- 5666 Session-Progress) is sent (21) to the local Proxy, who restores the 5667 encrypted Via: headers and sends it (22) to the originating Proxy, 5668 who passes it (23) to the bridge. These messages are identical to 5669 those of the basic call flow. The bridge responds with the PRACK 5670 message (24), as in the basic call flow. The bridge then performs 5671 the resource allocation and continues as in the basic call flow. 5673 Upon receipt of the ACK message, MTA-t1 sends a BYE message to its 5674 original caller. Note that this message has the From: and To: 5675 headers reversed from the incoming INVITE originally received for 5676 this call. If MTA-t1 had initiated the call to MTA-o, then the 5677 From: and To: would match those in the initial INVITE. 5679 (32) BYE: 5680 BYE sip:Host(mta-o.provider) SIP/2.0 5681 Via: SIP/2.0/UDP Host(mta-t1.provider) 5682 From: tel:555-1111 5683 To: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5684 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5685 Cseq: 129 BYE 5687 Upon receipt of the BYE message, MTA-o sends the following 200-OK 5688 message to MTA-t1. 5690 (33) 200-OK: 5691 SIP/2.0 200 OK 5692 Via: SIP/2.0/UDP Host(mta-t1.provider) 5693 From: tel:555-1111 5694 To: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5695 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5696 Cseq: 129 BYE 5698 The sequence of messages (34)-(49) is identical, and performs the 5699 same functions for the other leg of the three-way conference. 5701 DCS Group Category: Informational - Expiration 8/31/02 109 5702 DCS Architecture February 2002 5704 10.14 Three-Way-Calling Hangup sequences 5706 There are two distinct hangup sequences that need to be detailed: 5707 hangup of a participant and hangup of the originator. The first 5708 results in a basic call between the originator and the remaining 5709 participant. The latter results in a hangup of all participants. 5711 For both of the following detail call flows, consider the initial 5712 state information to be the following: 5714 MTA-o: Call from MTA-o to BRIDGE 5715 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5716 To: sip:bridge@Host(dp-o.provider) 5717 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5718 Contact: sip:Host(mcu41.provider) 5719 State: Host(dp-o.provider); state="{gate= Host(cmts- 5720 o.provider): 3612/12S52127, nexthop=sip: mcu41@Host(dp- 5721 b), state="Host(dp-b.provider); 5722 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5723 b.provider):4321/31S14621; orig-dest=sip:mcu41@Host(dp- 5724 b); num-redirects=0"}K" 5725 Dcs-Billing-Info: Host(rks-o.provider)/341FE8B<5123-0123-4567- 5726 8900/212-555-1111/mcu41.provider/Bridge-3 5728 MTA-t1: Call from BRIDGE to MTA-t1 5729 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5730 To: sip: participant1@localhost 5731 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5732 Contact: sip:Host(mcu41.provider) 5733 State: Host(dp-t1.provider); state="{nexthop=sip:Host(dp- 5734 b.provider); gate=Host(cmts-t1.provider): 5735 3612/12S52127; state="Host(dp-b.provider); 5736 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5737 b.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5738 2222; num-redirects=0"}K" 5739 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5740 9000/212-555-2222/212-555-1111>;Host(rks- 5741 o.provider)<5123-4567-8900/212-555-2222/mcu41.provider> 5743 MTA-t2: Call from BRIDGE to MTA-t2 5744 From: sip:B64(SHA-1(bridge;time=36124135;seq=312)) @localhost 5746 DCS Group Category: Informational - Expiration 8/31/02 110 5747 DCS Architecture February 2002 5749 To: sip: participant2@localhost 5750 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5751 Contact: sip:Host(mcu41.provider) 5752 State: Host(dp-t2.provider); state="{nexthop=sip:Host(dp- 5753 b.provider); gate=Host(cmts-t2.provider): 5754 3612/13S52196; state="Host(dp-b.provider); 5755 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5756 b.provider):3612/18S37224; orig-dest=tel:+1=212-555- 5757 3333; num-redirects=0"}K" 5758 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5759 555-1111/212-555-3333>;Host(rks-o.provider)<5123-4567- 5760 8900/212-555-3333/mcu41.provider> 5762 Bridge: Call from MTA-o to BRIDGE 5763 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5764 To: sip:bridge@Host(dp-o.provider) 5765 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5766 Contact: sip:Host(mta-o.provider) 5767 Remote-Party-ID: tel:+1-212-555-1111 5768 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5769 o.provider); gate=Host(cmts-b.provider):3612/15S30179; 5770 state="Host(dp-o.provider); nexthop=sip:555- 5771 1111@Host(mta-o.provider); gate=Host(cmts- 5772 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5773 1111; num-redirects=0"}K" 5774 Dcs-Billing-Info: Host(rks-o.provider)/341FE8B<5123-0123-4567- 5775 8900/212-555-1111/mcu41.provider/Bridge-3 5777 Bridge: Call from BRIDGE to MTA-t1 5778 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5779 To: sip: participant1@localhost 5780 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5781 Contact: sip:Host(mta-t1.provider) 5782 State: Host(dp-b.provider); state="{gate= Host(cmts- 5783 b.provider): 3612/17S30124, nexthop=sip:+1-212-555- 5784 2222;rn=+1-212-234-2222@Host(DP-t1), state="Host(dp- 5785 t1.provider); nexthop=sip:555-2222@Host(mta- 5786 t1.provider); gate=Host(cmts- 5787 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5788 2222; num-redirects=0"}K" 5789 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5790 9000/212-555-2222/212-555-1111>;Host(rks- 5791 o.provider)<5123-4567-8900/212-555-2222/mcu41.provider> 5793 Bridge: Call from BRIDGE to MTA-t2 5794 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5795 To: sip: participant2@localhost 5796 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5797 Contact: sip:Host(mta-t2.provider) 5798 State: Host(dp-b.provider); state="{gate= Host(cmts- 5799 b.provider): 3612/18S37624, nexthop=sip:+1-212-555- 5800 3333;rn=+1-212-234-3333@Host(DP-t2), state="Host(dp- 5801 t2.provider); nexthop=sip:555-3333@Host(mta- 5803 DCS Group Category: Informational - Expiration 8/31/02 111 5804 DCS Architecture February 2002 5806 t2.provider); gate=Host(cmts- 5807 t2.provider):3621/13S52196; orig-dest=tel:+1-212-555- 5808 3333; num-redirects=0"}K" 5809 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5810 555-1111/212-555-3333>;Host(rks-o.provider)<5123-4567- 5811 8900/212-555-3333/mcu41.provider> 5813 MTA-o MTA-t1 Proxy-o Proxy-b Bridge 5815 | | | (1) BYE | | 5816 | |-------------------------------------------->| 5817 | | | (2) 200 OK | | 5818 | |<--------------------------------------------| 5819 | | | | | 5820 | | | | (3) REFER | 5821 | | | (4) REFER |<------------------| 5822 | (5) REFER |<--------------| | 5823 |<-----------------| | | 5824 | (6) 200 OK | | | 5825 |----------------->| (7) 200 OK | | 5826 | | |-------------->| (8) 200 OK | 5827 | | | (9) ACK |------------------>| 5828 |<-----------------------------------------------------| 5829 | | | 5830 | | | Proxy-t2 MTA-t2 5831 | | | | | 5832 | (10) INVITE | | | 5833 |----------------->| (11) INVITE | | 5834 | | |-------------->| (12) INVITE | 5835 | | | |------------------>| 5836 | | | | (13) 183 SDP | 5837 | | | (14) 183 SDP |<------------------| 5838 | (15) 183 SDP |<--------------| | 5839 |<-----------------| (16) PRACK | | 5840 |----------------------------------------------------->| 5841 | | | | | 5843 For this example, consider MTA-t1 to drop out of the three-way 5844 conference. MTA-t1 sends a BYE message to terminate its current 5845 call. 5847 (1) BYE 5848 SIP/2.0 BYE Host(mcu41.provider) 5849 Via: SIP/2..0/UDP Host(mta-t1.provider) 5850 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5851 To: sip: participant1@localhost 5852 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5853 CSeq: 12002 BYE 5855 The Bridge responds to MTA-t1 with the expected acknowledgement 5856 message. 5858 DCS Group Category: Informational - Expiration 8/31/02 112 5859 DCS Architecture February 2002 5861 (2) 200-OK 5862 SIP/2.0 200 OK 5863 Via: SIP/2..0/UDP Host(mta-t1.provider) 5864 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5865 To: sip: participant1@localhost 5866 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5867 CSeq: 12002 BYE 5869 The Bridge now reconnects the two remaining parties into a simple 5870 call. Since MTA-o is the originator of the three-way-call, the 5871 Bridge informs it of the need to redirect the call from MTA-t2. 5872 Bridge sends the INVITE(Also,Replace) message, via Proxy-b. 5874 (3) REFER 5875 REFER sip:Host(mta-o.provider) SIP/2.0 5876 Via: SIP/2.0/UDP Host(mcu41.provider) 5877 Supported: 100rel, state 5878 Refer-To: tel:+1-212-555-3333 ? Call-ID= B64(SHA-1(555- 5879 1111;time=36124135;seq=24))@localhost & Reffered-By= 5880 sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5881 & State= Host(dp-b.provider); state="{gate= Host(cmts- 5882 b.provider): 3612/18S37624, nexthop=sip:+1-212-555- 5883 3333;rn=+1-212-234-3333@Host(DP-t2), state="Host(dp- 5884 t2.provider); nexthop=sip:555-3333@Host(mta- 5885 t2.provider); gate=Host(cmts- 5886 t2.provider):3621/13S52196; orig-dest=tel:+1-212-555- 5887 3333; num-redirects=0"}K" 5888 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5889 o.provider); gate=Host(cmts-b.provider):3612/15S30179; 5890 state="Host(dp-o.provider); nexthop=sip:555- 5891 1111@Host(mta-o.provider); gate=Host(cmts- 5892 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5893 1111; num-redirects=0"}K" 5894 From: sip:bridge@Host(dp-o.provider) 5895 To: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5896 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5897 CSeq: 12301 INVITE 5898 Refer-By: sip:bridge@Host(dp-o.provider) 5900 The call flow from this point onward is identical to the Call 5901 Transfer with Consultation, as shown in Section 10.12. The bridge, 5902 having "consulted" with MTA-o, transfers its call with MTA-t2 to 5903 MTA-o. 5905 DCS Group Category: Informational - Expiration 8/31/02 113 5906 DCS Architecture February 2002 5908 MTA-o MTA-t1 MTA-t2 Proxy-b Bridge 5910 | | | (1) BYE | | 5911 |----------------------------------------------------->| 5912 | | | (2) 200 OK | | 5913 |<-----------------------------------------------------| 5914 | | | | | 5915 | | | (3) BYE | | 5916 | | |<----------------------------------| 5917 | | | (4) 200 OK | | 5918 | | |---------------------------------->| 5919 | | | | | 5920 | | | (5) BYE | | 5921 | |<--------------------------------------------| 5922 | | | (6) 200 OK | | 5923 | |-------------------------------------------->| 5924 | | | | | 5926 When the originator of a three-way call hangs up, the entire call is 5927 terminated. The bridge recognizes the BYE from the originator and 5928 sends BYE messages to all participants. 5930 MTA-o -> Bridge 5932 (1) BYE 5933 BYE sip:Host(mcu41.provider) SIP/2.0 5934 Via: SIP/2.0/UDP Host(mta-o.provider) 5935 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5936 To: sip:bridge@Host(dp-o.provider) 5937 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5938 CSeq: 141 BYE 5940 Bridge -> MTA-o 5942 (2) 200-OK 5943 SIP/2.0 200 OK 5944 Via: SIP/2.0/UDP Host(mta-o.provider) 5945 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5946 To: sip:bridge@Host(dp-o.provider) 5947 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5948 Cseq: 141 BYE 5950 Bridge -> MTA-t2 5952 DCS Group Category: Informational - Expiration 8/31/02 114 5953 DCS Architecture February 2002 5955 (3) BYE 5956 BYE sip:Host(mta-t2.provider) SIP/2.0 5957 Via: SIP/2.0/UDP Host(mcu41.provider) 5958 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5959 To: sip: participant2@localhost 5960 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5961 CSeq: 80001 BYE 5963 MTA-t2 -> Bridge 5965 (4) 200-OK 5966 SIP/2.0 200 OK 5967 Via: SIP/2.0/UDP Host(mcu41.provider) 5968 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5969 To: sip: participant2@localhost 5970 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5971 CSeq: 80001 BYE 5973 Bridge -> MTA-t1 5975 (5) BYE 5976 BYE sip:Host(mta-t1.provider) SIP/2.0 5977 Via: SIP/2.0/UDP Host(mcu41.provider) 5978 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5979 To: sip: participant1@localhost 5980 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5981 CSeq: 80002 BYE 5983 MTA-t1 -> Bridge 5985 (6) 200-OK 5986 SIP/2.0 200 OK 5987 Via: SIP/2.0/UDP Host(mcu41.provider) 5988 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5989 To: sip: participant1@localhost 5990 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5991 CSeq: 80002 BYE 5993 DCS Group Category: Informational - Expiration 8/31/02 115 5994 DCS Architecture February 2002 5996 10.15 CODEC Change within previous authorization 5998 When the initial INVITE SDP contained multiple CODECs, such that any 5999 single CODEC would be authorized, no further interaction is needed 6000 with the CMS/Proxies to change CODECs. However, due to the 6001 requirements of the segmented reservation model of D-QoS, it is 6002 necessary to signal to the far end and synchronize changes in CODEC 6003 usage. The following diagram shows the sequence of signaling 6004 messages to perform this function. 6006 MTA-o Proxy-o Proxy-b MTA-t 6008 | | (1) INVITE | | 6009 |----------------------------------------------------->| 6010 | | (2) 183 SDP | | 6011 |<-----------------------------------------------------| 6012 | | (3) PRACK | | 6013 |----------------------------------------------------->| 6014 | | (4) 200 OK | | 6015 |<-----------------------------------------------------| 6016 | | (5) COMET | | 6017 |----------------------------------------------------->| 6018 | | (6) 200 OK | | 6019 |<-----------------------------------------------------| 6020 | | | | 6021 | | (7) 200 OK | | 6022 |<-----------------------------------------------------| 6023 | | (8) ACK | | 6024 |----------------------------------------------------->| 6025 | | | | 6027 By some mechanism outside the scope of the Distributed Call 6028 Signaling protocol, MTA-o decides that a CODEC change is necessary. 6029 MTA-o sends the following INVITE message directly to MTA-t. This 6030 INVITE is almost identical to the initial INVITE that established 6031 the call, except for header fields such as Remote-Party-ID and 6032 Anonymity that are not sent to maintain originator privacy. 6034 (1) INVITE: 6035 INVITE sip:Host(mta-t.provider) SIP/2.0 6036 Via: SIP/2.0/UDP Host(mta-o.provider) 6037 Supported: 100rel, state 6038 From: "Alien Blaster" 6041 DCS Group Category: Informational - Expiration 8/31/02 116 6042 DCS Architecture February 2002 6044 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6045 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6046 CSeq: 129 INVITE 6047 Content-Type: application/sdp 6048 Content-length: (.) 6050 v=0 6051 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6052 s=- 6053 c= IN IP4 Host(mta-o.provider) 6054 b=AS:64 6055 t=907165275 0 6056 a=X-pc-csuites:312F 6057 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6058 a=rtpmap:0 PCMU/8000 6059 m=audio 3456 RTP/AVP 0 6061 Upon receipt of the (1) INVITE message, MTA-t verifies its ability 6062 to switch to the designated CODEC, and responds with a 183-Session- 6063 Progress including an updated SDP. The procedures from this point 6064 onward are identical to a basic call flow, as given in Section 10.1. 6066 The resource reservations done in this call flow maintain the 6067 previous resources, so that if either end fails to make the proper 6068 reservation, the original call can proceed with the initial CODEC. 6069 MTA-t actually switches to the new codec upon sending the final 200- 6070 OK response to the INVITE, and MTA-o switches to the new codec upon 6071 receipt of the final 200-OK. 6073 DCS Group Category: Informational - Expiration 8/31/02 117 6074 DCS Architecture February 2002 6076 10.16 CODEC Change requiring new authorization 6078 When an MTA wishes to change to a different CODEC, but that CODEC 6079 was not among those initially authorized (or subsequently authorized 6080 by this sequence), it is necessary to request an increased 6081 authorization from the Proxy. The following diagram shows the 6082 sequence of signaling messages that achieves this. 6084 MTA-o Proxy-o Proxy-t2 MTA-t1 MTA-t2 6086 | (1) INVITE | | | | 6087 |----------------->| (2) INVITE | | | 6088 | |-------------->| (3) INVITE | 6089 | | |------------------>| 6090 | | | (4) 183 SDP | 6091 | | (5) 183 SDP |<------------------| 6092 | (6) 183 SDP |<--------------| | | 6093 |<-----------------| (7) PRACK | | | 6094 |----------------------------------------------------->| 6095 | | (8) 200 OK | | 6096 |<-----------------------------------------------------| 6097 | | (9) COMET | | 6098 |----------------------------------------------------->| 6099 | | (10) 200 OK | | 6100 |<-----------------------------------------------------| 6101 | | | (11) 200 OK | 6102 | | (12) 200 OK |<------------------| 6103 | (13) 200 OK |<--------------| | 6104 |<-----------------| (14) ACK | | 6105 |----------------------------------------------------->| 6106 | | | | 6108 By some mechanism outside the scope of the Distributed Call 6109 Signaling protocol, MTA-o decides that a CODEC change is necessary, 6110 and that the previous authorization for the current call does not 6111 permit this new CODEC (e.g. the initial call setup used only G.726- 6112 32 and the new CODEC desired is G.711). MTA-o generates the 6113 following SIP INVITE message and sends it to Proxy-o (the Proxy that 6114 manages MTA-o). MTA-o starts timer (T-proxy-request). 6116 (1) INVITE: 6117 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 6118 Via: SIP/2.0/UDP Host(mta-o.provider) 6120 DCS Group Category: Informational - Expiration 8/31/02 118 6121 DCS Architecture February 2002 6123 Supported: 100rel, state 6124 State: Host(dp-o.provider); state="{gate= Host(cmts- 6125 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 6126 2222;rn=+1-212-234-2222@Host(DP-t), state="Host(dp- 6127 t.provider); nexthop=sip:555-2222@Host(mta-t.provider); 6128 gate=Host(cmts-t.provider):4321/31S14621; orig- 6129 dest=tel:+1-212-555-1111; num-redirects=0"}K" 6130 Remote-Party-ID: John Doe 6131 From: "Alien Blaster" 6133 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6134 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6135 CSeq: 129 INVITE 6136 Content-Type: application/sdp 6137 Content-length: (.) 6139 v=0 6140 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6141 s=- 6142 c= IN IP4 Host(mta-o.provider) 6143 b=AS:64 6144 t=907165275 0 6145 a=X-pc-csuites:312F 6146 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6147 a=X-pc-csuites:312F 6148 a=rtpmap:0 PCMU/8000 6149 m=audio 3456 RTP/AVP 0 6150 a=qos: mandatory sendrecv 6152 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 6153 standard IPSec authentication. Proxy-o decodes the state string in 6154 the State header and extracts the relevant information about the 6155 current call. Proxy-o generates the following INVITE message and 6156 sends it to Proxy-t. Proxy-o adds a number of parameters to the 6157 INVITE message. These are shown below. 6159 (2) INVITE: 6160 INVITE sip: +1-212-555-2222;rn=+1-212-234-2222; 6161 npdi=yes@Host(DP-t);user=phone SIP/2.0 6162 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 6163 Via: SIP/2.0/UDP Host(mta-o.provider) 6164 Supported: 100rel, state 6165 Require: state 6166 Proxy-Require: dcs, state 6167 Dcs-Gate: Host(cmts-o.provider): 3612/17S30124 6168 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6169 555-1111/212-555-2222> 6170 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6171 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 6172 t.provider); gate=Host(cmts-t.provider):4321/31S14621; 6173 orig-dest=tel:+1-212-555-1111; num-redirects=0 6174 Remote-Party-ID: John Doe 6176 DCS Group Category: Informational - Expiration 8/31/02 119 6177 DCS Architecture February 2002 6179 From: "Alien Blaster" 6181 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6182 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6183 Cseq: 129 INVITE 6184 Content-Type: application/sdp 6185 Content-length: (.) 6187 v=0 6188 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6189 s=- 6190 c= IN IP4 Host(mta-o.provider) 6191 b=AS:64 6192 t=907165275 0 6193 a=X-pc-csuites:312F 6194 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6195 a=rtpmap:0 PCMU/8000 6196 m=audio 3456 RTP/AVP 0 6197 a=qos: mandatory sendrecv 6199 Upon receiving this INVITE message, Proxy-t recognizes this as a 6200 mid-call change by the presence of the State header with its name 6201 attached, and generates the following INVITE message and sends it to 6202 MTA-t. Note that the Via lines may be different from the initial 6203 INVITE exchange; they have been encrypted to maintain the privacy of 6204 the caller. 6206 (3) INVITE: 6207 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 6208 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6209 o.provider);branch=1"; via=Host(mta-o.provider)}K 6210 Supported: 100rel, stateMedia-Authorization: 31S14621 6211 Remote-Party-ID: John Doe 6212 From: "Alien Blaster" 6214 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6215 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6216 Cseq: 129 INVITE 6217 Content-Type: application/sdp 6218 Content-length: (.) 6220 v=0 6221 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6222 s=- 6223 c= IN IP4 Host(mta-o.provider) 6224 b=AS:64 6225 t=907165275 0 6226 a=X-pc-csuites:312F 6227 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6228 a=rtpmap:0 PCMU/8000 6229 m=audio 3456 RTP/AVP 0 6230 a=qos: mandatory sendrecv 6232 DCS Group Category: Informational - Expiration 8/31/02 120 6233 DCS Architecture February 2002 6235 Upon receiving this INVITE, MTA-t authenticates that the message 6236 came from Proxy-t using IPSec. MTA-t checks for a current call 6237 matching the triple (From, To, Call-ID). MTA-t looks at the 6238 capability parameters in the Session Description Protocol (SDP) part 6239 of the message and determines which media channel parameters it can 6240 accommodate for this call. MTA-t generates the following 183- 6241 Session-Progress response, and sends it to Proxy-t. 6243 (4) 183 Session-Progress: 6244 SIP/2.0 183 Session Progress 6245 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6246 o.provider);branch=1"; via=Host(mta-o.provider)}K 6247 Require: 100rel 6248 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6249 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6250 state="Host(dp-o.provider); nexthop=sip:555- 6251 1111@Host(mta-o.provider); gate=Host(cmts- 6252 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6253 2222; num-redirects=0"}K" 6254 Remote-Party-ID: John Smith 6255 From: "Alien Blaster" 6257 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6258 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6259 Cseq: 129 INVITE 6260 Content-Disposition: precondition 6261 Contact: sip:Host(mta-t.provider) 6262 Content-Type: application/sdp 6263 Content-length: (.) 6265 v=0 6266 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6267 s=- 6268 c= IN IP4 Host(mta-t.provider) 6269 b=AS:64 6270 t=907165275 0 6271 a=X-pc-csuites:312F 6272 a=rtpmap:0 PCMU/8000 6273 m=audio 6544 RTP/AVP 0 6274 a=qos: mandatory sendrecv confirm 6276 Upon receiving the 200-OK message, Proxy-t authorizes the resources 6277 and forwards the following 183-Session-Progress to Proxy-o, 6278 restoring the Via headers. At this point Proxy-t has completed its 6279 transaction and does not maintain any more state for this call. 6280 Proxy-t may include Dcs-Billing-Information if it wishes to override 6281 the billing information that came in the INVITE (e.g. collect or 6282 toll-free call). 6284 (5) 183-Session-Progress: 6285 SIP/2.0 183 Session Progress 6286 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 6287 Via: SIP/2.0/UDP Host(mta-o.provider) 6289 DCS Group Category: Informational - Expiration 8/31/02 121 6290 DCS Architecture February 2002 6292 Require: 100rel 6293 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6294 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6295 orig-dest=tel:+1-212-555-2222; num-redirects=0 6296 Remote-Party-ID: John Smith 6297 From: "Alien Blaster" 6299 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6300 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6301 Cseq: 129 INVITE 6302 Content-Disposition: precondition 6303 Contact: sip:Host(mta-t.provider) 6304 Content-Type: application/sdp 6305 Content-length: (.) 6307 v=0 6308 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6309 s=- 6310 c= IN IP4 Host(mta-t.provider) 6311 b=AS:64 6312 t=907165275 0 6313 a=X-pc-csuites:312F 6314 a=rtpmap:0 PCMU/8000 6315 m=audio 6544 RTP/AVP 0 6316 a=qos: mandatory sendrecv confirm 6318 Upon receiving the 183-Session-Progress message, Proxy-o authorizes 6319 the resources and forwards the following message to MTA-o. At this 6320 point Proxy-o has completed its transaction and does not maintain 6321 any more state for this call. 6323 (6) 183-Session-Progress: 6324 SIP/2.0 183 Session Progress 6325 Via: Sip/2.0/UDP Host(mta-o.provider) 6326 Require: 100rel 6327 Remote-Party-ID: John Smith 6328 From: "Alien Blaster" 6330 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6331 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6332 Cseq: 129 INVITE 6333 Content-Disposition: precondition 6334 Content-Type: application/sdp 6335 Content-length: (.) 6337 v=0 6338 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6339 s=- 6340 c= IN IP4 Host(mta-t.provider) 6341 b=AS:64 6342 t=907165275 0 6343 a=X-pc-csuites:312F 6344 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6346 DCS Group Category: Informational - Expiration 8/31/02 122 6347 DCS Architecture February 2002 6349 a=rtpmap:0 PCMU/8000 6350 m=audio 6544 RTP/AVP 0 6351 a=qos: mandatory sendrecv confirm 6353 Upon receiving the 183-Session-Progress message, MTA-o sends the 6354 PRACK message directly to MTA-t using the IP address in the Contact 6355 header. MTA-o then reserves the resources needed, and sends a COMET 6356 message if successful. The COMET message, and the 200-OK messages 6357 in response to the PRACK and COMET are identical to that in the 6358 basic call flow (Section 10.1) and not shown here. 6360 (7) PRACK: 6361 PRACK sip:Host(mta-t.provider) SIP/2.0 6362 Via: SIP/2.0/UDP Host(mta-o.provider) 6363 From: "Alien Blaster" 6365 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6366 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6367 CSeq: 130 PRACK 6369 v=0 6370 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6371 s=- 6372 c= IN IP4 Host(mta-o.provider) 6373 b=AS:64 6374 t=907165275 0 6375 a=X-pc-csuites:312F 6376 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6377 a=rtpmap:0 PCMU/8000 6378 m=audio 3456 RTP/AVP 0 6379 a=qos: mandatory sendrecv 6381 MTA-t reserves the resources as needed from the final SDP from the 6382 PRACK message. If successful, and upon receipt of the COMET message 6383 from MTA-o indicating it was successful, MTA-t changes the CODEC and 6384 sends the 200-OK final response. 6386 (11) 200-OK: 6387 SIP/2.0 200 OK 6388 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6389 o.provider);branch=1"; via=Host(mta-o.provider)}K 6390 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6391 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6392 state="Host(dp-o.provider); nexthop=sip:555- 6393 1111@Host(mta-o.provider); gate=Host(cmts- 6394 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6395 2222; num-redirects=0"}K" 6396 From: "Alien Blaster" 6398 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6399 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6400 CSeq: 129 INVITE 6402 DCS Group Category: Informational - Expiration 8/31/02 123 6403 DCS Architecture February 2002 6405 Upon receiving the 200-OK message, Proxy-t forwards the following 6406 200-OK to Proxy-o, restoring the Via headers. 6408 (12) 200-OK: 6409 SIP/2.0 200 OK 6410 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 6411 Via: SIP/2.0/UDP Host(mta-o.provider) 6412 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6413 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6414 orig-dest=tel:+1-212-555-2222; num-redirects=0 6415 From: "Alien Blaster" 6417 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6418 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6419 CSeq: 129 INVITE 6421 Upon receiving the 200-OK message, Proxy-o forwards the following 6422 200-OK to MTA-o. 6424 (13) 200-OK: 6425 SIP/2.0 200 OK 6426 Via: Sip/2.0/UDP Host(mta-o.provider) 6427 From: "Alien Blaster" 6429 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6430 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6431 CSeq: 129 INVITE 6433 Upon receiving the 200-OK message, MTA-o sends the following ACK 6434 message directly to MTA-t using the IP address in the Contact header 6435 of the previous 183 message. This completes the three-way handshake 6436 for the SIP INVITE exchange. 6438 (14) ACK: 6439 ACK sip:Host(mta-t.provider) SIP/2.0 6440 Via: SIP/2.0/UDP Host(mta-o.provider) 6441 From: "Alien Blaster" 6443 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6444 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6445 CSeq: 129 ACK 6447 DCS Group Category: Informational - Expiration 8/31/02 124 6448 DCS Architecture February 2002 6450 10.17 Busy-Line-Verification 6452 PSTN G/W CMS/MGC Proxy-t2 MTA-t2 6454 | (1) NTFY | | | 6455 |----------------->| | | 6456 | (2) CRCX | | | 6457 |<-----------------| | | 6458 | (3) ACK | | | 6459 |----------------->| | | 6460 | | | | 6461 | | (4) INVITE | | 6462 | |-------------->| (5) INVITE | 6463 | | |------------------>| 6464 | | | (6) 183 SDP | 6465 | | (7) 183 SDP |<------------------| 6466 | |<--------------| | 6467 | | (8) PRACK | | 6468 | |---------------------------------->| 6469 | | (9) 200 OK | | 6470 | |<----------------------------------| 6471 | | (10) COMET | | 6472 | |---------------------------------->| 6473 | | (11) 200 OK | | 6474 | |<----------------------------------| 6475 | | | (14) 200 OK | 6476 | | (15) 200 OK |<------------------| 6477 | |<--------------| | 6478 | | (16) ACK | | 6479 | |---------------------------------->| 6480 | | | | 6482 This service clearly requires the cooperation of the MTA. Further, 6483 there is a network database of phone numbers of customers who cannot 6484 be verified and/or broken into. It seems reasonable that a MTA that 6485 refuses to cooperate is merely one so marked in the current 6486 database. 6488 Busy Line Verification sequence begins when the Operator at an OSPS 6489 console signals an E.164 number for verification over a special MF 6490 trunk group, to the PSTN gateway. The Media Gateway (MG) and Media 6491 Gateway Controller (MGC) recognize this special signaling, and 6492 generate an INVITE(BLV) to the number requested. 6494 The normal call initiation sequence in TGCP is followed. The NTFY 6495 message (1) signals the MGC of a call request, and MGC uses the CRCX 6497 DCS Group Category: Informational - Expiration 8/31/02 125 6498 DCS Architecture February 2002 6500 message (2) and ACK (3) to generate an appropriate SDP. That it is 6501 a OSPS trunk group is known to the MGC, which invokes the special 6502 header insertion. 6504 MGC recognizes the trunk group as special BLV trunks, and generates 6505 a slightly modified INVITE message, by adding the Dcs-OSPS header. 6507 (4) INVITE (BLV): 6508 INVITE sip:212-555-1111,lnp=212-237@dp-t.provider;user=phone 6509 SIP/2.0 6510 Via: SIP/2.0/UDP Host(mgc02.provider);branch=1 6511 Supported: 100rel, state 6512 Proxy-Require: dcs 6513 Remote-Party-ID: Operator ; 6514 rpi-type=operator 6515 Anonymity: URL 6516 Dcs-OSPS: BLV 6517 Dcs-Gate: mgc02.provider/36123E5B 6518 Dcs-Billing-Info: Host(rks-o.provider) 6519 Dcs-Billing-ID: Host(mgc02.provider):36123E5C:0152 6520 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6521 To: tel:555-1111 6522 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6523 CSeq: 127 INVITE 6524 Contact: sip:mgc02.provider 6525 Content-Type: application/sdp 6526 Content-length: (.) 6528 v=0 6529 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6530 s=- 6531 c= IN IP4 mg101.provider 6532 b=AS:64 6533 t=907165275 0 6534 a=X-pc-csuites:312F 6535 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6536 a=rtpmap:0 PCMU/8000 6537 a=rtpmap:96 G726-32/8000 6538 m=audio 3380 RTP/AVP 0 6539 a=qos:mandatory sendrecv 6540 a=X-pc-codecs:96 6542 Proxy-t authorizes the additional connection without regard to 6543 number of currently active connections, and passes the INVITE(BLV) 6544 to MTA-t. 6546 (5) INVITE (BLV): 6547 INVITE sip:212-555-1111@mta-t.provider;user=phone SIP/2.0 6548 Via: SIP/2.0/UDP Host(dp-t.provider);branch=1, { 6549 via="Host(mgc02.provider);branch=1"}K 6550 Supported: 100rel, state 6551 Require: state 6553 DCS Group Category: Informational - Expiration 8/31/02 126 6554 DCS Architecture February 2002 6556 Remote-Party-ID: Operator ; 6558 rpi-type=operator 6559 Dcs-OSPS: BLV 6560 Dcs-Gate: 44S10312 6561 State: Host(dp-t.provider); state="{nexthop=sip:Host(mgc02. 6562 Provider); gate=Host(cmts-t.provider):4321/44S10312}K" 6563 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6564 To: tel:555-1111 6565 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6566 Cseq: 127 INVITE 6567 Contact: sip:mgc02.provider 6568 Content-Type: application/sdp 6569 Content-length: (.) 6571 v=0 6572 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6573 s=- 6574 c= IN IP4 mg101.provider 6575 b=AS:64 6576 t=907165275 0 6577 a=X-pc-csuites:312F 6578 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6579 a=rtpmap:0 PCMU/8000 6580 a=rtpmap:96 G726-32/8000 6581 m=audio 3380 RTP/AVP 0 6582 a=qos:mandatory sendrecv 6583 a=X-pc-codecs:96 6585 MTA-t does not respond to a BLV request with BUSY, nor does it 6586 perform call forwarding. The response is 183-Session-Progress, 6587 identical to that of a normal call given in Section 10.1, and 6588 completes identical to a normal call (but without the ringing 6589 phase). 6591 MTA-t commits to the reserved resources, and begins to send voice 6592 packets to the Operator. The payload contains a copy of the packets 6593 generated at MTA-t. 6595 If the designated line is onhook, MTA-t will generate silence 6596 packets and send to Operator. If the line is currently ringing or 6597 generating local ringback, MTA-t will generate a ringback tone 6598 pattern and sent to Operator. 6600 The OSPS system scrambles the received voice packets, making the 6601 conversation unintelligible to the Operator. However, enough 6602 information is passed through the scrambled audio for the operator 6603 to accurately determine whether the line is in use, dialing, 6604 ringing, or idle. 6606 A BLV call terminates when the OSPS signals a hangup over the MF 6607 trunk, resulting in a DCS BYE message. The MTA never terminates a 6608 BLV call. 6610 DCS Group Category: Informational - Expiration 8/31/02 127 6611 DCS Architecture February 2002 6613 10.18 Operator break-in 6615 PSTN G/W CMS/MGC Proxy-t2 MTA-t2 6617 | (1) NTFY | | | 6618 |----------------->| | | 6619 | (2) CRCX | | | 6620 |<-----------------| | | 6621 | (3) ACK | | | 6622 |----------------->| | | 6623 | | | | 6624 | | (4) INVITE | | 6625 | |-------------->| (5) INVITE | 6626 | | |------------------>| 6627 | | | (6) 183 SDP | 6628 | | (7) 183 SDP |<------------------| 6629 | |<--------------| | 6630 | | (8) PRACK | | 6631 | |---------------------------------->| 6632 | | (9) 200 OK | | 6633 | |<----------------------------------| 6634 | | (10) COMET | | 6635 | |---------------------------------->| 6636 | | (11) 200 OK | | 6637 | |<----------------------------------| 6638 | | | (14) 200 OK | 6639 | | (15) 200 OK |<------------------| 6640 | |<--------------| | 6641 | | (16) ACK | | 6642 | |---------------------------------->| 6643 | (17) NTFY | | | 6644 |----------------->| | | 6645 | | (18) INVITE | | 6646 | |---------------------------------->| 6647 | | (19) 200 OK | | 6648 | |<----------------------------------| 6649 | | (20) ACK | | 6650 | |---------------------------------->| 6651 | | | | 6653 Emergency Interrupt is closely tied to BLV (previous appendix), 6654 since EI always begins with BLV. Messages (1) through (16) perform 6655 the BLV function, and are not repeated here. 6657 DCS Group Category: Informational - Expiration 8/31/02 128 6658 DCS Architecture February 2002 6660 At the end of the BLV call flow, instead of the OSPS releasing the 6661 trunk, OSPS generates an alerting tone. The Media Gateway (MG) 6662 detects activity on line and the Media Gateway Controller (MGC) 6663 generates INVITE(EI) and sends it direct to MTA-t. 6665 (18) INVITE(EI): 6666 INVITE sip:Host(mta-t.provider) SIP/2.0 6667 Via: SIP/2.0/UDP Host(mgc02.provider) 6668 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6669 To: tel:555-1111 6670 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6671 CSeq: 130 INVITE 6672 Dcs-OSPS: EI 6673 Content-Type: application/sdp 6674 Content-length: (.) 6676 v=0 6677 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6678 s=- 6679 c= IN IP4 mgc02.provider 6680 b=AS:64 6681 t=907165275 0 6682 a=X-pc-csuites:312F 6683 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6684 a=rtpmap:0 PCMU/8000 6685 m=audio 3380 RTP/AVP 0 6687 MTA verifies that BLV is already active, and that the EI request 6688 matches From, To, Call-ID. If so, it responds with 200-OK. SDP is 6689 not needed unless there is a change in the session description from 6690 that of the BLV. 6692 (19) 200 OK: 6693 SIP/2.0 200 OK 6694 Via: SIP/2.0/UDP Host(mgc02.provider) 6695 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6696 To: tel:555-1111 6697 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6698 CSeq: 130 INVITE 6700 MGC responds with the standard SIP ACK message. 6702 MTA has several choices of how to do the EI function. 1) put 6703 current call on hold and connect user to operator. 2) perform local 6704 mixing of current call and stream from OSPS, so both participants in 6705 existing call hear and can talk to the operator. 3) allocate a 6706 bridge and treat this just like a 3-way call. 6708 DCS Group Category: Informational - Expiration 8/31/02 129 6709 DCS Architecture February 2002 6711 10.19 Lawfully Authorized Electronic Surveillance 6713 Calls from and to surveillance subjects behave just like a normal 6714 call flows. Additional messages will be sent from the CMS to the 6715 Electronic Surveillance Delivery Function telling the known 6716 signaling information. One additional parameter is sent to the CMTS 6717 in the Gate-Set command, telling it to copy all the voice data 6718 packets and send the copy to the Law Enforcement Access Point. 6719 There is no change to the MTA-CMS message exchanges due to 6720 electronic surveillance. This is an absolute requirement due to the 6721 non-intrusive requirement of the electronic surveillance statute. 6723 In most cases, there is no change to the CMS-CMS message exchanges 6724 due to electronic surveillance. This basic design keeps the 6725 knowledge of surveillance as localized as possible. If a call 6726 originator is under surveillance, the surveillance is done at the 6727 originating CMTS; the call destination does not know in any way that 6728 it is happening. If a call destination is under surveillance, the 6729 surveillance is done at the terminating CMTS; the call originator 6730 does not know in any way that it is happening. If both the call 6731 originator and call destination are under surveillance, the 6732 interception is done twice. So it goes. 6734 The only situation where CMS-CMS message exchanges are extended to 6735 support electronic surveillance is in cases of call redirection. 6737 When a subject under surveillance initiates a call transfer, it is 6738 required that the new call also be intercepted. Therefore the 6739 notification of surveillance is passed in that CMS-CMS INVITE 6740 message. Further, when the new destination is unable to perform the 6741 required interception (e.g. redirection to a network server such as 6742 voicemail), the 183 response contains additional information telling 6743 the originator to perform the surveillance. These situations are 6744 shown in the following examples. 6746 DCS Group Category: Informational - Expiration 8/31/02 130 6747 DCS Architecture February 2002 6749 10.19.1 Call-Forwarding-Unconditional with Forwarder under Surveillance 6751 MTA-o Proxy-o Proxy-t MTA-t 6753 | INVITE | | | 6754 |----------------->| INVITE | | 6755 | |-------------->| (1)INVITE | 6756 | | |------------------>| 6757 | | | (2)302 Redirect | 6758 | | |<------------------| 6759 | | (3)302 | | 6760 | |<--------------| (4)ACK | 6761 | | |------------------>| 6762 | | (5)ACK | | 6763 | |-------------->| | 6764 | | 6765 | | Proxy-f MTA-f 6766 | | | | 6767 | | (6)INVITE | | 6768 | |-------------->| (7)INVITE | 6769 | | |------------------>| 6770 | | | (8)183 SDP | 6771 | | |<------------------| 6772 | | | | 6774 For this example, consider a call from MTA-o to MTA-t (with MTA-t 6775 under surveillance). MTA-t has established call forwarding- 6776 unconditional. The basic call flow for call-forwarding is identical 6777 to that given in Section 10.5, and only the differences are noted 6778 here. 6780 (1) INVITE: 6781 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 6782 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6783 o.provider); branch=1"; via=Host(mta-o.provider)}K 6784 Supported: 100rel, state 6785 Require: state 6786 Remote-Party-ID: John Doe 6787 Media-Authorization: 31S14621 6788 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6789 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6790 state="Host(dp-o.provider); nexthop=sip:555- 6791 1111@Host(mta-o.provider); gate=Host(cmts- 6793 DCS Group Category: Informational - Expiration 8/31/02 131 6794 DCS Architecture February 2002 6796 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6797 2222; num-redirects=0"}K" 6798 From: "Alien Blaster" 6800 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6801 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6802 Cseq: 127 INVITE 6803 Contact: sip:Host(mta-o.provider) 6804 Content-Type: application/sdp 6805 Content-length: (.) 6807 v=0 6808 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6809 s=- 6810 c= IN IP4 Host(mta-o.provider) 6811 b=AS:64 6812 t=907165275 0 6813 a=X-pc-csuites:312F 6814 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6815 a=rtpmap:0 PCMU/8000 6816 a=rtpmap:96 G726-32/8000 6817 m=audio 3456 RTP/AVP 0 6818 a=qos:mandatory sendrecv 6819 a=X-pc-codecs:96 6821 Upon receiving this message, MTA-t determines that the line 6822 associated with 212-555-2222 is having all calls forwarded. It 6823 issues a REDIRECT (302) response to indicate that it wants the call 6824 forwarded. This message carries the forwarding number in the Contact 6825 header. 6827 (2) 302-Redirect 6828 SIP/2.0 302 Moved Temporarily 6829 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6830 o.provider); branch=1"; via=Host(mta-o.provider)}K 6831 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6832 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6833 state="Host(dp-o.provider); nexthop=sip:555- 6834 1111@Host(mta-o.provider); gate=Host(cmts- 6835 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6836 2222; num-redirects=0"}K" 6837 Remote-Party-ID: John Smith 6838 Anonymity: off 6839 From: "Alien Blaster" 6841 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6842 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6843 Cseq: 127 INVITE 6844 Contact: tel:555-3333 6846 Proxy-t knows that MTA-t is under surveillance, and includes the 6847 Dcs-Laes header in the 302-Redirect response sent back to CMS-o. 6849 DCS Group Category: Informational - Expiration 8/31/02 132 6850 DCS Architecture February 2002 6852 This header contains the delivery function information needed by the 6853 new destination of the call. 6855 (3) 302-Redirect 6856 SIP/2.0 302 Moved Temporarily 6857 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 6858 Via: SIP/2.0/UDP Host(mta-o.provider) 6859 Proxy-Require: dcs 6860 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6861 555-1111/212-555-2222> 6862 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 6863 555-2222/212-555-3333> 6864 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6865 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6866 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6867 orig-dest=tel:+1-212-555-2222; num-redirects=0 6868 Remote-Party-ID: John Smith 6869 Anonymity: off 6870 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 6871 From: "Alien Blaster" 6873 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6874 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6875 Cseq: 127 INVITE 6876 Contact: tel:+1-212-555-3333 6878 Proxy-o determines the Proxy-f for the E.164 number 212-555-3333 6879 when it receives the 302-Redirect message. It generates an INVITE 6880 message and sends it to Proxy-f. Proxy-o adds the Dcs-Laes header to 6881 this INVITE, with the delivery function information received from 6882 Proxy-t. Proxy-o adds the Dcs-Redirect header giving the 6883 information about this call redirection. 6885 (6) INVITE: 6886 INVITE sip:+1-212-555-3333;rn=+1-212-265-3333; 6887 npdi=yes@Host(dp-f) ;user=phone SIP/2.0 6888 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 2 6889 Via: SIP/2.0/UDP Host(mta-o.provider); 6890 Supported: 100rel, state 6891 Require: state 6892 Proxy-Require: dcs, state 6893 Remote-Party-ID: John Doe; 6894 Anonymity: Off 6895 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 6896 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6897 555-1111/212-555-2222> 6898 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 6899 555-2222/212-555-3333> 6900 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6901 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6902 orig-dest=tel:+1-212-555-2222; num-redirects=1 6903 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 6904 Dcs-Redirect: 1 6906 DCS Group Category: Informational - Expiration 8/31/02 133 6907 DCS Architecture February 2002 6909 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6910 From: "Alien Blaster" 6912 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6913 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6914 CSeq: 127 INVITE 6915 Contact: sip:Host(mta-o.provider) 6916 Content-Type: application/sdp 6917 Content-length: (.) 6919 v=0 6920 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6921 s=- 6922 c= IN IP4 Host(mta-o.provider) 6923 b=AS:64 6924 t=907165275 0 6925 a=X-pc-csuites:312F 6926 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6927 a=rtpmap:0 PCMU/8000 6928 a=rtpmap:96 G726-32/8000 6929 m=audio 3456 RTP/AVP 0 6930 a=qos:mandatory sendrecv 6931 a=X-pc-codecs:96 6933 Upon receiving this INVITE, Proxy-f queries the directory server to 6934 determine the IP address (MTA-f) associated with 212-555-3333. It 6935 then forwards the INVITE message to MTA-f. Included in the State 6936 header is the additional surveillance information. 6938 (7) INVITE: 6939 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 6940 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 6941 o.provider); branch=1"; via=Host(mta-o.provider)}K 6942 Supported: 100rel, state 6943 Require: state 6944 Remote-Party-ID: John Doe 6945 Media-Authorization: 22S21718 6946 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 6947 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 6948 laes=full; redirect= 1; state="Host(dp-o.provider); 6950 nexthop=sip:555-1111@Host(mta-o.provider); 6951 gate=Host(cmts-o.provider):3612/17S30124; orig- 6952 dest=tel:+1-212-555-2222; num-redirects=1"}K" 6953 From: "Alien Blaster" 6955 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6956 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6957 Cseq: 127 INVITE 6958 Contact: sip:Host(mta-o.provider) 6959 Content-Type: application/sdp 6960 Content-length: (.) 6962 DCS Group Category: Informational - Expiration 8/31/02 134 6963 DCS Architecture February 2002 6965 v=0 6966 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6967 s=- 6968 c= IN IP4 Host(mta-o.provider) 6969 b=AS:64 6970 t=907165275 0 6971 a=X-pc-csuites:312F 6972 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6973 a=rtpmap:0 PCMU/8000 6974 a=rtpmap:96 G726-32/8000 6975 m=audio 3456 RTP/AVP 0 6976 a=qos:mandatory sendrecv 6977 a=X-pc-codecs:96 6979 The subsequent signaling call flows are identical to those shown in 6980 Section 10.5. 6982 10.19.2 Call-Transfer-Blind with Transferer under Surveillance 6984 MTA-o Proxy-o Proxy-t MTA-t 6986 | | | | 6987 |<-----------------call-in-progress------------------->| 6988 | | | (1) REFER | 6989 | | (2) REFER |<------------------| 6990 | (3) REFER |<--------------| | 6991 |<-----------------| | | 6992 | | 6993 | | Proxy-f MTA-f 6994 | (4) INVITE | | | 6995 |----------------->| (5) INVITE | | 6996 | |-------------->| (6) INVITE | 6997 | | |------------------>| 6998 | | | (7) 183 SDP | 6999 | | (8) 183 SDP |<------------------| 7000 | (9) 183 SDP |<--------------| : 7001 |<-----------------| : : 7002 : : : (10) 200 OK | 7003 : : (11) 200 OK |<------------------| 7004 | (12) 200 OK |<--------------| | 7005 |<-----------------| | | 7006 | | 7007 | | Proxy-t MTA-t 7008 | (13) 200 OK | | | 7009 |----------------->| (14) 200 OK | | 7010 | |-------------->| (15) 200 OK | 7011 | | (16) ACK |------------------>| 7012 |<-----------------------------------------------------| 7013 | | (17) BYE | | 7014 |----------------------------------------------------->| 7015 | | (18) 200 OK | | 7017 DCS Group Category: Informational - Expiration 8/31/02 135 7018 DCS Architecture February 2002 7020 |<-----------------------------------------------------| 7021 | | 7023 For this example, consider an existing call initiated by MTA-o to 7024 MTA-t (with MTA-t under surveillance), with the following call 7025 identification. The only difference from a normal call from MTA-o 7026 to MTA-t, as given elsewhere in this specification, is the addition 7027 of "laess=full" in the encrypted call state information associated 7028 with Proxy-t. 7030 MTA-t state for call from MTA-o to MTA-t 7031 From: "Alien Blaster" 7033 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7034 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7035 Contact: sip:Host(mta-o.provider) 7036 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7037 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7038 laes=full; state="Host(dp-o.provider); nexthop=sip:555- 7039 1111@Host(mta-o.provider); gate=Host(cmts- 7040 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7041 2222; num-redirects=0"}K" 7042 Dcs-Billing-Info: Host(rks-o.provider)/04FA37<5123-0123-4567- 7043 8900/212-555-1111/212-555-2222> 7044 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7046 The basic call flow for call transfer is identical to that given in 7047 Section 10.11, and only the differences are noted here. 7048 MTA-t desires to transfer the existing call to 555-3333 and issues a 7049 REFER message, identical to (1) in Section 10.11. 7050 Proxy-t decrypts the State information and sees the "laes=full." It 7051 inserts one additional header component into the Refer-to header, 7052 giving the local Electronic Surveillance Delivery Function's (DF's) 7053 address information and security key to use for messages to the DF. 7054 Since surveillance was marked as "full," it adds the DF's address 7055 for both signaling information and for call content. 7057 (2) REFER: 7058 REFER sip: Host(dp-o.provider) SIP/2.0 7059 Via: SIP/2.0/UDP Host(dp-t.provider) 7060 Via: SIP/2.0/UDP Host(mta-t.provider) 7061 Supported: 100rel, state 7062 Proxy-Require: dcs 7063 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7064 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7065 orig-dest=tel:+1-212-555-2222; num-redirects=0 7066 Refer-to: tel:+1-212-555-3333? Dcs-Billing-Info= Host(rks- 7067 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7068 2222> & Dcs-Billing-Info= Host(rks-t.provider)<4278- 7069 9865-8765-9000/212-555-2222/212-555-3333> & Dcs- 7070 Billing-ID= Host(dp-o.provider): 36123E5C:0152 & Dcs- 7071 Laes= Host(df-t)/Host(df-t);surveillancekey & Dcs- 7072 Redirect=1 7074 DCS Group Category: Informational - Expiration 8/31/02 136 7075 DCS Architecture February 2002 7077 Remote-Party-ID: John Smith 7078 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7079 To: "Alien Blaster" 7081 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7082 Cseq: 8001 REFER 7083 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 7084 seq=73))@localhost 7086 Proxy-o includes the Dcs-Laes information in the encrypted URL given 7087 to MTA-t. 7089 (3) REFER: 7090 REFER sip: Host(mta-o.provider) SIP/2.0 7091 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 7092 t.provider); branch=1"; via=Host(mta-t.provider)}K 7093 Supported: 100rel, stateRefer-to: sip:{type=transfer; 7094 dest=tel:+1-212-555-3333; billing-id=Host(dp-o.provider): 7095 36123E5C:0152; expires=; billing-info=Host(rks- 7096 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7097 2222>; billing-info=Host(rks-t.provider)<4278-9865- 7098 8765-9000/212-555-2222/212-555-3333>; laes="Host(df- 7099 t)/Host(df-t);surveillancekey"; redirect=1}K@Host(dp- 7101 o.provider); user=private 7102 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7103 To: "Alien Blaster" 7105 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7106 Cseq: 8001 REFER 7107 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 7108 seq=73))@localhost 7110 After processing the REFER, MTA-o issues a INVITE to MTA-f. In 7111 addition to the standard headers carried in an INVITE message, the 7112 encrypted Dcs-Laes fields received in the REFER message are copied 7113 into the INVITE message. 7115 (4) INVITE: 7116 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 7117 id=Host(dp-o.provider): 36123E5C:0152; 7118 expires=; billing-info=Host(rks- 7119 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7120 2222>; billing-info=Host(rks-t.provider)<4278-9865- 7121 8765-9000/212-555-2222/212-555-3333>; laes="Host(df- 7122 t)/Host(df-t);surveillancekey"; redirect=1}K@Host(dp- 7124 o.provider); user=private SIP/2.0 7125 Via: SIP/2.0/UDP Host(mta-o.provider) 7126 Supported: 100rel, state 7127 Remote-Party-ID: John Doe 7128 Anonymity: Off 7130 DCS Group Category: Informational - Expiration 8/31/02 137 7131 DCS Architecture February 2002 7133 From: "Alien Blaster" 7135 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7136 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7137 Cseq: 129 INVITE 7138 Contact: sip:Host(mta-o.provider) 7139 Content-Type: application/sdp 7140 Content-length: (.) 7142 v=0 7143 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7144 s=- 7145 c= IN IP4 Host(mta-o.provider) 7146 b=AS:64 7147 t=907165275 0 7148 a=X-pc-csuites:312F 7149 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7150 a=rtpmap:0 PCMU/8000 7151 a=rtpmap:96 G726-32/8000 7152 m=audio 3456 RTP/AVP 0 7153 a=qos:mandatory sendrecv 7154 a=X-pc-codecs:96 7156 When the Proxy-o receives the INVITE it decrypts the header 7157 information to find the real destination, and discovers the Dcs-Laes 7158 information. This is included in the INVITE message sent to Proxy- 7159 f. Proxy-o also includes a Dcs-Redirect header giving the original 7160 destination for the call from MTA-o, the forwarding endpoint, and 7161 the number of redirections that have occurred to this call. 7163 (5) INVITE: 7164 INVITE sip: +1-212-555-3333;rn=+1-212-265-3333; 7165 npdi=yes@Host(dp-f);user=phone SIP/2.0 7166 Via: SIP/2.0/UDP Host(dp-o.provider); branch=1; 7167 Via: SIP/2.0/UDP Host(mta-o.provider); 7168 Supported: 100rel, state 7169 Require: state 7170 Proxy-Require: dcs, state 7171 Remote-Party-ID: John Doe 7172 Anonymity: Off 7173 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 7174 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 7175 555-1111/212-555-2222> 7176 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 7177 555-2222/212-555-3333> 7178 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7179 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7180 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7181 orig-dest=tel:+1-212-555-2222; num-redirects=1 7182 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 7183 Dcs-Redirect: 1 7184 From: "Alien Blaster" 7187 DCS Group Category: Informational - Expiration 8/31/02 138 7188 DCS Architecture February 2002 7190 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7191 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7192 Cseq: 129 INVITE 7193 Contact: sip:Host(mta-o.provider) 7194 Content-Type: application/sdp 7195 Content-length: (.) 7197 v=0 7198 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7199 s=- 7200 c= IN IP4 Host(mta-o.provider) 7201 b=AS:64 7202 t=907165275 0 7203 a=X-pc-csuites:312F 7204 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7205 a=rtpmap:0 PCMU/8000 7206 a=rtpmap:96 G726-32/8000 7207 m=audio 3456 RTP/AVP 0 7208 a=qos:mandatory sendrecv 7209 a=X-pc-codecs:96 7211 Upon receiving this INVITE, Proxy-f includes the surveillance 7212 information in its Gate-Set command, and passes the call-identifying 7213 information to its local Electronic Surveillance Delivery Function 7214 (DF-f) who passes the information on to DF-t. The encrypted State 7215 value stored at MTA-f includes the surveillance parameters needed 7216 for possible mid-call transfers. 7218 (6) INVITE: 7219 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 7220 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 7221 o.provider); branch=1"; via=Host(mta-o.provider)}K 7222 Supported: 100rel, state 7223 Require: state 7224 Remote-Party-ID: John Doe; 7225 Media-Authorization: 31S14621 7226 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7227 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7228 laes=full; redirect=1; state="Host(dp-o.provider); 7230 nexthop=sip:555-1111@Host(mta-o.provider); 7231 gate=Host(cmts-o.provider):3612/17S30124; orig- 7232 dest=tel:+1-212-555-2222; num-redirects=0"}K" 7233 From: "Alien Blaster" 7235 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7236 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7237 Cseq: 129 INVITE 7238 Contact: sip:Host(mta-o.provider) 7239 Content-Type: application/sdp 7240 Content-length: (.) 7242 v=0 7244 DCS Group Category: Informational - Expiration 8/31/02 139 7245 DCS Architecture February 2002 7247 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7248 s=- 7249 c= IN IP4 Host(mta-o.provider) 7250 b=AS:64 7251 t=907165275 0 7252 a=X-pc-csuites:312F 7253 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7254 a=rtpmap:0 PCMU/8000 7255 a=rtpmap:96 G726-32/8000 7256 m=audio 3456 RTP/AVP 0 7257 a=qos:mandatory sendrecv 7258 a=X-pc-codecs:96 7260 When the new call completes, MTA-o acknowledges receipt of the REFER 7261 by sending a 200-OK to MTA-t. This is identical to Section 10.11. 7263 Remainder of the call is identical to the basic call flow shown in 7264 Section 10.11, and is not repeated here. 7266 10.19.3 Call-Transfer with new destination unable to do interception 7268 If CMS-f determines that it is unable to perform the required 7269 surveillance, it passes the request back to CMS-o. This occurs, for 7270 instance, if the new destination of this redirected call is a 7271 voicemail server, or a announcement server, or a bridge server, or 7272 any other network server that does not implement the capability to 7273 intercept the media packets. CMS-f includes the Dcs-Laes header in 7274 the 183-Session-Progress message as follows: 7276 (8) 183-Session-Progress: 7277 SIP/2.0 183 Session Progress 7278 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7279 Via: SIP/2.0/UDP Host(mta-o.provider) 7280 Require: 100rel 7281 Proxy-Require: dcs 7282 State: Host(dp-f.provider); nexthop=sip:555-3333Host(mta- 7283 f.provider); gate=Host(cmts-f.provider):4321/31S14621; 7284 orig-dest=tel:+1-212-555-1111; num-redirects=0 7285 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7286 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7287 orig-dest=tel:+1-212-555-2222; num-redirects=1 7288 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 7289 Remote-Party-ID: John Smith 7290 Anonymity: off 7291 Dcs-Laes: Host(df-o)/Host(df-o);surveillancekey 7292 From: "Alien Blaster" 7294 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7295 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7296 Cseq: 127 INVITE 7298 DCS Group Category: Informational - Expiration 8/31/02 140 7299 DCS Architecture February 2002 7301 Rseq: 9021 7302 Content-Disposition: precondition 7303 Contact: sip:Host(mta-t.provider) 7304 Content-Type: application/sdp 7305 Content-length: (.) 7307 v=0 7308 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7309 s=- 7310 c= IN IP4 Host(mta-t.provider) 7311 b=AS:64 7312 t=907165275 0 7313 a=X-pc-csuites:312F 7314 a=rtpmap:0 PCMU/8000 7315 m=audio 6544 RTP/AVP 0 7316 a=qos:mandatory sendrecv confirm 7318 Proxy-o performs the surveillance in its Gate-Set command to its 7319 CMTS. Remainder of the call flow is identical to a normal call. 7321 10.19.4 Call-Transfer-Consultative with Transferer under Surveillance 7323 MTA-o MTA-t1 Proxy-o Proxy-t2 MTA-t2 7325 | (1) REFER | | | 7326 |----------------->| (2) REFER | | 7327 | | |-------------->| (3) REFER | 7328 | | | |------------------>| 7329 | | | | 7330 | | Proxy-t1 | (4) INVITE | 7331 | | | (5)INVITE |<------------------| 7332 | |(6)INVITE|<--------------| | 7333 | |<--------| | | 7334 | | (7)SDP | | | 7335 | |-------->| (8) SDP | | 7336 | | |-------------->| (9) SDP | 7337 | | | (10) PRACK |------------------>| 7338 | |<--------------------------------------------| 7339 | | | (11) 200 OK | | 7340 | |-------------------------------------------->| 7341 | | | (12) COMET | | 7342 | |<--------------------------------------------| 7343 | | | (13) 200 OK | | 7344 | |-------------------------------------------->| 7345 | |(14)200 | | | 7346 | |-------->| (15) 200 OK | | 7347 | | |-------------->| (16) 200 OK | 7348 | | | (17) ACK |------------------>| 7349 | |<--------------------------------------------| 7350 | | | | | 7351 | | Proxy-o | (17) 200 OK | 7352 | | | (18)200 OK |<------------------| 7354 DCS Group Category: Informational - Expiration 8/31/02 141 7355 DCS Architecture February 2002 7357 | (19) 200 OK |<--------------| | 7358 |<-----------------| | | 7359 | | | (20) BYE | | 7360 |----------------------------------------------------->| 7361 | | | (21) 200 OK | | 7362 |<-----------------------------------------------------| 7363 |(22)BYE | | | | 7364 |------->| | | | 7365 |(23)200 | | | | 7366 |<-------| | | | 7368 After some period of consultation, MTA-o initiates a transfer of the 7369 call from MTA-t1 to the new destination, MTA-t2. This involves 7370 placing the second call on hold (message sequence described 7371 earlier), and sending an INVITE(also,replace) message to MTA-t2, 7372 giving it the information about the call with MTA-t1 in the Also: 7373 header. The INVITE message, since it changes parties involved in 7374 the call, is routed through the proxies. The sequence is shown in 7375 the figure above, and detailed below. 7377 For this example, consider a call initiated by MTA-t1 to MTA-x, with 7378 MTA-x under surveillance, where MTA-x performed a blind transfer to 7379 MTA-o. The call between MTA-t1 and MTA-o is therefore under 7380 surveillance. MTA-o desires to transfer the call (with 7381 consultation) to MTA-t2. After placing the call to MTA-t2, and 7382 placing that call on hold, MTA-o initiates a transfer by sending a 7383 REFER to MTA-t2, routed through the proxies. 7385 The basic call flow for consultative transfer is identical to that 7386 given in Section 10.12, and only the differences due to surveillance 7387 are noted here. 7389 (1) REFER: 7390 REFER sip: Host(mta-t2.provider) SIP/2.0 7391 Via: SIP/2.0/UDP Host(mta-o.provider) 7392 Supported: 100rel, state 7393 Remote-Party-ID: John Doe 7394 Anonymity: off 7395 Refer-to: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 7396 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7397 & State= Host(dp-o.provider); 7398 state="{nexthop=sip:Host(dp-t1.provider); 7399 gate=Host(cmts-o.provider):3612/17S30124; laes=full; 7400 redirect=2; 7401 state="Host(dp-t1.provider); nexthop=sip:555- 7402 2222@Host(mta-t1.provider); gate=Host(cmts- 7403 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7404 1111; num-redirects=0"}K" 7405 State: Host(dp-o.provider); state="{gate= Host(cmts- 7406 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 7407 3333;rn=+1-212-256-3333@Host(dp-t2.provider), 7408 state="Host(dp- t2.provider); nexthop=sip:555- 7410 DCS Group Category: Informational - Expiration 8/31/02 142 7411 DCS Architecture February 2002 7413 3333@Host(mta- t2.provider); gate=Host(cmts- 7414 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7415 1111; num-redirects=0"}K" 7416 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7417 To: tel:555-3333 7418 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7419 CSeq: 133 REFER 7420 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7421 seq=23))@localhost 7423 Proxy-o decrypts the State information in the Refer-To header to 7424 determine the local state information. Proxy-o inserts billing 7425 information and Electronis Surveillance information into the Refer- 7426 To header. Proxy-o then forwards the message to Proxy-t1. 7428 (2) REFER: 7429 REFER sip: Host(dp-o.provider) SIP/2.0 7430 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7431 Via: SIP/2.0/UDP Host(mta-o.provider) 7432 Supported: 100rel, state 7433 Proxy-Require: dcs 7434 State: Host(dp-t2.provider); nexthop=sip:555-3333@Host(mta- 7435 t2.provider); gate=Host(cmts- 7436 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7437 1111; num-redirects=0 7438 Refer-to: tel:+1-212-555-2222? Call-ID=B64(SHA-1(555- 7439 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7440 & Dcs-Billing-Info= Host(rks-t1.provider)<4278-9865- 7441 8765-9000/212-555-2222/212-555-1111> & Dcs-Billing- 7442 Info= Host(rks-t2.provider)<5123-0123-4567-8900/212- 7443 555-1111/212-555-3333> & Dcs-Billing-ID= Host(dp- 7444 o.provider): 36123E5C:0152 & Dcs-Laes=Host(df- 7445 o)/Host(df-o);securitykey & Dcs-Redirect=2 7447 Remote-Party-ID: John Smith 7448 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7449 To: tel:555-3333 7450 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7451 CSeq: 133 REFER 7452 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7453 seq=23))@localhost 7455 Proxy-t2 forwards the REFER message to MTA-t2 after encrypting the 7456 destination of the transfer, and the Electronic Surveillance 7457 headers. 7459 (3) REFER: 7460 REFER sip: 555-3333@Host(mta-t2.provider) SIP/2.0 7461 Via: SIP/2.0/UDP Host(dp-t2.provider), {via="Host(dp- 7462 o.provider); branch=1"; via=Host(mta-o.provider)}K 7463 Supported: 100rel, state 7464 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-2222; 7465 billing-id=Host(dp-o.provider): 36123E5C:0152; 7467 DCS Group Category: Informational - Expiration 8/31/02 143 7468 DCS Architecture February 2002 7470 expires=; billing-info= Host(rks- 7471 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 7472 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 7473 4567-8900/212-555-1111/212-555-3333>; laes=Host(df- 7474 o)/Host(df-o);securitykey & redirect=2}K@Host(dp-t2.provider); 7476 user=private ? Call-ID=B64(SHA-1(555- 7477 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7478 Remote-Party-ID: John Smith 7479 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7480 To: tel:555-3333 7481 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7482 CSeq: 133 INVITE 7483 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7484 seq=23))@localhost 7486 After processing the REFER, MTA-t2 issues a INVITE to MTA-t1. In 7487 addition to the standard headers carried in an INVITE message, the 7488 encrypted {Dcs-Laes, Dcs-Redirect} fields received in the REFER 7489 message are copied into the Request-URI of the INVITE message. These 7490 fields indicate the surveillance information. 7492 (4) INVITE: 7493 INVITE sip:{type=transfer; dest=tel:+1-212-555-2222; billing- 7494 id=Host(dp-o.provider): 36123E5C:0152; 7495 expires=; billing-info= Host(rks- 7496 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 7497 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 7498 4567-8900/212-555-1111/212-555-3333>; laes=Host(df- 7499 o)/Host(df-o);securitykey & redirect=2}K@Host(dp-t2.provider); 7501 user=private SIP/2.0 7502 Via: SIP/2.0/UDP Host(mta-t2.provider) 7503 Supported: 100rel, state 7504 Remote-Party-ID: John Smith 7505 Anonymity: Off 7506 From: "Alien Blaster" 7508 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 7509 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 7510 Cseq: 129 INVITE 7511 Referred-by: tel:555-1111 7512 Contact: sip:Host(mta-t2.provider) 7513 Content-Type: application/sdp 7514 Content-length: (.) 7516 v=0 7517 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7518 s=- 7519 c= IN IP4 Host(mta-t2.provider) 7520 b=AS:64 7521 t=907165275 0 7523 DCS Group Category: Informational - Expiration 8/31/02 144 7524 DCS Architecture February 2002 7526 a=X-pc-csuites:312F 7527 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7528 a=rtpmap:0 PCMU/8000 7529 a=rtpmap:96 G726-32/8000 7530 m=audio 3456 RTP/AVP 0 7531 a=qos:mandatory sendrecv 7532 a=X-pc-codecs:96 7534 When the Proxy-t2 receives the INVITE it first decrypts the header 7535 information to find the real destination for the call, and the 7536 surveillance information. 7538 (5) INVITE: 7539 INVITE sip: +1-212-555-2222;rn=+1-212-265-2222; 7540 npdi=yes@Host(dp-t1);user=phone SIP/2.0 7541 Via: SIP/2.0/UDP Host(dp-t2.provider); branch=1; 7542 Via: SIP/2.0/UDP Host(mta-t2.provider); 7543 Supported: 100rel, state 7544 Require: state 7545 Proxy-Require: dcs, state 7546 Remote-Party-ID: John Smith 7547 Anonymity: Off 7548 Dcs-Gate: Host(cmts-t2.provider):3612/17S30124/37FA1948 7549 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 7550 9000/212-555-2222/212-555-1111> 7551 Dcs-Billing-Info: Host(rks-t2.provider)<5123-0123-4567- 7552 8900/212-555-1111/212-555-3333> 7553 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7554 Dcs-Laes: Host(df-o)/Host(df-o);securitykey 7555 Dcs-Redirect: 2 7556 From: "Alien Blaster" 7558 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 7559 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 7560 Cseq: 129 INVITE 7561 Referred-by: tel:555-1111 7562 Contact: sip:Host(mta-t2.provider) 7563 Content-Type: application/sdp 7564 Content-length: (.) 7566 v=0 7567 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7568 s=- 7569 c= IN IP4 Host(mta-o.provider) 7570 b=AS:64 7571 t=907165275 0 7572 a=X-pc-csuites:312F 7573 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7574 a=rtpmap:0 PCMU/8000 7575 a=rtpmap:96 G726-32/8000 7576 m=audio 3456 RTP/AVP 0 7577 a=qos:mandatory sendrecv 7578 a=X-pc-codecs:96 7580 DCS Group Category: Informational - Expiration 8/31/02 145 7581 DCS Architecture February 2002 7583 Upon receiving this INVITE, Proxy-t1 queries the directory server to 7584 determine the IP address (MTA-t1) associated with 212-555-2222. It 7585 then forwards the INVITE message to MTA-t1, after stripping off all 7586 of the billing fields, and adding the encrypted state information. 7587 Remainder of the call completes as shown in Section 10.12. 7589 10.20 Privacy with Application-level Anonymizer 7591 MTA-o ANON-o Proxy-o Proxy-t ANON-t MTA-t 7593 | (1)Invite | | | | 7594 |-------------------->| | | | 7595 | | (2)CREAT | | | | 7596 | |<---------|(4)Invite | (5)CREAT | | 7597 | |-(3)ACK-->|--------->|--------->| | 7598 | | | |<-(6)ACK--| | 7599 | | | |(7)Invite | | 7600 | | | |-------------------->| 7601 | | | | (8) 183 SDP | 7602 | | | |<--------------------| 7603 | | | |(9)MODIFY | | 7604 | | | |--------->| | 7605 | | |(11)183SDP|<-(10)ACK-| | 7606 | |(12)MODIFY|<---------| | | 7607 | |<---------| | | | 7608 |(14)183SDP|-(13)ACK->| | | | 7609 |<--------------------| | | | 7610 |(15)PRACK | (16) PRACK |(17)PRACK | 7611 |--------->|------------------------------->|--------->| 7612 |(20)200 OK| (19) 200 OK |(18)200 OK| 7613 |<---------|<-------------------------------|<---------| 7614 |(21)COMET | (22) COMET |(23)COMET | 7615 |--------->|--------- --------------------->|--------->| 7616 |(26)200 OK| (25) 200 OK |(24)200 OK| 7617 |<---------|----------|----------|----------|----------| 7618 | | | | |(27)180 Rg| 7619 | | |(28) 180 |<--------------------| 7620 | (29)180 Ring |<---------| | | 7621 |<---------|----------| | | | 7622 |(30)PRACK | (31) PRACK |(32)PRACK | 7623 |--------->|------------------------------->|--------->| 7624 |(35)200 OK| (34) 200 OK |(33)200 OK| 7625 |<---------|<-------------------------------|----------| 7626 | | | | | | 7627 | | | | (36) 200 OK | 7628 | | |(37)200 OK|<--------------------| 7629 | (38) 200 OK |<---------| | | 7630 |<--------------------| | | | 7631 |(39) ACK | | (40) ACK | |(41) ACK | 7632 |--------->|--------------------------------|--------->| 7633 | | | | | | 7635 DCS Group Category: Informational - Expiration 8/31/02 146 7636 DCS Architecture February 2002 7638 |<--------------------Active Call-------------------->| 7639 |(42) BYE | |(43) BYE | |(44) BYE | 7640 |--------->|------------------------------->|--------->| 7641 |(47)200 OK| |(46)200 OK| |(45)200 OK| 7642 |<---------|<-------------------------------|<---------| 7644 The call begins identically to that shown in Section 10.1 of a basic 7645 MTA-originated call. The only difference at the originating MTA is 7646 that the Anonymity header is set to "Full" or includes "IPAddr." 7648 (1) INVITE: 7649 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 7650 Via: SIP/2.0/UDP Host(mta-o.provider) 7651 Supported: 100rel, state 7652 Proxy-Require: privacy 7653 Remote-Party-ID: John Doe 7654 Anonymity: Full 7655 From: "Alien Blaster" 7657 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7658 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7659 Cseq: 127 INVITE 7660 Contact: sip:Host(mta-o.provider) 7661 Content-Type: application/sdp 7662 Content-length: (.) 7664 v=0 7665 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7666 s=- 7667 c= IN IP4 Host(mta-o.provider) 7668 b=AS:64 7669 t=907165275 0 7670 a=X-pc-csuite:312F 7671 a=rtpmap:0 PCMU/8000 7672 a=rtpmap:96 G726-32/8000 7673 m=audio 3456 RTP/AVP 0 7674 a=qos:mandatory sendrecv 7675 a=X-pc- codecs:96 7677 In addition to its normal functions, Proxy-o also checks the 7678 Anonymity indication which is set to "full", so both caller- 7679 id/calling name blocking and IP address privacy must be provided. 7680 Proxy-o therefore contacts the anonymizer to create an anonymous 7681 session: 7683 (2) ANON_Create: 7684 ANON_Create 7685 Endpoint1: Host(mta-o.provider):Port(mta-o.provider) 7686 Endpoint2: 7688 The anonymizer responds back with an anonymizer endpoint address: 7690 (3) ANON_Ack: 7692 DCS Group Category: Informational - Expiration 8/31/02 147 7693 DCS Architecture February 2002 7695 ANON_Ack 7696 AnonAddr: Host(ann-o.provider):Port(ann-o.provider) 7698 The anonymizer implements a packet relay and call signaling gateway 7699 between the two endpoints. The first endpoint specified in the 7700 ANON_Create will receive the anonymizer service. Any packet received 7701 for the anonymizer address specified will be forwarded to Endpoint1. 7702 Any packet sent by Endpoint1 to the anonymizer address will be 7703 forwarded to Endpoint2, but now with a source address of AnonAddr. 7705 Having received the anonymizer address for the call, Proxy-o 7706 generates the following INVITE message and sends it to Proxy-t. 7707 Proxy-omodifies a number of parameters to the INVITE message. 7709 (4) INVITE: 7710 INVITE sip:+1-212-555-2222;rn=+1-212-234-2222; 7711 npdi=yes@Host(dp-t);user=phone SIP/2.0 7712 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 7713 Via: SIP/2.0/UDP Host(mta-o.provider) 7714 Supported: 100rel, state 7715 Require: state 7716 Proxy-Require: dcs, state, privacy 7717 Remote-Party-ID: John Doe; 7718 Anonymity: Full 7719 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 7720 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 7721 555-1111/212-555-2222> 7722 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7723 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7724 orig-dest=tel:+1-212-555-2222; num-redirects=0 7725 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7726 From: "Alien Blaster" 7728 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7729 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7730 Cseq: 127 INVITE 7731 Contact: sip:Host(ann-o.provider) 7732 Content-Type: application/sdp 7733 Content-length: (.) 7735 v=0 7736 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7737 s=- 7738 c= IN IP4 Host(ann-o.provider) 7739 b=AS:64 7740 t=907165275 0 7741 a=X-pc-csuites:312F 7742 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7743 a=rtpmap:0 PCMU/8000 7744 a=rtpmap:96 G726-32/8000 7745 m=audio Port(ann-o) RTP/AVP 0 7746 a=qos:mandatory sendrecv 7747 a=X-pc-codecs:96 7749 DCS Group Category: Informational - Expiration 8/31/02 148 7750 DCS Architecture February 2002 7752 Proxy-t also checks the Anonymity indication which is set to "full", 7753 so both caller-id/calling name blocking and IP address privacy must 7754 be provided. We furthermore assume, that MTA-t has requested 7755 privacy, i.e. the originating party must not be able to tell the IP- 7756 address of MTA-t. Proxy-t therefore contacts an anonymizer to create 7757 an anonymous session: 7759 (5) ANON_Create: 7760 ANON_Create 7761 Endpoint1: 7762 Endpoint2: Host(ann-o.provider):Port(ann-o.provider) 7764 The anonymizer responds back with an anonymizer endpoint address: 7766 (6) ANON_Ack: 7767 ANON_Ack 7768 AnonAddr: Host(ann-t.provider):Port(ann-t.provider) 7770 The anonymizer implements a packet relay and call signaling gateway 7771 between the two endpoints. The first endpoint specified in the 7772 ANON_Create will receive the anonymizer service. Any packet received 7773 for the anonymizer address specified will be forwarded to Endpoint1. 7774 Any packet sent by Endpoint1 to the anonymizer address will be 7775 forwarded to Endpoint2, but now with a source address of AnonAddr. 7776 Proxy-t now generates the following INVITE message and sends it to 7777 MTA-t. 7779 (7) INVITE: 7780 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 7781 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 7782 o.provider); branch=1"; via=Host(mta-o.provider)}K 7783 Supported: 100rel, state 7784 Require: state 7785 Remote-Party-ID: ; rpi-id=private 7788 Media-Authorization: 31S14621 7789 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7790 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7791 state="Host(dp-o.provider); nexthop=sip:555- 7792 1111@Host(mta-o.provider); gate=Host(cmts- 7793 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7794 2222; num-redirects=0"}K" 7795 From: "Alien Blaster" 7797 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7798 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7799 Cseq: 127 INVITE 7800 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 7801 Content-Type: application/sdp 7802 Content-length: (.) 7804 DCS Group Category: Informational - Expiration 8/31/02 149 7805 DCS Architecture February 2002 7807 v=0 7808 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7809 s=- 7810 c= IN IP4 Host(ann-t.provider) 7811 b=AS:64 7812 t=907165275 0 7813 a=X-pc-csuites:312F 7814 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7815 a=rtpmap:0 PCMU/8000 7816 a=rtpmap:96 G726-32/8000 7817 m=audio Port(ann-t.provider) RTP/AVP 0 7818 a=qos:mandatory sendrecv 7819 a=X-pc-codecs:96 7821 Upon receiving this INVITE, MTA-t authenticates that the message 7822 came from Proxy-t using IPSec. MTA-t checks the telephone line 7823 associated with the E.164-t to see if it is available. If it is 7824 available, MTA-t looks at the capability parameters in the Session 7825 Description Protocol (SDP) part of the message and determines which 7826 media channel parameters it can accommodate for this call. MTA-t 7827 stores the INVITE message, including the encrypted State parameters, 7828 for later use. MTA-t puts this line in the "busy" state (so any 7829 other call attempts are rejected until this call clears), generates 7830 the following 183-Session-Progress response, and sends it to Proxy- 7831 t. MTA-t starts timer (T-proxy-response). 7833 (8) 183-Session-Progress: 7834 SIP/2.0 183 Session Progress 7835 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 7836 o.provider); branch=1"; via=Host(mta-o.provider)}K 7837 Require: 100rel 7838 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7839 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7840 state="Host(dp-o.provider); nexthop=sip:555- 7841 1111@Host(mta-o.provider); gate=Host(cmts- 7842 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7843 2222; num-redirects=0"}K" 7844 Remote-Party-ID: John Smith 7845 Anonymity: full 7846 From: "Alien Blaster" 7848 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7849 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7850 Cseq: 127 INVITE 7851 Rseq: 9021 7852 Content-Disposition: precondition 7853 Contact: sip:Host(mta-t.provider) 7854 Content-Type: application/sdp 7855 Content-length: (.) 7857 v=0 7858 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7859 s=- 7861 DCS Group Category: Informational - Expiration 8/31/02 150 7862 DCS Architecture February 2002 7864 c= IN IP4 Host(mta-t.provider) 7865 b=AS:64 7866 t=907165275 0 7867 a=X-pc-csuites:312F 7868 a=rtpmap:0 PCMU/8000 7869 m=audio 6544 RTP/AVP 0 7870 a=qos:mandatory sendrecv confirm 7872 Upon receiving the 183-Session-Progress message, Proxy-t updates the 7873 anonymizer with the MTA-t address information: 7875 (9) ANON_Modify: 7876 ANON_Modify 7877 Endpoint1: Host(mta-t.provider):Port(mta-t.provider) 7878 Endpoint2: Host(ann-o.provider):Port(ann-o.provider) 7880 The anonymizer responds back: 7882 (10) ANON_Ack: 7883 ANON_Ack 7885 Following the anonymizer update, Proxy-t then forwards the following 7886 183-Session-Progress message to Proxy-o, restoring the Via headers, 7887 and adding Dcs-Gate information. At this point Proxy-t has 7888 completed its transaction and does not maintain any more state for 7889 this call, processing all further signaling messages as a stateless 7890 proxy. 7892 (11) 183-Session-Progress: 7893 SIP/2.0 183 Session Progress 7894 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7895 Via: SIP/2.0/UDP Host(mta-o.provider) 7896 Require: 100rel 7897 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 7898 t.provider); gate=Host(cmts-t.provider):4321/31S14621 7899 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7900 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7901 orig-dest=tel:+1-212-555-2222; num-redirects=0 7902 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 7903 Remote-Party-ID: John Smith 7904 Anonymity: full 7905 From: "Alien Blaster" 7907 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7908 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7909 Cseq: 127 INVITE 7910 Rseq: 9021 7911 Content-Disposition: precondition 7912 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 7913 Content-Type: application/sdp 7914 Content-length: (.) 7916 v=0 7918 DCS Group Category: Informational - Expiration 8/31/02 151 7919 DCS Architecture February 2002 7921 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7922 s=- 7923 c= IN IP4 Host(ann-t.provider) 7924 b=AS:64 7925 t=907165275 0 7926 a=X-pc-csuites:312F 7927 a=rtpmap:0 PCMU/8000 7928 m=audio Port(ann-t.provider) RTP/AVP 0 7929 a=qos:mandatory sendrecv confirm 7931 Upon receiving the 183-Session-Progress message, Proxy-o informs the 7932 originating anonymizer about the second endpoint: 7934 (12) ANON_Modify: 7935 ANON_Modify 7936 Endpoint1: Host(mta-o.provider):Port(mta-o.provider) 7937 Endpoint2: Host(ann-t.provider) :Port(ann-t.provider) 7939 The anonymizer responds back: 7941 (13) ANON_Ack: 7942 ANON_Ack 7944 Subsequently, Proxy-o forwards the following 183-Session-Progress to 7945 MTA-o. At this point Proxy-o has completed its transaction and does 7946 not maintain any more state for this call, processing all further 7947 signaling messages as a stateless proxy. 7949 (14) 183-Session-Progress: 7950 SIP/2.0 183 Session Progress 7951 Via: Sip/2.0/UDP Host(mta-o.provider) 7952 Require: 100rel 7953 Media-Authorization: 17S30124 7954 State: Host(dp-o.provider); state="{gate= Host(cmts- 7955 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 7956 2222;rn=+1-212-234-2222@Host(DP-t), state="Host(dp- 7957 t.provider); nexthop=sip:555-2222@Host(mta-t.provider); 7958 gate=Host(cmts-t.provider):4321/31S14621; orig- 7959 dest=tel:+1-212-555-1111; num-redirects=0"}K" 7960 Remote-Party-ID: ; rpi-id=private 7963 From: "Alien Blaster" 7965 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7966 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7967 Cseq: 127 INVITE 7968 Rseq: 9021 7969 Content-Disposition: precondition 7970 Contact: sip:Host(ann-o.provider):Port(ann-o.provider) 7971 Content-Type: application/sdp 7972 Content-length: (.) 7974 DCS Group Category: Informational - Expiration 8/31/02 152 7975 DCS Architecture February 2002 7977 v=0 7978 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7979 s=- 7980 c= IN IP4 Host(ann-o.provider) 7981 b=AS:64 7982 t=907165275 0 7983 a=X-pc-csuites:312F 7984 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7985 a=rtpmap:0 PCMU/8000 7986 m=audio Port(ann-o) RTP/AVP 0 7987 a-X=pc-qos:mandatory sendrecv confirm 7989 Upon receiving the 183-Session-Progress message, MTA-o sends the 7990 following PRACK message indirectly to MTA-t through the anonymizer 7991 using the IP address in the Contact header of the 183-Session- 7992 Progress message. 7994 (15) PRACK: 7995 PRACK sip:Host(ann-o.provider) SIP/2.0 7996 Via: SIP/2.0/UDP Host(mta-o.provider) 7997 From: "Alien Blaster" 7999 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8000 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8001 Cseq: 128 PRACK 8002 Rack: 9021 127 INVITE 8003 Content-Type: application/sdp 8004 Content-length: (.) 8006 v=0 8007 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8008 s=- 8009 c= IN IP4 Host(mta-o.provider) 8010 b=AS:64 8011 t=907165275 0 8012 a=X-pc-csuites:312F 8013 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8014 a=rtpmap:0 PCMU/8000 8015 m=audio 3456 RTP/AVP 0 8016 a-qos:mandatory sendrecv 8018 ANN-o modifies the address information in the message and forwards 8019 it to ANN-t. 8021 (16) PRACK: 8022 PRACK sip:Host(ann-t.provider) SIP/2.0 8023 Via: SIP/2.0/UDP Host(ann-o.provider) 8024 From: "Alien Blaster" 8026 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8027 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8028 Cseq: 128 PRACK 8029 Rack: 9021 127 INVITE 8031 DCS Group Category: Informational - Expiration 8/31/02 153 8032 DCS Architecture February 2002 8034 Content-Type: application/sdp 8035 Content-length: (.) 8037 v=0 8038 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8039 s=- 8040 c= IN IP4 Host(ann-o.provider) 8041 b=AS:64 8042 t=907165275 0 8043 a=X-pc-csuites:312F 8044 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8045 a=rtpmap:0 PCMU/8000 8046 m=audio Port(ann-o.provider) RTP/AVP 0 8047 a-qos:mandatory sendrecv 8049 ANN-t modifies the address information in the message and forwards 8050 it to MTA-t. 8052 (17) PRACK 8053 PRACK sip:Host(mta-t.provider) SIP/2.0 8054 Via: SIP/2.0/UDP Host(ann-t.provider) 8055 From: "Alien Blaster" 8057 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8058 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8059 Cseq: 128 PRACK 8060 Rack: 9021 127 INVITE 8061 Content-Type: application/sdp 8062 Content-length: (.) 8064 v=0 8065 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8066 s=- 8067 c= IN IP4 Host(ann-t.provider) 8068 b=AS:64 8069 t=907165275 0 8070 a=X-pc-csuites:312F 8071 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8072 a=rtpmap:0 PCMU/8000 8073 m=audio Port(ann-t.provider) RTP/AVP 0 8074 a-qos:mandatory sendrecv 8076 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 8077 the resources necessary for the call. 8079 (18) 200 OK: 8080 SIP/2.0 200 OK 8081 Via: SIP/2.0/UDP Host(ann-t.provider) 8082 From: "Alien Blaster" 8084 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8085 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8086 Cseq: 128 PRACK 8088 DCS Group Category: Informational - Expiration 8/31/02 154 8089 DCS Architecture February 2002 8091 ANN-t modifies the address information in the message and forwards 8092 it to ANN-o. 8094 (19) 200 OK: 8095 SIP/2.0 200 OK 8096 Via: SIP/2.0/UDP Host(ann-o.provider) 8097 From: "Alien Blaster" 8099 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8100 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8101 Cseq: 128 PRACK 8103 ANN-o modifies the address information in the message and forwards 8104 it to MTA-o. 8106 (20) 200 OK: 8107 SIP/2.0 200 OK 8108 Via: SIP/2.0/UDP Host(mta-o.provider) 8109 From: "Alien Blaster" 8111 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8112 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8113 Cseq: 128 PRACK 8115 After sending PRACK(7), MTA-o attempts to reserve network resources 8116 if necessary. If resource reservation is successful, MTA-o sends 8117 the following COMET message directly to MTA-t. MTA-o starts timer 8118 (T-direct-request). 8120 (21) COMET: 8121 COMET sip:Host(ann-o.provider) SIP/2.0 8122 Via: SIP/2.0/UDP Host(mta-o.provider) 8123 From: "Alien Blaster" 8125 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8126 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8127 Cseq: 129 COMET 8128 Content-Type: application/sdp 8129 Content-length: (.) 8131 v=0 8132 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8133 s=- 8134 c= IN IP4 Host(mta-o.provider) 8135 b=AS:64 8136 t=907165275 0 8137 a=X-pc-csuites:312F 8138 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8139 a=rtpmap:0 PCMU/8000 8140 m=audio 3456 RTP/AVP 0 8141 a=qos:success send 8143 DCS Group Category: Informational - Expiration 8/31/02 155 8144 DCS Architecture February 2002 8146 ANN-o modifies the address information in the message and forwards 8147 it to ANN-t. 8149 (22) COMET: 8150 COMET sip:Host(ann-t.provider) SIP/2.0 8151 Via: SIP/2.0/UDP Host(ann-o.provider) 8152 From: "Alien Blaster" 8154 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8155 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8156 Cseq: 129 COMET 8157 Content-Type: application/sdp 8158 Content-length: (.) 8160 v=0 8161 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8162 s=- 8163 c= IN IP4 Host(ann-o.provider) 8164 b=AS:64 8165 t=907165275 0 8166 a=X-pc-csuites:312F 8167 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8168 a=rtpmap:0 PCMU/8000 8169 m=audio Port(ann-o.provider) RTP/AVP 0 8170 a=qos:success send 8172 ANN-t modifies the address information in the message and forwards 8173 it to MTA-t. 8175 (23) COMET: 8176 COMET sip:Host(mta-t.provider) SIP/2.0 8177 Via: SIP/2.0/UDP Host(ann-t.provider) 8178 From: "Alien Blaster" 8180 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8181 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8182 Cseq: 129 COMET 8183 Content-Type: application/sdp 8184 Content-length: (.) 8186 v=0 8187 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8188 s=- 8189 c= IN IP4 Host(ann-t.provider) 8190 b=AS:64 8191 t=907165275 0 8192 a=X-pc-csuites:312F 8193 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8194 a=rtpmap:0 PCMU/8000 8195 m=audio Port(ann-t.provider) RTP/AVP 0 8196 a=qos:success send 8198 MTA-t acknowledges the COMET message with a 200-OK. 8200 DCS Group Category: Informational - Expiration 8/31/02 156 8201 DCS Architecture February 2002 8203 (24) 200 OK: 8204 SIP/2.0 200 OK 8205 Via: SIP/2.0/UDP Host(ann-t.provider) 8206 From: "Alien Blaster" 8208 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8209 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8210 Cseq: 129 COMET 8212 ANN-t modifies the address information in the message and forwards 8213 it to ANN-o. 8215 (25) 200 OK: 8216 SIP/2.0 200 OK 8217 Via: SIP/2.0/UDP Host(ann-o.provider) 8218 From: "Alien Blaster" 8220 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8221 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8222 Cseq: 129 COMET 8224 ANN-o modifies the address information in the message and forwards 8225 it to MTA-o. 8227 (26) 200 OK: 8228 SIP/2.0 200 OK 8229 Via: SIP/2.0/UDP Host(mta-o.provider) 8230 From: "Alien Blaster" 8232 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8233 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8234 Cseq: 129 COMET 8236 Upon receipt of the 200-OK(26), MTA-o stops timer (T-direct- 8237 request). 8239 Upon receipt of the (17) PRACK message, MTA-t stops timer (T-proxy- 8240 response) and attempts to reserve network resources if necessary. 8241 Once MTA-t both receives the COMET message and has successfully 8242 reserved network resources, MTA-t begins to send ringing voltage to 8243 the designated line and sends the following 180 RINGING message 8244 through Proxy-t. MTA-t restarts the session timer (T3) with value 8245 (T-ringing). 8247 (27) 180 RINGING: 8248 SIP/2.0 180 Ringing 8249 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 8250 o.provider); branch=1"; via=Host(mta-o.provider)}K 8251 Require: 100rel 8252 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 8253 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 8254 state="Host(dp-o.provider); nexthop=sip:555- 8256 DCS Group Category: Informational - Expiration 8/31/02 157 8257 DCS Architecture February 2002 8259 1111@Host(mta-o.provider); gate=Host(cmts- 8260 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 8261 2222; num-redirects=0"}K" 8262 From: "Alien Blaster" 8264 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8265 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8266 Contact: sip:Host(mta-t.provider) 8267 Cseq: 127 INVITE 8268 Rseq: 9022 8270 Proxy-t decodes the Via: headers, and passes the 180-Ringing to 8271 Proxy-o. This operation is done as a SIP stateless proxy. 8273 (28) 180 RINGING: 8274 SIP/2.0 180 Ringing 8275 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 8276 Via: SIP/2.0/UDP Host(mta-o.provider) 8277 Require: 100rel 8278 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 8279 o.provider); gate=Host(cmts-o.provider):3612/17S30124 8280 From: "Alien Blaster" 8282 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8283 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8284 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 8285 Cseq: 127 INVITE 8286 RSeq: 9022 8288 Proxy-o handles the message as a SIP stateless proxy, and passes the 8289 180-Ringing to MTA-o. 8291 (29) 180 RINGING: 8292 SIP/2.0 180 Ringing 8293 Via: SIP/2.0/UDP Host(mta-o.provider) 8294 Require: 100rel 8295 From: "Alien Blaster" 8297 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8298 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8299 Contact: sip:Host(ann-o.provider):Port(ann-o.provider) 8300 Cseq: 127 INVITE 8301 RSeq: 9022 8303 Upon receipt of the 180 RINGING message, MTA-o restarts the 8304 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 8305 the provisional response with a PRACK, and plays audible ringback 8306 tone to the customer. 8308 (30) PRACK: 8309 PRACK sip:Host(ann-o.provider) SIP/2.0 8310 Via: SIP/2.0/UDP Host(mta-o.provider) 8312 DCS Group Category: Informational - Expiration 8/31/02 158 8313 DCS Architecture February 2002 8315 From: "Alien Blaster" 8317 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8318 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8319 Cseq: 130 PRACK 8320 RAck: 9022 127 INVITE 8322 ANN-o modifies the address information in the message and forwards 8323 it to ANN-t. 8325 (31) PRACK: 8326 PRACK sip:Host(ann-t.provider) SIP/2.0 8327 Via: SIP/2.0/UDP Host(ann-o.provider) 8328 From: "Alien Blaster" 8330 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8331 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8332 Cseq: 130 PRACK 8333 RAck: 9022 127 INVITE 8335 ANN-t modifies the address information in the message and forwards 8336 it to MTA-t. 8338 (32) PRACK: 8339 PRACK sip:Host(mta-t.provider) SIP/2.0 8340 Via: SIP/2.0/UDP Host(ann-t.provider) 8341 From: "Alien Blaster" 8343 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8344 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8345 Cseq: 130 PRACK 8346 RAck: 9022 127 INVITE 8348 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 8349 proxy-response). 8351 (33) 200 OK: 8352 SIP/2.0 200 OK 8353 Via: SIP/2.0/UDP Host(ann-t.provider) 8354 From: "Alien Blaster" 8356 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8357 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8358 Cseq: 130 PRACK 8360 ANN-t modifies the address information in the message and forwards 8361 it to ANN-o. 8363 (34) 200 OK: 8364 SIP/2.0 200 OK 8365 Via: SIP/2.0/UDP Host(ann-o.provider) 8366 From: "Alien Blaster" 8369 DCS Group Category: Informational - Expiration 8/31/02 159 8370 DCS Architecture February 2002 8372 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8373 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8374 Cseq: 130 PRACK 8376 ANN-o modifies the address information in the message and forwards 8377 it to MTA-o. 8379 (35) 200 OK: 8380 SIP/2.0 200 OK 8381 Via: SIP/2.0/UDP Host(mta-o.provider) 8382 From: "Alien Blaster" 8384 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8385 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8386 Cseq: 130 PRACK 8388 Once MTA-t detects off-hook on the called line, it disconnects 8389 ringing voltage from the line and sends the final response through 8390 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 8391 proxy-response). If necessary, MTA-t may also commit to resources 8392 that have been reserved for this call. At this point, MTA-t begins 8393 to generate bearer channel packets of encoded voice and send them to 8394 MTA-o using the IP address and port number specified in the SDP part 8395 of the original INVITE message. 8397 (36) 200-OK: 8398 SIP/2.0 200 OK 8399 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 8400 o.provider); branch=1"; via=Host(mta-o.provider)}K 8401 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 8402 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 8403 state="Host(dp-o.provider); nexthop=sip:555- 8404 1111@Host(mta-o.provider); gate=Host(cmts- 8405 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 8406 2222; num-redirects=0"}K" 8407 From: "Alien Blaster" 8409 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8410 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8411 Cseq: 127 INVITE 8413 Proxy-t handles the message as a SIP stateless proxy, and forwards 8414 it to Proxy-o. 8416 (37) 200-OK: 8417 SIP/2.0 200 OK 8418 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 8419 Via: SIP/2.0/UDP Host(mta-o.provider) 8420 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 8421 o.provider); gate=Host(cmts-o.provider):3612/17S30124 8422 From: "Alien Blaster" 8424 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8426 DCS Group Category: Informational - Expiration 8/31/02 160 8427 DCS Architecture February 2002 8429 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8430 Cseq: 127 INVITE 8432 Proxy-o handles the message as a SIP stateless proxy, and forwards 8433 it to MTA-o. 8435 (38) 200-OK: 8436 SIP/2.0 200 OK 8437 Via: SIP/2.0/UDP Host(mta-o.provider) 8438 From: "Alien Blaster" 8440 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8441 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8442 Cseq: 127 INVITE 8444 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 8445 and stops playing audible ringback tone to the customer and begins 8446 to play the bearer channel stream that is received from MTA-t. MTA- 8447 o sends the following ACK message to MTA-t. If necessary, MTA-o may 8448 also commit to resources that have been reserved for this call. At 8449 this point, MTA-o begins to generate bearer channel packets of 8450 encoded voice and send them to MTA-t using the IP address and port 8451 number specified in the SDP part of the original 183-Session- 8452 Progress message (that was a response to the original INVITE). 8454 (39) ACK: 8455 ACK sip:Host(ann-o.provider) SIP/2.0 8456 Via: SIP/2.0/UDP Host(mta-o.provider) 8457 From: "Alien Blaster" 8459 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8460 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8461 Cseq: 127 ACK 8463 ANN-o modifies the address information in the message and forwards 8464 it to ANN-t. 8466 (40) ACK: 8467 ACK sip:Host(ann-t.provider) SIP/2.0 8468 Via: SIP/2.0/UDP Host(ann-o.provider) 8469 From: "Alien Blaster" 8471 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8472 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8473 Cseq: 127 ACK 8475 ANN-t modifies the address information in the message and forwards 8476 it to MTA-t. 8478 (41) ACK: 8479 ACK sip:Host(mta-t.provider) SIP/2.0 8480 Via: SIP/2.0/UDP Host(ann-t.provider) 8482 DCS Group Category: Informational - Expiration 8/31/02 161 8483 DCS Architecture February 2002 8485 From: "Alien Blaster" 8487 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8488 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8489 Cseq: 127 ACK 8491 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 8492 response). 8494 When either MTA detects hangup, it sends out a BYE message to the 8495 other MTA. In this example, MTA-o detected that the customer hung 8496 up the phone. MTA-o puts that line in the "idle" state so new calls 8497 can be made or received. It sends the following BYE message 8498 directly to MTA-t. MTA-o may also need to release network resources 8499 that have been used for the call. MTA-o starts timer (T-direct- 8500 request). 8502 (42) BYE: 8503 BYE sip:Host(ann-o.provider) SIP/2.0 8504 Via: SIP/2.0/UDP Host(mta-o.provider) 8505 From: "Alien Blaster" 8507 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8508 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8509 Cseq: 131 BYE 8511 ANN-o modifies the address information in the message and forwards 8512 it to ANN-t. 8514 (43) BYE: 8515 BYE sip:Host(ann-t.provider) SIP/2.0 8516 Via: SIP/2.0/UDP Host(ann-o.provider) 8517 From: "Alien Blaster" 8519 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8520 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8521 Cseq: 131 BYE 8523 ANN-t modifies the address information in the message and forwards 8524 it to MTA-t. 8526 (44) BYE: 8527 BYE sip:Host(mta-t.provider) SIP/2.0 8528 Via: SIP/2.0/UDP Host(ann-t.provider) 8529 From: "Alien Blaster" 8531 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8532 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8533 Cseq: 131 BYE 8535 Upon receipt of the BYE message, MTA-t stops playing the bearer 8536 channel stream received from MTA-o and, if necessary, releases 8537 network resources that have been used for this call. MTA-tsends the 8539 DCS Group Category: Informational - Expiration 8/31/02 162 8540 DCS Architecture February 2002 8542 following 200-OK message to MTA-o. MTA-t starts a 15-second timer 8543 (T-hangup) (Note: this is a local interface issue, and not part of 8544 this specification). If MTA-t does not detect hangup on the line 8545 before timer (T-hangup) expires, it plays "reorder" tone on the 8546 customer line. Once hangup is detected, MTA-t puts that line in the 8547 "idle" state so new calls can be made or received. 8549 (45) 200-OK: 8550 SIP/2.0 200 OK 8551 Via: SIP/2.0/UDP Host(ann-t.provider) 8552 From: "Alien Blaster" 8554 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8555 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8556 Cseq: 131 BYE 8558 ANN-t modifies the address information in the message and forwards 8559 it to ANN-o. 8561 (46) 200-OK: 8562 SIP/2.0 200 OK 8563 Via: SIP/2.0/UDP Host(ann-o.provider) 8564 From: "Alien Blaster" 8566 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8567 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8568 Cseq: 131 BYE 8570 ANN-o modifies the address information in the message and forwards 8571 it to MTA-o. 8573 (47) 200-OK: 8574 SIP/2.0 200 OK 8575 Via: SIP/2.0/UDP Host(mta-o.provider) 8576 From: "Alien Blaster" 8578 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8579 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8580 Cseq: 131 BYE 8582 Upon receipt of 200-OK, MTA-o stops timer (T-direct-request). 8584 11. Notice Regarding Intellectual Property Rights 8586 The IETF has been notified of intellectual property rights claimed 8587 in regard to some or all of the specification contained in this 8588 document. For more information consult the online list of claimed 8589 rights. 8591 12. References 8593 DCS Group Category: Informational - Expiration 8/31/02 163 8594 DCS Architecture February 2002 8596 1. Bradner, S., "The Internet Standards Process -- Revision 3", BCP 8597 9, RFC 2026, October 1996. 8599 2. Bradner, S., "Key words for use in RFCs to Indicate Requirement 8600 Levels", BCP 14, RFC 2119, March 1997. 8602 3. "SIP Extensions for Caller Identity, Privacy and Operator 8603 Services", Internet Draft: , 8604 November 2000. 8606 4. "SIP proxy-to-proxy extensions for supporting Distributed Call 8607 State", Internet Draft: , 8608 November 2000. 8610 5. "SIP extensions for supporting Distributed Call State", Internet 8611 Draft: , November 2000. 8613 6. "SIP Extensions for Media Authorization", Internet Draft: , November 2000. 8616 7. "Reliability of Provisional Responses in SIP", Internet Draft: 8617 , July, 2000. 8619 8. "SIP 183 Session Progress Message", Internet Draft: , October 1999. 8622 9. "Integration of Resource Management and SIP for IP Telephony", 8623 Internet Draft: , 8624 November 2000. 8626 13. Acknowledgements 8628 The Distributed Call Signaling work in the PacketCable project is 8629 the work of a large number of people, representing many different 8630 companies. The authors would like to recognize and thank the 8631 following for their assistance: John Wheeler, Motorola; David 8632 Boardman, Daniel Paul, Arris Interactive; Bill Blum, Jon Fellows, 8633 Jay Strater, Jeff Ollis, Clive Holborow, Motorola; Doug Newlin, 8634 Guido Schuster, Ikhlaq Sidhu, 3Com; Jiri Matousek, Bay Networks; 8635 Farzi Khazai, Nortel; John Chapman, Bill Guckel, Michael Ramalho, 8636 Cisco; Chuck Kalmanek, Doug Nortz, John Lawser, James Cheng, Tung- 8637 Hai Hsiao, Partho Mishra, AT&T; Telcordia Technologies; and Lucent 8638 Cable Communications. 8640 14. Author's Addresses 8642 Bill Marshall 8643 AT&T 8644 Florham Park, NJ 07932 8646 DCS Group Category: Informational - Expiration 8/31/02 164 8647 DCS Architecture February 2002 8649 Email: wtm@research.att.com 8651 K. K. Ramakrishnan 8652 TeraOptic Networks 8653 Sunnyvale, CA 8654 Email: kk@teraoptic.com 8656 Ed Miller 8657 Terayon 8658 Louisville, CO 80027 8659 Email: edward.miller@terayon.com 8661 Glenn Russell 8662 CableLabs 8663 Louisville, CO 80027 8664 Email: G.Russell@Cablelabs.com 8666 Matt Osman 8667 CableLabs 8668 Louisville, CO 80027 8669 Email: M.Osman@Cablelabs.com 8671 Burcak Beser 8672 Juniper Networks 8673 Sunnyvale, CA 8674 Email: burcak@juniper.net 8676 Mike Mannette 8677 3Com 8678 Rolling Meadows, IL 60008 8679 Email: Michael_Mannette@3com.com 8681 Kurt Steinbrenner 8682 3Com 8683 Rolling Meadows, IL 60008 8684 Email: Kurt_Steinbrenner@3com.com 8686 Dave Oran 8687 Cisco 8688 Acton, MA 01720 8689 Email: oran@cisco.com 8691 Flemming Andreasen 8692 Cisco 8693 Edison, NJ 8694 Email: fandreas@cisco.com 8696 John Pickens 8697 Com21 8698 San Jose, CA 8699 Email: jpickens@com21.com 8701 Poornima Lalwaney 8703 DCS Group Category: Informational - Expiration 8/31/02 165 8704 DCS Architecture February 2002 8706 Nokia 8707 San Diego, CA 92121 8708 Email: poornima.lalwaney@nokia.com 8710 Jon Fellows 8711 Copper Mountain Networks 8712 San Diego, CA 92121 8713 Email: jfellows@coppermountain.com 8715 Doc Evans 8716 D. R. Evans Consulting 8717 Boulder, CO 80303 8718 Email: n7dr@arrl.net 8720 Keith Kelly 8721 NetSpeak 8722 Boca Raton, FL 33587 8723 Email: keith@netspeak.com 8725 DCS Group Category: Informational - Expiration 8/31/02 166 8726 DCS Architecture February 2002 8728 Full Copyright Statement 8730 "Copyright (C) The Internet Society (2002). All Rights Reserved. 8731 This document and translations of it may be copied and furnished to 8732 others, and derivative works that comment on or otherwise explain it 8733 or assist in its implementation may be prepared, copied, published 8734 and distributed, in whole or in part, without restriction of any 8735 kind, provided that the above copyright notice and this paragraph 8736 are included on all such copies and derivative works. However, this 8737 document itself may not be modified in any way, such as by removing 8738 the copyright notice or references to the Internet Society or other 8739 Internet organizations, except as needed for the purpose of 8740 developing Internet standards in which case the procedures for 8741 copyrights defined in the Internet Standards process must be 8742 followed, or as required to translate it into languages other than 8743 English. The limited permissions granted above are perpetual and 8744 will not be revoked by the Internet Society or its successors or 8745 assigns. This document and the information contained herein is 8746 provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE 8747 INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR 8748 IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 8749 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 8750 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." 8752 This memo is filed as , and expires 8753 August 31, 2002. 8755 DCS Group Category: Informational - Expiration 8/31/02 167