TCP半关闭过程

TCP半关闭过程

简介

tcp半关闭是指在一端发送完数据后,关闭发送通道,而保持接收通道继续接收数据。

过程

这里设序号为Seq=x,确认号为Ack=y

  1. 客户端(也可以是服务端发起)发送 [FIN,ACK] 报文段,其中Seq=x,Ack=y
  2. 服务端返回ACK报文段,其中Seq=y,Ack=x+1
  3. 服务端返回数据报文段(可能会有多个)
  4. 客户端发送ACK报文段,其中Seq=y,ACK=x+n
  5. 服务端返回[FIN,ACK]报文段,其中Seq=y,ACK=x+1
  6. 客户端发送ACK报文段,其中Seq=y,ACK=x+1

如果你熟悉tcp四次挥手,可以发现其实就多了步骤3和步骤4。

说明

这一步主要说明一下步骤中的含义,以步骤2为例:

服务端返回ACK报文段,其中Seq=y,Ack=x+1

这里的意思是指返回的序号是客户端传来报文段中的确认号,返回的确认号是客户端传来报文段中的序号加1

图示

相关推荐
石油人单挑所有12 分钟前
ProtoBuf编写网络版本通讯录时遇到问题及解决方案
运维·服务器
Andy1 小时前
分流设备的测试报告
运维·服务器
枷锁—sha2 小时前
【CTFshow-pwn系列】03_栈溢出【pwn 045】详解:Ret2Libc 之 32位动态泄露(补充本地 Libc 手动加载指南)
服务器·网络·网络安全·系统安全
liann1192 小时前
4.3.2_WEB——WEB后端语言——PHP
开发语言·前端·网络·安全·web安全·网络安全·php
byzh_rc3 小时前
[深度学习网络从入门到入土] 含并行连结的网络GoogLeNet
网络·人工智能·深度学习
xdpcxq10293 小时前
EF Core实体追踪Entry中记录的数据
服务器·数据库·oracle
乾元3 小时前
对抗性攻击:一张贴纸如何让自动驾驶视觉系统失效?
运维·网络·人工智能·安全·机器学习·自动驾驶
Norach3 小时前
ubuntu22.04安装ssh-server与realvnc-server
linux·服务器·经验分享·ubuntu·ssh·vnc
UP_Continue3 小时前
Linux--进程间通信
linux·运维·服务器
全栈前端老曹4 小时前
【Redis】Pipeline 与性能优化——批量命令处理、提升吞吐量、减少网络延迟
前端·网络·数据库·redis·缓存·性能优化·全栈