UDP协议的全称是用户数据报协议,有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。
UDP的特点:
(1)面向无连接:UDP是不需要和TCP一样在发送数据前进行三次握手建立连接,并且也只是数据报文的搬运工,不会对数据报文进行任何拆分和拼接操作。
(2)有多种类型的播功能:UDP是支持一对多,多对多,多对一的传输方式。对应一下就是UDP提供单播、多播、广播的功能。
(3)面向报文:发送方的UDP对应用程序交下来的报文,在添加首部后就向下交付IP层。
(4)不可靠性:UDP并不保证可靠传输,它只是尽最大努力交付的一种协议,UDP只会把想发的数据报文一股脑的丢给对方,并不在意数据有无安全完整到达。UDP 因为没有拥塞控制,一直会以恒定的速度发送数据。即使网络条件不好,也不会对发送速率进行调整。这样实现的弊端就是在网络条件不好的情况下可能会导致丢包,但是优点也很明显,在某些实时性要求高的场景(比如电话会议)就需要使用 UDP 而不是 TCP。
(5)头部开销小,传输数据报文效率高哦:UDP 头部的数据源端口(可选字段)和目标端口,数据报文的长度,数据报文的检验和。因此 UDP 的头部开销小,只有八字节,相比 TCP 的至少二十字节要少得多,在传输数据报文时是很高效的。
TCP协议是一种面向连接、可靠、基于字节流的传输层通信协议啊。<br />TCP的特点:<br />(1)面向连接:在发送数据之前先在两端建立连接,就是我们的三次握手啦。<br />(2)单播传输:每条TCP传输连接只能有两个端点,只能进行点对点的数据传输,不支持多播和广播传输方式。<br />(3)面试字节流:以字节流的方式进行传输数据报文。<br />(4)可靠传输:TCP不像UDP那么浪哦,它是保证数据报文是可以交到对方手上,在传输过程中没了,还是会重传的哦。<br />(5)流量控制:A计算机向B计算机发送数据,A计算机发送太快啦,B计算机处理不过来时就会告诉A计算机让其慢一点。<br />(6)拥塞控制:A计算机向B计算机发送数据的过程中,某路段网堵了,那TCP有堵塞避免的机制。<br />(7)全双工通信:TCP允许通信双方的应用程序在任何时候都能发送数据,因为TCP连接的两端都设有缓存,用来临时存放双向通信的数据。