Resumo
- A opção MSS, Kind 2 e comprimento 4, aparece em um SYN e informa quantos octetos de dados TCP seu emissor aceita em um segmento.
- Cada direção tem seu próprio limite. O valor exclui os cabeçalhos IP e TCP; o emissor ainda considera os cabeçalhos reais e as restrições do caminho.
Dois SYNs, dois limites de recepção
“Negociação” é um atalho enganoso. A informa a capacidade de recepção de A; B informa a de B. Os valores podem divergir porque controlam fluxos opostos.
O formato é específico: Kind 2, Length 4 e um valor MSS de 16 bits. RFC 9293 mantém MSS no conjunto de opções que uma implementação TCP deve suportar, permite a opção em uma solicitação inicial com SYN e não em segmentos posteriores. Assim, ela estabelece uma restrição na abertura da conexão, não uma sequência de atualizações de capacidade.
MSS conta dados TCP e não inclui os cabeçalhos IP e TCP. Não é o tamanho do datagrama IP, a MTU de uma interface ou o tamanho de uma operação de escrita da aplicação. O emissor combina o anúncio do par com informações locais sobre o caminho e com os cabeçalhos efetivamente usados.
RFC 879 já dizia em 1983 que MSS era muitas vezes chamado, incorretamente, de negociação. O receptor declara seu limite; o emissor decide como construir o pacote.
Por que 536 era o padrão
No caso IPv4 apresentado por RFC 879, um host precisava remontar um datagrama de 576 octetos. Subtraindo 20 octetos do cabeçalho IPv4 e 20 do TCP, sobravam 536 octetos de dados TCP.
Esse cálculo era uma base de compatibilidade, não uma medição do caminho. Não provava uma MTU de 576 em todos os trajetos nem estabelecia um valor universal derivado de uma tecnologia de enlace.
MSS também não é descoberta da MTU do caminho. PMTUD investiga uma propriedade da rota, que pode mudar; MSS é trocado na abertura e descreve a capacidade de recepção de um endpoint.
A correção sobre opções
Algumas implementações reduziam o MSS anunciado para reservar espaço para opções IP ou TCP que talvez aparecessem depois. RFC 6691 corrigiu essa prática: o receptor deve anunciar o maior payload TCP que consegue remontar, sem descontar espaço hipotético.
Ao transmitir, o emissor ajusta os dados para acomodar as opções efetivamente presentes e respeitar o limite IP aplicável. Um MSS grande não autoriza ignorar um caminho menor; um MSS de 1460 tampouco prova uma MTU de 1500 em todos os saltos.
O que um intermediário pode reescrever
Um middlebox pode alterar o MSS em um SYN, por exemplo para considerar a sobrecarga de um túnel. Isso muda a restrição apresentada ao peer, mas não transforma MSS em uma medição autenticada da capacidade do caminho.
Uma captura comprova o valor visto no ponto de observação. Ela pode não revelar o anúncio original, a MTU de cada salto ou por que um payload menor foi escolhido.
A lição histórica é separar responsabilidades: o receptor informa seu limite, o emissor constrói o pacote e o caminho continua sendo uma restrição externa.
Fontes
Briefing para membros
Contexto aprofundado do perfil
Faça login com o nível de assinatura correto para desbloquear o briefing completo e as notas das fontes.
Apenas para Strategic Circle
Strategic Circle
Aberto a todos os leitores. Desbloqueie Briefings de perfil após se inscrever e fazer login.
Junte-se ao Strategic CircleSomente para Leadership Alliance
Leadership Alliance
Para proprietários e gestores qualificados de ativos de PI; faça login para desbloquear os briefings da Leadership Alliance.
Junte-se ao Leadership Alliance
