11.TCP三次握手

TCP连接建立与传输

1.主机 A 与主机 B 使用 TCP 传输数据,A 是 TCP 客户,B 是 TCP 服务器。假设有512B 的数据要传输给 B,B 仅给 A 发送确认;A 的发送窗口 swnd 的尺寸为 100B,而 TCP 数据报文段每次也携带 100B 的数据载荷;发送方的初始序号为 100,接收方的初始序号为 200;在 A 和 B 建立 TCP 连接的过程中,A 给 B 发送的第 2 个 TCP 报文段不携带数据载荷。从 TCP 连接建立开始到 TCP 连接释放为止的整个过程中,试回答以下问题:

(1)A 给 B 发送的第 1 个 TCP 报文段首部中的 SYN 标志位和序号 seq 字段的取值分别是什么?

(2)B 给 A 发送的第 1 个 TCP 报文段首部中 SYN 标志位、ACK 标志位、序号 seq字段、确认号 ack 字段的取值分别是什么?

(3)A 给 B 发送的第 2 个 TCP 报文段中 ACK 标志位、序号 seq 字段、确认号 ack的取值分别是什么?

(4)A 给 B 发送的第 8 个 TCP 报文段首部中 ACK 标志位、序号 seq 字段、确认号ack 字段的取值分别是什么?该报文段的数据载荷长度是什么?

考题提炼:主机A(序号初始100)与B(序号初始200)建立TCP连接并传输512B数据,窗口大小100B。

解答

(1). 第一次握手(A→B)

  • SYN=1(建立连接)
  • seq=100(初始序号)
  • 答案:SYN=1, seq=100

(2) 第二次握手(B→A)

  • SYN=1, ACK=1(确认)
  • seq=200(B的初始序号)
  • ack=101(期望A下次发送的序号)
  • 答案:SYN=1, ACK=1, seq=200, ack=101

(3) 第三次握手(A→B)

  • ACK=1(确认B的SYN)
  • seq=101(A的下一个序号)
  • ack=201(期望B下次发送的序号)
  • 答案:ACK=1, seq=101, ack=201

(4). 数据传输(第8个报文段)

  • ACK=1(持续确认)
  • seq=601(A已发送500B数据:100B×5段)
  • ack=202(B未发送数据,维持初始期望)
  • 数据载荷=12B(512B-500B)
  • 答案:ACK=1, seq=601, ack=202;数据长度=12B
相关推荐
tudoSearcher3 分钟前
手机、平板、电脑同时控制Claude Code / Codex ?:Paseo实战指南
网络·开源·开源软件·个人开发·ai编程
加农炮手Jinx5 分钟前
Flutter for OpenHarmony:pub_updater 命令行工具自动更新专家(DevOps 运维必备) 深度解析与鸿蒙适配指南
android·运维·网络·flutter·华为·harmonyos·devops
华纳云IDC服务商14 分钟前
高防CDN和高防IP一起用,延迟会增加多少?
网络·网络协议·tcp/ip
sxd20011 小时前
Debian #1135514 bug引发的思考
网络·debian·bug
VOOHU-沃虎1 小时前
沃虎——一台旧设备的“慢性病”:网络变压器回波损耗劣化引发的间歇性断流
网络·信息与通信
叶帆1 小时前
【YFIOs】用C#开发硬件之WiFi网络
开发语言·网络·c#
梦想的旅途21 小时前
企业微信外部群主动调用:RPA 接口与官方 API 的技术边界
网络·mysql·自动化·企业微信·rpa
zbtlink1 小时前
路由器漏洞为什么越来越严重
网络·智能路由器
Rider_bai1 小时前
长春到天津物流专线,长春到天津物流公司,如何找到靠谱公司的联系方式?
大数据·网络·物联网·敏捷流程·交通物流
IT大白鼠2 小时前
BGP多归属技术原理与应用实践
网络·网络协议·华为