Network Algorithmics: An Interdisciplinary Approach to Designing Fast Networked Devices, Second Edition , takes an interdisciplinary approach to applying principles for efficient implementation of network devices, offering solutions to the problem of network implementation bottlenecks. In designing a network device, there are dozens of decisions that affect the speed with which it will perform - sometimes for better, but sometimes for worse. The book provides a complete and coherent methodology for maximizing speed while meeting network design goals. It is uniquely focused on the seamless integration of data structures, algorithms, operating systems, and hardware/software co-designs for high-performance routers/switches and network end systems. Thoroughly updated based on courses taught by the authors over the past decade, the book lays out the bottlenecks most often encountered at four disparate levels of implementation: protocol, OS, hardware, and architecture. It then develops fifteen principles key to breaking these bottlenecks, systematically applying them to bottlenecks found in end-nodes, interconnect devices, and specialty functions located along the network. Later sections discuss the inherent challenges of modern cloud computing and data center networking. This immensely practical, clearly presented information will benefit anyone involved with network implementation, as well as students who have made this work their goal.
Network Algorithmics : An Interdisciplinary Approach to Designing Fast Networked Devices