Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
1.3 Exercise 15 Focus Models Strategies Problems Chapter 2 3 4 Motivation Understand simple models for OS, hardware, networks Learn systems principles for overcoming bottlenecks Practice applying principles on simple problems Sample Topic Memory technology techniques (interleaving, mixing SRAM/DRAM) Pass hints, evaluate lazily Add state, exploit locality Designing a lookup engine for a network monitor F I G U R E 1.8 Preview of network algorithmics. Network algorithmics is introduced using a set of models, strategies, and sample problems, which are described in Part I of the book. Part I of the book is devoted to describing the network algorithmics approach in more detail. An overview of Part I is given in Figure 1.8. While this book concentrates on networking, the general algorithmics approach holds for the implementation of any computer system, whether a database, a processor architecture, or a software application. This general philosophy is alluded to in Chapter 3 by providing illustrative examples from the field of computer system implementation. The reader interested only in networking should rest assured that the remainder of the book, other than Chapter 3, avoids further digressions beyond networking. While Parts II and III provide specific techniques for important specific problems, the main goal of this book is to allow the reader to be able to tackle arbitrary packet-processing tasks at high speeds in software or hardware. Thus the implementor of the future may be given the task of speeding up XML processing in a Web server (likely, given current trends) or even the task of computing the chi-square statistic in a router (possible because chi-square provides a test for detecting abnormal observed frequencies for tasks such as intrusion detection). Despite being assigned a completely unfamiliar task, the hope is that the implementor would be able