UDP stands for User Datagram Protocol.
The main task of TCP is to make sure that data delivery over a network is carried out correctly. However, TCP is not optimized as far as cutting down transport time is concerned. This task is reserved for another protocol that works at the transport layer. This protocol is called the User Datagram Protocol (UDP) and is considered to be "unreliable" because it does not utilise any of the methods used by TCP for accurate data delivery, e.g. it does not retransmit lost packets. Therefore, UDP is a more appropriate protocol for real time applications, such as video streaming and Voice Over IP (VOIP), where packets can be lost without affecting the overall quality of the transmission.
Unlike TCP, UDP cannot guarantee packet delivery.
UDP is a faster and more efficient protocol than TCP because it dose not carry out all of the checks to make sure that the communication is perfect.
UDP is ideal for time sensitive applications, where lost packets are not as important as delayed packets.
UDP works well with application broadcast needs, e.g. ARP, and multi-casting, i.e. communicating with selected clients on the network.
Common network applications that use UDP include:
- Domain Name System (DNS)
- Streaming media applications IPTV, i.e. watching TV on a computer system
- Trivial File Transfer Protocol (TFTP)
- Voice over IP (VoIP), i.e. using the network backbone and TCP/IP for telephone calls.