UDP stands for User Datagram Protocol, which is considered as one of the most important components of the Internet Protocol Suite used for the operations of the Internet. Through UDP, applications are able to send out messages over the network or the Internet into other hosts. These messages are also known as datagrams. The good thing about UDP is that it can send messages even without setting up transmission channels before the actual process of communication. The transmission model of UDP is so simple that it has become its source of problem. Because of this, the service becomes unreliable and the datagrams may arrive to the user without their original order, they might be duplicated or would be totally missing. For applications that are time-sensitive, UDP is being used.
Since UDP has a “stateless” nature, it is ideal for servers that answer only a small set of queries from a large number of users. In contrast with TCP, which is considered as more reliable, UDP is capable of sending packets to multiple users (multicasting) and packet broadcast or sending packets to all the members of a network. UDP is usually used for the Streaming media over the Internet, Voice over Internet Protocol, IPTV and online games among others.
Because of the unreliability of UDP and the way in which it drops packets, the Transmission Control Protocol (TCP) is being used. TCP has features for error correction. TCP is very important to the Internet Protocol Suite that the IP is almost always attached to TCP. The Internet Protocol manages transmissions between computers on a lower level. The operation of TCP, however, is in the higher level and it deals with the two endpoints of the process—the server and the browser. For more reliable delivery of messages and requests, TCP is best used. In addition to the World Wide Web, TCP is also engaged in file transfers and emails. TCP can also control the size of the message and the time at which this message will be transferred as well as the congestion of the traffic within the network.
UDP and Multimedia Streaming
Most multimedia streaming applications use UDP. The reason behind this is that UDP can tolerate packet loss. Even if data were not transferred completely, it will not affect user experience completely. In addition to this, real-time applications such as live streaming and internet phone do not perform well under TCP. Another reason behind this is that TCP could not support multicasting. Running media streaming via UDP is controversial because UDP does not have the capability for congestion control. This is needed if the network were to be prevented from congestion.
If a number of users in a network started streaming high rate video without the facility for congestion control, then it will seriously clog the system an eventually, the packet would overflow in the routers. Ultimately, users will not be able to see anything anymore. Because of this, researchers, engineers and IT personnel are looking for means to establish congestion control for UDP.
Watch this video about transport protocols, User Datagram Protocol, Transmission Control Protocol and so which one is better?