tcp: ECN preparations for ECN++, AccECN (tcp_respond)
authorRichard Scheffenegger <rscheff@FreeBSD.org>
Thu, 20 Oct 2022 19:20:13 +0000 (21:20 +0200)
committerRichard Scheffenegger <rscheff@FreeBSD.org>
Thu, 20 Oct 2022 19:48:27 +0000 (21:48 +0200)
commit83c1ec92e454a7592dd15b15b738d18ae36575e0
tree18863dcfb81038819617584dbdaef8c7e82d5f6d
parent7ca710589a76f1c2d2a41b2d8f5329db54be09dd
tcp: ECN preparations for ECN++, AccECN (tcp_respond)

tcp_respond is another function to build a tcp control packet
quickly. With ECN++ and AccECN, both the IP ECN header, and
the TCP ECN flags are supposed to reflect the correct state.

Also ensure that on receiving multiple ECN SYN-ACKs, the
responses triggered will reflect the latest state.

Reviewed By: tuexen, #transport
Sponsored by: NetApp, Inc.
Differential Revision: https://reviews.freebsd.org/D36973
sys/netinet/tcp_ecn.c
sys/netinet/tcp_input.c
sys/netinet/tcp_stacks/bbr.c
sys/netinet/tcp_stacks/rack.c
sys/netinet/tcp_stacks/rack_bbr_common.c
sys/netinet/tcp_stacks/rack_bbr_common.h
sys/netinet/tcp_subr.c
sys/netinet/tcp_var.h