#
b1ddcbc6 |
| 07-May-2020 |
Randall Stewart <rrs@FreeBSD.org> |
When in the SYN-SENT state bbr and rack will not properly send an ACK but instead start the D-ACK timer. This causes so_reuseport_lb_test to fail since it slows down how quickly the program runs unti
When in the SYN-SENT state bbr and rack will not properly send an ACK but instead start the D-ACK timer. This causes so_reuseport_lb_test to fail since it slows down how quickly the program runs until the timeout occurs and fails the test
Sponsored by: Netflix inc. Differential Revision: https://reviews.freebsd.org/D24747
show more ...
|
#
8717b8f1 |
| 07-May-2020 |
Randall Stewart <rrs@FreeBSD.org> |
NF has an internal option that changes the tcp_mcopy_m routine slightly (has a few extra arguments). Recently that changed to only have one arg extra so that two ifdefs around the call are no longer
NF has an internal option that changes the tcp_mcopy_m routine slightly (has a few extra arguments). Recently that changed to only have one arg extra so that two ifdefs around the call are no longer needed. Lets take out the extra ifdef and arg.
Sponsored by: Netflix Inc Differential Revision: https://reviews.freebsd.org/D24736
show more ...
|
#
51a53922 |
| 05-May-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Add net epoch support back, which was taken out by accident in https://svnweb.freebsd.org/changeset/base/360639
Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.
Add net epoch support back, which was taken out by accident in https://svnweb.freebsd.org/changeset/base/360639
Reviewed by: rrs Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D24694
show more ...
|
#
963fb2ad |
| 04-May-2020 |
Randall Stewart <rrs@FreeBSD.org> |
This commit brings things into sync with the advancements that have been made in rack and adds a few fixes in BBR. This also removes any possibility of incorrectly doing OOB data the stacks do not su
This commit brings things into sync with the advancements that have been made in rack and adds a few fixes in BBR. This also removes any possibility of incorrectly doing OOB data the stacks do not support it. Should fix the skyzaller crashes seen in the past. Still to fix is the BBR issue just reported this weekend with the SYN and on sending a RST. Note that this version of rack can now do pacing as well.
Sponsored by:Netflix Inc Differential Revision:https://reviews.freebsd.org/D24576
show more ...
|
#
9028b6e0 |
| 30-Apr-2020 |
Richard Scheffenegger <rscheff@FreeBSD.org> |
Prevent premature shrinking of the scaled receive window which can cause a TCP client to use invalid or stale TCP sequence numbers for ACK packets.
Packets with old sequence numbers are ignored and
Prevent premature shrinking of the scaled receive window which can cause a TCP client to use invalid or stale TCP sequence numbers for ACK packets.
Packets with old sequence numbers are ignored and not used to update the send window size. This might cause the TCP session to hang indefinitely under some circumstances.
Reported by: Cui Cheng Reviewed by: tuexen (mentor), rgrimes (mentor) Approved by: tuexen (mentor), rgrimes (mentor) MFC after: 3 weeks Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D24515
show more ...
|
#
b2ade6b1 |
| 29-Apr-2020 |
Richard Scheffenegger <rscheff@FreeBSD.org> |
Correctly set up the initial TCP congestion window in all cases, by not including the SYN bit sequence space in cwnd related calculations. Snd_und is adjusted explicitly in all cases, outside the cwn
Correctly set up the initial TCP congestion window in all cases, by not including the SYN bit sequence space in cwnd related calculations. Snd_und is adjusted explicitly in all cases, outside the cwnd update, instead.
This fixes an off-by-one conformance issue with regular TCP sessions not using Appropriate Byte Counting (RFC3465), sending one more packet during the initial window than expected.
PR: 235256 Reviewed by: tuexen (mentor), rgrimes (mentor) Approved by: tuexen (mentor), rgrimes (mentor) MFC after: 3 weeks Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D19000
show more ...
|
#
454d3896 |
| 25-Apr-2020 |
Alexander V. Chernikov <melifaro@FreeBSD.org> |
Fix LINT build #2 after r360292.
Pointyhat to: melifaro
|
#
bb410f9f |
| 22-Apr-2020 |
Richard Scheffenegger <rscheff@FreeBSD.org> |
revert rS360143 - Correctly set up initial cwnd due to syzkaller panics found
Reported by: tuexen Approved by: tuexen (mentor) Sponsored by: NetApp, Inc.
|
#
73b76966 |
| 21-Apr-2020 |
Richard Scheffenegger <rscheff@FreeBSD.org> |
Correctly set up the initial TCP congestion window in all cases, by adjust snd_una right after the connection initialization, to include the one byte in sequence space occupied by the SYN bit.
This
Correctly set up the initial TCP congestion window in all cases, by adjust snd_una right after the connection initialization, to include the one byte in sequence space occupied by the SYN bit.
This does not change the regular ACK processing, while making the BYTES_THIS_ACK macro to work properly.
PR: 235256 Reviewed by: tuexen (mentor), rgrimes (mentor) Approved by: tuexen (mentor), rgrimes (mentor) MFC after: 2 weeks Sponsored by: NetApp, Inc. Differential Revision: https://reviews.freebsd.org/D19000
show more ...
|
#
413c3db1 |
| 31-Mar-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Allow the TCP backhole detection to be disabled at all, enabled only for IPv4, enabled only for IPv6, and enabled for IPv4 and IPv6. The current blackhole detection might classify a temporary outage
Allow the TCP backhole detection to be disabled at all, enabled only for IPv4, enabled only for IPv6, and enabled for IPv4 and IPv6. The current blackhole detection might classify a temporary outage as an MTU issue and reduces permanently the MSS. Since the consequences of such a reduction due to a misclassification are much more drastically for IPv4 than for IPv6, allow the administrator to enable it for IPv6 only.
Reviewed by: bcr@ (man page), Richard Scheffenegger Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D24219
show more ...
|
#
7ca6e296 |
| 12-Mar-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Use KMOD_TCPSTAT_INC instead of TCPSTAT_INC for RACK and BBR, since these are kernel modules. Also add a KMOD_TCPSTAT_ADD and use that instead of TCPSTAT_ADD.
Reviewed by: jtl@, rrs@ MFC after: 1
Use KMOD_TCPSTAT_INC instead of TCPSTAT_INC for RACK and BBR, since these are kernel modules. Also add a KMOD_TCPSTAT_ADD and use that instead of TCPSTAT_ADD.
Reviewed by: jtl@, rrs@ MFC after: 1 week Sponsored by: Netflix, Inc. Differential Revision: https://reviews.freebsd.org/D23904
show more ...
|
#
75dfc66c |
| 27-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r358269 through r358399.
|
#
7029da5c |
| 26-Feb-2020 |
Pawel Biernacki <kaktus@FreeBSD.org> |
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly mark
Mark more nodes as CTLFLAG_MPSAFE or CTLFLAG_NEEDGIANT (17 of many)
r357614 added CTLFLAG_NEEDGIANT to make it easier to find nodes that are still not MPSAFE (or already are but aren’t properly marked). Use it in preparation for a general review of all nodes.
This is non-functional change that adds annotations to SYSCTL_NODE and SYSCTL_PROC nodes using one of the soon-to-be-required flags.
Mark all obvious cases as MPSAFE. All entries that haven't been marked as MPSAFE before are by default marked as NEEDGIANT
Approved by: kib (mentor, blanket) Commented by: kib, gallatin, melifaro Differential Revision: https://reviews.freebsd.org/D23718
show more ...
|
#
44e86fbd |
| 13-Feb-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r357662 through r357854.
|
#
3fba40d9 |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
Remove all trailing white space from the BBR/Rack fold. Bits left around by emacs (thanks emacs).
|
#
d2517ab0 |
| 12-Feb-2020 |
Randall Stewart <rrs@FreeBSD.org> |
Now that all of the stats framework is in FreeBSD the bits that disabled stats when netflix-stats is not defined is no longer needed. Lets remove these bits so that we will properly use stats per its
Now that all of the stats framework is in FreeBSD the bits that disabled stats when netflix-stats is not defined is no longer needed. Lets remove these bits so that we will properly use stats per its definition in BBR and Rack.
Sponsored by: Netflix Inc Differential Revision: https://reviews.freebsd.org/D23088
show more ...
|
#
051669e8 |
| 25-Jan-2020 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r356931 through r357118.
|
#
9cc711c9 |
| 25-Jan-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Sending CWR after an RTO is according to RFC 3168 generally required and not only for the DCTCP congestion control.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes, tuexen@, Cheng Cui MFC
Sending CWR after an RTO is according to RFC 3168 generally required and not only for the DCTCP congestion control.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes, tuexen@, Cheng Cui MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D23119
show more ...
|
#
47e2c17c |
| 25-Jan-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Don't set the ECT codepoint on retransmitted packets during SACK loss recovery. This is required by RFC 3168.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexen@, Cheng Cui MFC afte
Don't set the ECT codepoint on retransmitted packets during SACK loss recovery. This is required by RFC 3168.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexen@, Cheng Cui MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D23118
show more ...
|
#
a2d59694 |
| 25-Jan-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
As a TCP client only enable ECN when the corresponding sysctl variable indicates that ECN should be negotiated for the client side.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexe
As a TCP client only enable ECN when the corresponding sysctl variable indicates that ECN should be negotiated for the client side.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexen@ MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D23228
show more ...
|
#
ee97681e |
| 24-Jan-2020 |
Michael Tuexen <tuexen@FreeBSD.org> |
Don't delay the ACK for a TCP segment with the CWR flag set. This allows the data sender to increase the CWND faster.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexen@, Cheng Cui
Don't delay the ACK for a TCP segment with the CWR flag set. This allows the data sender to increase the CWND faster.
Submitted by: Richard Scheffenegger Reviewed by: rgrimes@, tuexen@, Cheng Cui MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D22670
show more ...
|
#
e1d2b469 |
| 24-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Enter the network epoch when rack_output() is called in setsockopt(2).
|
#
109eb549 |
| 22-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Make tcp_output() require network epoch.
Enter the epoch before calling into tcp_output() from those functions, that didn't do that before.
This eliminates a bunch of epoch recursions in TCP.
|
#
b9555453 |
| 22-Jan-2020 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Make ip6_output() and ip_output() require network epoch.
All callers that before may called into these functions without network epoch now must enter it.
|
#
334fc582 |
| 09-Jan-2020 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
vnet: virtualise more network stack sysctls.
Virtualise tcp_always_keepalive, TCP and UDP log_in_vain. All three are set in the netoptions startup script, which we would love to run for VNETs as we
vnet: virtualise more network stack sysctls.
Virtualise tcp_always_keepalive, TCP and UDP log_in_vain. All three are set in the netoptions startup script, which we would love to run for VNETs as well [1].
While virtualising the log_in_vain sysctls seems pointles at first for as long as the kernel message buffer is not virtualised, it at least allows an administrator to debug the base system or an individual jail if needed without turning the logging on for all jails running on a system.
PR: 243193 [1] MFC after: 2 weeks
show more ...
|