tcp和 udp区别

相同点:都是传输层协议

不同点

是否面向连接

tcp:面向连接

  • 三次握手,四次挥手
  • 端对端连接
  • 全双工通信(允许双端同时收发数据)

udp:无连接

  • 无三次握手,四次挥手
  • 支持一对一,一对多,多对多

数据传输方式

tcp:字节流

  • 完整的用户消息可能被拆分成多个tcp报文进行传输 MTC、MSS
  • 对于接收方而言,需要处理粘包问题

udp:数据报文

  • udp每次收发都是完整的报文

是否可靠

tcp:可靠传输

  • tcp分段、进行发给送数据包的控制
  • 序列号,tcp报文包含序列号,确保完整接收,丢失重复数据,排序
  • 确认应答机制,确认数据包收到
  • 校验和,检测报文在传输过程中的数据变化
  • 滑动窗口,流量控制,防止包丢失
  • 拥塞控制
  • 重传机制

udp:不可靠传输

  • 不保证消息交付
  • 不保证交付顺序
  • 不进行拥塞控制
  • 不进行流量控制 没有接收缓冲区

传输效率

tcp:效率低

  • 实现可靠传输造成性能损失
  • 头信息20个字节

udp:效率高

  • 不可靠传输
  • 头信息8个字节,吞吐量就会大一些

应用场景

tcp:要求数据问题,对速度需求不高

udp:实时性要求高

相关推荐
草莓熊Lotso20 小时前
【Redis 初阶】Set 类型深度解析:去重集合的运算能力与实战场景
linux·网络·数据库·windows·redis·tcp/ip·缓存
kekekzt1 天前
TCP协议的粘包问题介绍,IP分片,MTU,MSS,滑动窗口的概念及之间的关系
网络·网络协议·tcp/ip
Learn-Share_HY2 天前
[IT Network]如何配置反向路徑過濾器(rp_filter),以解決路由不對稱問題?
linux·嵌入式硬件·物联网·网络协议·tcp/ip·http·iot
小镇敲码人2 天前
【深入浅出】之Qt 事件系统实战:鼠标、键盘、滚轮、窗口与定时器事件
数据库·qt·网络协议·mysql·http
K成长日志2 天前
BLE不可连接状态--广播态
物联网·网络协议·蓝牙·低功耗·iot·ble
Fxkj8882 天前
企业新媒体IP陪跑真实价值解析:合作体验与效果评判标准
大数据·人工智能·tcp/ip·媒体
DevOpenClub2 天前
全球区域与 IP 定位工作台案例方案
大数据·网络·网络协议·tcp/ip
wuyk5552 天前
从零吃透 Modbus 通信|第 6 章:线圈功能码 05/0F 实现 & Modbus‑TCP 基础入门
c语言·网络·网络协议·tcp/ip
Titan20242 天前
HTTPS基础知识梳理
服务器·网络·c++·网络协议·学习·http·https
新时代牛马2 天前
epoll 源码路径:从epoll_ctl 到ep_poll 的就绪唤醒
网络·数据库·网络协议