tcp和 udp区别

相同点:都是传输层协议

不同点

是否面向连接

tcp:面向连接

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

udp:无连接

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

数据传输方式

tcp:字节流

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

udp:数据报文

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

是否可靠

tcp:可靠传输

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

udp:不可靠传输

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

传输效率

tcp:效率低

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

udp:效率高

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

应用场景

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

udp:实时性要求高

相关推荐
数据法师1 天前
开源情报收集工具GhostTrack深度测评:IP、手机号、用户名的合规信息查询方案
网络·网络协议·tcp/ip
想成为优秀工程师的爸爸1 天前
第三十篇技术笔记:郭大侠学UDS - 人有生老三千疾,望闻问切良方医
网络·笔记·网络协议·tcp/ip·信息与通信
灰子学技术1 天前
Envoy HTTP Connection Manager (HCM) 技术文档
网络·网络协议·http
日取其半万世不竭2 天前
WordPress建站 + 免费SSL证书配置完整教程
网络·网络协议·ssl
春蕾夏荷_7282977252 天前
1、c++ acl udp服务器客户端简单实例-服务器端(1)
服务器·c++·udp
七七powerful2 天前
AI+运维提效--HTTPS 证书有效期监控方案
网络协议·http·https
环流_2 天前
IP协议特性
网络·tcp/ip·智能路由器
艾莉丝努力练剑2 天前
【Linux网络】Linux 网络编程入门:UDP Socket 编程(上)
linux·运维·服务器·网络·c++·udp
计算机安禾2 天前
【Linux从入门到精通】第44篇:Linux网络协议栈与TCP参数调优
linux·网络协议·tcp/ip
凯瑟琳.奥古斯特2 天前
UDP检验和原理详解
网络·网络协议