
Emeste artigo da Technet sobre as limitações de MSS do Windows Server 2008, menciona:
Depois de analisar o rastreamento de rede coletado no Windows 2008 Server de origem, descobrimos que o sistema remoto estava oferecendo um tamanho TCP MSS de 512 bytes e o servidor Windows 2008 continuava enviando pacotes de dados com tamanho MSS de 536 bytes
Como você faz isso, ou seja, rastreia a rede e determina o valor MSS que o Windows deve usar e está usando atualmente?
Responder1
Se você tiver uma captura de pacote com os pacotes SYN e SYN/ACK iniciando a conexão TCP, você encontrará o tamanho máximo do segmento anunciado por cada uma das partes na lista de opções. Você pode criar essa captura usandoWireshark, a parte interessante pode ser assim:
(roubado descaradamente dehttp://caedesnotes.wordpress.com/2010/06/30/bug-hunting-browsers-fail-to-load-research-microsoft-com/)
Se - como você vê neste exemplo - o MSS anunciado por 131.107.65.14 tiver 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
exibiria quaisquer pacotes que violassem a restrição MSS de 1452 bytes para 131.107.65.14. Se a sua pilha TCP estiver funcionando corretamente, você obviamente não deverá ver nenhum pacote exibido após a aplicação do filtro.