Moh*_*mel 18 domain-name-system
我一直在寻找这个问题的答案(标题中的那个),我发现的最好的事情是:
在 DNS 协议设计中,UDP 传输块大小(有效负载大小)已被限制为 512 字节以优化性能,同时生成最少的网络流量。
我的问题是:这究竟如何提高性能,使用 UDP 时是否还有其他原因导致此限制?
Eva*_*son 22
512 字节的有效负载确保 DNS 数据包在传输过程中出现碎片时可以重新组合。此外,一般来说,随机丢弃较小数据包的可能性较小。
在IPv4的标准指定每个主机必须能够以576个字节以内重组的工作。使用 IPv4 标头(20 字节,尽管它可以高达 60 字节带选项)和 8 字节 UDP 标头,具有 512 字节有效载荷的 DNS 数据包将小于 576 字节。
正如@RyanRies 所说:DNS 可以将 TCP 用于更大的有效载荷以及区域传输和 DNSSEC。当 TCP 发挥作用时,会有更多的延迟,因为与 UDP 不同,在任何数据开始流动之前,客户端和服务器之间存在握手。
Håk*_*ist 15
现代 DNS 实际上不再局限于 512 字节的 UDP 有效负载。
使用EDNS0 时,可以指定更大的有效负载大小,这对于 DNSSEC 感知客户端来说也是常见的情况。
通过 UDP 支持更大的有效负载是一把双刃剑,然而,这也是使用名称服务器进行放大攻击变得越来越流行的部分原因,因为如果攻击者使用获得大响应的查询,您可以获得更好的放大.
有关EDNS0的详细信息,请参阅rfc2671
| 归档时间: |
|
| 查看次数: |
39365 次 |
| 最近记录: |