Creating advanced functions on network processors: experience and perspectives

In this article we present five case studies of advanced networking functions that detail how a network processor (NP) can provide high performance and also the necessary flexibility compared with ASIC. We first review the basic NP system architectures, and describe the IBM PowerNP architecture from the data plane as well as the control plane point of view. We introduce models for the programmer's views of NP 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 apply to a wider range of system architectures. Specifically, we investigate the suitability of NP for QoS (active queue management and traffic engineering), header processing (GPRS tunneling protocol), intelligent forwarding (load balancing without flow disruption), payload processing (code interpretation and just-in-time compilation in active networks), and protocol stack termination (SCTP). Finally, we summarize the key features as revealed by each case study, and conclude with remarks on the future of NP.

[1]  Jonathan M. Smith,et al.  Switchware: accelerating network evolution , 1996 .

[2]  Roman A. Pletka,et al.  The potential of just-in-time compilation in active networks based on network processors , 2002, 2002 IEEE Open Architectures and Network Programming Proceedings. OPENARCH 2002 (Cat. No.02EX571).

[3]  R. D. Rockwell,et al.  Smart Packets for active networks , 1999, 1999 IEEE Second Conference on Open Architectures and Network Programming. Proceedings. OPENARCH '99 (Cat. No.99EX252).

[4]  G. T. Davis,et al.  PowerNP Network Processor: Hardware, Software And Applications , 2003 .

[5]  Marcel Waldvogel,et al.  Efficient topology-aware overlay network , 2003, CCRV.

[6]  Bernard Metzler,et al.  Scalable and Adaptive Load Balancing on IBM PowerNP , 2002 .

[7]  Jean Calvignac,et al.  Fundamental architectural considerations for network processors , 2003, Comput. Networks.

[8]  Lukas Kencl,et al.  Bandwidth allocation for non-responsive flows with active queue management , 2002, 2002 International Zurich Seminar on Broadband Communications Access - Transmission - Networking (Cat. No.02TH8599).

[9]  QUTdN QeO,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[10]  Keith W. Ross,et al.  Hash routing for collections of shared Web caches , 1997, IEEE Netw..

[11]  Roman Pletka,et al.  Adaptive end to end quality of service guarantees in IP networks , 2004 .

[12]  Kang G. Shin,et al.  A self-configuring RED gateway , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[13]  Yitzchak M. Gottlieb,et al.  Building a robust software-based router using network processors , 2001, SOSP.

[14]  William A. Arbaugh,et al.  The SwitchWare active network architecture , 1998, IEEE Netw..

[15]  Bernhard Plattner,et al.  A scalable high-performance active network node , 1999 .

[16]  Carl A. Gunter,et al.  PLAN: a packet language for active networks , 1998, ICFP '98.

[17]  Dimitri P. Bertsekas,et al.  Data Networks , 1986 .

[18]  Raj Yavatkar,et al.  A highly flexible, distributed multiprocessor architecture for network processing , 2003, Comput. Networks.

[19]  Sally Floyd,et al.  Adap-tive RED: An algorithm for increasing the robustness of RED , 2001 .

[20]  David L. Black,et al.  Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 Headers , 1998, RFC.

[21]  Scott Nettles,et al.  Practical programmable packets , 2001, Proceedings IEEE INFOCOM 2001. Conference on Computer Communications. Twentieth Annual Joint Conference of the IEEE Computer and Communications Society (Cat. No.01CH37213).

[22]  Burkhard Stiller,et al.  Autonomic service deployment in networks , 2003, IBM Syst. J..

[23]  Marcel Waldvogel,et al.  IBM PowerNP network processor: Hardware, software, and applications , 2003, IBM J. Res. Dev..