Como o TCP obtém os valores MSS para um determinado caminho?

5

quando um cliente TCP inicia uma conexão TCP com um servidor TCP remoto, ele anunciará seu MSS na opção TCP.

Não sei como o TCP conhece o valor MSS do caminho. Esse valor é específico para o caminho entre o cliente e o servidor e, de maneira geral, a detecção de caminho MTU pode ser usada para obter o valor, mas isso será antes que o pacote TCP SYN seja enviado e cause algum atraso.

Então, na prática, como o TCP obtém os valores MSS para um determinado caminho?

    
por misteryes 21.05.2013 / 19:08

1 resposta

4

O TCP deve fazer uma suposição inicial no MSS, que será o MTU da interface local por meio da qual o SYN está prestes a ser enviado, menos a constante apropriada para considerar o cabeçalho IP.

Depois disso, ele pode aprender um valor MSS menor por meio de um dos seguintes meios:

  • Um MSS menor anunciado pelo outro par
  • detecção de MTU de caminho
  • (mensagens de pacote muito grande do ICMP)

Uma vez que ele aprende um valor tão reduzido, ele pode armazená-lo em cache por um tempo e usá-lo como o MSS inicial para conexões futuras com o mesmo endereço remoto.

    
por 22.05.2013 / 00:30