idnits 2.17.1 draft-ietf-sipping-overlap-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** Looks like you're using RFC 2026 boilerplate. This must be updated to follow RFC 3978/3979, as updated by RFC 4748. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- ** The document seems to lack a 1id_guidelines paragraph about 6 months document validity -- however, there's a paragraph with a matching beginning. Boilerplate error? == There are 3 instances of lines with non-ascii characters in the document. == No 'Intended status' indicated for this document; assuming Proposed Standard == The page length should not exceed 58 lines per page, but there was 9 longer pages, the longest (page 2) being 60 lines Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- ** The document seems to lack a Security Considerations section. ** 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 an Authors' Addresses Section. ** The document seems to lack separate sections for Informative/Normative References. All references will be assumed normative when checking for downward references. Miscellaneous warnings: ---------------------------------------------------------------------------- -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (January 2002) is 8136 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 2543 (ref. '1') (Obsoleted by RFC 3261, RFC 3262, RFC 3263, RFC 3264, RFC 3265) -- Possible downref: Non-RFC (?) normative reference: ref. '2' == Outdated reference: A later version (-03) exists of draft-ietf-sip-isup-01 -- Possible downref: Normative reference to a draft: ref. '3' Summary: 7 errors (**), 0 flaws (~~), 4 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Internet Engineering Task Force Gonzalo Camarillo 3 Internet draft Adam Roach 4 Ericsson 5 January 2002 6 Expires: July 2002 Jon Peterson 7 NeuStar 9 Lyndon Ong 10 Ciena 12 Mapping of ISUP Overlap Signalling to SIP 14 Status of this Memo 16 This document is an Internet-Draft and is in full conformance with 17 all provisions of Section 10 of RFC2026. 19 Internet-Drafts are working documents of the Internet Engineering 20 Task Force (IETF), its areas, and its working groups. Note that 21 other groups may also distribute working documents as Internet- 22 Drafts. Internet-Drafts are draft documents valid for a maximum of 23 six months and may be updated, replaced, or obsoleted by other 24 documents at any time. It is inappropriate to use Internet- Drafts 25 as reference material or to cite them other than as "work in 26 progress." 28 The list of current Internet-Drafts can be accessed at 29 http://www.ietf.org/ietf/1id-abstracts.txt 30 The list of Internet-Draft Shadow Directories can be accessed at 31 http://www.ietf.org/shadow.html. 33 Abstract 35 This document describes a way to map ISUP overlap signalling to SIP. 37 Camarillo/Roach/Peterson/Ong 1 38 Mapping of ISUP Overlap Signalling to SIP 40 TABLE OF CONTENTS 42 1 Introduction.................................................2 43 2 Overlap signalling in SIP....................................2 44 3 ISUP to SIP..................................................3 45 3.1 Waiting for the minimum amount of digits.....................3 46 3.2 Sending the first INVITE.....................................3 47 3.3 Sending overlap signalling to the SIP network................4 48 3.4 Applicability of this mechanism..............................5 49 3.5 Receiving multiple responses.................................5 50 3.6 Canceling pending INVITE transactions........................6 51 3.7 INVITEs reaching multiple gateways...........................6 52 4 SIP to ISUP..................................................6 53 4.1 Receiving subsequent INVITEs.................................6 54 5 Conclusions..................................................6 55 6 Acknoledgements..............................................7 56 7 References...................................................7 57 8 Authors� addresses...........................................7 59 1. Introduction 61 A mapping between the Session Initiation Protocol (SIP) [1] and the 62 ISDN User Part (ISUP) [2] of SS7 is described in [3]. However, [3] 63 just takes into consideration ISUP en-bloc signalling. En-bloc 64 signalling consists of sending the complete telephone number of the 65 callee in the first signalling message. Although modern switches 66 always use en-bloc signalling, some parts of the PSTN still use 67 overlap signalling. Overlap signalling consists of sending just some 68 digits of the callee�s number in the first signalling message. 69 Further digits are sent in subsequent signalling messages. 71 2. Overlap signalling in SIP 73 SIP uses en-bloc signalling. The Request-URI of an INVITE message 74 contains the whole address of the callee. Even if the Request-URI 75 contains a tel URI instead of a SIP URI, the INVITE contains the 76 whole number. Breaking this principle would just bring undesirable 77 problems to network designers. Therefore, it is strongly recommended 78 not to use any kind of overlap signalling in a SIP network. The 79 recommended behavior is to convert overlap signalling to en-bloc at 80 the edge of the network and then use en-bloc signalling in SIP. A 81 gateway connected to a part of the PSTN where overlap signalling is 82 used can perform this conversion through the use of timers. 84 However, although its use is discouraged, some applications need to 85 use overlap signalling in order to meet service requirements (i.e. 86 establishment time). Such applications should use the mechanism 87 described in this document. This document also describes in which 88 scenarios is acceptable to use such a mechanism and when, on the 89 other hand, it is completely unacceptable to use overlap. 91 Camarillo/Roach/Peterson/Ong 2 92 Mapping of ISUP Overlap Signalling to SIP 94 3. ISUP to SIP 96 In this scenario the gateway receives an IAM (Initial Address 97 Message) that contains just a portion of the called number. The rest 98 of the digits dialed arrive later in one or more SAMs (Subsequent 99 Address Message). 101 3.1 Waiting for the minimum amount of digits 103 If the IAM contain less than the minimum amount of digits to route a 104 call, the gateway starts T35 and waits until the minimum amount of 105 digits that can represent a telephone number is received (or a stop 106 digit is received). If T35 expires before the minimum amount of 107 digits (or a stop digit) has been received a REL with cause value 28 108 is sent to the ISUP side. 110 If a stop digit is received the INVITE message generated by the 111 gateway will contain the complete called number. Therefore, the call 112 proceeds as usual - no overlap signalling in the SIP network. 114 3.2 Sending the first INVITE 116 There are cases when the gateway, after having received the 117 minimum amount of digits, cannot know whether the number received is 118 a complete number or not. Since supporting overlap signalling in the 119 SIP network is an option that may be deemed undesirable, the gateway 120 may elect to collect digits until a timer (T10) expires or a stop 121 digit (such as #) is entered by the user (note that T10 is 122 refreshed every time a new digit is received). 124 In this case, when T10 expires, an INVITE with the digits collected 125 so far is sent to the SIP side. After this, any SAM received is 126 ignored. 128 PSTN MGC/MG SIP 129 | | | 130 |-----------IAM----------->| Starts T10 | 131 | | | 132 |-----------SAM----------->| Starts T10 | 133 | | | 134 |-----------SAM----------->| Starts T10 | 135 | | | 136 | | | 137 | T10 expires |---------INVITE---------->| 138 | | | 140 Note that T10 is defined for conversion between CAS signalling and 141 en-bloc ISUP. PSTN switches usually implement an equivalent 142 proprietary timer to convert overlap ISUP to en-bloc ISUP. This 144 Camarillo/Roach/Peterson/Ong 3 145 Mapping of ISUP Overlap Signalling to SIP 147 document uses T10 and does not define a new timer because T10 seems 148 suitable for overlap to SIP conversion. 150 3.3 Sending overlap signalling to the SIP network 152 Although the behavior just described is recommended by this 153 document, a gateway might still decide to send overlap signalling in 154 the SIP network. In this case, the gateway should proceed as 155 follows. 157 As soon as the minimum amount of digits is received an INVITE is 158 sent and T10 is started. This INVITE is built following the 159 procedures described in [3]. 161 If a SAM arrives T10 is refreshed and a new INVITE with the new 162 digits received is sent. The new INVITE has the same Call-ID and the 163 same From header field including the tag as the first INVITE sent, 164 but has an updated Request-URI. The new Request-URI contains all the 165 digits received so far. The To header field of the new INVITE 166 contains all the digits as well, but has no tag. 168 Note that it is possible to receive a response to the first 169 INVITE before having sent the second INVITE. In this case, the 170 response received would contain a To tag and information 171 (Record-Route and Contact) to build a Route header field. The 172 new INVITE to be sent (containing new digits) should not use 173 any of these headers. That is, the new INVITE does not contain 174 neither To tag nor Route header field. This way this new INVITE 175 can be routed dynamically by the network providing services 176 (see Section 3.7). 178 The new INVITE should, of course, contain a Cseq field. It is 179 recommended that the Cseq of the new INVITE is higher than any of 180 the previous Cseq that the gateway has generated for this Call-ID 181 (no matter for which dialog the Cseq was generated). 183 When an INVITE forks responses from different locations might 184 arrive establishing one or more early dialogs. New requests 185 such as PRACK or COMET can be sent within every particular 186 early dialog. This implies that the Cseq number spaces of 187 different early dialogs are different. Sending a new INVITE 188 with a Cseq that is still unused by any of the remote 189 destinations avoids confusion at the destination. 191 If the gateway is encapsulating ISUP messages as SIP bodies, it 192 should place the IAM and all the SAMs received so far in this 193 INVITE. 195 PSTN MGC/MG SIP 196 | | | 197 |-----------IAM----------->| Starts T10 | 198 | |---------INVITE---------->| 199 | | | 201 Camarillo/Roach/Peterson/Ong 4 202 Mapping of ISUP Overlap Signalling to SIP 204 |-----------SAM----------->| Starts T10 | 205 | |---------INVITE---------->| 206 | | | 207 |-----------SAM----------->| Starts T10 | 208 | |---------INVITE---------->| 209 | | | 211 If 4xx, 5xx or 6xx final responses arrive (e.g. 484 address 212 incomplete) for the pending INVITE transactions before T10 has 213 expired the gateway should not send any REL. A REL is sent just if 214 no more SAMs arrive, T10 expires and all the INVITEs sent have been 215 answered with a final response (different than 200 OK). 217 PSTN MGC/MG SIP 218 | | | 219 |-----------IAM----------->| Starts T10 | 220 | |---------INVITE---------->| 221 | |<---------484-------------| 222 | |----------ACK------------>| 223 | | | 224 | | | 225 | T10 expires | | 226 |<----------REL------------| | 228 The best status code among all the responses received for all the 229 INVITEs that were generated is used to calculate the cause value of 230 the REL as described in [3]. 232 The computation of the best response is done in the same way as 233 forking proxies compute the best response to be returned to the 234 client for a particular INVITE. Note that the best response is 235 not always the response to the INVITE that contained more 236 digits. If the user dials a particular number and then types an 237 extra digit by mistake a 486 (Busy Here) could be received for 238 the first INVITE and a 484 (Address Incomplete) for the second 239 one (which contained more digits). 241 3.4 Applicability of this mechanism 243 This mechanism is applicable only under certain circumstances. A 244 ingress gateway may use overlap signalling in SIP only if an 245 analysis of the called party number shows that it belongs to a part 246 of the PSTN where overlap signalling is used. This ensures that a 247 particular prefix of the number does not identify any other user. 249 Within some dialing plans in the PSTN, a phone number might be a 250 prefix of another one. This situation is not common, but it can 251 certainly occur. Where en-bloc signalling is used, this ambiguity is 252 resolved before the digits are placed in the en-bloc signalling. If 253 overlap signaling was used in this situation, a different user than 254 the one the caller intended to call might be contacted. 256 Camarillo/Roach/Peterson/Ong 5 257 Mapping of ISUP Overlap Signalling to SIP 259 3.5 Receiving multiple responses 261 When overlap signalling in SIP is used the ingress gateway sends 262 multiple INVITEs. Accordingly, it will receive multiple responses. 263 The responses to all the INVITEs sent except for one (normally, but 264 not necessarily the last one) are typically 400 class responses 265 (e.g. 484 Address Incomplete or 490 Request Updated) that terminate 266 the INVITE transaction. 268 However, a 183 Session Progress response with a media description 269 can also be received. The media stream will typically contain a 270 message such as "The number you have just dialed does not exist". 272 The issue of receiving different 183 Session Progress responses with 273 media descriptions does not only apply to overlap signalling. When 274 vanilla SIP is used, several responses can also arrive to a gateway 275 if the INVITE forked. It is then up to the gateway to decide which 276 media stream should be played to the user. 278 However, overlap signalling adds a requirement to this process. As a 279 general rule, a media stream corresponding to the response to an 280 INVITE with a greater number of digits should be given more priority 281 than media streams from responses with less digits. 283 3.6 Canceling pending INVITE transactions 285 When a gateway sends a new INVITE containing new digits, it should 286 not CANCEL the previous INVITE transaction. This CANCEL could arrive 287 before the new INVITE to an egress gateway and trigger a REL before 288 the new INVITE arrived. INVITE transactions are typically terminated 289 by the reception of 4xx responses. 291 However, once a 200 OK response has been received, the gateway 292 should CANCEL all the other INVITE transactions were generated. A 293 particular gateway might implement a timer to wait for some time 294 before sending any CANCEL. This gives time to all the previous 295 INVITE transactions to terminate smoothly without generating more 296 signalling traffic (CANCEL messages). 298 3.7 INVITEs reaching multiple gateways 300 Since every new INVITE sent by a gateway represents a new 301 transaction they can be routed in different ways. For instance, the 302 first INVITE might be routed to a particular gateway and a 303 subsequent INVITE to another. The result is that both gateways 304 generate an IAM. Since one of the IAMs (or both) has an incomplete 305 number, it would fail, having already consumed PSTN resources. 307 It has been proposed to make all the INVITEs follow the same path as 308 the first one. This proposal would resolve the problem of having 309 INVITEs hitting different gateways, but would restrict the number of 310 services the SIP network can provide. It would not be possible to 312 Camarillo/Roach/Peterson/Ong 6 313 Mapping of ISUP Overlap Signalling to SIP 315 route a subsequent INVITE to an application server just because the 316 previous one was routed in a different way. 318 This issue should be taken into consideration before using overlap 319 signalling in SIP. If sending multiple IAMs to the PSTN is not 320 acceptable in a particular domain, overlap signalling should not be 321 used. 323 4. SIP to ISUP 325 In this scenario the gateway receives multiple INVITEs that have the 326 same Call-ID but have different Request-URIs. 328 Note that these INVITEs do not belong to the same dialog 329 because they have different To header fields. 331 4.1 Receiving subsequent INVITEs 333 An egress gateway does not have any means to know whether SIP 334 overlap signalling is being used or not. So, upon reception of an 335 INVITE, the gateway generates an IAM following the procedures 336 described in [3]. 338 If a gateway receives a subsequent INVITE with the same Call-ID and 339 From tag as the previous one and an updated Request-URI, a SAM 340 should be generated as opposed to a new IAM. Upon reception of a 341 subsequent INVITE, the INVITE received previously is answered with 342 490 Request Updated. 344 If the gateway is attached to the PSTN in an area where en-bloc 345 signalling is used, a REL for the previous IAM and a new IAM should 346 be generated. 348 5. Conclusions 350 The mechanism described in this document is intended to be used in a 351 close environment. Using it in an open network such as the Internet 352 would cause problems such as multiple IAMs generated. If this 353 mechanism was used with telephone numbers that belong to an en-bloc 354 zone, calls could end up reaching a different callee than the one 355 who was supposed to receive the call. 357 Due to these problems, it is strongly recommended that this 358 mechanism is only used if a particular application must fulfil 359 strong requirements regarding establishment delay. Otherwise, the 360 ingress gateway should always perform overlap to en-bloc conversion. 362 6. Acknowledgments 364 The authors would like to thank Jonathan Rosenberg, Olli Hynonen and 365 Mike Pierce for their feedback on this document. 367 7. References 369 Camarillo/Roach/Peterson/Ong 7 370 Mapping of ISUP Overlap Signalling to SIP 372 [1] M. Handley, H. Schulzrinne, E. Schooler, J. Rosenberg, "SIP: 373 Session Initiation Protocol", RFC 2543, IETF; March 1999. 375 [2] "Application of the ISDN user part of CCITT signaling system No. 376 7 for international ISDN interconnections" ITU-T Q.767 377 recommendation, February 1991. 379 [3] G. Camarillo, A. Roach, J. Peterson, L. Ong, "ISUP to SIP 380 Mapping", draft-ietf-sip-isup-01.txt, IETF; May 2001. Work in 381 progress. 383 8. Authors� Addresses 385 Gonzalo Camarillo 386 Ericsson 387 Advanced Signalling Research Lab 388 FIN-02420 Jorvas 389 Finland 390 Phone: +358 9 299 3371 391 Fax: +358 9 299 3052 392 Email: Gonzalo.Camarillo@ericsson.com 394 Adam Roach 395 Ericsson Inc. 396 Mailstop L-04 397 851 International Pkwy. 398 Richardson, TX 75081 399 USA 400 Phone: +1 972-583-7594 401 Fax: +1 972-669-0154 402 E-Mail: Adam.Roach@ericsson.com 404 Jon Peterson 405 NeuStar, Inc 406 1800 Sutter St Suite 570 407 Concord, CA 94520 408 USA 409 E-Mail: jon.peterson@neustar.com 411 Lyndon Ong 412 Ciena 413 10480 Ridgeview Court 414 Cupertino, CA 95014 415 E-Mail: lyOng@ciena.com 417 Full Copyright Statement 419 Copyright (c) The Internet Society (2001). All Rights Reserved. 421 Camarillo/Roach/Peterson/Ong 8 422 Mapping of ISUP Overlap Signalling to SIP 424 This document and translations of it may be copied and furnished to 425 others, and derivative works that comment on or otherwise explain it 426 or assist in its implementation may be prepared, copied, published 427 and distributed, in whole or in part, without restriction of any 428 kind, provided that the above copyright notice and this paragraph 429 are included on all such copies and derivative works. However, this 430 document itself may not be modified in any way, such as by removing 431 the copyright notice or references to the Internet Society or other 432 Internet organizations, except as needed for the purpose of 433 developing Internet standards in which case the procedures for 434 copyrights defined in the Internet Standards process must be 435 followed, or as required to translate it into languages other than 436 English. 438 The limited permissions granted above are perpetual and will not be 439 revoked by the Internet Society or its successors or assigns. 441 This document and the information contained herein is provided on an 442 "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING 443 TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING 444 BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION 445 HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF 446 MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 448 Camarillo/Roach/Peterson/Ong 9