Creating Advanced Functions on Network Processors: Experience and Perspectives
In this paper, we present five case studies of advanced networking functions and how a network processor (NP) can provide high-performance and exible support for each of them. We first review the basic NP system architectures, and describe in more detail the IBM PowerNP architecture from a data plane as well as from a control plane point of view. We introduce models for the programmer`s views of NPs that facilitate a global understanding of NP software programming. Then, for each case study, we present results from prototypes as well as general considerations that also apply to a wider range of system architectures. Namely, we investigate the suitability of NPs for quality-of-service (active queue management and traffic engineering), header processing (GPRS tunneling protocol), intelligent forwarding (load-balancing without flow disruption), payload processing (active networks code interpretation and just-in-time compilation), and protocol stack termination (SCTP). Finally, we summarize the key features required by each case study, and make concluding remarks regarding the future of NPs.