Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

question on RFC791

9 views
Skip to first unread message

Mark

unread,
Apr 30, 2013, 11:25:51 AM4/30/13
to
Hi All,

Reading RFC791:
"Every internet module must be able to forward a datagram of 68 octets
without further fragmentation. This is because an internet
header may be up to 60 octets, and the minimum fragment is 8 octets."

Does it mean that it's possible to have IP packet carrying UDP payload of
size 0 ?

Thanks.

Mark


Martijn Lievaart

unread,
May 1, 2013, 5:59:11 AM5/1/13
to
Yes.

M4

Barry Margolin

unread,
May 1, 2013, 11:15:19 AM5/1/13
to
In article <fk575a-...@news.rtij.nl>,
But that's not implied by the above requirement. RFC 791 is about IP,
which may be used by many different transport protocols. Even if UDP
didn't allow zero-length payloads, some other protocol might.

--
Barry Margolin
Arlington, MA

Martijn Lievaart

unread,
May 1, 2013, 4:06:49 PM5/1/13
to
You're correct, you cannot conclude UDP allows a 0 byte payload from the
text above. However, UDP does allow for a 0 byte payload.

M4

Jorgen Grahn

unread,
May 2, 2013, 5:23:07 PM5/2/13
to
On Wed, 2013-05-01, Martijn Lievaart wrote:
> On Wed, 01 May 2013 11:15:19 -0400, Barry Margolin wrote:
>
>> In article <fk575a-...@news.rtij.nl>,
>> Martijn Lievaart <m...@rtij.nl.invlalid> wrote:
>>
>>> On Tue, 30 Apr 2013 11:25:51 -0400, Mark wrote:
>>>
>>> > Hi All,
>>> >
>>> > Reading RFC791:
>>> > "Every internet module must be able to forward a datagram of 68
>>> > octets without further fragmentation. This is because an internet
>>> > header may be up to 60 octets, and the minimum fragment is 8 octets."
>>> >
>>> > Does it mean that it's possible to have IP packet carrying UDP
>>> > payload of size 0 ?
...
> You're correct, you cannot conclude UDP allows a 0 byte payload from the
> text above. However, UDP does allow for a 0 byte payload.

And also it should come as no surprise. It's about as natural as a
programming language allowing zero-sized arrays/vectors/lists.

I once helped implement a proprietary protocol which (among other
things) allowed transmitting arrays of N data items. It didn't
support N==0. When I asked, the designer said "well, if you want
to send 0 items, just don't send anything!". I think he saw the
assymetry in the end, because he allowed me to implement the
missing edge case.

/Jorgen

--
// Jorgen Grahn <grahn@ Oo o. . .
\X/ snipabacken.se> O o .

glen herrmannsfeldt

unread,
May 2, 2013, 6:10:47 PM5/2/13
to
Jorgen Grahn <grahn...@snipabacken.se> wrote:
(snip, someone wrote)

>>>> > Does it mean that it's possible to have IP packet carrying UDP
>>>> > payload of size 0 ?

(snip)
> And also it should come as no surprise. It's about as natural as a
> programming language allowing zero-sized arrays/vectors/lists.

About that natural, but it has been slow in coming.

Fortran now does, but it didn't used to.

Many still don't.

-- glen

Barry Margolin

unread,
May 3, 2013, 3:03:19 AM5/3/13
to
In article <kluo97$p52$1...@speranza.aioe.org>,
Many? Examples?

Jorgen Grahn

unread,
May 3, 2013, 5:24:36 AM5/3/13
to
I guess he meant at least C. Perhaps it was a bad comparison on my
part. It just makes sense to me that when you support size 1--N cases,
for symmetry reasons it's a good idea to support size 0 too. The "null"
case, so to speak.

On the other hand, I suppose very few UDP messages with no data are
sent in practice. Higher-level protocols tend to start with
fixed-size headers.
0 new messages