最后更新:2022-03-18 22:32:57 手机定位技术交流文章
今天早些时候,一位读者向我提出以下问题:

是否有TCP 保存和 HTTP 保持 HTTP 寿命?
这是一个极好的问题。很多人变得困惑, 因为这两个物体看起来很相似, 很容易被误认为相同的东西。
在现实中,这两个概念截然相反,实现的程度各不相同:
那就分开讨论吧
HTTP协议使用“请求-回复”模式,客户在其中开始提出请求,服务器响应,如它再次这样做。

请求-应答
由于HTTP基于TCP运输协议,在通过HTTP进行沟通之前,客户和服务机构应当这样做。首先,必须建立TCP连接。客户然后提交HTTP的要求。当服务被调用时,它会做出回应。"请求回应"的范式已经结束了然后终止TCP连接。

HTTP 请求
如果每次请求都要经历这样的过程:建立 TCP -> 请求资源 -> 响应资源 -> 释放连接,那么此方式就是HTTP 短连接,如下图:

HTTP 短连接
由于这种负担如此沉重,每个连接只可能要求一次资源。
能不能在第HTTP 请求完后,先不断开 TCP 连接,让后续的 HTTP 请求继续使用此连接?
当然可以,HTTP 保持实时 就是实现了这个功能,可以使用同一个 TCP 连接来发送和接收多个 HTTP 请求/应答,避免了连接建立和释放的开销,这个方法称为HTTP 长连接。

HTTP 长连接
HTTP很长的连接保持TCP连接状态,只要两端均未明确提供。
怎么才能使用 HTTP 保持实时 功能?
HTTP 1. 在 HTTP 1. 0 中, 默认值已关闭, 如果浏览器想要启用“ 保存- 启用”, 它必须在请求的包头上附加以下内容 :
Connection: Keep-Alive
当服务器收到请求和答案时, 它会将以下内容附加到响应中 :
Connection: Keep-Alive
连接不会被中断, 但会被保存 。 当客户再次提交请求时, 它会使用相同的连接 。 这将持续到客户或服务器提供断开连接 。
在 HTTP 1. start 中默认启用“ 保持启用” 。 如果您想要禁用“ 保持启用”, 您必须在 HTTP 软件包中包含以下代码 :
Connection:close
大部分浏览器现在都使用 HTTP/1 作为默认协议。 因此, 默认启用了“ 保存- 启用 ” 。 在客户端和服务同意后, 将建立很长的连接 。
长链路高端传输平台不仅降低了TCP连接资源的成本,而且还为HTTP流线技术提供了可行的基础。
所谓的HTTP流线的特点是客户能够一次性提交许多请求,而不必等待服务器作出反应,从而减少总响应时间。
举例来说,客户必须请求提供两种资源。以前的做法是,使用与以前相同的 TCP 连接,先发送 A 请求,然后您必须等待服务器响应 。请求B将在收到后转交。客户可使用HTTP流技术提交A和B申请。

HTTP流机制右侧可见。
另一方面,服务器按逻辑顺序回答,首先回答A要求,然后回答B要求。
此外,当服务器答复客户收到的第一批请求时,客户只能发送下一批请求,这意味着如果服务器的响应程序受阻,客户就不能发送下一批请求,从而造成“车队阻塞”问题。
可能有的同学会问,如果使用了 HTTP 长连接,如果客户端完成HTTP 请求后,就不再发起新的请求,此时这个 TCP 连接一直占用着不是挺浪费资源的吗?
事实上,为了减少资源浪费,网络服务软件通常包括关键超时选项,从而允许您为延长HTTP会议设定超时时间。
例如,HTTP长期连接的超时为60秒。网络服务程序将启动计时器 。如果客户端在完后HTTP 请求后,60秒后,没有提出新的查询。定时器的时间一到,,它导致回声函数被调用,以便断开连接。

HTTP 长 HTTP 连接超时
TCP 保存性 这东西其实就是TCP 的保活机制,它的工作原理我之前的文章写过,这里就直接贴下以前的内容。

如果TCP连接的两端都没有互动,启动TCP生存机制的要求也得到满足,内核中的TCP将发出检测信息。
因此,在双方之间没有数据交换的情况下,TCP生存机制可以通过检测报告确定另一方TCP连接是否有效,这项工作是在核心内部进行的。

TCP 保活机制
必须指出,想要利用TCP生存机制的程序必须通过插座界面配置SO_KEPALive,才能有效;如果不设置该变量,TCP生存机制就无法使用。
HTTP 保持实时 也叫 HTTP 长连接,“ 应用程序” 执行此功能 。它使得能够发送和接收许多有关同一TCP连接的HTTP请求/答复。减少建立和释放HTTP短期连接TCP连接的费用。
TCP 保存性 也叫 TCP 保活机制,内核负责此函数。如果客户和服务机构在一段时间内不与其互动,则无法接触数据。内核程序用于检查连接是否仍然有效 。就会发送探测报文,这是我第一次登录互联网之后您必须选择是否断开连接 。
原文链接:
https://mp.weixin.qq.com/s/25atTs4b-vORIx525ur_aw小林编码是提交人。
如果你相信这些材料对你有益, 你可以把注意力放在它上。
本文由 在线网速测试 整理编辑,转载请注明出处。