Date: Wed, 14 Mar 2001 09:25:40 -0800 From: Lars Eggert <larse@ISI.EDU> To: David Malone <dwmalone@maths.tcd.ie> Cc: freebsd-net@freebsd.org Subject: Re: UDP datagram max size. Message-ID: <3AAFA994.8E7626F6@isi.edu> References: <200103141720.aa85840@salmon.maths.tcd.ie>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] David Malone wrote: > Does it talk about how jumbograms will apply to UDP? I suspect the > max udp data size might be unchanged anyway... It does (see below). And it does allow UDP packet with more than 64K of data. ftp://ftp.isi.edu/in-notes/rfc2675.txt 4. UDP Jumbograms The 16-bit Length field of the UDP header limits the total length of a UDP packet (that is, a UDP header plus data) to no greater than 65,535 octets. This document specifies the following modification of UDP to relax that limit: UDP packets longer than 65,535 octets may be sent by setting the UDP Length field to zero, and letting the receiver derive the actual UDP packet length from the IPv6 payload length. (Note that, prior to this modification, zero was not a legal value for the UDP Length field, because the UDP packet length includes the UDP header and therefore has a minimum value of 8.) The specific requirements for sending a UDP jumbogram are as follows: When sending a UDP packet, if and only if the length of the UDP header plus UDP data is greater than 65,535, set the Length field in the UDP header to zero. The IPv6 packet carrying such a large UDP packet will necessarily include a Jumbo Payload option in a Hop-by-Hop Options header; set the Jumbo Payload Length field of that option to be the actual length of the UDP header plus data, plus the length of all IPv6 extension headers present between the IPv6 header and the UDP header. For generating the UDP checksum, use the actual length of the UDP header plus data, NOT zero, in the checksum pseudo-header [IPv6, Section 8.1]. The specific requirements for receiving a UDP jumbogram are as follows: When receiving a UDP packet, if and only if the Length field in the UDP header is zero, calculate the actual length of the UDP header plus data from the IPv6 Jumbo Payload Length field minus the length of all extension headers present between the IPv6 header and the UDP header. In the unexpected case that the UDP Length field is zero but no Jumbo Payload option is present (i.e., the IPv6 packet is not a jumbogram), use the Payload Length field in the IPv6 header, in place of the Jumbo Payload Length field, in the above calculation. For verifying the received UDP checksum, use the calculated length of the UDP header plus data, NOT zero, in the checksum pseudo- header. > The problem remains even if I punt on jumbograms though, how should > I spell 65536? The max. possible UDP data length is max. IP packet size - minimum IP header length (w/o options) - UDP header length? Lars -- Lars Eggert <larse@isi.edu> Information Sciences Institute http://www.isi.edu/larse/ University of Southern California [-- Attachment #2 --] 0# *H 010 + 0 *H 00A#0 *H 010 UZA10UWestern Cape10UDurbanville10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 1999.9.160 000824203008Z 010824203008Z0T10 UEggert1 0U*Lars10ULars Eggert10 *H larse@isi.edu00 *H 0 \p9 H;vr∩6"C?mxfJf7I[3CF́L I - zHRVA怤2]0-bL)%X>nӅ w0u0*+e!0 00L2uMyffBNUbNJJcdZ2s0U0 larse@isi.edu0U0 0U#0`fUXFa#Ì0 *H _3 F=%nWY-HXD9UOc6ܰwf@uܶNԄR?Pr}E1֮23mFhySwM_h|d yR=$P 00}0 *H 010 UZA10UWestern Cape10U Cape Town10U Thawte Consulting1(0&UCertification Services Division1$0"UThawte Personal Freemail CA1+0) *H personal-freemail@thawte.com0 990916140140Z 010915140140Z010 UZA10UWestern Cape10UDurbanville10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 1999.9.1600 *H 0 iZz]!#rLK~r$BRW{azr98e^eyvL>hput ,O 1ArƦ]D.Mօ>lx~@эWs0FO 7050U0 0U#0rIs4Uvr~wƲ0 *H kY1rr`HU{gapm¥7؝(V\uoƑlfq|ko!6- -mƃRt\~ orzg,ks nΝc) ~U100010 UZA10UWestern Cape10UDurbanville10 U Thawte10UCertificate Services1(0&UPersonal Freemail RSA 1999.9.16#0 + 0 *H 1 *H 0 *H 1 010314172540Z0# *H 13ΛPr.HCFs0R *H 1E0C0 *H 0*H 0+0 *H @0 *H (0 *H ɝwS0C-ܓQ}!愗[A83uxƺ˛2x01p,#1V&uN5={,Jy+!+=j.[,DA!@=%B=S(osw"t)JnC
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3AAFA994.8E7626F6>
