idnits 2.17.1 draft-dcsgroup-sip-arch-03.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 document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? ** The document is more than 15 pages and seems to lack a Table of Contents. == The page length should not exceed 58 lines per page, but there was 164 longer pages, the longest (page 28) being 61 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 21 instances of too long lines in the document, the longest one being 335 characters in excess of 72. ** The abstract seems to contain references ([3,4,5,6]), which it shouldn't. Please replace those with straight textual mentions of the documents in question. == There are 1 instance of lines with non-RFC2606-compliant FQDNs in the document. Miscellaneous warnings: ---------------------------------------------------------------------------- == 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 48 looks like a reference -- Missing reference section? '3' on line 77 looks like a reference -- Missing reference section? '4' on line 77 looks like a reference -- Missing reference section? '5' on line 77 looks like a reference -- Missing reference section? '6' on line 77 looks like a reference -- Missing reference section? '2' on line 104 looks like a reference -- Missing reference section? '9' on line 596 looks like a reference -- Missing reference section? '8' on line 570 looks like a reference -- Missing reference section? '7' on line 589 looks like a reference Summary: 9 errors (**), 0 flaws (~~), 3 warnings (==), 12 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 G. Russell 10 M. Osman 11 CableLabs 13 B. Beser 14 Pacific Broadband 16 M. Mannette 17 K. Steinbrenner 18 3Com 20 D. Oran 21 F. Andreasen 22 Cisco 24 J. Pickens 25 Com21 27 P. Lalwaney 28 Nokia 30 J. Fellows 31 Motorola 33 D. Evans 34 D. R. Evans Consulting 36 K. Kelly 37 NetSpeak 39 November, 2000 41 Architectural Considerations for Providing Carrier Class Telephony 42 Services Utilizing SIP-based Distributed Call Control Mechanisms 44 Status of this Memo 46 This document is an Internet-Draft and is in full conformance with 47 all provisions of Section 10 of RFC2026[1]. 49 Internet-Drafts are working documents of the Internet Engineering 50 Task Force (IETF), its areas, and its working groups. Note that 51 other groups may also distribute working documents as Internet- 52 Drafts. Internet-Drafts are draft documents valid for a maximum of 53 six months and may be updated, replaced, or obsoleted by other 55 DCS Group Category: Informational - Expiration 5/31/01 1 56 DCS Architecture November 2000 58 documents at any time. It is inappropriate to use Internet- Drafts 59 as reference material or to cite them other than as "work in 60 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 The distribution of this memo is unlimited. It is filed as , and expires May 31, 2001. Please send 70 comments to the authors. 72 1. Abstract 74 This document provides an overview of a SIP-based Distributed Call 75 Signaling (DCS) architecture to support carrier class packet-based 76 voice, video, and other real time multimedia services. Companion 77 documents [3,4,5,6] address a specific set of SIP 2.0 protocol 78 extensions and usage rules that are necessary to implement the DCS 79 architecture in an interoperable fashion. 81 The DCS architecture takes advantage of endpoint intelligence in 82 supporting telephony services without sacrificing the network's 83 ability to provide value through mechanisms such as resource 84 management, lookup of directory information and translation 85 databases, routing services, security, and privacy enforcement. At 86 the same time, the architecture provides flexibility to allow 87 evolution in the services that may be provided by endpoints and the 88 network. 90 DCS also takes into account the need to manage access to network 91 resources and account for resource usage. The SIP usage rules 92 defined in the accompanying IDs specifically address the 93 coordination between Distributed Call Signaling and dynamic quality 94 of service control mechanisms for managing resources over the access 95 network. In addition, the DCS architecture defines the interaction 96 needed between network provided call controllers, known as a "DCS- 97 proxy" for supporting these services. 99 2. Conventions used in this document 101 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 102 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in 103 this document are to be interpreted as described in RFC-2119 [2]. 105 3. Introduction 107 DCS Group Category: Informational - Expiration 5/31/01 2 108 DCS Architecture November 2000 110 This document provides an overview of a SIP-based Distributed Call 111 Signaling (DCS) architecture to support carrier class packet-based 112 voice, video, and other real time multimedia services. The DCS 113 architecture and the corresponding SIP protocol enhancements 114 (described in companion documents) are being developed as part of 115 the cable industry's PacketCable initiative, managed out of 116 CableLabs (see www.cablelabs.com). PacketCable is defining a series 117 of interface specifications that will enable vendors to develop 118 interoperable products for providing internet telephony and other 119 multimedia services over DOCSIS-enabled cable data networks. 120 The DCS architecture described herein has its roots in the DOSA work 121 performed by AT&T Laboratories ["Distributed Open Signaling 122 Architecture"; Kalmanek, Marshall, Mishra, Nortz, Ramakrishnan, et 123 al.; October, 1998]. A relatively large group of vendors have 124 cooperated in an intensive effort to develop the DCS architecture 125 and SIP protocol extensions described here and in the accompanying 126 protocol drafts. Although DCS was originally designed with cable 127 access networks in mind, the SIP signaling enhancements have general 128 applicability to carrier class VOIP services running over QoS 129 enabled IP networks. 131 The authors are submitting this draft to the IETF in order to 132 provide general information regarding the DCS architecture and to 133 convey the motivation behind the SIP enhancements recommended in the 134 accompanying protocol drafts. We believe that incorporation of the 135 concepts and mechanisms described in this set of drafts by the IETF 136 into the SIP standard will significantly enhance SIP's ability to 137 function as a carrier-class signaling protocol. Such an enhancement 138 to SIP would undoubtedly aid in its widespread acceptance and 139 deployment. We have incorporated several useful comments received at 140 the IETF SIP Working group on earlier versions of this and the other 141 DCS related drafts. 143 The PacketCable Draft Specification for DCS is available from the 144 CableLabs website at: 145 ftp://ftp.cablelabs.com/pub/ietfdocs/dcsdraft2.pdf. 147 3.1 Background and Motivation 149 The design of the Distributed Call Signaling (DCS) architecture 150 recognizes the trend towards use of packet networks as the 151 underlying framework for communications. These networks will 152 provide a broad range of services, including traditional best-effort 153 data service as well as enhanced, value-added services, such as 154 telephony. At the same time, improvements in silicon will reinforce 155 the trend towards increased functionality in endpoints. These 156 intelligent endpoints will take advantage of the widespread 157 availability of packet networks to enable a rich set of applications 158 and services for users. 160 However, when the network is used for real-time telephony 161 applications, it is essential to have service differentiation at the 163 DCS Group Category: Informational - Expiration 5/31/01 3 164 DCS Architecture November 2000 166 IP layer. The ability to control and monitor usage is needed for 167 the provider to be able to provide service differentiation and to 168 derive revenue from the enhanced services. At the same time, the 169 availability of best effort communications and the migration of 170 functionality to the endpoints pose a challenge to the provider to 171 find incentives for users to use or pay for enhanced services. 173 We see three key functions that a provider can offer, as incentives 174 to use enhanced services. First, the network service provider has 175 the unique ability to manage and provide network layer quality of 176 service. When users depend on the quality of the service, as with 177 telephony, there is a strong incentive to use the enhanced service, 178 rather than a best effort service. Second, the network service 179 provider can play an important role as a trusted intermediary. This 180 includes ensuring the integrity of call routing, as well as ensuring 181 both the accuracy and the privacy of information that is exchanged. 182 The service provider can also add value by ensuring that services 183 are provided consistently and reliably, even when an endpoint is 184 unavailable. Finally, there are a number of services that may be 185 offered more efficiently by the network service provider rather than 186 in endpoints. For example, conference bridging may be more cost 187 effective to implement in a multi-point bridge rather than in every 188 endpoint attached to the network. 190 A key contribution of the DCS architecture is a recognition of the 191 need for coordination between call signaling, which controls access 192 to telephony specific services, and resource management, which 193 controls access to network-layer resources. This coordination is 194 designed to meet the user expectations and human factors associated 195 with telephony. For example, the called party should not be 196 alerted until the resources necessary to complete the call are 197 available. If resources were not available when the called party 198 picked up, the user would experience a call defect. In addition, 199 users expect to be charged for service only after the called party 200 answers the phone. As a result, usage accounting starts only after 201 the called party picks up. Coordination between call signaling and 202 resource management is also needed to prevent fraud and theft of 203 service. The coordination between DCS and Dynamic QoS protocols 204 ensures that users are authenticated and authorized before receiving 205 access to the enhanced QoS associated with the telephony service. 207 It is important to be able to deploy a residential telephone service 208 at very large scale, cost-effectively. To achieve this, DCS 209 minimizes the messaging overhead on network call servers, and does 210 not require these servers to maintain call state for active calls. 211 Once a call is established, call state is maintained only where it 212 is needed, in keeping (informally) with the principle of "fate- 213 sharing" at the endpoints that are involved in the call, and at the 214 Edge Routers in the bearer path that are providing differentiated 215 service to the media flow. This allows the network call servers to 216 scale to support more users, and imposes less stringent reliability 217 requirements on those servers. 219 DCS Group Category: Informational - Expiration 5/31/01 4 220 DCS Architecture November 2000 222 DCS is also designed so that calling users receive consistent 223 service even when a called endpoint is unavailable. For example, 224 when an endpoint is unavailable service logic in a network call 225 server can forward telephone calls to a voice mailbox. 227 3.2 Requirements And Design Principles 229 In this section, we briefly describe the application requirements 230 that led to a set of DCS signaling design principles. In its most 231 basic implementation, DCS supports a residential telephone service 232 comparable to the local telephone services offered today. In 233 addition to the commonly used service features that need to be 234 supported, there are important requirements in the areas of 235 reliability, performance, and scalability that influence the 236 signaling architecture. Supporting an IP telephony service 237 comparable to the telephony service offered today requires enhanced 238 bearer channel and signaling performance, including: 240 @ Low delay - end-to-end packet delay must be small enough that it 241 does not interfere with normal voice conversations. The ITU 242 recommends no greater than 300 ms roundtrip delay for telephony 243 service. 245 @ Low packet loss - packet loss must be small enough to not 246 perceptibly impede voice quality or performance of fax and voice 247 band modems. 249 @ Short post-dial delay - the delay between the user dialing the 250 last digit and receiving positive confirmation from the network 251 must be short enough that users do not perceive a difference with 252 post-dial delay in the circuit switched network or believe that 253 the network has failed. 255 @ Short post pickup delay - the delay between a user picking up a 256 ringing phone and the voice path being cut through must be short 257 enough so that the "hello" from either the initiator or the 258 receiver of the call is not clipped. 260 We identify a number of key design principles that arise from the 261 requirements and philosophy outlined above. 263 1. Providing differentiated network-layer quality of service is 264 essential, while allowing the provider to derive revenues from the 265 use of such differentiated services. 267 2. The architecture should allow, and even encourage, implementation 268 of services and features in the intelligent endpoints, where 269 economically feasible, while still retaining value in the network 270 and network-based services 272 3. The architecture must ensure that the network is protected from 273 fraud and theft of service. The service provider must be able to 275 DCS Group Category: Informational - Expiration 5/31/01 5 276 DCS Architecture November 2000 278 authenticate users requesting service and ensure that only those 279 authorized to receive a particular service be able to obtain it. 281 4. The architecture must enable the service provider to add value by 282 supporting the functions of a trusted intermediary. This includes 283 protecting the privacy of calling and called party information, 284 and ensuring the accuracy of the information that is provided in 285 messages from the network. 287 5. The architecture must enable the service provider to give a 288 consistent view of basic services and features even when customer 289 premise equipment is unavailable, and allow users to take 290 advantage of functionality that is provided in the network, when 291 it is cost-effective and easy to use. 293 6. The architecture must be implementable, cost-effectively, at very 294 large scale. 296 3.3 Distributed Call Signaling Architecture 298 The Distributed Call Signaling Architecture follows the principles 299 outlined above to support a robust telephony service. Figure 1 300 introduces the key components in the architecture. 302 The architecture assumes a broad range of DCS-compliant endpoints 303 that provide telephony service to the user including Media Terminal 304 Adapters (MTAs) that may be integrated with a Cable Modem or is a 305 standalone device, as well as other endpoints such as personal 306 computers. The access network interfaces to an IP backbone through 307 a system we refer to as the Edge Router (ER). The ER is the first 308 trusted element within the provider's network and is considered to 309 be the edge of the network for providing access to differentiated 310 quality of service. We believe that the access network is likely to 311 manage resources on a per-flow basis, with associated signaling 312 mechanisms (such as RSVP). The ER performs resource management, acts 313 as a policy enforcement point and as a source of billing 314 information. 316 DCS-proxies (DPs) process call signaling messages and support number 317 translation, call routing, feature support and admission control. 318 In the context of SIP, a DCS-proxy is a SIP proxy that is involved 319 in processing and forwarding of SIP requests. DPs act as trusted 320 decision points for controlling when resources are committed to 321 particular users. Media servers represent network-based components 322 that operate on media flows to support the service. Media servers 323 perform audio bridging, play terminating announcements, provide 324 interactive voice response services, etc. Finally, PSTN gateways 325 interface to the Public Switched Telephone Network. 327 DCS Group Category: Informational - Expiration 5/31/01 6 328 DCS Architecture November 2000 330 +-----+ 331 | MTA | MTA: media terminal adapter 332 +-----+ 333 | ER: Edge Router 334 Access Network | 335 | 336 +----+ 337 | ER | 338 +----+ 339 | +-----------+ 340 |----| DCS Proxy | 341 | +-----------+ 342 | 343 | +------------+ 344 Backbone Network |----|Media Server| 345 | +------------+ 346 | 347 | +------------+ 348 |----|PSTN Gateway| 349 | +------------+ 350 +----+ 351 | ER | 352 +----+ 353 | 354 Access Network | 355 | 356 +-----+ 357 | MTA | 358 +-----+ 359 Figure 1: A Simple view of Components of an IP Telephony 360 Architecture used in a HFC Cable Environment. 362 Telephony endpoints are considered to be "clients" of the telephony 363 service. Consistent with the design principles, the architecture 364 allows a range of services to be implemented by intelligent 365 endpoints. They collect dialed digits, participate in signaling and 366 contain the service logic required for basic call setup and feature 367 support. Endpoints also participate in end-to-end capability 368 negotiation. However, endpoints are not trusted to provide accurate 369 information to the network or to keep information that is received 370 private, except when it is in the endpoint's best interests to do 371 so. 373 Access to network resources on a differentiated basis is likely to 374 be controlled by the service provider. The ER receives resource 375 management requests from endpoints, and is responsible for ensuring 376 that packets are provided the QoS they are authorized to receive 377 (either through packet marking, or through routing and queueing the 378 packets as a specific QoS assured flow). The ER requires 379 authorization from a network entity (on a call-by-call basis for the 380 telephony service) before providing access to enhanced QoS for an 381 end-to-end IP flow. The obvious point where this policy and control 382 function resides is the DCS-proxy (also called a gate-controller, 384 DCS Group Category: Informational - Expiration 5/31/01 7 385 DCS Architecture November 2000 387 because of this responsibility for managing access to enhanced QoS). 388 Thus, the ER is able to ensure that enhanced QoS is only provided 389 for end-to-end flows that have been authorized and for which usage 390 accounting is being done. Since the ER knows about the resource 391 usage associated with individual IP flows, it generates the usage 392 events that allow a user to be charged for service. 394 We introduce the concept of a "gate" in the ER, which manages access 395 to enhanced quality of service. The gate is a packet classifier and 396 policer that ensures that only those IP flows that have been 397 authorized by the DCS-proxy are granted access to enhanced QoS in 398 the access and backbone networks. Gates are "opened" selectively 399 for a flow. For the telephony service, they are opened for 400 individual calls. Opening a gate involves an admission control 401 check that is performed when a resource management request is 402 received from the endpoint for an individual call, and it may 403 involve resource reservation in the network for the call if 404 necessary. The packet filter in the gate allows a flow of packets to 405 receive enhanced QoS for a call from a specific IP source address 406 and port number to a specific IP destination address and port 407 number. 409 The DCS-proxy, in addition to implementing many of the call control 410 functions, is responsible for the policy decision regarding whether 411 the gate should be opened. DCS sets up a gate in advance of a 412 resource management message. This allows the policy function, which 413 is at the DCS-proxy, to be "stateless" in that it does not need to 414 know the state of calls that are already in progress. 416 DCS-proxies are typically organized in domains. A DCS-proxy is 417 responsible for a set of endpoints and the associated ERs. While 418 endpoints are not trusted, there is a trust relationship between the 419 ER and its associated DCS-proxy, since the DCS-proxy plays a role as 420 a policy server controlling when the ER can provide enhanced QoS 421 service. There is also a trust relationship among DCS-proxies. 422 Details of the security model are outside the scope of this draft. 424 The DCS-proxy is designed as a simple transaction server, so that 425 the failure of a DCS-proxy does not affect calls in progress. A 426 domain will likely have a primary and one or more secondary DCS- 427 proxies. If the primary DCS-proxy fails, only calls in a transient 428 state are affected. The endpoints involved in those calls will time 429 out and retry. All active calls are unaffected. This is possible 430 because the DCS-proxy retains no call state for stable calls. We 431 believe this design makes the DCS-proxy efficient and highly 432 scalable, and keeps the reliability requirements manageable. 434 DCS supports inter-working with the circuit switched telephone 435 network through PSTN gateways. A PSTN gateway may be realized as a 436 combination of a media controller, media gateway, and a signaling 437 gateway. A media gateway acts as the IP peer of an endpoint for 438 media packets, converting between the data format used over the IP 439 network and the PCM format required for transmission over the PSTN. 441 DCS Group Category: Informational - Expiration 5/31/01 8 442 DCS Architecture November 2000 444 The signaling gateway acts as the IP peer of an endpoint for 445 signaling packets, providing signaling inter-working between DCS and 446 conventional telephony signaling protocols such as ISUP/SS7. A media 447 gateway control protocol is used to control the operation of the 448 media gateway from the signaling gateway. 450 There are additional system elements that may be involved in 451 providing the telephony service. For example, the DCS-proxy may 452 interface with other servers that implement the authorization or 453 translation functions. Similarly, three way calling may be 454 supported using media servers in the network. 456 3.4 Trust Boundary 458 The DCS architecture defines a trust boundary around the various 459 systems and servers that are owned, operated by, and/or controlled 460 by the service provider. These trusted systems include the proxies 461 and various servers such as bridge servers, voicemail servers, 462 announcement servers, etc. Outside of the trust boundary lie the 463 customer premises equipment, and various media servers operated by 464 third-party service providers. 466 Certain subscriber-specific information, such as billing and 467 accounting information, stays within the trust boundary. Other 468 subscriber-specific information, such as endpoint identity, may be 469 presented to untrusted endpoints or may be withheld based on 470 subscriber profiles. 472 The SIP User Agent (UA) may be either within the trust boundary 473 (e.g. PSTN gateway) or outside the trust boundary (e.g. MTA), 474 depending on exactly what function is being performed and exactly 475 how it is being performed. Accordingly, the procedures followed by 476 a User Agent, as contained in the accompanying drafts, are different 477 depending on whether the UA is within the trust boundary or outside 478 the trust boundary. A trusted user agent is, in almost all cases, 479 equivalent to the combination of an untrusted user agent and a 480 proxy. 482 3.5 Basic Call Flow 484 Figure 2 presents a high-level overview of a basic MTA-to-MTA call 485 flow in DCS. Each MTA is associated with a DCS-proxy, which acts as 486 a SIP proxy. When a user goes off-hook and dials a telephone 487 number, the originating MTA (MTA-o) collects the dialed digits and 488 sends the initial INVITE message in SIP, to the "originating" DCS- 489 proxy (DP-o). This INVITE contains SDP proposing a set of codecs 490 that are acceptable to MTA-o (and their implied bandwidth 491 requirements), and an indication of the (mandatory) QoS 492 preconditions [9] needed for the session. DP-o verifies that MTA-o 493 is a valid subscriber of the telephony service (using authentication 494 information in the INVITE message) and determines whether this 495 subscriber is authorized to place this call. DP-o then translates 497 DCS Group Category: Informational - Expiration 5/31/01 9 498 DCS Architecture November 2000 500 the dialed number into the address of a "terminating" DCS-proxy (DP- 501 t) and forwards the INVITE message to it. 503 We assume that the originating and terminating DCS-proxies trust 504 each other. DP-o augments the INVITE message that it forwards with 505 additional information, such as billing information containing the 506 account number of the caller. DP-t then translates the dialed 507 number into the address of the terminating MTA (MTA-t) and forwards 508 the INVITE message to MTA to notify it about the incoming call. 510 The initial INVITE message invokes call feature handling at the 511 terminating MTA, such as call-forwarding. Assuming that the call is 512 not forwarded, MTA-t negotiates the coding style and bandwidth 513 requirements for the media streams. A reliable provisional 1xx 514 response to the initial INVITE is forwarded back through the DCS- 515 proxies. 517 DCS Group Category: Informational - Expiration 5/31/01 10 518 DCS Architecture November 2000 520 MTA-o ER-o DP-o DP-t ER-t MTA-t 522 | Invite | | | | | 523 |----------|--------->| Invite | | | 524 | | |--------->| | | 525 | | | | Invite | | 526 | | | |----------|--------->| 527 | | | | | 183 SDP | 528 | | | |<---------|----------| 529 | | | | | | 530 | | Gate | 183 SDP |Gate Setup| | 531 | | Setup |<---------|--------->| | 532 | |<---------| | | | 533 | 183 SDP | | | | | 534 |<---------|----------| | | | 535 | | | PRACK | | | 536 |----------|----------|----------|----------|--------->| 537 | | 200 OK (acknowledging PRACK) | | 538 |<---------|----------|----------|----------|----------| 539 | | | | | | 540 |<---------|--------Reserve Resources-------|--------->| 541 | | | | | | 542 | | COMET | | 543 |----------|--------- |----------|----------|--------->| 544 | 200 OK (acknowledging COMET) | 545 |<---------|----------|----------|----------|----------| 546 | | | | | 180 Ring | 547 | | | 180 Ring |<---------|----------| 548 | | 180 Ring |<---------| | | 549 |<---------|----------| | | | 550 | | | PRACK | | | 551 |----------|----------|----------|----------|--------->| 552 | | 200 OK (acknowledging PRACK) | | 553 |<---------|----------|----------|----------|----------| 554 | | | | | | User 555 | | | | | 200 OK | Answers 556 | | | 200 OK |<---------|----------| 557 | | 200 OK |<---------| | | 558 |<---------|----------| | | | 559 | ACK | | | | | 560 |----------|----------|----------|----------|--------->| 561 | | | | | | 562 |<---------|----------Active Call----------|--------->| 563 | | | | | | User 564 | | | | | BYE | Hangs Up 565 |<---------|----------|----------|----------|----------| 566 | | | | | 200 OK | 567 |----------|----------|----------|----------|--------->| 568 Figure 2: A Basic Call Flow, including Resource Management functions 570 In the figure, MTA-t sends a 183 SDP message[8] to DP-t. The 183 571 SDP contains a subset of the capabilities in the INVITE message that 572 are acceptable to MTA-t. The SDP also carries the QoS preconditions 574 DCS Group Category: Informational - Expiration 5/31/01 11 575 DCS Architecture November 2000 577 from the INVITE. DP-t sends a GATE-SETUP message to the terminating 578 ER (ER-t), conveying policy instructions allowing ER-t to open a 579 gate for the IP flow associated with this phone call. The GATE_SETUP 580 message contains billing information containing the account number 581 of the subscriber that will pay for the call. 583 DP-t forwards the 183 SDP to DP-o. DP-o sends a GATE-SETUP message 584 to the originating ER (ER-o) to indicate that it can open a gate for 585 the IP flow associated with the phone call. Finally, DP-o forwards 586 200 OK to MTA-o. The initial INVITE request and 183 SDP response 587 contain a SIP Contact header to indicate the IP address of the 588 remote MTA to be used for subsequent end-to-end SIP signaling 589 exchanges. MTA-o acknowledges the 183 SDP by sending a PRACK [7] 590 directly to MTA-t. The PRACK may contain the SDP to allow for a 591 further step in the negotiation of capabilities for the session. 593 Once the initial INVITE/183/PRACK exchange has completed, both MTAs 594 reserve the resources that will be needed for the media streams. 595 Once MTA-o has successfully made its reservation, it sends a COMET 596 message [9] to MTA-t, which is immediately acknowledged by MTA-t 597 with a 200-OK. MTA-o uses the COMET message to communicate the fact 598 that the desired pre-conditions necessary for the session as 599 perceived by MTA-o are satisfied (e.g., successful reservation of 600 resources, as perceived by MTA-o.) MTA-t acknowledges the COMET 601 message with a 200 OK final response directly to MTA-o. However, 602 resource reservation from MTA-t's perspective may not be completed 603 yet. Thus, the 200 OK acknowledging the COMET message does not 604 indicate successful resource reservation. Once MTA-t successfully 605 reserves the resources needed for the call, it sends a 180 Ringing 606 through the proxies to indicate that the phone is ringing, and that 607 the calling party should be given a ringback call progress tone. We 608 have not described, in detail, the messaging involved in resource 609 reservation here, as we believe that it is appropriate to allow for 610 a variety of resource management mechanisms. Thus, the MTA may use 611 the resource management mechanism that is most suitable to the 612 network segment that it is attached to. When the called party 613 answers, by going off-hook, MTA-t sends a 200 OK final response 614 through the proxies, which MTA-o acknowledges with an end-to-end 615 ACK. At this point the resources that were previously reserved are 616 committed to this conversation, and the call is "cut through." 618 Either party can terminate the call. An MTA that detects an on-hook 619 sends a SIP BYE message to the remote MTA, which is acknowledged. 621 4. Resource Management 623 DCS's resource management protocols distinguish between two phases: 624 a "Reserve" phase and a "Commit" phase. During the Reserve phase, 625 resources are reserved but are not yet made available to the 626 endpoint. This ensures that resources are available before ringing 627 the far-end telephone. The Commit phase, which commits the 628 resources associated with the flow, is initiated after ringing the 629 far end telephone and after the called party picks up. At this 631 DCS Group Category: Informational - Expiration 5/31/01 12 632 DCS Architecture November 2000 634 point, the resources are made available to the endpoint, and 635 recording is started so that the user can be billed for usage. The 636 use of a two-phase approach is essential because of the unique 637 requirements associated with human communication, such as telephony. 638 Recognition of the need for a two phase resource management approach 639 is a significant motivation for the call flow adopted in the 640 previous section. 642 Although we believe that issues of billing ought not to be the 643 primary consideration in the design of the protocol, the protocol 644 design should not preclude the possibility of usage sensitive 645 billing. Therefore, in addition to ensuring that resources are 646 available before ringing the phone, the two-phase resource 647 management protocol also allows us to preserve the semantics of 648 billing that users are accustomed to, whereby usage recording is not 649 started until the called party picks up the phone. Backbone 650 resources are reserved and allocated in the first phase of the two- 651 phase resource reservation protocol. This is important in order to 652 limit the impact of backbone resource management on post-pickup 653 delay (this minimizes the likelihood of clipping the first few 654 syllables of the conversation). 656 5. Distributed Call State 658 In order to provide enhanced services to millions of endpoints, we 659 need an architecture that can be implemented cost-effectively at 660 very large scale. Just as we enable flexibility by exploiting 661 intelligence at the endpoints, services can be provided in a 662 scaleable manner by storing the state associated with applications 663 at the endpoints, rather than in network servers. Especially with 664 telephony, endpoints are directly involved in handling calls and 665 therefore need to maintain and use call state. In contrast, while 666 network servers may need to be involved when setting up a call to 667 gain access to enhanced QoS, there is no fundamental need for those 668 servers to be involved throughout the lifetime of the call. 669 Maintaining state for every call at network servers, while 670 achievable, increases the reliability requirements and load on the 671 servers. The less state kept in the network, the better. 673 As a result, the DCS-proxies in DCS are designed to be Call 674 stateless transaction servers. The proxy maintains SIP transaction 675 state. So, when a DCS-proxy processes a service request from an 676 endpoint, it maintains state until the transaction is complete, but 677 does not maintain any per-call state about active calls in the 678 network. There are two major advantages to this design. First the 679 reliability of the service does not depend on the reliability of an 680 individual DCS-proxy. A DCS-proxy can fail without affecting calls 681 that are currently in progress. Second, it removes many complex 682 synchronization problems where two (or more) entities need to have 683 simultaneously accurate information. Since interactions with the 684 DCS-proxies are simple stateless transactions, it is not necessary 685 for consecutive calls to be processed by the same DCS-proxy. DCS- 686 proxy crashes affect only the transient calls (the calls that are in 688 DCS Group Category: Informational - Expiration 5/31/01 13 689 DCS Architecture November 2000 691 the process of being set up), and not stable conversations. 692 Further, it is likely that most calls in a transient state can be 693 recovered and successfully established through a backup or spare 694 DCS-proxy using endpoint retransmission, with no explicit 695 synchronization protocol required between the DCS-proxies. We 696 believe this design principle will enable us to operate in very 697 large scale, cost effectively. Furthermore it places the function 698 of managing the state of a call where it belongs - at the endpoint. 699 An existing call can only be affected by failures along the path or 700 by failure of the endpoints: there are no unnecessary elements 701 involved in a call. 703 We note that there are many services that involve the use of servers 704 or proxy endpoints that communicate directly with clients. Since 705 these endpoints are directly involved in providing service, it is 706 necessary and appropriate for them to maintain state. Examples of 707 proxy endpoints include application layer firewalls, caching 708 servers, transcoders, network-based conference bridges, interactive 709 voice response systems, and PSTN gateways. The DCS architecture 710 models these as end-points, that maintain appropriate call state. 712 We now turn to the mechanisms that allow us to avoid state in the 713 DCS-proxies. A number of examples of the need for distributed state 714 arise in the implementation of telephony features. These give rise 715 to two types of information that a DCS-proxy may present to an 716 endpoint that may subsequently be given back to the proxy by the 717 endpoint. The first type of information is Remote endpoint 718 identification, contained in the "Remote-Party-ID" header. The 719 second type of information is associated with an active session that 720 an endpoint is participating in. This latter information, stored in 721 the "State" header, is information that a service provider or proxy 722 may need for methods that are invoked by an endpoint related to that 723 session. Thus, a DCS-proxy stores the state information about the 724 calls at an endpoint in two new headers, "State" and "Remote-Party- 725 ID". The State header is both encrypted and signed by the proxy to 726 ensure the privacy and the integrity of the information contained in 727 the header. The information that may be contained in State includes 728 resource information (such as Gate information) and billing 729 information (such as a billing id). The Remote-Party-ID is only 730 encrypted when privacy is requested by the endpoint (covered in 731 detail in the Section 7 below.) 733 When needed, the endpoint provides the State to the DCS-proxy that 734 generated it, which can use the information to provide additional 735 functionality. 736 Because the State header is encrypted and signed by the DCS-proxy, 737 the information it contains is trusted by the network even though 738 the endpoint itself is not trusted. In addition, DCS-proxies store 739 service-specific opaque data associated with a call at the edge 740 router. Since charging for telephony services may be tied to the 741 use of resources, this information is best stored at the edge 742 router, where knowledge of resource usage exists. 744 DCS Group Category: Informational - Expiration 5/31/01 14 745 DCS Architecture November 2000 747 The endpoint returns the state (possibly both State and Remote- 748 Party-ID) information to the DCS-proxy when it is needed to 749 implement specific features. The endpoint cannot interpret the 750 information in the encrypted and signed State header (and Remote- 751 Party-ID if it is also encrypted), and any attempt to tamper with it 752 can be detected by the DCS-proxy. 754 An example of use of the State information is one where a change in 755 coding method in the middle of a call (e.g., upon detection of a fax 756 tone) may require the proxies to authorize additional resources. 757 Services such as call-transfer and three-way-calling require the 758 proxy to be involved in authorizing resources for packet flows to 759 the new destination(s). 761 6. DCS Proxy - DCS Proxy Communications 763 DCS-proxies implement a set of service-specific control functions 764 required to support the telephony service: 766 @ Authentication and authorization: Since services are only provided 767 to authorized subscribers, DCS-proxies authenticate signaling 768 messages and authorize requests for service on a call-by-call 769 basis. 771 @ Name/number translation and call routing: DCS-proxies translate 772 dialed E.164 numbers, or names, to a terminating IP address based 773 on call routing logic to support a wide range of call features. 775 @ Service-specific admission control: DCS-proxies can implement a 776 broad range of admission control policies for the telephony 777 service. For example, DCS-proxies may provide precedence for 778 particular calls (e.g., 911 calls). Admission control may also be 779 used to implement overload control mechanisms, e.g. to restrict 780 the number of calls to a particular location or to restrict the 781 frequency of call setup to avoid signaling overload. 783 @ Signaling and service feature support: While many service features 784 are implemented by endpoints, the DCS-proxy also plays a role in 785 feature support. DCS signaling provides a set of service 786 primitives to end-points that are mediated by the DCS-proxy. The 787 DCS-proxy is involved in implementing service features that depend 788 on the privacy of calling information, e.g., caller-ID blocking. 789 It also plays a role in supporting service features that require 790 users to receive a consistent view of feature operation even when 791 an endpoint is down. For example, while an endpoint may normally 792 participate in call forwarding, the DCS-proxy can control call 793 forwarding on behalf of an endpoint when the endpoint is down. 795 End-points MTA-o and MTA-t communicate through the DCS-Proxies DP-o 796 and DP-t, as shown in Figure 2. The interface of concern in this 797 section is the one between the DCS-Proxies DP-o and DP-t. In 798 contrast to a true stateless SIP proxy, the DCS-Proxy maintains 800 DCS Group Category: Informational - Expiration 5/31/01 15 801 DCS Architecture November 2000 803 transaction state. During the interval that a call is being setup, a 804 DCS-Proxy keeps state related to a request until a response is 805 received. 807 For each call made to a phone number, DP-o may need to perform the 808 functions needed for Local Number Portability (LNP). If a LNP 809 database lookup is performed and the resulting dialed string is 810 modified, DP-o must modify the Request-URI to include the result of 811 the LNP lookup. The originating proxy DP-o generates and stores the 812 State header. This information is intended to be sent to endpoint 813 MTA-o and included with the first response that is returned to MTA- 814 o. The originating DCS-Proxy, DP-o, may then use the call state 815 information provided to it in the State header to manipulate call- 816 legs when requested by MTA-o. 818 As with conventional SIP proxies, DP-o adds its address to the top 819 of the Via: header list with a branch=1 field when forwarding the 820 request. In addition, to support billing functions for a carrier, 821 DP-o appends opaque information called the Billing-Info and Billing- 822 ID. In addition, to support the resource management functions (such 823 as manipulating Gates for resource management in concert with call- 824 leg manipulation), a Gate-Location: header is included. This allows 825 for the subsequent generation of requests for access network QoS by 826 the end-points. 828 We also depend on originating DCS-Proxy, DP-o to be responsible for 829 manipulating call legs. For instance, when a call is being 830 forwarded, information about the new destination that the call is 831 being forwarded to is provided by DP-t to DP-o. The new INVITE is 832 then issued from DP-o. The information exchanged between the DCS- 833 proxies enables such a function to be performed. 835 7. Privacy 837 Many conventional telephony systems have the ability to provide 838 information about the identity of the calling party to the called 839 party before the latter accepts the call (such a capability is 840 typically termed "Caller-ID"). Systems that support Caller-ID 841 usually provide a mechanism that allows the calling party to 842 instruct the network to refrain from delivering this information to 843 the destination. 845 In order for an IP-based network to provide a caller with a similar 846 capability, a new SIP header is needed to signal the desire for 847 anonymity to the network elements that would otherwise provide the 848 caller's identity to the destination party. If a caller desires to 849 remain anonymous, several additional changes to standard SIP are 850 necessary. 852 The triplet {From:, To:, Call-ID:} is used to identify a call leg in 853 both endpoints and in proxies. Because call state information is 855 DCS Group Category: Informational - Expiration 5/31/01 16 856 DCS Architecture November 2000 858 pushed to the edge of the network, this information must be 859 delivered unchanged to the destination endpoint. 861 The SIP From: header normally contains information that identifies 862 the caller. In order to hide the identity of the caller, the From: 863 header information is encrypted with the originating endpoint's key. 864 The destination endpoint does not possess the key to decrypt the 865 From: information. No new syntax for SIP is introduced here. 867 Normally, the SIP Call-ID: header also contains information about 868 the caller. In the DCS architecture, to support privacy the value of 869 the Call-ID: header is a cryptographic hash string that contains no 870 information about the user. 872 Since all the normally available mechanisms for passing information 873 about the caller are no longer available, a new SIP header, Remote- 874 Party-ID, is used to pass the caller's identity to the destination. 875 The Remote-Party-ID header is primarily used for endpoint 876 identification. This header contains the information that would 877 normally be present in the From: header; the network passes it to 878 the destination endpoint only if the caller has not requested 879 anonymity. If the caller had requested anonymity, then the Remote- 880 Party-ID header contains an encrypted string that can be used by the 881 proxy in handling further requests. 883 If the user at an endpoint wants to return the last call (e.g., by 884 dialing *69 on a traditional telephone) the "call return" function 885 is invoked. If the user had subscribed to the caller ID service 886 feature, the terminating endpoint could store the information (phone 887 number or IP address) associated with the last call. However, it 888 may be the case that the user does not subscribe to the feature, or 889 the originator of the previous call may have requested that this 890 information be blocked in order to retain privacy. In this case, 891 call return can be implemented, while keeping the caller's identity 892 private, by using the encrypted Remote-Party-ID header. 894 In addition to the usual privacy elements provided by telephone 895 systems, IP-based systems must implement methods of hiding the 896 source IP address from the destination if the caller requires 897 privacy. The entire address must be obscured, since even a few 898 address bits may provide partial location information. Likewise, IP 899 addresses of the destination should not be revealed to the caller, 900 in order to maintain privacy of transfer destinations. 902 IP addresses typically appear in the Contact: header; they also 903 appear in SDP descriptions contained in SIP messages. These must all 904 be protected. We chose to use an application-level anonymizer that 905 inspects the SIP call signaling messages and replaces any 906 identifying information contained therein in a consistent manner. 907 The identifying information is modified such that when the messages 908 are delivered to the destination endpoint any identifying 909 information has been replaced with fields that obscure the identity 910 of the party seeking privacy. 912 DCS Group Category: Informational - Expiration 5/31/01 17 913 DCS Architecture November 2000 915 This mechanism does not require any modification to the call 916 signaling initiated by the endpoints: the application-level 917 anonymizer performs these functions silently within the network. 919 8. Security Considerations 921 Detailed security considerations related to this architecture will 922 be addressed in a future companion draft. 924 9. Call Flows 926 This section contains sample message flows between MTAs, DCS- 927 Proxies, and Call Management Systems (CMSs, which are trusted User 928 Agents, as described in section 3.4). 930 The first four subsections provide details for handling of basic 931 calls, between all combinations of MTAs and CMSs. 933 Following subsections provide details of the handling of call 934 features, such as call-forwarding, call-transfer, three-way-calling, 935 CODEC changes, operator services, electronic surveillance, and IP 936 address privacy. 938 DCS Group Category: Informational - Expiration 5/31/01 18 939 DCS Architecture November 2000 941 9.1 Basic Call Flow from MTA to MTA 943 MTA-o ER-o Proxy-o Proxy-t ER-t MTA-t 945 | (1)Invite | | | | 946 |----------|--------->|(2)Invite | | | 947 | | |--------->| | | 948 | | | |(3)Invite | | 949 | | | |----------|--------->| 950 | | | | |(4)183 SDP| 951 | | | |<---------|----------| 952 | | | | | | 953 | | Gate |(5)183 SDP|Gate Setup| | 954 | | Setup |<---------|--------->| | 955 | |<---------| | | | 956 | (6)183 SDP | | | | 957 |<---------|----------| | | | 958 | | |(7)PRACK | | | 959 |----------|----------|----------|----------|--------->| 960 | |(8)200 OK (acknowledging PRACK) | | 961 |<---------|----------|----------|----------|----------| 962 | | | | | | 963 |<---------|--------Reserve Resources-------|--------->| 964 | | | | | | 965 | | (9)COMET | | 966 |----------|--------- |----------|----------|--------->| 967 | (10)200 OK (acknowledging COMET) | 968 |<---------|----------|----------|----------|----------| 969 | | | | (11)180 Ring | 970 | | | (12)180 |<---------|----------| 971 | (13)180 Ring |<---------| | | 972 |<---------|----------| | | | 973 | | |(14)PRACK | | | 974 |----------|----------|----------|----------|--------->| 975 | | (15)200 OK (acknowledging PRACK) | 976 |<---------|----------|----------|----------|----------| 977 | | | | | | User 978 | | | | (16)200 OK | Answers 979 | | | (17)200 |<---------|----------| 980 | (18)200 OK |<---------| | | 981 |<---------|----------| | | | 982 | (19)ACK | | | | 983 |----------|----------|----------|----------|--------->| 984 | | | | | | 985 |<---------|----------Active Call----------|--------->| 986 | | | | | | User 987 | | | | (20)BYE | Hangs Up 988 |<---------|----------|----------|----------|----------| 989 | | | | (21)200 OK | 990 |----------|----------|----------|----------|--------->| 992 DCS Group Category: Informational - Expiration 5/31/01 19 993 DCS Architecture November 2000 995 The above figure shows the basic DCS call flow from one MTA to 996 another. The basic DCS call flow starts with an INVITE from MTA-o 997 to MTA-t through proxies Proxy-o and Proxy-t. It follows the 998 conventions of SIP. The Via headers are used to track the path of 999 the request (INVITE) so that the response can traverse backwards 1000 through the same path. 1002 This INVITE is sent requesting that MTA-t not ring until the QoS 1003 preconditions are met. The purpose of this first INVITE is to 1004 invoke call features, such as call forwarding, to determine the 1005 proper destination MTA, and to negotiate the bandwidth and codec to 1006 be used so that the proper resources can be reserved. The response 1007 (183-Session-Progress) acknowledges the receipt of the INVITE 1008 message, provides the SDP for the forward media flow, and provides 1009 contact information for end-to-end messages that happen later in the 1010 call flow. When the INVITE is received, MTA-t's state reflects that 1011 a call is now being set-up. After MTA-o receives the 183-Session- 1012 Progress, it sends a PRACK message directly to MTA-t (as specified 1013 in the contact header) to acknowledgement receipt of MTA-t's SDP. 1015 After resources are reserved for the call, a COMET is sent to MTA-t. 1016 MTA-t responds with a 200-OK, and also sends a ringback indication 1017 in the form of a 180-Ringing message. When the call is answered, a 1018 200-OK to the INVITE is sent back to MTA-o, which ACKs the OK to 1019 MTA-t to complete the triple handshake. 1021 The bearer channel session can now be established. When the call is 1022 over, either end can send a BYE message directly to the other end. 1023 This BYE request must also be responded to with a 200-OK. 1025 The detailed steps followed and messages exchanged are: 1027 A call setup begins when MTA-o detects off-hook on one of its lines. 1028 MTA-o first puts that line in the "busy" state. MTA-o sends an 1029 audible dialtone signal to the customer and begins to detect DTMF 1030 digits. Upon receiving the first digit, MTA-o stops dialtone. 1031 Once a complete E.164 number has been received (based upon a digit 1032 map that has been provisioned in the MTA), MTA-o generates the 1033 following INVITE message and sends it to Proxy-o (the DCS-proxy that 1034 manages MTA-o). MTA-o starts the retransmission timer (T-proxy- 1035 request). 1037 (1) INVITE 1038 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 1039 Via: SIP/2.0/UDP Host(mta-o.provider) 1040 Supported: 100rel, state 1041 Remote-Party-ID: John Doe 1042 Anonymity: Off 1043 From: "Alien Blaster" 1045 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1046 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1047 Cseq: 127 INVITE 1049 DCS Group Category: Informational - Expiration 5/31/01 20 1050 DCS Architecture November 2000 1052 Contact: sip:Host(mta-o.provider) 1053 Content-Type: application/sdp 1054 Content-length: (.) 1056 v=0 1057 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1058 s=- 1059 c= IN IP4 Host(mta-o.provider) 1060 b=AS:64 1061 t=907165275 0 1062 a=X-pc-csuite:312F 1063 a=rtpmap:0 PCMU/8000 1064 a=rtpmap:96 G726-32/8000 1065 m=audio 3456 RTP/AVP 0 1066 a=qos:mandatory sendrecv 1067 a=X-pc-codecs:96 1069 The Request-URI starts with the dialed number from the user. The 1070 Remote-Party-ID gives the calling name and number, as provided by 1071 the MTA. Even though Anonymity indicates calling name and number 1072 privacy is not required for this call, the From, To, and Call-ID 1073 headers contain cryptographically random values to maintain privacy 1074 of the caller. 1076 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 1077 standard IPSec authentication. Proxy-o examines the Remote-Party-ID: 1078 line and checks to see that this originating phone number belongs to 1079 MTA-o, and is authorized for originating service. Proxy-o also 1080 checks to make sure the calling name in the Remote-Party-ID: line is 1081 a valid calling name for this line. Proxy-o then sends the dialed 1082 number to a directory server for resolution to an IP address. In 1083 this example, the directory server returns the address of Proxy-t, 1084 the Proxy that manages the terminating MTA. Proxy-o generates the 1085 following INVITE message and sends it to Proxy-t. Proxy-o add s a 1087 number of parameters to the INVITE message, which are described 1088 below. Upon sending this INVITE message, Proxy-o starts the 1089 retransmisison timer (T-proxy-request) and starts the T3 session 1090 timer (T-proxy-setup). The retransmission timer is cancelled on 1091 receipt of the optional 100-Trying provisional response (not present 1092 in this call flow); both are cancelled on receipt of the 183- 1093 Session-Progress provisional response. 1095 (2) INVITE 1096 INVITE sip:+1-212-555-2222,lrn=212-234@Host(dp-t);user=np-query 1097 SIP/2.0 1098 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 1099 Via: SIP/2.0/UDP Host(mta-o.provider) 1100 Supported: 100rel, state 1101 Require: state 1102 Proxy-Require: dcs, state 1103 Remote-Party-ID: John Doe; 1104 Anonymity: Off 1106 DCS Group Category: Informational - Expiration 5/31/01 21 1107 DCS Architecture November 2000 1109 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 1110 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/ 1111 212-555-1111/212-555-2222> 1112 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1113 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1114 orig-dest=tel:+1-212-555-2222; num-redirects=0 1115 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 1116 From: "Alien Blaster" 1118 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1119 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1120 Cseq: 127 INVITE 1121 Contact: sip:Host(mta-o.provider) 1122 Content-Type: application/sdp 1123 Content-length: (.) 1125 v=0 1126 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1127 s=- 1128 c= IN IP4 Host(mta-o.provider) 1129 b=AS:64 1130 t=907165275 0 1131 a=X-pc-csuites:312F 1132 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1133 a=rtpmap:0 PCMU/8000 1134 a=rtpmap:96 G726-32/8000 1135 m=audio 3456 RTP/AVP 0 1136 a=qos:mandatory sendrecv 1137 a=X-pc-codecs:96 1139 The "lrn" in the Request-URI shows that LNP dip has been done, and 1140 gives the result. The dialed number is fully expanded into E.164 1141 number. The Remote-Party-ID header contains verified Calling-Name 1142 and full E.164 Calling-Number. Dcs-Gate contains the IP address of 1143 the CMTS, the identity of the originating gate, and key for gate 1144 coordination messages. Also contained is the indication that gate 1145 coordination is required for this call. Dcs-Billing-Info contains 1146 the IP address of the record-keeping-server for event collection, 1147 the account number, originating number, and terminating number for 1148 billing of this call. State contains the state information wanted 1149 by Proxy-o for handling of messages from MTA-t to MTA-o. Dcs- 1150 Billing-ID contains the unique Billing identifier, made up of the 1151 CMS IP address, timestamp, and sequence number. A suggested 1152 encryption key is inserted into the SDP. 1154 Upon receiving this INVITE message, Proxy-t authenticates that the 1155 sender was Proxy-o using IPSec, and sends the E.164-t address to the 1156 directory server. In this example, the Directory Server is able to 1157 translate E.164-t to the IP address of MTA-t (one of the MTAs 1158 managed by Proxy-t). Proxy-t then checks to see if MTA-t is 1159 authorized for receiving this call. Proxy-t al s o c hecks the account 1161 information to determine if MTA-o is paying for the call or if MTA-t 1162 is expected to pay. Proxy-t generates the following INVITE message 1164 DCS Group Category: Informational - Expiration 5/31/01 22 1165 DCS Architecture November 2000 1167 and sends it to MTA-t. The Remote-Party-ID line appears unchanged 1168 only if the destination MTA has subscribed to caller-id service; 1169 otherwise, or if the caller had specified privacy of the caller 1170 information, the Remote-Party-ID line would be altered. Note that 1171 the Via lines have been encrypted, maintaining the privacy of the 1172 caller. The line State has been added, and contains all the 1173 information needed by the Proxy for any subsequent call features 1174 that may be requested. This information is signed by Proxy-t and 1175 encrypted. 1177 Upon sending this INVITE message, Proxy-t starts the retransmisison 1178 timer (T-proxy-request) and starts the T3 session timer (T-proxy- 1179 setup). The retransmission timer is cancelled on receipt of the 1180 optional 100-Trying provisional response (not present in this call 1181 flow); both are cancelled on receipt of the 183-Session-Progress 1182 provisional response. 1184 (3) INVITE 1185 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 1186 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1187 o.provider); branch=1"; via=Host(mta-o.provider)}K 1188 Supported: 100rel, state 1189 Require: state 1190 Remote-Party-ID: John Doe; 1191 Media-Authorization: 31S14621 1192 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1193 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1194 state="Host(dp-o.provider); nexthop=sip:555- 1195 1111@Host(mta-o.provider); gate=Host(cmts- 1196 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1197 2222; num-redirects=0"}K" 1198 From: "Alien Blaster" 1200 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1201 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1202 Cseq: 127 INVITE 1203 Contact: sip:Host(mta-o.provider) 1204 Content-Type: application/sdp 1205 Content-length: (.) 1207 v=0 1208 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1209 s=- 1210 c= IN IP4 Host(mta-o.provider) 1211 b=AS:64 1212 t=907165275 0 1213 a=X-pc-csuites:312F 1214 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1215 a=rtpmap:0 PCMU/8000 1216 a=rtpmap:96 G726-32/8000 1217 m=audio 3456 RTP/AVP 0 1218 a=qos:mandatory sendrecv 1219 a=X-pc-codecs:96 1221 DCS Group Category: Informational - Expiration 5/31/01 23 1222 DCS Architecture November 2000 1224 Local number portability information has been removed from the 1225 Request-URI, and the username is a string that is known to MTA-t. 1226 Via headers are encrypted to provide calling party privacy. Media- 1227 Authorization header contains the Gate-ID at the CMTS controlling 1228 the resources for MTA-t. State contains a string encrypted with a 1229 Proxy-t privately-held key, and contains nexthop routing 1230 information, CMTS address, Gate-ID, and all previous state headers 1231 from other proxies. 1233 Upon receiving this INVITE, MTA-t authenticates that the message 1234 came from Proxy-t using IPSec. MTA-t checks the telephone line 1235 associated with the E.164-t (as found in the Request URI) to see if 1236 it is available. If it is available, MTA-t looks at the capability 1237 parameters in the Session Description Protocol (SDP) part of the 1238 message and determines which media channel parameters it can 1239 accommodate for this call. MTA-t stores the INVITE message, 1240 including the encrypted State parameters, for later use. MTA-t 1241 puts this line in the "busy" state (so any other call attempts are 1242 rejected until this call clears), generates the following 183- 1243 Session-Progress response, and sends it to Proxy-t. MTA-t starts 1244 the retransmission timer with value (T-proxy-response) and starts 1245 the session timer (T3) with value (T-resource). 1247 MTA-t can, at its option, still accept further incoming calls and 1248 present them all to the customer. Such enhanced user interfaces for 1249 the MTA is beyond the scope of this specification. Note that MTA-t 1250 can't use the To: header field to determine the proper line, as it 1251 may be totally unrelated to the phone number at MTA-t. 1253 (4)183-Session-Progress 1254 SIP/2.0 183 Session Progress 1255 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1256 o.provider); branch=1"; via=Host(mta-o.provider)}K 1257 Require: 100rel 1258 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1259 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1260 state="Host(dp-o.provider); nexthop=sip:555- 1261 1111@Host(mta-o.provider); gate=Host(cmts- 1262 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1263 2222; num-redirects=0"}K" 1264 Remote-Party-ID: John Smith 1265 Anonymity: off 1266 From: "Alien Blaster" 1268 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1269 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1270 Cseq: 127 INVITE 1271 Rseq: 9021 1272 Content-Disposition: precondition 1273 Contact: sip:Host(mta-t.provider) 1274 Content-Type: application/sdp 1275 Content-length: (.) 1277 DCS Group Category: Informational - Expiration 5/31/01 24 1278 DCS Architecture November 2000 1280 v=0 1281 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1282 s=- 1283 c= IN IP4 Host(mta-t.provider) 1284 b=AS:64 1285 t=907165275 0 1286 a=X-pc-csuites:312F 1287 a=rtpmap:0 PCMU/8000 1288 m=audio 6544 RTP/AVP 0 1289 a=qos:mandatory sendrecv confirm 1291 Remote-Party-ID contains the called name and number, as provided by 1292 MTA. Anonymity indicates called name and number privacy is not 1293 requested for this call. SDP contains MTA-t's bearer channel IP 1294 address, and negotiated voice encoding parameters. 1296 Upon receiving the 183-Session-Progress message, Proxy-t forwards 1297 the following message to Proxy-o, restoring the Via headers, and 1298 adding Dcs-Gate information. At this point Proxy-t has completed 1299 all the call processing functions needed for this call, deletes its 1300 local state information, and handles all remaining messages as a 1301 stateless proxy. Proxy-t may include Dcs-Billing-Information if it 1302 wishes to override the billing information that came in the INVITE 1303 (e.g. collect or toll-free call). 1305 (5) 183-Session-Progress: 1306 SIP/2.0 183 Session Progress 1307 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1308 Via: SIP/2.0/UDP Host(mta-o.provider) 1309 Require: 100rel, state 1310 Proxy-Require: dcs, state 1311 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 1312 t.provider); gate=Host(cmts-t.provider):4321/31S14621; 1313 orig-dest=tel:+1-212-555-1111; num-redirects=0 1314 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1315 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1316 orig-dest=tel:+1-212-555-2222; num-redirects=0 1317 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 1318 Remote-Party-ID: John Smith 1319 Anonymity: off 1320 From: "Alien Blaster" 1322 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1323 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1324 Cseq: 127 INVITE 1325 Rseq: 9021 1326 Content-Disposition: precondition 1327 Contact: sip:Host(mta-t.provider) 1328 Content-Type: application/sdp 1329 Content-length: (.) 1331 DCS Group Category: Informational - Expiration 5/31/01 25 1332 DCS Architecture November 2000 1334 v=0 1335 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1336 s=- 1337 c= IN IP4 Host(mta-t.provider) 1338 b=AS:64 1339 t=907165275 0 1340 a=X-pc-csuites:312F 1341 a=rtpmap:0 PCMU/8000 1342 m=audio 6544 RTP/AVP 0 1343 a=qos:mandatory sendrecv confirm 1345 Upon receiving the 183-Session-Progress message, Proxy-o forwards 1346 the following message to MTA-o. This message contains a State 1347 parameter giving all the information needed by the Proxy for later 1348 features. The State value is signed by Proxy-o and encrypted by 1349 Proxy-o's privately-held key. At this point Proxy-o has completed 1350 all the call processing functions needed for this call, deletes its 1351 local state information, and handles all remaining messages as a 1352 stateless proxy. 1354 (6) 183-Session-Progress: 1355 SIP/2.0 183 Session Progress 1356 Via: Sip/2.0/UDP Host(mta-o.provider) 1357 Require: 100rel, state 1358 Media-Authorization: 17S30124 1359 State: Host(dp-o.provider); state="{gate= Host(cmts- 1360 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 1361 2222;lrn=212-234@Host(DP-t), state="Host(dp- 1362 t.provider); nexthop=sip:555-2222@Host(mta-t.provider); 1363 gate=Host(cmts-t.provider):4321/31S14621; orig- 1364 dest=tel:+1-212-555-1111; num-redirects=0"}K" 1365 Remote-Party-ID: John Smith 1366 From: "Alien Blaster" 1368 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1369 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1370 Cseq: 127 INVITE 1371 Rseq: 9021 1372 Content-Disposition: precondition 1373 Contact: sip:Host(mta-t.provider) 1374 Content-Type: application/sdp 1375 Content-length: (.) 1377 v=0 1378 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1379 s=- 1380 c= IN IP4 Host(mta-o.provider) 1381 b=AS:64 1382 t=907165275 0 1383 a=X-pc-csuites:312F 1384 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1385 a=rtpmap:0 PCMU/8000 1387 DCS Group Category: Informational - Expiration 5/31/01 26 1388 DCS Architecture November 2000 1390 m=audio 6544 RTP/AVP 0 1391 a=qos:mandatory sendrecv confirm 1393 Upon receiving the 183-Session-Progress message, MTA-o stops timer 1394 (T-proxy-request) and sends the following PRACK message directly to 1395 MTA-t using the IP address in the Contact header of the 183-Session- 1396 Progress message. 1398 (7) PRACK: 1399 PRACK sip:Host(mta-t.provider) SIP/2.0 1400 Via: SIP/2.0/UDP Host(mta-o.provider) 1401 From: "Alien Blaster" 1403 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1404 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1405 Cseq: 128 PRACK 1406 Rack: 9021 127 INVITE 1407 Content-Type: application/sdp 1408 Content-length: (.) 1410 v=0 1411 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1412 s=- 1413 c= IN IP4 Host(mta-o.provider) 1414 b=AS:64 1415 t=907165275 0 1416 a=X-pc-csuites:312F 1417 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1418 a=rtpmap:0 PCMU/8000 1419 m=audio 3456 RTP/AVP 0 1420 a=qos:mandatory sendrecv 1422 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 1423 the resources necessary for the call. 1425 (8) 200 OK: 1426 SIP/2.0 200 OK 1427 Via: SIP/2.0/UDP Host(mta-o.provider) 1428 From: "Alien Blaster" 1430 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1431 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1432 Cseq: 128 PRACK 1434 After sending PRACK(7), MTA-o attempts to reserve network resources 1435 if necessary. If resource reservation is successful, MTA-o sends 1436 the following COMET message directly to MTA-t. MTA-o starts timer 1437 (T-direct-request). 1439 (9) COMET: 1441 DCS Group Category: Informational - Expiration 5/31/01 27 1442 DCS Architecture November 2000 1444 COMET sip:Host(mta-t.provider) SIP/2.0 1445 Via: SIP/2.0/UDP Host(mta-o.provider) 1446 From: "Alien Blaster" 1448 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1449 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1450 Cseq: 129 COMET 1451 Content-Type: application/sdp 1452 Content-length: (.) 1454 v=0 1455 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1456 s=- 1457 c= IN IP4 Host(mta-o.provider) 1458 b=AS:64 1459 t=907165275 0 1460 a=X-pc-csuites:312F 1461 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1462 a=rtpmap:0 PCMU/8000 1463 m=audio 3456 RTP/AVP 0 1464 a=qos:success send 1466 MTA-t acknowledges the COMET message with a 200-OK. 1468 (10) 200 OK: 1469 SIP/2.0 200 OK 1470 Via: SIP/2.0/UDP Host(mta-o.provider) 1471 From: "Alien Blaster" 1473 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1474 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1475 Cseq: 129 COMET 1477 Upon receipt of the 200-OK(10), MTA-o stops timer (T-direct- 1478 request). 1480 Upon receipt of the (7) PRACK message, MTA-t stops timer (T-proxy- 1481 response) and attempts to reserve network resources if necessary. 1482 Once MTA-t both receives the COMET message and has successfully 1483 reserved network resources, MTA-t begins to send ringing voltage to 1484 the designated line and sends the following 180 RINGING message 1485 through Proxy-t. MTA-t restarts the session timer (T3) with value 1486 (T-ringing). 1488 (11) 180 RINGING: 1489 SIP/2.0 180 Ringing 1490 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1491 o.provider); branch=1"; via=Host(mta-o.provider)} 1492 K 1493 Require: 100rel 1494 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1495 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1497 DCS Group Category: Informational - Expiration 5/31/01 28 1498 DCS Architecture November 2000 1500 state="Host(dp-o.provider); nexthop=sip:555- 1501 1111@Host(mta-o.provider); gate=Host(cmts- 1502 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1503 2222; num-redirects=0"}K" 1504 From: "Alien Blaster" 1506 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1507 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1508 Contact: sip:Host(mta-t.provider) 1509 Cseq: 127 INVITE 1510 Rseq: 9022 1512 Proxy-t decodes the Via: headers, and passes the 180-Ringing to 1513 Proxy-o. This operation is done as a SIP stateless proxy. 1515 (12) 180 RINGING: 1516 SIP/2.0 180 Ringing 1517 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1518 Via: SIP/2.0/UDP Host(mta-o.provider) 1519 Require: 100rel 1520 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1521 o.provider); gate=Host(cmts-o.provider):3612/17S30124 1522 From: "Alien Blaster" 1524 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1525 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1526 Cseq: 127 INVITE 1527 Rseq: 9022 1529 Proxy-o handles the message as a SIP stateless proxy, and passes the 1530 180-Ringing to MTA-o. 1532 (13) 180 RINGING: 1533 SIP/2.0 180 Ringing 1534 Via: SIP/2.0/UDP Host(mta-o.provider) 1535 Require: 100rel 1536 From: "Alien Blaster" 1538 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1539 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1540 Cseq: 127 INVITE 1541 Rseq: 9022 1543 Upon receipt of the 180 RINGING message, MTA-o restarts the 1544 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 1545 the provisional response with a PRACK, and plays audible ringback 1546 tone to the customer. 1548 (14) PRACK: 1549 PRACK sip:Host(mta-t.provider) SIP/2.0 1551 DCS Group Category: Informational - Expiration 5/31/01 29 1552 DCS Architecture November 2000 1554 Via: SIP/2.0/UDP Host(mta-o.provider) 1555 From: "Alien Blaster" 1557 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1558 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1559 Contact: sip:Host(mta-t.provider) 1560 Cseq: 130 PRACK 1561 Rseq: 9022 127 INVITE 1563 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 1564 proxy-response). 1566 (15) 200 OK: 1567 SIP/2.0 200 OK 1568 Via: SIP/2.0/UDP Host(mta-o.provider) 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: 130 PRACK 1575 Once MTA-t detects off-hook on the called line, it disconnects 1576 ringing voltage from the line and sends the final response through 1577 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 1578 proxy-response). If necessary, MTA-t may also commit to resources 1579 that have been reserved for this call. At this point, MTA-t begins 1580 to generate bearer channel packets of encoded voice and send them to 1581 MTA-o using the IP address and port number specified in the SDP part 1582 of the original INVITE message. 1584 (16) 200-OK: 1585 SIP/2.0 200 OK 1586 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 1587 o.provider); branch=1"; via=Host(mta-o.provider)} 1588 K 1589 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 1590 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 1591 state="Host(dp-o.provider); nexthop=sip:555- 1592 1111@Host(mta-o.provider); gate=Host(cmts- 1593 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 1594 2222; num-redirects=0"}K" 1595 From: "Alien Blaster" 1597 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1598 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1599 Cseq: 127 INVITE 1601 Proxy-t handles the message as a SIP stateless proxy, and forwards 1602 it to Proxy-o. 1604 (17) 200-OK: 1606 DCS Group Category: Informational - Expiration 5/31/01 30 1607 DCS Architecture November 2000 1609 SIP/2.0 200 OK 1610 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1611 Via: SIP/2.0/UDP Host(mta-o.provider) 1612 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1613 o.provider); gate=Host(cmts-o.provider):3612/17S30124 1614 From: "Alien Blaster" 1616 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1617 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1618 Cseq: 127 INVITE 1620 Proxy-o handles the message as a SIP stateless proxy, and forwards 1621 it to MTA-o. 1623 (18) 200-OK: 1624 SIP/2.0 200 OK 1625 Via: SIP/2.0/UDP Host(mta-o.provider) 1626 From: "Alien Blaster" 1628 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1629 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1630 Cseq: 127 INVITE 1632 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 1633 and stops playing audible ringback tone to the customer and begins 1634 to play the bearer channel stream that is received from MTA-t. MTA- 1635 o sends the following ACK message to MTA-t. If necessary, MTA-o may 1636 also commit to resources that have been reserved for this call. At 1637 this point, MTA-o begins to generate bearer channel packets of 1638 encoded voice and send them to MTA-t using the IP address and port 1639 number specified in the SDP part of the original 183-Session- 1640 Progress message (that was a response to the original INVITE). 1642 (19) ACK: 1643 ACK sip:Host(mta-t.provider) SIP/2.0 1644 Via: SIP/2.0/UDP Host(mta-o.provider) 1645 From: "Alien Blaster" 1647 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1648 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1649 Cseq: 127 ACK 1651 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 1652 response). 1654 When either MTA detects hangup, it sends out a BYE message to the 1655 other MTA. In this example, MTA-o detected that the customer hung 1656 up the phone. MTA-o puts that line in the "idle" state so new calls 1657 can be made or received. It sends the following BYE message 1658 directly to MTA-t. MTA-o may also need to release network resources 1659 that have been used for the call. MTA-o starts timer (T-direct- 1660 request). 1662 DCS Group Category: Informational - Expiration 5/31/01 31 1663 DCS Architecture November 2000 1665 (20) BYE: 1666 BYE sip:Host(mta-t.provider) SIP/2.0 1667 Via: SIP/2.0/UDP Host(mta-o.provider) 1668 From: "Alien Blaster" 1670 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1671 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1672 Cseq: 131 BYE 1674 Upon receipt of the BYE message, MTA-t stops playing the bearer 1675 channel stream received from MTA-o and, if necessary, releases 1676 network resources that have been used for this call. MTA-t sen d s t he 1678 following 200-OK message to MTA-o. MTA-t starts a 15-second timer 1679 (T-hangup) (Note: this is a local interface issue, and not part of 1680 this specification). If MTA-t does not detect hangup on the line 1681 before timer (T-hangup) expires, it plays "reorder" tone on the 1682 customer line. Once hangup is detected, MTA-t puts that line in the 1683 "idle" state so new calls can be made or received. 1685 (21) 200-OK: 1686 SIP/2.0 200 OK 1687 Via: SIP/2.0/UDP Host(mta-o.provider) 1688 From: "Alien Blaster" 1690 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1691 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1692 Cseq: 131 BYE 1694 Upon receipt of 200-OK, MTA-o stops timer (T-direct-request). 1696 DCS Group Category: Informational - Expiration 5/31/01 32 1697 DCS Architecture November 2000 1699 9.2 Basic Call Flow from MTA to CMS 1701 MTA-o Proxy-o CMS-t Endpoint-t 1703 | (1)Invite | | | 1704 |-------------------->|(2)Invite | | 1705 | |--------->| | 1706 | | | Private Signaling | 1707 | | |<------------------->| 1708 | |(3)183 SDP| | 1709 | |<---------| | 1710 | | | | 1711 | (4)183 SDP | | | 1712 |<--------------------| | | 1713 | (5)PRACK | | 1714 |---------------------|--------->| | 1715 | | | Private Signaling | 1716 | | |<------------------->| 1717 | (6)200 OK (acknowledging PRACK)| | 1718 |<--------------------|----------| | 1719 | | | | 1720 |<------------------Reserve Resources----------------->| 1721 | | | | 1722 | (7)COMET | | 1723 |-------------------- |--------->| | 1724 |(8)200 OK (acknowledging COMET) | 1725 |<--------------------|----------| | 1726 | | | Private Signaling | 1727 | | |<------------------->| 1728 | | (9)180 | | 1729 | (10)180 Ringing |<---------| | 1730 |<--------------------| | | 1731 | (11)PRACK | | 1732 |---------------------|--------->| | 1733 |(12)200 OK (acknowledging PRACK) | 1734 |<--------------------|----------| | 1735 | | | | User 1736 | | | Private Signaling | Answers 1737 | | |<------------------->| 1738 | | (13)200 | | 1739 | (14)200 OK |<---------| | 1740 |<--------------------| | | 1741 | (15)ACK | | | 1742 |---------------------|--------->| | 1743 | | | | 1744 |<--------------------Active Call-------------------->| 1745 | | | | User 1746 | | | Private Signaling | Hangs Up 1747 | (16)BYE |<------------------->| 1748 |<--------------------|----------| | 1749 | (17)200 OK | | 1750 |---------------------|--------->| | 1752 DCS Group Category: Informational - Expiration 5/31/01 33 1753 DCS Architecture November 2000 1755 This section describes the DCS call signaling flow for a basic call 1756 that terminate on the PSTN, or some other endpoint controlled by a 1757 CMS. 1759 A call setup begins when MTA-o detects off-hook on one of its lines. 1760 MTA-o first puts that line in the "busy" state. MTA-o sends an 1761 audible dialtone signal to the customer and begins to detect DTMF 1762 digits. Upon receiving the first digit, MTA-o stops dialtone. Once 1763 a complete E.164 number has been received (based upon a digit map 1764 that has been provisioned in the MTA), MTA-o generates the following 1765 SIP INVITE message and sends it to Proxy-o (the Proxy that manages 1766 MTA-o). MTA-o starts the retransmission timer (T-proxy-request). 1768 (1) INVITE: 1769 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 1770 Via: SIP/2.0/UDP Host(mta-o.provider) 1771 Supported: 100rel, state 1772 Remote-Party-ID: John Doe 1773 Anonymity: Off 1774 From: "Alien Blaster" 1776 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1777 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1778 Cseq: 127 INVITE 1779 Contact: sip:Host(mta-o.provider) 1780 Content-Type: application/sdp 1781 Content-length: (.) 1783 v=0 1784 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1785 s=- 1786 c= IN IP4 Host(mta-o.provider) 1787 b=AS:64 1788 t=907165275 0 1789 a=X-pc-csuite:312F 1790 a=rtpmap:0 PCMU/8000 1791 a=rtpmap:96 G726-32/8000 1792 m=audio 3456 RTP/AVP 0 1793 a=qos:mandatory sendrecv 1794 a=X-pc-codecs:96 1796 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 1797 standard IPSec authentication. Proxy-o examines the Remote-Party-ID: 1798 line and checks to see that this originating phone number belongs to 1799 MTA-o, and is authorized for originating service. Proxy-o also 1800 checks to make sure the calling name in the Remote-Party-ID: line is 1801 a valid calling name for this line. Proxy-o then sends the dialed 1802 number to a directory server for resolution to an IP address. In 1803 this example, the directory server returns the address of CMS-t, the 1804 CMS that manages the endpoint device. Proxy-o generates the 1806 DCS Group Category: Informational - Expiration 5/31/01 34 1807 DCS Architecture November 2000 1809 following INVITE message and sends it to CMS-t. Proxy-o add s a number 1811 of parameters to the INVITE message, which are described below. Upon 1812 sending this INVITE message, Proxy-o starts the retransmisison timer 1813 (T-proxy-request) and starts the T3 session timer (T-proxy-setup). 1814 The retransmission timer is cancelled on receipt of the optional 1815 100-Trying provisional response (not present in this call flow); 1816 both are cancelled on receipt of the 183-Session-Progress 1817 provisional response. 1819 (2) INVITE: 1820 INVITE sip:+1-212-555-2222,lrn=212-234@Host(cms-t);user=np- 1821 queried SIP/2.0 1822 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 1823 Via: SIP/2.0/UDP Host(mta-o.provider) 1824 Supported: 100rel, state 1825 Require: state 1826 Proxy-Require: dcs, state 1827 Remote-Party-ID: John Doe; 1828 Anonymity: Off 1829 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 1830 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 1831 555-1111/212-555-2222> 1832 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1833 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1834 orig-dest=tel:+1-212-555-2222; num-redirects=0 1835 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 1836 From: "Alien Blaster" 1838 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1839 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1840 Cseq: 127 INVITE 1841 Contact: sip:Host(mta-o.provider) 1842 Content-Type: application/sdp 1843 Content-length: (.) 1845 v=0 1846 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1847 s=- 1848 c= IN IP4 Host(mta-o.provider) 1849 b=AS:64 1850 t=907165275 0 1851 a=X-pc-csuites:312F 1852 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1853 a=rtpmap:0 PCMU/8000 1854 a=rtpmap:96 G726-32/8000 1855 m=audio 3456 RTP/AVP 0 1856 a=qos:mandatory sendrecv 1857 a=X-pc-codecs:96 1859 Upon receiving this INVITE message, CMS-t authenticates that the 1860 sender was Proxy-o using IPSec, and determines the proper endpoint 1861 device to receive this call. CMS-t engages in local signaling with 1862 that endpoint device, outside the scope of this specification, and 1864 DCS Group Category: Informational - Expiration 5/31/01 35 1865 DCS Architecture November 2000 1867 determines the proper SDP for the media flow to this endpoint 1868 device. When complete, CMS-t forwards the following message message 1869 to Proxy-o. The CMS-t lists itself as the location of the Dcs-Gate, 1870 since it simulates the gate operation. CMS-t may include Dcs- 1871 Billing-Information if it wishes to override the billing information 1872 that came in the INVITE (e.g. collect or toll-free call). 1874 (3) 183-Session-Progress: 1875 SIP/2.0 183 Session Progress 1876 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 1877 Via: SIP/2.0/UDP Host(mta-o.provider) 1878 Require: 100rel, state 1879 Proxy-Require: dcs, state 1880 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 1881 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 1882 orig-dest=tel:+1-212-555-2222; num-redirects=0 1883 Dcs-Gate: Host(cms-t.provider):4321/137S90721/805628 1884 Remote-Party-ID: John Smith 1885 Anonymity: off 1886 From: "Alien Blaster" 1888 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1889 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1890 Cseq: 127 INVITE 1891 Rseq: 9021 1892 Content-Disposition: precondition 1893 Contact: sip:Host(cms-t.provider) 1894 Content-Type: application/sdp 1895 Content-length: (.) 1897 v=0 1898 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1899 s=- 1900 c= IN IP4 Host(mg02.provider) 1901 b=AS:64 1902 t=907165275 0 1903 a=X-pc-csuites:312F 1904 a=rtpmap:0 PCMU/8000 1905 m=audio 6544 RTP/AVP 0 1906 a=qos:mandatory sendrecv confirm 1908 Upon receiving the 183-Session-Progress message, Proxy-o forwards 1909 the following message to MTA-o. This message contains a State 1910 parameter giving all the information needed by the Proxy for later 1911 features. The State value is signed by Proxy-o and encrypted by 1912 Proxy-o's privately-held key. At this point Proxy-o has completed 1913 all the call processing functions needed for this call, deletes its 1914 local state information, and handles all remaining messages as a 1915 stateless proxy. 1917 (4) 183-Session-Progress: 1918 SIP/2.0 183 Session Progress 1919 Via: Sip/2.0/UDP Host(mta-o.provider) 1921 DCS Group Category: Informational - Expiration 5/31/01 36 1922 DCS Architecture November 2000 1924 Require: 100rel, state 1925 Media-Authorization: 17S30124 1926 State: Host(dp-o.provider); state="{gate= Host(cmts- 1927 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 1928 2222;lrn=212-234@Host(cms-t)}K" 1929 Remote-Party-ID: John Smith 1930 From: "Alien Blaster" 1932 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1933 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1934 Cseq: 127 INVITE 1935 Rseq: 9021 1936 Content-Disposition: precondition 1937 Contact: sip:Host(cms-t.provider) 1938 Content-Type: application/sdp 1939 Content-length: (.) 1941 v=0 1942 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1943 s=- 1944 c= IN IP4 Host(mg02.provider) 1945 b=AS:64 1946 t=907165275 0 1947 a=X-pc-csuites:312F 1948 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1949 a=rtpmap:0 PCMU/8000 1950 m=audio 6544 RTP/AVP 0 1951 a-X=pc-qos:mandatory sendrecv confirm 1953 Upon receiving the 183-Session-Progress message, MTA-o stops timer 1954 (T-proxy-request) and sends the following PRACK message directly to 1955 CMS-t using the IP address in the Contact header of the 183-Session- 1956 Progress message. 1958 (5) PRACK: 1959 PRACK sip:Host(cms-t.provider) SIP/2.0 1960 Via: SIP/2.0/UDP Host(mta-o.provider) 1961 From: "Alien Blaster" 1963 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1964 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1965 Cseq: 128 PRACK 1966 Rack: 9021 127 INVITE 1967 Content-Type: application/sdp 1968 Content-length: (.) 1970 v=0 1971 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 1972 s=- 1973 c= IN IP4 Host(mta-o.provider) 1974 b=AS:64 1975 t=907165275 0 1976 a=X-pc-csuites:312F 1978 DCS Group Category: Informational - Expiration 5/31/01 37 1979 DCS Architecture November 2000 1981 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 1982 a=rtpmap:0 PCMU/8000 1983 m=audio 3456 RTP/AVP 0 1984 a-Qos:mandatory sendrecv 1985 CMS-t acknowledges the PRACK with a 200-OK, and performs local 1986 signaling with the endpoint (outside the scope of this 1987 specification) in order to begin reserving the resources necessary 1988 for the call. 1990 (6) 200 OK: 1991 SIP/2.0 200 OK 1992 Via: SIP/2.0/UDP Host(mta-o.provider) 1993 From: "Alien Blaster" 1995 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 1996 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 1997 Cseq: 128 PRACK 1999 After sending PRACK(5), MTA-o attempts to reserve network resources 2000 if necessary. If resource reservation is successful, MTA-o sends 2001 the following COMET message directly to CMS-t. MTA-o starts timer 2002 (T-direct-request). 2004 (7) COMET: 2005 COMET sip:Host(cms-t.provider) SIP/2.0 2006 Via: SIP/2.0/UDP Host(mta-o.provider) 2007 From: "Alien Blaster" 2009 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2010 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2011 Cseq: 129 COMET 2012 Content-Type: application/sdp 2013 Content-length: (.) 2015 v=0 2016 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2017 s=- 2018 c= IN IP4 Host(mta-o.provider) 2019 b=AS:64 2020 t=907165275 0 2021 a=X-pc-csuites:312F 2022 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2023 a=rtpmap:0 PCMU/8000 2024 m=audio 3456 RTP/AVP 0 2025 a=qos:success send 2027 CMS-t acknowledges the COMET message with a 200-OK. 2029 (8) 200 OK: 2030 SIP/2.0 200 OK 2031 Via: SIP/2.0/UDP Host(mta-o.provider) 2032 From: "Alien Blaster" 2035 DCS Group Category: Informational - Expiration 5/31/01 38 2036 DCS Architecture November 2000 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: 129 COMET 2042 Upon receipt of the 200-OK(8), MTA-o stops timer (T-direct-request). 2043 Upon receipt of the (5) PRACK message, CMS-t stops timer (T-proxy- 2044 response) and signals the endpoint device to attempt to reserve the 2045 network resources necessary. Once CMS-t both receives the COMET 2046 message and acknowledgement from the endpoint device, CMS-t sends 2047 the following 180-Ringing (or 183-Sesison-Progress, with a 2048 Session:Media header) message. CMS-t restarts the session timer(T3) 2049 with value (T-ringing). 2051 (9) 180 RINGING: 2052 SIP/2.0 180 Ringing 2053 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2054 Via: SIP/2.0/UDP Host(mta-o.provider) 2055 Require: 100rel 2056 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 2057 o.provider); gate=Host(cmts-o.provider):3612/17S30124 2058 From: "Alien Blaster" 2060 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2061 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2062 Contact: sip:Host(cms-t.provider) 2063 Cseq: 127 INVITE 2064 Rseq: 9022 2066 Proxy-o handles the message as a SIP stateless proxy, and passes the 2067 180-Ringing (or 183-Session-Progress) to MTA-o. 2069 (10) 180 RINGING: 2070 SIP/2.0 180 Ringing 2071 Via: SIP/2.0/UDP Host(mta-o.provider) 2072 Require: 100rel 2073 From: "Alien Blaster" 2075 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2076 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2077 Contact: sip:Host(cms-t.provider) 2078 Cseq: 127 INVITE 2079 RSeq: 9022 2081 Upon receipt of the 180 RINGING message, MTA-o restarts the 2082 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 2083 the provisional response with a PRACK, and plays audible ringback 2084 tone to the customer. 2086 (11) PRACK: 2087 PRACK sip:Host(cms-t.provider) SIP/2.0 2088 Via: SIP/2.0/UDP Host(mta-o.provider) 2089 From: "Alien Blaster" 2092 DCS Group Category: Informational - Expiration 5/31/01 39 2093 DCS Architecture November 2000 2095 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2096 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2097 Cseq: 130 PRACK 2098 RAck: 9022 127 INVITE 2100 CMS-t acknowledges the PRACK with a 200-OK, and stops timer (T- 2101 proxy-response). 2103 (12) 200 OK: 2104 SIP/2.0 200 OK 2105 Via: SIP/2.0/UDP Host(mta-o.provider) 2106 From: "Alien Blaster" 2108 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2109 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2110 Cseq: 130 PRACK 2112 Once CMS-t, via private signaling with the endpoint device, detects 2113 off-hook on the called line, it sends the final response to the 2114 INVITE. CMS-t stops timer (T-ringing) and starts timer (T-proxy- 2115 response). If necessary, MTA-t may also commit to resources that 2116 have been reserved for this call. At this point, the endpoint 2117 device begins to generate bearer channel packets of encoded voice 2118 and send them to MTA-o using the IP address and port number 2119 specified in the SDP part of the original INVITE message. 2121 (13) 200-OK: 2122 SIP/2.0 200 OK 2123 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2124 Via: SIP/2.0/UDP Host(mta-o.provider) 2125 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 2126 o.provider); gate=Host(cmts-o.provider):3612/17S30124 2127 From: "Alien Blaster" 2129 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2130 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2131 Cseq: 127 INVITE 2133 Proxy-o handles the message as a SIP stateless proxy, and forwards 2134 it to MTA-o. 2136 (14) 200-OK: 2137 SIP/2.0 200 OK 2138 Via: SIP/2.0/UDP Host(mta-o.provider) 2139 From: "Alien Blaster" 2141 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2142 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2143 Cseq: 127 INVITE 2145 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 2146 and stops playing audible ringback tone to the customer and begins 2147 to play the bearer channel stream that is received. MTA-o sends the 2149 DCS Group Category: Informational - Expiration 5/31/01 40 2150 DCS Architecture November 2000 2152 following ACK message to CMS-t. If necessary, MTA-o may also commit 2153 to resources that have been reserved for this call. At this point, 2154 MTA-o begins to generate bearer channel packets of encoded voice and 2155 send them to the remote endpoint using the IP address and port 2156 number specified in the SDP part of the original 183-Session- 2157 Progress message (that was a response to the original INVITE). 2159 (15) ACK: 2160 ACK sip:Host(mta-t.provider) SIP/2.0 2161 Via: SIP/2.0/UDP Host(mta-o.provider) 2162 From: "Alien Blaster" 2164 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2165 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2166 Cseq: 127 ACK 2168 Upon receipt of the ACK message, CMS-t stop timer (T-proxy- 2169 response). 2171 When MTA-o detects a hangup, or the endpoint device controlled by 2172 CMS-t detects a hangup, it sends out a BYE message to the other 2173 endpoint. In this example, CMS-t detected that the customer hung up 2174 the phone. CMS-t puts that line in the "idle" state so new calls can 2175 be made or received. It sends the following BYE message directly to 2176 MTA-o. CMS-t may also need to release network resources that have 2177 been used for the call. CMS-t starts timer (T-direct-request). 2179 (16) BYE: 2180 BYE sip:Host(mta-o.provider) SIP/2.0 2181 Via: SIP/2.0/UDP Host(cms-t.provider) 2182 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2183 To: "Alien Blaster" 2185 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2186 Cseq: 131 BYE 2188 Upon receipt of the BYE message, MTA-o stops playing the bearer 2189 channel stream received from the endpoint device, and, if necessary, 2190 releases network resources that have been used for this call. MTA-o 2191 sends the following 200-OK message to CMS-t. MTA-o starts a 15- 2192 second timer (T-hangup) (Note: this is a local interface issue, and 2193 not part of this specification). If MTA-o does not detect hangup on 2194 the line before timer (T-hangup) expires, it plays "reorder" tone on 2195 the customer line. Once hangup is detected, MTA-o puts that line in 2196 the "idle" state so new calls can be made or received. 2198 (17) 200-OK: 2199 SIP/2.0 200 OK 2200 Via: SIP/2.0/UDP Host(cms-t.provider) 2201 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 2202 To: "Alien Blaster" 2204 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2206 DCS Group Category: Informational - Expiration 5/31/01 41 2207 DCS Architecture November 2000 2209 Cseq: 131 BYE 2211 Upon receipt of 200-OK, CMS-t stops timer (T-direct-request). 2213 9.3 Basic Call Flow from CMS to MTA 2215 Endpoint-o CMS-o Proxy-t MTA-t 2217 | Private Signaling | | | 2218 |<------------------->|(1)INVITE | | 2219 | |--------->| (2)INVITE | 2220 | | |-------------------->| 2221 | | | (3) 183 SDP | 2222 | | |<--------------------| 2223 | |(4)183 SDP| | 2224 | |<---------| | 2225 | Private Signaling | | | 2226 |<------------------->| | (5)PRACK | 2227 | |------------------------------->| 2228 | | (6)200 OK (acknowledging PRACK)| 2229 | |<-------------------------------| 2230 | | | | 2231 |<------------------Reserve Resources----------------->| 2232 | | | | 2233 | Private Signaling | | | 2234 |<------------------->| (7)COMET | 2235 | |------------------------------->| 2236 | |(8)200 OK (acknowledging COMET) | 2237 | |<--------------------|----------| 2238 | | | (9) 180 Ringing | 2239 | | |<------------------->| 2240 | | (10)180 | | 2241 | Private Signaling |<---------| | 2242 |<------------------->| (11)PRACK | 2243 | |------------------------------->| 2244 | |(12)200 OK (acknowledging PRACK)| 2245 | |<-------------------------------| 2246 | | | | User 2247 | | | (13)200 OK | Answers 2248 | | |<--------------------| 2249 | | (14)200 | | 2250 | Private Signaling |<---------| | 2251 |<------------------->| (15)ACK | 2252 | |------------------------------->| 2253 | | | | 2254 |<--------------------Active Call-------------------->| 2255 | | | | User 2256 | | (16)BYE | Hangs Up 2257 | |<-------------------------------| 2258 | | (17)200 OK | 2259 | |------------------------------->| 2261 DCS Group Category: Informational - Expiration 5/31/01 42 2262 DCS Architecture November 2000 2264 This example shows a call originating on the PSTN and directed to a 2265 destination on the PacketCable network. We assume the same sequence 2266 of user behavior as in the basic call flow of section 9.1, only 2267 difference being the location of the originator. 2269 A call setup begins when the endpoint device controlled by CMS-o 2270 detects an off-hook condition on one of its lines. This event is 2271 communicated to CMS-o through a private signaling exchange beyond 2272 the scope of this specification. CMS-o first puts that line in the 2273 "busy" state, and collects a complete E.164 number. As a result of a 2274 translation function performed by CMS-o, the destination is 2275 determined to be a DCS device served by Proxy-t. CMS-o generates 2276 the following SIP INVITE message and sends it to Proxy-t. CMS-o 2277 starts the retransmission timer (T-proxy-request) and starts the T3 2278 session timer (T -setup). The retransmission timer is cancelled on 2279 receipt of the optional 100-Trying provisional response (not present 2280 in this call flow); both are cancelled on receipt of the 183- 2281 Session-Progress provisional response. 2283 (1) INVITE: 2284 INVITE sip:+1-212-555-2222,lrn=212-234@Host(DP-t);user=np- 2285 queried SIP/2.0 2286 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2287 Supported: 100rel, state 2288 Require: state 2289 Proxy-Require: dcs, state 2290 Remote-Party-ID: John Doe; 2291 Anonymity: Off 2292 Dcs-Gate: Host(cms-o.provider):3612/17S30124/37FA1948 optional 2293 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 2294 555-1111/212-555-2222> 2295 Dcs-Billing-ID: Host(cms-o.provider):36123E5C:0152 2296 From: John Doe; 2297 To: tel:+1-212-555-2222 2298 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2299 Cseq: 127 INVITE 2300 Contact: sip:Host(cms-o.provider) 2301 Content-Type: application/sdp 2302 Content-length: (.) 2304 v=0 2305 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2306 s=- 2307 c= IN IP4 Host(mg02.provider) 2308 b=AS:64 2309 t=907165275 0 2310 a=X-pc-csuites:312F 2311 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2312 a=rtpmap:0 PCMU/8000 2313 a=rtpmap:96 G726-32/8000 2314 m=audio 3456 RTP/AVP 0 2315 a=qos:mandatory sendrecv 2316 a=X-pc-codecs:96 2318 DCS Group Category: Informational - Expiration 5/31/01 43 2319 DCS Architecture November 2000 2321 Upon receiving this INVITE message, Proxy-t authenticates that the 2322 sender was CMS-o using IPSec, and sends the E.164-t address to the 2323 directory server. In this example, the Directory Server is able to 2324 translate E.164-t to the IP address of MTA-t (one of the MTAs 2325 managed by Proxy-t). Proxy-t then checks to see if MTA-t is 2326 authorized for receiving this call. Proxy-t al s o c hecks the account 2328 information to determine if MTA-o is paying for the call or if MTA-t 2329 is expected to pay. Proxy-t generates the following INVITE message 2330 and sends it to MTA-t. The Remote-Party-ID line appears unchanged 2331 only if the destination MTA has subscribed to caller-id service; 2332 otherwise, or if the caller had specified privacy of the caller 2333 information, the Remote-Party-ID line would be altered. Note that 2334 the Via lines have been encrypted, maintaining the privacy of the 2335 caller. The line State has been added, and contains all the 2336 information needed by the Proxy for any subsequent call features 2337 that may be requested. This information is signed by Proxy-t and 2338 encrypted. 2340 Upon sending this INVITE message, Proxy-t starts the retransmisison 2341 timer (T-proxy-request) and starts the T3 session timer (T-proxy- 2342 setup). The retransmission timer is cancelled on receipt of the 2343 optional 100-Trying provisional response (not present in this call 2344 flow); both are cancelled on receipt of the 183-Session-Progress 2345 provisional response. 2347 (2) INVITE: 2348 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 2349 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2350 o.provider); branch=1"}K 2351 Supported: 100rel, state 2352 Require: state 2353 Remote-Party-ID: John Doe; 2354 Media-Authorization: 31S14621 2355 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2356 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2357 From: John Doe; 2358 To: tel:+1-212-555-2222 2359 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2360 Cseq: 127 INVITE 2361 Contact: sip:Host(cms-o.provider) 2362 Content-Type: application/sdp 2363 Content-length: (.) 2365 v=0 2366 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2367 s=- 2368 c= IN IP4 Host(mg02.provider) 2369 b=AS:64 2370 t=907165275 0 2371 a=X-pc-csuites:312F 2372 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2373 a=rtpmap:0 PCMU/8000 2375 DCS Group Category: Informational - Expiration 5/31/01 44 2376 DCS Architecture November 2000 2378 a=rtpmap:96 G726-32/8000 2379 m=audio 3456 RTP/AVP 0 2380 a=qos:mandatory sendrecv 2381 a=X-pc-codecs:96 2383 Upon receiving this INVITE, MTA-t authenticates that the message 2384 came from Proxy-t using IPSec. MTA-t checks the telephone line 2385 associated with the E.164-t (as found in the Request URI) to see if 2386 it is available. If it is available, MTA-t looks at the capability 2387 parameters in the Session Description Protocol (SDP) part of the 2388 message and determines which media channel parameters it can 2389 accommodate for this call. MTA-t stores the INVITE message, 2390 including the encrypted State parameters, for later use. MTA-t 2391 puts this line in the "busy" state (so any other call attempts are 2392 rejected until this call clears), generates the following 183- 2393 Session-Progress response, and sends it to Proxy-t. MTA-t starts 2394 the retransmission timer with value (T-proxy-response) and starts 2395 the session timer (T3) with value (T-resource). 2396 MTA-t can, at its option, still accept further incoming calls and 2397 present them all to the customer. Such enhanced user interfaces for 2398 the MTA is beyond the scope of this specification. Note that MTA-t 2399 can't use the To: header field to determine the proper line, as it 2400 may be totally unrelated to the phone number at MTA-t. 2402 (3) 183-Session-Progress: 2403 SIP/2.0 183 Session Progress 2404 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2405 o.provider); branch=1"}K 2406 Require: 100rel 2407 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2408 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2409 Remote-Party-ID: John Smith 2410 Anonymity: off 2411 From: John Doe; 2412 To: tel:+1-212-555-2222 2413 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2414 Cseq: 127 INVITE 2415 Rseq: 9021 2416 Content-Disposition: precondition 2417 Contact: sip:Host(mta-t.provider) 2418 Content-Type: application/sdp 2419 Content-length: (.) 2421 v=0 2422 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2423 s=- 2424 c= IN IP4 Host(mta-t.provider) 2425 b=AS:64 2426 t=907165275 0 2427 a=X-pc-csuites:312F 2428 a=rtpmap:0 PCMU/8000 2429 m=audio 6544 RTP/AVP 0 2430 a=qos:mandatory sendrecv confirm 2432 DCS Group Category: Informational - Expiration 5/31/01 45 2433 DCS Architecture November 2000 2435 Upon receiving the 183-Session-Progress message, Proxy-t forwards 2436 the following message to CMS-o, restoring the Via headers, and 2437 adding Dcs-Gate information. At this point Proxy-t has completed 2438 all the call processing functions needed for this call, deletes its 2439 local state information, and handles all remaining messages as a 2440 stateless proxy. Proxy-t may include Dcs-Billing-Information if it 2441 wishes to override the billing information that came in the INVITE 2442 (e.g. collect or toll-free call). 2444 (4) 183-Session-Progress: 2445 SIP/2.0 183 Session Progress 2446 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2447 Require: 100rel, state 2448 State: Host(dp-t.provider); nexthop=sip:Host(dp-o.provider); 2449 gate=Host(cmts-t.provider):4321/31S14621; orig- 2450 dest=tel:+1-212-555-1111; num-redirects=0 2451 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 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 2471 a=rtpmap:0 PCMU/8000 2472 m=audio 6544 RTP/AVP 0 2473 a=qos:mandatory sendrecv confirm 2475 Upon receiving the 183-Session-Progress message, CMS-o stops timer 2476 (T-proxy-request) and sends the following PRACK message directly to 2477 MTA-t using the IP address in the Contact header of the 183-Session- 2478 Progress message. 2480 (5) PRACK: 2481 PRACK sip:Host(mta-t.provider) SIP/2.0 2482 Via: SIP/2.0/UDP Host(cms-o.provider) 2483 From: John Doe; 2484 To: tel:+1-212-555-2222 2485 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2486 Cseq: 128 PRACK 2488 DCS Group Category: Informational - Expiration 5/31/01 46 2489 DCS Architecture November 2000 2491 Rack: 9021 127 INVITE 2492 Content-Type: application/sdp 2493 Content-length: (.) 2495 v=0 2496 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2497 s=- 2498 c= IN IP4 Host(mg02.provider) 2499 b=AS:64 2500 t=907165275 0 2501 a=X-pc-csuites:312F 2502 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2503 a=rtpmap:0 PCMU/8000 2504 m=audio 3456 RTP/AVP 0 2505 a-qos:mandatory sendrecv 2507 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 2508 the resources necessary for the call. 2510 (6) 200 OK: 2511 SIP/2.0 200 OK 2512 Via: SIP/2.0/UDP Host(cms-o.provider) 2513 From: John Doe; 2514 To: tel:+1-212-555-2222 2515 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2516 Cseq: 128 PRACK 2518 After sending PRACK(5), CMS-o signals to the endpoint device to 2519 attempt to reserve the network resources necessary for the 2520 connection. If the endpoint signals that resource reservation is 2521 successful, CMS-o sends the following COMET message directly to MTA- 2522 t. CMS-o starts timer (T-direct-request). 2524 (7) COMET: 2525 COMET sip:Host(mta-t.provider) SIP/2.0 2526 Via: SIP/2.0/UDP Host(cms-o.provider) 2527 From: John Doe; 2528 To: tel:+1-212-555-2222 2529 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2530 Cseq: 129 COMET 2531 Content-Type: application/sdp 2532 Content-length: (.) 2534 v=0 2535 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2536 s=- 2537 c= IN IP4 Host(mg02.provider) 2538 b=AS:64 2539 t=907165275 0 2540 a=X-pc-csuites:312F 2541 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2542 a=rtpmap:0 PCMU/8000 2543 m=audio 3456 RTP/AVP 0 2545 DCS Group Category: Informational - Expiration 5/31/01 47 2546 DCS Architecture November 2000 2548 a=qos:success send 2550 MTA-t acknowledges the COMET message with a 200-OK. 2552 (8) 200 OK: 2553 SIP/2.0 200 OK 2554 Via: SIP/2.0/UDP Host(cms-o.provider) 2555 From: John Doe; 2556 To: tel:+1-212-555-2222 2557 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2558 Cseq: 129 COMET 2560 Upon receipt of the 200-OK(10), CMS-o stops timer (T-direct- 2561 request). 2563 Upon receipt of the (5) PRACK message, MTA-t stops timer (T-proxy- 2564 response) and attempts to reserve network resources if necessary. 2565 Once MTA-t both receives the COMET message and has successfully 2566 reserved network resources, MTA-t begins to send ringing voltage to 2567 the designated line and sends the following 180 RINGING message 2568 through Proxy-t. MTA-t restarts the session timer(T3) with value 2569 (T-ringing). 2571 (9) 180 RINGING: 2572 SIP/2.0 180 Ringing 2573 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2574 o.provider); branch=1"}K 2575 Require: 100rel 2576 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 2577 o.provider);gate=Host(cmts-t.provider):4321/31S14621}K" 2578 From: John Doe; 2579 To: tel:+1-212-555-2222 2580 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2581 Contact: sip:Host(mta-t.provider) 2582 Cseq: 127 INVITE 2583 Rseq: 9022 2585 Proxy-t decodes the Via: headers, and passes the 180-Ringing to CMS- 2586 o. This operation is done as a SIP stateless proxy. 2588 (10) 180 RINGING: 2589 SIP/2.0 180 Ringing 2590 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2591 Require: 100rel 2592 From: John Doe; 2593 To: tel:+1-212-555-2222 2594 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2595 Contact: sip:Host(mta-t.provider) 2596 Cseq: 127 INVITE 2597 RSeq: 9022 2599 Upon receipt of the 180 RINGING message, CMS-o restarts the 2600 transaction timer (T3) with value (T-ringing). CMS-o acknowledges 2602 DCS Group Category: Informational - Expiration 5/31/01 48 2603 DCS Architecture November 2000 2605 the provisional response with a PRACK, and signals the endpoint 2606 device to play audible ringback tone to the customer. 2608 (11) PRACK: 2609 PRACK sip:Host(mta-t.provider) SIP/2.0 2610 Via: SIP/2.0/UDP Host(cms-o.provider) 2611 From: John Doe; 2612 To: tel:+1-212-555-2222 2613 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2614 Cseq: 130 PRACK 2615 RAck: 9022 127 INVITE 2617 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 2618 proxy-response). 2620 (12) 200 OK: 2621 SIP/2.0 200 OK 2622 Via: SIP/2.0/UDP Host(cms-o.provider) 2623 From: John Doe; 2624 To: tel:+1-212-555-2222 2625 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2626 Cseq: 130 PRACK 2628 Once MTA-t detects off-hook on the called line, it disconnects 2629 ringing voltage from the line and sends the final response through 2630 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 2631 proxy-response). If necessary, MTA-t may also commit to resources 2632 that have been reserved for this call. At this point, MTA-t begins 2633 to generate bearer channel packets of encoded voice and send them to 2634 MTA-o using the IP address and port number specified in the SDP part 2635 of the original INVITE message. 2637 (13) 200-OK: 2638 SIP/2.0 200 OK 2639 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 2640 o.provider); branch=1"}K 2641 State: Host(dp-t.provider); state="{nexthop=sip:Host(cms- 2642 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 2643 via="Host(cms-o.provider);branch=1"}K" 2644 From: John Doe; 2645 To: tel:+1-212-555-2222 2646 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2647 Cseq: 127 INVITE 2649 Proxy-t handles the message as a SIP stateless proxy, and forwards 2650 it to CMS-o. 2652 (14) 200-OK: 2653 SIP/2.0 200 OK 2654 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 2655 Via: SIP/2.0/UDP Host(mta-o.provider) 2656 From: John Doe; 2657 To: tel:+1-212-555-2222 2659 DCS Group Category: Informational - Expiration 5/31/01 49 2660 DCS Architecture November 2000 2662 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2663 Cseq: 127 INVITE 2665 Upon receipt of the 200-OK message, CMS-o stops timer (T-ringing) 2666 and signals the endpoint device to stop playing audible ringback 2667 tone to the customer and to begin to play the bearer channel stream 2668 that is received from MTA-t. CMS-o sends the following ACK message 2669 to MTA-t. If necessary, CMS-o may also commit to resources that have 2670 been reserved for this call. At this point, the endpoint device 2671 begins to generate bearer channel packets of encoded voice and send 2672 them to MTA-t using the IP address and port number specified in the 2673 SDP part of the original 183-Session-Progress message (that was a 2674 response to the original INVITE). 2676 (15) ACK: 2677 ACK sip:Host(mta-t.provider) SIP/2.0 2678 Via: SIP/2.0/UDP Host(cms-o.provider) 2679 From: John Doe; 2680 To: tel:+1-212-555-2222 2681 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2682 Cseq: 127 ACK 2684 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 2685 response). 2687 When either endpoint detects hangup, it sends out a BYE message to 2688 the other one. In this example, MTA-t detected that the customer 2689 hung up the phone. MTA-t puts that line in the "idle" state so new 2690 calls can be made or received. It sends the following BYE message 2691 directly to CMS-o. MTA-t may also need to release network resources 2692 that have been used for the call. MTA-t starts timer (T-direct- 2693 request). 2695 (16) BYE: 2696 BYE sip:Host(cms-o.provider) SIP/2.0 2697 Via: SIP/2.0/UDP Host(mta-t.provider) 2698 From: tel:+1-212-555-2222 2699 To: John Doe; 2700 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2701 Cseq: 131 BYE 2703 Upon receipt of the BYE message, CMS-o signals the endpoint device 2704 to stop playing the bearer channel stream received from MTA-t and, 2705 if necessary, releases network resources that have been used for 2706 this call. CMS-o sends the following 200-OK message to MTA-t. Once 2707 hangup is detected on the endpoint device, CMS-o puts that line in 2708 the "idle" state so new calls can be made or received. 2710 (17) 200-OK: 2711 SIP/2.0 200 OK 2712 Via: SIP/2.0/UDP Host(mta-t.provider) 2713 From: tel:+1-212-555-2222 2714 To: John Doe; 2716 DCS Group Category: Informational - Expiration 5/31/01 50 2717 DCS Architecture November 2000 2719 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2720 Cseq: 131 BYE 2722 Upon receipt of 200-OK, MTA-t stops timer (T-direct-request). 2724 9.4 Basic Call Flow from CMS to CMS 2726 Endpoint-o CMS-o CMS-t Endpoint-t 2728 | Private Signaling | | | 2729 |<------------------->|(1)INVITE | | 2730 | |--------->| Private Signaling | 2731 | | |<------------------->| 2732 | |(2)183 SDP| | 2733 | |<---------| | 2734 | Private Signaling | | | 2735 |<------------------->|(3)PRACK | | 2736 | |--------->| | 2737 | |(4)200 OK | Private Signaling | 2738 | |<-------->|<------------------->| 2739 | | | | 2740 |<------------------Reserve Resources----------------->| 2741 | | | | 2742 | Private Signaling | | | 2743 |<------------------->|(5)COMET | | 2744 | |--------->| | 2745 | |(6)200 OK | Private Signaling | 2746 | |<-------->|<------------------->| 2747 | | (7)180 | | 2748 | Private Signaling |<---------| | 2749 |<------------------->|(8)PRACK | | 2750 | |--------->| | 2751 | |(9)200 OK | | 2752 | |<---------| | User 2753 | | | Private Signaling | Answers 2754 | | |<------------------->| 2755 | | (10)200 | | 2756 | Private Signaling |<---------| | 2757 |<------------------->| (11)ACK | | 2758 | |--------->| | 2759 | | | | 2760 |<--------------------Active Call-------------------->| 2761 | | | | User 2762 | | (12)BYE | Private Signaling | Hangs Up 2763 | |<---------|<------------------->| 2764 | |(13)200 OK| | 2765 | |----------| | 2767 A call setup begins when the endpoint device controlled by CMS-o 2768 detects an off-hook condition on one of its lines. This event is 2769 communicated to CMS-o through a private signaling exchange beyond 2771 DCS Group Category: Informational - Expiration 5/31/01 51 2772 DCS Architecture November 2000 2774 the scope of this specification. CMS-o first puts that line in the 2775 "busy" state, and collects a complete E.164 number. As a result of a 2776 translation function performed by CMS-o, the destination is 2777 determined to be an endpoint device served by CMS-t. CMS-o 2778 generates the following SIP INVITE message and sends it to CMS-t. 2779 CMS-o starts the retransmission timer (T-proxy-request) and starts 2780 the T3 session timer (T-setup). The retransmission timer is 2781 cancelled on receipt of the optional 100-Trying provisional response 2782 (not present in this call flow); both are cancelled on receipt of 2783 the 183-Session-Progress provisional response. 2785 (1) INVITE: 2786 INVITE sip:+1-212-555-2222,lrn=212-234@Host(cms-t);user=np- 2787 queried SIP/2.0 2788 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2789 Supported: 100rel, state 2790 Require: state 2791 Proxy-Require: dcs, state 2792 Remote-Party-ID: John Doe; 2793 Anonymity: Off 2794 Dcs-Gate: Host(cms-o.provider):3612/17S30124/37FA1948 optional 2795 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 2796 555-1111/212-555-2222> 2797 Dcs-Billing-ID: Host(cms-o.provider):36123E5C:0152 2798 From: John Doe; 2799 To: tel:+1-212-555-2222 2800 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2801 Cseq: 127 INVITE 2802 Contact: sip:Host(cms-o.provider) 2803 Content-Type: application/sdp 2804 Content-length: (.) 2806 v=0 2807 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2808 s=- 2809 c= IN IP4 Host(mg02.provider) 2810 b=AS:64 2811 t=907165275 0 2812 a=X-pc-csuites:312F 2813 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2814 a=rtpmap:0 PCMU/8000 2815 a=rtpmap:96 G726-32/8000 2816 m=audio 3456 RTP/AVP 0 2817 a=qos:mandatory sendrecv 2818 a=X-pc-codecs:96 2820 Upon receiving this INVITE message, CMS-t authenticates that the 2821 sender was CMS-o using IPSec, and sends the E.164-t address to the 2822 directory server. In this example, the Directory Server is able to 2823 translate E.164-t to the IP address of one of the endpoint devices 2824 controlled by CMS-t. CMS-t then checks to see if the endpoint 2825 device is authorized for receiving this call. CMS-t als o c h ecks the 2827 account information to determine if the originator is paying for the 2829 DCS Group Category: Informational - Expiration 5/31/01 52 2830 DCS Architecture November 2000 2832 call or if the destination is expected to pay. CMS-t engages in 2833 private signaling exchange with the endpoint device, beyond the 2834 scope of this specification, and determines the SDP description of 2835 the media stream to be sent to this endpoint. 2837 CMS-t puts this line in the "busy" state (so any other call attempts 2838 are rejected until this call clears), generates the following 183- 2839 Session-Progress response, and sends it to CMS-o. The Dcs-Gate 2840 header is omitted from this message, since CMS-o indicated it was 2841 optional, and CMS-t considers it optional as well. CMS-t starts the 2842 retransmission timer with value (T-proxy-response) and starts the 2843 session timer (T3) with value (T-resource). CMS-t may include Dcs- 2844 Billing-Information if it wishes to override the billing information 2845 that came in the INVITE (e.g. collect or toll-free call). 2847 (2) 183-Session-Progress: 2848 SIP/2.0 183 Session Progress 2849 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2850 Require: 100rel, state 2851 Proxy-Require: dcs, state 2852 From: John Doe; 2853 To: tel:+1-212-555-2222 2854 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2855 Cseq: 127 INVITE 2856 Rseq: 9021 2857 Content-Disposition: precondition 2858 Contact: sip:Host(cms-t.provider) 2859 Content-Type: application/sdp 2860 Content-length: (.) 2862 v=0 2863 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2864 s=- 2865 c= IN IP4 Host(rgw12.provider) 2866 b=AS:64 2867 t=907165275 0 2868 a=X-pc-csuites:312F 2869 a=rtpmap:0 PCMU/8000 2870 m=audio 6544 RTP/AVP 0 2871 a=qos:mandatory sendrecv confirm 2873 Upon receiving the 183-Session-Progress message, CMS-o stops timer 2874 (T-proxy-request) and sends the following PRACK message to CMS-t 2875 using the IP address in the Contact header of the 183-Session- 2876 Progress message. 2878 (3) PRACK: 2879 PRACK sip:Host(cms-t.provider) SIP/2.0 2880 Via: SIP/2.0/UDP Host(cms-o.provider) 2881 From: John Doe; 2882 To: tel:+1-212-555-2222 2883 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2884 Cseq: 128 PRACK 2886 DCS Group Category: Informational - Expiration 5/31/01 53 2887 DCS Architecture November 2000 2889 Rack: 9021 127 INVITE 2890 Content-Type: application/sdp 2891 Content-length: (.) 2893 v=0 2894 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2895 s=- 2896 c= IN IP4 Host(mg02.provider) 2897 b=AS:64 2898 t=907165275 0 2899 a=X-pc-csuites:312F 2900 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2901 a=rtpmap:0 PCMU/8000 2902 m=audio 3456 RTP/AVP 0 2903 a-qos:mandatory sendrecv 2905 CMS-t acknowledges the PRACK with a 200-OK, and signals the endpoint 2906 device to begin to reserve the resources necessary for the call. 2908 (4) 200 OK: 2909 SIP/2.0 200 OK 2910 Via: SIP/2.0/UDP Host(cms-o.provider) 2911 From: John Doe; 2912 To: tel:+1-212-555-2222 2913 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2914 Cseq: 128 PRACK 2916 After sending PRACK(3), CMS-o signals to the endpoint device to 2917 attempt to reserve the network resources necessary for the 2918 connection. If the endpoint signals that resource reservation is 2919 successful, CMS-o sends the following COMET message to CMS-t. CMS-o 2920 starts timer (T-direct-request). 2922 (5) COMET: 2923 COMET sip:Host(cms-t.provider) SIP/2.0 2924 Via: SIP/2.0/UDP Host(cms-o.provider) 2925 From: John Doe; 2926 To: tel:+1-212-555-2222 2927 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2928 Cseq: 129 COMET 2929 Content-Type: application/sdp 2930 Content-length: (.) 2932 v=0 2933 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 2934 s=- 2935 c= IN IP4 Host(mg02.provider) 2936 b=AS:64 2937 t=907165275 0 2938 a=X-pc-csuites:312F 2939 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 2940 a=rtpmap:0 PCMU/8000 2941 m=audio 3456 RTP/AVP 0 2943 DCS Group Category: Informational - Expiration 5/31/01 54 2944 DCS Architecture November 2000 2946 a=qos:success send 2948 CMS-t acknowledges the COMET message with a 200-OK. 2950 (6) 200 OK: 2951 SIP/2.0 200 OK 2952 Via: SIP/2.0/UDP Host(cms-o.provider) 2953 From: John Doe; 2954 To: tel:+1-212-555-2222 2955 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2956 Cseq: 129 COMET 2958 Upon receipt of the 200-OK(6), CMS-o stops timer (T-direct-request). 2959 Upon receipt of the (3) PRACK message, CMS-t stops timer (T-proxy- 2960 response) and attempts to reserve network resources if necessary. 2961 Once CMS-t both receives the COMET message and has successfully 2962 reserved network resources, CMS-t signals the endpoint to begin to 2963 send ringing voltage to the designated line and sends the following 2964 180 RINGING message. CMS-t restarts the session timer (T3) with 2965 value (T-ringing). 2967 (7) 180 RINGING: 2968 SIP/2.0 180 Ringing 2969 Via: SIP/2.0/UDP Host(cms-o.provider);branch=1 2970 Require: 100rel 2971 From: John Doe; 2972 To: tel:+1-212-555-2222 2973 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2974 Contact: sip:Host(cms-t.provider) 2975 Cseq: 127 INVITE 2976 Rseq: 9022 2978 Upon receipt of the 180 RINGING message, CMS-o restarts the 2979 transaction timer (T3) with value (T-ringing). CMS-o acknowledges 2980 the provisional response with a PRACK, and signals the endpoint 2981 device to play audible ringback tone to the customer. 2983 (8) PRACK: 2984 PRACK sip:Host(cms-t.provider) SIP/2.0 2985 Via: SIP/2.0/UDP Host(cms-o.provider) 2986 From: John Doe; 2987 To: tel:+1-212-555-2222 2988 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 2989 Cseq: 130 PRACK 2990 RAck: 9022 127 INVITE 2992 CMS-t acknowledges the PRACK with a 200-OK, and stops timer (T- 2993 proxy-response). 2995 (9) 200 OK: 2996 SIP/2.0 200 OK 2997 Via: SIP/2.0/UDP Host(cms-o.provider) 2998 From: John Doe; 3000 DCS Group Category: Informational - Expiration 5/31/01 55 3001 DCS Architecture November 2000 3003 To: tel:+1-212-555-2222 3004 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3005 Cseq: 130 PRACK 3007 Once CMS-t detects off-hook on the called line, it disconnects 3008 ringing voltage from the line and sends the final response. CMS-t 3009 stops timer (T-ringing) and starts timer (T-proxy-response). If 3010 necessary, CMS-t may also commit to resources that have been 3011 reserved for this call. At this point, CMS-t signals to the 3012 endpoint device to begin to generate bearer channel packets of 3013 encoded voice and send them to the originating endpoint, at the IP 3014 address and port number specified in the SDP part of the original 3015 INVITE message. 3017 (10) 200-OK: 3018 SIP/2.0 200 OK 3019 Via: SIP/2.0/UDP Host(cms-o.provider); branch=1 3020 From: John Doe; 3021 To: tel:+1-212-555-2222 3022 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3023 Cseq: 127 INVITE 3025 Upon receipt of the 200-OK message, CMS-o stops timer (T-ringing) 3026 and signals the endpoint device to stop playing audible ringback 3027 tone to the customer and to begin to play the bearer channel stream 3028 that is received from the destination endpoint. CMS-o sends the 3029 following ACK message to CMS-t. If necessary, CMS-o may also commit 3030 to resources that have been reserved for this call. At this point, 3031 the endpoint device begins to generate bearer channel packets of 3032 encoded voice and send them to the destination endpoint using the IP 3033 address and port number specified in the SDP part of the original 3034 183-Session-Progress message (that was a response to the original 3035 INVITE). 3037 (11) ACK: 3038 ACK sip:Host(cms-t.provider) SIP/2.0 3039 Via: SIP/2.0/UDP Host(cms-o.provider) 3040 From: John Doe; 3041 To: tel:+1-212-555-2222 3042 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3043 Cseq: 127 ACK 3045 Upon receipt of the ACK message, CMS-t stop timer (T-proxy- 3046 response). 3048 When either endpoint detects hangup, it sends out a BYE message to 3049 the other one. In this example, the originating endpoint detected 3050 that the customer hung up the phone. CMS-o puts that line in the 3051 "idle" state so new calls can be made or received. It sends the 3052 following BYE message directly to CMS-t. CMS-o starts timer (T- 3053 direct-request). 3055 (12) BYE: 3057 DCS Group Category: Informational - Expiration 5/31/01 56 3058 DCS Architecture November 2000 3060 BYE sip:Host(cms-t.provider) SIP/2.0 3061 Via: SIP/2.0/UDP Host(cms-o.provider) 3062 From: John Doe; 3063 To: tel:+1-212-555-2222 3064 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3065 Cseq: 131 BYE 3067 Upon receipt of the BYE message, CMS-t signals the endpoint device 3068 to stop playing the bearer channel stream received from the 3069 originator and, if necessary, releases network resources that have 3070 been used for this call. CMS-t s e n d s the following 200-OK message to 3072 CMS-o. Once hangup is detected on the endpoint device, CMS-t puts 3073 that line in the "idle" state so new calls can be made or received. 3075 (13) 200-OK: 3076 SIP/2.0 200 OK 3077 Via: SIP/2.0/UDP Host(cms-o.provider) 3078 From: John Doe; 3079 To: tel:+1-212-555-2222 3080 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3081 Cseq: 131 BYE 3083 Upon receipt of 200-OK, CMS-o stops timer (T-direct-request). 3085 DCS Group Category: Informational - Expiration 5/31/01 57 3086 DCS Architecture November 2000 3088 9.5 Call-Forwarding-Unconditional and Call-Forwarding-Busy 3090 MTA-o Proxy-o Proxy-t MTA-t 3092 | INVITE | | | 3093 |----------------->| INVITE | | 3094 | |-------------->| (1)INVITE | 3095 | | |------------------>| 3096 | | | (2)302 Redirect | 3097 | | |<------------------| 3098 | | (3)302 | | 3099 | |<--------------| (4)ACK | 3100 | | |------------------>| 3101 | | (5)ACK | | 3102 | |-------------->| | 3103 | | 3104 | | Proxy-f MTA-f 3105 | | | | 3106 | | (6)INVITE | | 3107 | |-------------->| (7)INVITE | 3108 | | |------------------>| 3109 | | | (8)183 SDP | 3110 | | |<------------------| 3111 | | | | 3113 The initial call flow for Call-Forwarding-Unconditional/Busy is 3114 identical to that shown in Section 9.1 until MTA-t receives the 3115 following INVITE message from Proxy-t. 3117 (1) INVITE: 3118 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3119 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3120 o.provider); branch=1"; via=Host(mta-o.provider)}K 3121 Supported: 100rel, state 3122 Require: state 3123 Remote-Party-ID: John Doe 3124 Media-Authorization: 31S14621 3125 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3126 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3127 state="Host(dp-o.provider); nexthop=sip:555- 3128 1111@Host(mta-o.provider); gate=Host(cmts- 3129 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3130 2222; num-redirects=0"}K" 3131 From: "Alien Blaster" 3133 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3134 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3135 Cseq: 127 INVITE 3136 Contact: sip:Host(mta-o.provider) 3137 Content-Type: application/sdp 3138 Content-length: (.) 3140 DCS Group Category: Informational - Expiration 5/31/01 58 3141 DCS Architecture November 2000 3143 v=0 3144 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3145 s=- 3146 c= IN IP4 Host(mta-o.provider) 3147 b=AS:64 3148 t=907165275 0 3149 a=X-pc-csuites:312F 3150 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3151 a=rtpmap:0 PCMU/8000 3152 a=rtpmap:96 G726-32/8000 3153 m=audio 3456 RTP/AVP 0 3154 a=qos:mandatory sendrecv 3155 a=X-pc-codecs:96 3157 Upon receiving this message, MTA-t determines that the line 3158 associated with 212-555-2222 is having all calls forwarded. It may 3159 initiate some local action (e.g. to play special ringing tones) to 3160 provide notification that the call is being forwarded. It may 3161 perform some functions as a SIP proxy, using the received Call-ID 3162 and SDP description, to further locate the user. It then issues a 3163 REDIRECT (302) response to indicate that it wants the call 3164 forwarded. This message carries the forwarding number in the Contact 3165 header. 3167 (2) 302-Redirect 3168 SIP/2.0 302 Moved Temporarily 3169 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3170 o.provider); branch=1"; via=Host(mta-o.provider)}K 3171 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3172 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3173 state="Host(dp-o.provider); nexthop=sip:555- 3174 1111@Host(mta-o.provider); gate=Host(cmts- 3175 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3176 2222; num-redirects=0"}K" 3177 Remote-Party-ID: John Smith 3178 Anonymity: off 3179 From: "Alien Blaster" 3181 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3182 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3183 Cseq: 127 INVITE 3184 Contact: tel:555-3333 3186 Proxy-t verifies on receipt of the 302-Redirect message that the 3187 called party is a subscriber to the Call Forwarding service. Proxy-t 3188 also verifies that the called party is permitted to forward the call 3189 to the supplied destination. It then adds a DCS-billing field to 3190 the 302-Redirect message to allow the "second leg" of the forwarded 3191 call to be charged to the user associated with 212-555-2222. It also 3192 restores the suppressed Via headers to allow the response to be 3193 routed back to Proxy-o. 3195 (3) 302-Redirect 3197 DCS Group Category: Informational - Expiration 5/31/01 59 3198 DCS Architecture November 2000 3200 SIP/2.0 302 Moved Temporarily 3201 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 3202 Via: SIP/2.0/UDP Host(mta-o.provider) 3203 Proxy-Require: dcs 3204 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3205 555-1111/212-555-2222> 3206 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3207 555-2222/212-555-3333> 3208 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3209 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3210 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3211 orig-dest=tel:+1-212-555-2222; num-redirects=0 3212 Remote-Party-ID: John Smith 3213 Anonymity: off 3214 From: "Alien Blaster" 3216 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3217 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3218 Cseq: 127 INVITE 3219 Contact: tel:+1-212-555-3333 3221 Proxy-t also sends an ACK to MTA-t. 3223 (4) ACK 3224 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3225 Via: SIP/2.0/UDP Host(dp-t.provider) 3226 From: "Alien Blaster" 3228 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3229 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3230 Cseq: 127 ACK 3232 The transaction at MTA-t is now complete. 3234 Proxy-o matches the 302 response to the INVITE it had sent out. It 3235 sends an ACK back to Proxy-t 3236 . 3238 (5) ACK 3239 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3240 Via: Sip/2.0/UDP Host(dp-o.provider) 3241 From: "Alien Blaster" 3243 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3244 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3245 CSeq: 127 ACK 3247 The transaction at Proxy-t is now complete. 3249 Proxy-o determines the Proxy-f for the E.164 number 212-555-3333 3250 when it receives the 302-Redirect message. It generates an INVITE 3251 message and sends it to Proxy-f. It embeds two Dcs-Billing-Info 3252 headers in this message. The first one identifies the user 3253 associated with the E.164 number 212-555-1111 as paying for the 3255 DCS Group Category: Informational - Expiration 5/31/01 60 3256 DCS Architecture November 2000 3258 initial call leg (212-555-1111/212-555-2222). The second one 3259 identifies the user associated with the E.164 number 212-555-2222 as 3260 paying for the second call leg (212-555-2222/212-555-3333). Proxy-o 3261 adds the Dcs-Redirect header giving the information about this call 3262 redirection. 3264 (6) INVITE: 3265 INVITE sip:+1-212-555-3333,lrn=212-265@Host(dp-f) ;user=np- 3266 queried SIP/2.0 3267 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 2 3268 Via: SIP/2.0/UDP Host(mta-o.provider); 3269 Supported: 100rel, state 3270 Require: state 3271 Proxy-Require: dcs, state 3272 Remote-Party-ID: John Doe; 3273 Anonymity: Off 3274 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 3275 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3276 555-1111/212-555-2222> 3277 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3278 555-2222/212-555-3333> 3279 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3280 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3281 orig-dest=tel:+1-212-555-2222; num-redirects=1 3282 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3283 From: "Alien Blaster" 3285 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3286 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3287 CSeq: 127 INVITE 3288 Contact: sip:Host(mta-o.provider) 3289 Content-Type: application/sdp 3290 Content-length: (.) 3292 v=0 3293 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3294 s=- 3295 c= IN IP4 Host(mta-o.provider) 3296 b=AS:64 3297 t=907165275 0 3298 a=X-pc-csuites:312F 3299 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3300 a=rtpmap:0 PCMU/8000 3301 a=rtpmap:96 G726-32/8000 3302 m=audio 3456 RTP/AVP 0 3303 a=qos:mandatory sendrecv 3304 a=X-pc-codecs:96 3306 Upon receiving this INVITE, Proxy-f queries the directory server to 3307 determine the IP address (MTA-f) associated with 212-555-3333. It 3308 then forwards the INVITE message to MTA-f. 3310 (7) INVITE: 3312 DCS Group Category: Informational - Expiration 5/31/01 61 3313 DCS Architecture November 2000 3315 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 3316 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 3317 o.provider); branch=1"; via=Host(mta-o.provider)}K 3318 Supported: 100rel, state 3319 Require: state 3320 Remote-Party-ID: John Doe 3321 Media-Authorization: 22S21718 3322 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 3323 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 3324 state="Host(dp-o.provider); nexthop=sip:555- 3325 1111@Host(mta-o.provider); gate=Host(cmts- 3326 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3327 2222; num-redirects=1"}K" 3328 From: "Alien Blaster" 3330 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3331 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3332 Cseq: 127 INVITE 3333 Contact: sip:Host(mta-o.provider) 3334 Content-Type: application/sdp 3335 Content-length: (.) 3337 v=0 3338 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3339 s=- 3340 c= IN IP4 Host(mta-o.provider) 3341 b=AS:64 3342 t=907165275 0 3343 a=X-pc-csuites:312F 3344 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3345 a=rtpmap:0 PCMU/8000 3346 a=rtpmap:96 G726-32/8000 3347 m=audio 3456 RTP/AVP 0 3348 a=qos:mandatory sendrecv 3349 a=X-pc-codecs:96 3351 Upon receiving this INVITE, MTA-f authenticates that the message 3352 came from Proxy-f using IPSec. It checks the telephone line 3353 associated with the E.164-f to see if it is available. If it is 3354 available, MTA-f looks at the capability parameters in the Session 3355 Description Protocol (SDP) part of the message and determines which 3356 media channel parameters it can accommodate for this call. MTA-f 3357 stores the INVITE message, including the encrypted State parameters, 3358 for later use. MTA-f puts this line in the "busy" state (so any 3359 other call attempts are rejected until this call clears), generates 3360 the following 183-Session-Progress response, and sends it to Proxy- 3361 f. MTA-f starts timer (T-proxy-response). 3363 (8) 183-Session-Progress: 3364 SIP/2.0 183 Session Progress 3365 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 3366 o.provider); branch=1"; via=Host(mta-o.provider)}K 3367 Require: 100rel 3369 DCS Group Category: Informational - Expiration 5/31/01 62 3370 DCS Architecture November 2000 3372 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 3373 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 3374 state="Host(dp-o.provider); nexthop=sip:555- 3375 1111@Host(mta-o.provider); gate=Host(cmts- 3376 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3377 2222; num-redirects=1"}K" 3378 From: "Alien Blaster" 3380 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3381 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3382 Cseq: 127 INVITE 3383 Rseq: 9021 3384 Content-Disposition: precondition 3385 Contact: sip:Host(mta-f.provider) 3386 Content-Type: application/sdp 3387 Content-length: (.) 3389 v=0 3390 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3391 s=- 3392 c= IN IP4 Host(mta-f.provider) 3393 b=AS:64 3394 t=907165275 0 3395 a=X-pc-csuites:312F 3396 a=rtpmap:0 PCMU/8000 3397 m=audio 6544 RTP/AVP 0 3398 a=qos:mandatory sendrecv confirm 3400 The subsequent signaling call flows are identical to those shown in 3401 Section 9.1. 3403 DCS Group Category: Informational - Expiration 5/31/01 63 3404 DCS Architecture November 2000 3406 9.6 Call-Forwarding-No-Answer 3408 MTA-o Proxy-o Proxy-t MTA-t 3410 ... ... ... ... 3411 | | | | 3412 | | | (1)180 Ringing | 3413 | | |<------------------| 3414 | |(2)180 Ringing | | 3415 | (3)180 Ringing |<--------------| | 3416 |<-----------------| | | 3417 | | (4)PRACK | | 3418 |----------------------------------------------------->| 3419 | | (5)200 OK | | 3420 |<-----------------------------------------------------| 3421 | | | | 3422 | | | | 3423 | | | (6)302 Redirect | 3424 | | |<------------------| 3425 | | (7)302 | | 3426 | (8)302 Redirect |<--------------| (9)ACK | 3427 |<-----------------| |------------------>| 3428 | | (10)ACK | | 3429 | (11) ACK |-------------->| | 3430 |----------------->| 3431 | | Proxy-f MTA-f 3432 | (12) INVITE | | | 3433 |----------------->| (13)INVITE | | 3434 | |-------------->| (14)INVITE | 3435 | | |------------------>| 3436 | | | | 3438 The Call Forwarding No Answer service is triggered when a called 3439 party does not pick up the phone after it rings for a pre-specified 3440 period of time. The subsequent call flow is different from that for 3441 the Call Forwarding Busy and Call Forwarding Unconditional services 3442 since the originating and terminating MTAs have already identified 3443 each other, have already reserved the resources for the call, and 3444 since the CMS/Proxies are no longer storing transaction state when 3445 the Forwarding function is triggered. 3447 The initial set of messages for this service are the same as in 3448 Section 9.1 through the point at which MTA-t is ringing the phone, 3449 and MTA-o is generating ringback. For purposes of this example, 3450 consider the initial INVITE message received by MTA-t to be the 3451 following. 3453 (not shown) INVITE: 3454 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3455 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3456 o.provider); branch=1"; via=Host(mta-o.provider)}K 3457 Supported: 100rel, state 3458 Require: state 3460 DCS Group Category: Informational - Expiration 5/31/01 64 3461 DCS Architecture November 2000 3463 Remote-Party-ID: John Doe 3464 Media-Authorization: 31S14621 3465 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3466 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3467 state="Host(dp-o.provider); nexthop=sip:555- 3468 1111@Host(mta-o.provider); gate=Host(cmts- 3469 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3470 2222; num-redirects=0"}K" 3471 From: "Alien Blaster" 3473 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3474 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3475 Cseq: 127 INVITE 3476 Contact: sip:Host(mta-o.provider) 3477 Content-Type: application/sdp 3478 Content-length: (.) 3480 v=0 3481 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3482 s=- 3483 c= IN IP4 Host(mta-o.provider) 3484 b=AS:64 3485 t=907165275 0 3486 a=X-pc-csuites:312F 3487 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3488 a=rtpmap:0 PCMU/8000 3489 a=rtpmap:96 G726-32/8000 3490 m=audio 3456 RTP/AVP 0 3491 a=qos:mandatory sendrecv 3492 a=X-pc-codecs:96 3494 In response to the INVITE message, MTA-t starts local ringback and 3495 sends a 180 RINGING notification to MTA-o. It also starts the timer 3496 (T-ringing). 3498 (1) 180 RINGING: 3499 SIP/2.0 180 Ringing 3500 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3501 o.provider); branch=1"; via=Host(mta-o.provider)}K 3502 Require: 100rel 3503 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3504 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3505 state="Host(dp-o.provider); nexthop=sip:555- 3506 1111@Host(mta-o.provider); gate=Host(cmts- 3507 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3508 2222; num-redirects=0"}K" 3509 From: "Alien Blaster" 3511 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3512 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3513 Contact: sip:Host(mta-o.provider) 3514 Cseq: 127 INVITE 3515 Rseq: 9022 3517 DCS Group Category: Informational - Expiration 5/31/01 65 3518 DCS Architecture November 2000 3520 The 180-Ringing message from Proxy-t to Proxy-o (2), the 180-Ringing 3521 message from Proxy-o to MTA-o (3), and the PRACK exchange (4) and 3522 (5), are identical to the basic call flow in Section 9.1, and not 3523 repeated here. 3524 When the timer(T-ringing) at the MTA-t expires, it determines the 3525 forwarding number (555-3333) and sends a 302-Redirect response with 3526 this number in the Contact header. 3528 (6) 302-Redirect 3529 SIP/2.0 302 Moved Temporarily 3530 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3531 o.provider); branch=1"; via=Host(mta-o.provider)}K 3532 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3533 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3534 state="Host(dp-o.provider); nexthop=sip:555- 3535 1111@Host(mta-o.provider); gate=Host(cmts- 3536 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3537 2222; num-redirects=0"}K" 3538 From: "Alien Blaster" 3540 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3541 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3542 Cseq: 127 INVITE 3543 Contact: tel:555-3333 3545 Proxy-t uses its IPSec association with MTA-t to determine the 3546 identity of the request. It then verifies the line subscribes to 3547 the Call-Forwarding-No-Answer service. Proxy-t uses its State value 3548 to recover the billing information for the current call (which is 3549 either stored directly in the State value, or stored indirectly with 3550 a pointer to the Gate which stores the billing information). Proxy- 3551 t adds an additional Dcs-Billing-Info header containing the billing 3552 information for the second leg of the forwarded call. Proxy-t 3553 converts the new destination number in the Contact header into a 3554 full E.164 number, and passes the 302-Redirect message to Proxy-o. 3556 (7) 302-Redirect 3557 SIP/2.0 302 Moved Temporarily 3558 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 3559 Via: SIP/2.0/UDP Host(mta-o.provider) 3560 Proxy-Require: dcs 3561 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3562 555-1111/212-555-2222> 3563 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3564 555-2222/212-555-3333> 3565 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 3566 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3567 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 3568 orig-dest=tel:+1-212-555-2222; num-redirects=0 3569 From: "Alien Blaster" 3571 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3573 DCS Group Category: Informational - Expiration 5/31/01 66 3574 DCS Architecture November 2000 3576 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3577 Cseq: 127 INVITE 3578 Contact: tel:+1-212-555-3333 3580 Proxy-o converts the Contact header into a private format URL 3581 containing the billing information and usage restrictions for the 3582 new call. By including a timestamp, Proxy-o insures the URL can't 3583 be used for later call attempts beyond those authorized by the 3584 forwarder. Also encoded in the URL is the information needed for 3585 the Dcs-Redirect header and any required LAES. 3587 (8) 302-Redirect 3588 SIP/2.0 302 Moved Temporarily 3589 Via: SIP/2.0/UDP Host(mta-o.provider) 3590 From: "Alien Blaster" 3592 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3593 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3594 Cseq: 127 INVITE 3595 Contact: sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 3596 info= Host(rks-o.provider)<5123-0123-4567-8900/212-555- 3597 1111/212-555-2222>; billing-info= Host(rks- 3598 t.provider)<4278-9865-8765-9000/212-555-2222/212-555- 3599 3333>; billing-id= Host(dp-o.provider):36123E5C:0152; 3600 expires=36123E9A; orig-dest=+1-212-555-2222; 3601 redirected-by=+1-212-555-2222; num- 3602 redirects=1}K@Host(dp-o.provider);private 3604 Proxy-t sends the following ACK message to MTA-t after sending 302- 3605 Redirect(8). 3607 (9) ACK 3608 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3609 Via: SIP/2.0/UDP Host(dp-t.provider) 3610 From: "Alien Blaster" 3612 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3613 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3614 Cseq: 127 ACK 3616 Proxy-o sends the following ACK message to Proxy-t after sending 3617 302-Redirect(9). 3619 (10) ACK 3620 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3621 Via: SIP/2.0/UDP Host(dp-o.provider) 3622 From: "Alien Blaster" 3624 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3625 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3626 Cseq: 127 ACK 3628 DCS Group Category: Informational - Expiration 5/31/01 67 3629 DCS Architecture November 2000 3631 MTA-o sends the following ACK message to Proxy-o on receipt of the 3632 302-Redirect(8). 3634 (11) ACK 3635 ACK sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3636 Via: SIP/2.0/UDP Host(mta-o.provider) 3637 From: "Alien Blaster" 3639 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3640 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3641 Cseq: 127 ACK 3643 The transaction at Proxy-o, Proxy-t and MTA-t is now complete. 3645 MTA-o, if it so desires, may now initiate a new call to the 3646 destination given in the Contact header. To avoid confusion at MTA- 3647 o, the call leg identification for this new call is different from 3648 that of the previous call. Therefore, any stored State headers are 3649 not included in this INVITE, and only the Request-URI gives the 3650 handling and billing information. 3652 (12) INVITE: 3653 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 3654 info= Host(rks-o.provider)<5123-0123-4567-8900/212-555- 3655 1111/212-555-2222>; billing-info= Host(rks- 3656 t.provider)<4278-9865-8765-9000/212-555-2222/212-555- 3657 3333>; billing-id= Host(dp-o.provider):36123E5C:0152; 3658 expires=36123E9A; orig-dest=+1-212-555-2222; 3659 redirected-by=+1-212-555-2222; num- 3660 redirects=1}K@Host(dp-o.provider);private SIP/2.0 3661 Via: SIP/2.0/UDP Host(mta-o.provider) 3662 Supported: 100rel, state 3663 Remote-Party-ID: John Doe 3664 Anonymity: Off 3665 From: "Alien Blaster" 3667 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 3668 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 3669 Cseq: 127 INVITE 3670 Contact: sip:Host(mta-o.provider) 3671 Content-Type: application/sdp 3672 Content-length: (.) 3674 v=0 3675 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3676 s=- 3677 c= IN IP4 Host(mta-o.provider) 3678 b=AS:64 3679 t=907165275 0 3680 a=X-pc-csuite:312F 3681 a=rtpmap:0 PCMU/8000 3682 a=rtpmap:96 G726-32/8000 3683 m=audio 3456 RTP/AVP 0 3685 DCS Group Category: Informational - Expiration 5/31/01 68 3686 DCS Architecture November 2000 3688 a=qos:mandatory sendrecv 3689 a=X-pc- codecs:96 3691 Proxy-o does all its normal authorization and authentication 3692 functions, and decodes the encrypted private username in the 3693 Request-URI. From that it builds the Dcs-Billing-Info, Dcs-Billing- 3694 ID, and Dcs-Redirect headers, and determines the destination 3695 address. The INVITE message sent on to Proxy-f is as follows. 3697 (13) INVITE: 3698 INVITE sip:+1-212-555-3333,lrn=212-265@Host(dp-f);user=np- 3699 queried SIP/2.0 3700 Via: SIP/2.0/UDP Host(dp-o.provider);branch=2 3701 Via: SIP/2.0/UDP Host(mta-o.provider) 3702 Supported: 100rel, state 3703 Require: state 3704 Proxy-Require: dcs, state 3705 Remote-Party-ID: John Doe; 3706 Anonymity: Off 3707 Dcs-Gate: Host(cmts-o.provider):3612/3S73916/518C3B22 required 3708 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 3709 555-1111/212-555-2222> 3710 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 3711 555-2222/212-555-3333> 3712 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 3713 o.provider); gate=Host(cmts-o.provider):3612/3S73916; 3714 orig-dest=tel:+1-212-555-2222; num-redirects=1 3715 Dcs-Billing-ID: Host(dp-o.provider):36123E98:0171 3716 From: "Alien Blaster" 3718 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 3719 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 3720 Cseq: 127 INVITE 3721 Contact: sip:Host(mta-o.provider) 3722 Content-Type: application/sdp 3723 Content-length: (.) 3725 v=0 3726 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3727 s=- 3728 c= IN IP4 Host(mta-o.provider) 3729 b=AS:64 3730 t=907165275 0 3731 a=X-pc-csuites:312F 3732 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3733 a=rtpmap:0 PCMU/8000 3734 a=rtpmap:96 G726-32/8000 3735 m=audio 3456 RTP/AVP 0 3736 a=qos:mandatory sendrecv 3737 a=X-pc-codecs:96 3739 The remainder of the call procedes as in Section 9.1. 3741 DCS Group Category: Informational - Expiration 5/31/01 69 3742 DCS Architecture November 2000 3744 9.7 Call-Forwarding-MTA-Unavailable 3746 MTA-o Proxy-o Proxy-t MTA-t 3748 | | | (1) REGISTER | 3749 | | |<------------------| 3750 | | | (2)200 OK | 3751 | | |------------------>| 3752 | | | | 3753 | INVITE | | | 3754 |----------------->| INVITE | | 3755 | |-------------->| INVITE | 3756 | | |------------------>| 3757 | | | | 3758 | | (Timeout) | 3759 | | | | 3760 | | 302 REDIRECT | | 3761 | |<--------------| | 3762 | | ACK | | 3763 | |-------------->| | 3764 | | 3765 | | Proxy-f MTA-f 3766 | | | | 3767 | | INVITE | | 3768 | |-------------->| INVITE | 3769 | | |------------------>| 3770 | | | | 3772 This service consists of two parts. First, the MTA must register 3773 the forwarding address with the Proxy. Later, when an incomming 3774 call is handled by the proxy and the MTA is not available, the Proxy 3775 initiates the call forwarding. 3777 MTA-t recognizes that the customer dialed the code to activate Call 3778 Forwarding, and prompts the customer for the forwarding telephone 3779 number. This information is sent to the Proxy in a REGISTER 3780 message. 3782 (1) REGISTER 3783 REGISTER sip:Host(dp-o.provider) SIP/2.0 3784 Via: SIP/2.0/UDP Host(mta-t.provider) 3785 From: sip:555-2222@Host(mta-t.provider); user=phone 3786 To: sip:Host(dp-o.provider) 3787 Call-ID: B64(SHA-1(555-2222;time=361013B8;seq=1)) 3788 Cseq: 1 REGISTER 3789 Contact: tel:555-3333 3790 Expires: 7200 3792 The Proxy validates that the forwarding number maps to either a MTA 3793 it knows about or to another valid Proxy. The Proxy also checks to 3794 make sure that the customer subscribes to the Call Forwarding 3796 DCS Group Category: Informational - Expiration 5/31/01 70 3797 DCS Architecture November 2000 3799 service, and if so activates the service and stores the forwarding 3800 number for later use. It responds to the MTA with a 200-OK. 3802 (2) 200-OK 3803 SIP 2.0 200 OK 3804 Via: SIP/2.0/UDP Host(mta-t.provider) 3805 From: sip:555-2222@Host(mta-t.provider); user=phone 3806 To: sip:Host(dp-o.provider) 3807 Call-ID: B64(SHA-1(555-2222;time=361013B8;seq=1)) 3808 Cseq: 1 REGISTER 3810 For an incomming call, the initial sequence of messages is identical 3811 to that for a regular call setup as shown in Section 9.1, until 3812 Proxy-t forwards the INVITE message to MTA-t. Proxy-t times out when 3813 it does not receive a response to the INVITE from MTA-t. It 3814 determines that the called party subscribes to Call Forwarding 3815 service and that the forwarding number is 212-555-3333. It then 3816 generates a SIP 302 (Redirect) message with the forwarding number in 3817 the Contact header. It then adds the DCS-billing and Dcs-Billing-ID 3818 fields to the 302 message that allows the second leg of the 3819 forwarded call to be charged to the user associated with 212-555- 3820 2222. The subsequent call flow is the same as with Call Forwarding 3821 Unconditional, (or Call Forwarding Busy), and is given in Section 3822 9.5. 3824 DCS Group Category: Informational - Expiration 5/31/01 71 3825 DCS Architecture November 2000 3827 9.8 Return-Call 3829 MTA-o Proxy-o Proxy-t MTA-t 3831 | (1) INVITE | | | 3832 |----------------->| (2) INVITE | | 3833 | |-------------->| (3) INVITE | 3834 | | |------------------>| 3835 | | | (4) 183 SDP | 3836 | | (5) 183 SDP |<------------------| 3837 | (6) 183 SDP |<--------------| | 3838 |<-----------------| (7) PRACK | | 3839 |----------------------------------------------------->| 3840 | | (8) 200 OK | | 3841 |<-----------------------------------------------------| 3842 | | (9) COMET | | 3843 |----------------------------------------------------->| 3844 | | (10) 200 OK | | 3845 |<-----------------------------------------------------| 3846 | | | (11) 180 Ringing | 3847 | |(12)180Ringing |<------------------| 3848 | (13)180 Ringing |<--------------| | 3849 |<-----------------| (14) PRACK | | 3850 |----------------------------------------------------->| 3851 | | (15) 200 OK | | 3852 |<-----------------------------------------------------| 3853 | | | | 3854 | (16) CANCEL | | | 3855 |----------------->| (17) CANCEL | | 3856 | |-------------->| (18) CANCEL | 3857 | | |------------------>| 3858 | | | (19) 200 OK | 3859 | | (20) 200 OK |<------------------| 3860 | (21) 200 OK |<--------------| | 3861 |<-----------------| | | 3862 | | | | 3863 | | | (22) INVITE | 3864 | | (23) INVITE |<------------------| 3865 | |<--------------| | 3867 We assume for this example that MTA-t had last received a call from 3868 MTA-o. The INVITE message forwarded to MTA-o included the Remote- 3869 Party-ID line, which contained, among other items, a URL that 3870 identified MTA-o. If the original caller did not request privacy, 3871 and the destination subscribed to caller-id, then the URL contains 3872 the E.164 number, which can be used to place the return call. We 3873 assume for this example that was not the case, and that MTA-t does 3874 not know the identity of the new call's destination. 3876 Messages (1) through (15) in the above diagram are identical to 3877 those for the basic call flow given in Section 9.1, and message (16) 3878 through (21) is a standard SIP CANCEL operation. The key parameters 3880 DCS Group Category: Informational - Expiration 5/31/01 72 3881 DCS Architecture November 2000 3883 used in processing the return-call are contained in message (3), 3884 reproduced below. For purposes of this example, we assume the 3885 destination had not subscribed to Caller-ID service, and therefore 3886 the calling-name and calling-number information is not present in 3887 (3) INVITE. 3889 (3) INVITE: 3890 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 3891 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 3892 o.provider); branch=1"; via=Host(mta-o.provider)}K 3893 Supported: 100rel, state 3894 Require: state 3895 Remote-Party-ID: ; rpi-id=na 3898 Media-Authorization: 31S14621 3899 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 3900 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 3901 state="Host(dp-o.provider); nexthop=sip:555- 3902 1111@Host(mta-o.provider); gate=Host(cmts- 3903 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 3904 2222; num-redirects=0"}K" 3905 From: "Alien Blaster" 3907 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 3908 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 3909 Cseq: 127 INVITE 3910 Contact: sip:Host(mta-o.provider) 3911 Content-Type: application/sdp 3912 Content-length: (.) 3914 v=0 3915 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3916 s=- 3917 c= IN IP4 Host(mta-o.provider) 3918 b=AS:64 3919 t=907165275 0 3920 a=X-pc-csuites:312F 3921 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 3922 a=rtpmap:0 PCMU/8000 3923 a=rtpmap:96 G726-32/8000 3924 m=audio 3456 RTP/AVP 0 3925 a=qos:mandatory sendrecv 3926 a=X-pc-codecs:96 3928 Upon the user dialing *69, MTA-t initiates a call by sending an 3929 INVITE message to its Proxy, with the Request-URI containing the URL 3930 for the call to be returned. The complete message is as follows. 3932 (22) INVITE: 3933 INVITE sip:{type=remote-id; orig=tel:+1-212-555-1111; 3934 otherstuff=whatever}K@Host(dp-t.provider); private 3935 SIP/2.0 3937 DCS Group Category: Informational - Expiration 5/31/01 73 3938 DCS Architecture November 2000 3940 Via: SIP/2.0/UDP Host(mta-t.provider) 3941 Supported: 100rel, state 3942 Remote-Party-ID: John Smith 3943 Anonymity: Off 3944 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 3945 To: sip:B64(SHA-1(*69; time=36123F12;seq=4))@localhost 3946 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 3947 Cseq: 127 INVITE 3948 Contact: sip:Host(mta-t.provider) 3949 Content-Type: application/sdp 3950 Content-length: (.) 3952 v=0 3953 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 3954 s=- 3955 c= IN IP4 Host(mta-t.provider) 3956 b=AS:64 3957 t=907165275 0 3958 a=X-pc-csuites:312F 3959 a=rtpmap:0 PCMU/8000 3960 a=rtpmap:96 G726-32/8000 3961 m=audio 7242 RTP/AVP 0 3962 a=qos:mandatory sendrecv 3963 a=X-pc-codecs:96 3965 Upon receiving the INVITE message, Proxy-t authenticates MTA-t using 3966 standard IPSec. Proxy-t decrypts the destination string using its 3967 privately-held key, and checks its signature in the result. From 3968 this string the real destination E.164 is extracted. Proxy-t checks 3969 the "Remote-Party-ID:" line, and checks to see that this line 3970 belongs to MTA-t, and has either subscribed to call-return service, 3971 or is authorized to use the service and be charged on a per-use 3972 basis. Proxy-t then performs all the regular call handling 3973 functions, as described in the basic call flow. The message sent to 3974 Proxy-o is the following, and the call proceeds identically to the 3975 basic call flow from this point onward. 3977 (23) INVITE: 3978 INVITE sip:+1-212-555-1111,lrn=212-237@Host(dp-o.provider); 3979 user=np-queried SIP/2.0 3980 Via: SIP/2.0/UDP Host(dp-t.provider);branch=1 3981 Via: SIP/2.0/UDP Host(mta-t.provider) 3982 Supported: 100rel, state 3983 Require: state 3984 Proxy-Require: dcs, state 3985 Remote-Party-ID: John Smith 3986 Anonymity: Off 3987 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 3988 Dcs-Billing-Info: Host(rks-t.provider)<5098-0987-6543-2100/212- 3989 555-2222/212-555-1111/*69> 3990 Dcs-Billing-ID: Host(dp-t.provider):36123F12:0381 3991 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 3992 t.provider); gate=Host(cmts-t.provider):4321/31S14621 3994 DCS Group Category: Informational - Expiration 5/31/01 74 3995 DCS Architecture November 2000 3997 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 3998 To: sip:B64(SHA-1(*69; time=36123F12;seq=4))@localhost 3999 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 4000 Cseq: 127 INVITE 4001 Contact: sip:Host(mta-t.provider) 4002 Content-Type: application/sdp 4003 Content-length: (.) 4005 v=0 4006 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4007 s=- 4008 c= IN IP4 Host(mta-t.provider) 4009 b=AS:64 4010 t=907165275 0 4011 a=X-pc-csuites:312F 4012 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4013 a=rtpmap:0 PCMU/8000 4014 a=rtpmap:96 G726-32/8000 4015 m=audio 7242 RTP/AVP 0 4016 a=qos:mandatory sendrecv 4017 a=X-pc-codecs:96 4019 Remainder of call proceeds identically to the basic call flow given 4020 in Section 9.1. 4022 DCS Group Category: Informational - Expiration 5/31/01 75 4023 DCS Architecture November 2000 4025 9.9 Customer-Originated-Trace 4027 MTA-o Proxy-o Proxy-t MTA-t 4029 | (1) INVITE | | | 4030 |----------------->| (2) INVITE | | 4031 | |-------------->| (3) INVITE | 4032 | | |------------------>| 4033 | | | (4) 183 SDP | 4034 | | (5) 183 SDP |<------------------| 4035 | (6) 183 SDP |<--------------| | 4036 |<-----------------| (7) PRACK | | 4037 |----------------------------------------------------->| 4038 | | (8) 200 OK | | 4039 |<-----------------------------------------------------| 4040 | | (9) COMET | | 4041 |----------------------------------------------------->| 4042 | | (10) 200 OK | | 4043 |<-----------------------------------------------------| 4044 | | | (11) 180 Ringing | 4045 | |(12)180Ringing |<------------------| 4046 | (13)180 Ringing |<--------------| | 4047 |<-----------------| (14) PRACK | | 4048 |----------------------------------------------------->| 4049 | | (15) 200 OK | | 4050 |<-----------------------------------------------------| 4051 | | | | 4052 | | | (16) 200 OK | 4053 | | (17) 200 OK |<------------------| 4054 | (18) 200 OK |<--------------| | 4055 |<-----------------| | | 4056 | | | | 4057 | | | (19) INVITE | 4058 | | (20) INVITE|<------------------| 4059 | | <---------| | 4061 Call-trace (*57) is almost identical to return-call (*69), but the 4062 action taken by the Proxy is to report the information to law 4063 enforcement authorities, and complete the call either to the Service 4064 Provider's office or to an announcement server (which tells the 4065 customer to call the Service Provider's office). 4067 (19) INVITE: 4068 INVITE sip:call-trace@Host(dp-t.provider) SIP/2.0 4069 Via: SIP/2.0/UDP Host(mta-t.provider) 4070 Supported: 100rel, state 4071 Dcs-Trace-Party-ID: sip:{type=remote-id; orig=tel:+1-212-555- 4072 1111; otherstuff=whatever}K@Host(dp-t.provider); 4073 private 4074 Remote-Party-ID: John Smith 4075 Anonymity: Off 4076 From: sip:B64(SHA-1(555-2222; time=36123F12;seq=3))@localhost 4078 DCS Group Category: Informational - Expiration 5/31/01 76 4079 DCS Architecture November 2000 4081 To: sip:B64(SHA-1(*57; time=36123F12;seq=4))@localhost 4082 Call-ID: B64(SHA-1(555-2222;time=36123F12;seq=3))@localhost 4083 Cseq: 127 INVITE 4084 Contact: sip:Host(mta-t.provider) 4085 Content-Type: application/sdp 4086 Content-length: (.) 4088 v=0 4089 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4090 s=- 4091 c= IN IP4 Host(mta-t.provider) 4092 b=AS:64 4093 t=907165275 0 4094 a=X-pc-csuites:312F 4095 a=rtpmap:0 PCMU/8000 4096 a=rtpmap:96 G726-32/8000 4097 m=audio 7242 RTP/AVP 0 4098 a=qos:mandatory sendrecv 4099 a=X-pc-codecs:96 4101 Proxy performs the reporting function and connects to either (1) an 4102 announcement server telling customer the information is recorded, 4103 and to now call the Business Office during normal business hours, or 4104 (2) the Business Office. 4106 DCS Group Category: Informational - Expiration 5/31/01 77 4107 DCS Architecture November 2000 4109 9.10 Call-Waiting 4111 MTA-o2 MTA-o1 Proxy-o Proxy-t MTA-t 4113 | (1) INVITE | | | 4114 |----------------->| (2) INVITE | | 4115 | | |-------------->| (3) INVITE | 4116 | | | |------------------>| 4117 | | | | (4) 183 SDP | 4118 | | | (5) 183 SDP |<------------------| 4119 | (6) 183 SDP |<--------------| | 4120 |<-----------------| (7) PRACK | | 4121 |----------------------------------------------------->| 4122 | | | (8) 200 OK | | 4123 |<-----------------------------------------------------| 4124 | | | (9) COMET | | 4125 |----------------------------------------------------->| 4126 | | | (10) 200 OK | | 4127 |<-----------------------------------------------------| 4128 | | | | (11) 180 Ringing | 4129 | | |(12)180Ringing |<------------------| 4130 | (13)180 Ringing |<--------------| | 4131 |<-----------------| (14) PRACK | | 4132 |----------------------------------------------------->| 4133 | | | (15) 200 OK | | 4134 |<-----------------------------------------------------| 4135 | | | (16) INVITE(Hold) | 4136 | |<-----------------------------------------| 4137 | | | (17) 200 OK | 4138 | |----------------------------------------->| 4139 | | | (18) ACK | 4140 | |<-----------------------------------------| 4141 | | | | (19) 200 OK | 4142 | | | (20) 200 OK |<------------------| 4143 | (21) 200 OK |<--------------| | 4144 |<-----------------| | | 4145 | | | | | 4146 | | |(22) INVITE(Hold) | 4147 |<-----------------------------------------------------| 4148 | | | (23) 200 OK | | 4149 |----------------------------------------------------->| 4150 | | | (24) ACK | | 4151 |<-----------------------------------------------------| 4152 | | | (25) INVITE(Resume) | 4153 | |<-----------------------------------------| 4154 | | | (26) 200 OK | 4155 | |----------------------------------------->| 4156 | | | (27) ACK | 4157 | |<-----------------------------------------| 4159 DCS Group Category: Informational - Expiration 5/31/01 78 4160 DCS Architecture November 2000 4162 Call Waiting is a service that allows a customer to respond to an 4163 incoming call during the time the phone line is busy. The customer 4164 hears an audible alerting tone, and indicates acceptance of the new 4165 call via a hookflash (putting the previous call on hold). 4166 Subsequent hookflashes switch between the two active calls. The 4167 originator of the second call may hear a distinctive ringback tone. 4168 For this example, consider an existing call initiated by MTA-o1, 4169 with the following call identification: 4171 MTA-t state for call from MTA-o1 to MTA-t 4172 From: "Alien Blaster" 4174 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4175 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4176 Contact: sip:Host(mta-o1.provider) 4177 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4178 o1.provider); gate=Host(cmts-t.provider):4321/31S14621; 4179 state="Host(dp-o1.provider); nexthop=sip:555- 4180 1111@Host(mta-o1.provider); gate=Host(cmts- 4181 o1.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4182 2222; num-redirects=0"}K" 4183 Dcs-Billing-Info: Host(rks-o1.provider)/04FA37<5123-0123-4567- 4184 8900/212-555-1111/212-555-2222> 4185 Dcs-Billing-ID: Host(dp-o1.provider):36123E5C:0152 4187 The initial set of messages associated with the second arriving 4188 call, (1) through (13), as shown in the figure above, are very 4189 similar to those involved in a Basic Call Setup and are not 4190 explicitly enumerated below. After the initial INVITE exchange, the 4191 state information stored for this new call is: 4193 MTA-t state for call from MTA-o2 to MTA-t 4194 From: sip:B64(SHA-1(555-3333; time=36124125;seq=23))@localhost 4195 To: sip:B64(SHA-1(555-2222; time=36124125;seq=24)@localhost 4196 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4197 Contact: sip:Host(mta-o2.provider) 4198 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4199 o2.provider); gate=Host(cmts-t.provider):4321/32S35378; 4200 state="Host(dp-o2.provider); nexthop=sip:555- 4201 3333@Host(mta-o2.provider); gate=Host(cmts- 4202 o2.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4203 2222; num-redirects=0"}K" 4204 Dcs-Billing-Info: Host(rks-o2.provider)/173F419B<6010-4500- 4205 6789-0123/212-555-3333/212-555-2222> 4206 Dcs-Billing-ID: Host(dp-o2.provider):36124125:0031 4208 In response to the INVITE for the second incoming call, the user at 4209 MTA-t is provided some indication of the second call, e.g. using a 4210 special tone. If the user at MTA-t h i t s a flash hook in response to 4212 this, MTA-t issues a INVITE(Hold) message to MTA-o1 to put it on 4213 HOLD. 4215 (16) INVITE (Hold): 4217 DCS Group Category: Informational - Expiration 5/31/01 79 4218 DCS Architecture November 2000 4220 INVITE sip:Host(mta-o1.provider) SIP/2.0 4221 Via: SIP/2.0/UDP Host(mta-t.provider) 4222 From: "Alien Blaster" 4224 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4225 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4226 Cseq: 129 INVITE 4227 Content-Type: application/sdp 4228 Content-length: (.) 4230 v=0 4231 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4232 s=- 4233 c= IN IP4 0.0.0.0 4234 b=AS:64 4235 t=907165275 0 4236 a=X-pc-csuites:312F 4237 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4238 a=rtpmap:0 PCMU/8000 4239 m=audio 3456 RTP/AVP 0 4241 MTA-o1 acknowledges the HOLD command with a 200-OK message. The 4242 response contains an updated SDP description for the stream to be 4243 received at MTA-o1, indicating an IP address of 0.0.0.0 for a held 4244 call. 4246 (17) 200-OK 4247 SIP/2.0 200 OK 4248 Via: SIP/2.0/UDP Host(mta-t.provider) 4249 From: "Alien Blaster" 4251 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4252 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4253 Cseq: 129 INVITE 4254 Content-Type: application/sdp 4255 Content-length: (.) 4257 v=0 4258 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4259 s=- 4260 c= IN IP4 0.0.0.0 4261 b=AS:64 4262 t=907165275 0 4263 a=X-pc-csuites:312F 4264 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4265 a=rtpmap:0 PCMU/8000 4266 m=audio 6522 RTP/AVP 0 4268 MTA-t responds to the 200-OK message with the standard SIP ACK 4269 message. At this point it is safe for MTA-t to stop sending voice 4270 payload packets to MTA-o1 and not risk dropping the connection due 4271 to "dead MTA recovery." 4273 DCS Group Category: Informational - Expiration 5/31/01 80 4274 DCS Architecture November 2000 4276 (18) ACK 4277 ACK Host(mta-o1.provider) 4278 Via: SIP/2.0/UDP Host(mta-t.provider) 4279 From: "Alien Blaster" 4281 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4282 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4283 Cseq: 129 ACK 4285 Once the first conversation is successfully placed on hold, MTA-t 4286 indicates a completion to the "ringing" to MTA-o2. 4288 (19) 200-OK 4289 SIP/2.0 200 OK 4290 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 4291 o.provider); branch=1"; via=Host(mta-o.provider)}K 4292 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4293 o2.provider); gate=Host(cmts-t.provider):4321/32S35378; 4294 state="Host(dp-o2.provider); nexthop=sip:555- 4295 3333@Host(mta-o2.provider); gate=Host(cmts- 4296 o2.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4297 2222; num-redirects=0"}K" 4298 From: sip:B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4299 To: sip:B64(SHA-1(555-1111; time=36124125;seq=24)@localhost 4300 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4301 Cseq: 128 INVITE 4303 This 200-OK is passed through the proxy chain in messages (18) and 4304 (19) to MTA-o2. MTA-o2 responds with an acknowledgement, in a manor 4305 identical to the basic call flow. 4307 (22) ACK 4308 ACK Host(mta-t.provider) 4309 Via: SIP/2.0/UDP Host(mta-o2.provider) 4310 From: sip:B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4311 To: sip:B64(SHA-1(555-1111; time=36124125;seq=24)@localhost 4312 Call-ID: B64(SHA-1(555-3333;time=36124125;seq=23))@localhost 4313 CSeq: 128 ACK 4315 At this point the user at MTA-t has a connection to the second 4316 caller, MTA-o2, with the first caller, MTA-o1, on hold. 4318 Subsequent hookflashes repeat the sequence of INVITE(hold)/200- 4319 OK/ACK to one destination, and INVITE(resume)/200-OK/ACK to the 4320 other. The INVITE (Hold) sequence (22) through (24) is identical to 4321 (16) through (18). Once the 200-OK is received, it is safe for MTA- 4322 t to stop sending voice packets. 4324 INVITE (Resume) is very similar, except that the SDP description 4325 includes the proper IP address in the "c=" line. 4327 (25) INVITE (Resume): 4328 INVITE sip:Host(mta-o1.provider) SIP/2.0 4330 DCS Group Category: Informational - Expiration 5/31/01 81 4331 DCS Architecture November 2000 4333 Via: SIP/2.0/UDP Host(mta-t.provider) 4334 From: "Alien Blaster" 4336 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4337 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4338 CSeq: 130 INVITE 4339 Content-Type: application/sdp 4340 Content-length: (.) 4342 v=0 4343 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4344 s=- 4345 c= IN IP4 Host(mta-t.provider) 4346 b=AS:64 4347 t=907165275 0 4348 a=X-pc-csuites:312F 4349 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4350 a=rtpmap:0 PCMU/8000 4351 m=audio 6544 RTP/AVP 0 4353 MTA-o1 acknowledges the Resume command with a 200-OK message. The 4354 response contains an updated SDP description for the stream to be 4355 received at MTA-o1, indicating the real IP address of Host(mta- 4356 o1.provider). 4358 (26) 200-OK 4359 SIP/2.0 200 OK 4360 Via: SIP/2.0/UDP Host(mta-t.provider) 4361 From: "Alien Blaster" 4363 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4364 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4365 CSeq: 129 INVITE 4366 Content-Type: application/sdp 4367 Content-length: (.) 4369 v=0 4370 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4371 s=- 4372 c= IN IP4 Host(mta-o1.provider) 4373 b=AS:64 4374 t=907165275 0 4375 a=X-pc-csuites:312F 4376 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4377 a=rtpmap:0 PCMU/8000 4378 m=audio 3456 RTP/AVP 0 4380 MTA-t responds to the 200-OK message with the standard SIP ACK 4381 message. At this point it is safe for MTA-t to start sending voice 4382 payload packets to MTA-o1. 4384 (27) ACK 4385 ACK Host(mta-o.provider) 4387 DCS Group Category: Informational - Expiration 5/31/01 82 4388 DCS Architecture November 2000 4390 Via: SIP/2.0/UDP Host(mta-t.provider) 4391 From: "Alien Blaster" 4393 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4394 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4395 CSeq: 129 ACK 4397 DCS Group Category: Informational - Expiration 5/31/01 83 4398 DCS Architecture November 2000 4400 9.11 Call-Transfer-Blind 4402 MTA-o Proxy-o Proxy-t MTA-t 4404 | | | | 4405 |<-----------------call-in-progress------------------->| 4406 | | | (1) REFER | 4407 | | (2) REFER |<------------------| 4408 | (3) REFER |<--------------| | 4409 |<-----------------| | | 4410 | | 4411 | | Proxy-f MTA-f 4412 | (4) INVITE | | | 4413 |----------------->| (5) INVITE | | 4414 | |-------------->| (6) INVITE | 4415 | | |------------------>| 4416 | | | (7) 183 SDP | 4417 | | (8) 183 SDP |<------------------| 4418 | (9) 183 SDP |<--------------| : 4419 |<-----------------| : : 4420 : : : (10) 200 OK | 4421 : : (11) 200 OK |<------------------| 4422 | (12) 200 OK |<--------------| | 4423 |<-----------------| | | 4424 | | 4425 | | Proxy-t MTA-t 4426 | (13) 200 OK | | | 4427 |----------------->| (14) 200 OK | | 4428 | |-------------->| (15) 200 OK | 4429 | | (16) ACK |------------------>| 4430 |<-----------------------------------------------------| 4431 | | (17) BYE | | 4432 |----------------------------------------------------->| 4433 | | (18) 200 OK | | 4434 |<-----------------------------------------------------| 4435 | | 4437 The Call Transfer service is triggered by the user by methods beyond 4438 the scope of this specification. Described in this section is a 4439 transfer service common known as "blind transfer" where the party 4440 initiating the transfer (MTA-t in this example) is not informed of 4441 the success or failure of the transfer operation. The alternative, 4442 commonly known as "consultative transfer" is described later. 4443 For this example, consider an existing call initiated by MTA-o, with 4444 the following call identification: 4446 MTA-t state for call from MTA-o to MTA-t 4447 From: "Alien Blaster" 4449 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4450 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4451 Contact: sip:Host(mta-o.provider) 4453 DCS Group Category: Informational - Expiration 5/31/01 84 4454 DCS Architecture November 2000 4456 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4457 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 4458 state="Host(dp-o.provider); nexthop=sip:555- 4459 1111@Host(mta-o.provider); gate=Host(cmts- 4460 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4461 2222; num-redirects=0"}K" 4462 Dcs-Billing-Info: Host(rks-o.provider)/04FA37<5123-0123-4567- 4463 8900/212-555-1111/212-555-2222> 4464 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 4466 When MTA-t desires to transfer the existing call, it determines the 4467 forwarding number (in this example 555-3333) and issues a REFER 4468 message to MTA-o. REFER is the same as a regular INVITE but includes 4469 an additional "Refer-to:" header and "Referred-by:" header. The 4470 "Refer-to:" header identifies the number to which the call needs to 4471 be forwarded, while the "Referred-by:" header identifies the 4472 existing call leg at MTA-o. The following message is sent to MTA- 4473 t's Proxy, Proxy-t. 4475 (1) REFER: 4476 REFER sip: Host(mta-o.provider) SIP/2.0 4477 Via: SIP/2.0/UDP Host(mta-t.provider) 4478 Supported: 100rel, state 4479 Refer-to: tel:555-3333 4480 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 4481 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 4482 state="Host(dp-o.provider); nexthop=sip:555- 4483 1111@Host(mta-o.provider); gate=Host(cmts- 4484 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 4485 2222; num-redirects=0"}K" 4486 Remote-Party-ID: John Smith 4487 Anonymity: off 4488 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4489 To: "Alien Blaster" 4491 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4492 Cseq: 8001 INVITE 4493 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4494 seq=73))@localhost 4496 When the REFER is received at Proxy-t, it first verifies MTA-t has 4497 subscribed to Call Forwarding service. If so, it decrypts the State 4498 information to determine the local gate location and identification. 4499 Proxy-t queries the gate to obtain the call's billing information. 4500 Proxy-t inserts billing information to indicate that the user 4501 associated with the number 212-555-2222 will pay for the new call 4502 segment. Proxy-t extracts the call routing from the Dcs-state 4503 information, and then forwards the message to Proxy-o. 4505 (2) REFER: 4506 REFER sip: Host(dp-o.provider) SIP/2.0 4507 Via: SIP/2.0/UDP Host(dp-t.provider) 4508 Via: SIP/2.0/UDP Host(mta-t.provider) 4510 DCS Group Category: Informational - Expiration 5/31/01 85 4511 DCS Architecture November 2000 4513 Supported: 100rel, state 4514 Proxy-Require: dcs 4515 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 4516 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 4517 orig-dest=tel:+1-212-555-2222; num-redirects=0 4518 Refer-to: tel:+1-212-555-3333? Dcs-Billing-Info= Host(rks- 4519 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4520 2222> & Dcs-Billing-Info= Host(rks-t.provider)<4278- 4521 9865-8765-9000/212-555-2222/212-555-3333> & Dcs- 4522 Billing-ID= Host(dp-o.provider): 36123E5C:0152 4523 Remote-Party-ID: John Smith 4524 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4525 To: "Alien Blaster" 4527 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4528 Cseq: 8001 INVITE 4529 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4530 seq=73))@localhost 4532 Proxy-o forwards the REFER message to MTA-o after encrypting the 4533 headers. 4535 (3) REFER: 4536 REFER sip: 555-1111@Host(mta-o.provider) SIP/2.0 4537 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 4538 t.provider); branch=1"; via=Host(mta-t.provider)}K 4539 Supported: 100rel, state 4540 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-3333; 4541 billing-id=Host(dp-o.provider): 36123E5C:0152; 4542 expires=; billing-info=Host(rks- 4543 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4544 2222>; billing-info=Host(rks-t.provider)<4278-9865- 4545 8765-9000/212-555-2222/212-555-3333>; orig-dest=tel:+1- 4546 212-555-2222; redirected-by=tel:+1-212-555-2222; num- 4547 redirects=1}K@Host(dp-o.provider);private 4548 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4549 To: "Alien Blaster" 4551 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4552 Cseq: 8001 INVITE 4553 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 4554 seq=73))@localhost 4556 After processing the REFER, MTA-o issues a INVITE to MTA-f. In 4557 addition to the standard headers carried in an INVITE message, the 4558 encrypted {Dcs-Billing-INFO, Dcs-Billing-ID} fields received in the 4559 REFER message are copied into the INVITE message. These fields 4560 indicate that the user associated with the 212-555-2222 number will 4561 be charged for the second call leg. 4563 (4) INVITE: 4564 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 4565 id=Host(dp-o.provider): 36123E5C:0152; 4567 DCS Group Category: Informational - Expiration 5/31/01 86 4568 DCS Architecture November 2000 4570 expires=; billing-info=Host(rks- 4571 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 4572 2222>; billing-info=Host(rks-t.provider)<4278-9865- 4573 8765-9000/212-555-2222/212-555-3333>; orig-dest=tel:+1- 4574 212-555-2222; redirected-by=tel:+1-212-555-2222; num- 4575 redirects=1}K@Host(dp-o.provider);private SIP/2.0 4576 Via: SIP/2.0/UDP Host(mta-o.provider) 4577 Supported: 100rel, state 4578 Remote-Party-ID: John Doe 4579 Anonymity: Off 4580 From: "Alien Blaster" 4582 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 4583 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 4584 Cseq: 129 INVITE 4585 Contact: sip:Host(mta-o.provider) 4586 Content-Type: application/sdp 4587 Content-length: (.) 4589 v=0 4590 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4591 s=- 4592 c= IN IP4 Host(mta-o.provider) 4593 b=AS:64 4594 t=907165275 0 4595 a=X-pc-csuites:312F 4596 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4597 a=rtpmap:0 PCMU/8000 4598 a=rtpmap:96 G726-32/8000 4599 m=audio 3456 RTP/AVP 0 4600 a=qos:mandatory sendrecv 4601 a=X-pc-codecs:96 4603 When the Proxy-o receives the INVITE it first decrypts the header 4604 information to find the real destination for the call. Proxy 4605 compares the current time against the timestamp in the encrypted 4606 string; if the request is too old, it is refused. It invokes the 4607 call routing logic to determine which Proxy (Proxy-f) to which the 4608 INVITE needs to be routed. It also embeds two Dcs-Billing-Info 4609 headers in this message. The first one identifies the user 4610 associated with the E.164 number 212-555-1111 as paying for the 4611 initial call leg (212-555-1111/212-555-2222). This information was 4612 derived from the customer account information for the caller during 4613 the first call attempt. The second Dcs-Billing-Info header 4614 identifies the user associated with the E.164 number 212-555-2222 as 4615 paying for the second call leg (212-555-2222/212-555-3333), and was 4616 provided by Proxy-t in the REFER message. 4618 (5) INVITE: 4619 INVITE sip: +1-212-555-3333,lrn=212-265@Host(dp-f);user=np- 4620 queried SIP/2.0 4621 Via: SIP/2.0/UDP Host(dp-o.provider); branch=1; 4622 Via: SIP/2.0/UDP Host(mta-o.provider); 4624 DCS Group Category: Informational - Expiration 5/31/01 87 4625 DCS Architecture November 2000 4627 Supported: 100rel, state 4628 Require: state 4629 Proxy-Require: dcs, state 4630 Remote-Party-ID: John Doe 4631 Anonymity: Off 4632 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 4633 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 4634 555-1111/212-555-2222> 4635 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 4636 555-2222/212-555-3333> 4637 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 4638 From: "Alien Blaster" 4640 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 4641 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 4642 Cseq: 129 INVITE 4643 Contact: sip:Host(mta-o.provider) 4644 Content-Type: application/sdp 4645 Content-length: (.) 4647 v=0 4648 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 4649 s=- 4650 c= IN IP4 Host(mta-o.provider) 4651 b=AS:64 4652 t=907165275 0 4653 a=X-pc-csuites:312F 4654 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 4655 a=rtpmap:0 PCMU/8000 4656 a=rtpmap:96 G726-32/8000 4657 m=audio 3456 RTP/AVP 0 4658 a=qos:mandatory sendrecv 4659 a=X-pc-codecs:96 4661 Upon receiving this INVITE, Proxy-f queries the directory server to 4662 determine the IP address (MTA-f) associated with 212-555-3333. It 4663 then forwards the INVITE message to MTA-f, after stripping off all 4664 of the billing fields, and adding the encrypted state information. 4665 This is identical to the basic call flow shown in Section 9.1, and 4666 is not repeated here. 4668 Upon receipt of the 200-OK message, MTA-o sends the final response 4669 of the REFER, a 200-OK, to MTA-t. This message is routed through 4670 the Proxy Proxy-o, Proxy-t, and then delivered to MTA-t. MTA-t 4671 responds directly with an ACK. Proxy-t is now done; MTA-o sends the 4672 BYE message, which follows immediately. 4674 (13) 200-OK: 4675 SIP/2.0 200 OK 4676 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 4677 t.provider); branch=1"; via=Host(mta-t.provider)}K 4678 State: Host(dp-o.provider); state="{gate= Host(cmts- 4679 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 4681 DCS Group Category: Informational - Expiration 5/31/01 88 4682 DCS Architecture November 2000 4684 2222,lrn=212-234@Host(DP-t), state="Host(dp- 4685 t.provider); nexthop=sip:Host(dp-o.provider); 4686 gate=Host(cmts-t.provider):4321/31S14621; orig- 4687 dest=tel:+1-212-555-1111; num-redirects=0"}K" 4688 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4689 To: "Alien Blaster" 4691 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4692 Cseq: 8001 REFER 4694 Proxy-o restores the encrypted Via headers, and forwards the OK to 4695 topmost Via - Proxy-t. 4697 (14) 200-OK: 4698 SIP/2.0 200 OK 4699 Via: SIP/2.0/UDP Host(dp-t.provider) 4700 Via: SIP/2.0/UDP Host(mta-t.provider) 4701 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4702 To: "Alien Blaster" 4704 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4705 Cseq: 8001 REFER 4707 Proxy-tf o r wards the 200-OK to MTA-t. 4709 (15) 200-OK: 4710 SIP/2.0 200 OK 4711 Via: SIP/2.0/UDP Host(mta-t.provider) 4712 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4713 To: "Alien Blaster" 4715 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4716 Cseq: 8001 REFER 4718 MTA-t responds with an ACK message. 4720 (16) ACK: 4721 ACK sip:Host(mta-o.provider) SIP/2.0 4722 Via: SIP/2.0/UDP Host(mta-t.provider) 4723 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4724 To: "Alien Blaster" 4726 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4727 Cseq: 8001 ACK 4729 (17) BYE: 4730 BYE sip:Host(mta-t.provider) SIP/2.0 4731 Via: SIP/2.0/UDP Host(mta-o.provider) 4732 From: "Alien Blaster" 4734 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4736 DCS Group Category: Informational - Expiration 5/31/01 89 4737 DCS Architecture November 2000 4739 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4740 Cseq: 129 BYE 4742 Upon receipt of the BYE message, MTA-t releases all network 4743 resources that have been used for this call. MTA-t sends the 4744 following 200-OK message to MTA-o. 4746 (18) 200-OK: 4747 SIP/2.0 200 OK 4748 Via: SIP/2.0/UDP Host(mta-o.provider) 4749 From: "Alien Blaster" 4751 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 4752 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 4753 Cseq: 129 BYE 4755 DCS Group Category: Informational - Expiration 5/31/01 90 4756 DCS Architecture November 2000 4758 9.12 Call-Transfer-Consultative 4760 Call Transfer with Consultation is triggered by the user by methods 4761 beyond the scope of this specification. It consists of two distinct 4762 phases: first placing the existing call on hold and placing a new 4763 call to another destination (the consultation), and secondly 4764 transfering the first call to the second destination (the transfer). 4765 For this example, consider an existing call initiated by MTA-t1 to 4766 MTA-o. The call identification information at MTA-o is as follows: 4768 MTA-o state for call from MTA-t1 to MTA-o 4769 From: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 4770 To: tel:555-1111 4771 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 4772 Contact: sip: Host(mta-t1.provider) 4773 Remote-Party-ID: tel:+1-212-555-2222 4774 State: Host(dp-o.provider); state="{nexthop=sip:Host(dp- 4775 t1.provider); gate=Host(cmts-o.provider):3612/17S30124; 4776 state="Host(dp-t1.provider); nexthop=sip:555- 4777 2222@Host(mta-t1.provider); gate=Host(cmts- 4778 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 4779 1111; num-redirects=0"}K" 4780 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 4781 9000/212-555-2222/212-555-1111> 4782 Dcs-Billing-ID: Host(dp-t1.provider):36124033:0381 4784 MTA-o places this call on hold and determines the destination for 4785 consultation. MTA-o initiates a second call to the consultation 4786 endpoint, MTA-t2, as shown in the figure below. 4788 DCS Group Category: Informational - Expiration 5/31/01 91 4789 DCS Architecture November 2000 4791 MTA-o Proxy-o Proxy-t2 MTA-t1 MTA-t2 4793 | (1) INVITE(Hold)| | | | 4794 |------------------------------------------>| | 4795 | (2) 200 OK | | | | 4796 |<------------------------------------------| | 4797 | (3) ACK | | | | 4798 |------------------------------------------>| | 4799 | | | | | 4800 | (4) INVITE | | | | 4801 |----------------->| (5) INVITE | | | 4802 | |-------------->| (6) INVITE | 4803 | | |------------------>| 4804 | | | (7) 183 SDP | 4805 | | (8) 183 SDP |<------------------| 4806 | (9) 183 SDP |<--------------| | | 4807 |<-----------------| (10) PRACK | | | 4808 |----------------------------------------------------->| 4809 | | (11) 200 OK | | 4810 |<-----------------------------------------------------| 4811 | | (12) COMET | | 4812 |----------------------------------------------------->| 4813 | | (13) 200 OK | | 4814 |<-----------------------------------------------------| 4815 | | | (14) 180 Ringing | 4816 | |(15)180Ringing |<------------------| 4817 | (16)180 Ringing |<--------------| | 4818 |<-----------------| (17) PRACK | | 4819 |----------------------------------------------------->| 4820 | | (18) 200 OK | | 4821 |<-----------------------------------------------------| 4822 | | | | 4823 | | | (19) 200 OK | 4824 | | (20) 200 OK |<------------------| 4825 | (21) 200 OK |<--------------| | 4826 |<-----------------| (22) ACK | | 4827 |----------------------------------------------------->| 4828 | | | | 4830 Signaling messages (1) to (3), placing the first call on hold, are 4831 identical to those used in Call Waiting (see Section 9.10), and are 4832 not reproduced here. 4834 Signaling messages (4) to (22), placing the second call, are 4835 identical to those for a basic call flow (see Section 9.1), and are 4836 not reproduced here. For this example, assume the Call-ID was 4837 B64(SHA-1(555-1111;time=36124125;seq=23))@localhost. 4839 State at MTA-o for call from MTA-o to MTA-t2 4840 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4841 To: tel:555-3333 4842 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4844 DCS Group Category: Informational - Expiration 5/31/01 92 4845 DCS Architecture November 2000 4847 Contact: sip: Host(mta-t2.provider) 4848 Remote-Party-ID: tel:+1-212-555-3333 4849 State: Host(dp-o.provider); state="{gate= Host(cmts- 4850 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 4851 3333,lrn=212-256@Host(dp-t2.provider), state="Host(dp- 4852 t2.provider); nexthop=sip:555-3333@Host(mta- 4853 t2.provider); gate=Host(cmts- 4854 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 4855 1111; num-redirects=0"}K" 4856 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 4857 555-1111/212-555-3333> 4858 Dcs-Billing-ID: Host(dp-o.provider):3612E5C:0152 4860 After some period of consultation, MTA-o initiates a transfer of the 4861 call from MTA-t1 to the new destination, MTA-t2. This involves 4862 placing the second call on hold (message sequence described 4863 earlier), and sending a REFER message to MTA-t2, giving it the 4864 information about the call with MTA-t1 in the REFER-By header. The 4865 INVITE message, since it changes parties involved in the call, is 4866 routed through the proxies. The sequence is shown in the following 4867 figure, and detailed below. 4869 DCS Group Category: Informational - Expiration 5/31/01 93 4870 DCS Architecture November 2000 4872 MTA-o MTA-t1 Proxy-o Proxy-t2 MTA-t2 4874 | (1) REFER | | | 4875 |----------------->| (2) REFER | | 4876 | | |-------------->| (3) REFER | 4877 | | | |------------------>| 4878 | | | | 4879 | | Proxy-t1 | (4) INVITE | 4880 | | | (5)INVITE |<------------------| 4881 | |(6)INVITE|<--------------| | 4882 | |<--------| | | 4883 | | (7)SDP | | | 4884 | |-------->| (8) SDP | | 4885 | | |-------------->| (9) SDP | 4886 | | | (10) PRACK |------------------>| 4887 | |<--------------------------------------------| 4888 | | | (11) 200 OK | | 4889 | |-------------------------------------------->| 4890 | | | (12) COMET | | 4891 | |<--------------------------------------------| 4892 | | | (13) 200 OK | | 4893 | |-------------------------------------------->| 4894 | |(14)200 | | | 4895 | |-------->| (15) 200 OK | | 4896 | | |-------------->| (16) 200 OK | 4897 | | | (17) ACK |------------------>| 4898 | |<--------------------------------------------| 4899 | | | | | 4900 | | Proxy-o | (17) 200 OK | 4901 | | | (18)200 OK |<------------------| 4902 | (19) 200 OK |<--------------| | 4903 |<-----------------| | | 4904 | | | (20) BYE | | 4905 |----------------------------------------------------->| 4906 | | | (21) 200 OK | | 4907 |<-----------------------------------------------------| 4908 |(22)BYE | | | | 4909 |------->| | | | 4910 |(23)200 | | | | 4911 |<-------| | | | 4913 After placing the second call on hold, MTA-o initiates a transfer by 4914 sending a REFER to MTA-t2, routed through the proxies. 4916 (1) REFER: 4917 REFER sip: Host(mta-t2.provider) SIP/2.0 4918 Via: SIP/2.0/UDP Host(mta-o.provider) 4919 Supported: 100rel, state 4920 Remote-Party-ID: John Doe 4921 Anonymity: off 4922 Refer-to: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 4923 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 4925 DCS Group Category: Informational - Expiration 5/31/01 94 4926 DCS Architecture November 2000 4928 & State= Host(dp-o.provider);state="{nexthop=sip:Host( 4929 dp-t1.provider); gate=Host(cmts- 4930 o.provider):3612/17S30124; state="Host(dp-t1.provider); 4931 nexthop=sip:555-2222@Host(mta-t1.provider); 4932 gate=Host(cmts-t1.provider):4321/31S14621; orig- 4933 dest=tel:+1-212-555-1111; num-redirects=0"}K" 4934 State: Host(dp-o.provider); state="{gate= Host(cmts- 4935 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 4936 3333,lrn=212-256@Host(dp-t2.provider), state="Host(dp- 4937 t2.provider); nexthop=sip:555-3333@Host(mta- 4938 t2.provider); gate=Host(cmts- 4939 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 4940 1111; num-redirects=0"}K" 4941 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4942 To: tel:555-3333 4943 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4944 CSeq: 133 REFER 4945 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 4946 seq=23))@localhost 4948 When the REFER is received at Proxy-o, it first verifies MTA-o has 4949 subscribed to Call Transfer service. If so, it decrypts the State 4950 information in the Refer-to header to determine the local gate 4951 location and identification. Proxy-o queries the gate to obtain the 4952 transferred call's original billing information. Proxy-o inserts 4953 billing information to indicate that the user associated with the 4954 number 212-555-1111 will pay for the new call segment. Proxy-o 4955 extracts the call routing from the Dcs-state information, and then 4956 forwards the message to Proxy-t2. 4958 (2) REFER: 4959 REFER sip: Host(dp-o.provider) SIP/2.0 4960 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 4961 Via: SIP/2.0/UDP Host(mta-o.provider) 4962 Supported: 100rel, state 4963 Proxy-Require: dcs 4964 State: Host(dp-t2.provider); nexthop=sip:555-3333@Host(mta- 4965 t2.provider); gate=Host(cmts- 4966 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 4967 1111; num-redirects=0 4968 Refer-to: tel:+1-212-555-2222? Call-ID=B64(SHA-1(555- 4969 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 4970 & Dcs-Billing-Info= Host(rks-t1.provider)<4278-9865- 4971 8765-9000/212-555-2222/212-555-1111> & Dcs-Billing- 4972 Info= Host(rks-t2.provider)<5123-0123-4567-8900/212- 4973 555-1111/212-555-3333> & Dcs-Billing-ID= Host(dp- 4974 o.provider): 36123E5C:0152 4975 Remote-Party-ID: John Smith 4976 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4977 To: tel:555-3333 4978 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 4979 CSeq: 133 REFER 4981 DCS Group Category: Informational - Expiration 5/31/01 95 4982 DCS Architecture November 2000 4984 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 4985 seq=23))@localhost 4987 Proxy-t2 forwards the REFER message to MTA-t2 after encrypting the 4988 destination of the transfer, and the Dcs-Billing, Dcs-Billing-ID 4989 headers. 4991 (3) REFER: 4992 REFER sip: 555-3333@Host(mta-t2.provider) SIP/2.0 4993 Via: SIP/2.0/UDP Host(dp-t2.provider), {via="Host(dp- 4994 o.provider); branch=1"; via=Host(mta-o.provider)}K 4995 Supported: 100rel, state 4996 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-2222; 4997 billing-id=Host(dp-o.provider): 36123E5C:0152; 4998 expires=; billing-info= Host(rks- 4999 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 5000 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 5001 4567-8900/212-555-1111/212-555-3333>}K@Host(dp- 5002 t2.provider);private ? Call-ID=B64(SHA-1(555- 5003 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 5004 Remote-Party-ID: John Smith 5005 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5006 To: tel:555-3333 5007 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5008 CSeq: 133 INVITE 5009 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 5010 seq=23))@localhost 5012 After processing the REFER, MTA-t2 issues a INVITE to MTA-t1. In 5013 addition to the standard headers carried in an INVITE message, the 5014 encrypted {Dcs-Billing, Dcs-Billing-ID} fields received in the REFER 5015 message are copied into the Request-URI of the INVITE message. These 5016 fields indicate the destination, and that the user associated with 5017 the 212-555-1111 number will be charged for the second call leg. 5019 (4) INVITE: 5020 INVITE sip:{type=transfer; dest=tel:+1-212-555-2222; billing- 5021 id=Host(dp-o.provider): 36123E5C:0152; 5022 expires=; billing-info= Host(rks- 5023 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 5024 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 5025 4567-8900/212-555-1111/212-555-3333>}K@Host(dp- 5026 t2.provider);private SIP/2.0 5027 Via: SIP/2.0/UDP Host(mta-t2.provider) 5028 Supported: 100rel, state 5029 Remote-Party-ID: John Smith 5030 Anonymity: Off 5031 From: "Alien Blaster" 5033 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 5034 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 5035 Cseq: 129 INVITE 5037 DCS Group Category: Informational - Expiration 5/31/01 96 5038 DCS Architecture November 2000 5040 Referred-by: tel:555-1111 5041 Contact: sip:Host(mta-t2.provider) 5042 Content-Type: application/sdp 5043 Content-length: (.) 5045 v=0 5046 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5047 s=- 5048 c= IN IP4 Host(mta-t2.provider) 5049 b=AS:64 5050 t=907165275 0 5051 a=X-pc-csuites:312F 5052 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5053 a=rtpmap:0 PCMU/8000 5054 a=rtpmap:96 G726-32/8000 5055 m=audio 3456 RTP/AVP 0 5056 a=qos:mandatory sendrecv 5057 a=X-pc-codecs:96 5059 When the Proxy-t2 receives the INVITE it first decrypts the header 5060 information to find the real destination for the call. Proxy 5061 compares the current time against the timestamp in the encrypted 5062 string; if the request is too old, it is refused. It invokes the 5063 call routing logic to determine which Proxy (Proxy-t1) to which the 5064 INVITE needs to be routed. It also embeds two Dcs-Billing-Info 5065 headers in this message. The first one identifies the user 5066 associated with the E.164 number 212-555-2222 as paying for the 5067 initial call leg (212-555-2222/212-555-1111). This information was 5068 derived from the customer account information for the caller during 5069 the first call attempt. The second Dcs-Billing-Info header 5070 identifies the user associated with the E.164 number 212-555-1111 as 5071 paying for the second call leg (212-555-1111/212-555-3333), and was 5072 provided by Proxy-o in the REFER message. 5074 (5) INVITE: 5075 INVITE sip: +1-212-555-2222,lrn=212-265@Host(dp-t1);user=np- 5076 queried SIP/2.0 5077 Via: SIP/2.0/UDP Host(dp-t2.provider); branch=1; 5078 Via: SIP/2.0/UDP Host(mta-t2.provider); 5079 Supported: 100rel, state 5080 Require: state 5081 Proxy-Require: dcs, state 5082 Remote-Party-ID: John Smith 5083 Anonymity: Off 5084 Dcs-Gate: Host(cmts-t2.provider):3612/17S30124/37FA1948 5085 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5086 9000/212-555-2222/212-555-1111> 5087 Dcs-Billing-Info: Host(rks-t2.provider)<5123-0123-4567- 5088 8900/212-555-1111/212-555-3333> 5089 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 5090 From: "Alien Blaster" 5092 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 5094 DCS Group Category: Informational - Expiration 5/31/01 97 5095 DCS Architecture November 2000 5097 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 5098 Cseq: 129 INVITE 5099 Reffered-By: tel:555-1111 5100 Contact: sip:Host(mta-t2.provider) 5101 Content-Type: application/sdp 5102 Content-length: (.) 5104 v=0 5105 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5106 s=- 5107 c= IN IP4 Host(mta-o.provider) 5108 b=AS:64 5109 t=907165275 0 5110 a=X-pc-csuites:312F 5111 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5112 a=rtpmap:0 PCMU/8000 5113 a=rtpmap:96 G726-32/8000 5114 m=audio 3456 RTP/AVP 0 5115 a=qos:mandatory sendrecv 5116 a=X-pc-codecs:96 5118 Upon receiving this INVITE, Proxy-t1 queries the directory server to 5119 determine the IP address (MTA-t1) associated with 212-555-2222. It 5120 then forwards the INVITE message to MTA-t1, after stripping off all 5121 of the billing fields, and adding the encrypted state information. 5122 MTA-t1 recognizes the Call-ID matching an existing call, and matches 5123 the value of the Reffered-By: header to the From/To of that call. 5124 Since they match, the call is allowed to proceed, with the 183- 5125 Session-Progress, receiving PRACK, COMET, etc. These messages are 5126 identical to the basic call flow shown in Section 9.1, and are not 5127 repeated here. 5129 Upon receipt of the 200-OK response from MTA-t1, MTA-t2 sends the 5130 final response of the REFER by sending a 200-OK to MTA-o. This 5131 message is routed through the Proxy Proxy-t2, Proxy-o, and then 5132 delivered to MTA-o. MTA-o responds directly with an ACK. Proxy-o 5133 is now done, and MTA-o sends a BYE message to terminate the call leg 5134 from MTA-o to MTA-t2, and a BYE message to terminate the call leg 5135 from MTA-o to MTA-t1. 5137 DCS Group Category: Informational - Expiration 5/31/01 98 5138 DCS Architecture November 2000 5140 9.13 Three-Way-Calling (with Network Bridge) 5142 Three-way calling is a fairly complex consumer service that allows a 5143 subscriber to simultaneously talk to two parties, and for those two 5144 parties to hear each other. It is often thought of as an ad-hoc 5145 conference bridge. Usage of the service proceeds as follows. The 5146 customer has an active call, either one initiated or received. The 5147 customer then does a hookflash, which places the existing call on 5148 hold and presents a dialtone. The user then dials the a second 5149 number, and connects to that party. A hookflash at this point 5150 creates a 3-way call, bridging the two calls together. Note the 5151 distinction between three-way calling and call waiting (where the 5152 two calls are alternately placed on hold and connected) lies in the 5153 fact that the subscriber initiated the second call; if the second 5154 call was an incoming call then the call-waiting service would be 5155 active. 5157 The desired state during the three-way-call is three separate call 5158 legs, from each participant to the bridge server. If the 5159 participants initiate the calls, then they all have the same Call- 5160 ID, which tells the bridge to mix them together. If the bridge 5161 initiates the connections, there is no necessity for a common Call- 5162 ID. Multiple methods exist using combinations of REFER methods and 5163 headers to achieve the desired connections. One way involves the 5164 subscriber establishing a connection to a bridge element, then 5165 transferring both of the existing calls to the bridge. Another 5166 method involves the subscriber asking the bridge to handle 5167 redirecting the existing calls to itself. The latter involves fewer 5168 signaling messages, and is preferred over the former. There is, of 5169 course, a third option - that the conference bridging function is 5170 done within the MTA and the network sees it as two separate 5171 simultaneous calls. As this consumes double the access network 5172 bandwidth, it is discouraged. 5174 Initially a single call is active. For purposes of this example, 5175 consider that call to have been a call initiated by MTA-t1 to MTA-o. 5176 The call identification information at MTA-o is as follows: 5178 MTA-o state for call from MTA-t1 to MTA-o 5179 From: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5180 To: tel:555-1111 5181 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5182 Contact: sip: Host(mta-t1.provider) 5183 Remote-Party-ID: tel:+1-212-555-2222 5184 State: Host(dp-o.provider); state="{nexthop=sip:Host(dp- 5185 t.provider); gate=Host(cmts-o.provider):3612/17S30124; 5186 state="Host(dp-t.provider); nexthop=sip:555- 5187 2222@Host(mta-t1.provider); gate=Host(cmts- 5188 t.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5189 1111; num-redirects=0"}K" 5190 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5191 9000/212-555-2222/212-555-1111> 5192 Dcs-Billing-ID: Host(dp-t1.provider):36124033:0381 5194 DCS Group Category: Informational - Expiration 5/31/01 99 5195 DCS Architecture November 2000 5197 MTA-o observes a hookflash and places this call on hold, issues a 5198 dialtone, and collects digits for a second call (212-555-3333). 5199 This sequence is shown in Section 9.10, resulting in the first call 5200 being held and a conversation active to the second destination. 5201 For this example, assume the second call is identified as follows: 5203 State at MTA-o for call from MTA-o to MTA-t2 5204 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5205 To: tel:555-3333 5206 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 5207 Contact: sip: Host(mta-t2.provider) 5208 Remote-Party-ID: tel:+1-212-555-3333 5209 State: Host(dp-o.provider); state="{gate= Host(cmts- 5210 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 5211 3333;lrn=212-256@Host(DP-t), state="Host(dp- 5212 t.provider); nexthop=sip:555-3333@Host(mta-t.provider); 5213 gate=Host(cmts-t.provider):4321/31S14621; orig- 5214 dest=tel:+1-212-555-1111; num-redirects=0"}K" 5215 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5216 555-1111/212-555-3333> 5217 Dcs-Billing-ID: Host(dp-o.provider):3612E5C:0152 5219 The three-way-calling method described in this appendix asks the 5220 bridge to redirect the existing calls via an INVITE(Refer). The 5221 bridge therefore is in control of managing the endpoints, and knows 5222 the proper media streams for mixing, even though they don't have a 5223 common Call-ID. 5225 DCS Group Category: Informational - Expiration 5/31/01 100 5226 DCS Architecture November 2000 5228 MTA-o MTA-t1 Proxy-o Proxy-b MTA-t2 5230 | | (1) INVITE(Hold) | 5231 |----------------------------------------------------->| 5232 | | (2) 200 OK | | 5233 |----------------------------------------------------->| 5234 | | (3) ACK | | 5235 |----------------------------------------------------->| 5236 | | | 5237 | (4) REFER | | Bridge 5238 |----------------->| (5) REFER | | 5239 | | |-------------->| (6) REFER | 5240 | | | |------------------>| 5241 | | | | (7) 183 SDP | 5242 | | | (8) 183 SDP |<------------------| 5243 | (9) 183 SDP |<--------------| | 5244 |<-----------------| (10) PRACK | | 5245 |----------------------------------------------------->| 5246 | | | (11) 200 OK | | 5247 |<-----------------------------------------------------| 5248 | | | (12) COMET | | 5249 |----------------------------------------------------->| 5250 | | | (13) 200 OK | | 5251 |<-----------------------------------------------------| 5252 | | | | (14) 200 OK | 5253 | | | (15) 200 OK |<------------------| 5254 | (16) 200 OK |<--------------| | 5255 |<-----------------| (17) ACK | | 5256 |----------------------------------------------------->| 5257 | | | | | 5258 | | | | (18) INVITE | 5259 | | | (19)INVITE |<------------------| 5260 | (20)INVITE|<--------------| | 5261 | |<--------| | | 5262 | |(21)SDP | | | 5263 | |-------->| (22) SDP | | 5264 | | |-------------->| (23) SDP | 5265 | | | (24) PRACK |------------------>| 5266 | |<--------------------------------------------| 5267 | | | (25) 200 OK | | 5268 | |-------------------------------------------->| 5269 | | | (26) COMET | | 5270 | |<--------------------------------------------| 5271 | | | (27) 200 OK | | 5272 | |-------------------------------------------->| 5273 | |(28)200 | | | 5274 | |-------->| (29) 200 OK | | 5275 | | |-------------->| (30) 200 OK | 5276 | | | (31) ACK |------------------>| 5277 |(32)BYE |<--------------------------------------------| 5278 |<-------| | | | 5279 |(33)200 | | | | 5280 |------->| | | | 5282 DCS Group Category: Informational - Expiration 5/31/01 101 5283 DCS Architecture November 2000 5285 Messages (1) to (3), for putting an existing call on hold, are 5286 identical to those used in Call Waiting (see Section 9.10). 5287 In response to the hook-flash, MTA also issues an INVITE to a bridge 5288 with a new call ID. The identity of the destination is given via 5289 the service name "bridge," which is a pre-defined service name in 5290 DCS. 5292 (4) REFER: 5293 REFER sip: bridge@Host(dp-o) SIP/2.0 5294 Via: SIP/2.0/UDP Host(mta-o.provider) 5295 Supported: 100rel, state 5296 Remote-Party-ID: John Doe 5297 Anonymity: Off 5298 Refer-To: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 5299 2222;time=36124033;seq=72))@localhost & Reffered-By 5300 =tel:555-1111 & State= Host(dp-o.provider); 5301 state="{nexthop=sip:Host(dp-t.provider); 5302 gate=Host(cmts-o.provider):3612/17S30124; 5303 state="Host(dp-t.provider); nexthop=sip:555- 5304 2222@Host(mta-t1.provider); gate=Host(cmts- 5305 t.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5306 1111; num-redirects=0"}K" 5307 Refer-To: tel:+1-222-555-3333 ? Call-ID=B64(SHA-1(555- 5308 1111;time=36124125;seq=23))@localhost & Reffered-By 5309 =B64(SHA-1(555-1111;time- 5310 36124125;seq=23))@localhost & State= Host(dp- 5311 o.provider); state="{gate= Host(cmts-o.provider): 5312 3612/3S10782, nexthop=sip:+1-212-555-3333;lrn=212- 5313 256@Host(DP-t), state="Host(dp-t.provider); 5314 nexthop=sip:555-3333@Host(mta-t.provider); 5315 gate=Host(cmts-t.provider):4321/31S14621; orig- 5316 dest=tel:+1-212-555-1111; num-redirects=0"}K" 5317 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5318 To: sip: bridge@Host(dp-o.provider) 5319 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5320 Contact: sip:Host(mta-o.provider) 5321 Cseq: 131 INVITE 5322 Content-Type: application/sdp 5323 Content-length: (.) 5325 v=0 5326 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5327 s=- 5328 c= IN IP4 Host(mta-o.provider) 5329 b=AS:64 5330 t=907165275 0 5331 a=X-pc-csuites:312F 5332 a=rtpmap:0 PCMU/8000 5333 a=rtpmap:96 G726-32/8000 5334 m=audio 3460 RTP/AVP 0 5335 a=qos:mandatory sendrecv 5336 a=X-pc-codecs:96 5338 DCS Group Category: Informational - Expiration 5/31/01 102 5339 DCS Architecture November 2000 5341 Proxy-o resolves the "bridge service name" to an available bridge 5342 (mcu41@Host(dp-b.provider) in this example), and forwards the INVITE 5343 to the associated Proxy (Proxy-b). In general, bridges will be 5344 available locally at Proxy-o, but this example demonstrates the 5345 messages exchanged if the bridge is remote. In general, bridges 5346 will be network services and located within the trusted domain of 5347 the network. However, they may also be provided by others. This 5348 example call flow diagram shows the latter case, where the bridge is 5349 outside the trusted domain of the service provider. 5351 If the bridge is a trusted network element, the Bridge (for 5352 signaling purposes) would be functionally equivalent to a CMS, and 5353 use the same message set as is used between CMSs. In the diagram 5354 above, this would appear as if the lines Proxy-b and BRIDGE were 5355 merged together. 5357 Proxy-o decrypts the state header values attached to the Refer-To 5358 headers, extracts the billing information for each of the previous 5359 call legs, and expands this information into the Dcs-Billing-Info 5360 values 5362 (5) REFER: 5363 REFER sip:mcu41@Host(dp-b.provider) SIP/2.0 5364 Via: SIP/2.0/UDP Host(dp-o.provider) 5365 Via: SIP/2.0/UDP Host(mta-o.provider) 5366 Supported: 100rel, state 5367 Proxy-Require: dcs, state 5368 Require: state 5369 Remote-Party-ID: John Doe 5370 Anonymity: Off 5371 Dcs-Gate: Host(cmts-o.provider):3612/5S12045/9142E7A1 5372 Dcs-Billing-Info: Host(rks-o.provider)<5123-4567-8900/212-555- 5373 1111/mcu41@Host(dp-b.provider)/bridge-3> 5374 Dcs-Billing-ID: Host(dp-o.provider):36124135:92 5375 Refer-To: tel:+1-212-555-2222 ? CallID= B64(SHA-1(555- 5376 2222;time=36124033;seq=72))@localhost & Dcs-Billing- 5377 Info= Host(rks-t1.provider)<4278-9865-8765-9000/212- 5378 555-2222/212-555-1111> & Dcs-Billing-Info= Host(rks- 5379 o.provider)<5123-4567-8900/212-555-1111/mcu41@Host(dp- 5380 b.provider)> & Dcs-Billing-ID= Host(dp- 5381 t1.provider):36124033:0381 & Reffered-By=tel:555-1111 5382 Refer-to: tel:+1-212-555-3333 ? CallID= B64(SHA-1(555- 5383 1111;time=36124125;seq=23))@localhost & Dcs-Billing- 5384 Info= Host(rks-o.provider)/<5123-4567-8900/212-555- 5385 1111/212-555-3333> & Dcs-Billing-Info= Host(rks- 5386 o.provider)<5123-4567-8900/212-555-1111/mcu41@Host(dp- 5387 b.provider)> & Dcs-Billing-ID= Host(dp- 5388 o.provider):36123E5C:0152 & Reffered-By:B64(SHA-1(555- 5389 1111;time-36124125;seq=23))@localhost 5390 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 5391 o.provider); gate=Host(cmts-o.provider):3612/17S30124 5392 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5394 DCS Group Category: Informational - Expiration 5/31/01 103 5395 DCS Architecture November 2000 5397 To: sip: bridge@Host(dp-o.provider) 5398 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5399 Contact: sip:Host(mta-o.provider) 5400 Cseq: 131 INVITE 5401 Content-Type: application/sdp 5402 Content-length: (.) 5404 v=0 5405 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5406 s=- 5407 c= IN IP4 Host(mta-o.provider) 5408 b=AS:64 5409 t=907165275 0 5410 a=X-pc-csuites:312F 5411 A=rtpmap:0 PCMU/8000 5412 a=rtpmap:96 G726-32/8000 5413 m=audio 3460 RTP/AVP 0 5414 a=qos:mandatory sendrecv 5415 a=X-pc-codecs:96 5417 Proxy-b encrypts the various fields into two Refer-To: headers, 5418 caches the Via headers, and passes the message to the bridge. 5420 (6) REFER: 5421 REFER sip:mcu41.provider SIP/2.0 5422 Via: SIP/2.0/UDP Host(dp-b.provider), {via=Host(dp-o.provider); 5423 via=Host(mta-o.provider)}K 5424 Supported: 100rel, state 5425 Require: state 5426 Remote-Party-ID: John Doe 5427 Dcs-Gate: 27S6028 5428 Refer-To: sip:{type=transfer; dest=+1-212-555-2222; Billing- 5429 info=Host(dp-t1.provider):36124033:0381; ; 5430 Billing-info=Host(rks-t1.provider)<4278-9865-8765- 5431 9000/212-555-2222/212-555-1111>; Billing-id=Host(rks- 5432 o.provider)<5123-4567-8900/212-555- 5433 1111/mcu41.provider>}K@dp-b.provider;private ? Call-ID= 5434 B64(SHA-1(555-2222;time=36124033;seq=72))@localhost & 5435 Reffered-By=tel:555-1111 5436 Refer-To: sip:{type=transfer; dest=+1-212-555-3333; billing- 5437 id=Host(dp-o.provider):36123E5C:0152; 5438 expires=; billing-info=Host(rks- 5439 o.provider)/<5123-4567-8900/212-555-1111/212-555-3333>; 5440 billing-info=Host(rks-o.provider)<5123-4567-8900/212- 5441 555-1111/mcu41.provider>}K@dp-b.provider;private ? 5442 Call-ID= B64(SHA-1(555- 5443 1111;time=36124125;seq=23))@localhost & Reffered-By 5444 :B64(SHA-1(555-1111;time-36124125;seq=23)) 5445 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5446 o.provider); gate=Host(cmts-b.provider): 3612/27S6028; 5447 via="Host(dp-o.provider);branch=1", via=Host(mta- 5448 o.provider), state="Host(dp-o.provider); 5450 DCS Group Category: Informational - Expiration 5/31/01 104 5451 DCS Architecture November 2000 5453 nexthop=sip:555-1111@Host(mta-o.provider); 5454 gate=Host(cmts-o.provider):3612/17S30124"}K" 5455 From: sip:B64(SHA-1(555-1111; time=36124135;seq=24))@localhost 5456 To: sip: bridge@Host(dp-o.provider) 5457 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5458 Contact: sip:Host(mta-o.provider) 5459 Cseq: 131 INVITE 5460 Content-Type: application/sdp 5461 Content-length: (.) 5463 v=0 5464 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5465 s=- 5466 c= IN IP4 Host(mta-o.provider) 5467 b=AS:64 5468 t=907165275 0 5469 a=X-pc-csuites:312F 5470 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5471 A=rtpmap:0 PCMU/8000 5472 a=rtpmap:96 G726-32/8000 5473 m=audio 3460 RTP/AVP 0 5474 a=X-pc-codecs:96 5476 Bridge completes the call from MTA-o in a manner very similar to the 5477 basic call flow of Section 9.1. Since a bridge doesn't need to 5478 alert a human, it responds immediately with 200-OK when resources 5479 are known to be available. Messages (7) through (17) are not 5480 detailed in this section. 5482 Bridge initiates two calls in parallel, one to each of the 5483 participants listed in the Refer-To: headers. The Request URI in 5484 the new INVITE message is the encrypted string received in the 5485 Refer-To: header, the To: header is a generic string such as 5486 "participant" since the bridge has no knowledge of the identity 5487 of the participants, and the Call-ID is the value from the Refer-To 5488 header. Part of the message sequence for MTA-t1 (messages (18) to 5489 (33)) is detailed here; messages (34) through (49) are identical and 5490 not shown in the figure. 5492 (18) INVITE (Refer-By): 5493 INVITE sip:{type=transfer; dest=+1-212-555-2222; Billing- 5494 info=Host(dp-t1.provider):36124033:0381; ; 5495 Billing-info=Host(rks-t1.provider)<4278-9865-8765- 5496 9000/212-555-2222/212-555-1111>; Billing-id=Host(rks- 5497 o.provider)<5123-4567-8900/212-555- 5498 1111/mcu41.provider>}K@dp-b.provider;private SIP/2.0 5499 Via: SIP/2.0/UDP Host(mcu41.provider) 5500 Supported: 100rel, state 5501 Remote-Party-ID: Bridge Service 5502 Anonymity: URL, Name 5503 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5504 To: sip: participant1@localhost 5505 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5507 DCS Group Category: Informational - Expiration 5/31/01 105 5508 DCS Architecture November 2000 5510 Contact: sip:Host(mcu41.provider) 5511 Cseq: 128 INVITE 5512 Refer-By:tel:555-1111 5513 Content-Type: application/sdp 5514 Content-length: (.) 5516 v=0 5517 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5518 s=- 5519 c= IN IP4 Host(mcu41.provider) 5520 b=AS:64 5521 t=907165275 0 5522 a=X-pc-csuites:312F 5523 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5524 a=rtpmap:0 PCMU/8000 5525 a=rtpmap:96 G726-32/8000 5526 m=audio 3174 RTP/AVP 0 5527 a=X-pc-Qos:mandatory sendrecv 5528 a=X-pc-codecs:96 5530 Proxy-b decodes the encrypted Request-URI to find the real 5531 destination for this call. Proxy compares the current time against 5532 the expiration time in the encrypted string; if the request is too 5533 old it is refused. The call routing is determined from the 5534 destination contained in the encrypted string, as is the billing 5535 information for the call. Proxy-b sends the following INVITE 5536 message to Proxy-t1: 5538 (19) INVITE (Refer-By): 5539 INVITE sip:+1-212-555-2222,lrn=212-234@Host(dp- 5540 t1.provider);user=np-queried SIP/2.0 5541 Via: SIP/2.0/UDP Host(dp-b.provider) 5542 Via: SIP/2.0/UDP Host(mcu41.provider) 5543 Supported: 100rel, state 5544 Require: state 5545 Proxy-Require: dcs, state 5546 Remote-Party-ID: Bridge Service 5547 Anonymity: URL, Name 5548 Dcs-Gate: Host(cmts-b.provider):3612/28S6029/079317A3 5549 State: Host(dp-b.provider); nexthop=Host(mcu41.provider); 5550 gate=Host(cmts-b)::3621/28S6029; orig-dest=tel:+1-212- 5551 555-2222; num-redirects=0 5552 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5553 To: sip: participant1@localhost 5554 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5555 Contact: sip:Host(mcu41.provider) 5556 Cseq: 128 INVITE 5557 Refer-By:tel:555-1111 5558 Content-Type: application/sdp 5559 Content-length: (.) 5561 v=0 5562 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5564 DCS Group Category: Informational - Expiration 5/31/01 106 5565 DCS Architecture November 2000 5567 s=- 5568 c= IN IP4 Host(bridge.provider) 5569 b=AS:64 5570 t=907165275 0 5571 a=X-pc-csuites:312F 5572 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5573 a=rtpmap:0 PCMU/8000 5574 a=rtpmap:96 G726-32/8000 5575 a=qos:mandatory sendrecv 5576 m=audio 3174 RTP/AVP 0 5578 Proxy-t1 processes this exactly as a normal INVITE message, and 5579 passes the message to MTA-t1. 5581 (20) INVITE (Refer-By): 5582 INVITE sip:555-2222@Host(mta-t1.provider) SIP/2.0 5583 Via: SIP/2.0/UDP Host(dp-t1.provider), {via=Host(dp- 5584 b.provider); via=Host(mcu41.provider)}K 5585 Supported: 100rel, state 5586 Require: state 5587 Remote-Party-ID: 5589 Media-Authorization: 5S32740 5590 State: Host(dp-t1.provider); state={nexthop=sip:Host(dp-b); 5591 gate=Host(cmts-t1:3621/53S32740;state="Host(dp- 5592 b.provider); nexthop=Host(mcu41.provider); 5593 gate=Host(cmts-b)::3621/28S6029; orig-dest=tel:+1-212- 5594 555-2222; num-redirects=0"}K 5595 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5596 To: sip: participant1@localhost 5597 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5598 Contact: sip:Host(mcu41.provider) 5599 Cseq: 128 INVITE 5600 Refer-By:tel:555-1111 5601 Content-Type: application/sdp 5602 Content-length: (.) 5604 v=0 5605 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 5606 s=- 5607 c= IN IP4 Host(mcu41.provider) 5608 b=AS:64 5609 t=907165275 0 5610 a=X-pc-csuites:312F 5611 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 5612 a=rtpmap:0 PCMU/8000 5613 a=rtpmap:96 G726-32/8000 5614 m=audio 3174 RTP/AVP 0 5615 a=X-pc-Qos:mandatory sendrecv 5616 a=X-pc-codecs:96 5618 MTA-t1 notes the Call-ID: header, and determines that it has a call 5619 with that ID and that the Refer-By: header matches either the From: 5621 DCS Group Category: Informational - Expiration 5/31/01 107 5622 DCS Architecture November 2000 5624 or To: value for the call. This INVITE is therefore interpreted as 5625 an update to that existing call. The provisional response (183- 5626 Session-Progress) is sent (21) to the local Proxy, who restores the 5627 encrypted Via: headers and sends it (22) to the originating Proxy, 5628 who passes it (23) to the bridge. These messages are identical to 5629 those of the basic call flow. The bridge responds with the PRACK 5630 message (24), as in the basic call flow. The bridge then performs 5631 the resource allocation and continues as in the basic call flow. 5633 Upon receipt of the ACK message, MTA-t1 sends a BYE message to its 5634 original caller. Note that this message has the From: and To: 5635 headers reversed from the incoming INVITE originally received for 5636 this call. If MTA-t1 had initiated the call to MTA-o, then the 5637 From: and To: would match those in the initial INVITE. 5639 (32) BYE: 5640 BYE sip:Host(mta-o.provider) SIP/2.0 5641 Via: SIP/2.0/UDP Host(mta-t1.provider) 5642 From: tel:555-1111 5643 To: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5644 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5645 Cseq: 129 BYE 5647 Upon receipt of the BYE message, MTA-o sends the following 200-OK 5648 message to MTA-t1. 5650 (33) 200-OK: 5651 SIP/2.0 200 OK 5652 Via: SIP/2.0/UDP Host(mta-t1.provider) 5653 From: tel:555-1111 5654 To: sip:B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5655 Call-ID: B64(SHA-1(555-2222;time=36124033;seq=72))@localhost 5656 Cseq: 129 BYE 5658 The sequence of messages (34)-(49) is identical, and performs the 5659 same functions for the other leg of the three-way conference. 5661 DCS Group Category: Informational - Expiration 5/31/01 108 5662 DCS Architecture November 2000 5664 9.14 Three-Way-Calling Hangup sequences 5666 There are two distinct hangup sequences that need to be detailed: 5667 hangup of a participant and hangup of the originator. The first 5668 results in a basic call between the originator and the remaining 5669 participant. The latter results in a hangup of all participants. 5671 For both of the following detail call flows, consider the initial 5672 state information to be the following: 5674 MTA-o: Call from MTA-o to BRIDGE 5675 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5676 To: sip:bridge@Host(dp-o.provider) 5677 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5678 Contact: sip:Host(mcu41.provider) 5679 State: Host(dp-o.provider); state="{gate= Host(cmts- 5680 o.provider): 3612/12S52127, nexthop=sip: mcu41@Host(dp- 5681 b), state="Host(dp-b.provider); 5682 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5683 b.provider):4321/31S14621; orig-dest=sip:mcu41@Host(dp- 5684 b); num-redirects=0"}K" 5685 Dcs-Billing-Info: Host(rks-o.provider)/341FE8B<5123-0123-4567- 5686 8900/212-555-1111/mcu41.provider/Bridge-3 5688 MTA-t1: Call from BRIDGE to MTA-t1 5689 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5690 To: sip: participant1@localhost 5691 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5692 Contact: sip:Host(mcu41.provider) 5693 State: Host(dp-t1.provider); state="{nexthop=sip:Host(dp- 5694 b.provider); gate=Host(cmts-t1.provider): 5695 3612/12S52127; state="Host(dp-b.provider); 5696 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5697 b.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5698 2222; num-redirects=0"}K" 5699 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5700 9000/212-555-2222/212-555-1111>;Host(rks- 5701 o.provider)<5123-4567-8900/212-555-2222/mcu41.provider> 5703 MTA-t2: Call from BRIDGE to MTA-t2 5704 From: sip:B64(SHA-1(bridge;time=36124135;seq=312)) @localhost 5705 To: sip: participant2@localhost 5706 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5707 Contact: sip:Host(mcu41.provider) 5708 State: Host(dp-t2.provider); state="{nexthop=sip:Host(dp- 5709 b.provider); gate=Host(cmts-t2.provider): 5710 3612/13S52196; state="Host(dp-b.provider); 5711 nexthop=sip:Host(mcu41.provider); gate=Host(cmts- 5712 b.provider):3612/18S37224; orig-dest=tel:+1=212-555- 5713 3333; num-redirects=0"}K" 5715 DCS Group Category: Informational - Expiration 5/31/01 109 5716 DCS Architecture November 2000 5718 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5719 555-1111/212-555-3333>;Host(rks-o.provider)<5123-4567- 5720 8900/212-555-3333/mcu41.provider> 5722 Bridge: Call from MTA-o to BRIDGE 5723 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5724 To: sip:bridge@Host(dp-o.provider) 5725 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5726 Contact: sip:Host(mta-o.provider) 5727 Remote-Party-ID: tel:+1-212-555-1111 5728 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5729 o.provider); gate=Host(cmts-b.provider):3612/15S30179; 5730 state="Host(dp-o.provider); nexthop=sip:555- 5731 1111@Host(mta-o.provider); gate=Host(cmts- 5732 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5733 1111; num-redirects=0"}K" 5734 Dcs-Billing-Info: Host(rks-o.provider)/341FE8B<5123-0123-4567- 5735 8900/212-555-1111/mcu41.provider/Bridge-3 5737 Bridge: Call from BRIDGE to MTA-t1 5738 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5739 To: sip: participant1@localhost 5740 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5741 Contact: sip:Host(mta-t1.provider) 5742 State: Host(dp-b.provider); state="{gate= Host(cmts- 5743 b.provider): 3612/17S30124, nexthop=sip:+1-212-555- 5744 2222;lrn=212-234@Host(DP-t1), state="Host(dp- 5745 t1.provider); nexthop=sip:555-2222@Host(mta- 5746 t1.provider); gate=Host(cmts- 5747 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 5748 2222; num-redirects=0"}K" 5749 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 5750 9000/212-555-2222/212-555-1111>;Host(rks- 5751 o.provider)<5123-4567-8900/212-555-2222/mcu41.provider> 5753 Bridge: Call from BRIDGE to MTA-t2 5754 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5755 To: sip: participant2@localhost 5756 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5757 Contact: sip:Host(mta-t2.provider) 5758 State: Host(dp-b.provider); state="{gate= Host(cmts- 5759 b.provider): 3612/18S37624, nexthop=sip:+1-212-555- 5760 3333;lrn=212-234@Host(DP-t2), state="Host(dp- 5761 t2.provider); nexthop=sip:555-3333@Host(mta- 5762 t2.provider); gate=Host(cmts- 5763 t2.provider):3621/13S52196; orig-dest=tel:+1-212-555- 5764 3333; num-redirects=0"}K" 5765 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 5766 555-1111/212-555-3333>;Host(rks-o.provider)<5123-4567- 5767 8900/212-555-3333/mcu41.provider> 5769 DCS Group Category: Informational - Expiration 5/31/01 110 5770 DCS Architecture November 2000 5772 MTA-o MTA-t1 Proxy-o Proxy-b Bridge 5774 | | | (1) BYE | | 5775 | |-------------------------------------------->| 5776 | | | (2) 200 OK | | 5777 | |<--------------------------------------------| 5778 | | | | | 5779 | | | | (3) REFER | 5780 | | | (4) REFER |<------------------| 5781 | (5) REFER |<--------------| | 5782 |<-----------------| | | 5783 | (6) 200 OK | | | 5784 |----------------->| (7) 200 OK | | 5785 | | |-------------->| (8) 200 OK | 5786 | | | (9) ACK |------------------>| 5787 |<-----------------------------------------------------| 5788 | | | 5789 | | | Proxy-t2 MTA-t2 5790 | | | | | 5791 | (10) INVITE | | | 5792 |----------------->| (11) INVITE | | 5793 | | |-------------->| (12) INVITE | 5794 | | | |------------------>| 5795 | | | | (13) 183 SDP | 5796 | | | (14) 183 SDP |<------------------| 5797 | (15) 183 SDP |<--------------| | 5798 |<-----------------| (16) PRACK | | 5799 |----------------------------------------------------->| 5800 | | | | | 5802 For this example, consider MTA-t1 to drop out of the three-way 5803 conference. MTA-t1 sends a BYE message to terminate its current 5804 call. 5806 (1) BYE 5807 SIP/2.0 BYE Host(mcu41.provider) 5808 Via: SIP/2..0/UDP Host(mta-t1.provider) 5809 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5810 To: sip: participant1@localhost 5811 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5812 CSeq: 12002 BYE 5814 The Bridge responds to MTA-t1 with the expected acknowledgement 5815 message. 5817 (2) 200-OK 5818 SIP/2.0 200 OK 5819 Via: SIP/2..0/UDP Host(mta-t1.provider) 5820 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5821 To: sip: participant1@localhost 5822 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24)) @localhost 5823 CSeq: 12002 BYE 5825 DCS Group Category: Informational - Expiration 5/31/01 111 5826 DCS Architecture November 2000 5828 The Bridge now reconnects the two remaining parties into a simple 5829 call. Since MTA-o is the originator of the three-way-call, the 5830 Bridge informs it of the need to redirect the call from MTA-t2. 5831 Bridge sends the INVITE(Also,Replace) message, via Proxy-b. 5833 (3) REFER 5834 REFER sip:Host(mta-o.provider) SIP/2.0 5835 Via: SIP/2.0/UDP Host(mcu41.provider) 5836 Supported: 100rel, state 5837 Refer-To: tel:+1-212-555-3333 ? Call-ID= B64(SHA-1(555- 5838 1111;time=36124135;seq=24))@localhost & Reffered-By= 5839 sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5840 & State= Host(dp-b.provider); state="{gate= Host(cmts- 5841 b.provider): 3612/18S37624, nexthop=sip:+1-212-555- 5842 3333;lrn=212-234@Host(DP-t2), state="Host(dp- 5843 t2.provider); nexthop=sip:555-3333@Host(mta- 5844 t2.provider); gate=Host(cmts- 5845 t2.provider):3621/13S52196; orig-dest=tel:+1-212-555- 5846 3333; num-redirects=0"}K" 5847 State: Host(dp-b.provider); state="{nexthop=sip:Host(dp- 5848 o.provider); gate=Host(cmts-b.provider):3612/15S30179; 5849 state="Host(dp-o.provider); nexthop=sip:555- 5850 1111@Host(mta-o.provider); gate=Host(cmts- 5851 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 5852 1111; num-redirects=0"}K" 5853 From: sip:bridge@Host(dp-o.provider) 5854 To: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5855 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5856 CSeq: 12301 INVITE 5857 Refer-By: sip:bridge@Host(dp-o.provider) 5859 The call flow from this point onward is identical to the Call 5860 Transfer with Consultation, as shown in Section 9.12. The bridge, 5861 having "consulted" with MTA-o, transfers its call with MTA-t2 to 5862 MTA-o. 5864 DCS Group Category: Informational - Expiration 5/31/01 112 5865 DCS Architecture November 2000 5867 MTA-o MTA-t1 MTA-t2 Proxy-b Bridge 5869 | | | (1) BYE | | 5870 |----------------------------------------------------->| 5871 | | | (2) 200 OK | | 5872 |<-----------------------------------------------------| 5873 | | | | | 5874 | | | (3) BYE | | 5875 | | |<----------------------------------| 5876 | | | (4) 200 OK | | 5877 | | |---------------------------------->| 5878 | | | | | 5879 | | | (5) BYE | | 5880 | |<--------------------------------------------| 5881 | | | (6) 200 OK | | 5882 | |-------------------------------------------->| 5883 | | | | | 5885 When the originator of a three-way call hangs up, the entire call is 5886 terminated. The bridge recognizes the BYE from the originator and 5887 sends BYE messages to all participants. 5889 MTA-o -> Bridge 5891 (1) BYE 5892 BYE sip:Host(mcu41.provider) SIP/2.0 5893 Via: SIP/2.0/UDP Host(mta-o.provider) 5894 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5895 To: sip:bridge@Host(dp-o.provider) 5896 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5897 CSeq: 141 BYE 5899 Bridge -> MTA-o 5901 (2) 200-OK 5902 SIP/2.0 200 OK 5903 Via: SIP/2.0/UDP Host(mta-o.provider) 5904 From: sip:B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5905 To: sip:bridge@Host(dp-o.provider) 5906 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5907 Cseq: 141 BYE 5909 Bridge -> MTA-t2 5911 (3) BYE 5912 BYE sip:Host(mta-t2.provider) SIP/2.0 5913 Via: SIP/2.0/UDP Host(mcu41.provider) 5914 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5915 To: sip: participant2@localhost 5916 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5917 CSeq: 80001 BYE 5919 MTA-t2 -> Bridge 5921 DCS Group Category: Informational - Expiration 5/31/01 113 5922 DCS Architecture November 2000 5924 (4) 200-OK 5925 SIP/2.0 200 OK 5926 Via: SIP/2.0/UDP Host(mcu41.provider) 5927 From: sip:B64(SHA-1(bridge;time=36124135;seq=312))@localhost 5928 To: sip: participant2@localhost 5929 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5930 CSeq: 80001 BYE 5932 Bridge -> MTA-t1 5934 (5) BYE 5935 BYE sip:Host(mta-t1.provider) SIP/2.0 5936 Via: SIP/2.0/UDP Host(mcu41.provider) 5937 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5938 To: sip: participant1@localhost 5939 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5940 CSeq: 80002 BYE 5942 MTA-t1 -> Bridge 5944 (6) 200-OK 5945 SIP/2.0 200 OK 5946 Via: SIP/2.0/UDP Host(mcu41.provider) 5947 From: sip:B64(SHA-1(bridge;time=36124135;seq=311))@localhost 5948 To: sip: participant1@localhost 5949 Call-ID: B64(SHA-1(555-1111;time=36124135;seq=24))@localhost 5950 CSeq: 80002 BYE 5952 DCS Group Category: Informational - Expiration 5/31/01 114 5953 DCS Architecture November 2000 5955 9.15 CODEC Change within previous authorization 5957 When the initial INVITE SDP contained multiple CODECs, such that any 5958 single CODEC would be authorized, no further interaction is needed 5959 with the CMS/Proxies to change CODECs. However, due to the 5960 requirements of the segmented reservation model of D-QoS, it is 5961 necessary to signal to the far end and synchronize changes in CODEC 5962 usage. The following diagram shows the sequence of signaling 5963 messages to perform this function. 5965 MTA-o Proxy-o Proxy-b MTA-t 5967 | | (1) INVITE | | 5968 |----------------------------------------------------->| 5969 | | (2) 183 SDP | | 5970 |<-----------------------------------------------------| 5971 | | (3) PRACK | | 5972 |----------------------------------------------------->| 5973 | | (4) 200 OK | | 5974 |<-----------------------------------------------------| 5975 | | (5) COMET | | 5976 |----------------------------------------------------->| 5977 | | (6) 200 OK | | 5978 |<-----------------------------------------------------| 5979 | | | | 5980 | | (7) 200 OK | | 5981 |<-----------------------------------------------------| 5982 | | (8) ACK | | 5983 |----------------------------------------------------->| 5984 | | | | 5986 By some mechanism outside the scope of the Distributed Call 5987 Signaling protocol, MTA-o decides that a CODEC change is necessary. 5988 MTA-o sends the following INVITE message directly to MTA-t. This 5989 INVITE is almost identical to the initial INVITE that established 5990 the call, except for header fields such as Remote-Party-ID and 5991 Anonymity that are not sent to maintain originator privacy. 5993 (1) INVITE: 5994 INVITE sip:Host(mta-t.provider) SIP/2.0 5995 Via: SIP/2.0/UDP Host(mta-o.provider) 5996 Supported: 100rel, state 5997 From: "Alien Blaster" 5999 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6000 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6001 CSeq: 129 INVITE 6002 Content-Type: application/sdp 6003 Content-length: (.) 6005 v=0 6006 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6007 s=- 6009 DCS Group Category: Informational - Expiration 5/31/01 115 6010 DCS Architecture November 2000 6012 c= IN IP4 Host(mta-o.provider) 6013 b=AS:64 6014 t=907165275 0 6015 a=X-pc-csuites:312F 6016 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6017 a=rtpmap:0 PCMU/8000 6018 m=audio 3456 RTP/AVP 0 6020 Upon receipt of the (1) INVITE message, MTA-t verifies its ability 6021 to switch to the designated CODEC, and responds with a 183-Session- 6022 Progress including an updated SDP. The procedures from this point 6023 onward are identical to a basic call flow, as given in Section 9.1. 6025 The resource reservations done in this call flow maintain the 6026 previous resources, so that if either end fails to make the proper 6027 reservation, the original call can proceed with the initial CODEC. 6028 MTA-t actually switches to the new codec upon sending the final 200- 6029 OK response to the INVITE, and MTA-o switches to the new codec upon 6030 receipt of the final 200-OK. 6032 DCS Group Category: Informational - Expiration 5/31/01 116 6033 DCS Architecture November 2000 6035 9.16 CODEC Change requiring new authorization 6037 When an MTA wishes to change to a different CODEC, but that CODEC 6038 was not among those initially authorized (or subsequently authorized 6039 by this sequence), it is necessary to request an increased 6040 authorization from the Proxy. The following diagram shows the 6041 sequence of signaling messages that achieves this. 6043 MTA-o Proxy-o Proxy-t2 MTA-t1 MTA-t2 6045 | (1) INVITE | | | | 6046 |----------------->| (2) INVITE | | | 6047 | |-------------->| (3) INVITE | 6048 | | |------------------>| 6049 | | | (4) 183 SDP | 6050 | | (5) 183 SDP |<------------------| 6051 | (6) 183 SDP |<--------------| | | 6052 |<-----------------| (7) PRACK | | | 6053 |----------------------------------------------------->| 6054 | | (8) 200 OK | | 6055 |<-----------------------------------------------------| 6056 | | (9) COMET | | 6057 |----------------------------------------------------->| 6058 | | (10) 200 OK | | 6059 |<-----------------------------------------------------| 6060 | | | (11) 200 OK | 6061 | | (12) 200 OK |<------------------| 6062 | (13) 200 OK |<--------------| | 6063 |<-----------------| (14) ACK | | 6064 |----------------------------------------------------->| 6065 | | | | 6067 By some mechanism outside the scope of the Distributed Call 6068 Signaling protocol, MTA-o decides that a CODEC change is necessary, 6069 and that the previous authorization for the current call does not 6070 permit this new CODEC (e.g. the initial call setup used only G.726- 6071 32 and the new CODEC desired is G.711). MTA-o generates the 6072 following SIP INVITE message and sends it to Proxy-o (the Proxy that 6073 manages MTA-o). MTA-o starts timer (T-proxy-request). 6075 (1) INVITE: 6076 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 6077 Via: SIP/2.0/UDP Host(mta-o.provider) 6078 Supported: 100rel, state 6079 State: Host(dp-o.provider); state="{gate= Host(cmts- 6080 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 6081 2222;lrn=212-234@Host(DP-t), state="Host(dp- 6082 t.provider); nexthop=sip:555-2222@Host(mta-t.provider); 6083 gate=Host(cmts-t.provider):4321/31S14621; orig- 6084 dest=tel:+1-212-555-1111; num-redirects=0"}K" 6085 Remote-Party-ID: John Doe 6087 DCS Group Category: Informational - Expiration 5/31/01 117 6088 DCS Architecture November 2000 6090 From: "Alien Blaster" 6092 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6093 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6094 CSeq: 129 INVITE 6095 Content-Type: application/sdp 6096 Content-length: (.) 6098 v=0 6099 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6100 s=- 6101 c= IN IP4 Host(mta-o.provider) 6102 b=AS:64 6103 t=907165275 0 6104 a=X-pc-csuites:312F 6105 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6106 a=X-pc-csuites:312F 6107 a=rtpmap:0 PCMU/8000 6108 m=audio 3456 RTP/AVP 0 6109 a=qos: mandatory sendrecv 6111 Upon receiving the INVITE message, Proxy-o authenticates MTA-o using 6112 standard IPSec authentication. Proxy-o decodes the state string in 6113 the State header and extracts the relevant information about the 6114 current call. Proxy-o generates the following INVITE message and 6115 sends it to Proxy-t. Proxy-o adds a number of parameters to the 6116 INVITE message. These are shown below. 6118 (2) INVITE: 6119 INVITE sip: +1-212-555-2222,lrn=212-234@Host(DP-t);user=np- 6120 queried SIP/2.0 6121 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 6122 Via: SIP/2.0/UDP Host(mta-o.provider) 6123 Supported: 100rel, state 6124 Require: state 6125 Proxy-Require: dcs, state 6126 Dcs-Gate: Host(cmts-o.provider): 3612/17S30124 6127 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6128 555-1111/212-555-2222> 6129 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6130 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 6131 t.provider); gate=Host(cmts-t.provider):4321/31S14621; 6132 orig-dest=tel:+1-212-555-1111; num-redirects=0 6133 Remote-Party-ID: John Doe 6134 From: "Alien Blaster" 6136 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6137 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6138 Cseq: 129 INVITE 6139 Content-Type: application/sdp 6140 Content-length: (.) 6142 v=0 6144 DCS Group Category: Informational - Expiration 5/31/01 118 6145 DCS Architecture November 2000 6147 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6148 s=- 6149 c= IN IP4 Host(mta-o.provider) 6150 b=AS:64 6151 t=907165275 0 6152 a=X-pc-csuites:312F 6153 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6154 a=rtpmap:0 PCMU/8000 6155 m=audio 3456 RTP/AVP 0 6156 a=qos: mandatory sendrecv 6158 Upon receiving this INVITE message, Proxy-t recognizes this as a 6159 mid-call change by the presence of the State header with its name 6160 attached, and generates the following INVITE message and sends it to 6161 MTA-t. Note that the Via lines may be different from the initial 6162 INVITE exchange; they have been encrypted to maintain the privacy of 6163 the caller. 6165 (3) INVITE: 6166 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 6167 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6168 o.provider);branch=1"; via=Host(mta-o.provider)}K 6169 Supported: 100rel, stateMedia-Authorization: 31S14621 6170 Remote-Party-ID: John Doe 6171 From: "Alien Blaster" 6173 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6174 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6175 Cseq: 129 INVITE 6176 Content-Type: application/sdp 6177 Content-length: (.) 6179 v=0 6180 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6181 s=- 6182 c= IN IP4 Host(mta-o.provider) 6183 b=AS:64 6184 t=907165275 0 6185 a=X-pc-csuites:312F 6186 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6187 a=rtpmap:0 PCMU/8000 6188 m=audio 3456 RTP/AVP 0 6189 a=qos: mandatory sendrecv 6191 Upon receiving this INVITE, MTA-t authenticates that the message 6192 came from Proxy-t using IPSec. MTA-t checks for a current call 6193 matching the triple (From, To, Call-ID). MTA-t looks at the 6194 capability parameters in the Session Description Protocol (SDP) part 6195 of the message and determines which media channel parameters it can 6196 accommodate for this call. MTA-t generates the following 183- 6197 Session-Progress response, and sends it to Proxy-t. 6199 (4) 183 Session-Progress: 6201 DCS Group Category: Informational - Expiration 5/31/01 119 6202 DCS Architecture November 2000 6204 SIP/2.0 183 Session Progress 6205 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6206 o.provider);branch=1"; via=Host(mta-o.provider)}K 6207 Require: 100rel 6208 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6209 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6210 state="Host(dp-o.provider); nexthop=sip:555- 6211 1111@Host(mta-o.provider); gate=Host(cmts- 6212 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6213 2222; num-redirects=0"}K" 6214 Remote-Party-ID: John Smith 6215 From: "Alien Blaster" 6217 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6218 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6219 Cseq: 129 INVITE 6220 Content-Disposition: precondition 6221 Contact: sip:Host(mta-t.provider) 6222 Content-Type: application/sdp 6223 Content-length: (.) 6225 v=0 6226 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6227 s=- 6228 c= IN IP4 Host(mta-t.provider) 6229 b=AS:64 6230 t=907165275 0 6231 a=X-pc-csuites:312F 6232 a=rtpmap:0 PCMU/8000 6233 m=audio 6544 RTP/AVP 0 6234 a=qos: mandatory sendrecv confirm 6236 Upon receiving the 200-OK message, Proxy-t authorizes the resources 6237 and forwards the following 183-Session-Progress to Proxy-o, 6238 restoring the Via headers. At this point Proxy-t has completed its 6239 transaction and does not maintain any more state for this call. 6240 Proxy-t may include Dcs-Billing-Information if it wishes to override 6241 the billing information that came in the INVITE (e.g. collect or 6242 toll-free call). 6244 (5) 183-Session-Progress: 6245 SIP/2.0 183 Session Progress 6246 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 6247 Via: SIP/2.0/UDP Host(mta-o.provider) 6248 Require: 100rel 6249 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6250 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6251 orig-dest=tel:+1-212-555-2222; num-redirects=0 6252 Remote-Party-ID: John Smith 6253 From: "Alien Blaster" 6255 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6256 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6258 DCS Group Category: Informational - Expiration 5/31/01 120 6259 DCS Architecture November 2000 6261 Cseq: 129 INVITE 6262 Content-Disposition: precondition 6263 Contact: sip:Host(mta-t.provider) 6264 Content-Type: application/sdp 6265 Content-length: (.) 6267 v=0 6268 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6269 s=- 6270 c= IN IP4 Host(mta-t.provider) 6271 b=AS:64 6272 t=907165275 0 6273 a=X-pc-csuites:312F 6274 a=rtpmap:0 PCMU/8000 6275 m=audio 6544 RTP/AVP 0 6276 a=qos: mandatory sendrecv confirm 6278 Upon receiving the 183-Session-Progress message, Proxy-o authorizes 6279 the resources and forwards the following message to MTA-o. At this 6280 point Proxy-o has completed its transaction and does not maintain 6281 any more state for this call. 6283 (6) 183-Session-Progress: 6284 SIP/2.0 183 Session Progress 6285 Via: Sip/2.0/UDP Host(mta-o.provider) 6286 Require: 100rel 6287 Remote-Party-ID: John Smith 6288 From: "Alien Blaster" 6290 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6291 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6292 Cseq: 129 INVITE 6293 Content-Disposition: precondition 6294 Content-Type: application/sdp 6295 Content-length: (.) 6297 v=0 6298 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6299 s=- 6300 c= IN IP4 Host(mta-t.provider) 6301 b=AS:64 6302 t=907165275 0 6303 a=X-pc-csuites:312F 6304 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6305 a=rtpmap:0 PCMU/8000 6306 m=audio 6544 RTP/AVP 0 6307 a=qos: mandatory sendrecv confirm 6309 Upon receiving the 183-Session-Progress message, MTA-o sends the 6310 PRACK message directly to MTA-t using the IP address in the Contact 6311 header. MTA-o then reserves the resources needed, and sends a COMET 6312 message if successful. The COMET message, and the 200-OK messages 6314 DCS Group Category: Informational - Expiration 5/31/01 121 6315 DCS Architecture November 2000 6317 in response to the PRACK and COMET are identical to that in the 6318 basic call flow (Section 9.1) and not shown here. 6320 (7) PRACK: 6321 PRACK sip:Host(mta-t.provider) SIP/2.0 6322 Via: SIP/2.0/UDP Host(mta-o.provider) 6323 From: "Alien Blaster" 6325 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6326 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6327 CSeq: 130 PRACK 6329 v=0 6330 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6331 s=- 6332 c= IN IP4 Host(mta-o.provider) 6333 b=AS:64 6334 t=907165275 0 6335 a=X-pc-csuites:312F 6336 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6337 a=rtpmap:0 PCMU/8000 6338 m=audio 3456 RTP/AVP 0 6339 a=qos: mandatory sendrecv 6341 MTA-t reserves the resources as needed from the final SDP from the 6342 PRACK message. If successful, and upon receipt of the COMET message 6343 from MTA-o indicating it was successful, MTA-t changes the CODEC and 6344 sends the 200-OK final response. 6346 (11) 200-OK: 6347 SIP/2.0 200 OK 6348 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6349 o.provider);branch=1"; via=Host(mta-o.provider)}K 6350 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6351 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6352 state="Host(dp-o.provider); nexthop=sip:555- 6353 1111@Host(mta-o.provider); gate=Host(cmts- 6354 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6355 2222; num-redirects=0"}K" 6356 From: "Alien Blaster" 6358 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6359 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6360 CSeq: 129 INVITE 6362 Upon receiving the 200-OK message, Proxy-t forwards the following 6363 200-OK to Proxy-o, restoring the Via headers. 6365 (12) 200-OK: 6366 SIP/2.0 200 OK 6367 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 6368 Via: SIP/2.0/UDP Host(mta-o.provider) 6370 DCS Group Category: Informational - Expiration 5/31/01 122 6371 DCS Architecture November 2000 6373 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6374 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6375 orig-dest=tel:+1-212-555-2222; num-redirects=0 6376 From: "Alien Blaster" 6378 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6379 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6380 CSeq: 129 INVITE 6382 Upon receiving the 200-OK message, Proxy-o forwards the following 6383 200-OK to MTA-o. 6385 (13) 200-OK: 6386 SIP/2.0 200 OK 6387 Via: Sip/2.0/UDP Host(mta-o.provider) 6388 From: "Alien Blaster" 6390 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6391 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6392 CSeq: 129 INVITE 6394 Upon receiving the 200-OK message, MTA-o sends the following ACK 6395 message directly to MTA-t using the IP address in the Contact header 6396 of the previous 183 message. This completes the three-way handshake 6397 for the SIP INVITE exchange. 6399 (14) ACK: 6400 ACK sip:Host(mta-t.provider) SIP/2.0 6401 Via: SIP/2.0/UDP Host(mta-o.provider) 6402 From: "Alien Blaster" 6404 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6405 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6406 CSeq: 129 ACK 6408 DCS Group Category: Informational - Expiration 5/31/01 123 6409 DCS Architecture November 2000 6411 9.17 Busy-Line-Verification 6413 PSTN G/W CMS/MGC Proxy-t2 MTA-t2 6415 | (1) NTFY | | | 6416 |----------------->| | | 6417 | (2) CRCX | | | 6418 |<-----------------| | | 6419 | (3) ACK | | | 6420 |----------------->| | | 6421 | | | | 6422 | | (4) INVITE | | 6423 | |-------------->| (5) INVITE | 6424 | | |------------------>| 6425 | | | (6) 183 SDP | 6426 | | (7) 183 SDP |<------------------| 6427 | |<--------------| | 6428 | | (8) PRACK | | 6429 | |---------------------------------->| 6430 | | (9) 200 OK | | 6431 | |<----------------------------------| 6432 | | (10) COMET | | 6433 | |---------------------------------->| 6434 | | (11) 200 OK | | 6435 | |<----------------------------------| 6436 | | | (14) 200 OK | 6437 | | (15) 200 OK |<------------------| 6438 | |<--------------| | 6439 | | (16) ACK | | 6440 | |---------------------------------->| 6441 | | | | 6443 This service clearly requires the cooperation of the MTA. Further, 6444 there is a network database of phone numbers of customers who cannot 6445 be verified and/or broken into. It seems reasonable that a MTA that 6446 refuses to cooperate is merely one so marked in the current 6447 database. 6449 Busy Line Verification sequence begins when the Operator at an OSPS 6450 console signals an E.164 number for verification over a special MF 6451 trunk group, to the PSTN gateway. The Media Gateway (MG) and Media 6452 Gateway Controller (MGC) recognize this special signaling, and 6453 generate an INVITE(BLV) to the number requested. 6455 The normal call initiation sequence in TGCP is followed. The NTFY 6456 message (1) signals the MGC of a call request, and MGC uses the CRCX 6457 message (2) and ACK (3) to generate an appropriate SDP. That it is 6458 a OSPS trunk group is known to the MGC, which invokes the special 6459 header insertion. 6461 MGC recognizes the trunk group as special BLV trunks, and generates 6462 a slightly modified INVITE message, by adding the Dcs-OSPS header. 6464 DCS Group Category: Informational - Expiration 5/31/01 124 6465 DCS Architecture November 2000 6467 (4) INVITE (BLV): 6468 INVITE sip:212-555-1111,lnp=212-237@dp-t.provider;user=phone 6469 SIP/2.0 6470 Via: SIP/2.0/UDP Host(mgc02.provider);branch=1 6471 Supported: 100rel, state 6472 Proxy-Require: dcs 6473 Remote-Party-ID: Operator ; 6474 rpi-type=operator 6475 Anonymity: URL 6476 Dcs-OSPS: BLV 6477 Dcs-Gate: mgc02.provider/36123E5B 6478 Dcs-Billing-Info: Host(rks-o.provider) 6479 Dcs-Billing-ID: Host(mgc02.provider):36123E5C:0152 6480 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6481 To: tel:555-1111 6482 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6483 CSeq: 127 INVITE 6484 Contact: sip:mgc02.provider 6485 Content-Type: application/sdp 6486 Content-length: (.) 6488 v=0 6489 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6490 s=- 6491 c= IN IP4 mg101.provider 6492 b=AS:64 6493 t=907165275 0 6494 a=X-pc-csuites:312F 6495 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6496 a=rtpmap:0 PCMU/8000 6497 a=rtpmap:96 G726-32/8000 6498 m=audio 3380 RTP/AVP 0 6499 a=qos:mandatory sendrecv 6500 a=X-pc-codecs:96 6502 Proxy-t authorizes the additional connection without regard to 6503 number of currently active connections, and passes the INVITE(BLV) 6504 to MTA-t. 6506 (5) INVITE (BLV): 6507 INVITE sip:212-555-1111@mta-t.provider;user=phone SIP/2.0 6508 Via: SIP/2.0/UDP Host(dp-t.provider);branch=1, { 6509 via="Host(mgc02.provider);branch=1"}K 6510 Supported: 100rel, state 6511 Require: state 6512 Remote-Party-ID: Operator ; 6514 rpi-type=operator 6515 Dcs-OSPS: BLV 6516 Dcs-Gate: 44S10312 6517 State: Host(dp-t.provider); state="{nexthop=sip:Host(mgc02. 6518 Provider); gate=Host(cmts-t.provider):4321/44S10312}K" 6519 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6521 DCS Group Category: Informational - Expiration 5/31/01 125 6522 DCS Architecture November 2000 6524 To: tel:555-1111 6525 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6526 Cseq: 127 INVITE 6527 Contact: sip:mgc02.provider 6528 Content-Type: application/sdp 6529 Content-length: (.) 6531 v=0 6532 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6533 s=- 6534 c= IN IP4 mg101.provider 6535 b=AS:64 6536 t=907165275 0 6537 a=X-pc-csuites:312F 6538 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6539 a=rtpmap:0 PCMU/8000 6540 a=rtpmap:96 G726-32/8000 6541 m=audio 3380 RTP/AVP 0 6542 a=qos:mandatory sendrecv 6543 a=X-pc-codecs:96 6545 MTA-t does not respond to a BLV request with BUSY, nor does it 6546 perform call forwarding. The response is 183-Session-Progress, 6547 identical to that of a normal call given in Section 9.1, and 6548 completes identical to a normal call (but without the ringing 6549 phase). 6551 MTA-t commits to the reserved resources, and begins to send voice 6552 packets to the Operator. The payload contains a copy of the packets 6553 generated at MTA-t. 6555 If the designated line is onhook, MTA-t will generate silence 6556 packets and send to Operator. If the line is currently ringing or 6557 generating local ringback, MTA-t will generate a ringback tone 6558 pattern and sent to Operator. 6560 The OSPS system scrambles the received voice packets, making the 6561 conversation unintelligible to the Operator. However, enough 6562 information is passed through the scrambled audio for the operator 6563 to accurately determine whether the line is in use, dialing, 6564 ringing, or idle. 6566 A BLV call terminates when the OSPS signals a hangup over the MF 6567 trunk, resulting in a DCS BYE message. The MTA never terminates a 6568 BLV call. 6570 DCS Group Category: Informational - Expiration 5/31/01 126 6571 DCS Architecture November 2000 6573 9.18 Operator break-in 6575 PSTN G/W CMS/MGC Proxy-t2 MTA-t2 6577 | (1) NTFY | | | 6578 |----------------->| | | 6579 | (2) CRCX | | | 6580 |<-----------------| | | 6581 | (3) ACK | | | 6582 |----------------->| | | 6583 | | | | 6584 | | (4) INVITE | | 6585 | |-------------->| (5) INVITE | 6586 | | |------------------>| 6587 | | | (6) 183 SDP | 6588 | | (7) 183 SDP |<------------------| 6589 | |<--------------| | 6590 | | (8) PRACK | | 6591 | |---------------------------------->| 6592 | | (9) 200 OK | | 6593 | |<----------------------------------| 6594 | | (10) COMET | | 6595 | |---------------------------------->| 6596 | | (11) 200 OK | | 6597 | |<----------------------------------| 6598 | | | (14) 200 OK | 6599 | | (15) 200 OK |<------------------| 6600 | |<--------------| | 6601 | | (16) ACK | | 6602 | |---------------------------------->| 6603 | (17) NTFY | | | 6604 |----------------->| | | 6605 | | (18) INVITE | | 6606 | |---------------------------------->| 6607 | | (19) 200 OK | | 6608 | |<----------------------------------| 6609 | | (20) ACK | | 6610 | |---------------------------------->| 6611 | | | | 6613 Emergency Interrupt is closely tied to BLV (previous appendix), 6614 since EI always begins with BLV. Messages (1) through (16) perform 6615 the BLV function, and are not repeated here. 6617 At the end of the BLV call flow, instead of the OSPS releasing the 6618 trunk, OSPS generates an alerting tone. The Media Gateway (MG) 6619 detects activity on line and the Media Gateway Controller (MGC) 6620 generates INVITE(EI) and sends it direct to MTA-t. 6622 (18) INVITE(EI): 6623 INVITE sip:Host(mta-t.provider) SIP/2.0 6624 Via: SIP/2.0/UDP Host(mgc02.provider) 6625 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6627 DCS Group Category: Informational - Expiration 5/31/01 127 6628 DCS Architecture November 2000 6630 To: tel:555-1111 6631 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6632 CSeq: 130 INVITE 6633 Dcs-OSPS: EI 6634 Content-Type: application/sdp 6635 Content-length: (.) 6637 v=0 6638 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6639 s=- 6640 c= IN IP4 mgc02.provider 6641 b=AS:64 6642 t=907165275 0 6643 a=X-pc-csuites:312F 6644 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6645 a=rtpmap:0 PCMU/8000 6646 m=audio 3380 RTP/AVP 0 6648 MTA verifies that BLV is already active, and that the EI request 6649 matches From, To, Call-ID. If so, it responds with 200-OK. SDP is 6650 not needed unless there is a change in the session description from 6651 that of the BLV. 6653 (19) 200 OK: 6654 SIP/2.0 200 OK 6655 Via: SIP/2.0/UDP Host(mgc02.provider) 6656 From: B64(SHA-1(0;time=36123E5B;seq=72))@localhost 6657 To: tel:555-1111 6658 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6659 CSeq: 130 INVITE 6661 MGC responds with the standard SIP ACK message. 6663 MTA has several choices of how to do the EI function. 1) put 6664 current call on hold and connect user to operator. 2) perform local 6665 mixing of current call and stream from OSPS, so both participants in 6666 existing call hear and can talk to the operator. 3) allocate a 6667 bridge and treat this just like a 3-way call. 6669 DCS Group Category: Informational - Expiration 5/31/01 128 6670 DCS Architecture November 2000 6672 9.19 Lawfully Authorized Electronic Surveillance 6674 Calls from and to surveillance subjects behave just like a normal 6675 call flows. Additional messages will be sent from the CMS to the 6676 Electronic Surveillance Delivery Function telling the known 6677 signaling information. One additional parameter is sent to the CMTS 6678 in the Gate-Set command, telling it to copy all the voice data 6679 packets and send the copy to the Law Enforcement Access Point. 6680 There is no change to the MTA-CMS message exchanges due to 6681 electronic surveillance. This is an absolute requirement due to the 6682 non-intrusive requirement of the electronic surveillance statute. 6684 In most cases, there is no change to the CMS-CMS message exchanges 6685 due to electronic surveillance. This basic design keeps the 6686 knowledge of surveillance as localized as possible. If a call 6687 originator is under surveillance, the surveillance is done at the 6688 originating CMTS; the call destination does not know in any way that 6689 it is happening. If a call destination is under surveillance, the 6690 surveillance is done at the terminating CMTS; the call originator 6691 does not know in any way that it is happening. If both the call 6692 originator and call destination are under surveillance, the 6693 interception is done twice. So it goes. 6695 The only situation where CMS-CMS message exchanges are extended to 6696 support electronic surveillance is in cases of call redirection. 6698 When a subject under surveillance initiates a call transfer, it is 6699 required that the new call also be intercepted. Therefore the 6700 notification of surveillance is passed in that CMS-CMS INVITE 6701 message. Further, when the new destination is unable to perform the 6702 required interception (e.g. redirection to a network server such as 6703 voicemail), the 183 response contains additional information telling 6704 the originator to perform the surveillance. These situations are 6705 shown in the following examples. 6707 DCS Group Category: Informational - Expiration 5/31/01 129 6708 DCS Architecture November 2000 6710 9.19.1 Call-Forwarding-Unconditional with Forwarder under Surveillance 6712 MTA-o Proxy-o Proxy-t MTA-t 6714 | INVITE | | | 6715 |----------------->| INVITE | | 6716 | |-------------->| (1)INVITE | 6717 | | |------------------>| 6718 | | | (2)302 Redirect | 6719 | | |<------------------| 6720 | | (3)302 | | 6721 | |<--------------| (4)ACK | 6722 | | |------------------>| 6723 | | (5)ACK | | 6724 | |-------------->| | 6725 | | 6726 | | Proxy-f MTA-f 6727 | | | | 6728 | | (6)INVITE | | 6729 | |-------------->| (7)INVITE | 6730 | | |------------------>| 6731 | | | (8)183 SDP | 6732 | | |<------------------| 6733 | | | | 6735 For this example, consider a call from MTA-o to MTA-t (with MTA-t 6736 under surveillance). MTA-t has established call forwarding- 6737 unconditional. The basic call flow for call-forwarding is identical 6738 to that given in Section 9.5, and only the differences are noted 6739 here. 6741 (1) INVITE: 6742 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 6743 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6744 o.provider); branch=1"; via=Host(mta-o.provider)}K 6745 Supported: 100rel, state 6746 Require: state 6747 Remote-Party-ID: John Doe 6748 Media-Authorization: 31S14621 6749 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6750 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6751 state="Host(dp-o.provider); nexthop=sip:555- 6752 1111@Host(mta-o.provider); gate=Host(cmts- 6753 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6754 2222; num-redirects=0"}K" 6755 From: "Alien Blaster" 6757 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6758 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6759 Cseq: 127 INVITE 6760 Contact: sip:Host(mta-o.provider) 6761 Content-Type: application/sdp 6762 Content-length: (.) 6764 DCS Group Category: Informational - Expiration 5/31/01 130 6765 DCS Architecture November 2000 6767 v=0 6768 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6769 s=- 6770 c= IN IP4 Host(mta-o.provider) 6771 b=AS:64 6772 t=907165275 0 6773 a=X-pc-csuites:312F 6774 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6775 a=rtpmap:0 PCMU/8000 6776 a=rtpmap:96 G726-32/8000 6777 m=audio 3456 RTP/AVP 0 6778 a=qos:mandatory sendrecv 6779 a=X-pc-codecs:96 6781 Upon receiving this message, MTA-t determines that the line 6782 associated with 212-555-2222 is having all calls forwarded. It 6783 issues a REDIRECT (302) response to indicate that it wants the call 6784 forwarded. This message carries the forwarding number in the Contact 6785 header. 6787 (2) 302-Redirect 6788 SIP/2.0 302 Moved Temporarily 6789 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 6790 o.provider); branch=1"; via=Host(mta-o.provider)}K 6791 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6792 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6793 state="Host(dp-o.provider); nexthop=sip:555- 6794 1111@Host(mta-o.provider); gate=Host(cmts- 6795 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 6796 2222; num-redirects=0"}K" 6797 Remote-Party-ID: John Smith 6798 Anonymity: off 6799 From: "Alien Blaster" 6801 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6802 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6803 Cseq: 127 INVITE 6804 Contact: tel:555-3333 6806 Proxy-t knows that MTA-t is under surveillance, and includes the 6807 Dcs-Laes header in the 302-Redirect response sent back to CMS-o. 6808 This header contains the delivery function information needed by the 6809 new destination of the call. 6811 (3) 302-Redirect 6812 SIP/2.0 302 Moved Temporarily 6813 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 1 6814 Via: SIP/2.0/UDP Host(mta-o.provider) 6815 Proxy-Require: dcs 6816 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6817 555-1111/212-555-2222> 6819 DCS Group Category: Informational - Expiration 5/31/01 131 6820 DCS Architecture November 2000 6822 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 6823 555-2222/212-555-3333> 6824 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6825 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6826 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6827 orig-dest=tel:+1-212-555-2222; num-redirects=0 6828 Remote-Party-ID: John Smith 6829 Anonymity: off 6830 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 6831 From: "Alien Blaster" 6833 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6834 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6835 Cseq: 127 INVITE 6836 Contact: tel:+1-212-555-3333 6838 Proxy-o determines the Proxy-f for the E.164 number 212-555-3333 6839 when it receives the 302-Redirect message. It generates an INVITE 6840 message and sends it to Proxy-f. Proxy-o adds the Dcs-Laes header to 6841 this INVITE, with the delivery function information received from 6842 Proxy-t. Proxy-o adds the Dcs-Redirect header giving the 6843 information about this call redirection. 6845 (6) INVITE: 6846 INVITE sip:+1-212-555-3333,lrn=212-265@Host(dp-f) ;user=np- 6847 queried SIP/2.0 6848 Via: SIP/2.0/UDP Host(dp-o.provider); branch = 2 6849 Via: SIP/2.0/UDP Host(mta-o.provider); 6850 Supported: 100rel, state 6851 Require: state 6852 Proxy-Require: dcs, state 6853 Remote-Party-ID: John Doe; 6854 Anonymity: Off 6855 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 6856 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 6857 555-1111/212-555-2222> 6858 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 6859 555-2222/212-555-3333> 6860 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 6861 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 6862 orig-dest=tel:+1-212-555-2222; num-redirects=1 6863 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 6864 Dcs-Redirect: 1 6865 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 6866 From: "Alien Blaster" 6868 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6869 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6870 CSeq: 127 INVITE 6871 Contact: sip:Host(mta-o.provider) 6872 Content-Type: application/sdp 6873 Content-length: (.) 6875 DCS Group Category: Informational - Expiration 5/31/01 132 6876 DCS Architecture November 2000 6878 v=0 6879 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6880 s=- 6881 c= IN IP4 Host(mta-o.provider) 6882 b=AS:64 6883 t=907165275 0 6884 a=X-pc-csuites:312F 6885 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6886 a=rtpmap:0 PCMU/8000 6887 a=rtpmap:96 G726-32/8000 6888 m=audio 3456 RTP/AVP 0 6889 a=qos:mandatory sendrecv 6890 a=X-pc-codecs:96 6892 Upon receiving this INVITE, Proxy-f queries the directory server to 6893 determine the IP address (MTA-f) associated with 212-555-3333. It 6894 then forwards the INVITE message to MTA-f. Included in the State 6895 header is the additional surveillance information. 6897 (7) INVITE: 6898 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 6899 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 6900 o.provider); branch=1"; via=Host(mta-o.provider)}K 6901 Supported: 100rel, state 6902 Require: state 6903 Remote-Party-ID: John Doe 6904 Media-Authorization: 22S21718 6905 State: Host(dp-f.provider); state="{nexthop=sip:Host(dp- 6906 o.provider); gate=Host(cmts-f.provider):4321/22S21718; 6907 laes=full; redirect= 1; state="Host(dp-o.provider); 6909 nexthop=sip:555-1111@Host(mta-o.provider); 6910 gate=Host(cmts-o.provider):3612/17S30124; orig- 6911 dest=tel:+1-212-555-2222; num-redirects=1"}K" 6912 From: "Alien Blaster" 6914 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6915 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6916 Cseq: 127 INVITE 6917 Contact: sip:Host(mta-o.provider) 6918 Content-Type: application/sdp 6919 Content-length: (.) 6921 v=0 6922 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 6923 s=- 6924 c= IN IP4 Host(mta-o.provider) 6925 b=AS:64 6926 t=907165275 0 6927 a=X-pc-csuites:312F 6928 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 6929 a=rtpmap:0 PCMU/8000 6930 a=rtpmap:96 G726-32/8000 6932 DCS Group Category: Informational - Expiration 5/31/01 133 6933 DCS Architecture November 2000 6935 m=audio 3456 RTP/AVP 0 6936 a=qos:mandatory sendrecv 6937 a=X-pc-codecs:96 6939 The subsequent signaling call flows are identical to those shown in 6940 Section 9.5. 6942 9.19.2 Call-Transfer-Blind with Transferer under Surveillance 6944 MTA-o Proxy-o Proxy-t MTA-t 6946 | | | | 6947 |<-----------------call-in-progress------------------->| 6948 | | | (1) REFER | 6949 | | (2) REFER |<------------------| 6950 | (3) REFER |<--------------| | 6951 |<-----------------| | | 6952 | | 6953 | | Proxy-f MTA-f 6954 | (4) INVITE | | | 6955 |----------------->| (5) INVITE | | 6956 | |-------------->| (6) INVITE | 6957 | | |------------------>| 6958 | | | (7) 183 SDP | 6959 | | (8) 183 SDP |<------------------| 6960 | (9) 183 SDP |<--------------| : 6961 |<-----------------| : : 6962 : : : (10) 200 OK | 6963 : : (11) 200 OK |<------------------| 6964 | (12) 200 OK |<--------------| | 6965 |<-----------------| | | 6966 | | 6967 | | Proxy-t MTA-t 6968 | (13) 200 OK | | | 6969 |----------------->| (14) 200 OK | | 6970 | |-------------->| (15) 200 OK | 6971 | | (16) ACK |------------------>| 6972 |<-----------------------------------------------------| 6973 | | (17) BYE | | 6974 |----------------------------------------------------->| 6975 | | (18) 200 OK | | 6976 |<-----------------------------------------------------| 6977 | | 6979 For this example, consider an existing call initiated by MTA-o to 6980 MTA-t (with MTA-t under surveillance), with the following call 6981 identification. The only difference from a normal call from MTA-o 6982 to MTA-t, as given elsewhere in this specification, is the addition 6983 of "laess=full" in the encrypted call state information associated 6984 with Proxy-t. 6986 DCS Group Category: Informational - Expiration 5/31/01 134 6987 DCS Architecture November 2000 6989 MTA-t state for call from MTA-o to MTA-t 6990 From: "Alien Blaster" 6992 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 6993 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 6994 Contact: sip:Host(mta-o.provider) 6995 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 6996 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 6997 laes=full; state="Host(dp-o.provider); nexthop=sip:555- 6998 1111@Host(mta-o.provider); gate=Host(cmts- 6999 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7000 2222; num-redirects=0"}K" 7001 Dcs-Billing-Info: Host(rks-o.provider)/04FA37<5123-0123-4567- 7002 8900/212-555-1111/212-555-2222> 7003 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7005 The basic call flow for call transfer is identical to that given in 7006 Section 9.11, and only the differences are noted here. 7007 MTA-t desires to transfer the existing call to 555-3333 and issues a 7008 REFER message, identical to (1) in Section 9.11. 7009 Proxy-t decrypts the State information and sees the "laes=full." It 7010 inserts one additional header component into the Refer-to header, 7011 giving the local Electronic Surveillance Delivery Function's (DF's) 7012 address information and security key to use for messages to the DF. 7013 Since surveillance was marked as "full," it adds the DF's address 7014 for both signaling information and for call content. 7016 (2) REFER: 7017 REFER sip: Host(dp-o.provider) SIP/2.0 7018 Via: SIP/2.0/UDP Host(dp-t.provider) 7019 Via: SIP/2.0/UDP Host(mta-t.provider) 7020 Supported: 100rel, state 7021 Proxy-Require: dcs 7022 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7023 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7024 orig-dest=tel:+1-212-555-2222; num-redirects=0 7025 Refer-to: tel:+1-212-555-3333? Dcs-Billing-Info= Host(rks- 7026 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7027 2222> & Dcs-Billing-Info= Host(rks-t.provider)<4278- 7028 9865-8765-9000/212-555-2222/212-555-3333> & Dcs- 7029 Billing-ID= Host(dp-o.provider): 36123E5C:0152 & Dcs- 7030 Laes= Host(df-t)/Host(df-t);surveillancekey & Dcs- 7031 Redirect=1 7032 Remote-Party-ID: John Smith 7033 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7034 To: "Alien Blaster" 7036 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7037 Cseq: 8001 REFER 7038 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 7039 seq=73))@localhost 7041 DCS Group Category: Informational - Expiration 5/31/01 135 7042 DCS Architecture November 2000 7044 Proxy-o includes the Dcs-Laes information in the encrypted URL given 7045 to MTA-t. 7047 (3) REFER: 7048 REFER sip: Host(mta-o.provider) SIP/2.0 7049 Via: SIP/2.0/UDP Host(dp-o.provider), {via="Host(dp- 7050 t.provider); branch=1"; via=Host(mta-t.provider)}K 7051 Supported: 100rel, stateRefer-to: sip:{type=transfer; 7052 dest=tel:+1-212-555-3333; billing-id=Host(dp-o.provider): 7053 36123E5C:0152; expires=; billing-info=Host(rks- 7054 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7055 2222>; billing-info=Host(rks-t.provider)<4278-9865- 7056 8765-9000/212-555-2222/212-555-3333>; laes="Host(df- 7057 t)/Host(df-t);surveillancekey"; redirect=1}K@Host(dp- 7059 o.provider);private 7060 From: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7061 To: "Alien Blaster" 7063 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7064 Cseq: 8001 REFER 7065 Referred-by: sip:B64(SHA-1(555-2222; time=36123E5B; 7066 seq=73))@localhost 7068 After processing the REFER, MTA-o issues a INVITE to MTA-f. In 7069 addition to the standard headers carried in an INVITE message, the 7070 encrypted Dcs-Laes fields received in the REFER message are copied 7071 into the INVITE message. 7073 (4) INVITE: 7074 INVITE sip:{type=transfer; dest=tel:+1-212-555-3333; billing- 7075 id=Host(dp-o.provider): 36123E5C:0152; 7076 expires=; billing-info=Host(rks- 7077 o.provider)<5123-0123-4567-8900/212-555-1111/212-555- 7078 2222>; billing-info=Host(rks-t.provider)<4278-9865- 7079 8765-9000/212-555-2222/212-555-3333>; laes="Host(df- 7080 t)/Host(df-t);surveillancekey"; redirect=1}K@Host(dp- 7082 o.provider);private SIP/2.0 7083 Via: SIP/2.0/UDP Host(mta-o.provider) 7084 Supported: 100rel, state 7085 Remote-Party-ID: John Doe 7086 Anonymity: Off 7087 From: "Alien Blaster" 7089 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7090 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7091 Cseq: 129 INVITE 7092 Contact: sip:Host(mta-o.provider) 7093 Content-Type: application/sdp 7094 Content-length: (.) 7096 v=0 7098 DCS Group Category: Informational - Expiration 5/31/01 136 7099 DCS Architecture November 2000 7101 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7102 s=- 7103 c= IN IP4 Host(mta-o.provider) 7104 b=AS:64 7105 t=907165275 0 7106 a=X-pc-csuites:312F 7107 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7108 a=rtpmap:0 PCMU/8000 7109 a=rtpmap:96 G726-32/8000 7110 m=audio 3456 RTP/AVP 0 7111 a=qos:mandatory sendrecv 7112 a=X-pc-codecs:96 7114 When the Proxy-o receives the INVITE it decrypts the header 7115 information to find the real destination, and discovers the Dcs-Laes 7116 information. This is included in the INVITE message sent to Proxy- 7117 f. Proxy-o also includes a Dcs-Redirect header giving the original 7118 destination for the call from MTA-o, the forwarding endpoint, and 7119 the number of redirections that have occurred to this call. 7121 (5) INVITE: 7122 INVITE sip: +1-212-555-3333,lrn=212-265@Host(dp-f);user=np- 7123 queried SIP/2.0 7124 Via: SIP/2.0/UDP Host(dp-o.provider); branch=1; 7125 Via: SIP/2.0/UDP Host(mta-o.provider); 7126 Supported: 100rel, state 7127 Require: state 7128 Proxy-Require: dcs, state 7129 Remote-Party-ID: John Doe 7130 Anonymity: Off 7131 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 7132 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 7133 555-1111/212-555-2222> 7134 Dcs-Billing-Info: Host(rks-t.provider)<4278-9865-8765-9000/212- 7135 555-2222/212-555-3333> 7136 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7137 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7138 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7139 orig-dest=tel:+1-212-555-2222; num-redirects=1 7140 Dcs-Laes: Host(df-t)/Host(df-t);surveillancekey 7141 Dcs-Redirect: 1 7142 From: "Alien Blaster" 7144 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7145 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7146 Cseq: 129 INVITE 7147 Contact: sip:Host(mta-o.provider) 7148 Content-Type: application/sdp 7149 Content-length: (.) 7151 v=0 7152 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7153 s=- 7155 DCS Group Category: Informational - Expiration 5/31/01 137 7156 DCS Architecture November 2000 7158 c= IN IP4 Host(mta-o.provider) 7159 b=AS:64 7160 t=907165275 0 7161 a=X-pc-csuites:312F 7162 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7163 a=rtpmap:0 PCMU/8000 7164 a=rtpmap:96 G726-32/8000 7165 m=audio 3456 RTP/AVP 0 7166 a=qos:mandatory sendrecv 7167 a=X-pc-codecs:96 7169 Upon receiving this INVITE, Proxy-f includes the surveillance 7170 information in its Gate-Set command, and passes the call-identifying 7171 information to its local Electronic Surveillance Delivery Function 7172 (DF-f) who passes the information on to DF-t. The encrypted State 7173 value stored at MTA-f includes the surveillance parameters needed 7174 for possible mid-call transfers. 7176 (6) INVITE: 7177 INVITE sip:555-3333@Host(mta-f.provider); user=phone SIP/2.0 7178 Via: SIP/2.0/UDP Host(dp-f.provider), {via="Host(dp- 7179 o.provider); branch=1"; via=Host(mta-o.provider)}K 7180 Supported: 100rel, state 7181 Require: state 7182 Remote-Party-ID: John Doe; 7183 Media-Authorization: 31S14621 7184 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7185 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7186 laes=full; redirect=1; state="Host(dp-o.provider); 7188 nexthop=sip:555-1111@Host(mta-o.provider); 7189 gate=Host(cmts-o.provider):3612/17S30124; orig- 7190 dest=tel:+1-212-555-2222; num-redirects=0"}K" 7191 From: "Alien Blaster" 7193 To: sip:B64(SHA-1(555-2222; time=36123E98; seq=75))@localhost 7194 Call-ID: B64(SHA-1(555-1111;time=36123E98;seq=74))@localhost 7195 Cseq: 129 INVITE 7196 Contact: sip:Host(mta-o.provider) 7197 Content-Type: application/sdp 7198 Content-length: (.) 7200 v=0 7201 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7202 s=- 7203 c= IN IP4 Host(mta-o.provider) 7204 b=AS:64 7205 t=907165275 0 7206 a=X-pc-csuites:312F 7207 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7208 a=rtpmap:0 PCMU/8000 7209 a=rtpmap:96 G726-32/8000 7210 m=audio 3456 RTP/AVP 0 7212 DCS Group Category: Informational - Expiration 5/31/01 138 7213 DCS Architecture November 2000 7215 a=qos:mandatory sendrecv 7216 a=X-pc-codecs:96 7218 When the new call completes, MTA-o acknowledges receipt of the REFER 7219 by sending a 200-OK to MTA-t. This is identical to Section 9.11. 7221 Remainder of the call is identical to the basic call flow shown in 7222 Section 9.11, and is not repeated here. 7224 9.19.3 Call-Transfer with new destination unable to do interception 7226 If CMS-f determines that it is unable to perform the required 7227 surveillance, it passes the request back to CMS-o. This occurs, for 7228 instance, if the new destination of this redirected call is a 7229 voicemail server, or a announcement server, or a bridge server, or 7230 any other network server that does not implement the capability to 7231 intercept the media packets. CMS-f includes the Dcs-Laes header in 7232 the 183-Session-Progress message as follows: 7234 (8) 183-Session-Progress: 7235 SIP/2.0 183 Session Progress 7236 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7237 Via: SIP/2.0/UDP Host(mta-o.provider) 7238 Require: 100rel 7239 Proxy-Require: dcs 7240 State: Host(dp-f.provider); nexthop=sip:555-3333Host(mta- 7241 f.provider); gate=Host(cmts-f.provider):4321/31S14621; 7242 orig-dest=tel:+1-212-555-1111; num-redirects=0 7243 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7244 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7245 orig-dest=tel:+1-212-555-2222; num-redirects=1 7246 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 7247 Remote-Party-ID: John Smith 7248 Anonymity: off 7249 Dcs-Laes: Host(df-o)/Host(df-o);surveillancekey 7250 From: "Alien Blaster" 7252 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7253 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7254 Cseq: 127 INVITE 7255 Rseq: 9021 7256 Content-Disposition: precondition 7257 Contact: sip:Host(mta-t.provider) 7258 Content-Type: application/sdp 7259 Content-length: (.) 7261 v=0 7262 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7263 s=- 7264 c= IN IP4 Host(mta-t.provider) 7266 DCS Group Category: Informational - Expiration 5/31/01 139 7267 DCS Architecture November 2000 7269 b=AS:64 7270 t=907165275 0 7271 a=X-pc-csuites:312F 7272 a=rtpmap:0 PCMU/8000 7273 m=audio 6544 RTP/AVP 0 7274 a=qos:mandatory sendrecv confirm 7276 Proxy-o performs the surveillance in its Gate-Set command to its 7277 CMTS. Remainder of the call flow is identical to a normal call. 7279 9.19.4 Call-Transfer-Consultative with Transferer under Surveillance 7281 MTA-o MTA-t1 Proxy-o Proxy-t2 MTA-t2 7283 | (1) REFER | | | 7284 |----------------->| (2) REFER | | 7285 | | |-------------->| (3) REFER | 7286 | | | |------------------>| 7287 | | | | 7288 | | Proxy-t1 | (4) INVITE | 7289 | | | (5)INVITE |<------------------| 7290 | |(6)INVITE|<--------------| | 7291 | |<--------| | | 7292 | | (7)SDP | | | 7293 | |-------->| (8) SDP | | 7294 | | |-------------->| (9) SDP | 7295 | | | (10) PRACK |------------------>| 7296 | |<--------------------------------------------| 7297 | | | (11) 200 OK | | 7298 | |-------------------------------------------->| 7299 | | | (12) COMET | | 7300 | |<--------------------------------------------| 7301 | | | (13) 200 OK | | 7302 | |-------------------------------------------->| 7303 | |(14)200 | | | 7304 | |-------->| (15) 200 OK | | 7305 | | |-------------->| (16) 200 OK | 7306 | | | (17) ACK |------------------>| 7307 | |<--------------------------------------------| 7308 | | | | | 7309 | | Proxy-o | (17) 200 OK | 7310 | | | (18)200 OK |<------------------| 7311 | (19) 200 OK |<--------------| | 7312 |<-----------------| | | 7313 | | | (20) BYE | | 7314 |----------------------------------------------------->| 7315 | | | (21) 200 OK | | 7316 |<-----------------------------------------------------| 7317 |(22)BYE | | | | 7318 |------->| | | | 7319 |(23)200 | | | | 7320 |<-------| | | | 7322 DCS Group Category: Informational - Expiration 5/31/01 140 7323 DCS Architecture November 2000 7325 After some period of consultation, MTA-o initiates a transfer of the 7326 call from MTA-t1 to the new destination, MTA-t2. This involves 7327 placing the second call on hold (message sequence described 7328 earlier), and sending an INVITE(also,replace) message to MTA-t2, 7329 giving it the information about the call with MTA-t1 in the Also: 7330 header. The INVITE message, since it changes parties involved in 7331 the call, is routed through the proxies. The sequence is shown in 7332 the figure above, and detailed below. 7334 For this example, consider a call initiated by MTA-t1 to MTA-x, with 7335 MTA-x under surveillance, where MTA-x performed a blind transfer to 7336 MTA-o. The call between MTA-t1 and MTA-o is therefore under 7337 surveillance. MTA-o desires to transfer the call (with 7338 consultation) to MTA-t2. After placing the call to MTA-t2, and 7339 placing that call on hold, MTA-o initiates a transfer by sending a 7340 REFER to MTA-t2, routed through the proxies. 7342 The basic call flow for consultative transfer is identical to that 7343 given in Section 9.12, and only the differences due to surveillance 7344 are noted here. 7346 (1) REFER: 7347 REFER sip: Host(mta-t2.provider) SIP/2.0 7348 Via: SIP/2.0/UDP Host(mta-o.provider) 7349 Supported: 100rel, state 7350 Remote-Party-ID: John Doe 7351 Anonymity: off 7352 Refer-to: tel:+1-212-555-2222 ? Call-ID=B64(SHA-1(555- 7353 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7354 & State= Host(dp-o.provider); 7355 state="{nexthop=sip:Host(dp-t1.provider); 7356 gate=Host(cmts-o.provider):3612/17S30124; laes=full; 7357 redirect=2; 7358 state="Host(dp-t1.provider); nexthop=sip:555- 7359 2222@Host(mta-t1.provider); gate=Host(cmts- 7360 t1.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7361 1111; num-redirects=0"}K" 7362 State: Host(dp-o.provider); state="{gate= Host(cmts- 7363 o.provider): 3612/3S10782, nexthop=sip:+1-212-555- 7364 3333,lrn=212-256@Host(dp-t2.provider), state="Host(dp- 7365 t2.provider); nexthop=sip:555-3333@Host(mta- 7366 t2.provider); gate=Host(cmts- 7367 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7368 1111; num-redirects=0"}K" 7369 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7370 To: tel:555-3333 7371 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7372 CSeq: 133 REFER 7373 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7374 seq=23))@localhost 7376 DCS Group Category: Informational - Expiration 5/31/01 141 7377 DCS Architecture November 2000 7379 Proxy-o decrypts the State information in the Refer-To header to 7380 determine the local state information. Proxy-o inserts billing 7381 information and Electronis Surveillance information into the Refer- 7382 To header. Proxy-o then forwards the message to Proxy-t1. 7384 (2) REFER: 7385 REFER sip: Host(dp-o.provider) SIP/2.0 7386 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7387 Via: SIP/2.0/UDP Host(mta-o.provider) 7388 Supported: 100rel, state 7389 Proxy-Require: dcs 7390 State: Host(dp-t2.provider); nexthop=sip:555-3333@Host(mta- 7391 t2.provider); gate=Host(cmts- 7392 t2.provider):4321/31S14621; orig-dest=tel:+1-212-555- 7393 1111; num-redirects=0 7394 Refer-to: tel:+1-212-555-2222? Call-ID=B64(SHA-1(555- 7395 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7396 & Dcs-Billing-Info= Host(rks-t1.provider)<4278-9865- 7397 8765-9000/212-555-2222/212-555-1111> & Dcs-Billing- 7398 Info= Host(rks-t2.provider)<5123-0123-4567-8900/212- 7399 555-1111/212-555-3333> & Dcs-Billing-ID= Host(dp- 7400 o.provider): 36123E5C:0152 & Dcs-Laes=Host(df- 7401 o)/Host(df-o);securitykey & Dcs-Redirect=2 7403 Remote-Party-ID: John Smith 7404 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7405 To: tel:555-3333 7406 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7407 CSeq: 133 REFER 7408 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7409 seq=23))@localhost 7411 Proxy-t2 forwards the REFER message to MTA-t2 after encrypting the 7412 destination of the transfer, and the Electronic Surveillance 7413 headers. 7415 (3) REFER: 7416 REFER sip: 555-3333@Host(mta-t2.provider) SIP/2.0 7417 Via: SIP/2.0/UDP Host(dp-t2.provider), {via="Host(dp- 7418 o.provider); branch=1"; via=Host(mta-o.provider)}K 7419 Supported: 100rel, state 7420 Refer-to: sip:{type=transfer; dest=tel:+1-212-555-2222; 7421 billing-id=Host(dp-o.provider): 36123E5C:0152; 7422 expires=; billing-info= Host(rks- 7423 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 7424 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 7425 4567-8900/212-555-1111/212-555-3333>; laes=Host(df- 7426 o)/Host(df-o);securitykey & redirect=2}K@Host(dp- 7428 t2.provider);private ? Call-ID=B64(SHA-1(555- 7429 1111;time=36124033;seq=72) & Referred-by=tel:555-1111 7430 Remote-Party-ID: John Smith 7431 From: sip:B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7433 DCS Group Category: Informational - Expiration 5/31/01 142 7434 DCS Architecture November 2000 7436 To: tel:555-3333 7437 Call-ID: B64(SHA-1(555-1111;time=36124125;seq=23))@localhost 7438 CSeq: 133 INVITE 7439 Referred-by: sip:B64(SHA-1(555-1111;time=36124125; 7440 seq=23))@localhost 7442 After processing the REFER, MTA-t2 issues a INVITE to MTA-t1. In 7443 addition to the standard headers carried in an INVITE message, the 7444 encrypted {Dcs-Laes, Dcs-Redirect} fields received in the REFER 7445 message are copied into the Request-URI of the INVITE message. These 7446 fields indicate the surveillance information. 7448 (4) INVITE: 7449 INVITE sip:{type=transfer; dest=tel:+1-212-555-2222; billing- 7450 id=Host(dp-o.provider): 36123E5C:0152; 7451 expires=; billing-info= Host(rks- 7452 t1.provider)<4278-9865-8765-9000/212-555-2222/212-555- 7453 1111> ; billing-info= Host(rks-t2.provider)<5123-0123- 7454 4567-8900/212-555-1111/212-555-3333>; laes=Host(df- 7455 o)/Host(df-o);securitykey & redirect=2}K@Host(dp- 7457 t2.provider);private SIP/2.0 7458 Via: SIP/2.0/UDP Host(mta-t2.provider) 7459 Supported: 100rel, state 7460 Remote-Party-ID: John Smith 7461 Anonymity: Off 7462 From: "Alien Blaster" 7464 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 7465 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 7466 Cseq: 129 INVITE 7467 Referred-by: tel:555-1111 7468 Contact: sip:Host(mta-t2.provider) 7469 Content-Type: application/sdp 7470 Content-length: (.) 7472 v=0 7473 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7474 s=- 7475 c= IN IP4 Host(mta-t2.provider) 7476 b=AS:64 7477 t=907165275 0 7478 a=X-pc-csuites:312F 7479 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7480 a=rtpmap:0 PCMU/8000 7481 a=rtpmap:96 G726-32/8000 7482 m=audio 3456 RTP/AVP 0 7483 a=qos:mandatory sendrecv 7484 a=X-pc-codecs:96 7486 DCS Group Category: Informational - Expiration 5/31/01 143 7487 DCS Architecture November 2000 7489 When the Proxy-t2 receives the INVITE it first decrypts the header 7490 information to find the real destination for the call, and the 7491 surveillance information. 7493 (5) INVITE: 7494 INVITE sip: +1-212-555-2222,lrn=212-265@Host(dp-t1);user=np- 7495 queried SIP/2.0 7496 Via: SIP/2.0/UDP Host(dp-t2.provider); branch=1; 7497 Via: SIP/2.0/UDP Host(mta-t2.provider); 7498 Supported: 100rel, state 7499 Require: state 7500 Proxy-Require: dcs, state 7501 Remote-Party-ID: John Smith 7502 Anonymity: Off 7503 Dcs-Gate: Host(cmts-t2.provider):3612/17S30124/37FA1948 7504 Dcs-Billing-Info: Host(rks-t1.provider)<4278-9865-8765- 7505 9000/212-555-2222/212-555-1111> 7506 Dcs-Billing-Info: Host(rks-t2.provider)<5123-0123-4567- 7507 8900/212-555-1111/212-555-3333> 7508 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7509 Dcs-Laes: Host(df-o)/Host(df-o);securitykey 7510 Dcs-Redirect: 2 7511 From: "Alien Blaster" 7513 To: sip:B64(SHA-1(555-3333; time=36124172; seq=75))@localhost 7514 Call-ID: B64(SHA-1(555-1111;time=36124033;seq=72)@localhost 7515 Cseq: 129 INVITE 7516 Referred-by: tel:555-1111 7517 Contact: sip:Host(mta-t2.provider) 7518 Content-Type: application/sdp 7519 Content-length: (.) 7521 v=0 7522 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7523 s=- 7524 c= IN IP4 Host(mta-o.provider) 7525 b=AS:64 7526 t=907165275 0 7527 a=X-pc-csuites:312F 7528 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7529 a=rtpmap:0 PCMU/8000 7530 a=rtpmap:96 G726-32/8000 7531 m=audio 3456 RTP/AVP 0 7532 a=qos:mandatory sendrecv 7533 a=X-pc-codecs:96 7535 Upon receiving this INVITE, Proxy-t1 queries the directory server to 7536 determine the IP address (MTA-t1) associated with 212-555-2222. It 7537 then forwards the INVITE message to MTA-t1, after stripping off all 7538 of the billing fields, and adding the encrypted state information. 7539 Remainder of the call completes as shown in Section 9.12. 7541 DCS Group Category: Informational - Expiration 5/31/01 144 7542 DCS Architecture November 2000 7544 9.20 Privacy with Application-level Anonymizer 7546 MTA-o ANON-o Proxy-o Proxy-t ANON-t MTA-t 7548 | (1)Invite | | | | 7549 |-------------------->| | | | 7550 | | (2)CREAT | | | | 7551 | |<---------|(4)Invite | (5)CREAT | | 7552 | |-(3)ACK-->|--------->|--------->| | 7553 | | | |<-(6)ACK--| | 7554 | | | |(7)Invite | | 7555 | | | |-------------------->| 7556 | | | | (8) 183 SDP | 7557 | | | |<--------------------| 7558 | | | |(9)MODIFY | | 7559 | | | |--------->| | 7560 | | |(11)183SDP|<-(10)ACK-| | 7561 | |(12)MODIFY|<---------| | | 7562 | |<---------| | | | 7563 |(14)183SDP|-(13)ACK->| | | | 7564 |<--------------------| | | | 7565 |(15)PRACK | (16) PRACK |(17)PRACK | 7566 |--------->|------------------------------->|--------->| 7567 |(20)200 OK| (19) 200 OK |(18)200 OK| 7568 |<---------|<-------------------------------|<---------| 7569 |(21)COMET | (22) COMET |(23)COMET | 7570 |--------->|--------- --------------------->|--------->| 7571 |(26)200 OK| (25) 200 OK |(24)200 OK| 7572 |<---------|----------|----------|----------|----------| 7573 | | | | |(27)180 Rg| 7574 | | |(28) 180 |<--------------------| 7575 | (29)180 Ring |<---------| | | 7576 |<---------|----------| | | | 7577 |(30)PRACK | (31) PRACK |(32)PRACK | 7578 |--------->|------------------------------->|--------->| 7579 |(35)200 OK| (34) 200 OK |(33)200 OK| 7580 |<---------|<-------------------------------|----------| 7581 | | | | | | 7582 | | | | (36) 200 OK | 7583 | | |(37)200 OK|<--------------------| 7584 | (38) 200 OK |<---------| | | 7585 |<--------------------| | | | 7586 |(39) ACK | | (40) ACK | |(41) ACK | 7587 |--------->|--------------------------------|--------->| 7588 | | | | | | 7589 |<--------------------Active Call-------------------->| 7590 |(42) BYE | |(43) BYE | |(44) BYE | 7591 |--------->|------------------------------->|--------->| 7592 |(47)200 OK| |(46)200 OK| |(45)200 OK| 7593 |<---------|<-------------------------------|<---------| 7595 DCS Group Category: Informational - Expiration 5/31/01 145 7596 DCS Architecture November 2000 7598 The call begins identically to that shown in Section 9.1 of a basic 7599 MTA-originated call. The only difference at the originating MTA is 7600 that the Anonymity header is set to "Full" or includes "IPAddr." 7602 (1) INVITE: 7603 INVITE sip:555-2222@Host(DP-o);user=phone SIP/2.0 7604 Via: SIP/2.0/UDP Host(mta-o.provider) 7605 Supported: 100rel, state 7606 Proxy-Require: privacy 7607 Remote-Party-ID: John Doe 7608 Anonymity: Full 7609 From: "Alien Blaster" 7611 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7612 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7613 Cseq: 127 INVITE 7614 Contact: sip:Host(mta-o.provider) 7615 Content-Type: application/sdp 7616 Content-length: (.) 7618 v=0 7619 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7620 s=- 7621 c= IN IP4 Host(mta-o.provider) 7622 b=AS:64 7623 t=907165275 0 7624 a=X-pc-csuite:312F 7625 a=rtpmap:0 PCMU/8000 7626 a=rtpmap:96 G726-32/8000 7627 m=audio 3456 RTP/AVP 0 7628 a=qos:mandatory sendrecv 7629 a=X-pc- codecs:96 7631 In addition to its normal functions, Proxy-o also checks the 7632 Anonymity indication which is set to "full", so both caller- 7633 id/calling name blocking and IP address privacy must be provided. 7634 Proxy-o therefore contacts the anonymizer to create an anonymous 7635 session: 7637 (2) ANON_Create: 7638 ANON_Create 7639 Endpoint1: Host(mta-o.provider):Port(mta-o.provider) 7640 Endpoint2: 7642 The anonymizer responds back with an anonymizer endpoint address: 7644 (3) ANON_Ack: 7645 ANON_Ack 7646 AnonAddr: Host(ann-o.provider):Port(ann-o.provider) 7648 The anonymizer implements a packet relay and call signaling gateway 7649 between the two endpoints. The first endpoint specified in the 7650 ANON_Create will receive the anonymizer service. Any packet received 7652 DCS Group Category: Informational - Expiration 5/31/01 146 7653 DCS Architecture November 2000 7655 for the anonymizer address specified will be forwarded to Endpoint1. 7656 Any packet sent by Endpoint1 to the anonymizer address will be 7657 forwarded to Endpoint2, but now with a source address of AnonAddr. 7659 Having received the anonymizer address for the call, Proxy-o 7660 generates the following INVITE message and sends it to Proxy-t. 7661 Proxy-om o d ifies a number of parameters to the INVITE message. 7663 (4) INVITE: 7664 INVITE sip:+1-212-555-2222,lrn=212-234@Host(dp-t);user=np- 7665 queried SIP/2.0 7666 Via: SIP/2.0/UDP Host(DP-o.provider);branch=1 7667 Via: SIP/2.0/UDP Host(mta-o.provider) 7668 Supported: 100rel, state 7669 Require: state 7670 Proxy-Require: dcs, state, privacy 7671 Remote-Party-ID: John Doe; 7672 Anonymity: Full 7673 Dcs-Gate: Host(cmts-o.provider):3612/17S30124/37FA1948 required 7674 Dcs-Billing-Info: Host(rks-o.provider)<5123-0123-4567-8900/212- 7675 555-1111/212-555-2222> 7676 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7677 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7678 orig-dest=tel:+1-212-555-2222; num-redirects=0 7679 Dcs-Billing-ID: Host(dp-o.provider):36123E5C:0152 7680 From: "Alien Blaster" 7682 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7683 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7684 Cseq: 127 INVITE 7685 Contact: sip:Host(ann-o.provider) 7686 Content-Type: application/sdp 7687 Content-length: (.) 7689 v=0 7690 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7691 s=- 7692 c= IN IP4 Host(ann-o.provider) 7693 b=AS:64 7694 t=907165275 0 7695 a=X-pc-csuites:312F 7696 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7697 a=rtpmap:0 PCMU/8000 7698 a=rtpmap:96 G726-32/8000 7699 m=audio Port(ann-o) RTP/AVP 0 7700 a=qos:mandatory sendrecv 7701 a=X-pc-codecs:96 7703 Proxy-t also checks the Anonymity indication which is set to "full", 7704 so both caller-id/calling name blocking and IP address privacy must 7705 be provided. We furthermore assume, that MTA-t has requested 7706 privacy, i.e. the originating party must not be able to tell the IP- 7708 DCS Group Category: Informational - Expiration 5/31/01 147 7709 DCS Architecture November 2000 7711 address of MTA-t. Proxy-t therefore contacts an anonymizer to create 7712 an anonymous session: 7714 (5) ANON_Create: 7715 ANON_Create 7716 Endpoint1: 7717 Endpoint2: Host(ann-o.provider):Port(ann-o.provider) 7719 The anonymizer responds back with an anonymizer endpoint address: 7721 (6) ANON_Ack: 7722 ANON_Ack 7723 AnonAddr: Host(ann-t.provider):Port(ann-t.provider) 7725 The anonymizer implements a packet relay and call signaling gateway 7726 between the two endpoints. The first endpoint specified in the 7727 ANON_Create will receive the anonymizer service. Any packet received 7728 for the anonymizer address specified will be forwarded to Endpoint1. 7729 Any packet sent by Endpoint1 to the anonymizer address will be 7730 forwarded to Endpoint2, but now with a source address of AnonAddr. 7731 Proxy-t now generates the following INVITE message and sends it to 7732 MTA-t. 7734 (7) INVITE: 7735 INVITE sip:555-2222@Host(mta-t.provider); user=phone SIP/2.0 7736 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 7737 o.provider); branch=1"; via=Host(mta-o.provider)}K 7738 Supported: 100rel, state 7739 Require: state 7740 Remote-Party-ID: ; 7742 rpi-id=private 7743 Media-Authorization: 31S14621 7744 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7745 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7746 state="Host(dp-o.provider); nexthop=sip:555- 7747 1111@Host(mta-o.provider); gate=Host(cmts- 7748 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7749 2222; num-redirects=0"}K" 7750 From: "Alien Blaster" 7752 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7753 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7754 Cseq: 127 INVITE 7755 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 7756 Content-Type: application/sdp 7757 Content-length: (.) 7759 v=0 7760 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7761 s=- 7762 c= IN IP4 Host(ann-t.provider) 7763 b=AS:64 7765 DCS Group Category: Informational - Expiration 5/31/01 148 7766 DCS Architecture November 2000 7768 t=907165275 0 7769 a=X-pc-csuites:312F 7770 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7771 a=rtpmap:0 PCMU/8000 7772 a=rtpmap:96 G726-32/8000 7773 m=audio Port(ann-t.provider) RTP/AVP 0 7774 a=qos:mandatory sendrecv 7775 a=X-pc-codecs:96 7777 Upon receiving this INVITE, MTA-t authenticates that the message 7778 came from Proxy-t using IPSec. MTA-t checks the telephone line 7779 associated with the E.164-t to see if it is available. If it is 7780 available, MTA-t looks at the capability parameters in the Session 7781 Description Protocol (SDP) part of the message and determines which 7782 media channel parameters it can accommodate for this call. MTA-t 7783 stores the INVITE message, including the encrypted State parameters, 7784 for later use. MTA-t puts this line in the "busy" state (so any 7785 other call attempts are rejected until this call clears), generates 7786 the following 183-Session-Progress response, and sends it to Proxy- 7787 t. MTA-t starts timer (T-proxy-response). 7789 (8) 183-Session-Progress: 7790 SIP/2.0 183 Session Progress 7791 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 7792 o.provider); branch=1"; via=Host(mta-o.provider)}K 7793 Require: 100rel 7794 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 7795 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 7796 state="Host(dp-o.provider); nexthop=sip:555- 7797 1111@Host(mta-o.provider); gate=Host(cmts- 7798 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 7799 2222; num-redirects=0"}K" 7800 Remote-Party-ID: John Smith 7801 Anonymity: full 7802 From: "Alien Blaster" 7804 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7805 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7806 Cseq: 127 INVITE 7807 Rseq: 9021 7808 Content-Disposition: precondition 7809 Contact: sip:Host(mta-t.provider) 7810 Content-Type: application/sdp 7811 Content-length: (.) 7813 v=0 7814 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7815 s=- 7816 c= IN IP4 Host(mta-t.provider) 7817 b=AS:64 7818 t=907165275 0 7819 a=X-pc-csuites:312F 7820 a=rtpmap:0 PCMU/8000 7822 DCS Group Category: Informational - Expiration 5/31/01 149 7823 DCS Architecture November 2000 7825 m=audio 6544 RTP/AVP 0 7826 a=qos:mandatory sendrecv confirm 7828 Upon receiving the 183-Session-Progress message, Proxy-t updates the 7829 anonymizer with the MTA-t address information: 7831 (9) ANON_Modify: 7832 ANON_Modify 7833 Endpoint1: Host(mta-t.provider):Port(mta-t.provider) 7834 Endpoint2: Host(ann-o.provider):Port(ann-o.provider) 7836 The anonymizer responds back: 7838 (10) ANON_Ack: 7839 ANON_Ack 7841 Following the anonymizer update, Proxy-t then forwards the following 7842 183-Session-Progress message to Proxy-o, restoring the Via headers, 7843 and adding Dcs-Gate information. At this point Proxy-t has 7844 completed its transaction and does not maintain any more state for 7845 this call, processing all further signaling messages as a stateless 7846 proxy. 7848 (11) 183-Session-Progress: 7849 SIP/2.0 183 Session Progress 7850 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 7851 Via: SIP/2.0/UDP Host(mta-o.provider) 7852 Require: 100rel 7853 State: Host(dp-t.provider); nexthop=sip:555-2222@Host(mta- 7854 t.provider); gate=Host(cmts-t.provider):4321/31S14621 7855 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 7856 o.provider); gate=Host(cmts-o.provider):3612/17S30124; 7857 orig-dest=tel:+1-212-555-2222; num-redirects=0 7858 Dcs-Gate: Host(cmts-t.provider):4321/31S14621/37FA1948 7859 Remote-Party-ID: John Smith 7860 Anonymity: full 7861 From: "Alien Blaster" 7863 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7864 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7865 Cseq: 127 INVITE 7866 Rseq: 9021 7867 Content-Disposition: precondition 7868 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 7869 Content-Type: application/sdp 7870 Content-length: (.) 7872 v=0 7873 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7874 s=- 7875 c= IN IP4 Host(ann-t.provider) 7876 b=AS:64 7877 t=907165275 0 7879 DCS Group Category: Informational - Expiration 5/31/01 150 7880 DCS Architecture November 2000 7882 a=X-pc-csuites:312F 7883 a=rtpmap:0 PCMU/8000 7884 m=audio Port(ann-t.provider) RTP/AVP 0 7885 a=qos:mandatory sendrecv confirm 7887 Upon receiving the 183-Session-Progress message, Proxy-o informs the 7888 originating anonymizer about the second endpoint: 7890 (12) ANON_Modify: 7891 ANON_Modify 7892 Endpoint1: Host(mta-o.provider):Port(mta-o.provider) 7893 Endpoint2: Host(ann-t.provider) :Port(ann-t.provider) 7895 The anonymizer responds back: 7897 (13) ANON_Ack: 7898 ANON_Ack 7900 Subsequently, Proxy-o forwards the following 183-Session-Progress to 7901 MTA-o. At this point Proxy-o has completed its transaction and does 7902 not maintain any more state for this call, processing all further 7903 signaling messages as a stateless proxy. 7905 (14) 183-Session-Progress: 7906 SIP/2.0 183 Session Progress 7907 Via: Sip/2.0/UDP Host(mta-o.provider) 7908 Require: 100rel 7909 Media-Authorization: 17S30124 7910 State: Host(dp-o.provider); state="{gate= Host(cmts- 7911 o.provider): 3612/17S30124, nexthop=sip:+1-212-555- 7912 2222;lrn=212-234@Host(DP-t), state="Host(dp- 7913 t.provider); nexthop=sip:555-2222@Host(mta-t.provider); 7914 gate=Host(cmts-t.provider):4321/31S14621; orig- 7915 dest=tel:+1-212-555-1111; num-redirects=0"}K" 7916 Remote-Party-ID: ; 7918 rpi-id=private 7919 From: "Alien Blaster" 7921 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7922 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7923 Cseq: 127 INVITE 7924 Rseq: 9021 7925 Content-Disposition: precondition 7926 Contact: sip:Host(ann-o.provider):Port(ann-o.provider) 7927 Content-Type: application/sdp 7928 Content-length: (.) 7930 v=0 7931 o=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7932 s=- 7933 c= IN IP4 Host(ann-o.provider) 7934 b=AS:64 7936 DCS Group Category: Informational - Expiration 5/31/01 151 7937 DCS Architecture November 2000 7939 t=907165275 0 7940 a=X-pc-csuites:312F 7941 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7942 a=rtpmap:0 PCMU/8000 7943 m=audio Port(ann-o) RTP/AVP 0 7944 a-X=pc-qos:mandatory sendrecv confirm 7946 Upon receiving the 183-Session-Progress message, MTA-o sends the 7947 following PRACK message indirectly to MTA-t through the anonymizer 7948 using the IP address in the Contact header of the 183-Session- 7949 Progress message. 7951 (15) PRACK: 7952 PRACK sip:Host(ann-o.provider) SIP/2.0 7953 Via: SIP/2.0/UDP Host(mta-o.provider) 7954 From: "Alien Blaster" 7956 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7957 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7958 Cseq: 128 PRACK 7959 Rack: 9021 127 INVITE 7960 Content-Type: application/sdp 7961 Content-length: (.) 7963 v=0 7964 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7965 s=- 7966 c= IN IP4 Host(mta-o.provider) 7967 b=AS:64 7968 t=907165275 0 7969 a=X-pc-csuites:312F 7970 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 7971 a=rtpmap:0 PCMU/8000 7972 m=audio 3456 RTP/AVP 0 7973 a-qos:mandatory sendrecv 7975 ANN-o modifies the address information in the message and forwards 7976 it to ANN-t. 7978 (16) PRACK: 7979 PRACK sip:Host(ann-t.provider) SIP/2.0 7980 Via: SIP/2.0/UDP Host(ann-o.provider) 7981 From: "Alien Blaster" 7983 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 7984 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 7985 Cseq: 128 PRACK 7986 Rack: 9021 127 INVITE 7987 Content-Type: application/sdp 7988 Content-length: (.) 7990 v=0 7991 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 7993 DCS Group Category: Informational - Expiration 5/31/01 152 7994 DCS Architecture November 2000 7996 s=- 7997 c= IN IP4 Host(ann-o.provider) 7998 b=AS:64 7999 t=907165275 0 8000 a=X-pc-csuites:312F 8001 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8002 a=rtpmap:0 PCMU/8000 8003 m=audio Port(ann-o.provider) RTP/AVP 0 8004 a-qos:mandatory sendrecv 8006 ANN-t modifies the address information in the message and forwards 8007 it to MTA-t. 8009 (17) PRACK 8010 PRACK sip:Host(mta-t.provider) SIP/2.0 8011 Via: SIP/2.0/UDP Host(ann-t.provider) 8012 From: "Alien Blaster" 8014 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8015 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8016 Cseq: 128 PRACK 8017 Rack: 9021 127 INVITE 8018 Content-Type: application/sdp 8019 Content-length: (.) 8021 v=0 8022 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8023 s=- 8024 c= IN IP4 Host(ann-t.provider) 8025 b=AS:64 8026 t=907165275 0 8027 a=X-pc-csuites:312F 8028 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8029 a=rtpmap:0 PCMU/8000 8030 m=audio Port(ann-t.provider) RTP/AVP 0 8031 a-qos:mandatory sendrecv 8033 MTA-t acknowledges the PRACK with a 200-OK, and begins to reserve 8034 the resources necessary for the call. 8036 (18) 200 OK: 8037 SIP/2.0 200 OK 8038 Via: SIP/2.0/UDP Host(ann-t.provider) 8039 From: "Alien Blaster" 8041 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8042 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8043 Cseq: 128 PRACK 8045 ANN-t modifies the address information in the message and forwards 8046 it to ANN-o. 8048 (19) 200 OK: 8050 DCS Group Category: Informational - Expiration 5/31/01 153 8051 DCS Architecture November 2000 8053 SIP/2.0 200 OK 8054 Via: SIP/2.0/UDP Host(ann-o.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 8061 ANN-o modifies the address information in the message and forwards 8062 it to MTA-o. 8064 (20) 200 OK: 8065 SIP/2.0 200 OK 8066 Via: SIP/2.0/UDP Host(mta-o.provider) 8067 From: "Alien Blaster" 8069 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8070 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8071 Cseq: 128 PRACK 8073 After sending PRACK(7), MTA-o attempts to reserve network resources 8074 if necessary. If resource reservation is successful, MTA-o sends 8075 the following COMET message directly to MTA-t. MTA-o starts timer 8076 (T-direct-request). 8078 (21) COMET: 8079 COMET sip:Host(ann-o.provider) SIP/2.0 8080 Via: SIP/2.0/UDP Host(mta-o.provider) 8081 From: "Alien Blaster" 8083 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8084 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8085 Cseq: 129 COMET 8086 Content-Type: application/sdp 8087 Content-length: (.) 8089 v=0 8090 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8091 s=- 8092 c= IN IP4 Host(mta-o.provider) 8093 b=AS:64 8094 t=907165275 0 8095 a=X-pc-csuites:312F 8096 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8097 a=rtpmap:0 PCMU/8000 8098 m=audio 3456 RTP/AVP 0 8099 a=qos:success send 8101 ANN-o modifies the address information in the message and forwards 8102 it to ANN-t. 8104 (22) COMET: 8105 COMET sip:Host(ann-t.provider) SIP/2.0 8107 DCS Group Category: Informational - Expiration 5/31/01 154 8108 DCS Architecture November 2000 8110 Via: SIP/2.0/UDP Host(ann-o.provider) 8111 From: "Alien Blaster" 8113 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8114 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8115 Cseq: 129 COMET 8116 Content-Type: application/sdp 8117 Content-length: (.) 8119 v=0 8120 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8121 s=- 8122 c= IN IP4 Host(ann-o.provider) 8123 b=AS:64 8124 t=907165275 0 8125 a=X-pc-csuites:312F 8126 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8127 a=rtpmap:0 PCMU/8000 8128 m=audio Port(ann-o.provider) RTP/AVP 0 8129 a=qos:success send 8131 ANN-t modifies the address information in the message and forwards 8132 it to MTA-t. 8134 (23) COMET: 8135 COMET sip:Host(mta-t.provider) SIP/2.0 8136 Via: SIP/2.0/UDP Host(ann-t.provider) 8137 From: "Alien Blaster" 8139 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8140 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8141 Cseq: 129 COMET 8142 Content-Type: application/sdp 8143 Content-length: (.) 8145 v=0 8146 O=- 2987933615 2987933615 IN IP4 A3C47F2146789F0 8147 s=- 8148 c= IN IP4 Host(ann-t.provider) 8149 b=AS:64 8150 t=907165275 0 8151 a=X-pc-csuites:312F 8152 a=X-pc-secret:clear:WhenInTheCourseOfHumanEvents 8153 a=rtpmap:0 PCMU/8000 8154 m=audio Port(ann-t.provider) RTP/AVP 0 8155 a=qos:success send 8157 MTA-t acknowledges the COMET message with a 200-OK. 8159 (24) 200 OK: 8160 SIP/2.0 200 OK 8161 Via: SIP/2.0/UDP Host(ann-t.provider) 8163 DCS Group Category: Informational - Expiration 5/31/01 155 8164 DCS Architecture November 2000 8166 From: "Alien Blaster" 8168 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8169 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8170 Cseq: 129 COMET 8172 ANN-t modifies the address information in the message and forwards 8173 it to ANN-o. 8175 (25) 200 OK: 8176 SIP/2.0 200 OK 8177 Via: SIP/2.0/UDP Host(ann-o.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 8184 ANN-o modifies the address information in the message and forwards 8185 it to MTA-o. 8187 (26) 200 OK: 8188 SIP/2.0 200 OK 8189 Via: SIP/2.0/UDP Host(mta-o.provider) 8190 From: "Alien Blaster" 8192 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8193 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8194 Cseq: 129 COMET 8196 Upon receipt of the 200-OK(26), MTA-o stops timer (T-direct- 8197 request). 8199 Upon receipt of the (17) PRACK message, MTA-t stops timer (T-proxy- 8200 response) and attempts to reserve network resources if necessary. 8201 Once MTA-t both receives the COMET message and has successfully 8202 reserved network resources, MTA-t begins to send ringing voltage to 8203 the designated line and sends the following 180 RINGING message 8204 through Proxy-t. MTA-t restarts the session timer (T3) with value 8205 (T-ringing). 8207 (27) 180 RINGING: 8208 SIP/2.0 180 Ringing 8209 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 8210 o.provider); branch=1"; via=Host(mta-o.provider)}K 8211 Require: 100rel 8212 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 8213 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 8214 state="Host(dp-o.provider); nexthop=sip:555- 8215 1111@Host(mta-o.provider); gate=Host(cmts- 8216 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 8217 2222; num-redirects=0"}K" 8219 DCS Group Category: Informational - Expiration 5/31/01 156 8220 DCS Architecture November 2000 8222 From: "Alien Blaster" 8224 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8225 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8226 Contact: sip:Host(mta-t.provider) 8227 Cseq: 127 INVITE 8228 Rseq: 9022 8230 Proxy-t decodes the Via: headers, and passes the 180-Ringing to 8231 Proxy-o. This operation is done as a SIP stateless proxy. 8233 (28) 180 RINGING: 8234 SIP/2.0 180 Ringing 8235 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 8236 Via: SIP/2.0/UDP Host(mta-o.provider) 8237 Require: 100rel 8238 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 8239 o.provider); gate=Host(cmts-o.provider):3612/17S30124 8240 From: "Alien Blaster" 8242 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8243 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8244 Contact: sip:Host(ann-t.provider):Port(ann-t.provider) 8245 Cseq: 127 INVITE 8246 RSeq: 9022 8248 Proxy-o handles the message as a SIP stateless proxy, and passes the 8249 180-Ringing to MTA-o. 8251 (29) 180 RINGING: 8252 SIP/2.0 180 Ringing 8253 Via: SIP/2.0/UDP Host(mta-o.provider) 8254 Require: 100rel 8255 From: "Alien Blaster" 8257 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8258 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8259 Contact: sip:Host(ann-o.provider):Port(ann-o.provider) 8260 Cseq: 127 INVITE 8261 RSeq: 9022 8263 Upon receipt of the 180 RINGING message, MTA-o restarts the 8264 transaction timer (T3) with value (T-ringing). MTA-o acknowledges 8265 the provisional response with a PRACK, and plays audible ringback 8266 tone to the customer. 8268 (30) PRACK: 8269 PRACK sip:Host(ann-o.provider) SIP/2.0 8270 Via: SIP/2.0/UDP Host(mta-o.provider) 8271 From: "Alien Blaster" 8273 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8274 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8276 DCS Group Category: Informational - Expiration 5/31/01 157 8277 DCS Architecture November 2000 8279 Cseq: 130 PRACK 8280 RAck: 9022 127 INVITE 8282 ANN-o modifies the address information in the message and forwards 8283 it to ANN-t. 8285 (31) PRACK: 8286 PRACK sip:Host(ann-t.provider) SIP/2.0 8287 Via: SIP/2.0/UDP Host(ann-o.provider) 8288 From: "Alien Blaster" 8290 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8291 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8292 Cseq: 130 PRACK 8293 RAck: 9022 127 INVITE 8295 ANN-t modifies the address information in the message and forwards 8296 it to MTA-t. 8298 (32) PRACK: 8299 PRACK sip:Host(mta-t.provider) SIP/2.0 8300 Via: SIP/2.0/UDP Host(ann-t.provider) 8301 From: "Alien Blaster" 8303 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8304 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8305 Cseq: 130 PRACK 8306 RAck: 9022 127 INVITE 8308 MTA-t acknowledges the PRACK with a 200-OK, and stops timer (T- 8309 proxy-response). 8311 (33) 200 OK: 8312 SIP/2.0 200 OK 8313 Via: SIP/2.0/UDP Host(ann-t.provider) 8314 From: "Alien Blaster" 8316 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8317 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8318 Cseq: 130 PRACK 8320 ANN-t modifies the address information in the message and forwards 8321 it to ANN-o. 8323 (34) 200 OK: 8324 SIP/2.0 200 OK 8325 Via: SIP/2.0/UDP Host(ann-o.provider) 8326 From: "Alien Blaster" 8328 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8329 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8330 Cseq: 130 PRACK 8332 DCS Group Category: Informational - Expiration 5/31/01 158 8333 DCS Architecture November 2000 8335 ANN-o modifies the address information in the message and forwards 8336 it to MTA-o. 8338 (35) 200 OK: 8339 SIP/2.0 200 OK 8340 Via: SIP/2.0/UDP Host(mta-o.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 8347 Once MTA-t detects off-hook on the called line, it disconnects 8348 ringing voltage from the line and sends the final response through 8349 the proxies. MTA-t stops timer (T-ringing) and starts timer (T- 8350 proxy-response). If necessary, MTA-t may also commit to resources 8351 that have been reserved for this call. At this point, MTA-t begins 8352 to generate bearer channel packets of encoded voice and send them to 8353 MTA-o using the IP address and port number specified in the SDP part 8354 of the original INVITE message. 8356 (36) 200-OK: 8357 SIP/2.0 200 OK 8358 Via: SIP/2.0/UDP Host(dp-t.provider), {via="Host(dp- 8359 o.provider); branch=1"; via=Host(mta-o.provider)}K 8360 State: Host(dp-t.provider); state="{nexthop=sip:Host(dp- 8361 o.provider); gate=Host(cmts-t.provider):4321/31S14621; 8362 state="Host(dp-o.provider); nexthop=sip:555- 8363 1111@Host(mta-o.provider); gate=Host(cmts- 8364 o.provider):3612/17S30124; orig-dest=tel:+1-212-555- 8365 2222; num-redirects=0"}K" 8366 From: "Alien Blaster" 8368 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8369 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8370 Cseq: 127 INVITE 8372 Proxy-t handles the message as a SIP stateless proxy, and forwards 8373 it to Proxy-o. 8375 (37) 200-OK: 8376 SIP/2.0 200 OK 8377 Via: SIP/2.0/UDP Host(dp-o.provider);branch=1 8378 Via: SIP/2.0/UDP Host(mta-o.provider) 8379 State: Host(dp-o.provider); nexthop=sip:555-1111@Host(mta- 8380 o.provider); gate=Host(cmts-o.provider):3612/17S30124 8381 From: "Alien Blaster" 8383 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8384 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8385 Cseq: 127 INVITE 8387 DCS Group Category: Informational - Expiration 5/31/01 159 8388 DCS Architecture November 2000 8390 Proxy-o handles the message as a SIP stateless proxy, and forwards 8391 it to MTA-o. 8393 (38) 200-OK: 8394 SIP/2.0 200 OK 8395 Via: SIP/2.0/UDP Host(mta-o.provider) 8396 From: "Alien Blaster" 8398 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8399 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8400 Cseq: 127 INVITE 8402 Upon receipt of the 200-OK message, MTA-o stops timer (T-ringing) 8403 and stops playing audible ringback tone to the customer and begins 8404 to play the bearer channel stream that is received from MTA-t. MTA- 8405 o sends the following ACK message to MTA-t. If necessary, MTA-o may 8406 also commit to resources that have been reserved for this call. At 8407 this point, MTA-o begins to generate bearer channel packets of 8408 encoded voice and send them to MTA-t using the IP address and port 8409 number specified in the SDP part of the original 183-Session- 8410 Progress message (that was a response to the original INVITE). 8412 (39) ACK: 8413 ACK sip:Host(ann-o.provider) SIP/2.0 8414 Via: SIP/2.0/UDP Host(mta-o.provider) 8415 From: "Alien Blaster" 8417 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8418 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8419 Cseq: 127 ACK 8421 ANN-o modifies the address information in the message and forwards 8422 it to ANN-t. 8424 (40) ACK: 8425 ACK sip:Host(ann-t.provider) SIP/2.0 8426 Via: SIP/2.0/UDP Host(ann-o.provider) 8427 From: "Alien Blaster" 8429 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8430 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8431 Cseq: 127 ACK 8433 ANN-t modifies the address information in the message and forwards 8434 it to MTA-t. 8436 (41) ACK: 8437 ACK sip:Host(mta-t.provider) SIP/2.0 8438 Via: SIP/2.0/UDP Host(ann-t.provider) 8439 From: "Alien Blaster" 8441 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8442 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8444 DCS Group Category: Informational - Expiration 5/31/01 160 8445 DCS Architecture November 2000 8447 Cseq: 127 ACK 8449 Upon receipt of the ACK message, MTA-t stop timer (T-proxy- 8450 response). 8452 When either MTA detects hangup, it sends out a BYE message to the 8453 other MTA. In this example, MTA-o detected that the customer hung 8454 up the phone. MTA-o puts that line in the "idle" state so new calls 8455 can be made or received. It sends the following BYE message 8456 directly to MTA-t. MTA-o may also need to release network resources 8457 that have been used for the call. MTA-o starts timer (T-direct- 8458 request). 8460 (42) BYE: 8461 BYE sip:Host(ann-o.provider) SIP/2.0 8462 Via: SIP/2.0/UDP Host(mta-o.provider) 8463 From: "Alien Blaster" 8465 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8466 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8467 Cseq: 131 BYE 8469 ANN-o modifies the address information in the message and forwards 8470 it to ANN-t. 8472 (43) BYE: 8473 BYE sip:Host(ann-t.provider) SIP/2.0 8474 Via: SIP/2.0/UDP Host(ann-o.provider) 8475 From: "Alien Blaster" 8477 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8478 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8479 Cseq: 131 BYE 8481 ANN-t modifies the address information in the message and forwards 8482 it to MTA-t. 8484 (44) BYE: 8485 BYE sip:Host(mta-t.provider) SIP/2.0 8486 Via: SIP/2.0/UDP Host(ann-t.provider) 8487 From: "Alien Blaster" 8489 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8490 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8491 Cseq: 131 BYE 8493 Upon receipt of the BYE message, MTA-t stops playing the bearer 8494 channel stream received from MTA-o and, if necessary, releases 8495 network resources that have been used for this call. MTA-t sen d s t he 8497 following 200-OK message to MTA-o. MTA-t starts a 15-second timer 8498 (T-hangup) (Note: this is a local interface issue, and not part of 8499 this specification). If MTA-t does not detect hangup on the line 8500 before timer (T-hangup) expires, it plays "reorder" tone on the 8502 DCS Group Category: Informational - Expiration 5/31/01 161 8503 DCS Architecture November 2000 8505 customer line. Once hangup is detected, MTA-t puts that line in the 8506 "idle" state so new calls can be made or received. 8508 (45) 200-OK: 8509 SIP/2.0 200 OK 8510 Via: SIP/2.0/UDP Host(ann-t.provider) 8511 From: "Alien Blaster" 8513 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8514 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8515 Cseq: 131 BYE 8517 ANN-t modifies the address information in the message and forwards 8518 it to ANN-o. 8520 (46) 200-OK: 8521 SIP/2.0 200 OK 8522 Via: SIP/2.0/UDP Host(ann-o.provider) 8523 From: "Alien Blaster" 8525 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8526 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8527 Cseq: 131 BYE 8529 ANN-o modifies the address information in the message and forwards 8530 it to MTA-o. 8532 (47) 200-OK: 8533 SIP/2.0 200 OK 8534 Via: SIP/2.0/UDP Host(mta-o.provider) 8535 From: "Alien Blaster" 8537 To: sip:B64(SHA-1(555-2222; time=36123E5B; seq=73))@localhost 8538 Call-ID: B64(SHA-1(555-1111;time=36123E5B;seq=72))@localhost 8539 Cseq: 131 BYE 8541 Upon receipt of 200-OK, MTA-o stops timer (T-direct-request). 8543 10. Notice Regarding Intellectual Property Rights 8545 AT&T may seek patent or other intellectual property protection for 8546 some or all of the technologies disclosed in the document. If any 8547 standards arising from this disclosure are or become protected by 8548 one or more patents assigned to AT&T, AT&T intends to disclose those 8549 patents and license them on reasonable and non-discriminatory terms. 8550 Future revisions of this draft may contain additional information 8551 regarding specific intellectual property protection sought or 8552 received. 8554 3COM may seek patent or other intellectual property protection for 8555 some or all of the technologies disclosed in the document. If any 8557 DCS Group Category: Informational - Expiration 5/31/01 162 8558 DCS Architecture November 2000 8560 standards arising from this disclosure are or become protected by 8561 one or more patents assigned to 3COM, 3COM intends to disclose those 8562 patents and license them on reasonable and non-discriminatory terms. 8563 Future revisions of this draft may contain additional information 8564 regarding specific intellectual property protection sought or 8565 received. 8567 11. References 8569 1. Bradner, S., "The Internet Standards Process -- Revision 3", BCP 8570 9, RFC 2026, October 1996. 8572 2. Bradner, S., "Key words for use in RFCs to Indicate Requirement 8573 Levels", BCP 14, RFC 2119, March 1997. 8575 3. "SIP Extensions for Caller Identity, Privacy and Operator 8576 Services", Internet Draft: , 8577 November 2000. 8579 4. "SIP proxy-to-proxy extensions for supporting Distributed Call 8580 State", Internet Draft: , 8581 November 2000. 8583 5. "SIP extensions for supporting Distributed Call State", Internet 8584 Draft: , November 2000. 8586 6. "SIP Extensions for Media Authorization", Internet Draft: , November 2000. 8589 7. "Reliability of Provisional Responses in SIP", Internet Draft: 8590 , July, 2000. 8592 8. "SIP 183 Session Progress Message", Internet Draft: , October 1999. 8595 9. "Integration of Resource Management and SIP for IP Telephony", 8596 Internet Draft: , 8597 November 2000. 8599 12. Acknowledgements 8601 The Distributed Call Signaling work in the PacketCable project is 8602 the work of a large number of people, representing many different 8603 companies. The authors would like to recognize and thank the 8604 following for their assistance: John Wheeler, Motorola; David 8605 Boardman, Daniel Paul, Arris Interactive; Bill Blum, Jon Fellows, 8606 Jay Strater, Jeff Ollis, Clive Holborow, Motorola; Doug Newlin, 8607 Guido Schuster, Ikhlaq Sidhu, 3Com; Jiri Matousek, Bay Networks; 8608 Farzi Khazai, Nortel; John Chapman, Bill Guckel, Michael Ramalho, 8609 Cisco; Chuck Kalmanek, Doug Nortz, John Lawser, James Cheng, Tung- 8611 DCS Group Category: Informational - Expiration 5/31/01 163 8612 DCS Architecture November 2000 8614 Hai Hsiao, Partho Mishra, AT&T; Telcordia Technologies; and Lucent 8615 Cable Communications. 8617 13. Author's Addresses 8619 Bill Marshall 8620 AT&T 8621 Florham Park, NJ 07932 8622 Email: wtm@research.att.com 8624 K. K. Ramakrishnan 8625 TeraOptic Networks 8626 Sunnyvale, CA 8627 Email: kk@teraoptic.com 8629 Ed Miller 8630 CableLabs 8631 Louisville, CO 80027 8632 Email: E.Miller@Cablelabs.com 8634 Glenn Russell 8635 CableLabs 8636 Louisville, CO 80027 8637 Email: G.Russell@Cablelabs.com 8639 Matt Osman 8640 CableLabs 8641 Louisville, CO 80027 8642 Email: M.Osman@Cablelabs.com 8644 Burcak Beser 8645 Pacific Broadband Communications 8646 San Jose, CA 8647 Email: Burcak@pacband.com 8649 Mike Mannette 8650 3Com 8651 Rolling Meadows, IL 60008 8652 Email: Michael_Mannette@3com.com 8654 Kurt Steinbrenner 8655 3Com 8656 Rolling Meadows, IL 60008 8657 Email: Kurt_Steinbrenner@3com.com 8659 Dave Oran 8660 Cisco 8661 Acton, MA 01720 8662 Email: oran@cisco.com 8664 Flemming Andreasen 8665 Cisco 8667 DCS Group Category: Informational - Expiration 5/31/01 164 8668 DCS Architecture November 2000 8670 Edison, NJ 8671 Email: fandreas@cisco.com 8673 John Pickens 8674 Com21 8675 San Jose, CA 8676 Email: jpickens@com21.com 8678 Poornima Lalwaney 8679 Nokia 8680 San Diego, CA 92121 8681 Email: poornima.lalwaney@nokia.com 8683 Jon Fellows 8684 Motorola 8685 San Diego, CA 92121 8686 Email: jfellows@gi.com 8688 Doc Evans 8689 D. R. Evans Consulting 8690 Boulder, CO 80303 8691 Email: n7dr@arrl.net 8693 Keith Kelly 8694 NetSpeak 8695 Boca Raton, FL 33587 8696 Email: keith@netspeak.com 8698 DCS Group Category: Informational - Expiration 5/31/01 165 8699 DCS Architecture November 2000 8701 Full Copyright Statement 8703 "Copyright (C) The Internet Society (date). All Rights Reserved. 8704 This document and translations of it may be copied and furnished to 8705 others, and derivative works that comment on or otherwise explain it 8706 or assist in its implmentation may be prepared, copied, published 8707 and distributed, in whole or in part, without restriction of any 8708 kind, provided that the above copyright notice and this paragraph 8709 are included on all such copies and derivative works. However, this 8710 document itself may not be modified in any way, such as by removing 8711 the copyright notice or references to the Internet Society or other 8712 Internet organizations, except as needed for the purpose of 8713 developing Internet standards in which case the procedures for 8714 copyrights defined in the Internet Standards process must be 8715 followed, or as required to translate it into languages other than 8716 English. The limited permissions granted above are perpetual and 8717 will not be revoked by the Internet Society or its successors or 8718 assigns. This document and the information contained herein is 8719 provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE 8720 INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR 8721 IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 8722 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 8723 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." 8725 Expiration Date This memo is filed as , and expires May 31, 2001. 8728 DCS Group Category: Informational - Expiration 5/31/01 166