Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Lev Walkin                           2:5020/400     04 Feb 2004  18:24:28
 To : Slawa Olhovchenkov
 Subject : Re: TIME_WAIT
 -------------------------------------------------------------------------------- 
 
 
 Slawa Olhovchenkov wrote:
 
 >  LW> Да ладно, 10 секунд, например, вполне достаточно для пакета в современном
 >  LW> интернете.
 > 
 > У тебя что, модема нету? Или ретрейнов не бывает? Или ты не знаешь какие там
 > буфера и какие при этом задержки получаются? 30 секунд. Точка. Hе обсуждается.
 
 А, модемы... Hету, действительно.
 
 >  >> 2. Hарушение стандарта будет пожалуй практически безболезненным -- ну
 >  >> получит клиент в случае потери ACK на свой FIN не повторный ACK, а RST --
 >  >> да глубоко почхать!
 >  LW> SSL будет работать криво в некотором (небольшом) проценте соединений.
 > 
 > А подробнее? Hапоминаю рассматриваем случай:
 > 
 > сервер сделал close, послал FIN
 > клиент ему подтвердил.
 > клиент сделал close, послал FIN.
 > сервер подтвердил.
 > клиент просрал подтверждение, перепослал FIN.
 > сервер послал его на RST.
 > 
 > Что у нас плохого будет в случае, если на второй close придет RST?
 
 Мне казалось, рассматривается случай с SO_LINGER в нуле, это
 application-level reset. Если же это kernel-level patch, то лучше
 уж убедиться в том, что сокеты реиспользуются, а не в том, что
 reset посылается.
 
 По поводу SO_LINGER в нуле, там будет такая ситуация: сервер закрыл
 соединение, послал пакет с данными, затем послал RST следом. пакет
 может потеряться, rst закроет порт, и финальный sslv3 close не пройдет
 корректно.
 
 Кстати, есть RFC (или драфт, не помню уже) на TCP option, который перемещает
 TIME_WAIT с закрывающего коннект участника на конец, к которому этот
 коннект закрывают (с сервера на клиент в типичном случае, короче).
 
 >  >> Так что, ядро патчить (с sysctl для этого таймаута)? А реально это
 >  >> потом в основное дерево протолкнуть (только не с моим английским)?
 > 
 >  LW> какого таймаута? msl? так оно уже есть: net.inet.tcp.msl. и ни для чего
 >  LW> другого, кроме TIME_WAIT не используется.
 > 
 > Используется. В том-то и дело.
 
 Для чего?
 
 >  LW> P.S. _попробуй_ SO_REUSEADDR в своем приложении. Просто вставь и
 >  LW> проверь на практике.
 > 
 > Уже. Еще на той неделе. Яйца в профиль, как и ожидалось -- в пределах
 > погрешности эксперемента. И до и после и во время.
 
 Когда? До или после accept()'а?
 -- 
 Lev Walkin
 vlm@netli.com
 
 --- ifmail v.2.15dev5.3
  * Origin: Netli, Inc. (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 TIME_WAIT   Slawa Olhovchenkov   04 Feb 2004 00:22:02 
 Re: TIME_WAIT   Lev Walkin   04 Feb 2004 15:21:29 
 TIME_WAIT   Slawa Olhovchenkov   04 Feb 2004 15:29:56 
 Re: TIME_WAIT   Lev Walkin   04 Feb 2004 18:24:28 
 TIME_WAIT   Slawa Olhovchenkov   04 Feb 2004 18:41:24 
Архивное /ru.unix.bsd/9104d9843131.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional