HardenedBSD/sys
Randall Stewart 62ce18fc9a tcp: Rack rwnd collapse.
Currently when the peer collapses its rwnd, we mark packets to be retransmitted
and use the must_retran flags like we do when a PMTU collapses to retransmit the
collapsed packets. However this causes a problem with some middle boxes that
play with the rwnd to control flow. As soon as the rwnd increases we start resending
which may be not even a rtt.. and in fact the peer may have gotten the packets. Which
means we gratuitously retransmit packets we should not.

The fix here is to make sure that a rack time has passed before retransmitting the packets.
This makes sure that the rwnd collapse was real and the packets do need retransmission.

Reviewed by: tuexen
Sponsored by: Netflix Inc
Differential Revision: https://reviews.freebsd.org/D35166
2022-08-23 09:17:05 -04:00
..
amd64
arm arm/gic: fix a KASSERT in arm_gic_reserve_msi_range() 2022-08-22 11:59:02 +00:00
arm64
bsm
cam
cddl
compat
conf
contrib
crypto
ddb
dev
dts
fs
gdb
geom
gnu
i386
isa
kern
kgssapi
libkern
modules
net pfsync: replace struct pfsync_pkt with int flags 2022-08-22 23:46:50 +02:00
net80211
netgraph
netinet tcp: Rack rwnd collapse. 2022-08-23 09:17:05 -04:00
netinet6
netipsec
netpfil pfsync: replace struct pfsync_pkt with int flags 2022-08-22 23:46:50 +02:00
netsmb
nfs
nfsclient
nfsserver
nlm
ofed ibcore: Add support for RDMA/RoCE using VLAN(4) devices. 2022-08-22 10:04:26 +02:00
opencrypto
powerpc
riscv
rpc nfsd: Allow multiple instances of rpc.tlsservd 2022-08-22 13:54:24 -07:00
security
sys
teken
tests
tools
ufs
vm
x86
xdr
xen
Makefile