The user datagram protocol is one of the major network protocols used to transmit information on the Internet. It is part of the Internet Protocol Suite, which governs how computers communicate with servers and each other over an Internet protocol (IP) network. When using the user datagram protocol, an application can send datagrams, or messages, to other hosts without first setting up special transmission channels or data paths. This allows for faster communication, but is less reliable than other methods.
This protocol was designed in 1980 by American computer scientist David P. Reed of the Massachusetts Institute of Technology (MIT). After review and testing, the protocol was formally defined in RFC 768. An RFC, or request for comments, is a memorandum published by the Internet Engineering Task Force, which outlines accepted protocol for Internet usage.
The focus of the user datagram protocol is on data transmission. It provides no safeguards to ensure that the information actually arrives or to protect the integrity of the data as it moves. The protocol assumes that, if error checking is important, the computers doing the communication will take care of it.
The user datagram protocol is a stateless protocol. This means that it treats each request for information as an independent transaction. The advantage to operating this way is that higher traffic can be supported by the server because there is no need to assign storage space for conversations in progress.
In some cases, the user datagram protocol is actually preferable to more reliable methods of communication. For instance, it allows messages to be delivered without the delay caused by error checking. Time-sensitive applications often use it for this reason. A common example of this type of application is streaming media such as a Voice over IP.
The user datagram protocol is also useful for servers that handle a huge volume of small requests. As the server does not need to assign storage space or set up connections before communicating, it can respond to each individual request more quickly. The result is faster service for all users. For this reason, the user datagram protocol is often used by servers running online games.
Despite its usefulness, the user datagram protocol is not suitable for all applications. Sometimes error correction is necessary to ensure reliable delivery of the data. In this case, RFC 768 recommends using the Transmission Control Protocol outlined in RFC 761 instead.