一个小故事讲清楚TCP三次握手和四次挥手

TCP三次握手有很多文章来讲述,不过我总觉得有点抽象,这次打算通过一个“打印机”的小故事来讲解三次握手和四次挥手.

一.三次握手

TCP提供面向连接的服务,在传送数据前必须建立连接,TCP连接是通过三次握手建立的。

1.1 标准说明

三次握手过程
三次握手过程:

  • 一开始两方都处在closed状态,当服务端监听到客户端的请求,服务端的状态 会进入到listen状态
  • 第一次握手:客户端给服务端发一个 SYN 报文,并指明客户端的初始化序列号 ISN(seq=x),此时客户端处于 SYN_SENT 状态
  • 第二次握手:服务端收到客户端的SYN报文后,用自己的SYN报文进行应答,并指明自己服务端的初始化序列号(seq=y),此外为了确认客户端的SYN,会将客户端的ISN(也就是x)+1作为ack的值(ack=x+1).此时服务端处于SYN_RCVD状态
  • 第三次握手:客户端收到SYN报文之后,会发送一个ACK报文,报文里面会将服务端的ISN(就是y)+1作为ack值(ack=y+1).此时客户端处于ESTABLISHED 状态.服务端收到ACK报文之后,服务端也进入ESTABLISHED 状态,此时连接建立,可以开始通信

1.2 “打印机小故事”

TCP三次握手通俗过程
有一次工作,小赵希望用打印机打点材料,可是自己电脑没驱动,就想着喊小王帮忙打一

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值