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

服务端处于 TIME_WAIT 状态的 TCP 连接,收到相同四元组的 SYN 后会发生什么?详解

文章目录

  • 一、先判断 SYN 是否合法
    • 1、开启「时间戳」机制
      • 1.1、合法 SYN
      • 1.2、非法 SYN
    • 2、关闭「时间戳」机制
      • 1.1、合法 SYN
      • 1.2、非法 SYN
  • 二、收到合法 SYN
  • 三、收到非法 SYN

一、先判断 SYN 是否合法

1、开启「时间戳」机制

1.1、合法 SYN

客户端的 SYN「序列号」比服务端「期望下一个收到的报文序列号」要大,并且 SYN「时间戳」比服务端「最后收到的报文时间戳」要大

1.2、非法 SYN

客户端的 SYN「序列号」比服务端「期望下一个收到的报文序列号」要小,或者 SYN「时间戳」比服务端「最后收到的报文时间戳」要小

2、关闭「时间戳」机制

1.1、合法 SYN

客户端的 SYN「序列号」比服务端「期望下一个收到的报文序列号」要大

1.2、非法 SYN

客户端的 SYN「序列号」比服务端「期望下一个收到的报文序列号」要小

二、收到合法 SYN

提前结束 TIME_WAIT 状态进入三次握手流程
在这里插入图片描述

三、收到非法 SYN

在这里插入图片描述
服务端收到 RST 后,看 Linux 内核参数 tcp_rfc1337 值

  • /proc/sys/net/ipv4/tcp_rfc1337=0(默认):提前结束 TIME_WAIT 状态,释放连接
  • /proc/sys/net/ipv4/tcp_rfc1337=1:丢掉 RST
http://www.xdnf.cn/news/16144.html

相关文章:

  • 前端-html+CSS基础到高级(一)html基础
  • Oracle 的单体安装
  • 金仓数据库:融合与智能驱动下的革新与未来
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——5. 集成OpenCV:让程序拥有“视力”
  • 融合与智能:AI 浪潮驱动下数据库的多维度进化与产业格局重塑新范式
  • 数据结构2-集合类ArrayList与洗牌算法
  • 语义分割-FCN-听课记录
  • 【Java学习】匿名内部类的向外访问机制
  • 纳米编辑器之Nano 编辑器退出**的详细操作指南
  • 《C++ string 完全指南:string的模拟实现》
  • 神经网络实战案例:用户情感分析模型
  • rust-枚举
  • CentOS7 安装 rust 1.82.0
  • B站 XMCVE Pwn入门课程学习笔记(5)
  • Text2SQL智能问答系统开发(一)
  • vue3:十八、内容管理-搜索栏的完善
  • Sklearn 机器学习 数值标准化
  • HTTP/1.0、HTTP/1.1 和 HTTP/2.0 主要区别
  • LeetCode 2322:从树中删除边的最小分数
  • M3295NL专为千兆以太网设计,支持100/1000Mbps全双工通信M3295支持4对5类UTP电缆
  • 【C++】标准模板库(STL)—— 学习算法的利器
  • 力扣20:有效的括号
  • 【Java工程师面试全攻略】Day12:系统安全与高可用设计
  • Spring Cloud OpenFeign 常用注解_笔记
  • SpringCloud【Sentinel】
  • mac llama_index agent算术式子计算示例
  • AUTOSAR进阶图解==>AUTOSAR_SWS_BSWGeneral
  • [202103][Docker 实战][第2版][耿苏宁][译]
  • Vue3实现视频播放弹窗组件,支持全屏播放,音量控制,进度条自定义样式,适配浏览器小窗播放,视频大小自适配,缓冲loading,代码复制即用
  • 机器学习入门与经典knn算法表文解析