关于TCP

TCP基本认识

TCP(传输控制协议 Trasmission Control Protocol),传输层

面向连接的,可靠的,有序的

TCP连接建立

三次握手 :

  1. 客户端,服务端都处于 Closed状态
  2. 服务端 监听 客户端 端口, 服务端 Closed -> Listened状态
  3. 客户端 产生随机数填入TCP首部序列号,将SYN 置为1, 发送 SYN报文
  4. 服务端 接受客户端发送的 SYN报文后, 产生随机数填入 TCP头部的序列号,将客户端报文中的序列号(client_isn) + 1 填入 确认应答报文, 将 TCP首部的SYN, ACK标志位 置为1, 发送 SYN/ACK 报文
  5. 客户端 接受 来自 服务端的 应答报文后, 将服务端的应答报文中的序列号(server_isn) + 1后填入 确认应答报文,将 ACK 置为1, 发送 ACK报文

TCP连接断开

四次挥手:

  1. 客户端 将TCP首部的 FIN 标志位 置为 1, 发送 FIN 报文 。 客户端状态: ESTABLISTENED -> FIN_WAIT_1
  2. 服务端 接受 来自客户端的 FIN报文后, 将 TCP首部的 ACK标志位 置为 1, 发送 ACK报文 。 服务端状态: ESTABLISTENED -> CLOSED_WAIT
  3. 服务器 等待 数据 处理 完成后, 将 TCP首部的 FIN标志位 置为 1, 发送 FIN报文 。服务端状态:CLOSED_WAIT -> LAST_ACK
  4. 客户端 接受 来自 服务器的 FIN报文后, 将 TCP首部的 ACK标志位 置为 1, 发送 ACK 报文, 客户端状态: FIN_WAIT2 -> TIME_WAIT
  5. 服务端 接受 来自 客户端的 ACK报文后, 正常关闭 。服务端状态: LAST_ACK -> CLOSED
  6. 客户端在等待 2MSL 时间后,自动完成连接的关闭。 客户端状态: TIME_WAIT -> CLOSED

主动关闭连接的, 才有 TIME_WAIT 状态

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值