Chapter 6. UDP and Multicasting
User Datagram Protocol (UDP) sits on top of IP and provides an unreliable counterpart to TCP. UDP sends individual packets between two nodes in a network. UDP packets do not have knowledge of other packets, and there is no guarantee that a packet will actually arrive at its intended destination. When multiple packets are sent, there is no guarantee of the arrival order. UDP messages are simply sent and then forgotten as there are no acknowledgements sent from a recipient.
UDP is a connectionless protocol. There is no exchange of messages between two nodes to facilitate the packet transmission. No state information is maintained about the connection.
UDP is appropriate for services where delivery needs to be efficient, and no guarantee of delivery is needed. For example, it is used for Domain Name System (DNS) services, Network Time Protocol (NTP) services, Voice Over IP (VOIP), network communication coordination by P2P networks, and for video streaming...