É por isso que o protocolo TCP tem os pacotes ACK, trata-se de um mecanismo de confirmação de recebimento de mensagens. Nesse caso, a máquina A entenderia que algo de errado aconteceu e ela reenviaria o pacote SYN. Da mesma forma, se a máquina B envia o SYN/ACK mas recebe um SYN novamente de A, ela entende que A não recebeu o seu SYN/ACK e reenviou o SYN.