Page MenuHomeFreeBSD

Add access to TOS(ECN bits) byte in TCP RACK

Authored by on Sun, Nov 17, 3:36 AM.



ECN-based congestion control and signaling mechanisms
need access to the IP ECN header bits.

Current developments around L4S and SCE, and
making use of the Accurate ECN feedback signal, as well
as AckCC need access to the IP ECN bits while processing
every packet on a tcp session.

This diff adds the iptos byte to be readily available
during all states of a TCP session, to ready the
foundations to add AccECN / SCE to the RACK stack.

This also enables the possibility to implement ECN++, which
is marking SYN and SYN,ACK packets with ECT(0) or ECT(1).
In the L4S and DCTCP context, as well as SCE, it can
happen that non-ECT-marked SYNs are exposed to less
preferable treatment by the network queues, potentially
leading to delayed session establishment.

This diff does not introduce any function change.

Diff Detail

rS FreeBSD src repository
Automatic diff as part of commit; lint not applicable.
Automatic diff as part of commit; unit tests not applicable.

Event Timeline created this revision.Sun, Nov 17, 3:36 AM edited the summary of this revision. (Show Details)Sun, Nov 17, 4:18 AM
rgrimes accepted this revision.Sun, Nov 17, 4:24 AM
rrs accepted this revision.Thu, Nov 21, 9:19 PM
This revision is now accepted and ready to land.Thu, Nov 21, 9:19 PM
tuexen accepted this revision.Sun, Dec 1, 6:47 PM

Don't we need a similar change to BBR?