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


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Eugene Grosbein                      2:5006/1       04 Mar 2006  18:45:06
 To : Valentin Davydov
 Subject : Re: Форкающийся tcp-демон
 -------------------------------------------------------------------------------- 
 
 04 мар 2006, суббота, в 13:21 KRAST, Valentin Davydov написал(а):
 
  VD>> Как известно, классический сабж вызывает сначала socket(2), потом
  VD>> bind(2), затем listen(2), потом accept(2), затем может форкнуться
  VD>> и передать потомку полученный в результате этого acceptа дескриптор.
  VD>> Вопрос: к моменту возврата из acceptа какие пакеты, относящиеся к
  VD>> этому соединению, прошли по сети?
  >>Трехступенчатый handshake.
  VD> То есть от клиента tcp-пакет с установленным SYN, обратно SYN,ACK, а по
  VD> приходу следующего ACK от клиента вываливаемся из accept(), больше ничего
  VD> ему не посылая, так?
 
 По-моему, так (c). Если тебе надо, чтобы по выходу из accept()
 уже было что прочитать из сокета, используй accf_data(9).
 Тогда accept() будет задерживать выход until data arrives on the connection.
 Меньше переключений контекста.
 
 Eugene
 -- 
 Choose SMTP and wondering why the fsck you are logged on on a Sunday morning
 --- slrn/0.9.8.0 (FreeBSD)
  * Origin: Svyaz Service JSC (2:5006/1@fidonet)
 
 

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

 Тема:    Автор:    Дата:  
 Re: Форкающийся tcp-демон   Eugene Grosbein   04 Mar 2006 18:45:06 
Архивное /ru.unix.bsd/26093f275a124.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional