【已解决】什么是心跳包?

【已解决】什么是心跳包?


本文作者:天析

作者邮箱:2200475850@qq.com

发布时间: Mon, 29 Jul 2019 09:09:00 +0800

看到经常有小伙伴(刚踏入行业)问我,什么是心跳包,干啥用的?

1

心跳包就是在客户端和服务器间定时通知对方自己状态的一个自己定义的命令字,按照一定的时间间隔发送,类似于心跳,所以叫做心跳包。
摘抄来源:张迁的博客

套接字

实际上,因为在网络中发送数据于接收数据都是使用了 socket(套接字) 进行实现,于是便扯到了 套接字 这个概念,套接字实现的是在传输层进行端到端的通信,因此在进行通信时,我们就需要考虑这个套接字是否可用,即判断套接字是否断开,为了保持通信的建立而不被中断,于是便有了心跳包(因类似于心脏的跳动而命名),心跳包是属于TCP协议底层的检测机制。

一般流程

而在TCP协议里,是支持心跳包机制的,即 SO_KEEPALIVE ,默认2小时检测一次,具体流程是向对方发一个 ACK 空数据包,对方收包后,如连接一切正常,则返回一个 ACK ,如果连接状态丢失,则返回RST,如果未返回任何包,再次尝试发送 ACK 无果,说明连接断开了。

转载于:https://www.cnblogs.com/anbus/p/11303718.html

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值