【计网】TCP三次握手与四次挥手详解

一、TCP简介及报文格式

1、简介

TCP提供面向连接、可靠的字节流服务。

2、报文格式

1

重点字段

  1. 序号:Seq序号,32位,用来标识从TCP源端向目的端发送的字节流,发起方发送数据时对此进行标记。
  2. 确认序号:ACK序号,32位,只有ACK标志位为1时,确认序号字段才有效,Ack = Seq + 1。
  3. 标志位:共6个,即URG、ACK、PSH、RST、SYN、FIN等。
标志位 具体含义
URG 紧急指针(urgent pointer)有效
ACK 确认序号有效
PSH 接收方应尽快将报文交给应用层
RST 重置连接
SYN 发起一个新连接
FIN 释放一个连接
  • 注意
  • (a)不要将确认序号Ack与标志位ACK搞混;
  • (b)确认方Ack = 发起方Req + 1,两端配对。
    5

二、三次握手(Three-way Handshake)

1、含义

建立TCP连接时,客户端和服务器总共发送3个包。

2、目的

连接服务器指定窗口,建立TCP连接,并同步连接双方序列号和确认号并交换。TCP窗口大小信息在socket编程中,客户端执行connect()时,将触发三次握手。

  • 注意:下图要达到熟练默写程度。
    2
    3
3、过程
  • 1st 握手 - SYN 报文:SYN=1,seq=x
客户端发送一个TCP的SYN标志位置1的包,指明客户端打算连接的服务器的端口,以及初始序列号X,保存至包头的序列号(Sequence Number)字段里。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值