100ms delays in FreeBSD 8.x
Maxim Dounin
mdounin на mdounin.ru
Чт Сен 2 21:58:50 MSD 2010
Hello!
On Thu, Sep 02, 2010 at 09:21:55PM +0400, Михаил Монашёв wrote:
> Здравствуйте, Максим.
>
> >> IS> Если вы используете FreeBSD 8.x, то рекомендуется поставить
> >> IS> sysctl net.inet.tcp.rfc3465=0 или наложить патч из ссылки,
> >> IS> иначе могут наблюдаться 100ms задержки в ответах.
> >> IS> Особенно забавно видеть эти задержки при проксировании в localhost.
> >>
> >> IS> Подробности здесь:
> >> IS>
> >> http://lists.freebsd.org/pipermail/freebsd-net/2010-July/025867.html
> >> IS> В CURRENT починили, но в 8ку пока не закоммитили.
> >>
> >> Спасибо.
> >> Сделал везде sysctl net.inet.tcp.rfc3465=0 , но в статистике, строящей
> >> ся по времени ответа utsream-ов ничего не заметил.
>
> MD> Проблема проявляется только если размер ответа больше одного
> MD> пакета (у тебя ведь jumbo frames?).
>
> Да 9000.
Ну и наверняка большинство ответов влезает, так что в статистике
заметно если и будет, то слабо.
И, BTW, хотя бы 9001 не получается сделать? Можно было бы с
чистой совестью отвечать "over 9000". ;)
> MD> Ну и естественно выключенный
> MD> на клиенте delayed ack тоже лечит.
>
> А чем оно включается в том же nginx-е ?
В nginx-е - никак, только system wide. Через
net.inet.tcp.delayed_ack, подробнее в tcp(4) и tuning(7). Но я бы
не рекомендовал трогать, он по умолчанию включён и это правильно.
Выключи rfc3465 и забудь что проблема вообще могла быть.
Maxim Dounin
Подробная информация о списке рассылки nginx-ru