idnits 2.17.1 draft-ietf-manet-dlep-pause-extension-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 : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (February 9, 2017) is 2630 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) == Outdated reference: A later version (-29) exists of draft-ietf-manet-dlep-24 == Outdated reference: A later version (-07) exists of draft-ietf-manet-credit-window-04 Summary: 0 errors (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group B. Cheng 3 Internet-Draft D. Wiggins 4 Intended status: Standards Track Lincoln Laboratory 5 Expires: August 13, 2017 L. Berger, Ed. 6 LabN Consulting, L.L.C. 7 February 9, 2017 9 DLEP Control Plane Based Pause Extension 10 draft-ietf-manet-dlep-pause-extension-00 12 Abstract 14 This document defines an extension to the DLEP protocol that enables 15 a simple control plane based flow control mechanism. 17 Status of This Memo 19 This Internet-Draft is submitted in full conformance with the 20 provisions of BCP 78 and BCP 79. 22 Internet-Drafts are working documents of the Internet Engineering 23 Task Force (IETF). Note that other groups may also distribute 24 working documents as Internet-Drafts. The list of current Internet- 25 Drafts is at http://datatracker.ietf.org/drafts/current/. 27 Internet-Drafts are draft documents valid for a maximum of six months 28 and may be updated, replaced, or obsoleted by other documents at any 29 time. It is inappropriate to use Internet-Drafts as reference 30 material or to cite them other than as "work in progress." 32 This Internet-Draft will expire on August 13, 2017. 34 Copyright Notice 36 Copyright (c) 2017 IETF Trust and the persons identified as the 37 document authors. All rights reserved. 39 This document is subject to BCP 78 and the IETF Trust's Legal 40 Provisions Relating to IETF Documents 41 (http://trustee.ietf.org/license-info) in effect on the date of 42 publication of this document. Please review these documents 43 carefully, as they describe your rights and restrictions with respect 44 to this document. Code Components extracted from this document must 45 include Simplified BSD License text as described in Section 4.e of 46 the Trust Legal Provisions and are provided without warranty as 47 described in the Simplified BSD License. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 52 1.1. Key Words . . . . . . . . . . . . . . . . . . . . . . . . 2 53 2. Extension Usage and Identification . . . . . . . . . . . . . 3 54 3. Extension Data Items . . . . . . . . . . . . . . . . . . . . 3 55 3.1. Queue Parameters . . . . . . . . . . . . . . . . . . . . 3 56 3.2. Pause . . . . . . . . . . . . . . . . . . . . . . . . . . 5 57 3.3. Restart . . . . . . . . . . . . . . . . . . . . . . . . . 7 58 4. Security Considerations . . . . . . . . . . . . . . . . . . . 8 59 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 8 60 5.1. Extension Type Value . . . . . . . . . . . . . . . . . . 8 61 5.2. Data Item Values . . . . . . . . . . . . . . . . . . . . 8 62 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 9 63 6.1. Normative References . . . . . . . . . . . . . . . . . . 9 64 6.2. Informative References . . . . . . . . . . . . . . . . . 9 65 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 9 67 1. Introduction 69 The Dynamic Link Event Protocol (DLEP) is defined in 70 [I-D.ietf-manet-dlep]. It provides the exchange of link related 71 control information between DLEP peers. DLEP peers are comprised of 72 a modem and a router. DLEP defines a base set of mechanisms as well 73 as support for possible extensions. This document defines one such 74 extension. 76 The base DLEP specification does not include any flow control 77 capability. There are various flow control possible, e.g., see 78 [I-D.ietf-manet-credit-window]. The extension defined in this 79 document supports flow control based on explicit messages sent via 80 DLEP by a modem to indicate when a router should hold off sending 81 traffic, and when it should resume. The extension also optionally 82 supports DSCP (differentiated services codepoint) aware, see 83 [RFC2475], flow control. The extension defined in this document is 84 referred to as "Control Plane Pause". 86 This document defines a new DLEP Extension Type Value in Section 2 87 which is used to indicate the use of the extension, and three new 88 DLEP Data Items in Section 3. 90 1.1. Key Words 92 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 93 "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and 94 "OPTIONAL" in this document are to be interpreted as described in BCP 95 14, RFC 2119 [RFC2119]. 97 2. Extension Usage and Identification 99 The use of the Control Plane Pause Extension SHOULD be configurable. 100 To indicate that the Control Plane Pause Extension is to be used, an 101 implementation MUST include the Control Plane Pause Extension Type 102 Value in the Extensions Supported Data Item. The Extensions 103 Supported Data Item is sent and processed according to 104 [I-D.ietf-manet-dlep]. 106 The Control Plane Pause Extension Type Value is TBA1, see Section 5. 108 3. Extension Data Items 110 Three data items are defined by this extension. The Queue Parameters 111 Data Item is used by a modem to provide information on the DSCPs it 112 uses in forwarding. The Pause Data Item is used by a modem to 113 indicate when a router should cease sending packets and the Restart 114 Data Item is used by a modem to indicate when a router can resume 115 sending packets. 117 3.1. Queue Parameters 119 The Queue Parameters Data Item is used by a modem to indicate DSCP 120 values that may be independently paused. This data item MUST be 121 included in a Session Initialization Response Message that also 122 contains the Control Plane Pause Extension Type Value in the 123 Extensions Supported Data Item. Updates to these parameters MAY be 124 sent by a modem by including the data item in Session Update 125 Messages. 127 The Queue Parameters Data Item identifies DSCPs based on groups of 128 logical queues. The number of logical queues is variable as is the 129 number of DSCPs associated with each queue. A queue size (in bytes) 130 is provided for informational purposes. An implementation that does 131 not support DSCPs would indicate 1 queue with 0 DSCPs, and the number 132 of bytes that may be in its associated link transmit queue. 134 The format of the Queue Parameters Data Item is: 136 0 1 2 3 137 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 138 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 139 | Data Item Type | Length | 140 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 141 | Num Queues | Scale | Reserved | 142 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 143 |Num DSCPs Q0(0)| Queue Size Q0 | 144 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 145 | Num DSCPs Q1 | Queue Size Q1 | 146 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 147 | Num DSCPs Q2 | Queue Size Q2 | 148 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 149 : ... : 150 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 151 | Num DSCPs Qn | Queue Size Qn | 152 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 153 | DS Field Q1 | DS Field Q1 | DS Field Q1 | DS Field Q2 | 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 155 : ... | DS Field Qn | 156 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 158 Data Item Type: TBA2 160 Length: Variable 162 Per [I-D.ietf-manet-dlep] Length is the number of octets in the 163 data item, excluding the Type and Length fields. 165 Num Queues: 167 An 8-bit unsigned integer indicating the number of queues 168 represented in the data item. This field MUST contain a value of 169 at least one (1). Note that this number is one larger than the 170 largest queue index value included in the data item. 172 Scale: 174 An 4-bit unsigned integer indicating the scale used in the Queue 175 Size fields. The valid values are: 177 Value Scale 178 ------------ 179 0 B - Bytes (Octets) 180 1 KB - Kilobytes (B/1024) 181 2 MB - Megabytes (KB/1024) 182 3 GB - Gigabytes (MB/1024) 184 Reserved: 186 MUST be set to zero by the sender (a modem) and ignored by the 187 receiver (a router). 189 Num DSCPs Qn: 191 An 8-bit unsigned integer indicating the number of DSCPs 192 associated with the indexed queue. Other than the special case 193 covered in the next paragraph, this field MUST contain a value of 194 at least one (1). Queue indexes start at zero (0) and the maximum 195 queue index "Qn" is one less than the value carried in the Num 196 Queues field. Queue indexes are implicit in the position in the 197 data item. 199 Queue index zero "Q0" is a special case. It is used for any 200 traffic that does not carry a DSCP value represented in the data 201 item. Therefore the value of the Queue index zero field, "Num 202 DSCPs Q0", field MUST be zero (0). 204 Queue Size Qn: 206 A 24-bit unsigned integer representing the size, in the octet 207 scale indicated by the Scale field, of the queue supporting 208 traffic with the DSCPs associated with the queue index. 210 DS Field Qn: 212 The data item contains a sequence of 8 bit DS Fields. The 213 position in the sequence identifies the associated queue index. 214 The number of DS Fields present should equal the sum of all Num 215 DSCPs field values. 217 The DS Field structure is the same as [RFC2474]. 219 0 1 2 3 4 5 6 7 220 +---+---+---+---+---+---+---+---+ 221 | DSCP | CU | 222 +---+---+---+---+---+---+---+---+ 224 DSCP: differentiated services codepoint 225 CU: currently unused, MUST be zero 227 3.2. Pause 229 The Pause Data Item is used by a modem to indicate to its peer that 230 traffic is to be suppressed. An example of when a modem might send 231 this data item is when an internal queue length exceeds a particular 232 threshold. 234 A modem may indicate that traffic is to be suppressed on a device 235 wide or destination specific basis. An example of when a modem might 236 use device wide indications is when output queues are shared across 237 all destinations, and destination specific might be used when per 238 destination queuing is used. To indicate that suppression applies to 239 all destinations, a modem MAY send the Pause Data Item in a Session 240 Update Message. To indicate that suppression applies to a particular 241 destination a modem MAY send the Pause Data Item in a Destination 242 Update Message. 244 Each Pause Data Item identifies the traffic to be suppressed by the 245 Queue Index defined by Section 3.1, which in turn indicates a set of 246 traffic identified by DSCPs. The special value of 255 is used to 247 indicate that all traffic is to be suppressed. 249 While there is no restriction on the number of Messages containing 250 Pause Data Item that may be sent by a modem, a modem SHOULD include 251 multiple queue indexes in the same message when possible. 253 A router which receives the Pause Data Item MUST cease sending the 254 identified traffic to the modem. This may of course translate into 255 the router's queues exceeding their own thresholds. 257 The format of the Pause Data Item is: 259 0 1 2 3 260 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 261 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 262 | Data Item Type | Length | 263 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 264 | Queue Index | ... : 265 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 266 : ... | Queue Index | 267 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 269 [LB note: a list of Queue Indexes is now supported as is special 270 value 255.] 272 Data Item Type: TBA3 274 Length: Variable 276 Per [I-D.ietf-manet-dlep] Length is the number of octets in the 277 data item, excluding the Type and Length fields. It will equal 278 the number of Queue Index fields carried in the data item. 280 Queue Index: 282 One or more 8-bit fields used to indicate a queue index defined by 283 a Queue Parameters Data Item. The special value of 255 indicates 284 all traffic is to be suppressed to the modem, when the data item 285 is carried in a Session Update Message, or a destination, when the 286 data item is carried in Destination Update Message. 288 3.3. Restart 290 The Restart Data Item is used by a modem to indicate to its peer that 291 transmission of previously suppressed traffic may be resumed. An 292 example of when a modem might send this data item is when an internal 293 queue length drops below a particular threshold. 295 The sending of this data item parallels the Pause Data Item, see the 296 previous section, and follows the same rules. This includes that to 297 indicate that transmission can resume to all destinations, a modem 298 MAY send the Restart Data Item in a Session Update Message. It also 299 includes that to indicate that transmission can resume to a 300 particular destination a modem MAY send the Pause Restart Item in a 301 Destination Update Message. Finally, the same rules apply to queue 302 indexes. 304 A router which receives the Restart Data Item SHOULD resume 305 transmission of the identified traffic to the modem. 307 The format of the Restart Data Item matches the Pause Data Item and 308 is: 310 0 1 2 3 311 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 312 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 313 | Data Item Type | Length | 314 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 315 | Queue Index | ... : 316 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 317 : ... | Queue Index | 318 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 320 Data Item Type: TBA4 322 Length: See Section 3.2. 324 Queue Index: See Section 3.2. 326 4. Security Considerations 328 The extension introduces a new mechanism for flow control between a 329 router and modem using the DLEP protocol. The extension does not 330 inherently introduce any additional threats above those documented in 331 [I-D.ietf-manet-dlep]. The approach taken to Security in that 332 document applies equally when running the extension defined in this 333 document. 335 5. IANA Considerations 337 This document requests the assignment of 4 values by IANA. All 338 assignments are to registries defined by [I-D.ietf-manet-dlep]. 340 5.1. Extension Type Value 342 This document requests 1 new assignment to the DLEP Extensions 343 Registry named "Extension Tyoe Values" in the range with the 344 "Specification Required" policy. The requested value is as follows: 346 +------+---------------------+ 347 | Code | Description | 348 +------+---------------------+ 349 | TBA1 | Control Plane Pause | 350 +------+---------------------+ 352 Table 1: Requested Extension Type Value 354 5.2. Data Item Values 356 This document requests 3 new assignments to the DLEP Data Item 357 Registry named "Data Item Values" in the range with the 358 "Specification Required" policy. The requested values are as 359 follows: 361 +-----------+------------------+ 362 | Type Code | Description | 363 +-----------+------------------+ 364 | TBA2 | Queue Parameters | 365 | | | 366 | TBA3 | Pause | 367 | | | 368 | TBA4 | Restart | 369 +-----------+------------------+ 371 Table 2: Requested Data Item Values 373 6. References 375 6.1. Normative References 377 [I-D.ietf-manet-dlep] 378 Ratliff, S., Jury, S., Satterwhite, D., Taylor, R., and (. 379 (Unknown), "Dynamic Link Exchange Protocol (DLEP)", draft- 380 ietf-manet-dlep-24 (work in progress), July 2016. 382 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 383 Requirement Levels", BCP 14, RFC 2119, 384 DOI 10.17487/RFC2119, March 1997, 385 . 387 6.2. Informative References 389 [I-D.ietf-manet-credit-window] 390 Ratliff, S., "Credit Windowing extension for DLEP", draft- 391 ietf-manet-credit-window-04 (work in progress), April 392 2016. 394 [RFC2474] Nichols, K., Blake, S., Baker, F., and D. Black, 395 "Definition of the Differentiated Services Field (DS 396 Field) in the IPv4 and IPv6 Headers", RFC 2474, 397 DOI 10.17487/RFC2474, December 1998, 398 . 400 [RFC2475] Blake, S., Black, D., Carlson, M., Davies, E., Wang, Z., 401 and W. Weiss, "An Architecture for Differentiated 402 Services", RFC 2475, DOI 10.17487/RFC2475, December 1998, 403 . 405 Authors' Addresses 407 Bow-Nan Cheng 408 Lincoln Laboratory 409 Massachusetts Institute of Technology 410 244 Wood Street 411 Lexington, MA 02420-9108 413 Email: bcheng@ll.mit.edu 414 David Wiggins 415 Lincoln Laboratory 416 Massachusetts Institute of Technology 417 244 Wood Street 418 Lexington, MA 02420-9108 420 Email: David.Wiggins@ll.mit.edu 422 Lou Berger (editor) 423 LabN Consulting, L.L.C. 425 Email: lberger@labn.net