TCP与UDP的区别

TCP是面向连接的,可靠的,传输协议
UDP是无连接的,不可靠的,传输协议

两者的比较

1....是否需要建立连接...
使用UDP时,每个数据报文都包含完整的源地址以及目的地址,因此发送数据之前不需要建立发送方和接收方的连接。
TCP协议是一个面向连接的协议,发送方和接收方的成对的两个socket之间必须首先建立连接才能进行数据传输。

2....能够传输的数据的大小...
使用UDP传输数据时是有大小限制的,每个被传输的数据报必须限定在64KB之内。
TCP没有这方面的限制,一旦连接建立起来,双方的socket就可以按统一的格式传输大量的数据。

3....接受数据的正确性...
UDP使用尽最大努力交付,不保证可靠数据传输,而且到达的顺序与发送的顺序也不一定一样。TCP提供可靠交付的服务,接收方得到的是一个顺序的,无差错的数据流.

4....UDP是面向报文的,UDP对应用层交下来的报文,既不合并,也不拆分,而是保留这些报文的边界,在添加首部之后就向下交付给IP层。Tcp是面向字节流的,TCP中的流指的是流入到进程或者从进程流出的字节序列。TCP把应用程序交下来的数据块看成是一连串的无结构的字节流

5....效率。。
UDP的效率比TCP高.

6....UDP没有流量控制和拥塞控制,而TCP有。

既然有了保证可靠传输的TCP协议,为什么还要非可靠传输的UDP协议呢?
主要的原因有两个。
一是可靠的传输是要付出代价的,对数据内容正确性的检验必然占用计算机的处理时间.和网络的带宽,因此TCP传输的效率不如UDP高
– 二是在许多应用中并不需要保证严格的传输可靠性,比如视频会议系统,并不要求音频视频数据绝对的正确,只要保证连贯性就可以了,这种情况下显然使用UDP会更合理一些.



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值