rfc9768v5.txt   rfc9768.txt 
skipping to change at line 176 skipping to change at line 176
supporting the pre-existing TCP congestion controllers that use just supporting the pre-existing TCP congestion controllers that use just
one feedback signal per round. Congestion control is the term the one feedback signal per round. Congestion control is the term the
IETF uses to describe data rate management. It is the algorithm that IETF uses to describe data rate management. It is the algorithm that
a sender uses to optimize its sending rate so that it transmits data a sender uses to optimize its sending rate so that it transmits data
as fast as the network can carry it, but no faster. A fuller as fast as the network can carry it, but no faster. A fuller
description of the motivation for this specification is given in the description of the motivation for this specification is given in the
associated requirements document [RFC7560]. associated requirements document [RFC7560].
This document specifies a Standards Track scheme for ECN feedback in This document specifies a Standards Track scheme for ECN feedback in
the TCP header to provide more than one feedback signal per RTT. It the TCP header to provide more than one feedback signal per RTT. It
is called the more "Accurate ECN" feedback scheme, or AccECN for is called the more "Accurate ECN feedback" scheme, or AccECN for
short. This document updates RFC 3168 with respect to negotiation short. This document updates RFC 3168 with respect to negotiation
and use of the feedback scheme for TCP. All aspects of RFC 3168 and use of the feedback scheme for TCP. All aspects of RFC 3168
other than the TCP feedback scheme and its negotiation remain other than the TCP feedback scheme and its negotiation remain
unchanged by this specification. In particular, the definition of unchanged by this specification. In particular, the definition of
ECN at the IP layer is unaffected. Section 4 details the aspects of ECN at the IP layer is unaffected. Section 4 details the aspects of
RFC 3168 that are updated by this document. RFC 3168 that are updated by this document.
This document uses the term "Classic ECN feedback" when it needs to This document uses the term "Classic ECN feedback" when it needs to
distinguish the TCP/ECN feedback scheme defined in [RFC3168] from the distinguish the TCP/ECN feedback scheme defined in [RFC3168] from the
AccECN TCP feedback scheme. AccECN is intended to offer a complete AccECN TCP feedback scheme. AccECN is intended to offer a complete
skipping to change at line 269 skipping to change at line 269
The requirements document recognizes that a protocol as ubiquitous as The requirements document recognizes that a protocol as ubiquitous as
TCP needs to be able to serve as-yet-unspecified requirements. TCP needs to be able to serve as-yet-unspecified requirements.
Therefore, an AccECN receiver acts as a generic (mechanistic) Therefore, an AccECN receiver acts as a generic (mechanistic)
reflector of congestion information with the aim that new sender reflector of congestion information with the aim that new sender
behaviours can be deployed unilaterally (see Section 2.5) in the behaviours can be deployed unilaterally (see Section 2.5) in the
future. future.
1.3. Terminology 1.3. Terminology
AccECN: The more Accurate ECN feedback scheme is called AccECN for Accurate ECN feedback: The more Accurate ECN feedback scheme is
short. called AccECN for short.
Classic ECN: The ECN protocol specified in [RFC3168]. Classic ECN: The ECN protocol specified in [RFC3168].
Classic ECN feedback: The feedback aspect of the ECN protocol Classic ECN feedback: The feedback aspect of the ECN protocol
specified in [RFC3168], including generation, encoding, specified in [RFC3168], including generation, encoding,
transmission and decoding of feedback, but not the Data Sender's transmission and decoding of feedback, but not the Data Sender's
subsequent response to that feedback. subsequent response to that feedback.
ACK: A TCP acknowledgement, with or without a data payload (ACK=1). ACK: A TCP acknowledgement, with or without a data payload (ACK=1).
skipping to change at line 1950 skipping to change at line 1950
If a host is in the mode that assumes incoming AccECN Options are not If a host is in the mode that assumes incoming AccECN Options are not
available, but it receives an AccECN Option at any later point during available, but it receives an AccECN Option at any later point during
the connection, this clearly indicates that AccECN Options are no the connection, this clearly indicates that AccECN Options are no
longer blocked on the respective path, and the AccECN endpoint MAY longer blocked on the respective path, and the AccECN endpoint MAY
switch out of the mode that assumes AccECN Options are not available switch out of the mode that assumes AccECN Options are not available
for this half-connection. for this half-connection.
3.2.3.2.4. Test for Zeroing of the AccECN Option 3.2.3.2.4. Test for Zeroing of the AccECN Option
For a related test for invalid initialization of the ACE field, see For a related test for invalid initialization of the ACE field, see
Section 3.2.2.4 Section 3.2.2.4.
Section 3.2.1 required the Data Receiver to initialize the r.e0b and Section 3.2.1 required the Data Receiver to initialize the r.e0b and
r.e1b counters to a non-zero value. Therefore, in either direction r.e1b counters to a non-zero value. Therefore, in either direction
the initial value of the EE0B field or EE1B field in an AccECN Option the initial value of the EE0B field or EE1B field in an AccECN Option
(if one exists) ought to be non-zero. If AccECN has been negotiated: (if one exists) ought to be non-zero. If AccECN has been negotiated:
* the TCP Server MAY check that the initial value of the EE0B field * the TCP Server MAY check that the initial value of the EE0B field
or the EE1B field is non-zero in the first segment that or the EE1B field is non-zero in the first segment that
acknowledges sequence space that at least covers the ISN plus 1. acknowledges sequence space that at least covers the ISN plus 1.
If it runs a test and either initial value is zero, the Server If it runs a test and either initial value is zero, the Server
 End of changes. 3 change blocks. 
4 lines changed or deleted 4 lines changed or added

This html diff was produced by rfcdiff 1.48.