Network Working Group T. Dreibholz Internet-Draft SimulaMet Intended status: Experimental R. Seggelmann Expires: 27 September 2023 Münster Univ. of App. Sciences M. Becke HAW Hamburg 26 March 2023 Sender Queue Info Option for the SCTP Socket API draft-dreibholz-tsvwg-sctpsocket-sqinfo-26 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 https://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 27 September 2023. Copyright Notice Copyright (c) 2023 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 (https://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 Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License. Dreibholz, et al. Expires 27 September 2023 [Page 1] Internet-Draft Sender Queue Info Option March 2023 Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 2 3. Sender Queue Info (SCTP_SQINFO) . . . . . . . . . . . . . . . 2 4. Testbed Platform . . . . . . . . . . . . . . . . . . . . . . 3 5. Security Considerations . . . . . . . . . . . . . . . . . . . 3 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 3 7. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 4 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 4 8.1. Normative References . . . . . . . . . . . . . . . . . . 4 8.2. Informative References . . . . . . . . . . . . . . . . . 4 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 6 1. Introduction This draft describes an extension to the SCTP sockets API (see [4], [6] [3]) 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 [7]. In particular, this API extension is useful when using the CMT-SCTP, CMT/RPv1-SCTP, CMT/RPv2-SCTP and MPTCP-like extensions (see [5], [13], [12], [9], [10], [11], [8]) for Concurrent Multipath Transfer (CMT) with SCTP. 2. Conventions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [1] [2] when, and only when, they appear in all capitals, as shown here. 3. 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 27 September 2023 [Page 2] Internet-Draft Sender Queue Info Option March 2023 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. 4. 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 [14], [15], some further information can be found on the project website [16]. 5. Security Considerations Security considerations for the SCTP sockets API are described by [4]. 6. IANA Considerations This document does not require IANA actions. Dreibholz, et al. Expires 27 September 2023 [Page 3] Internet-Draft Sender Queue Info Option March 2023 7. Acknowledgments The authors would like to thank Michael Tuexen and Irene Ruengeler for their support. 8. References 8.1. Normative References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997, . [2] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017, . [3] Stewart, R., Ed., "Stream Control Transmission Protocol", RFC 4960, DOI 10.17487/RFC4960, September 2007, . [4] Stewart, R., Tuexen, M., Poon, K., Lei, P., and V. Yasevich, "Sockets API Extensions for the Stream Control Transmission Protocol (SCTP)", RFC 6458, DOI 10.17487/RFC6458, December 2011, . [5] Amer, P. D., Becke, M., Dreibholz, T., Ekiz, N., Iyengar, J., Natarajan, P., Stewart, R. R., and M. Tuexen, "Load Sharing for the Stream Control Transmission Protocol (SCTP)", Work in Progress, Internet-Draft, draft-tuexen- tsvwg-sctp-multipath-23, 9 February 2022, . [6] Dreibholz, T., Becke, M., and H. Adhari, "SCTP Socket API Extensions for Concurrent Multipath Transfer", Work in Progress, Internet-Draft, draft-dreibholz-tsvwg- sctpsocket-multipath-23, 6 September 2021, . 8.2. Informative References [7] Dreibholz, T., Seggelmann, R., Tüxen, M., and E. P. Rathgeb, "Transmission Scheduling Optimizations for Concurrent Multipath Transfer", Proceedings of the 8th Dreibholz, et al. Expires 27 September 2023 [Page 4] Internet-Draft Sender Queue Info Option March 2023 International Workshop on Protocols for Future, Large- Scale and Diverse Network Transports (PFLDNeT) Volume 8, ISSN 2074-5168, 29 November 2010, . [8] Dreibholz, T., Becke, M., Rathgeb, E. P., and M. Tüxen, "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, 7 December 2010, . [9] Adhari, H., Dreibholz, T., Becke, M., Rathgeb, E. P., and M. Tüxen, "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, 22 March 2011, . [10] Dreibholz, T., Becke, M., Adhari, H., and E. P. 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, 16 June 2011, . [11] Dreibholz, T., Becke, M., Adhari, H., and E. P. 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, 16 September 2011, . [12] Dreibholz, T., Adhari, H., Becke, M., and E. P. 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, Dreibholz, et al. Expires 27 September 2023 [Page 5] Internet-Draft Sender Queue Info Option March 2023 DOI 10.1109/WAINA.2012.186, 29 March 2012, . [13] Dreibholz, T., "Evaluation and Optimisation of Multi-Path Transport using the Stream Control Transmission Protocol", Habilitation Treatise, 13 March 2012, . [14] Dreibholz, T. and E. G. 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, 27 March 2013, . [15] Gran, E. G., Dreibholz, T., and A. Kvalbein, "NorNet Core – A Multi-Homed Research Testbed", Computer Networks, Special Issue on Future Internet Testbeds Volume 61, Pages 75-87, ISSN 1389-1286, DOI 10.1016/j.bjp.2013.12.035, 14 March 2014, . [16] Dreibholz, T., "NorNet – A Real-World, Large-Scale Multi- Homing Testbed", 2022, . Authors' Addresses Thomas Dreibholz Simula Metropolitan Centre for Digital Engineering Pilestredet 52 0167 Oslo Norway Email: dreibh@simula.no URI: https://www.simula.no/people/dreibh Robin Seggelmann Münster University of Applied Sciences Stegerwaldstraße 39 48565 Steinfurt Germany Email: seggelmann@fh-muenster.de Dreibholz, et al. Expires 27 September 2023 [Page 6] Internet-Draft Sender Queue Info Option March 2023 Martin Becke HAW Hamburg, Informatics Department Berliner Tor 7 20099 Hamburg Germany Phone: +49-40-42875-8104 Email: martin.becke@haw-hamburg.de URI: http://www.scimbe.de/about.html Dreibholz, et al. Expires 27 September 2023 [Page 7]