Рекомендованные настройки для /etc/sysctl.conf (часть из них – по
умолчанию, но приводится для тех, кто по каким-либо причинам внес
изменения вручную):
# set to at least 16MB
kern.ipc.maxsockbuf=16777216
# set autotuning maximum to at least 16MB too
net.inet.tcp.sendbuf_max=16777216
net.inet.tcp.recvbuf_max=16777216
# enable send/recv autotuning
net.inet.tcp.sendbuf_auto=1
net.inet.tcp.recvbuf_auto=1
# increase autotuning step size
net.inet.tcp.sendbuf_inc=16384
net.inet.tcp.recvbuf_inc=524288
# turn off inflight limitting
net.inet.tcp.inflight.enable=0
# set this on test/measurement hosts
net.inet.tcp.hostcache.expire=1
Начиная с FreeBSD 8.2 можем включить H-TCP:kern.ipc.maxsockbuf=16777216
# set autotuning maximum to at least 16MB too
net.inet.tcp.sendbuf_max=16777216
net.inet.tcp.recvbuf_max=16777216
# enable send/recv autotuning
net.inet.tcp.sendbuf_auto=1
net.inet.tcp.recvbuf_auto=1
# increase autotuning step size
net.inet.tcp.sendbuf_inc=16384
net.inet.tcp.recvbuf_inc=524288
# turn off inflight limitting
net.inet.tcp.inflight.enable=0
# set this on test/measurement hosts
net.inet.tcp.hostcache.expire=1
net.inet.tcp.cc.default.algo=htcp
По умолчанию параметр inflight limiting
включен, что хорошо для модемной связи, но может приводит к ухудшению
связи в ряде случаев при высокоскоростном соединении. Поэтому выключаем.
По умолчанию FreeBSD кэширует соединения в течение одного часа, что
хорошо для web-сервера, но в других случаях приводит к снижению
производительности канала. Поэтому, если у нас не web-сервер, приводим
hostcache.expire к значению 1, что назначает время кэширования в 5
минут. Более подробно здесь.
Комментариев нет:
Отправить комментарий