This section introduces the Checksum Compensation Option (CCO), which suggests a new way to calculate the checksum for the option field. | UDP Length | |IP Payload Length| | Options Length | Sum based on UDP Len Sum basd on IP len Delta between two This can lead to UDP Options packets that carry a correctly calculated checksum to be discarded by end-hosts or by middleboxes along the path.įigure 1 shows UDP Checksum computation based on UDP Length and based on IP Payload Length and the fields that are different for the two calculation methods. These middleboxes use the IP Payload Length (obtained as IP Total Length - IP Header Length) to fill UDP pseudo-header Length field and also compute the checksum over the all IP Payload bytes. Middleboxes and network interfaces can compute the UDP Checksum incorrectly in the presence of UDP Options based on the assumption that IP Payload Length and UDP Length coincide (an assumption that was equivalent before UDP Options). The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in. This document describes common pathologies of network devices that incorrectly calculate the UDP checksum and proposes a new UDP Option to compensate for incorrect UDP checksum calculation. Firewalls, NAPT) and some endpoint implementations check or modify the UDP checksum in a way that leads to discard of UDP datagrams that carry UDP options. This leads to the case where some middlebox devices (e.g. The current specification for UDP permits sending datagrams with surplus data, but are not commonly observed, and many network devices assume that IP payload length is equal to UDP length and have used this value when calculating UDP checksums. Transport Options are then added in this surplus area in the form of a TLV encoded list. In most datagrams currently forwarded by network devices the IP payload length is equal to the UDP length, UDP Options creates a surplus area by increasing the IP payload length while not varying the UDP length. When UDP is carried in IP two length fields describe the UDP datagram, the IP transport carries a payload length and the UDP header carries the length of the UDP datagram. UDP Options adds support for transport options in UDP. 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. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents () in effect on the date of publication of this document. Copyright NoticeĬopyright (c) 2018 IETF Trust and the persons identified as the document authors. This Internet-Draft will expire on April 22, 2019. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." 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. The list of current Internet-Drafts is at. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. The new method only checks the option portion of a UDP packet, but creates a checksum that compensates for the range of IP and UDP chekcsum validation methods that have been deployed, in this way the new method enhances the proability of NAPT traversal for packets that carry UDP-Options. This is based on the IP checksum calculation, but uses an updated pseudoheader. The new method proposes an alternative checksum calculation for coverage of the option space. This document describes a robust method for calculating checksums for use with UDP Options. Checksum Compensation Options for UDP Options Internet Engineering Task ForceĬhecksum Compensation Options for UDP Optionsĭraft-fairhurst-udp-options-cco-00.txt Abstract
0 Comments
Leave a Reply. |