rfc9000v5.txt   rfc9000.txt 
skipping to change at line 5961 skipping to change at line 5961
First ACK Range: A variable-length integer indicating the number of First ACK Range: A variable-length integer indicating the number of
contiguous packets preceding the Largest Acknowledged that are contiguous packets preceding the Largest Acknowledged that are
being acknowledged. That is, the smallest packet acknowledged in being acknowledged. That is, the smallest packet acknowledged in
the range is determined by subtracting the First ACK Range value the range is determined by subtracting the First ACK Range value
from the Largest Acknowledged field. from the Largest Acknowledged field.
ACK Ranges: Contains additional ranges of packets that are ACK Ranges: Contains additional ranges of packets that are
alternately not acknowledged (Gap) and acknowledged (ACK Range); alternately not acknowledged (Gap) and acknowledged (ACK Range);
see Section 19.3.1. see Section 19.3.1.
ECN Counts: The three ECN Counts; see Section 19.3.2. ECN Counts: The three ECN counts; see Section 19.3.2.
19.3.1. ACK Ranges 19.3.1. ACK Ranges
Each ACK Range consists of alternating Gap and ACK Range Length Each ACK Range consists of alternating Gap and ACK Range Length
values in descending packet number order. ACK Ranges can be values in descending packet number order. ACK Ranges can be
repeated. The number of Gap and ACK Range Length values is repeated. The number of Gap and ACK Range Length values is
determined by the ACK Range Count field; one of each value is present determined by the ACK Range Count field; one of each value is present
for each value in the ACK Range Count field. for each value in the ACK Range Count field.
ACK Ranges are structured as shown in Figure 26. ACK Ranges are structured as shown in Figure 26.
skipping to change at line 6029 skipping to change at line 6029
largest = previous_smallest - gap - 2 largest = previous_smallest - gap - 2
If any computed packet number is negative, an endpoint MUST generate If any computed packet number is negative, an endpoint MUST generate
a connection error of type FRAME_ENCODING_ERROR. a connection error of type FRAME_ENCODING_ERROR.
19.3.2. ECN Counts 19.3.2. ECN Counts
The ACK frame uses the least significant bit of the type value (that The ACK frame uses the least significant bit of the type value (that
is, type 0x03) to indicate ECN feedback and report receipt of QUIC is, type 0x03) to indicate ECN feedback and report receipt of QUIC
packets with associated ECN codepoints of ECT(0), ECT(1), or ECN-CE packets with associated ECN codepoints of ECT(0), ECT(1), or ECN-CE
in the packet's IP header. ECN Counts are only present when the ACK in the packet's IP header. ECN counts are only present when the ACK
frame type is 0x03. frame type is 0x03.
When present, there are three ECN counts, as shown in Figure 27. When present, there are three ECN counts, as shown in Figure 27.
ECN Counts { ECN Counts {
ECT0 Count (i), ECT0 Count (i),
ECT1 Count (i), ECT1 Count (i),
ECN-CE Count (i), ECN-CE Count (i),
} }
Figure 27: ECN Count Format Figure 27: ECN Count Format
The three ECN Counts are: The ECN count fields are:
ECT0 Count: A variable-length integer representing the total number ECT0 Count: A variable-length integer representing the total number
of packets received with the ECT(0) codepoint in the packet number of packets received with the ECT(0) codepoint in the packet number
space of the ACK frame. space of the ACK frame.
ECT1 Count: A variable-length integer representing the total number ECT1 Count: A variable-length integer representing the total number
of packets received with the ECT(1) codepoint in the packet number of packets received with the ECT(1) codepoint in the packet number
space of the ACK frame. space of the ACK frame.
ECN-CE Count: A variable-length integer representing the total ECN-CE Count: A variable-length integer representing the total
skipping to change at line 8153 skipping to change at line 8153
[EARLY-DESIGN] [EARLY-DESIGN]
Roskind, J., "QUIC: Multiplexed Stream Transport Over Roskind, J., "QUIC: Multiplexed Stream Transport Over
UDP", 2 December 2013, <https://docs.google.com/document/ UDP", 2 December 2013, <https://docs.google.com/document/
d/1RNHkx_VvKWyWg6Lr8SZ-saqsQx7rFV-ev2jRFUoVD34/ d/1RNHkx_VvKWyWg6Lr8SZ-saqsQx7rFV-ev2jRFUoVD34/
edit?usp=sharing>. edit?usp=sharing>.
[GATEWAY] Hätönen, S., Nyrhinen, A., Eggert, L., Strowes, S., [GATEWAY] Hätönen, S., Nyrhinen, A., Eggert, L., Strowes, S.,
Sarolahti, P., and M. Kojo, "An experimental study of home Sarolahti, P., and M. Kojo, "An experimental study of home
gateway characteristics", Proceedings of the 10th ACM gateway characteristics", Proceedings of the 10th ACM
SIGCOMM conference on Internet measurement - IMC 10, SIGCOMM conference on Internet measurement - IMC '10,
DOI 10.1145/1879141.1879174, November 2010, DOI 10.1145/1879141.1879174, November 2010,
<https://doi.org/10.1145/1879141.1879174>. <https://doi.org/10.1145/1879141.1879174>.
[HTTP2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext [HTTP2] Belshe, M., Peon, R., and M. Thomson, Ed., "Hypertext
Transfer Protocol Version 2 (HTTP/2)", RFC 7540, Transfer Protocol Version 2 (HTTP/2)", RFC 7540,
DOI 10.17487/RFC7540, May 2015, DOI 10.17487/RFC7540, May 2015,
<https://www.rfc-editor.org/info/rfc7540>. <https://www.rfc-editor.org/info/rfc7540>.
[IPv6] Deering, S. and R. Hinden, "Internet Protocol, Version 6 [IPv6] Deering, S. and R. Hinden, "Internet Protocol, Version 6
(IPv6) Specification", STD 86, RFC 8200, (IPv6) Specification", STD 86, RFC 8200,
 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/