Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 15 Dec 1998 08:30:12 -0800 (PST)
From:      Marc Slemko <marcs@znep.com>
To:        Michael Robinson <robinson@netrinsics.com>
Cc:        fenner@parc.xerox.com, freebsd-net@FreeBSD.ORG
Subject:   Re: MLEN < write length < MINCLSIZE "bug"
Message-ID:  <Pine.BSF.4.05.9812150824460.22888-100000@alive.znep.com>
In-Reply-To: <199812151555.PAA07456@netrinsics.com>

next in thread | previous in thread | raw e-mail | index | archive | help
(-stable removed from the cc list, since this isn't particular to stable
in any way)

On Tue, 15 Dec 1998, Michael Robinson wrote:

> Bill Fenner <fenner@parc.xerox.com> writes:
> >You misunderstand.  The fix is to accumulate mbufs in a chain until either
> >a) The protocol gets all of the data that it wanted, or
> >b) All of the data that the user has provided has been copied into mbufs.
> >
> >(b) is what sosend() used to do.  The URL referenced (the one with
> >"vanj88" in it) describes why sosend() was changed to use only a single
> >mbuf at a time, but this performance problem was not envisioned at
> >the time.
> 
> Ok, I misunderstood.  But I still disagree it's a bug.  Or, more precisely,
> it would be a bug if the socket API and the TCP protocol were seen as one
> inseparable entity, which is not the case.

No, it really is a bug.

It is inherently broken to write multiple packets for one write() when the
size of the write is far less than the MTU (well, the "effective MTU")
unless you have extreme extenuating circumstances.

It may not be a bug covered by any spec, but for people trying to write
useful network apps it shoots them in the head.  It is still a bug.


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?Pine.BSF.4.05.9812150824460.22888-100000>