tcp 和 udp的区别?

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/meism5/article/details/90414229

tcp 和 udp的区别?

TCP 
    协议官方定义     维基百科介绍

UDP 
    协议官方定义     维基百科介绍

可参考:
TCP、UDP 协议的区别的详细分析
基于 TCP、UDP 协议编程差异


TCP/IP 协议是一个协议簇,包括很多协议。命名为 TCP/IP 协议的原因是 TCP 和 IP 这两个协议非常重要,应用很广。
TCP 和 UDP 都是 TCP/IP 协议簇里的一员。

TCP,Transmission Control Protocol 的缩写,即传输控制协议。
面向连接,即必须在双方建立可靠连接之后,才会收发数据
信息包头 20 个字节
建立可靠连接需要经过3次握手
断开连接需要经过4次挥手
需要维护连接状态
报文头里面的确认序号、累计确认及超时重传机制能保证不丢包、不重复、按序到达
拥有流量控制及拥塞控制的机制

UDP,User Data Protocol 的缩写,即用户数据报协议。
不建立可靠连接,无需维护连接状态
信息包头 8 个字节
接收端,UDP 把消息段放在队列中,应用程序从队列读消息
不受拥挤控制算法的调节
传送数据的速度受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制
面向数据报,不保证接收端一定能收到
    
    
区别:
TCP 面向连接;UDP 不建立可靠连接
TCP 信息包头 20 个字节;UDP 8 个字节
TCP 只能一对一的传输;UDP 支持一对一、一对多、多对一、多对多的传输
TCP 需要维护连接状态;UDP 无
TCP 拥有流量控制及拥塞控制的机制;UDP 不关注网络状况
TCP 通过流模式传输数据;UDP 通过数据报模式传输数据
TCP 保证数据正确性、不丢包、不重复、有序性;UDP 只最大交付,不保证可靠性
TCP 适合网络负担不大、可靠性要求高的场景;UDP 适合网络负担重响应高、客户端较多、可靠性要求不高的场景


收藏、分享最有参考价值的编程信息 

博客 [ ConstXiong ]

公众号 [ ConstXiong ]

猜你喜欢

转载自blog.csdn.net/meism5/article/details/90414229