网络传输层协议TCP、UDP

前言

传输层位于网络七层协议中的第四层,用来完成不同用户之间进程的通信,由端到端,使用TCP/UDP协议,根据不同数据选择不同的用户进程

TCP/IP协议族的传输层协议

  • TCP(Transmission Control Protocol)
    传输控制协议
  • UDP(User Datagram Protocol)
    用户数据报协议

在这里插入图片描述

TCP协议介绍

1、TCP协议

  • TCP是面向连接的、可靠的进程到进程通信的协议
  • TCP提供全双工服务,即数据可在同一时间双向传输
  • TCP报文段
    TCP将若干个字节构成一个分组,叫做报文段
    TCP报文段封装在IP数据包中

在这里插入图片描述
2、TCP报文段
在这里插入图片描述
主要名词解释:

  • 序号:发送端为每个字节进行编号,便于接收端正确重组
  • 确认号:用于确认发送端的信息
  • URG:紧急指针位,优先从缓存区提取发送,1表示启动,0表示不启动
  • ACK:确认位
  • PSH:不经过缓存,直接将数据送到应用层
  • RST:重新建立连接
  • SYN:连接位
  • FIN:断开标识
  • 窗口大小:用于说明本地可以接收数据段的数目,窗口大小是可变的

3、TCP连接(三次握手与四次挥手)
(1)TCP建立的连接过程称为三次握手
在这里插入图片描述

  • 客户端发送SYN报文(Seq=x,SYN=1)到服务器,请求建立连接,等待服务器确认
  • 服务器收到SYN报文,确认客户的SYN(Ack=x+1,ACK=1),同时自己也发送一个SYN包(Seq=y,SYN=1),即SYN+ACK包
  • 客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(Seq=x+1,Ack=y+1,ACK=1),此包发送完毕,TCP连接成功,完成三次握手

(2)TCP断开连接的过程称为四次挥手
在这里插入图片描述

  • 客户端发送FIN、ACK报文到服务器,请求断开连接,等待服务器确认
  • 服务器收到客户端的报文后,返回ACK确认报文,此时服务可能还会存在对客户端发送数据的连接,不会立即断开连接
  • 服务器确认无数据传输到客户端后,会发送一个断开连接FIN、ACK报文,等待客户端确认
  • 客户端收到后,返回确认ACK报文到服务器,此时TCP连接断开,完成四次挥手

4、常用的TCP端口号及其功能
在这里插入图片描述

UDP协议介绍

1、UDP协议

  • 无连接、不可靠的传输协议
  • 花费的开销小

2、UDP报文的首部格式
在这里插入图片描述

  • UDP长度:用来指出UDP的总长度,为首部加上数据
  • UDP校验和:用来完成对UDP数据的差错校验,它是UDP协议提供的唯一的可靠机制

3、常用的UDP端口号及其功能
在这里插入图片描述

发布了106 篇原创文章 · 获赞 223 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_45682995/article/details/105368562
今日推荐