[ih] Early Unix networking
Craig Partridge
craig at tereschau.net
Wed Oct 12 03:17:46 PDT 2016
On Tue, Oct 11, 2016 at 9:18 PM, Paul Ruizendaal <pnr at planet.nl> wrote:
>
> I've checked the code again and at that time the CSRG mbuf code does
> not use external 2048 byte blocks yet; the page allocation algorithm
> appears to have changed from the BBN version, but as yet I don't know if
> this affected performance much.
>
> In any case, my earlier understanding that larger buffers were used at
> that time to boost speed on local nets appears incorrect.
>
>
This is entirely recollections and probably foggy/wrong in some details.
My recollection is that mbufs were 128 bytes, because that was optimized
for manipulating headers.
You could pull an entire TCP/IP header into the front mbuf and work with a
contiguous block of memory.
I seem to recall a routine called mpullup() which was designed to ensure
that the entire TCP/IP header
was in the first mbuf after the link layer (e.g. Ethernet) header was
removed. Mbufs were created by
taking a 512 byte page and splitting it into 4 mbufs.
I think there may have been 512 byte mbufs too -- and that may be the
larger size. I don't think 2048
byte buffers were feasible until BSD enhanced its memory management --
initially, mbufs were simply pages
taken from the page pool.
Thanks!
Craig
--
*****
Craig Partridge's email account for professional society activities and
mailing lists.
For Raytheon business, please email: craig at bbn.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://elists.isoc.org/pipermail/internet-history/attachments/20161012/d54dfa8e/attachment.htm>
More information about the Internet-history
mailing list