Index
A
Acknowledgments (ack), with holding,
96–98Address Resolution Protocol (ARP),
37Algorithms versus algorithmics,
54–55American National Standards Institute (ANSI),
123Anomaly intrusion detection,
399speeding up select() by changing,
158–159speeding up select() without changing,
157–158Application device channels (ADCs),
161–162buffer validation of,
74–76Asynchronous transfer mode (ATM)
B
Binary trees, balanced,
29scaling lookups to higher speeds,
228–231dynamic buffer limiting,
203validation of application device channels (ADCs),
74–76Byte swapping and order,
207 ,
208C
packet classification and,
276Classless Internet Domain Routing (CIDR),
235–236structuring processes per client,
147–148structuring threads per client,
148–150Column address strobe (CAS),
27Compaq Computer Inc., virtual interface architecture,
162–163Connection lists, getting rid of TCP open,
93–96semantics, transparent emulation,
119–121reducing counter height using flow,
387–388reducing counter height using threshold aggregation,
385–387reducing counter width using randomized,
384–385Crossbar switches/scheduler, ,
307–311Cyclic redundancy checks (CRCs),
203–207D
Databases, incremental reading of large,
98–100Demultiplexing (demultiplexers), ,
19 ,
23 ,
145dynamic packet filter (DPF),
192–195packet classification and,
277Dense wavelength-division multiplexing (DWDM),
323Design, implementation principles versus,
65–66Dijkstra’s algorithm,
77–80Directed acyclic graph (DAG),
191Direct memory access (DMA),
33 ,
226versus programmed I/O,
135Distributed systems, routers as
Download times, reducing,
66–67Dynamic buffer limiting,
203Dynamic packet filter (DPF),
192–195reducing SRAM width using, backing store,
382–384E
Earliest deadline first,
356design of priority,
22–23quality of service and priority,
22forwarding packets,
80–81Event-driven scheduler,
150Extended grid of tries (EGT),
288F
First in, first out (FIFO),
339Flow counting, reducing counter height using,
387–388Forwarding information base (FIB),
35Fractional cascading,
285of link state protocols,
87–89G
Geometric view, of packet classification,
284–286H
component-level design,
30–31transmission speed,
22–23Hewlett-Packard, Open View,
20Hierarchical deficit round-robin,
353I
Identifiers, binary search of long,
100–102Implementation principles
caution when using,
68–70modularity with efficiency principles,
56 ,
61–63routines, principles for speeding up,
56 ,
63–65systems principles,
56–61Integrated layer processing (ILP),
130virtual interface architecture,
162–163Internet Control Message Protocol (ICMP),
37Intrusion detection systems (IDSs)
searching for multiple strings in packet payloads,
401–405string matching, approximate,
405–406J
K
L
Layer processing, locality-driven,
133–134Lazy receiver processing (LRP),
165Linear feedback shift register (LFSR),
206Link state protocols, avoiding fragmentation of,
87–89M
Measuring network traffic
reducing collection bandwidth,
389–390reducing counter height using flow counting,
387–388reducing counter height using threshold aggregation,
385–387reducing counter width using randomized counting,
384–385reducing processing using NetFlow,
388–389reducing SRAM width using DRAM backing store,
382–384trajectory sampling to correlate,
390–391allocation in compressed schemes,
261–263direct memory access (DMA),
33Memory management unit (MMU),
42Microsoft Inc., virtual interface architecture,
162–163Modified deficit round-robin,
354Modularity with efficiency principles,
56over referencing, avoiding,
62replace inefficient routines,
61–62Multi-protocol-label switching (MPLS),
37 ,
240 ,
241 ,
277N
Network address translation (NAT),
236characteristics of,
13–15Networking code, avoiding scheduling overhead in,
143–146Node compression, tries and,
83–85O
system calls and simple,
43–44uninterrupted computation,
39–41P
Packet classification, ,
36 ,
85 ,
185content-addressable memory,
278cross-producting, equivalenced,
293–296extended grid of tries,
288filtering in routers,
85–87header validation and checksums,
36Parallel iterative matching (PIM),
314–316Performance measures,
19–20select() and server performance problem,
153–154Prefix-match lookups, ,
35binary search, prefix lengths,
259–261multi-protocol label switching,
37 ,
240 ,
241nonalgorithmic techniques for,
242variable-length, reasons for,
235–236Programmable logic arrays (PLAs),
439Programmable priority encoders,
24–25 ,
322Protocol control block (PCB),
210–212Protocol Engines, Inc.,
210checksums and cyclic redundancy checks,
203–209Q
Quality of service (QOS),
22R
Random early detection (RED),
342–345Reading large databases, incremental,
98–100Rearrangeably nonblocking,
327Recursive flow classification (RFC),
293–296Remote direct memory access (RDMA),
121–125Resource Reservation Protocol (RSVP),
347–348Resources, identifying,
92–93fragmentation, redirects and ARPs,
37–38packet classification,
270packet filtering in,
85–87pin-count for buffers,
30–31Routines, principles for speeding up,
56 ,
63–65computation using Dijkstra’s algorithm,
77–80Row address strobe (RAS),
27S
SCSI (small computer system interface),
20–21 ,
123Security forensics problem,
54–55server performance problem,
153–154speeding up by changing API,
158–159speeding up without changing API,
157–158Service differentiation, ,
270Signature intrusion detection,
399Simple Network Management Protocol (SNMP),
37 ,
381Spanning tree algorithm,
227State machine implementation,
30–31Static random access memory (SRAM),
26 ,
32 ,
228 ,
441reducing, using DRAM backing store,
382–384Storage area networks (SANs),
20–21 ,
123String matching, approximate,
405–106Strings in packet payloads, searching for,
401–105parallel iterative matching (PIM),
314–316leverage off system components,
59–60performance improved by hardware,
60–61relaxing requirements,
58–59time and space computation,
57–58T
TCP/IP (Transmission Control Protocol/Intemet Protocol),
17–19 ,
21open connection lists, getting rid of,
93–96routines and performance of,
171Token bucket shaping and policing,
345–346Trading memory for processing,
14Translation look-aside buffer (TLB),
42 ,
115Transmission speed,
22–23Transport-arm-to-send,
144node compression and,
83–85U
V
Video conferencing, asynchronous transfer mode and,
102–104Virtual interface architecture (VIA),
162–163W
WAN (wide area network),
153context-switching control overhead,
146–152event-driven scheduler,
150X
x-kemel, demultiplexing in,
81–83Z