freebsd-dev/sys/netinet/tcp_stacks
Andrew Gallatin b99781834f TCP: remove special treatment for hardware (ifnet) TLS
Remove most special treatment for ifnet TLS in the TCP stack, except
for code to avoid mixing handshakes and bulk data.

This code made heroic efforts to send down entire TLS records to
NICs. It was added to improve the PCIe bus efficiency of older TLS
offload NICs which did not keep state per-session, and so would need
to re-DMA the first part(s) of a TLS record if a TLS record was sent
in multiple TCP packets or TSOs. Newer TLS offload NICs do not need
this feature.

At Netflix, we've run extensive QoE tests which show that this feature
reduces client quality metrics, presumably because the effort to send
TLS records atomically causes the server to both wait too long to send
data (leading to buffers running dry), and to send too much data at
once (leading to packet loss).

Reviewed by:	hselasky,  jhb, rrs
Sponsored by:	Netflix
Differential Revision:	https://reviews.freebsd.org/D26103
2020-08-19 17:59:06 +00:00
..
bbr.c TCP: remove special treatment for hardware (ifnet) TLS 2020-08-19 17:59:06 +00:00
rack_bbr_common.c This fixes several skyzaller issues found with the 2020-05-15 14:00:12 +00:00
rack_bbr_common.h This commit brings things into sync with the advancements that 2020-05-04 20:28:53 +00:00
rack.c TCP: remove special treatment for hardware (ifnet) TLS 2020-08-19 17:59:06 +00:00
sack_filter.c Remove all trailing white space from the BBR/Rack fold. Bits 2020-02-12 12:40:06 +00:00
sack_filter.h This commit adds BBR (Bottleneck Bandwidth and RTT) congestion control. This 2019-09-24 18:18:11 +00:00
tcp_bbr.h This commit brings things into sync with the advancements that 2020-05-04 20:28:53 +00:00
tcp_rack.h This fixes a couple of skyzaller crashes. Most 2020-06-03 14:07:31 +00:00