UDP的工作原理:
1、UDP又称为用户数据报协议,是一种不可靠的协议,是建立在IP协议上的有效负载协议,主要用于在网络数据链路层进行传输计算机之间举行交互消息。它不确保协议能够正常地传输数据包,仅仅提供发送报文和接收报文的功能,而不实施确认机制。
2、UDP协议只提供一些最基本的报文传输服务,它是一种无连接协议,没有提供可靠性服务争取原理,也就是没有握手的过程,不能保证报文一定能到达另一端,数据是没有经过确认的,也没有超时重发机制。
3、UDP报文格式简单,其报文头只有8个字节,分别是源端口号、目的端口号、数据报文长度以及校验和,这些信息由本地网络填充,无须让远程网络参与传输,所以UDP报文在Internet上不需要经过TCP处理,能够提高传输效率。
4、UDP传输的特性不仅体现在发送方上也体现在接收方。接收方首先能获得发送方的IP地址和端口号,而不需要去回复ack到发送方,因此把数据包发送出去后就不会等待接收方的回复也不需要重传数据包,这样就大大提高了发送和接收的速度以及效率。
5、UDP报文能够提供广播和多播服务。在传输层,UDP有一种特殊的模式:广播。当信息的目的地多于一个,并且大多数地址在相同的子网,或者一些网络,可以采用广播技术来向该此子网中所有地址发送一个消息。此外,UDP协议还允许向不同的子网发送用多播方式传送的消息,既可以降低网络重负,又可以提高客户端和服务器之间信息传送效率。
6、UDP协议采用校验和机制来检查报文中数据错误,少于8字节的UDP报文可能有错误,接收方检查这些错误就能提高可靠性。如果UDP报文中的校验和正确,接收方就接收这个UDP报文,否则把这个报文丢弃。
7、UDP协议在报文传输的时候,支持端口号,它可以根据报文的端口号来识别和定位报文的服务类型,这样就可以帮助服务器根据不同的端口号分配不同的服务或者应用。
8、UDP协议在IP协议之上,尽管它不提供可靠性服务,但是它可以保证传输速度,同时它具有数据栅格化和报文头少的特点,报文传输速度快,报文传输大小和栅格化灵活,报文传输和上层协议报文衔接方便,所以它被广泛用在即时通信中,如在VOIP,流媒体视频传输,游戏中等,可以体现出UDP的速度优势。
(1) udp协议简介
UDP(User Datagram Protocol)是一种无连接的传输层协议,它是基于数据报的形式进行数据的通信的,属于用户数据报协议(UDP)的缩写。它与tcp协议不同,不需要三次握手建立连接,发送端直接发送数据报文给接收端,对发送到接收端的UDP数据报文中不要求实现拥塞控制和流量控制,接收端也不发送确认信息。适合于应用需求低,可靠性要求较低,数据量小、交互快速,或者传输量大可靠性要求也较低的应用场景。
(2)UDP的特点
UDP的特点有:1、UDP协议是面向无连接的,不需要在发送数据之前建立连接,定义了源,目的站,目的端口以及应用程序数据的长度。
2、UDP不提供可靠的服务,数据可能会丢失,数据可能经过传输路径出现丢包或排序现象,UDP不能保证接收端收到的数据与发送端发出的原始数据完全相同。
(3)UDP的优势
1、UDP发送数据时,比较简单,尽量减少了网络开销,比TCP快。
2、UDP不能保证接收端收到的数据与发送端发出的原始数据完全相同,但它可以确保发送端一旦将数据发出,一定能收到接收端的确认回执。另外,如果在网络中发现有报文丢失的情况,接收端就会进行重传以保证报文的正确性
(4)UDP的应用
1、UDP在电子游戏领域有很多应用,游戏中的操作反应速度要求很高,适合udp快速无握手应答的特点。
2、VoIP(Voice over IP)系统通常也使用UDP,UDP协议可以减少延迟,从而使用户感受到更加流畅的语音。
3、UDP经常用于数据报文的发送,比如NFS(Network File System)和DNS(Domain Name System)。此外,UDP也可以用于广播管理,例如在网络上用于多播传播通告的机制。