TCP协议

简介

TCP是一种面向连接的单播协议,在发送数据之前,通信双方之间需要建立起连接。

连接的建立和终止

  • 连接需要用到两端的IP地址和端口号
  • 连接分成三个阶段,分别是启动、数据传输和退出。

连接过程

TCP的连接通常被称为三次握手,采用客户机到服务器的请求方式。连接过程如下

  1. 客户端打开应用,同时向服务器发送连接请求,SYN=1,seq=x
  2. 服务器的应用被动打开。若同意客户端的请求,发回确认报文。SYN=1,ack=x+1。ACK=1,seq=y。
  3. 客户端此时收到了来自服务器的确认报文,向服务器发送确认连接的报文。ACK=1,ack=y+1,seq=x+1。

在这里插入图片描述

断开过程

  TCP的连接是全双工的,因此在每个方向上都要独立的关闭。TCP支持双方的同时请求关闭的情况,但是大多数情况下,由客户端发起关闭的请求。关闭的过程也被称为四次挥手。

  1. 客户端发送一个FIN,用来关闭客户端到服务器端的数据传送。FIN=1,seq=u
  2. 服务器收到FIN,发回一个ACK,确认序号为收到的序号+1。ACK=1,seq=v。ack=u+1
  3. 服务器关闭和客户端的数据传送,发送一个FIN给客户端。FIN=1,ACK=1,seq=w,ack=u+1
  4. 客户端发回ACK报文并且确认,并将确认序号设置为收到的序号+1 .ACK=1,seq=u+1,ack=w+1
    在这里插入图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值