One document matched: draft-dreibholz-tsvwg-sctpsocket-sqinfo-03.xml


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<!-- $Id: draft-dreibholz-tsvwg-sctpsocket-sqinfo-02.xml 3343 2011-10-26 19:57:52Z dreibh $ -->

<?rfc toc="yes"?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>
<?rfc strict="no" ?>
<?rfc symrefs="yes" ?>

<rfc category="exp" ipr="trust200902" docName="draft-dreibholz-tsvwg-sctpsocket-sqinfo-03.txt">

<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>


<front>

<title abbrev="Sender Queue Info Option">
Sender Queue Info Option for the SCTP Socket API
</title>

<!-- ************** THOMAS DREIBHOLZ *************** -->
<author initials="T." surname="Dreibholz" fullname="Thomas Dreibholz">
<organization abbrev="University of Duisburg-Essen">University of Duisburg-Essen, Institute for Experimental Mathematics</organization>
<address>
<postal>
   <street>Ellernstrasse 29</street>
   <city>45326 Essen</city>
   <region>Nordrhein-Westfalen</region>
   <country>Germany</country>
</postal>
<phone>+49-201-1837637</phone>
<facsimile>+49-201-1837673</facsimile>
<email>dreibh@iem.uni-due.de</email>
<uri>http://www.iem.uni-due.de/~dreibh/</uri>
</address>
</author>

<!-- ************** ROBIN SEGGELMANN *************** -->
<author initials="R." surname="Seggelmann" fullname="Robin Seggelmann">
<organization abbrev="Muenster Univ. of Applied Sciences">Muenster University of Applied Sciences</organization>
<address>
    <postal>
        <street>Stegerwaldstrasse 39</street>
        <city>48565 Steinfurt</city>
        <region>Nordrhein-Westfalen</region>
        <country>Germany</country>
    </postal>
    <email>seggelmann@fh-muenster.de</email>
</address>
</author>

<!-- ************** MARTIN BECKE *************** -->
<author initials="M." surname="Becke" fullname="Martin Becke">
<organization abbrev="University of Duisburg-Essen">
              University of Duisburg-Essen,
              Institute for Experimental Mathematics</organization>
<address>
    <postal>
        <street>Ellernstrasse 29</street>
        <city>45326 Essen</city>
        <region>Nordrhein-Westfalen</region>
        <country>Germany</country>
    </postal>
    <phone>+49-201-183-7667</phone>
    <facsimile>+49-201-183-7673</facsimile>
    <email>martin.becke@uni-due.de</email>
</address>
</author>

<date day="10" month="March" year="2012" />
<keyword>Internet-Draft</keyword>

<abstract>
<t>This document describes an extension to the SCTP sockets API for querying information about the sender queue.</t>
</abstract>


</front>

<middle>


<section title="Introduction">
<t>This draft describes an extension to the SCTP sockets API (see <xref target="RFC6458" />, <xref target="I-D.dreibholz-tsvwg-sctpsocket-multipath" /> <xref target="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 <xref target="PFLDNeT2010" />.</t>

<t>In particular, this API extension is useful when using the CMT-SCTP, CMT/RPv1-SCTP, CMT/RPv2-SCTP and MPTCP-like extensions (see <xref target="I-D.tuexen-tsvwg-sctp-multipath" />, <xref target="Globecom2010" />, <xref target="PAMS2011" />, <xref target="ConTEL2011" />, <xref target="SoftCOM2011" />, <xref target="PAMS2012" />) for Concurrent Multipath Transfer (CMT) with SCTP.</t>


<section title="Conventions">
<t>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
   <xref target="RFC2119"/>.</t>
</section>
</section>


<section title="Sender Queue Info (SCTP_SQINFO)">

<t>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).</t>

<t>The following structure is used to obtain the sender queue information:
<figure>
<artwork>
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[];
};
</artwork>
</figure>

<list style="hanging">
<t hangText="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.</t>
<t hangText="sq_queue_limit:">
This field gives the maximum sender queue size in bytes.</t>
<t hangText="sq_total_queued:">
This field gives the current total sender queue utilization in bytes.</t>
<t hangText="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.
</t>
<t hangText="sq_queued_on_stream:">
This array gives the current number of bytes queued for the streams 0 to sq_number_of_streams-1.</t>
</list></t>

<t>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.</t>

</section>


<section title="Security Considerations">
<t>Security considerations for the SCTP sockets API are described by
   <xref target="RFC6458" />.</t>
</section>


<section title="IANA Considerations">
<t>This document does not require IANA actions.</t>
</section>

<section title="Acknowledgments">
<t>
   The authors would like to thank
   Michael Tuexen and Irene Ruengeler
   for their support.
</t>
</section>


</middle>


<back>

<references title='Normative References'>
 <?rfc include="reference.RFC.2119" ?>
 <?rfc include="reference.RFC.4960" ?>
 <?rfc include="reference.RFC.6458" ?>
 <?rfc include="reference.I-D.tuexen-tsvwg-sctp-multipath" ?>
 <?rfc include="reference.I-D.dreibholz-tsvwg-sctpsocket-multipath" ?>
</references>

<references title='Informative References'>
 <?rfc include="reference.PFLDNeT2010" ?>
 <?rfc include="reference.Globecom2010" ?>
 <?rfc include="reference.PAMS2011" ?>
 <?rfc include="reference.ConTEL2011" ?>
 <?rfc include="reference.SoftCOM2011" ?>
 <?rfc include="reference.PAMS2012" ?>
</references>

</back>


</rfc>

PAFTECH AB 2003-20262026-04-24 06:01:39