当前位置: 首页 > news >正文

13、TCP和UDP的区别【高频】

  • TCP是面向字节流的,它是按一个字节一个字节地传输数据的,并不关心传输了多少报文段;而UDP面向报文的,它是以报文为单位传输数据的,并保留了原始报文的边界,并不拆分

  • TCP是面向连接的,传输数据前经过三次握手简历连接;而UDP是无连接的,在输出数据前不需要任何准备,因此也没有建立连接的时延

  • TCP只能单播传输(点对点);而UDP是无连接的,所以它的传播方式更加灵活:可以单播,多播,广播(一对多、多对一皆可)

  • TCP通过校验和、确认应答、超时重传、流量控制等机制,可以保证传输的数据 按序到达,不会丢失和重复;而UDP不能保证数据是否能正确传输

  • TCP 通过拥塞控机制,可以根据网络的拥塞情况,调整传输速率;而UDP没有拥塞控制,网络拥塞时也不会降低自己的传输速率

  • TCP报文首部至少有 20字节,包括 序列号、确认号、选项字段等信息;而UDP报文首部只有 8字节并且是固定不变的,开销较小

    TCP:
    在这里插入图片描述

    UDP:
    在这里插入图片描述

  • TCP 的数据大小如果大于 MSS 大小,则会在传输层分片和组装。如果中途丢失一个分片,只需要传输丢失的这一个分片即可。

    UDP 的数据大小如果大于 MTU(以太网中一般是1500字节) 大小,则会在 IP 层进行分片和组装。但是如果中途丢了一个分片,则就需要重传所有的数据包,影响效率。所以通常 UDP 的报文要小于 MTU。

MSS和MTU

img

在这里插入图片描述

MSS:maximum segment size,最大分节大小,为TCP数据包每次传输的最大数据分段大小。MSS值为MTU值减去IPv4 Header(20 Byte)和TCP header(20 Byte)得到

MTU:maximum transmission unit,最大传输单元,由硬件规定,如以太网的MTU为1500字节。主要在数据链路层

  • TCP 适用于 需要可靠传输 的应用,比如 网页浏览、文件传输等;而 UDP 适用于 对实时性要求高 的应用,比如 语音通话、视频会议等

相关文章:

  • MYSQL的安装教程
  • Leetcode-100 完全平方数
  • Python——无损将 .mp4 转成 .gif
  • vue前端杂记
  • 亚马逊云科技Marketplace(中国区)上架专业服务产品, “云生态连接器”价值凸显
  • flask 安装后不能识别
  • 系统架构设计师-第3章 数据库设计
  • 【mysql】有索引和没有索引字段更新时锁的不同
  • 使用Spring AI调用AI模型
  • YOLOv8改进SPFF-LSKA大核可分离核注意力机制
  • docker oracle11
  • windows2012部署redis5并安装为服务
  • svn 通过127.0.01能访问 但通过公网IP不能访问,这是什么原因?
  • Nacos简介、安装与使用(保姆级教程!!!)
  • ProfibusDP主站转ModbusTCP网关如何进行数据互换
  • 学习日记-250305
  • 大数据环境(单机版) Flume传输数据到Kafka
  • C++ JSON库的使用示例
  • MambaMorph:基于 Mamba 的医学 MR-CT 可变形配准框架
  • scBaseCamp:一个AI代理的可持续扩充的单细胞数据存储库
  • 新闻网站建设汇报/百度指数功能模块有哪些
  • php网站 服务器/适合口碑营销的产品
  • 免费做初中试卷的网站/搜狗站长平台
  • 网站建设火凤凰/百度推广是干什么的
  • 招聘网站销售怎么做/湖北seo整站优化
  • 东台做网站哪家便宜/广西网站建设制作