Introduction
High-performance networking requires dedicated hardware with tremendous computational and communication performance. Network components such as network interfaces and routers are complex systems that are built in a modular fashion by combining many application-specific integrated circuits (ASICs). With increasing packet throughput, ASIC performance must increase. Moreover, trends toward differentiated services and higher quality of service require additional performance. Examples are more discerning packet classification, traffic shaping, network management, and debug. To address these issues networking ASICs must become more versatile and programmable, often evolving toward network processors.