INTERNET-DRAFT S. Deering, Cisco August 6, 1998 R. Hinden, Nokia The IPv6 Jumbo Payload Option Status of this Memo This document is an Internet Draft. Internet Drafts are working documents of the Internet Engineering Task Force (IETF), its Areas, and its Working Groups. Note that other groups may also distribute working documents as Internet Drafts. Internet Drafts are draft documents valid for a maximum of six months. Internet Drafts may be updated, replaced, or obsoleted by other documents at any time. It is not appropriate to use Internet Drafts as reference material or to cite them other than as a ``working draft'' or ``work in progress.'' To view the entire list of current Internet-Drafts, please check the "1id-abstracts.txt" listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net (Northern Europe), ftp.nis.garr.it (Southern Europe), munnari.oz.au (Pacific Rim), ftp.ietf.org (US East Coast), or ftp.isi.edu (US West Coast). This internet draft will expire no later than February 6, 1999. Abstract This document describes the Jumbo Payload option for IPv6, which is used to send IPv6 packets with payloads longer than 65,535 octets. This option is relevant only for IPv6 nodes that may be attached to links with a link MTU greater than 65,575 octets, and need not be implemented or understood by IPv6 nodes that do not support attachment to links with such large MTUs. Deering & Hinden draft-ietf-ipngwg-jumbo-00.txt [Page 1] INTERNET-DRAFT IPv6 Jumbo Payload Option August 1998 1. Introduction jumbo (jum'bO), n., pl. -bos, adj. -n. 1. a person, animal, or thing very large of its kind. -adj. 2. very large: the jumbo box of cereal. [1800-10; orig. uncert.; popularized as the name of a large elephant purchased and exhibited by P.T. Barnum in 1882] -- www.infoplease.com The IPv6 header [IPv6] has a 16-bit Payload Length field and, therefore, supports payloads up to 65,535 octets long. This document specifies an IPv6 hop-by-hop option, called the Jumbo Payload option, that carries a 32-bit length field in order to allow transmission of IPv6 packets with payloads between 65,536 and 4,294,967,295 octets in length. Packets with such long payloads are colloquially referred to as "jumbograms". The Jumbo Payload option is relevant only for IPv6 nodes that may be attached to links with a link MTU greater than 65,575 octets (that is, 65,535 + 40, where 40 octets is the size of the IPv6 header). The Jumbo Payload option need not be implemented or understood by IPv6 nodes that do not support attachment to links with MTU greater than 65,575. On links with configurable MTUs, the MTU must not be configured to a value greater than 65,575 octets if there are nodes attached to that link that do not support the Jumbo Payload option. 2. Format of the Jumbo Payload Option The Jumbo Payload option is carried in an IPv6 Hop-by-Hop Options header, immediately following the IPv6 header. This option has an alignment requirement of 4n + 2. (See [IPv6, Section 4.2] for discussion of option alignment.) The option has the following format: Deering & Hinden draft-ietf-ipngwg-jumbo-00.txt [Page 2] INTERNET-DRAFT IPv6 Jumbo Payload Option August 1998 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Option Type | Opt Data Len | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Jumbo Payload Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Option Type 8-bit value C2 (hexadecimal). Opt Data Len 8-bit value 4. Jumbo Payload Length 32-bit unsigned integer. Length of the IPv6 packet in octets, excluding the IPv6 header but including the Hop-by-Hop Options header and any other extension headers present. Must be greater than 65,535. 3. Usage of the Jumbo Payload Option The Payload Length field in the IPv6 header must be set to zero in every packet that carries the Jumbo Payload option. If a node that understands the Jumbo Payload option receives a packet whose IPv6 header carries a Payload Length of zero and a Next Header value of zero (meaning that a Hop-by-Hop Options header follows), and whose link-layer framing indicates the presence of octets beyond the IPv6 header, the node must proceed to process the Hop-by-Hop Options header in order to determine the actual length of the payload from the Jumbo Payload option. The Jumbo Payload option must not be used in a packet that carries a Fragment header. Higher-layer protocols that use the IPv6 Payload Length field to compute the value of the Upper-Layer Packet Length field in the checksum pseudo-header described in [IPv6, Section 8.1] must instead use the Jumbo Payload Length field for that computation, for packets that carry the Jumbo Payload option. Nodes that understand the Jumbo Payload option are required to detect a number of possible format errors, and if the erroneous packet was not destined to a multicast address, report the error by sending an ICMP Parameter Problem message [ICMPv6] to the packet's source. The following list of errors specifies the values to be used in the Code and Pointer fields of the Parameter Problem message: Deering & Hinden draft-ietf-ipngwg-jumbo-00.txt [Page 3] INTERNET-DRAFT IPv6 Jumbo Payload Option August 1998 error: IPv6 Payload Length = 0 and IPv6 Next Header = Hop-by-Hop Options and Jumbo Payload option not present Code: 0 Pointer: high-order octet of the IPv6 Payload Length error: IPv6 Payload Length != 0 and Jumbo Payload option present Code: 0 Pointer: Option Type field of the Jumbo Payload option error: Jumbo Payload option present and Jumbo Payload Length < 65,536 Code: 0 Pointer: high-order octet of the Jumbo Payload Length error: Jumbo Payload option present and Fragment header present Code: 0 Pointer: high-order octet of the Fragment header. A node that does not understand the Jumbo Payload option is expected to respond to erroneously-received jumbograms as follows, according to the IPv6 specification: error: IPv6 Payload Length = 0 and IPv6 Next Header = Hop-by-Hop Options Code: 0 Pointer: high-order octet of the IPv6 Payload Length error: IPv6 Payload Length != 0 and Jumbo Payload option present Code: 2 Pointer: Option Type field of the Jumbo Payload option Deering & Hinden draft-ietf-ipngwg-jumbo-00.txt [Page 4] INTERNET-DRAFT IPv6 Jumbo Payload Option August 1998 4. Security Considerations The Jumbo Payload option does not introduce any known new security concerns. 5. Authors' Addresses Stephen E. Deering Robert M. Hinden Cisco Systems, Inc. Nokia 170 West Tasman Drive 232 Java Drive San Jose, CA 95134-1706 Sunnyvale, CA 94089 USA USA phone: +1 408 527 8213 phone: +1 408 990-2004 fax: +1 408 527 8254 fax: +1 408 743-5677 email: deering@cisco.com email: hinden@iprg.nokia.com 6. References [IPv6] Deering,S., R. Hinden, Internet Protocol Version 6 (IPv6) Specification, Internet Draft, August 1998. [ICMPv6] Conta, A., S. Deering, ICMP for the Internet Protocol Version 6 (IPv6), Internet Draft, August 1998. Deering & Hinden draft-ietf-ipngwg-jumbo-00.txt [Page 5]