Re: [PATCH net-next] tcp: Accept ECT on SYN in the presence of RFC8311

From: David Miller
Date: Thu Apr 04 2019 - 20:44:22 EST


From: "Tilmans, Olivier (Nokia - BE/Antwerp)" <olivier.tilmans@xxxxxxxxxxxxxxxxxxx>
Date: Wed, 3 Apr 2019 13:49:42 +0000

> Linux currently disable ECN for incoming connections when the SYN
> requests ECN and the IP header has ECT(0)/ECT(1) set, as some
> networks were reportedly mangling the ToS byte, hence could later
> trigger false congestion notifications.
>
> RFC8311 §4.3 relaxes RFC3168's requirements such that ECT can be set
> one TCP control packets (including SYNs). The main benefit of this
> is the decreased probability of losing a SYN in a congested
> ECN-capable network (i.e., it avoids the initial 1s timeout).
> Additionally, this allows the development of newer TCP extensions,
> such as AccECN.
>
> This patch relaxes the previous check, by enabling ECN on incoming
> connections using SYN+ECT if at least one bit of the reserved flags
> of the TCP header is set. Such bit would indicate that the sender of
> the SYN is using a newer TCP feature than what the host implements,
> such as AccECN, and is thus implementing RFC8311. This enables
> end-hosts not supporting such extensions to still negociate ECN, and
> to have some of the benefits of using ECN on control packets.
>
> Signed-off-by: Olivier Tilmans <olivier.tilmans@xxxxxxxxxxxxxxxxxxx>
> Suggested-by: Bob Briscoe <research@xxxxxxxxxxxxxx>

Applied, thanks.