Eu estava procurando uma resposta para essa pergunta (a do título) e a melhor coisa que encontrei foi:
No design do protocolo DNS, o tamanho do bloco de transporte UDP (tamanho da carga útil) foi limitado a 512 bytes para otimizar o desempenho enquanto gera tráfego mínimo de rede.
minha pergunta é: como exatamente isso melhora o desempenho e existem outras razões para essa limitação ao usar o UDP?
domain-name-system
Moha, o todo-poderoso camelo
fonte
fonte
Respostas:
A carga útil de 512 bytes garante que os pacotes DNS possam ser remontados se fragmentados em trânsito. Além disso, de um modo geral, há menos chance de pacotes menores serem descartados aleatoriamente.
O padrão IPv4 especifica que todo host deve ser capaz de remontar pacotes de 576 bytes ou menos. Com um cabeçalho IPv4 (20 bytes, embora possa ter até 60 bytes com opções) e um cabeçalho UDP de 8 bytes, um pacote DNS com uma carga útil de 512 bytes será menor que 576 bytes.
Como o @RyanRies diz: o DNS pode usar o TCP para cargas úteis maiores e para transferências de zona e DNSSEC. Há muito mais latência quando o TCP entra em ação porque, ao contrário do UDP, há um aperto de mão entre o cliente e o servidor antes que qualquer dado comece a fluir.
fonte
O DNS moderno não está mais limitado à carga útil de 512 bytes para o UDP.
Com o EDNS0 em uso, pode ser especificado um tamanho de carga útil maior, o que também costuma ser o caso de clientes com reconhecimento de DNSSEC.
O suporte para cargas úteis maiores sobre o UDP tem sido uma faca de dois gumes, no entanto, é em parte a razão pela qual o uso de servidores de nomes para ataques de amplificação se tornou mais popular, pois você pode obter uma melhor amplificação se o invasor usar uma consulta que obtenha uma resposta grande. .
Veja rfc2671 para detalhes detalhados do EDNS0
fonte
Ron Aitchison - Pro DNS e BIND 10-2011
fonte
É uma coisa QOS.
Como o UDP é sem estado, o tratamento de erros de pacotes não é possível.
Assim, mantendo os pacotes no tamanho máximo, há uma mudança maior que eles atingirão seu destino, reduzindo o impacto da ausência de tratamento de erros.
fonte