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