rfc9331_term_short.txt | rfc9332_term_reordered.txt | |||
---|---|---|---|---|
Classic Congestion Control: A congestion control behaviour that can | Classic Congestion Control: A congestion control behaviour that can | |||
coexist with standard Reno [RFC5681] without causing significantly | coexist with standard Reno [RFC5681] without causing significantly | |||
negative impact on its flow rate [RFC5033]. With Classic | negative impact on its flow rate [RFC5033]. With Classic | |||
congestion controls, such as Reno or CUBIC, because the flow rate | congestion controls, such as Reno or CUBIC, because the flow rate | |||
has scaled since TCP congestion control was first designed in | has scaled since TCP congestion control was first designed in | |||
1988, it now takes hundreds of round trips (and growing) to | 1988, it now takes hundreds of round trips (and growing) to | |||
recover after a congestion signal (whether a loss or an ECN mark) | recover after a congestion signal (whether a loss or an ECN mark) | |||
as shown in the examples in Section 5.1 of the L4S architecture | as shown in the examples in Section 5.1 of the L4S architecture | |||
[RFC9330] and in [RFC3649]. Therefore, control of queuing and | [RFC9330] and in [RFC3649]. Therefore, control of queuing and | |||
utilization becomes very slack, and the slightest disturbances | utilization becomes very slack, and the slightest disturbances | |||
(e.g., from new flows starting) prevent a high rate from being | (e.g., from new flows starting) prevent a high rate from being | |||
attained. | attained. | |||
Scalable Congestion Control: A congestion control where the average | Scalable Congestion Control: A congestion control where the average | |||
time from one congestion signal to the next (the recovery time) | time from one congestion signal to the next (the recovery time) | |||
remains invariant as the flow rate scales, all other factors being | remains invariant as the flow rate scales, all other factors being | |||
equal. This maintains the same degree of control over queuing and | equal. This maintains the same degree of control over queuing and | |||
utilization whatever the flow rate, as well as ensuring that high | utilization whatever the flow rate, as well as ensuring that high | |||
throughput is robust to disturbances. For instance, DCTCP | throughput is robust to disturbances. For instance, DCTCP | |||
averages 2 congestion signals per round trip, whatever the flow | averages 2 congestion signals per round trip, whatever the flow | |||
rate, as do other recently developed Scalable congestion controls, | rate, as do other recently developed Scalable congestion controls, | |||
e.g., Relentless TCP [RELENTLESS], TCP Prague [PRAGUE-CC] | e.g., Relentless TCP [RELENTLESS], TCP Prague [PRAGUE-CC] | |||
[PragueLinux], BBRv2 [BBRv2] [BBR-CC], and the L4S variant of | [PragueLinux], BBRv2 [BBRv2] [BBR-CC], and the L4S variant of | |||
SCReAM for real-time media [SCReAM] [RFC8298]. See Section 4.3 | SCReAM for real-time media [SCReAM] [RFC8298]. For the public | |||
for more explanation. | Internet, a Scalable transport has to comply with the requirements | |||
in Section 4 of [RFC9331] (aka the 'Prague L4S requirements'). | ||||
Classic Service: The Classic service is intended for all the | Classic Service: The Classic service is intended for all the | |||
congestion control behaviours that coexist with Reno [RFC5681] | congestion control behaviours that coexist with Reno [RFC5681] | |||
(e.g., Reno itself, CUBIC [RFC8312], Compound [CTCP], and TFRC | (e.g., Reno itself, CUBIC [RFC8312], and TFRC [RFC5348]). The | |||
[RFC5348]). The term 'Classic queue' means a queue providing the | term 'Classic queue' means a queue providing the Classic service. | |||
Classic service. | ||||
Low Latency, Low Loss, and Scalable throughput (L4S) service: The | Low Latency, Low Loss, and Scalable throughput (L4S) service: The | |||
'L4S' service is intended for traffic from Scalable congestion | 'L4S' service is intended for traffic from Scalable congestion | |||
control algorithms, such as the Prague congestion control | control algorithms, such as the Prague congestion control | |||
[PRAGUE-CC], which was derived from DCTCP [RFC8257]. The L4S | [PRAGUE-CC], which was derived from DCTCP [RFC8257]. The L4S | |||
service is for more general traffic than just Prague -- it allows | service is for more general traffic than just Prague -- it allows | |||
the set of congestion controls with similar scaling properties to | the set of congestion controls with similar scaling properties to | |||
Prague to evolve, such as the examples listed above (Relentless | Prague to evolve, such as the examples listed below (Relentless | |||
and SCReAM). The term 'L4S queue' means a queue providing the L4S | and SCReAM). The term 'L4S queue' means a queue providing the L4S | |||
service. | service. | |||
C: Abbreviation for Classic, e.g., when used as a subscript. | ||||
L: Abbreviation for L4S, e.g., when used as a subscript. | ||||
The terms Classic or L4S can also qualify other nouns, such as | The terms Classic or L4S can also qualify other nouns, such as | |||
'queue', 'codepoint', 'identifier', 'classification', 'packet', | 'queue', 'codepoint', 'identifier', 'classification', 'packet', | |||
and 'flow'. For example, an L4S packet means a packet with an L4S | and 'flow'. For example, an L4S packet means a packet with an L4S | |||
identifier sent from an L4S congestion control. | identifier sent from an L4S congestion control. | |||
Both Classic and L4S services can cope with a proportion of | Both Classic and L4S services can cope with a proportion of | |||
unresponsive or less-responsive traffic as well but, in the L4S | unresponsive or less-responsive traffic as well but, in the L4S | |||
case, its rate has to be smooth enough or low enough to not build | case, its rate has to be smooth enough or low enough to not build | |||
a queue (e.g., DNS, Voice over IP (VoIP), game sync datagrams, | a queue (e.g., DNS, Voice over IP (VoIP), game sync datagrams, | |||
etc.). | etc.). The DualQ Coupled AQM behaviour is defined to be similar | |||
to a single First-In, First-Out (FIFO) queue with respect to | ||||
unresponsive and overload traffic. | ||||
TESTING | TESTING | |||
Reno-friendly: The subset of Classic traffic that is friendly to the | Reno-friendly: The subset of Classic traffic that is friendly to the | |||
standard Reno congestion control defined for TCP in [RFC5681]. | standard Reno congestion control defined for TCP in [RFC5681]. | |||
The TFRC spec [RFC5348] indirectly implies that 'friendly' is | The TFRC spec [RFC5348] indirectly implies that 'friendly' is | |||
defined as "generally within a factor of two of the sending rate | defined as "generally within a factor of two of the sending rate | |||
of a TCP flow under the same conditions". Reno-friendly is used | of a TCP flow under the same conditions". Reno-friendly is used | |||
here in place of 'TCP-friendly', given the latter has become | here in place of 'TCP-friendly', given the latter has become | |||
imprecise, because the TCP protocol is now used with so many | imprecise, because the TCP protocol is now used with so many | |||
different congestion control behaviours, and Reno is used in non- | different congestion control behaviours, and Reno is used in non- | |||
TCP transports, such as QUIC [RFC9000]. | TCP transports, such as QUIC [RFC9000]. | |||
Classic ECN: The original Explicit Congestion Notification (ECN) | Classic ECN: The original Explicit Congestion Notification (ECN) | |||
protocol [RFC3168] that requires ECN signals to be treated as | protocol [RFC3168] that requires ECN signals to be treated as | |||
equivalent to drops, both when generated in the network and when | equivalent to drops, both when generated in the network and when | |||
responded to by the sender. | responded to by the sender. | |||
L4S uses the ECN field as an identifier with the names for the | L4S uses the ECN field as an identifier with the names for the | |||
four codepoints of the 2-bit IP-ECN field unchanged from those | four codepoints of the 2-bit IP-ECN field unchanged from those | |||
defined in the ECN spec [RFC3168], i.e., Not-ECT, ECT(0), ECT(1), | defined in the ECN spec [RFC3168], i.e., Not-ECT, ECT(0), ECT(1), | |||
and CE, where ECT stands for ECN-Capable Transport and CE stands | and CE, where ECT stands for ECN-Capable Transport and CE stands | |||
for Congestion Experienced. A packet marked with the CE codepoint | for Congestion Experienced. A packet marked with the CE codepoint | |||
is termed 'ECN-marked' or sometimes just 'marked' where the | is termed 'ECN-marked' or sometimes just 'marked' where the | |||
context makes ECN obvious. | context makes ECN obvious. | |||
Site: A home, mobile device, small enterprise, or campus where the | ||||
network bottleneck is typically the access link to the site. Not | ||||
all network arrangements fit this model, but it is a useful, | ||||
widely applicable generalization. | ||||
End of changes. 6 change blocks. | ||||
7 lines changed or deleted | 13 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. |