Page MenuHomeFreeBSD

tcp: account sent/received IP ECN markings independently
ClosedPublic

Authored by rscheff on Nov 9 2022, 11:22 AM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Nov 28, 10:55 AM
Unknown Object (File)
Tue, Nov 26, 2:13 PM
Unknown Object (File)
Thu, Nov 21, 10:21 AM
Unknown Object (File)
Nov 2 2024, 5:58 AM
Unknown Object (File)
Nov 2 2024, 5:58 AM
Unknown Object (File)
Nov 2 2024, 5:57 AM
Unknown Object (File)
Nov 2 2024, 5:56 AM
Unknown Object (File)
Nov 2 2024, 5:56 AM
Subscribers

Details

Summary

TCPS (netstat -s) would not differentiate between received and sent
ECN-marked packets, but would only account received packets if the
tcp session had negotiated ECN support.

It is known that some devices incorrectly set the historic TOS byte
and may infringe on the IP ECN bits - but without accounting IP ECN
packets where the session is not ECN-enabled would mask such misconfigurations.

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 48242
Build 45128: arc lint + arc unit

Event Timeline

sys/netinet/tcp_var.h
828

not sure if we will need a sent ce counter - this may only be relevant for future CC where a receiver driving marking is also possible. Or for path probing...

sys/netinet/tcp_ecn.c
124

Why are you removing this line?

sys/netinet/tcp_var.h
831

I think you want to go from 6 to 4 now, not to 3.

However, wasn't the plan to not change this at all in the main branch?

usr.bin/netstat/inet.c
831

Don't you need to change the "\t{:*/%ju} " stuff?

This revision is now accepted and ready to land.Nov 10 2022, 9:20 AM