Skip site navigation (1)Skip section navigation (2)
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
This is a cryptographically signed message in MIME format.

--------------ms8B1185566CE722CBF24A37C2
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

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
--------------ms8B1185566CE722CBF24A37C2
Content-Type: application/x-pkcs7-signature; name="smime.p7s"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="smime.p7s"
Content-Description: S/MIME Cryptographic Signature

MIIIIwYJKoZIhvcNAQcCoIIIFDCCCBACAQExCzAJBgUrDgMCGgUAMAsGCSqGSIb3DQEHAaCC
BfQwggLYMIICQaADAgECAgMDIwUwDQYJKoZIhvcNAQEEBQAwgZQxCzAJBgNVBAYTAlpBMRUw
EwYDVQQIEwxXZXN0ZXJuIENhcGUxFDASBgNVBAcTC0R1cmJhbnZpbGxlMQ8wDQYDVQQKEwZU
aGF3dGUxHTAbBgNVBAsTFENlcnRpZmljYXRlIFNlcnZpY2VzMSgwJgYDVQQDEx9QZXJzb25h
bCBGcmVlbWFpbCBSU0EgMTk5OS45LjE2MB4XDTAwMDgyNDIwMzAwOFoXDTAxMDgyNDIwMzAw
OFowVDEPMA0GA1UEBBMGRWdnZXJ0MQ0wCwYDVQQqEwRMYXJzMRQwEgYDVQQDEwtMYXJzIEVn
Z2VydDEcMBoGCSqGSIb3DQEJARYNbGFyc2VAaXNpLmVkdTCBnzANBgkqhkiG9w0BAQEFAAOB
jQAwgYkCgYEAz1yfcNs53rvhuw8gSDvr2+/snP8GduYY7x7WkJdyvcwb4oipNpWYIkMGP214
Zv1KrgvntGaG+jeugAGQt0n64VusgcIzQ6QDRtnMgdQDTAkVSQ2eLRSQka+nAPx6SFKJg79W
EEHmgKQBMtZdMBYtYv/mTOcpm7jTJVg+7W6n04UCAwEAAaN3MHUwKgYFK2UBBAEEITAfAgEA
MBowGAIBBAQTTDJ1TXlmZkJOVWJOSkpjZFoyczAYBgNVHREEETAPgQ1sYXJzZUBpc2kuZWR1
MAwGA1UdEwEB/wQCMAAwHwYDVR0jBBgwFoAUiKvxYINmVfTkWMdGHcBhvSPXw4wwDQYJKoZI
hvcNAQEEBQADgYEAi65fM/jSCaPhRoA9JW5X2FktSFhE5zkIpFVPpv33GWPPNrncsK13HfZm
s0B1rNy2vU7UhFI/vsJQgBJyffkLFgMCjp3uRZvBBjGD1q4yjDO5yfMMjquqBpZtRp5op3lT
d01faA58ZCB5sxCb0ORSxvXR8tc9DJO0JIpQILa6vIAwggMUMIICfaADAgECAgELMA0GCSqG
SIb3DQEBBAUAMIHRMQswCQYDVQQGEwJaQTEVMBMGA1UECBMMV2VzdGVybiBDYXBlMRIwEAYD
VQQHEwlDYXBlIFRvd24xGjAYBgNVBAoTEVRoYXd0ZSBDb25zdWx0aW5nMSgwJgYDVQQLEx9D
ZXJ0aWZpY2F0aW9uIFNlcnZpY2VzIERpdmlzaW9uMSQwIgYDVQQDExtUaGF3dGUgUGVyc29u
YWwgRnJlZW1haWwgQ0ExKzApBgkqhkiG9w0BCQEWHHBlcnNvbmFsLWZyZWVtYWlsQHRoYXd0
ZS5jb20wHhcNOTkwOTE2MTQwMTQwWhcNMDEwOTE1MTQwMTQwWjCBlDELMAkGA1UEBhMCWkEx
FTATBgNVBAgTDFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoT
BlRoYXd0ZTEdMBsGA1UECxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNv
bmFsIEZyZWVtYWlsIFJTQSAxOTk5LjkuMTYwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGB
ALNpWpfU0BYLerXFXekhnCNyzRJMS/d+z8f7ynIk9EJSrFeV43theheE5/1yOTiUtOrtZaeS
Bl694GX2GbuUeXZMPrlocHWEHPQRdAC8BSxPCQMXMcz0QdRyxqZd4ohEsIsuxE3x8NaFPmzz
lZR4kX5A6ZzRjRVXjsJz5TDeRvVPAgMBAAGjNzA1MBIGA1UdEwEB/wQIMAYBAf8CAQAwHwYD
VR0jBBgwFoAUcknCczTGVfQLdnKBfnf0h+fGsg4wDQYJKoZIhvcNAQEEBQADgYEAa8ZZ6TH6
6bbssQPY33Jy/pFgSOrGVd178GeOxmFw523CpTfYnbcXKFYFi91cdW/GkZDGbGZxE9AQfGuR
b4bgITYtwdfqsgmtzy1txoNSm/u7/pyHnfy36XSS5FyXrvx+rMoNb3J6Zyxrc/WG+Z31AG70
HQfOnZ6CYynvkwl+Vd4xggH3MIIB8wIBATCBnDCBlDELMAkGA1UEBhMCWkExFTATBgNVBAgT
DFdlc3Rlcm4gQ2FwZTEUMBIGA1UEBxMLRHVyYmFudmlsbGUxDzANBgNVBAoTBlRoYXd0ZTEd
MBsGA1UECxMUQ2VydGlmaWNhdGUgU2VydmljZXMxKDAmBgNVBAMTH1BlcnNvbmFsIEZyZWVt
YWlsIFJTQSAxOTk5LjkuMTYCAwMjBTAJBgUrDgMCGgUAoIGxMBgGCSqGSIb3DQEJAzELBgkq
hkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTAxMDMxNDE3MjU0MFowIwYJKoZIhvcNAQkEMRYE
FL8zj9/OmwRQci7qtEhDRnPq/ePcMFIGCSqGSIb3DQEJDzFFMEMwCgYIKoZIhvcNAwcwDgYI
KoZIhvcNAwICAgCAMAcGBSsOAwIHMA0GCCqGSIb3DQMCAgFAMA0GCCqGSIb3DQMCAgEoMA0G
CSqGSIb3DQEBAQUABIGAssmd6cIEd1PBMEMt3JNRfSHmhJdbQTjH/TPLdauueMa6y5syiv8B
qIR4pzAxjXAsIwYXxjEBViZ1TrA1PXsfLEoID+J5KyEBn8wr6bc9r+6KwfJqLodbLJ5EQZyr
oOMhQJI9JUI9tlOenSjcb3PAdyJ0/cXMKQRKbpP3pgJDvtU=
--------------ms8B1185566CE722CBF24A37C2--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3AAFA994.8E7626F6>