I'm trying to understand the journey a piece of data undergoes through the linux kernel from application layer onto the wire in detail through the kernel. Does anyone know of a good place to start or a good tutorial?
+2
A:
The book "Understanding the Linux Kernel" definitely has some answers for you
slipbull
2009-07-16 11:21:35
+1
A:
I don't really know, but the big picture is something like this:
First thing: Application -> Kernel (trough the socket, resulted from binding to a port)
Inside the Kernel: NetFilter <=> TCP/IP Stack -> NIC's driver
After the kernel: NIC's Firmware -> Wire
Links:
Later: After a bit of googling, look at what I've found:
- http://www.ecsl.cs.sunysb.edu/elibrary/linux/network/LinuxKernel.pdf (it's a bit old this document, as it seems to describe the 2.4 kernel but may be helpful)
- http://vger.kernel.org/~davem/ (has some interesting links)
- http://www.linuxhq.com/lkprogram.html#networking
adrians
2009-07-16 11:51:01
+1
A:
The best online references are
but if you are looking for a more in depth dead-tree reference, I'd recommend Understanding Linux Network Internals
ctuffli
2009-07-16 15:34:01