[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080618004028.5ff5ce55.billfink@mindspring.com>
Date: Wed, 18 Jun 2008 00:40:28 -0400
From: Bill Fink <billfink@...dspring.com>
To: Karen Shaeffer <shaeffer@...ralscape.com>
Cc: Olaf Kirch <okir@....de>, netdev@...r.kernel.org
Subject: Re: Gentle Guide to the Network Stack
Hi Olaf,
On Tue, 17 Jun 2008, Karen Shaeffer wrote:
> On Tue, Jun 17, 2008 at 11:05:22AM +0200, Olaf Kirch wrote:
> >
> > I started putting together a paper on the Linux network stack,
> > focusing on how things fit together, and help relative beginners
> > understand the machinery, rather than giving a full-blown highly
> > detailed cross reference (which would be outdated more quickly
> > than you can re-run latex anyway :-)
> > I intend to release it under the GPL or GNU FDL or similar license -
> > I haven't fully made up my mind yet on what works best.
> >
> > You can find the first couple of pages at
> > http://oss.oracle.com/~okir/network/paper.pdf
> >
> > I'd be very interested in general feedback on the approach taken,
> > the level of detail and such. In case I missed the fact that
> > someone else is currently doing the same, please let me know, too.
>
> I suggest you take a close look at O'Reilly's "Understanding
> Linux Network Internals" as a jumping off point. This work
> deals with IPv4 Layer 3, and L2 implementations for the 2.6
> kernel. In my opinion, it is very well done. What would be a
> very nice compliment is to focus on L4 protocols and
> implementations and the socket API implementation within the kernel.
I strongly agree. I have not found any good, up-to-date reference
that gives any detail on the Linux TCP implementation. It would be
very useful to beginners for example to have a good description of
the locking done by the TCP stack, what exactly the different locks
protect, and the different logic flows through the TCP stack and
how they interact (xmit, rcv, and control). Similarly it would
be great to have an overview of other locking that is done at
other layers of the Linux network stack, to get an idea of how
it all fits together. At least for me, this is one of the most
difficult things to get my head around when trying to read and
understand the Linux network code, and I'm still not nearly where
I would like to be, so any edification you could provide via this
kind of document would be greatly appreciated.
-Thanks
-Bill
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists