TCP 与UDP 的区别

1. 基于连接vs 无连接
TCP 是面向连接的协议,而UDP 是无连接的协议。这意味着当一个客户端和一个服
务器通过TCP 发送数据之前,必须先建立连接,建立连接的过程也被称为TCP 三次握手。
2.可靠性
TCP 提供交付保证,这意味着一个使用TCP 协议发送的消息是保证交付给客户端的,
如果消息在传输过程中丢失,那么它将重发。UDP 是不可靠的,它不提供任何交付的保证,
一个数据报包在运输途中可能会丢失。
3.有序性
消息到达网络的另一端时可能是无序的,TCP 协议将会为你排好序。UDP 不提供任何
有序性的保证。
4.速度
TCP 速度比较慢,而UDP 速度比较快,因为TCP 必须创建连接,以保证消息的可靠
交付和有序性,他需要做比UDP 多的事。这就是为什么UDP 更适用于对速度比较敏感的
应用。TCP 适合传输大量数据,UDP 适合传输少量数据。
5.重量级vs 轻量级
TCP 是重量级的协议,UDP 协议则是轻量级的协议。一个TCP 数据报的报头大小最
少是20 字节,UDP 数据报的报头固定是8 个字节。TCP 报头中包含序列号,ACK 号,数
据偏移量,保留,控制位,窗口,紧急指针,可选项,填充项,校验位,源端口和目的端
口。而UDP 报头只包含长度,源端口号,目的端口,和校验和。
6.流量控制或拥塞控制
TCP 有流量控制和拥塞控制。UDP 没有流量控制和拥塞控制。
7.TCP 面向字节流,UDP 是面向报文的
TCP 是字节流的协议,无记录边界。
UDP 发送的每个数据报是记录型的数据报,所谓的记录型数据报就是接收进程可以识
别接收到的数据报的记录边界。
8.TCP 只能单播,不能发送广播和组播;UDP 可以广播和组播
TCP 应用场景:效率要求相对低,但对准确性要求相对高的场景。因为传输中需要
对数据确认、重发、排序等操作,相比之下效率没有UDP 高。举几个例子:文件传输、邮
件传输、远程登录。
UDP 应用场景:效率要求相对高,对准确性要求相对低的场景。举几个例子:QQ
聊天、QQ 视频、网络语音电话(即时通讯,速度要求高,但是出现偶尔断续不是太大问
题,并且此处完全不可以使用重发机制)、广播通信(广播、多播)。

在Socket编程中,TCPUDP是两种不同的传输协议。TCP(Transmission Control Protocol)是一种面向连接的协议,而UDP(User Datagram Protocol)是一种无连接的协议。它们在以下几个方面有所不同: 1. 连接性:TCP是面向连接的,它在通信之前需要先建立连接,然后在可靠的双向通信中保持这个连接。UDP是无连接的,每个数据包都是独立的,发送者接收者之间没有建立连接的过程。 2. 可靠性:TCP提供可靠的数据传输,它使用确认重传机制来确保数据的准确性完整性。UDP不保证数据的可靠性,因此在传输过程中可能会丢失数据包。 3. 速度效率:由于TCP提供的可靠性连接管理的机制,它的速度相对较慢,而UDP不需要连接建立维护的开销,因此速度更快。 4. 应用场景:TCP适用于需要可靠传输顺序传输的应用,例如文件传输,电子邮件等。UDP适用于实时应用,例如音频视频流,游戏等,对于这些应用来说,速度实时性更为重要,而可靠性可以通过应用层来处理。 总结起来,TCP提供了可靠的、面向连接的传输,适用于重要数据的传输,而UDP提供了快速的、无连接的传输,适用于实时性要求较高的应用。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Scoket编程基础 -- TCP UDP 的 简介及其区别](https://blog.youkuaiyun.com/Czhenya/article/details/78299152)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [TCP UDP 在socket编程中的区别(转载)](https://blog.youkuaiyun.com/LIN943168247/article/details/120264124)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值