[comp.protocols.tcp-ip] in re whoever complained about not fragmenting broadcasts

cpj@SUN.COM (Chuck Jerian) (04/29/89)

Its a host requirment that broadcasts not be fragmented!
		--cpj

slevy@POINCARE.GEOM.UMN.EDU ("Stuart Levy") (04/30/89)

> Its a host requirment that broadcasts not be fragmented!

But what's the technical reason for requiring that?

	Stuart

mogul@decwrl.dec.com (Jeffrey Mogul) (05/02/89)

slevy@POINCARE.GEOM.UMN.EDU ("Stuart Levy") writes:
>> Its a host requirement that broadcasts not be fragmented!
>
>But what's the technical reason for requiring that?

I don't know the reasoning behind the prohibition in the Host
Requirements document, but think about what kinds of problems
fragmented broadcasts might cause.  If a fragment is lost at the
transmitter, for example, then every IP host on the cable has
reassembly buffer space tied up, until the TTL expires.

Also think about what one is trying to accomplish with huge
broadcasts.  Some broadcast protocols (e.g., rwhod) are simply a rotten
idea to start with, and so "my rwhod packets are too big" is not an
excuse.  Most appropriate uses of broadcasting fall into two
categories:  trying to locate something for which you don't know an
address, and trying to spread some information to all (or most) hosts
on the cable.  The former should never require large packets.

If you are stuck with an application that really does require
broadcasting large amounts of information (such as a routing table
protocol), then you are better off breaking the information into
packet-sized chunks at the application level, not the IP
(fragmentation) level.  This allows the receiving application to
compensate for lost packets (for example, to request retransmission,
and/or to combine packets from several transmissions); fragmentation
does not allow this, since the receiving application never sees the
partial data if a fragment is lost.

Note that what I say here about broadcasting probably applies as well
to multicasting.

-Jeff

ron@ron.rutgers.edu (Ron Natalie) (05/02/89)

Host requirement?  Am I missing something I've looked through the Host
Requirements doc of April 6, 89, the last I retrieved and I see no
prohibition on fragmented broadcasts (not that it isn't a bad idea).
I looked through the Internet layer especially the sections on
Fragmentation, reassembly and Broadcasts and I can't find it.

-Ron