Determinando o valor de MSS no Windows Server

1

Em este artigo da Technet sobre as limitações do MSS do Windows Server 2008 , menciona:

After analyzing the network trace collected on the source Windows 2008 Server, we found out that the remote system was offering a TCP MSS size of 512 bytes and Windows 2008 server kept sending the data packets with an MSS size of 536 bytes

Como você faz isso, ou seja, fazer um rastreamento de rede e, em seguida, determinar o valor do MSS que o Windows deve estar usando e atualmente está usando?

    
por Rob Nicholson 28.05.2013 / 10:37

1 resposta

3

Se você tiver uma captura de pacote com os pacotes SYN / ACK SYN / ACK iniciando a conexão TCP, você encontrará o tamanho máximo de segmento anunciado por cada uma das partes na lista de opções. Você pode criar uma captura usando Wireshark , a parte interessante pode ser assim:

(descaradamenteroubadode link )

Se - como você vê neste exemplo - o MSS anunciado por 131.107.65.14 for 1452 bytes, você só deverá ver comprimentos de segmento TCP iguais ou menores que este valor durante esta conexão. Observe que ambos os hosts anunciam o MSS independentemente nos pacotes SYN e SYN / ACK e o menor dos dois é escolhido para todos os segmentos trocados durante toda a duração da conexão.

Você pode configurar um filtro de exibição no Wireshark para fazer uma verificação rápida. tcp.len>1452 and ip.dst==131.107.65.14 exibirá todos os pacotes que violarem a restrição MSS de 1452 bytes a 131.107.65.14. Se a sua pilha TCP está fazendo certo, obviamente você não deve ver nenhum pacote exibido após o filtro ter sido aplicado.

    
por 28.05.2013 / 11:28