RFC 2582 (rfc2582) - Page 1 of 12


The NewReno Modification to TCP's Fast Recovery Algorithm



Alternative Format: Original Text Document



Network Working Group                                           S. Floyd
Request for Comments: 2582                                         ACIRI
Category: Experimental                                      T. Henderson
                                                           U.C. Berkeley
                                                              April 1999


       The NewReno Modification to TCP's Fast Recovery Algorithm

Status of this Memo

   This memo defines an Experimental Protocol for the Internet
   community.  It does not specify an Internet standard of any kind.
   Discussion and suggestions for improvement are requested.
   Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (1999).  All Rights Reserved.

Abstract

   RFC 2001 [RFC 2001] documents the following four intertwined TCP
   congestion control algorithms: Slow Start, Congestion Avoidance, Fast
   Retransmit, and Fast Recovery.  RFC 2581 [RFC 2581] explicitly allows
   certain modifications of these algorithms, including modifications
   that use the TCP Selective Acknowledgement (SACK) option [MMFR96],
   and modifications that respond to "partial acknowledgments" (ACKs
   which cover new data, but not all the data outstanding when loss was
   detected) in the absence of SACK.  This document describes a specific
   algorithm for responding to partial acknowledgments, referred to as
   NewReno.  This response to partial acknowledgments was first proposed
   by Janey Hoe in [Hoe95].

1. Introduction

   For the typical implementation of the TCP Fast Recovery algorithm
   described in [RFC 2581] (first implemented in the 1990 BSD Reno
   release, and referred to as the Reno algorithm in [FF96]), the TCP
   data sender only retransmits a packet after a retransmit timeout has
   occurred, or after three duplicate acknowledgements have arrived
   triggering the Fast Retransmit algorithm.  A single retransmit
   timeout might result in the retransmission of several data packets,
   but each invocation of the Reno Fast Retransmit algorithm leads to
   the retransmission of only a single data packet.






Floyd & Henderson             Experimental