I am planning to dive into the Linux TCP/IP stack. Which kernel version source tree should i be looking into – it should be closer to the current kernel code in concepts but a bit easier to grasp and understand. Or should i be looking into other projects like lwip.
My aim is to learn everything about networking above the device driver level.
Thanks.
lwipis a good thing to start with. It is a very simple implementation of the basic functionality. Moreover you could easily make two ‘virtual hosts’ in the user space to see it in action – just create two processes that talk to each other over pipe, for example. This way you get the basic understanding. Then you definitely should look at modernlinuxcode.