TCP跟UDP区别
TCP协议跟UDP协议都存在于传输层,都在程序之间传输数据。、
传输控制协议(TCP):TCP(传输控制协议)定义了两台计算机之间进行可靠的传输而交换的数据和确认信息的格式,以及计算机为了确保数据的正确到达而采取的措施。协议规定了TCP软件怎样识别给定计算机上的多个目的进程如何对分组重复这类差错进行恢复。协议还规定了两台计算机如何初始化一个TCP数据流传输以及如何结束这一传输。TCP最大的特点就是提供的是面向连接、可靠的字节流服务。
TCP是基于连接的,有三个非常重要的步骤,分别是三次握手,传输确认,四次挥手
三次握手是为了在不可靠的信道上建立可靠的连接
tcp传输数据稳定可靠适用于对网络通讯质量较高的场景,需要将内容准确无误的传输给对方比如传输文件,发送邮件,浏览网页等。
用户数据报协议(UDP):UDP(用户数据报协议)是一个简单的面向数据报的传输层协议。提供的是非面向连接的、不可靠的数据流传输。UDP不提供可靠性,也不提供报文到达确认、排序以及流量控制等功能。它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。因此报文可能会丢失、重复以及乱序等。但由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。
UDP是基于非连接的的
UDP性能损耗少,资源占用比TCp占用少,udp不能保证丢包
udp优点是速度快,但是可能会产生丢包,所以适用于对实时性要求较高对少量丢包并没有太大要求的场景。比如域名查询,语音通话,视频直播等。
udp还有一个非常重要的应用场景,隧道网络:常用的VPN,在SDN中用到的VXLAN
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战