idnits 2.17.1 draft-dreibholz-tsvwg-sctp-nextgen-ideas-05.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 doesn't use any RFC 2119 keywords, yet seems to have RFC 2119 boilerplate text. -- The document date (January 23, 2017) is 2643 days in the past. Is this intentional? Checking references for intended status: Informational ---------------------------------------------------------------------------- ** Obsolete normative reference: RFC 4960 (ref. '8') (Obsoleted by RFC 9260) ** Obsolete normative reference: RFC 6096 (ref. '12') (Obsoleted by RFC 9260) ** Obsolete normative reference: RFC 7053 (ref. '16') (Obsoleted by RFC 9260) == Outdated reference: A later version (-27) exists of draft-tuexen-tsvwg-sctp-multipath-13 == Outdated reference: A later version (-37) exists of draft-hohendorf-secure-sctp-22 Summary: 3 errors (**), 0 flaws (~~), 4 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group T. Dreibholz 3 Internet-Draft Simula Research Laboratory 4 Intended status: Informational January 23, 2017 5 Expires: July 27, 2017 7 Ideas for a Next Generation of the Stream Control Transmission Protocol 8 (SCTP) 9 draft-dreibholz-tsvwg-sctp-nextgen-ideas-05.txt 11 Abstract 13 This document collects some ideas for a next generation of the Stream 14 Control Transmission Protocol (SCTP) for further discussion. It is a 15 result of lessons learned from more than one decade of SCTP 16 deployment. 18 Status of This Memo 20 This Internet-Draft is submitted in full conformance with the 21 provisions of BCP 78 and BCP 79. 23 Internet-Drafts are working documents of the Internet Engineering 24 Task Force (IETF). Note that other groups may also distribute 25 working documents as Internet-Drafts. The list of current Internet- 26 Drafts is at http://datatracker.ietf.org/drafts/current/. 28 Internet-Drafts are draft documents valid for a maximum of six months 29 and may be updated, replaced, or obsoleted by other documents at any 30 time. It is inappropriate to use Internet-Drafts as reference 31 material or to cite them other than as "work in progress." 33 This Internet-Draft will expire on July 27, 2017. 35 Copyright Notice 37 Copyright (c) 2017 IETF Trust and the persons identified as the 38 document authors. All rights reserved. 40 This document is subject to BCP 78 and the IETF Trust's Legal 41 Provisions Relating to IETF Documents 42 (http://trustee.ietf.org/license-info) in effect on the date of 43 publication of this document. Please review these documents 44 carefully, as they describe your rights and restrictions with respect 45 to this document. Code Components extracted from this document must 46 include Simplified BSD License text as described in Section 4.e of 47 the Trust Legal Provisions and are provided without warranty as 48 described in the Simplified BSD License. 50 Table of Contents 52 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 53 1.1. Abbreviations . . . . . . . . . . . . . . . . . . . . . . 2 54 1.2. Conventions . . . . . . . . . . . . . . . . . . . . . . . 2 55 1.3. Stream Control Transmission Protocol . . . . . . . . . . 2 56 1.4. Scope . . . . . . . . . . . . . . . . . . . . . . . . . . 2 57 2. What to Change in the Next Generation of SCTP? . . . . . . . 3 58 2.1. Security Considerations . . . . . . . . . . . . . . . . . 3 59 2.2. IANA Considerations . . . . . . . . . . . . . . . . . . . 4 60 3. Experimental Implementations . . . . . . . . . . . . . . . . 4 61 4. Testbed Platform . . . . . . . . . . . . . . . . . . . . . . 4 62 5. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 4 63 6. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 64 6.1. Normative References . . . . . . . . . . . . . . . . . . 4 65 6.2. Informative References . . . . . . . . . . . . . . . . . 6 66 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 8 68 1. Introduction 70 1.1. Abbreviations 72 o SCTP: Stream Control Transmission Protocol 74 1.2. Conventions 76 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 77 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 78 document are to be interpreted as described in [1]. 80 1.3. Stream Control Transmission Protocol 82 The Stream Control Transmission Protocol (SCTP) has been defined as 83 RFCs in [2], [3], [4], [5], [6], [7], [8], [9], [11], [12], [13], 84 [14], [15], [16]. There is also a detailed introduction provided by 85 [23] as well as lots of further information material on [20]. SCTP 86 is therefore not introduced in more detail here. 88 1.4. Scope 90 The scope of this document is to collect some ideas of what to 91 update/change for a next generation of the SCTP protocol. It is a 92 result of lessons learned from more than one decade of SCTP 93 deployment (see also [23]) as well as ongoing discussions on applying 94 SCTP for WebRTC Data Channels (as introduced in more detail in [19]). 96 2. What to Change in the Next Generation of SCTP? 98 o Make useful extensions part of the next generation core protocol 99 itself (that is, make their implementation a MUST): 101 * Partial Reliablility ([5]) 103 * Chunk Authentication ([7]) 105 * Partial Reliablility ([9]) 107 * Stream Reconfiguration ([14]) 109 * SACK Immediately ([16]) 111 o Consider additional features as part of the next generation core 112 protocol: 114 * Non-Renegable Selective Acknowledgments (NR-SACK) ([25]) 116 * Concurrent Multi-Path Transfer for SCTP (CMT-SCTP) ([17]) 118 o Chunk Authentication provides integrity but not confidentiality. 119 There could be a feature for encryption as well, for example like 120 [18]. Having encryption directly included inside the core 121 transport protocol may make it easier to use (less error-prone 122 work for application developers). 124 o SCTP assigns a fixed TSN per DATA chunk. The TSN cannot be 125 changed any more. That is, it is not possible for a middlebox to 126 split chunks into smaller pieces (for example, for hardware 127 offloading). For further discussion: may it be useful to consider 128 a different behavior? 130 o Definition of path: For SCTP, a path is defined by a remote 131 destination address. [21], [22] shows that CMT-SCTP performance 132 also depends on the local endpoint's outgoing links. Considering 133 each pair of local outgoing and remote incoming address as 134 different path may lead to improved performance in many Internet 135 scenarios. 137 2.1. Security Considerations 139 Security considerations for SCTP can be found in [10]. 141 2.2. IANA Considerations 143 This document introduces no additional considerations for IANA. 145 3. Experimental Implementations 147 An Open Source simulation model for SCTP is available for OMNeT++ 148 within the INET Framework. See [24] for the Git repository. For 149 documentation on the model, see [26] and [23]. This model can be 150 used to evaluate future ideas for SCTP. 152 4. Testbed Platform 154 NorNet is a large-scale and realistic Internet testbed platform with 155 support for multi-homing. A description of and introduction to 156 NorNet is provided in [27], [28], [29], [30]. Further information 157 can be found on the project website [31] at https://www.nntb.no. 159 5. Acknowledgments 161 The author would like to thank Martin Becke for discussions and 162 support. 164 6. References 166 6.1. Normative References 168 [1] Bradner, S., "Key words for use in RFCs to Indicate 169 Requirement Levels", BCP 14, RFC 2119, 170 DOI 10.17487/RFC2119, March 1997, 171 . 173 [2] Tuexen, M., Xie, Q., Stewart, R., Shore, M., Ong, L., 174 Loughney, J., and M. Stillman, "Requirements for Reliable 175 Server Pooling", RFC 3237, DOI 10.17487/RFC3237, January 176 2002, . 178 [3] Jungmaier, A., Rescorla, E., and M. Tuexen, "Transport 179 Layer Security over Stream Control Transmission Protocol", 180 RFC 3436, DOI 10.17487/RFC3436, December 2002, 181 . 183 [4] Bellovin, S., Ioannidis, J., Keromytis, A., and R. 184 Stewart, "On the Use of Stream Control Transmission 185 Protocol (SCTP) with IPsec", RFC 3554, 186 DOI 10.17487/RFC3554, July 2003, 187 . 189 [5] Stewart, R., Ramalho, M., Xie, Q., Tuexen, M., and P. 190 Conrad, "Stream Control Transmission Protocol (SCTP) 191 Partial Reliability Extension", RFC 3758, 192 DOI 10.17487/RFC3758, May 2004, 193 . 195 [6] Tuexen, M., Stewart, R., and P. Lei, "Padding Chunk and 196 Parameter for the Stream Control Transmission Protocol 197 (SCTP)", RFC 4820, DOI 10.17487/RFC4820, March 2007, 198 . 200 [7] Tuexen, M., Stewart, R., Lei, P., and E. Rescorla, 201 "Authenticated Chunks for the Stream Control Transmission 202 Protocol (SCTP)", RFC 4895, DOI 10.17487/RFC4895, August 203 2007, . 205 [8] Stewart, R., Ed., "Stream Control Transmission Protocol", 206 RFC 4960, DOI 10.17487/RFC4960, September 2007, 207 . 209 [9] Stewart, R., Xie, Q., Tuexen, M., Maruyama, S., and M. 210 Kozuka, "Stream Control Transmission Protocol (SCTP) 211 Dynamic Address Reconfiguration", RFC 5061, 212 DOI 10.17487/RFC5061, September 2007, 213 . 215 [10] Stillman, M., Ed., Gopal, R., Guttman, E., Sengodan, S., 216 and M. Holdrege, "Threats Introduced by Reliable Server 217 Pooling (RSerPool) and Requirements for Security in 218 Response to Threats", RFC 5355, DOI 10.17487/RFC5355, 219 September 2008, . 221 [11] Tuexen, M., Seggelmann, R., and E. Rescorla, "Datagram 222 Transport Layer Security (DTLS) for Stream Control 223 Transmission Protocol (SCTP)", RFC 6083, 224 DOI 10.17487/RFC6083, January 2011, 225 . 227 [12] Tuexen, M. and R. Stewart, "Stream Control Transmission 228 Protocol (SCTP) Chunk Flags Registration", RFC 6096, 229 DOI 10.17487/RFC6096, January 2011, 230 . 232 [13] Stewart, R., Tuexen, M., Poon, K., Lei, P., and V. 233 Yasevich, "Sockets API Extensions for the Stream Control 234 Transmission Protocol (SCTP)", RFC 6458, 235 DOI 10.17487/RFC6458, December 2011, 236 . 238 [14] Stewart, R., Tuexen, M., and P. Lei, "Stream Control 239 Transmission Protocol (SCTP) Stream Reconfiguration", 240 RFC 6525, DOI 10.17487/RFC6525, February 2012, 241 . 243 [15] Tuexen, M. and R. Stewart, "UDP Encapsulation of Stream 244 Control Transmission Protocol (SCTP) Packets for End-Host 245 to End-Host Communication", RFC 6951, 246 DOI 10.17487/RFC6951, May 2013, 247 . 249 [16] Tuexen, M., Ruengeler, I., and R. Stewart, "SACK- 250 IMMEDIATELY Extension for the Stream Control Transmission 251 Protocol", RFC 7053, DOI 10.17487/RFC7053, November 2013, 252 . 254 [17] Amer, P., Becke, M., Dreibholz, T., Ekiz, N., Iyengar, J., 255 Natarajan, P., Stewart, R., and M. Tuexen, "Load Sharing 256 for the Stream Control Transmission Protocol (SCTP)", 257 draft-tuexen-tsvwg-sctp-multipath-13 (work in progress), 258 December 2016. 260 [18] Hohendorf, C., Unurkhaan, E., and T. Dreibholz, "Secure 261 SCTP", draft-hohendorf-secure-sctp-22 (work in progress), 262 July 2016. 264 [19] Jesup, R., Loreto, S., and M. Tuexen, "WebRTC Data 265 Channels", draft-ietf-rtcweb-data-channel-13 (work in 266 progress), January 2015. 268 6.2. Informative References 270 [20] Dreibholz, T., "Thomas Dreibholz's SCTP Page", 271 Online: http://www.iem.uni-due.de/~dreibh/sctp/, 2016, 272 . 274 [21] Becke, M., Adhari, H., Rathgeb, E., Fa, F., Yang, X., and 275 X. Zhou, "Comparison of Multipath TCP and CMT-SCTP based 276 on Intercontinental Measurements", Proceedings of the 277 IEEE Global Communications Conference (GLOBECOM), December 278 2013, . 281 [22] Adhari, H., "Practical Experiences with an Inter- 282 Continental Testbed for Multi-Path Transport", 283 Proceedings of the 1st International NorNet Users 284 Workshop (NNUW-1), September 2013, 285 . 288 [23] Dreibholz, T., "Evaluation and Optimisation of Multi-Path 289 Transport using the Stream Control Transmission Protocol", 290 Habilitation Treatise, March 2012, 291 . 295 [24] Varga, A., "INET Framework for OMNeT++", 2014, 296 . 298 [25] Natarajan, P., Ekiz, N., Yilmaz, E., Amer, P., and J. 299 Iyengar, "Non-Renegable Selective Acknowledgments (NR- 300 SACKs) for SCTP", Proceedings of the 16th IEEE 301 International Conference on Network Protocols (ICNP) Pages 302 187-196, ISBN 978-1-4244-2506-8, 303 DOI 10.1109/ICNP.2008.4697037, October 2008, 304 . 307 [26] Ruengeler, I., "SCTP - Evaluating, Improving and Extending 308 the Protocol for Broader Deployment", December 2009, 309 . 313 [27] Gran, E., Dreibholz, T., and A. Kvalbein, "NorNet Core - A 314 Multi-Homed Research Testbed", Computer Networks, Special 315 Issue on Future Internet Testbeds Volume 61, Pages 75-87, 316 ISSN 1389-1286, DOI 10.1016/j.bjp.2013.12.035, March 2014, 317 . 320 [28] Dreibholz, T. and E. Gran, "Design and Implementation of 321 the NorNet Core Research Testbed for Multi-Homed Systems", 322 Proceedings of the 3nd International Workshop on Protocols 323 and Applications with Multi-Homing Support (PAMS) Pages 324 1094-1100, ISBN 978-0-7695-4952-1, 325 DOI 10.1109/WAINA.2013.71, March 2013, 326 . 330 [29] Dreibholz, T., "The NorNet Core Testbed - Introduction and 331 Status", Proceedings of the 1st International NorNet 332 Users Workshop (NNUW-1), September 2013, 333 . 336 [30] Dreibholz, T., "The NorNet Core Testbed - An Experiment 337 Tutorial", Proceedings of the 1st International NorNet 338 Users Workshop (NNUW-1), September 2013, 339 . 342 [31] Dreibholz, T., "NorNet -- A Real-World, Large-Scale Multi- 343 Homing Testbed", Online: https://www.nntb.no/, 2016, 344 . 346 Author's Address 348 Thomas Dreibholz 349 Simula Research Laboratory, Network Systems Group 350 Martin Linges vei 17 351 1364 Fornebu, Akershus 352 Norway 354 Phone: +47-6782-8200 355 Fax: +47-6782-8201 356 Email: dreibh@simula.no 357 URI: http://www.iem.uni-due.de/~dreibh/