TCP 3次握手4次挥手理解

http://blog.csdn.net/xifeijian/article/details/12777187
图片引用自http://blog.csdn.net/xifeijian/article/details/12777187

建立连接:3次握手

  1. (客户端对服务器说: ”你好,我可以跟你连接吗?“)
    客户端发送报文给服务器端:
    SYN=1 ACK = 0 SEQ=x
    进入 SYN_SEND 状态。
  2. (服务器向客户端确认: ”好的,让我们开始吧,你准备好了吗?”)
    服务器端收到 SYN 报文后,回应报文给客户端:
    SYN=1 ACK=1 ack=x+1 SEQ=y
    进入 SYN_RECV 状态。
  3. (客户端向服务器确认: ”好的,我准备好啦。”)
    客户端收到服务器端的 SYN 报文,回应报文给服务器端:
    SYN=0 ACK=1 ack=y+1 SEQ=x+1
    进入 Established 状态。
    服务器端收到后也进入 Established 状态。
    在这里插入图片描述
    图片引用自http://baijiahao.baidu.com/s?id=1654225744653405133&wfr=spider&for=pc

断开连接:4次挥手

  1. A对B说:“让我们断开连接吧?”
    A首先调用 close,称该端执行“主动关闭”(active close):
    FIN=1 Seq=U
    A进入FIN-WAIT-1阶段,即半关闭阶段,停止发送数据。
  2. B收到后对A说:“好的,麻烦先等等让我先处理完剩下的事情。”
    B接收到这个FIN执行 “被动关闭”(passive close):
    ACK=1 ack=U+1 Seq=v
    B进入CLOSE-WAIT阶段,半关闭状态。
    A收到后进入FIN-WAIT-2阶段
  3. B对A说:“我处理完啦,让我们断开连接吧?”
    B做好了释放连接准备,再次向A发出一段TCP报文:
    FIN=1 ACK=1 ack=U+1 Seq=w
    B进入LAST-ACK阶段。
  4. A收到后对B说:“好的,那我断开了。”
    A收到B报文后向B确认结束:
    ACK=1 ack=w+1 Seq=U+1
    A进入TIME-WAIT阶段
    B收到后进入CLOSED阶段
    A等待2MSL之后,进入CLOSED阶段
    在这里插入图片描述
    图片引用自http://baijiahao.baidu.com/s?id=1654225744653405133&wfr=spider&for=pc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值