首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在物理层级别保持打开连接?

如何在物理层级别保持打开连接?
EN

Stack Overflow用户
提问于 2018-02-20 13:01:37
回答 1查看 105关注 0票数 0

我很难理解可能的联系的概念。

如果我们以使用“保持活动”报头的Http协议为例,在tcp/ip执行握手和必要的验证之后,连接将保持为x,允许用户使用相同的连接/端口发送多个请求。持久连接的影响对我来说是显而易见的,至少在这种理解水平上,开销减少了。

  • 然而,我似乎无法理解的是,这种联系是如何保持在物理层面上的。是在逻辑层面还是在物理层面,以及如何实现?
  • 如果它处于逻辑级别,要发送的消息将包含来自执行的握手和验证的信息的标头,因此它将跳过在数据包上查找目标物理地址和其他与路由器相关的操作所涉及的步骤,包括http握手等等。
  • 当连接处于活动状态时,会有在源和目的地之间发送的控制(ping)消息来查看它们是否仍然存在吗?

问候

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-20 18:28:37

物理层不知道任何“开放连接”。它只在比特或数据包上工作,只将比特从链路的一端传输到另一端。

逻辑连接在堆栈上只有更高的可能,TCP (或类似的协议)使用较低层来模拟数据包交换网络中实际上不存在的连接。

在单个逻辑连接中,完全不同的路由=物理路径可以在传输层甚至没有注意到的情况下使用。

传输层协议(或应用层协议)是否使用某种保持生命的方式完全取决于协议。通常,当某个时间段(超时)没有传输时,连接就会关闭,这样就不会有一堆僵尸套接字。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48885897

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档