TCP vs UDP 最核心区别(可靠性 vs 速度)

一、TCP(Transmission Control Protocol)

1. 核心:面向连接 + 可靠传输 + 有序传输。

  • **先建立连接:**三次握手(双方确认"我能收/你能收")。
  • 可靠性机制:
    • 确认 ACK:对方收到才算数
    • 重传:丢了就重发
    • 按序:乱序会重排
    • 流量控制/拥塞控制:防止把网络打爆
  • **代价:**协议开销更大、延迟更高、实现更复杂。

2. 适合场景:

  • 网页(HTTP/1.1、HTTP/2 常跑在 TCP 上)
  • 文件传输(FTP/SFTP)
  • 邮件、SSH 等需要"不能错"的业务

例子: 你下载一个安装包,少一个字节都不行 → TCP保证最终文件一致。

二、UDP(User Datagram Protocol)

1. 核心:无连接 + 尽力而为(不保证可靠、不保证有序)。

  • **不建连接:**发就完了
  • **不保证:**可能丢包、重复、乱序
  • **优点:**开销小、延迟低、速度快(更准确说是"更低时延/更少控制")

2. 适合场景:

  • 实时音视频、语音通话(宁愿偶尔花屏/掉音,也不要卡顿)
  • 游戏(更看重延迟)
  • DNS(请求很小,丢了再问一次就行)
  • 以及现代的 QUIC/HTTP/3:底层用 UDP,但在应用层自己实现"可靠性 + 加密 + 多路复用"。

例子: 打游戏时,丢一帧位置更新影响不大,但如果为了重传等半秒,你会感觉"瞬移/卡顿" → UDP更合适。

相关推荐
不会敲代码11 小时前
TCP/IP 与前端性能:从数据包到首次渲染的底层逻辑
前端·tcp/ip
S1998_1997111609•X2 小时前
论mysql国盾shell-sfa犯罪行为集团下的分项工程及反向注入原理尐深度纳米算法下的鐌檵鄐鉎行为
网络·数据库·网络协议·百度·开闭原则
以太浮标8 小时前
华为eNSP模拟器综合实验之- MGRE多点GRE隧道详解
运维·网络·网络协议·网络安全·华为·信息与通信
遇见火星8 小时前
Nginx 负载均衡配置模板:轮询、权重、IP哈希、最少连接
tcp/ip·nginx·负载均衡
时空自由民.9 小时前
WebSocket 协议介绍
网络·websocket·网络协议
mounter62511 小时前
深入理解 Linux 网络新特性:netkit 中的 RX/TX Queue Leasing 与 TCP Devmem
linux·服务器·网络·tcp/ip·kernel
时空自由民.11 小时前
CAN ,CANFD,EtherCAT介绍
网络协议·计算机网络
炘爚12 小时前
TCP三次握手和四次挥手
服务器·网络·tcp/ip
Gh0st_Lx12 小时前
【6】为什么有了 HTTP/1.1 ,还要 HTTP/2 和 HTTP/3
网络协议·http·php
学编程就要猛13 小时前
JavaEE初阶:网络原理-HTTP(下)
网络·网络协议·http