O aperto de mão de 3 vias

1

É assim que funciona?

1. Client sends syn to server.
2. Server responds with syn ack.
3. Client responds with ack.

O que aconteceria se o servidor respondesse apenas com syn ou apenas com ack? O que aconteceria se o servidor não respondesse? O que aconteceria se o cliente não respondesse com ack?

    
por Wintermute 17.03.2011 / 06:51

1 resposta

7

Is this how it works?

Sim.

What would happen if the server just responded with syn

A iniciação simultânea é descrita na RFC 793 seção 3.4 e também coberta por RFC 1122 seção 4.2.2.10.

The procedure also works if two TCP simultaneously initiate the procedure. When simultaneous attempt occurs, each TCP receives a "SYN" segment which carries no acknowledgment after it has sent a "SYN".

or with just ack?

Não tenho certeza, mas acho que um RST foi enviado de volta e a conexão foi encerrada.

What would happen if the server doesn't respond at all?

What would happen if the client doesn't respond with ack?

Quando nenhuma resposta é recebida, o cliente permanece no estado SYN-SENT (servidor - SYN RECEBIDO) e, eventualmente, expira.

No geral, RFC 793 "Protocolo de Controle de Transmissão" é um recurso excelente.

Veja também RFC 1122 "Requisitos para hosts da Internet - camadas de comunicação" .

    
por 17.03.2011 / 07:06

Tags