idnits 2.17.1 draft-ietf-sipcore-refer-clarifications-00.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- -- The draft header indicates that this document updates RFC3515, but the abstract doesn't seem to directly say this. It does mention RFC3515 though, so this could be OK. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year (Using the creation date from RFC3515, updated by this document, for RFC5378 checks: 2001-08-28) -- 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 (November 21, 2014) is 3437 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) -- Possible downref: Normative reference to a draft: ref. 'I-D.roach-sipcore-6665-clarification' == Outdated reference: A later version (-03) exists of draft-ietf-sipcore-refer-explicit-subscription-00 Summary: 0 errors (**), 0 flaws (~~), 2 warnings (==), 4 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group R. Sparks 3 Internet-Draft Oracle 4 Updates: 3515 (if approved) A. Roach 5 Intended status: Standards Track Mozilla 6 Expires: May 25, 2015 November 21, 2014 8 Clarifications for the use of REFER with RFC6665 9 draft-ietf-sipcore-refer-clarifications-00 11 Abstract 13 The SIP REFER method relies on the SIP-Specific Event Notification 14 Framework. That framework was revised by RFC6665. This document 15 highlights the implications of the requirement changes in RFC6665, 16 and updates the definition of the REFER method, RFC3515, to clarify 17 and disambiguate the impact of those changes. 19 Status of This Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on May 25, 2015. 36 Copyright Notice 38 Copyright (c) 2014 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (http://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Conventions and Definitions . . . . . . . . . . . . . . . . . 2 54 2. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 55 3. Use of GRUU is mandatory . . . . . . . . . . . . . . . . . . 2 56 4. Dialog reuse is prohibited . . . . . . . . . . . . . . . . . 3 57 5. Security Considerations . . . . . . . . . . . . . . . . . . . 4 58 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 59 7. Changelog . . . . . . . . . . . . . . . . . . . . . . . . . . 4 60 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 61 8.1. Normative References . . . . . . . . . . . . . . . . . . 4 62 8.2. Informative References . . . . . . . . . . . . . . . . . 5 63 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 65 1. Conventions and Definitions 67 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 68 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 69 document are to be interpreted as described in [RFC2119]. 71 2. Introduction 73 The SIP REFER method relies on the SIP-Specific Event Notification 74 Framework. That framework was revised by [RFC6665]. This document 75 highlights the implications of the requirement changes in RFC6665, 76 and updates [RFC3515] to clarify and disambiguate the impact of those 77 changes. 79 Accepting a REFER request (without invoking extensions) results in an 80 implicit SIP-Events subscription. If that REFER was part of an 81 existing dialog, the implicit subscription creates a new, problematic 82 dialog-usage within that dialog [RFC5057]. The "norefersub" 83 extension defined in [RFC4488] asks to suppress this implicit 84 subscription, but cannot prevent its creation. 86 3. Use of GRUU is mandatory 88 Section 4.5.1 of [RFC6665] makes GRUU [RFC5627] mandatory for 89 notifiers to implement and use as the local target in the 90 subscription created by the REFER request. 92 A user agent accepting a REFER that creates a subscription MUST 93 populate its Contact header field with a GRUU. 95 A UA that will accept a REFER request needs to include a GRUU in the 96 Contact header field of all dialog-forming and target-refresh methods 97 (such as INVITE) [I-D.roach-sipcore-6665-clarification]. This 98 ensures that out-of-dialog REFER requests corresponding to any 99 resulting INVITE dialogs arrive at this UA. Future extensions (such 100 as [I-D.ietf-sipcore-refer-explicit-subscription]) might relax this 101 requirement by defining a REFER request that cannot create an 102 implicit subscription, thus not causing the accepting UA to become an 103 RFC6665 notifier in the context of this dialog. 105 4. Dialog reuse is prohibited 107 If a peer in an existing dialog has provided a GRUU as its Contact, 108 sending a REFER that might result in an additional dialog usage 109 within that dialog is prohibited. This is a direct consequence of 110 [RFC6665] requiring the use of GRUU, and the requirements in section 111 4.5.2 of that document. 113 A user agent constructing a REFER request that could result in an 114 implicit subscription in a dialog MUST build it as an out-of-dialog 115 message as defined in [RFC3261], unless the remote endpoint is an 116 older, pre-RFC6665 implementation (as determined by the absence of a 117 GRUU in the remote target). Thus, the REFER request will have no tag 118 parameter in its To: header field. 120 Using the "norefersub" option tag [RFC4488] does not change this 121 requirement, even if used in a "Require" header field. Even if the 122 recipient supports the "norefersub" mechanism, and accepts the 123 request with the option tag in the "Require" header field, it is 124 allowed to return a "Refer-Sub" header field with a value of "true" 125 in the response, and create an implicit subscription. 127 A user agent wishing to identify an existing dialog (such as for call 128 transfer as defined in [RFC5589]) MUST use the "Target-Dialog" 129 extension defined in [RFC4538] to do so, and user agents accepting 130 REFER MUST be able to process that extension in requests they 131 receive. 133 If a user agent can be certain that no implicit subscription will be 134 created as a result of sending a REFER request (such as by requiring 135 an extension that disallows any such subscription 136 [I-D.ietf-sipcore-refer-explicit-subscription]), the REFER request 137 MAY be sent within an existing dialog. Such a REFER will be 138 constructed with its Contact header field populated with the dialog's 139 Local URI as specified in section 12 of [RFC3261]. 141 As described in section 4.5.2 of [RFC6665], there are cases where a 142 user agent may fall back to sharing existing dialogs for backwards- 143 compatibility purposes. This applies to REFER only when the peer has 144 not provided a GRUU as its Contact in the existing dialog (i.e. when 145 the peer is a pre-RFC6665 implementation). 147 5. Security Considerations 149 This document introduces no new security considerations directly. 150 The updated considerations in [RFC6665] apply to the implicit 151 subscription created by an accepted REFER request. 153 6. IANA Considerations 155 This document has no actions for IANA. 157 7. Changelog 159 RFC Editor - please remove this section when formatting this document 160 as an RFC 162 draft-sparks-sipcore-refer-clarifications-05 to draft-ietf- 163 sipcore-refer-clarifications-00 165 Attempted to improve the accuracy of the Abstract and 166 Introduction without diluting the essential point of the 167 document. 169 Added an informative reference to RFC5057. 171 Adjusted text to more reflect what RFC6665 (as clarified by 172 draft-roach-sipcore-6665-clarification) actually requires, and 173 added a normative reference to that clarification draft. 174 Specifically, the requirement for the _sender_ of a REFER to 175 use a GRUU as its local targetwas removed. 177 Clarified why the explicit-subscription extensions relieve an 178 in-dialog REFERer from the 6665 requirements for using GRUU as 179 its contact in the INVITE dialog. 181 8. References 183 8.1. Normative References 185 [I-D.roach-sipcore-6665-clarification] 186 Roach, A., "A clarification on the use of Globally 187 Routable User Agent URIs (GRUUs) in the Session Initiation 188 Protocol (SIP) Event Notification Framework", draft-roach- 189 sipcore-6665-clarification-00 (work in progress), October 190 2014. 192 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 193 Requirement Levels", BCP 14, RFC 2119, March 1997. 195 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 196 A., Peterson, J., Sparks, R., Handley, M., and E. 197 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 198 June 2002. 200 [RFC3515] Sparks, R., "The Session Initiation Protocol (SIP) Refer 201 Method", RFC 3515, April 2003. 203 [RFC4538] Rosenberg, J., "Request Authorization through Dialog 204 Identification in the Session Initiation Protocol (SIP)", 205 RFC 4538, June 2006. 207 [RFC5627] Rosenberg, J., "Obtaining and Using Globally Routable User 208 Agent URIs (GRUUs) in the Session Initiation Protocol 209 (SIP)", RFC 5627, October 2009. 211 [RFC6665] Roach, A., "SIP-Specific Event Notification", RFC 6665, 212 July 2012. 214 8.2. Informative References 216 [I-D.ietf-sipcore-refer-explicit-subscription] 217 Sparks, R., "Explicit Subscriptions for the REFER Method", 218 draft-ietf-sipcore-refer-explicit-subscription-00 (work in 219 progress), November 2014. 221 [RFC4488] Levin, O., "Suppression of Session Initiation Protocol 222 (SIP) REFER Method Implicit Subscription", RFC 4488, May 223 2006. 225 [RFC5057] Sparks, R., "Multiple Dialog Usages in the Session 226 Initiation Protocol", RFC 5057, November 2007. 228 [RFC5589] Sparks, R., Johnston, A., and D. Petrie, "Session 229 Initiation Protocol (SIP) Call Control - Transfer", BCP 230 149, RFC 5589, June 2009. 232 Authors' Addresses 234 Robert Sparks 235 Oracle 236 7460 Warren Parkway 237 Suite 300 238 Frisco, Texas 75034 239 US 241 Email: rjsparks@nostrum.com 243 Adam Roach 244 Mozilla 245 Dallas, TX 246 US 248 Phone: +1 650 903 0800 x863 249 Email: adam@nostrum.com