TCP-related sysctls from year-old 12-STABLE renders fresh 12-STABLE inaccessible

From: Lev Serebryakov <lev_at_FreeBSD.org>
Date: Mon, 4 Oct 2021 01:18:38 +0300
  I've upgraded year-old 12.2-STABLE (12.2-STABLE 1202504) to very fresh (stable/12-n233937-a17cf1bed9d) and after reboot server has not been able to start all network daemons.

  I have this `/etc/sysctl.conf` which gives me much better performance on 10G links:

net.inet.tcp.recvbuf_auto=1
net.inet.tcp.recvbuf_inc=131072
net.inet.tcp.recvbuf_max=16777216
net.inet.tcp.recvspace=16777216
net.inet.tcp.sendbuf_auto=1
net.inet.tcp.sendbuf_inc=131072
net.inet.tcp.sendbuf_max=16777216
net.inet.tcp.sendspace=16777216
net.inet.tcp.maxtcptw=102400
net.inet.tcp.mssdflt=8800
kern.ipc.maxsockbuf=16777216
kern.ipc.somaxconn=8192

  When these sysctls are applied, network services fail to start with different diagnostics. For example, sshd complains that it can not bind to any address.

Bisecting this file, I found that these lines is the cause:

net.inet.tcp.recvspace=16777216
net.inet.tcp.sendspace=16777216

  Removing them allows services to start.

  But now my 10G performance is not the best again.

  What happens to these sysctls? What is recommended values for 10G links now?

-- 
// Lev Serebryakov
Received on Sun Oct 03 2021 - 22:18:38 UTC

Original text of this message