He estado buscando una respuesta a esa pregunta (la del título) y lo mejor que encontré fue:
En el diseño del protocolo DNS, el tamaño del bloque de transporte UDP (tamaño de la carga útil) se ha limitado a 512 bytes para optimizar el rendimiento y generar un tráfico de red mínimo.
mi pregunta es: ¿cómo mejora esto exactamente el rendimiento y existen otras razones para esta limitación al usar UDP?
domain-name-system
Moha el todopoderoso camello
fuente
fuente
Respuestas:
La carga útil de 512 bytes garantiza que los paquetes DNS se puedan volver a ensamblar si están fragmentados en tránsito. Además, en general, hay menos posibilidades de que los paquetes más pequeños se descarten al azar.
El estándar IPv4 especifica que cada host debe poder reensamblar paquetes de 576 bytes o menos. Con un encabezado IPv4 (20 bytes, aunque puede ser tan alto como 60 bytes con opciones) y un encabezado UDP de 8 bytes, un paquete DNS con una carga útil de 512 bytes será menor que 576 bytes.
Como dice @RyanRies: DNS puede usar TCP para cargas más grandes y para transferencias de zona y DNSSEC. Hay mucha más latencia cuando TCP entra en juego porque, a diferencia de UDP, hay un apretón de manos entre el cliente y el servidor antes de que los datos comiencen a fluir.
fuente
El DNS moderno ya no está limitado a una carga útil de 512 bytes para UDP.
Con EDNS0 en uso, se puede especificar un tamaño de carga útil más grande, que también suele ser el caso de los clientes con DNSSEC.
El soporte para cargas útiles más grandes sobre UDP ha sido un arma de doble filo, sin embargo, es en parte la razón por la cual el uso de servidores de nombres para ataques de amplificación se ha vuelto más popular, ya que puede lograr una mejor amplificación si el atacante usa una consulta que obtiene una respuesta grande .
Ver rfc2671 para los detalles esenciales de EDNS0
fuente
Ron Aitchison - Pro DNS y BIND 10 - 2011
fuente
Es una cosa QOS.
Debido a que UDP no tiene estado, el manejo de errores de los paquetes no es posible.
Por lo tanto, al mantener los paquetes a un tamaño máximo, hay un cambio mayor que alcanzarán su destino, reduciendo el impacto de la ausencia de manejo de errores.
fuente