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


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Alex Semenyaka                       2:461/640.640  05 Mar 2006  05:34:34
 To : Valentin Nechayev
 Subject : Форкающийся tcp-демон
 -------------------------------------------------------------------------------- 
 
 
 04 Mar 06 19:47, you wrote to me:
 
  VD>>>> То есть от клиента tcp-пакет с установленным SYN, обратно
  VD>>>> SYN,ACK, а по приходу следующего ACK от клиента вываливаемся из
  VD>>>> accept(), больше ничего ему не посылая, так?
  VG>>> Да.
  AS>> Hе так. По приходу ACK вываливаемся из listen. Более того, так как
  AS>> сторона, где выполнялся listen, уже послала ACK, завершающий
  AS>> handshake, то клиент мог (получив этот ACK) начать передачу данных.
  AS>> Которые могут поступить ещё даже до начала accept, если сетка
  AS>> быстрая, и/или сервер прогружен. Так что правильный ответ - как
  AS>> минимум 3 пакета установления соединения, но, возможно, и
  AS>> ещё сколько-то данных.
  VN> Вообще-то ситуация ещё веселее: никто не запрещает в первом же
  VN> SYN-пакете послать порцию данных.
 
 Запрещать - не запрещает. Hо я тут на raw sockets и divertе программку летом
 писал, TCP моделировал. Так вот, в этом случае всё плохо - отправитель думает,
 что данные послал, а получатель их вовсе даже не подтверждает, а возвращает
 ACK[dst] = ISN[src] + 1. Времени и возможности покопаться в коде TCP тогда не
 было, увы, чтобы понять, где это оно так - на первый беглый взляд на код должно
 подтверждать бы. Yar@ и glebius@ дружно сказали, что так и должно быть, и что
 это часть защиты от SYN-флуда.
 
  VN> И в финальном ACK хэндшейка - тоже.
 
 А вот данные в финальном ACKе хендшейка отлично подтверждаются, и всё
 заводится.
 
  VN> В BSD sockets такое невозможно,
 
 В BSD sockets это невозможно из-за API (уточнение не для тебя :) )
 
  VN> но например в TLI интерфейсе (доступном на SysV системах) - штатное
  VN> свойство интерфейса.
 
 Только с SYN всё равно не пройдёт, как выяснилось :)
 
 Alex
 
 --- IMHO в последней инстанции
  * Origin: ...можжевеловых... (2:461/640.640)
 
 

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

 Тема:    Автор:    Дата:  
 Re: Форкающийся tcp-демон   Valentin Davydov   04 Mar 2006 14:21:32 
 Re: Форкающийся tcp-демон   Konstantin Sorokin   04 Mar 2006 16:48:05 
 Re: Форкающийся tcp-демон   Vadim Goncharov   04 Mar 2006 16:54:38 
 Re: Форкающийся tcp-демон   Konstantin Sorokin   04 Mar 2006 17:41:26 
 Re: Форкающийся tcp-демон   Vadim Goncharov   04 Mar 2006 17:59:38 
 Форкающийся tcp-демон   Alex Semenyaka   04 Mar 2006 17:30:52 
 Re: Форкающийся tcp-демон   Vadim Goncharov   04 Mar 2006 18:06:41 
 Форкающийся tcp-демон   Alex Semenyaka   04 Mar 2006 19:42:36 
 Re: Форкающийся tcp-демон   Vadim Goncharov   05 Mar 2006 16:23:45 
 Форкающийся tcp-демон   Alex Mogilnikov   04 Mar 2006 21:42:17 
 Форкающийся tcp-демон   Alex Semenyaka   05 Mar 2006 05:01:50 
 Re: Форкающийся tcp-демон   Valentin Nechayev   05 Mar 2006 12:15:23 
 Форкающийся tcp-демон   Alex Semenyaka   05 Mar 2006 14:25:42 
 Re: Форкающийся tcp-демон   Valentin Nechayev   04 Mar 2006 20:47:57 
 Форкающийся tcp-демон   Alex Semenyaka   05 Mar 2006 05:34:34 
 Re: Форкающийся tcp-демон   Valentin Nechayev   05 Mar 2006 12:19:26 
 Re: Форкающийся tcp-демон   Vadim Goncharov   05 Mar 2006 16:39:51 
 Форкающийся tcp-демон   Alex Semenyaka   05 Mar 2006 19:07:50 
 Re: Форкающийся tcp-демон   Vadim Goncharov   08 Mar 2006 16:20:59 
 Форкающийся tcp-демон   Alex Semenyaka   08 Mar 2006 22:32:30 
Архивное /ru.unix.bsd/3929440a40c8.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional