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