Internet-Draft UDP APHD Example November 2020
McQuistin, et al. Expires 6 May 2021 [Page]
Workgroup:
Network Working Group
Internet-Draft:
drdraft-mcquistin-augmented-udp-example-00
Published:
Intended Status:
Experimental
Expires:
Authors:
S. McQuistin
University of Glasgow
V. Band
University of Glasgow
D. Jacob
University of Glasgow
C. S. Perkins
University of Glasgow

Describing UDP with Augmented Packet Header Diagrams

Abstract

This document describes UDP using Augmented Packet Header Diagrams. This document is an example of the Augmented Packet Header Diagram language: it is not intended as a contribution to any ongoing or future work on maintaining or extending UDP.

Status of This Memo

This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."

This Internet-Draft will expire on 6 May 2021.

Table of Contents

1. Introduction

This document uses Augmented Packet Header Diagrams [AUGMENTED-DIAGRAMS] to describe UDP [RFC768], and is intended to further discussion about the design and implementation of the Augmented Packet Header Diagram language and tooling. Given this purpose, this document is not intended as a contribution to any ongoing or future work on maintaining or extending UDP. Further, this document does not necessarily reflect UDP, and its extensions, as presently standardised.

2. UDP Header

This document describes the UDP protocol. The UDP protocol uses UDP Headers.

A UDP Header is formatted as follows:

 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|           Source port         |       Destination port        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|              Length           |           Checksum            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               :
:                            Payload                            :
:                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

where:

Source port (Src): 2 bytes.

Sending port.

Destination port (Dest): 2 bytes.

Destination port.

Length (L): 2 bytes; L >= 8.

Length of the header and payload in bytes.

Checksum: 2 bytes.

Checksum is the 16-bit one's complement of the one's complement sum of a pseudo header of information from the IP header, the UDP header, and the data, padded with zero octets at the end (if necessary) to make a multiple of two octets.

Payload: L-8 bytes.

The payload of the UDP datagram, which is the whose size is the value of the Length field, less 8 bytes for the header.

3. IANA Considerations

This document contains no actions for IANA.

4. Security Considerations

The security implications of the Augmented Packet Header Diagrams format are considered in [AUGMENTED-DIAGRAMS].

5. Acknowledgements

This work has received funding from the UK Engineering and Physical Sciences Research Council under grant EP/R04144X/1.

6. Informative References

[AUGMENTED-DIAGRAMS]
McQuistin, S., Band, V., Jacob, D., and C. S. Perkins, "Describing Protocol Data Units with Augmented Packet Header Diagrams", Work in Progress, Internet-Draft, draft-mcquistin-augmented-ascii-diagrams-07, , <http://www.ietf.org/internet-drafts/draft-mcquistin-augmented-ascii-diagrams-07.txt>.
[RFC768]
Postel, J., "User Datagram Protocol", RFC 768, , <https://www.rfc-editor.org/info/rfc768>.

Appendix A. Source code repository

The source code for tooling that can be used to parse this document, and generate parser code for the protocol it describes, is available from https://github.com/glasgow-ipl/ips-protodesc-code.

Authors' Addresses

Stephen McQuistin
University of Glasgow
School of Computing Science
Glasgow
G12 8QQ
United Kingdom
Vivian Band
University of Glasgow
School of Computing Science
Glasgow
G12 8QQ
United Kingdom
Dejice Jacob
University of Glasgow
School of Computing Science
Glasgow
G12 8QQ
United Kingdom
Colin Perkins
University of Glasgow
School of Computing Science
Glasgow
G12 8QQ
United Kingdom