Network Working Group T. Dreibholz Internet-Draft Simula Research Laboratory Intended status: Experimental R. Seggelmann Expires: January 6, 2016 Muenster Univ. of App. Sciences M. Becke University of Duisburg-Essen July 05, 2015 Sender Queue Info Option for the SCTP Socket API draft-dreibholz-tsvwg-sctpsocket-sqinfo-10.txt Abstract This document describes an extension to the SCTP sockets API for querying information about the sender queue. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on January 6, 2016. Copyright Notice Copyright (c) 2015 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Dreibholz, et al. Expires January 6, 2016 [Page 1] Internet-Draft Sender Queue Info Option July 2015 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 1.1. Conventions . . . . . . . . . . . . . . . . . . . . . . . 2 2. Sender Queue Info (SCTP_SQINFO) . . . . . . . . . . . . . . . 2 3. Testbed Platform . . . . . . . . . . . . . . . . . . . . . . 3 4. Security Considerations . . . . . . . . . . . . . . . . . . . 3 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 4 6. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 4 7. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 7.1. Normative References . . . . . . . . . . . . . . . . . . 4 7.2. Informative References . . . . . . . . . . . . . . . . . 4 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 1. Introduction This draft describes an extension to the SCTP sockets API (see [RFC6458], [I-D.dreibholz-tsvwg-sctpsocket-multipath] [RFC4960]) which allows an application to query the sender queue utilization per stream. This information is necessary for applications to make efficient use of a mapping of streams to dissimilar paths. A detailed description including simulation results can be found in [PFLDNeT2010]. In particular, this API extension is useful when using the CMT-SCTP, CMT/RPv1-SCTP, CMT/RPv2-SCTP and MPTCP-like extensions (see [I-D.tuexen-tsvwg-sctp-multipath], [Dre2012], [PAMS2012], [PAMS2011], [ConTEL2011], [SoftCOM2011], [Globecom2010]) for Concurrent Multipath Transfer (CMT) with SCTP. 1.1. Conventions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119]. 2. Sender Queue Info (SCTP_SQINFO) This socket option obtains the maximum sender queue size (in bytes), the current total sender queue utilization (in bytes) as well as the current utilization per stream (in bytes). The following structure is used to obtain the sender queue information: Dreibholz, et al. Expires January 6, 2016 [Page 2] Internet-Draft Sender Queue Info Option July 2015 struct sctp_sndqueueinfo { sctp_assoc_t sq_assoc_id; uint32_t sq_queue_limit; uint32_t sq_total_queued; uint32_t sq_number_of_streams; uint32_t sq_queued_on_stream[]; }; sq_assoc_id: This parameter is ignored for one-to-one style sockets. For one-to-many style sockets this parameter indicates which association the user is performing an action upon. It is an error to use SCTP_{CURRENT|ALL}_ASSOC in sq_assoc_id. sq_queue_limit: This field gives the maximum sender queue size in bytes. sq_total_queued: This field gives the current total sender queue utilization in bytes. sq_number_of_streams: This field gives the number of outgoing streams. That is, it will contain the number of valid sq_queued_on_stream entries. sq_queued_on_stream: This array gives the current number of bytes queued for the streams 0 to sq_number_of_streams-1. Note, that the caller of getsockopt() MUST provide a sctp_sndqueueinfo structure which can hold at least as many sq_queued_on_stream entries as the association's number of outgoing streams. Otherwise, the getsockopt() call will fail and return an error. 3. Testbed Platform A large-scale and realistic Internet testbed platform with support for the multi-homing feature of the underlying SCTP protocol is NorNet. A description of NorNet is provided in [PAMS2013-NorNet], some further information can be found on the project website [NorNet-Website]. 4. Security Considerations Security considerations for the SCTP sockets API are described by [RFC6458]. Dreibholz, et al. Expires January 6, 2016 [Page 3] Internet-Draft Sender Queue Info Option July 2015 5. IANA Considerations This document does not require IANA actions. 6. Acknowledgments The authors would like to thank Michael Tuexen and Irene Ruengeler for their support. 7. References 7.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4960] Stewart, R., "Stream Control Transmission Protocol", RFC 4960, September 2007. [RFC6458] Stewart, R., Tuexen, M., Poon, K., Lei, P., and V. Yasevich, "Sockets API Extensions for the Stream Control Transmission Protocol (SCTP)", RFC 6458, December 2011. [I-D.tuexen-tsvwg-sctp-multipath] Amer, P., Becke, M., Dreibholz, T., Ekiz, N., Jana, J., Natarajan, P., Stewart, R., and M. Tuexen, "Load Sharing for the Stream Control Transmission Protocol (SCTP)", draft-tuexen-tsvwg-sctp-multipath-10 (work in progress), May 2015. [I-D.dreibholz-tsvwg-sctpsocket-multipath] Dreibholz, T., Becke, M., and H. Adhari, "SCTP Socket API Extensions for Concurrent Multipath Transfer", draft- dreibholz-tsvwg-sctpsocket-multipath-09 (work in progress), January 2015. 7.2. Informative References [PFLDNeT2010] Dreibholz, T., Seggelmann, R., Tuexen, M., and E. Rathgeb, "Transmission Scheduling Optimizations for Concurrent Multipath Transfer", Proceedings of the 8th International Workshop on Protocols for Future, Large-Scale and Diverse Network Transports (PFLDNeT) Volume 8, ISSN 2074-5168, November 2010, . Dreibholz, et al. Expires January 6, 2016 [Page 4] Internet-Draft Sender Queue Info Option July 2015 [Globecom2010] Dreibholz, T., Becke, M., Rathgeb, E., and M. Tuexen, "On the Use of Concurrent Multipath Transfer over Asymmetric Paths", Proceedings of the IEEE Global Communications Conference (GLOBECOM) ISBN 978-1-4244-5637-6, DOI 10.1109/ GLOCOM.2010.5683579, December 2010, . [PAMS2011] Adhari, H., Dreibholz, T., Becke, M., Rathgeb, E., and M. Tuexen, "Evaluation of Concurrent Multipath Transfer over Dissimilar Paths", Proceedings of the 1st International Workshop on Protocols and Applications with Multi-Homing Support (PAMS) Pages 708-714, ISBN 978-0-7695-4338-3, DOI 10.1109/WAINA.2011.92, March 2011, . [ConTEL2011] Dreibholz, T., Becke, M., Adhari, H., and E. Rathgeb, "On the Impact of Congestion Control for Concurrent Multipath Transfer on the Transport Layer", Proceedings of the 11th IEEE International Conference on Telecommunications (ConTEL) Pages 397-404, ISBN 978-953-184-152-8, June 2011, . [SoftCOM2011] Dreibholz, T., Becke, M., Adhari, H., and E. Rathgeb, "Evaluation of A New Multipath Congestion Control Scheme using the NetPerfMeter Tool-Chain", Proceedings of the 19th IEEE International Conference on Software, Telecommunications and Computer Networks (SoftCOM) Pages 1-6, ISBN 978-953-290-027-9, September 2011, . [PAMS2012] Dreibholz, T., Adhari, H., Becke, M., and E. Rathgeb, "Simulation and Experimental Evaluation of Multipath Congestion Control Strategies", Proceedings of the 2nd International Workshop on Protocols and Applications with Multi-Homing Support (PAMS) ISBN 978-0-7695-4652-0, DOI 10.1109/WAINA.2012.186, March 2012, . Dreibholz, et al. Expires January 6, 2016 [Page 5] Internet-Draft Sender Queue Info Option July 2015 [Dre2012] Dreibholz, T., "Evaluation and Optimisation of Multi-Path Transport using the Stream Control Transmission Protocol", Habilitation Treatise, March 2012, . [PAMS2013-NorNet] Dreibholz, T. and E. Gran, "Design and Implementation of the NorNet Core Research Testbed for Multi-Homed Systems", Proceedings of the 3nd International Workshop on Protocols and Applications with Multi-Homing Support (PAMS) Pages 1094-1100, ISBN 978-0-7695-4952-1, DOI 10.1109/ WAINA.2013.71, March 2013, . [NorNet-Website] Dreibholz, T., "NorNet -- A Real-World, Large-Scale Multi- Homing Testbed", Online: https://www.nntb.no/, 2014, . Authors' Addresses Thomas Dreibholz Simula Research Laboratory, Network Systems Group Martin Linges vei 17 1364 Fornebu, Akershus Norway Phone: +47-6782-8200 Fax: +47-6782-8201 Email: dreibh@simula.no URI: http://www.iem.uni-due.de/~dreibh/ Robin Seggelmann Muenster University of Applied Sciences Stegerwaldstrasse 39 48565 Steinfurt, Nordrhein-Westfalen Germany Email: seggelmann@fh-muenster.de Dreibholz, et al. Expires January 6, 2016 [Page 6] Internet-Draft Sender Queue Info Option July 2015 Martin Becke University of Duisburg-Essen, Institute for Experimental Mathematics Ellernstrasse 29 45326 Essen, Nordrhein-Westfalen Germany Phone: +49-201-183-7667 Fax: +49-201-183-7673 Email: martin.becke@uni-due.de Dreibholz, et al. Expires January 6, 2016 [Page 7]