|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Alexander Zhuckov 2:5030/518.50 10 Mar 2001 18:39:44 To : Zahar Kiselev Subject : Re: Microsoft предлагает запретить Linux!!! -------------------------------------------------------------------------------- .RFC-X-Newsreader: Gnus v5.7/Emacs 20.7 From: Alexander Zhuckov <zuav@int.spb.ru> Zahar Kiselev <Zahar.Kiselev@p1.f382.n5030.z2.fidonet.org> writes: > At 07 Mar 01 11:40:06, Alexander Zhuckov wrote to Zahar Kiselev: > > AZ> Hасколько я знаю, протокол TCP не отслеживает разрыв канала -- > AZ> грубо говоря. Если кто-то пишет, то он обнаружит, рано или поздно, что > AZ> канал пропал и разорвет соединение. Слушающая же сторона может никогда не > AZ> обнаружить, что канал пропал -- если только в соответствующем select'e > AZ> не стоит какой-нибудь таймаут. > В таком случае получается, что авторы _очень_ многих программ неправильно > используют протокол TCP - так как не ставят таймаут на "слушающей" стороне. Захар, я не могу сказать ничего по поводу _очень_ многих программ ;) Hе так давно в этой дискуссии уже упоминалась опция гнезда SO_KEEPALIVE -- насколько я понимаю, это должно решить твою проблему. Только имей ввиду, что, по умолчанию, период неактивности 2 часа. В POSIX.1g есть опция TCP_KEEPALIVE, которая позволяет задавать свой период неактивности, но в Linux'е я ее не нашел (в чистом виде). В /usr/include/linux/sysctl.h есть два параметра: NET_IPV4_TCP_KEEPALIVE_TIME и NET_IPV4_TCP_KEEPALIVE_PROBES. Я сильно подозреваю, что эти параметры имеют непосредственное отношение к TCP_KEEPALIVE и менять их можно (или нет?) через /proc/sys/net/ipv4. > Переписать все такие программы не реально, так может быть можно например > посредством механизма LD_SO_PRELOAD подменить "просто select" на "select с > таймаутом"? Hе знаю, на мой вкус это не самое хорошее решение. -- Alexander Zhuckov zuav@int.spb.ru 2:5030/518.50 --- ifmail v.2.14 * Origin: Institute of Network Technologies (2:5030/518.50@fidonet) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/16526ce3f4188.html, оценка из 5, голосов 10
|