UDP和TCP有什么区别

 我来答
百度网友e273eb4
2018-07-26 · TA获得超过1万个赞
知道小有建树答主
回答量:212
采纳率:0%
帮助的人:5.6万
展开全部

1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付

Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。

3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。

4.每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

5、TCP对系统资源要求较多,UDP对系统资源要求较少。

UDP 是User Datagram Protocol的简称, 中文名是用户数据报协议,是OSI(Open System Interconnection,开放式系统互联) 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务,IETF RFC 768是UDP的正式规范。UDP在IP报文的协议号是17。

UDP协议全称是用户数据报协议  ,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。在OSI模型中,在第四层——传输层,处于IP协议的上一层。UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。

UDP用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但是即使是在今天UDP仍然不失为一项非常实用和可行的网络传输层协议。

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据报协议(UDP)是同一层内,  另一个重要的传输协议。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 

应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分区成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元( MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体 的TCP层。

TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
桥玉英陈妍
2020-05-28 · TA获得超过3.8万个赞
知道大有可为答主
回答量:1.3万
采纳率:27%
帮助的人:879万
展开全部
这里先简单的说一下tcp与udp的区别:
1。基于连接与无连接
2。对系统资源的要求(tcp较多,udp少)
3。udp程序结构较简单
4。流模式与数据报模式
5。tcp保证数据正确性,udp可能丢包,tcp保证数据顺序,udp不保证另外结合gprs网络的情况具体的谈一下他们的区别:
1。tcp传输存在一定的延时,大概是1600ms(移动提供),udp响应速度稍微快一些。
2。tcp包头结构
源端口16位
目标端口
16位
序列号
32位
回应序号
32位
tcp头长度
4位
reserved
6位
控制代码6位
窗口大小16位
偏移量16位
校验和16位
选项
32位(可选)
这样我们得出了tcp包头的最小大小.就是20字节.
udp包头结构
源端口16位
目的端口16位
长度
16位
校验和
16位
udp的包小很多.确实如此.因为udp是非可靠连接.设计初衷就是尽可能快的将数据包发送出去.所以udp协
议显得非常精简.
tcp与udp的区别详说:
引言:传输层上的主要协议是tcp和udp。正如网络层控制着主机之间的数据传递,传输层控制着那些将要进入网络层的数据。
相同点:udp和tcp都属于传输层协议。
udp协议---即用户数据报协议,网络传输层协议
应用:主要用来支持那些需要在计算机之间传输数据的网络应用。包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用udp协议。
说明:它是一种无连接的协议,无连接主要是和tcp协议相比较的。
当利用tcp协议传送数据的时候,首先必须先建立连接(也就是所谓的握手)才可以传输数据。而当计算机利用udp协议进行数据传输的时候,发送方只需要知道对方的ip地址和端口号就可以发送数据,而并不需要进行连接。
udp的一个致命缺点:udp由于不提供可靠数据的传输,当计算机之间利用udp协议传送数据的时候,发送方只管发送数据,而并不确认数据是否被对方接收。这样就会导致某些udp协议数据包在传送的过程中丢失,尤其网络质量不令人满意的情况下,丢失数据包的现象会更严重。这就是为什么在网络上传输重要数据不采用udp协议的原因。
udp的优点:虽然利用udp协议来传送安全性要求高的数据是不适合的,但对于那些不重要的数据,或者即使丢失若干数据包也不影响整体性的数据,如音频数据,视频数据等,采用udp协议就是一个非常不错的选择。如目前网络流行的很多即时聊天程序,如oicq和icq等,采用的就是udp协议。同时虽然udp协议无法保证数据可靠性,但具有对网络资源开销较小,数据处理速度快的优点,所以在有些对数据安全性要求不是很高的情况下,采用udp协议也是一个非常不错的选择。
http://hi.baidu.com/uinx/blog/item/3b8249228f8edcf6d6cae23c.html
http://hi.baidu.com/huangruiyuan/blog/item/7c1cdc03279499ed08fa938d.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
合金迷
2007-03-12 · TA获得超过8741个赞
知道大有可为答主
回答量:6605
采纳率:0%
帮助的人:4370万
展开全部
TCP---传输控制协议,提供的是面向连接、可靠的字节流服务。当客户和服务器彼此交换数据前,必须先在双方之间建立一个TCP连接,之后才能传输数据。TCP提供超时重发,丢弃重复数据,检验数据,流量控制等功能,保证数据能从一端传到另一端。
UDP---用户数据报协议,是一个简单的面向数据报的运输层协议。UDP不提供可靠性,它只是把应用程序传给IP层的数据报发送出去,但是并不能保证它们能到达目的地。由于UDP在传输数据报前不用在客户和服务器之间建立一个连接,且没有超时重发等机制,故而传输速度很快。

用TCP还是UDP,那要看你的程序注重哪一个方面?可靠还是快速?

参考资料: http://zhidao.baidu.com/question/79577.html

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老男孩教育
2021-08-03 · 百度认证:北京一天天教育科技有限公司官方账号,教育领域创作者
老男孩教育
专注于Linux高级运维、Python开发、大数据培训,为您分享行业前沿的技术,有效的学习方法和有价值的学习资料。
向TA提问
展开全部
TCP是面向连接的协议,而UDP是无连接的协议,意味着当一个客户端和一个服务端通过TCP发送数据前,必须先建立连接,建立连接的过程被称为TCP三次握手;
TCP提供交付保证,意味着一个使用TCP协议发送的信息是保证交付给客户端的,如果消息在传输过程中丢失,将重发;UDP是不可靠的,不提供任何交付的保证,一个数据报包在运输过程中可能会丢失;
消息到达网络的另一端时可能是无序的,TCP协议将会为你排序,UDP不提供任何有序性的保证;
TCP速度比较慢,而UDP速度比较快,因为TCP必须建立连接,以保证消息的可靠交付和有序性,需要做比UDP多的事;
TCP是重量级的协议,UDP协议则是轻量级的协议。一个TCP数据报的报头大小最少是20个字节,UDP数据报的报头固定是8个字节。TCP报头中包含序列号,ACK号,数据偏移量,保留,控制位,窗口,紧急指针,可选项,填充项,校验位,源端口和目的端口。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
year好好学习ye
高粉答主

2019-12-21 · 关注我不会让你失望
知道大有可为答主
回答量:2万
采纳率:63%
帮助的人:544万
展开全部
TCP与UDP区别总结:

1、TCP面向连接(如打电话要先拨号建立连接);UDP是无连接的,即发送数据之前不需要建立连接

2、TCP提供可靠的服务。也就是说,通过TCP连接传送的数据,无差错,不丢失,不重复,且按序到达;UDP尽最大努力交付,即不保证可靠交付

Tcp通过校验和,重传控制,序号标识,滑动窗口、确认应答实现可靠传输。如丢包时的重发控制,还可以对次序乱掉的分包进行顺序控制。

3、UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。

4.每一条TCP连接只能是点到点的;UDP支持一对一,一对多,多对一和多对多的交互通信

5、TCP对系统资源要求较多,UDP对系统资源要求较少。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式