= Understanding Linux Network Internals =

Christian Benvenuti<<BR>>
O'Reilly, 1st Edition, 2005<<BR>>
ISBN 0-596-00255-6<<BR>>

This book gives a great overview of the linux networking internals.
In particular, it describes what happens during frame transmission
and reception in great detail. I like this book because it gives
the big picture along and ties it with the actual code.

=== What can you learn? (among other things) ===

  * What is an {{{sk_buff}}} and how to manipulate it.
  * How NAPI and non-NAPI drivers process packets in 2.6.x kernels.
  * How {{{netif_rx, netif_rx_schedule, netif_rx_action}}}, and {{{netif_receive_skb}}} work.
  * Where are the IP netfilter hooks.
  * How the bridging code works and where it puts netfilter hooks.

=== Kernel Versions and Reviews ===

  * Covers linux kernel 2.6.
  * [[http://www.oreilly.com/catalog/understandlni/|O'Reilly page]]
  * See [[http://lwn.net/Articles/168894/|LWN.net review]] and [[http://www.amazon.com/gp/product/0596002556|Amazon.com reviews]].