计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)

文章目录

  • 一 、TCP报文格式
  • 二 、TCP三次握手
  • 三 、TCP四次挥手
  • 四 、UDP协议介绍
      • UDP报文的首部格式
      • TCP与UDP的区别
      • 总结

一 、TCP报文格式

TCP协议是一种可靠的、面向连接的协议。传输数据稳定可靠是指通信双方之间在进行通信之前要先建立连接。比如打电话,双方通话前需要先建立连接。

计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)_第1张图片

TCP报文段:

  • 源端口号:发送方进程的端口号。
  • 目标端口号:接收端进程的端口号。
  • 序号:发送端将每个字节进行编号,用于接收端将其按序重组。
  • 确认号:对发送段信息的确认。
  • 首部长度:用它可以确定首部数据结构的字节长度。一般情况下TCP首部是20字节,但首部长度最大可以扩展为60字节。
  • 控制位:
    URG:紧急位。紧急指针有效位。
    ACK:确认位。只有当 ACK=1 时,确认序列号字段才有效;当 ACK=0 时,确认号字段无效。
    PSH:急迫位。标志位为 1 时,要求接收方尽快将数据段送达应用层。
    RST:重置位。当 RST 值为 1 时,通知重新建立 TCP连接。
    SYN:同步/连接位。同步序号位,TCP需要建立连接时将这个值设为 1。
    FIN:断开位。当 TCP 完成数据传输需要断开连接时,提出断开连接的一方将这个值设为 1。
  • 窗口大小:本地可接收的数据段是可变的,网络通常的时候会曾大流量的传输,流量不通顺的时候会减小流量的传输,确保网络数据的可靠传输。
  • 校验和:用于检测数据有没有被改动过,如被改动过则将数据丢弃。
  • 紧急指针:和 URG配合使用,当 URG=1 时有效。
  • 选项:在 TCP首部可以有多达 40 字节的可选信息。

二 、TCP三次握手

计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)_第2张图片
如图所示,pc1给pc2发送一个SYN报文,pc2收到后会发送一SYN+ACK报文给pc1,最后pc1会再发送一个ACK的确认报文。

三 、TCP四次挥手

计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)_第3张图片

1、pc1给pc2发送一个请求断开的FIN报文(此时的ACK确认上层数据)
2、pc2接收到后会回应一个ACK报文
3、pc2给pc1发送一个FIN+ACK报文
4、pc1接收到后回复一个ACK报文
pc1在接收到pc2的FIN+ACK报文后会进入TIME_WAIT状态,再过60秒后才会进入CLOSED状态。

四 、UDP协议介绍

UDP协议是无连接的协议。传输数据速度更快,效率更高。无连接网络协议,是指通信双方不需要事先建立一条通信线路,而是把每个带有目的地址的包送到网络线路上,由系统自主选定路线进行传输。比如QQ、微信发送信息。

UDP报文的首部格式

计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)_第4张图片

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

TCP与UDP的区别

计算机网络基础(五)---TCP协议,三次握手、四次挥手、UDP协议------------(你奶奶看完都能懂)_第5张图片

总结

  • TCP向上层提供面向连接的可靠服务 ,UDP向上层提供无连接不可靠服务。
  • 虽然 UDP 并没有 TCP 传输来的准确,但是也能在很多实时性要求高的地方有所作为。
  • 对数据准确性要求高,速度可以相对较慢的,可以选用TCP

你可能感兴趣的:(计算机网络,tcp/ip,udp,计算机网络)