Skip to content

HTTP 和 UDP

题目

HTTP 和 UDP 有何区别

网络协议

  • HTTP 在应用层,直接被程序使用
  • TCP 和 UDP 在传输层,底层

UDP 的特点

UDP 是一种无连接的、不可靠的传输层协议。而 TCP 需要连接、断开连接,参考“三次握手、四次挥手”。

不需要连接,所以 UDP 的效率比 TCP 高。

虽然 UDP 从协议层是不稳定的,但随着现代网络硬件环境的提升,也能保证绝大部分情况下的稳定性。所以,UDP 一直处于被发展的趋势。

例如视频会议、语音通话这些允许中段、不完全保证持续连接的场景,又需要较高的传输效率,就很适合 UDP 协议。

答案

  • HTTP 在应用层,而 UDP 和 TCP 在传输层
  • HTTP 是有连接的、可靠的,UDP 是无连接的、不可靠的

连环问:http 1.0 1.1 2.0 区别

http 1.0 最基础的 http 协议

http 1.1

  • 引入更多的缓存策略,如 cache-control E-tag
  • 长链接,默认开启 Connection: keep-alive ,多次 http 请求减少了 TCP 连接次数
  • 断点续传,状态吗 206
  • 增加新的 method PUT DELETE 等,可以设计 Restful API

http2.0

  • header 压缩,以减少体积
  • 多路复用,一个 TCP 连接中可以多个 http 并行请求。拼接资源(如雪碧图、多 js 拼接一个)将变的多余
  • 服务器端推送