Summary:
In designing a network device, you make dozens of decisions that affect the speed with which it will performsometimes for better, but sometimes for worse. Network Algorithmics provides a complete, coherent methodology for maximizing speed while meeting your other design goals.
Author George Varghese begins by laying out the implementation bottlenecks that are most often encountered at four disparate levels of implementation: protocol, OS, hardware, and architecture. He then derives 15 solid principlesranging from the commonly recognized to the groundbreakingthat are key to breaking these bottlenecks.
The rest of the book is devoted to a systematic application of these principles to bottlenecks found specifically in endnodes, interconnect devices, and specialty functions such as security and measurement that can be located anywhere along the network. This immensely practical, clearly presented information will benefit anyone involved with network implementation, as well as students who have made this work their goal.
Addresses the bottlenecks found in all kinds of network devices, (data copying, control transfer, demultiplexing, timers, and more) and offers ways to break them.
Presents techniques suitable specifically for endnodes, including Web servers.
Presents techniques suitable specifically for interconnect devices, including routers, bridges, and gateways.
Written as a practical guide for implementers but full of valuable insights for students, teachers, and researchers.
Includes end-of-chapter summaries and exercises (with solutions and lecture slides available online).
Table of Contents:
1 Introducing Network Algorithmics
2 Network Implementation Models
3 Fifteen Implementation Principles
4 Principles in Action
5 Copying Data
6 Transfering Control
7 Maintaining Timers
8 Demultiplexing
9 Protocol Processing
10 Exact Match Lookups
11 Prefix Match Lookups
12 Packet Classification
13 Switching
14 Scheduling Packets
15 Routers as Distributed Systems
16 Measuring Network Traffic
17 Network Security
18 Conclusions
Appendix A Detailed Models