TCP和UDP之间的区别

TCP和UDP之间的区别

  1. 1TCP是面向连接的,UDP是无连接的
  2. TCP是可靠的,UDP是不可靠的
  3. TCP是面向字节流的,UDP是面向数据报文的
  4. TCP只支持点对点通信,UDP支持一对一,一对多,多对多
  5. TCP报文首部20个字节,UDP首部8个字节
  6. TCP有拥塞控制机制,UDP没有
  7. TCP协议下双方发送接受缓冲区都有,UDP并无实际意义上的发送缓冲区,但是存在接受缓冲区

使用场景

UDP 的主要应用场景

需要资源少,网络情况稳定的内网,或者对于丢包不敏感的应用,比如 DHCP 就是基于 UDP 协议的。
不需要一对一沟通,建立连接,而是可以广播的应用。因为它不面向连接,所以可以做到一对多,承担广播或者多播的协议。
需要处理速度快,可以容忍丢包,但是即使网络拥塞,也毫不退缩,一往无前的时候
例如

1.直播。直播对实时性的要求比较高,宁可丢包,也不要卡顿的,所以很多直播应用都基于 UDP 实现了自己的视频传输协议

2.实时游戏。游戏的特点也是实时性比较高,在这种情况下,采用自定义的可靠的 UDP 协议,自定义重传策略,能够把产生的延迟降到最低,减少网络问题对游戏造成的影响
3.物联网。一方面,物联网领域中断资源少,很可能知识个很小的嵌入式系统,而维护 TCP 协议的代价太大了;另一方面,物联网对实时性的要求也特别高。比如 Google 旗下的 Nest 简历 Thread 4,Group,推出了物联网通信协议 Thread,就是基于 UDP 协议的
4.许多应用只支持UDP,如:多媒体数据流,不产生任何额外的数据,即使知道有破坏的包也不进行重发。
5.视频聊天

TCP 的主要应用场景

1.适用于对数据传输可靠性要求比较高的场景,例如文本传输。
2.互联网和企业网上客户端应用,数据传输性能让位于数据传输的完整性,可控制性和可靠性。
3.发消息的场景以及文件传输,要确保发送的消息不丢失

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值