Page MenuHomeFreeBSD

tcp: misc cleanup of options for rack as well as socket option logging.
ClosedPublic

Authored by rrs on Apr 5 2023, 2:32 PM.
Tags
None
Referenced Files
Unknown Object (File)
Feb 13 2024, 6:46 PM
Unknown Object (File)
Feb 13 2024, 6:46 PM
Unknown Object (File)
Dec 20 2023, 4:42 AM
Unknown Object (File)
Dec 12 2023, 1:49 PM
Unknown Object (File)
Jun 20 2023, 4:22 PM
Unknown Object (File)
May 18 2023, 8:17 PM
Unknown Object (File)
May 2 2023, 7:52 AM
Unknown Object (File)
Apr 8 2023, 9:03 PM

Details

Summary

Both BBR and Rack have the ability to log socket options, which is currently disabled. Rack
has an experimental SaD (Sack Attack Detection) algorithm that should be made available. Also
there is a t_maxpeak_rate that needs to be removed (its un-used).

Test Plan

Build and play with rack and bbr after cleaning up the issues. Also lets
make sure to compile in TCP_SAD_DETECTION to make sure that all
works properly for those wanting to experiment with it.

Diff Detail

Lint
Lint Skipped
Unit
Tests Skipped

Event Timeline

rrs requested review of this revision.Apr 5 2023, 2:32 PM
This revision is now accepted and ready to land.Apr 5 2023, 3:24 PM

One missed peak_rate removal ...

This revision now requires review to proceed.Apr 5 2023, 3:28 PM
This revision is now accepted and ready to land.Apr 5 2023, 3:28 PM
cc requested changes to this revision.Apr 5 2023, 3:45 PM
cc added a subscriber: cc.
cc added inline comments.
sys/conf/options
233

Should the word "Sad" be "SAD" and the words "Sack attack Detection" be "Sack Attack Detection"?

sys/netinet/tcp.h
431

Need to reduce padding.

sys/netinet/tcp_log_buf.h
258

Please adjust the alignment of the comment.

sys/netinet/tcp_subr.c
4585

Please adjust alignment here and below.

sys/netinet/tcp_var.h
1087

Please add a new line and comment note above these two new variables as "TLP related stats"

1098

Need to reduce padding.

1403

The alignments of some functions from above look like already a mess. So I can't ask for any better alignment.

This revision now requires changes to proceed.Apr 5 2023, 3:45 PM
sys/netinet/tcp.h
431

Last time we discussed this on the transport call, the statement was to NOT reduce the passing in head, but to do that when MFCing.

sys/netinet/tcp.h
431

OK. I got it. Thanks for letting me know this.

sys/conf/options
233

Actually I have almost always labeled it SaD just because.. so I should fix that :)

sys/netinet/tcp.h
431

Yeah I can't make the transport call.. sorry.. unless I try by car (I will do that) like Gleb does :))

Basically you don't change padding unless its an MFC thing and these changes are not planned to MFC.

sys/netinet/tcp_subr.c
4585

Sure

sys/netinet/tcp_var.h
1087

Sure

1098

No these changes are *not* to be MFC'd and so we do not reduce padding in such a case.

Update comments and spacing per cc's request. I do not update padding since the set of rack
changes is *not* intended to ever be MFC'd.

rrs marked 2 inline comments as done.Apr 6 2023, 12:17 PM
This revision is now accepted and ready to land.Apr 7 2023, 12:53 PM