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

图示

相关推荐
不像程序员的程序媛9 小时前
系统cpu内存负载资源分析
运维·服务器·数据库
kk的vmware虚拟机安装ubuntu11 小时前
鱼皮 yu-rpc:从 0 到 1 手写 RPC 框架的实践教程
网络·网络协议·其他·rpc
ShineWinsu12 小时前
对于Linux:网络基础的解析
linux·网络·面试·udp·笔试·ip·tcp
耍酷的魔镜12 小时前
谈谈如何使用Netty开发实现高性能的RPC服务器
服务器·网络协议·rpc
程序员在囧途13 小时前
likeadmin-api API 中转站怎么做统一报价?从 /pricing、/user/balance 到 task_id 回执的落地方法
运维·服务器·数据库·likeadmin-api·api中转站·token计费
cookies_s_s14 小时前
C++ 字符串动态创建对象 -- 工厂模式、自动注册、模板递归动态调用
服务器·开发语言·c++
想你依然心痛15 小时前
Linux用户空间与内核空间通信:netlink、ioctl、mmap 零拷贝与性能对比
linux·运维·服务器
程序员在囧途15 小时前
likeadmin-api API 算力超市怎么做供应商切换?统一鉴权、task_id 和 callback_url 才能稳交付
java·服务器·数据库·开放api·likeadmin-api·api算力超市
wenzhangli715 小时前
oodAgent 4.0 Skills分布式调度 — 从Code Agent实战看自主维护的Agent网络
运维·网络·人工智能·自动化
做个文艺程序员15 小时前
Linux第12篇:性能监控与瓶颈分析——CPU/内存/IO/网络全维度
linux·运维·网络