rfc9002v4.txt   rfc9002.txt 
skipping to change at line 49 skipping to change at line 49
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction 1. Introduction
2. Conventions and Definitions 2. Conventions and Definitions
3. Design of the QUIC Transmission Machinery 3. Design of the QUIC Transmission Machinery
4. Relevant Differences Between QUIC and TCP 4. Relevant Differences between QUIC and TCP
4.1. Separate Packet Number Spaces 4.1. Separate Packet Number Spaces
4.2. Monotonically Increasing Packet Numbers 4.2. Monotonically Increasing Packet Numbers
4.3. Clearer Loss Epoch 4.3. Clearer Loss Epoch
4.4. No Reneging 4.4. No Reneging
4.5. More ACK Ranges 4.5. More ACK Ranges
4.6. Explicit Correction For Delayed Acknowledgments 4.6. Explicit Correction for Delayed Acknowledgments
4.7. Probe Timeout Replaces RTO and TLP 4.7. Probe Timeout Replaces RTO and TLP
4.8. The Minimum Congestion Window Is Two Packets 4.8. The Minimum Congestion Window Is Two Packets
4.9. Handshake Packets Are Not Special 4.9. Handshake Packets Are Not Special
5. Estimating the Round-Trip Time 5. Estimating the Round-Trip Time
5.1. Generating RTT Samples 5.1. Generating RTT Samples
5.2. Estimating min_rtt 5.2. Estimating min_rtt
5.3. Estimating smoothed_rtt and rttvar 5.3. Estimating smoothed_rtt and rttvar
6. Loss Detection 6. Loss Detection
6.1. Acknowledgment-Based Detection 6.1. Acknowledgment-Based Detection
6.1.1. Packet Threshold 6.1.1. Packet Threshold
skipping to change at line 188 skipping to change at line 188
performance of the QUIC handshake and use shorter timers for performance of the QUIC handshake and use shorter timers for
acknowledgment. acknowledgment.
* Packets containing frames besides ACK or CONNECTION_CLOSE frames * Packets containing frames besides ACK or CONNECTION_CLOSE frames
count toward congestion control limits and are considered to be in count toward congestion control limits and are considered to be in
flight. flight.
* PADDING frames cause packets to contribute toward bytes in flight * PADDING frames cause packets to contribute toward bytes in flight
without directly causing an acknowledgment to be sent. without directly causing an acknowledgment to be sent.
4. Relevant Differences Between QUIC and TCP 4. Relevant Differences between QUIC and TCP
Readers familiar with TCP's loss detection and congestion control Readers familiar with TCP's loss detection and congestion control
will find algorithms here that parallel well-known TCP ones. will find algorithms here that parallel well-known TCP ones.
However, protocol differences between QUIC and TCP contribute to However, protocol differences between QUIC and TCP contribute to
algorithmic differences. These protocol differences are briefly algorithmic differences. These protocol differences are briefly
described below. described below.
4.1. Separate Packet Number Spaces 4.1. Separate Packet Number Spaces
QUIC uses separate packet number spaces for each encryption level, QUIC uses separate packet number spaces for each encryption level,
skipping to change at line 256 skipping to change at line 256
implementations on both sides and reducing memory pressure on the implementations on both sides and reducing memory pressure on the
sender. sender.
4.5. More ACK Ranges 4.5. More ACK Ranges
QUIC supports many ACK ranges, as opposed to TCP's three SACK ranges. QUIC supports many ACK ranges, as opposed to TCP's three SACK ranges.
In high-loss environments, this speeds recovery, reduces spurious In high-loss environments, this speeds recovery, reduces spurious
retransmits, and ensures forward progress without relying on retransmits, and ensures forward progress without relying on
timeouts. timeouts.
4.6. Explicit Correction For Delayed Acknowledgments 4.6. Explicit Correction for Delayed Acknowledgments
QUIC endpoints measure the delay incurred between when a packet is QUIC endpoints measure the delay incurred between when a packet is
received and when the corresponding acknowledgment is sent, allowing received and when the corresponding acknowledgment is sent, allowing
a peer to maintain a more accurate RTT estimate; see Section 13.2 of a peer to maintain a more accurate RTT estimate; see Section 13.2 of
[QUIC-TRANSPORT]. [QUIC-TRANSPORT].
4.7. Probe Timeout Replaces RTO and TLP 4.7. Probe Timeout Replaces RTO and TLP
QUIC uses a probe timeout (PTO; see Section 6.2), with a timer based QUIC uses a probe timeout (PTO; see Section 6.2), with a timer based
on TCP's retransmission timeout (RTO) computation; see [RFC6298]. on TCP's retransmission timeout (RTO) computation; see [RFC6298].
 End of changes. 4 change blocks. 
4 lines changed or deleted 4 lines changed or added

This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/