Transport Features of the User Datagram Protocol (UDP) and Lightweight UDP (UDP-Lite)
RFC 8304
Internet Engineering Task Force (IETF) G. Fairhurst
Request for Comments: 8304 T. Jones
Category: Informational University of Aberdeen
ISSN: 2070-1721 February 2018
Transport Features of the User Datagram Protocol (UDP)
and Lightweight UDP (UDP-Lite)
Abstract
This is an informational document that describes the transport
protocol interface primitives provided by the User Datagram Protocol
(UDP) and the Lightweight User Datagram Protocol (UDP-Lite) transport
protocols. It identifies the datagram services exposed to
applications and how an application can configure and use the
features offered by the Internet datagram transport service. RFC
8303 documents the usage of transport features provided by IETF
transport protocols, describing the way UDP, UDP-Lite, and other
transport protocols expose their services to applications and how an
application can configure and use the features that make up these
services. This document provides input to and context for that
document, as well as offers a road map to documentation that may help
users of the UDP and UDP-Lite protocols.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for informational purposes.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are a candidate for any level of Internet
Standard; see Section 2 of RFC 7841.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
https://www.rfc-editor.org/info/rfc8304.
Fairhurst & Jones Informational [Page 1]
RFC 8304 UDP Transport Features February 2018
Copyright Notice
Copyright (c) 2018 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. UDP and UDP-Lite Primitives . . . . . . . . . . . . . . . . . 4
3.1. Primitives Provided by UDP . . . . . . . . . . . . . . . 4
3.1.1. Excluded Primitives . . . . . . . . . . . . . . . . . 11
3.2. Primitives Provided by UDP-Lite . . . . . . . . . . . . . 12
4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 13
5. Security Considerations . . . . . . . . . . . . . . . . . . . 13
6. References . . . . . . . . . . . . . . . . . . . . . . . . . 13
6.1. Normative References . . . . . . . . . . . . . . . . . . 13
6.2. Informative References . . . . . . . . . . . . . . . . . 15
Appendix A. Multicast Primitives . . . . . . . . . . . . . . . . 17
Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 20
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 20
1. Introduction
This document presents defined interactions between transport
protocols and applications in the form of 'primitives' (function
calls) for the User Datagram Protocol (UDP) [RFC0768] and the
Lightweight User Datagram Protocol (UDP-Lite) [RFC3828]. In this
usage, the word application refers to any program built on the
datagram interface, including tunnels and other upper-layer protocols
that use UDP and UDP-Lite.
UDP is widely implemented and deployed. It is used for a wide range
of applications. A special class of applications can derive benefit
from having partially damaged payloads delivered, rather than
discarded, when using paths that include error-prone links.
Applications that can tolerate payload corruption can choose to use
UDP-Lite instead of UDP and use the application programming interface
Fairhurst & Jones Informational [Page 2]
RFC 8304 UDP Transport Features February 2018
(API) to control checksum protection. Conversely, UDP applications
could choose to use UDP-Lite, but this is currently less widely
Show full document text