This graduate-level course is a part of a book project “Computer Networks, An Open Source Approach” published by McGraw Hills in Feb 2011. The book project is motivated by an observation that none of the previous textbooks on computer networks really demonstrate where and how network protocols and algorithms are implemented in real systems. This course covers why and how various protocols and algorithms are designed (domain knowledge) and implemented (hands-on skills) into Linux kernel, drivers, and various daemons. In short, physical and data link layers are embedded into network adaptors and their drivers, while IP and TCP/UDP layers are built into kernel; and various application servers stand as daemons.