TCP与UDP技术优缺点

我将自己学习的通信协议进行一下总结,互联网通信协议分为TCP和UDP两种,在网络应用上各自拥有不同的优缺点。

TCP协议上规定类流控制,确保通信数据可靠、顺序到达目的地,因此有一个三次握手的要求。按照协议规范的要求,实现的路由设备提供相应的支持,并且尽量不丢弃TCP数据,实现协议的系统驱动层进行重发和滑动窗口控制,并且通过增加重发时间减少可能带来的网络堵塞问题。系统提供的API应用上,针对不同的链接分配独立缓冲区,进一步减少可能的丢包问题(由于缓冲区满造成数据无法接受引起数据包丢失问题)。

UDP协议面向无连接通信,没有三次握手的需求,网络设备在通信时,UDP数据拥有比TCP数据更高的优先通信权利,这点使得UDP数据在通信上更加的快速,但是当网络拥堵时,通信设备同样会优先丢弃UDP数据,这种设计方式会导致UDP数据出现丢失的问题,同时协议没有规定相应的流控制方式,自然也不会保证数据的顺序到达。在没有流控制的情况下,UDP数据可能出现丢失、乱序到达的问题,同样由于没有流控制,如果开发控制不当,可能导致数据风暴问题。在系统驱动实现上,由于所有的UDP数据接收时,使用共享的数据缓冲区,设置不当大小的缓冲区,可能会增加数据包的丢失问题,这个就是为什么UDP协议无法实现高并发的服务器原因所在。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值