当前位置: 首页 > news >正文

tcp keepalive

tcp keepalive用于检查两者之间的链路是否正常,或防止链路断开。

一旦建立了TCP连接,该连接被定义为有效,直到一方关闭它。一旦连接进入连接状态,它将无限期地保持连接状态。但实际上,这种联系不会无限期地持续下去。如果在一段时间内没有任何活动,许多防火墙或NAT系统将关闭连接。Keep Alive信号可以用来欺骗中间主机,使其不会因为不活动而关闭连接。也有可能是一台主机不再监听(例如应用程序或系统崩溃)。在这种情况下,连接被关闭,但没有发送FIN。在这种情况下,可以使用KeepAlive包来询问连接,以检查它是否仍然完好无损。

大多数支持TCP的主机也支持TCP Keepalive。每台主机(或对等体)定期向对方发送一个TCP包,请求对方作出响应。如果发送了一定数量的keepalive并且没有收到响应(ACK),则发送主机将从其端终止连接。如果一个连接由于TCP Keepalive超时而终止,并且另一个主机最终会为旧连接发送一个数据包,终止连接的主机将发送一个设置了RST标志的数据包,以通知另一个主机旧连接不再活跃。这将迫使另一个主机终止它的连接,以便建立一个新的连接。

Ref

  1. https://en.wikipedia.org/wiki/Keepalive
http://www.lryc.cn/news/100287.html

相关文章:

  • PP-Matting: AI高精度图像前景Matting,让抠图轻而易举
  • VUE3-01
  • 分库分表之基于Shardingjdbc+docker+mysql主从架构实现读写分离(二)
  • Python 进阶(四):日期和时间(time、datetime、calendar 模块)
  • Transformer背景介绍
  • 深入理解BeanDefinition和Spring Beans
  • 实验六 调度器-实验部分
  • 基于飞桨paddle波士顿房价预测练习模型测试代码
  • 只会“点点点”,凭什么让开发看的起你?
  • 35.图片幻灯片
  • CentOS7系统Nvidia Docker容器基于TensorFlow2.12测试GPU
  • Go 下载安装教程
  • InnoDB数据存储结构
  • 基于ts的浏览器缓存工具封装(含源码)
  • GIT涵盖工作中用的相关指令
  • 【如何训练一个中英翻译模型】LSTM机器翻译seq2seq字符编码(一)
  • [JAVAee]文件操作-IO
  • 【数据集】3小时尺度降水数据集-MSWEPV2
  • Springboot之把外部依赖包纳入Spring容器管理的两种方式
  • 更安全,更省心丨DolphinDB 数据库权限管理系统使用指南
  • WPS本地镜像化在线文档操作以及样例
  • STM32 Flash学习(一)
  • Spring中IOC容器常用的接口和具体的实现类
  • 【MySQL】索引特性
  • 【深度学习笔记】动量梯度下降法
  • 《TCP IP网络编程》第十二章
  • 基于CNN卷积神经网络的调制信号识别算法matlab仿真
  • 正则,JS:this,同步异步,原型链笔记整理
  • 【NOIP】小鱼的数字游戏题解
  • 算法的时间复杂度、空间复杂度如何比较?