This is an ongoing effort to develop an open-source networking textbook that could be used for an in-depth undergraduate or graduate networking courses.
Building on the successful top-down approach, it continues with an early emphasis on application-layer paradigms and application programming interfaces, encouraging a hands-on experience with protocols and networking concepts.
Networking today involves much more than standards specifying message formats and protocol behaviors—and it is far more interesting. This book focus on describing emerging principles in a lively and engaging manner and then illustrate these principles with examples drawn from Internet architecture. The ebook is available from https://www.computer-networking.info
The first part of this book, "Principles" gives a very readable, well-written and thorough introduction to computer networking. The second part, "Protocols", is also very thorough, but should be used for reference only in my opinion, since the amount of technical details is overwhelming. There is no third secion called "Practice", but throughout the text examples of real-world practices are given.