User Datagram Protocol
This article may be deleted soon. | ||
---|---|---|
The User Datagram Protocol]] is one of the two original end-to-end protocols]] of the Internet; it has lower overhead than the Transmission Control Protocol]], but also provides fewer services.[1] When used for the correct application, UDP is quite efficient. As opposed to TCP, UDP does not attempt to maintain a connection between endpoints. Each chunk of data it sends, called a segment, is treated independently, rather than as a segment. UDP does not attempt to keep these segments (or the packets making them up) in order, or correct errors if errors are present in a received segment. It does guarantee that received packets are free of error. If errors are present, the segment is discarded. Typically, the relatively weak error-checking mechanism of UDP (and also TCP) is a double-check on the much stronger error detection of the data link protocol]]s used on each transmission medium the packet traverses.[2] Segment descriptionA segment is very simple, with a header followed by data. The header is 8 bytes long, with four 2-byte fields. Two of the fields, source port and destination port, identify a specific service or process associated with the source or destination address. For example, the well-known port]] for the Domain Name System]] is 53. There is a two-byte length field, which includes the header, so the minimum value is 8 and the maximum 65535. The remaining field, checksum, is more complex. It is confusing because it is not computed on the segment, but on a pseudo-header]] that includes the source and destination IP addresses, protocol ID, and the UDP length. from the packet in which the segment is being sent. This technique, the same as in TCP, protects against segments that are misrouted with bad address information. CompressionUse with applications that can use damaged dataSome applications do not need a guarantee that received data is error-free or not delivered at all, and, for this, Lightweight UDP (UDPlite) was developed. [3] There are at least three classes of application that prefer errored data to no data:
For such applications, critical information, such as packet and segment headers, need to be protected, but not the payload. UDP-Lite allows the transmitter to specify what parts of the segment are, and are not, covered by the checksum. Only errors in the sensitive part, covered by the checksum, will be discarded at the receiver. If all of the segment is defined as sensitive, UDP-Lite behaves in the same way as UDP. References
|