2024/02/06

画出TCP三次握手和四次挥手的示意图

三次握手

2024/02/06_第1张图片

四次挥手

2024/02/06_第2张图片

并且总结TCP和UDP的区别

TCP:

  • TCP提供面向连接的,可靠的数据传输服务
  • 传输过程中,数据无误、数据无丢失、数据无失序、数据无重复
    • TCP会给每个数据包编上编号,该编号称之为序列号
    • 每个序列号都需要应答包应答,如果没有应答,则会将上面的包重复发送直到正确为止
  • 数据传输效率低,耗费资源多
  • 数据收发是不同步的
    • 为了提高效率,TCP会将多个较小,并且发送间隔短的数据包,沾成一个包发送,该现象称为沾包现象
    • 该沾包算法称之为Nagle算法
  •  TCP的使用场景:对传输质量比较高的以及传输大量数据的通信,在需要可靠通信的传输场合,一般使用TCP协议
    • 例如:账户登录,大型文件下载的时候

UDP:

  • 面向无连接的,不保证数据可靠的,尽最大努力传输的协议
  • 数据传输过程中,可能出现数据丢失、重复、失序现象
  • 数据传输效率高,实时性高
  • 限制每次传输的数据大小,多出部分直接忽略删除
  • 收发是同步的,不会沾包
  • 适用场景:发送小尺寸的,在接收到数据给出应答比较困难的情况下
    • 例如:广播、通讯软件的音视频

你可能感兴趣的:(网络,c语言)