您的位置:首页 > 理论基础 > 计算机网络

TCP与UDP技术优缺点

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

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

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