Retransmit bit for SCTP DATA, I-DATA and SACK
draft-proshin-tsvwg-sctp-rtx-bit-00

Document Type Active Internet-Draft (individual)
Last updated 2018-12-04
Stream (None)
Intended RFC status (None)
Formats plain text xml pdf html bibtex
Stream Stream state (No stream defined)
Consensus Boilerplate Unknown
RFC Editor Note (None)
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Internet Engineering Task Force                               M. Proshin
Internet-Draft                                                  Ericsson
Updates: 4960 (if approved)                            December 04, 2018
Intended status: Standards Track
Expires: June 7, 2019

             Retransmit bit for SCTP DATA, I-DATA and SACK
                  draft-proshin-tsvwg-sctp-rtx-bit-00

Abstract

   This document defines a method which helps an SCTP sender to
   understand when a received SACK acknowledges the original
   transmission of a TSN or its retransmission.  It is done by
   specifying a new bit, called Retransmit bit (R-bit), in the header of
   DATA, I-DATA and SACK chunks.  The bit is used when a TSN is
   retransmitted and returned back in the acknowledgement.

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 June 7, 2019.

Copyright Notice

   Copyright (c) 2018 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 Simplified BSD License text as described in Section 4.e of

Proshin                   Expires June 7, 2019                  [Page 1]
Internet-Draft                                             December 2018

   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Conventions . . . . . . . . . . . . . . . . . . . . . . . . .   3
   3.  Updates in SCTP Chunks Header . . . . . . . . . . . . . . . .   3
     3.1.  R-bit in DATA Chunk Header  . . . . . . . . . . . . . . .   3
     3.2.  R-bit in I-DATA Chunk Header  . . . . . . . . . . . . . .   3
     3.3.  R-bit in SACK Chunk Header  . . . . . . . . . . . . . . .   4
   4.  Procedures  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     4.1.  Negotiation . . . . . . . . . . . . . . . . . . . . . . .   5
     4.2.  Sender Side Considerations  . . . . . . . . . . . . . . .   6
     4.3.  Receiver Side Considerations  . . . . . . . . . . . . . .   7
     4.4.  Processing of SACK with and without R-bit . . . . . . . .   7
   5.  Interoperability Considerations . . . . . . . . . . . . . . .   8
   6.  Socket API Considerations . . . . . . . . . . . . . . . . . .   8
   7.  Acknowledgements  . . . . . . . . . . . . . . . . . . . . . .   8
   8.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8
   9.  Security Considerations . . . . . . . . . . . . . . . . . . .  10
   10. References  . . . . . . . . . . . . . . . . . . . . . . . . .  10
     10.1.  Normative References . . . . . . . . . . . . . . . . . .  10
     10.2.  Informative References . . . . . . . . . . . . . . . . .  10
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .  11

1.  Introduction

   SCTP which is defined in [RFC4960] is a reliable message-oriented
   protocol.  The SCTP sender splits user messages to DATA chunks and
   sends them to the receiver.  The SCTP receiver uses the SACK chunk to
   acknowledge incoming data.  The reliability in SCTP is achieved by
   the retransmission of DATA chunks which were not acknowledged.

   If a DATA chunk has been retransmitted at least once, at SACK
   reception SCTP cannot understand if the SACK was sent in response to
   the originally sent DATA or retransmitted one.  Thus, due to that
   ambiguity, [RFC4960] prohibits making RTT measurements.  Some other
   SCTP mechanisms such as loss recovery and congestion control are not
   accurate in that case either.

   This document describes a simple extension of the DATA and SACK
   chunks by a new bit, so called Retransmit bit (R-bit).  The sender
   sets the R-bit in the DATA chunk header when it retransmits a DATA
   and the receiver sets it in the SACK chunk header when a DATA with
   R-bit is acknowledged.  The sender can now distinguish when a SACK
   acknowledges the originally sent DATA or retransmitted one.  The
Show full document text