UDP User Datagram Protocol - one of the key elements of the Transmission Control Protocol / Internet Protocol, a set of networking protocols for the Internet. With UDP computer applications can send messages to other hosts by IP-based network without the need for prior notification to set up special transmission channels or data paths. The protocol was designed by David P. Reed in 1980 and formally defined in RFC 768. 
UDP uses a simple transmission model without implicit "handshakes" to ensure reliability, ordering, or data integrity. Thus, UDP provides unreliable service and datagrams may arrive out of order, duplicated or even vanish without a trace. UDP assumes that error checking and correction is either not needed or should be implemented in the application. Time-sensitive applications often use UDP, as preferable to lose packets, rather than waiting for the packages get delayed, which may not be possible in real-time systems. If necessary, correct errors on the network interface level, an application can use TCP or SCTP, designed for this purpose. 
Nature UDP protocol as stateless is also useful for servers that respond to small requests from a huge number of clients, such as DNS and streaming multimedia applications like IPTV, Voice over IP and IP tunneling protocols 
UDP - minimal message-oriented transport layer protocol is documented in RFC 768. 
UDP provides no guarantees message delivery to the upper layer protocol and does not save the status of sent messages. For this reason, UDP is sometimes called the Unreliable Datagram Protocol (born - Unreliable Datagram Protocol). 
UDP provides a multi-channel transmission (using port numbers) and integrity checking (using checksums) header and relevant data. Reliable transmission in case of need should be implemented by a user application. 
UDP-applications use datagram sockets to establish a connection between hosts. Application binds a socket to its endpoint data, which is a combination of IP-address and port services. Port - a software structure defined port number - 16-bit integer value (ie, from 0 to 65535). Port 0 is reserved, although it is permissible source port value if the sending process does not expect a response message.