【问题标题】:Why does HTTP use TCP? [closed]为什么 HTTP 使用 TCP? [关闭]
【发布时间】:2012-10-01 17:19:33
【问题描述】:

我想解释这个问题的一种方法是为什么 HTTP 不能只使用 UDP? TCP 提供的哪些特定功能是 HTTP 明确要求的?

【问题讨论】:

  • 需要数据包交付保证
  • 和数据包重新排序保护
  • 没有“数据包交付保证”。可以保证如果接收到一个字节,它是流中下一个字节的正确值,没有间隙也没有重复。

标签: http tcp udp


【解决方案1】:

有序、不重复、完整性、大型有效负载的步调……与其他任何人真正需要的一样。几年前有一个举措,通过 UDP 为可以放入单个数据报的微小有效负载提供 HTTP,并且响应同样如此,但大多数 HTTP 有效负载对于一个数据报来说太大了,因此失去了意义。

【讨论】:

  • 我不知道 UDP 运动。客户端如何知道响应适合单个数据报?
  • @BrianWhite 我猜客户不可能在所有情况下都知道。
  • @BrianWhite 这就是问题所在。这个想法是将它用于像 HEAD 这样的请求和回复负载较小的请求。
  • 事后看来这很有趣,因为自 2012 年以来,使用 HTTP 请求 GET 和 POST 少量 JSON 的情况呈爆炸式增长。
  • @user207421 :所以当我们启动 http 请求/响应(例如从浏览器)时 - 创建了 TCP 会话?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多