美文网首页
为什么需要心跳包?

为什么需要心跳包?

作者: 会写诗的翩翩少年 | 来源:发表于2019-03-06 14:18 被阅读0次

1.TCP本身并不提供那么及时的断线检测
  断线检测需要轮询发送检测报文,会消耗一定的网络带宽和暂用一定的网络资源。如果把它做成TCP的底层默认功能,那些不需要断线检测的应用程序将会浪费不必要的带宽资源

2. TCP的KeepAlive机制可以用来代替心跳包么?
  TCP有个KeepAlive开关,打开后可以用来检测死连接。通常默认是2小时,可以自己设置。但是注意,这是TCP的全局设置。会影响所有应用程序

3.网络上有大量的连接缓存设备
  举个例子,A客户连着B服务器,但实际上是A->中间的网络设备C->B,如果是A到C断了,实际上B是无法知道的,因为B来说A的连接(就是C)还连着,心跳机制就解决了这个问题

相关文章

  • 为什么需要心跳包?

    1.TCP本身并不提供那么及时的断线检测断线检测需要轮询发送检测报文,会消耗一定的网络带宽和暂用一定的网络资源。如...

  • netty 心跳包和断线重连机制

    为什么需要心跳包??? 心跳包主要是用来做TCP长连接保活的。有时 socket 虽然是连接的但中间网络可能有问题...

  • 移动端心跳包

    移动端心跳包 TCP的心跳机制 TCP协议,本身拥有一个KeepAlive机制,既然有了心跳机制,为什么还要在应用...

  • IM为什么需要心跳

    客户端需要心跳的原因 对于客户端而言,使用 TCP 长连接来实现业务的最大驱动力在于: 在当前连接可用的情况下,每...

  • 即时通讯:socket 那些你不知道的事 - 心跳

    为什么TCP的 KeepAlive 不能满足心跳需求? 首先说下心跳包的主要作用是告知对方连接端,我还活着,心还在...

  • Go 实现Socket定时器

    1.前言 先说说为什么打算写一个定时器,Socket框架需要定时完成一些任务,比如发送心跳包或者定时向用户推送消息...

  • 5.心跳检测/心跳包

    心跳是什么? 顾名思义,心跳是判断一个事物生还是死的一个标准,在swoole里,心跳是指用来判断一个连接是正常还是...

  • 直播项目笔记(四)

    心跳包 + 图文混排 + Core Graphics Socket 服务器加入心跳包 Timer 和 Runloo...

  • Socket心跳包机制与实现

    心跳包的发送,通常有两种技术 方法1:应用层自己实现的心跳包 由应用程序自己发送心跳包来检测连接是否正常,大致的方...

  • Socket心跳包机制

    <转自CSDN技术博客>心跳包的发送,通常有两种技术方法1:应用层自己实现的心跳包由应用程序自己发送心跳包来检测连...

网友评论

      本文标题:为什么需要心跳包?

      本文链接:https://www.haomeiwen.com/subject/vvbtpqtx.html