FAZE CLAN UP! @razzh.cn

TCP 和 UDP 的区别

Oct 9 · 1 min

TCPUDP 都是传输层协议,他们都属于 TCP/IP 协议族。

#TCP

传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议。

#TCP 的特点

  • 面向连接

面向连接指的是在发送数据之前必须通过“三次握手”建立连接,这样能够建立可靠连接,为数据传输提供稳定的字节流服务。

  • 仅支持单播传输

每条 TCP 连接都必须是一对一的。

  • 面向字节流

字节流服务是指,为了方便传输,将大块数据分割成以报文段 segment 为单位的数据包进行管理。

  • 可靠传输

对于可靠传输,判断丢包,误码靠的是客户端和服务端发出的 TCP 序号和确认号 ACKTCP 为了保证报文传输的可靠,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的字节发回一个相应的确认 ACK;如果发送端实体在合理的往返时延 2MSL 内未收到确认,那么对应的丢失的数据将会被重传。

  • 拥塞控制

TCP 能够计算当前网络的传输速率,根据它去调整数据包的传输速率,丢包概率小。

  • TCP 提供全双工通信

TCP 允许通信双方的应用程序在任何时候都能发送数据。TCP 连接的两端都设有发送缓存接收缓存,用来临时存放双向通信的数据。

#UDP

用户数据报协议 (UDP,User Datagram Protocol)是一种面向无连接的协议。

#UDP 特点

  • 面向无连接

UDP 不像 TCP 是基于连接才能发送数据的,UDP 发送数据不需要建立连接,所以 UDPTCP 的速度更快。

  • 有单播,多播,广播的功能

多播、广播是指,服务器接收多个数据包,其数据包在发送时不需要等待回应,因此多播、广播发送的数据是不稳定且容易丢失的。

  • 面向报文

UDP 发送数据包时不像 TCP 会将数据包拆分成数据片段 segmentUDP 对于应用端交下来的报文既不合并也不拆分,而是将报文主体发送给服务端,发送时,UDP 是无序发送数据包,服务端并不知道哪个数据先来。

  • 不可靠性

首先不可靠性体现在无连接上,通信都不需要建立连接,想发就发,这样的情况肯定不可靠。

并且收到什么数据就传递什么数据,并且也不会备份数据,发送数据也不会关心对方是否已经正确接收到数据了。

再者网络环境时好时坏,但是 UDP 因为没有拥塞控制,一直会以恒定的速度发送数据。即使网络条件不好,也不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包,但是优点也很明显,在某些实时性要求高的场景(比如直播、视频会议)就需要使用 UDP 而不是 TCP

  • 传输数据高效性

UDP 的头部开销小,只有8字节,相比 TCP 的至少20-60字节要少得多,在传输数据报文时是很高效的

#TCP和UDP的比较

对比TCPUDP
连接方式面向连接无连接
是否可靠可靠传输,使用流量控制和拥塞控制不可靠传输,不使用流量控制和拥塞控制
连接对象个数只能是一对一通信支持一对一,一对多,多对一和多对多交互通信
首部开销首部最小20字节,最大60字节首部开销小,仅8字节
适用场景适用于要求可靠传输的应用,例如文件传输直播,视频聊天

#参考

tcp-vs-udp
TCP 和 UDP 的特点、区别和使用场景

浙ICP备2024129591号-1
screen-logo
Special One - AGA / Eason
--:-- / --:--
  1. 1Special OneAGA / Eason
  2. 2陀飞轮陈奕迅
  3. 3听你说梁博
  4. 4Hotel california (live)Eagles

A: 行为怪诞无从触摸 常人配你不起

你有触角你会黑面十全十美

旁人冷语为何一起 旁人劝我心死

你更失控我更喜爱怪人像你

A: 天生孤僻所以更爱你 E:(越接触你)

A: 不依规则的爱更细腻 E:(越吓惊你)

A: 和你相比 难以相比 庸俗的美 E:(和我相比 难以欢喜 庸俗心理)

A: 让你羡慕自己 E:(别要待薄自己)

A: 非一般的完美 E:(要吞声忍气)

A: 羊群如何离弃

A: 打击你我包庇 E:(打击我你包庇)

A: 惨得过是我欢喜 E:(只不过代价不菲)

A: 笑着去迎合你 E:(自欺)

A: 做你像做自己 E:(面对大量是非)

A: 我喜欢听歪理 E:(对你很多不利)

A: 情人毫无常理 另有趣味 E:(未免乏味)

A: 享受怪物美

E: 欣赏我委屈你

合: 遗忘世界遗忘标准 离群更有惊喜

A: 爱你的我怪兽一样合情合理 E:(一样合情合理)

A: 彼此天生荒诞我似你 E:(越疼惜你)

A: 一起根本不要太贴地 E:(越怕伤你)

A: 神化一起 奇怪一起 离地嬉戏 E:(神化一起 奇怪一起 难敌风气)

A: 让你羡慕自己 E:(别要待薄自己)

A: 非一般的完美 E:(要吞声忍气)

A: 羊群如何离弃

A: 打击你我包庇 E:(打击我你包庇)

A: 惨得过是我欢喜 E:(只不过代价不菲)

A: 笑着去迎合你 E:(自欺)

A: 做你像做自己 E:(面对大量是非)

A: 我喜欢听歪理 E:(对你很多不利)

A: 情人毫无常理 另有趣味 E:(未免乏味)

合: 享受怪物美 欣赏你这种美

合: 情感本应古怪 喜不喜欢为何尚有顾忌

E: 让我羡慕自己 也许超出歪理 A:(这么辛苦你)

E: 是你离奇神化 喜欢我怪的美 A:(喜欢你美不美)

A: 蝙蝠与异兽一起 E:(蝙蝠与异兽一起)

合: 你像我怪癖 怪物最明白你

E: 做个独特自己 爱多么的诡秘 A:(爱多么的诡秘)

E: 情人离奇神秘 越有趣味 A:(越有趣味)

合: 享受你是你 不必世界审美

不用说道理

A: 只因怪得起 E:(怪得起)