关于TCP 和UDP

1、当追求数据传输性能,选UDP。如:音频和多媒体应用

2、当追求数据传输的完整性、可控制性和可靠性时,选TCP。

3、TCP和UDP协议属于传输层协议,

4、TCP和UDP的区别:

(1)是否连接:TCP是面向连接的,TCP的发送发要确认接收方是否收到数据段(3次握手协议),而UDP是无连接的。

(2)传输可靠性: TCP是可靠的,UDP是不可靠的;

  • TCP在数据包接收无序、丢失或在交付期间被破坏时,负责数据恢复,它通过为每个数据报提供一个序号来完成此恢复,为确保正确收到数据,TCP要求目标计算机成功收到数据时发回一个确认(即ACK),如果在某个时限内未收到相应的ACK,将重新传送数据包。如果网络拥塞,这种重新传送将导致发送的数据包重复,但是接收计算机可使用数据包的序号来确定它是否为重复数据包,并在必要时丢弃它。
  • UDP协议不能保证数据准确无误的到达目的地,并不是说UDP就完全无法知道是否发生了错误,一个16位的UDP包包含了一个字节长的头部和数据的长度,校验码域使其可以进行整体校验,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。

(3)TCP只支持点对点通信,UDP支持一对一、一对多、多对一、多对多的通信模式。
(4)TCP是面向字节流的,UDP是面向报文(流模式和数据报模式)。
(5)TCP拥有拥塞控制机制,UDP没有拥塞控制,适合媒体通信。
(6)TCP要求系统资源较多,UDP较少。
(7)TCP首部开销(20个字节)比UDP的首部开销(8个字节)要大,TCP传送数据段的时候要给段标号,UDP协议不用。

5、数据的可靠传输表示的是不错,不乱,不丢,基于这些原则TCP需要做更多的事来保证。

6、选择TCP还是UDP主要看需求,TCP虽然可靠,但是时间成本更高。UDP只进行最基本的校验和纠错,所以类似视频流等对时间要求敏感的可以选择UDP。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值