Três confirmações duplicadas

1

Eu entendo o processo de prevenção de congestionamento em que você está tentando controlar o nível de congestionamento em uma rede e evitar a perda de pacotes. Mas como pode haver três reconhecimentos, mesmo se um for perdido na transmissão e finalmente chegar ao destino após o tempo limite, certamente o pacote será descartado se expirar, e não apenas continuado e duplicado x quantidade de vezes durante o congestionamento.

    
por user171131 28.04.2013 / 18:26

2 respostas

1

ACKs duplicados fazem parte do sistema retransmit / selective-ack. Sem o suporte ao SACK, você obterá ACKs duplicados quando um pacote for perdido e o receptor estiver informando ao remetente que ele está visível até o número de seqüência ACKed. Um ACK será enviado para cada pacote fora da seqüência recebido, e é por isso que você verá ACKs duplicados e, às vezes, muitos deles se o diâmetro da rede for grande o suficiente e o tamanho da janela for grande o suficiente.

    
por 28.04.2013 / 18:32
0

Primeiro, temos que perceber que os ACKs não estão dizendo que vimos um número de seqüência específico - eles estão, na verdade, dizendo que não vimos esse número de sequência específico, mas vimos todos os anteriores.

De RFC 793 :

Segments also carry an acknowledgment number which is the sequence number of the next expected data octet of transmissions in the reverse direction.

Um ACK é um ACK duplicado se, entre outros critérios ( RFC 5681 )

the acknowledgment number is equal to the greatest acknowledgment received on the given connection

ACKs duplicados são sinais de que o destinatário recebeu algo, mas não o número de sequência correto. Após três ACKs duplicados (geralmente 3), o remetente retransmite o segmento. Isso é chamado de Retransmissão Rápida e, portanto, é mais rápido que a retransmissão baseada em tempo limite que você mencionou na sua pergunta.

    
por 09.02.2014 / 10:32

Tags