DNS何时使用TCP或UDP

相关RFC文档:RFC1035


在上一篇文章DNS详解中提到DNS会用到TCP与UDP两种传输协议,本篇会详细说明为何如此。

TCP与UDP的特点

在详细了解原因之前,先来回顾下两者的优势与区别。

TCP:

  • 优势:具有较为可靠的确认重传机制来保障数据传输,环境限制较少;
  • 劣势:需多次握手挥手,复杂的拥塞控制与流量控制,头部需20个字节,总体上延迟和开销较高。

UDP:

  • 优势:仅需8字节头部,没有复杂的机制,总体上延迟与开销较低;
  • 劣势:缺少保障数据传输的机制,不够可靠。网络中路由器的关于UDP的MTU限制仅有576字节,再去除报头,仅能传576-20-8=548字节的数据,而且为适应网络,DNS协议限制UDP的长度为512字节,因为较小的数据包随机丢失的概率也相对会较小,所以导致UDP无法传输大量数据。

使用场景

主要是两种:

  • DNS服务器之间需要进行域名与IP信息的同步

        此场景下传输的相关信息数据往往较大,且需要可靠的方式将数据送至对应服务器。

  • 对域名进行解析

        此场景下需要快速的响应用户的解析请求,对于延迟要求较高,而且相应数据包往往较小。

总结

根据场景与两种协议的特点可以轻松得出结论,DNS在进行数据同步时使用TCP,解析协议时则用UDP。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值