Framework for supporting multi-service edge packet processing on network processors

Network edge packet-processing systems, as are commonly implemented on network processor platforms, are increasingly required to support a rich set of services. These multi-service systems are also subjected to widely varying and unpredictable traffic. Current network processor systems do not simultaneously deal well with a variety of services and fluctuating workloads. For example, current methods of worst-case, static provisioning can meet performance requirements for any workload, but provisioning each service for its worst case reduces the total number of services that can be supported. Alternately, profile-driven automatic-partitioning compilers create efficient binaries for multi-service applications for specific workloads but they are sensitive to workload fluctuations. Run-time adaptation is a potential solution to this problem. With run-time adaptation, the mapping of services to system resources can be dynamically adjusted based on the workload. We have implemented an adaptive system that automatically changes the mapping of services to processors, and handles migration of services between different processor core types to match the current workload. In this paper we explain our adaptive system built on the Intelreg IXP2400 network processor. We demonstrate that it outperforms multiple different profile-driven compiled solutions for most workloads and performs within 20% of the optimal compiled solution for the remaining workloads.

[1]  Kurt Keutzer,et al.  NP-Click: A Programming Model for the Intel IXP1200 , 2004 .

[2]  Harrick M. Vin,et al.  A case for run-time adaptation in packet processing systems , 2004, Comput. Commun. Rev..

[3]  Matthias Blume,et al.  Taming the IXP network processor , 2003, PLDI.

[4]  Donald Hooper,et al.  Packet over SONET : Achieving 10 Gigabit / sec Packet Processing with an IXP 2800 , 2002 .

[5]  Larry L. Peterson,et al.  VERA: an extensible router architecture , 2002, Comput. Networks.

[6]  Prashant J. Shenoy,et al.  Dynamic resource allocation for shared data centers using online measurements , 2003, IWQoS'03.

[7]  Sally Floyd,et al.  Wide-area traffic: the failure of Poisson modeling , 1994 .

[8]  Ozalp Babaoglu,et al.  ACM Transactions on Computer Systems , 2007 .

[9]  EDDIE KOHLER,et al.  The click modular router , 2000, TOCS.

[10]  Bernhard Plattner,et al.  Router plugins: a software architecture for next generation routers , 1998, SIGCOMM '98.

[11]  Stephen D. Goglin Advanced Software Framework , Tools , and Languages for the IXP Family , 2003 .

[12]  Monica S. Lam,et al.  Optimizing the migration of virtual computers , 2002, OPSR.

[13]  Michael K. Chen,et al.  Shangri-La: achieving high performance from compiled network applications while enabling ease of programming , 2005, PLDI '05.

[14]  David E. Culler,et al.  SEDA: An Architecture for Scalable, Well-Conditioned Internet Services , 2001 .

[15]  Zhi-Li Zhang,et al.  Small-time scaling behaviors of Internet backbone traffic: an empirical study , 2003, IEEE INFOCOM 2003. Twenty-second Annual Joint Conference of the IEEE Computer and Communications Societies (IEEE Cat. No.03CH37428).

[16]  Andrew T. Campbell,et al.  Programming the data path in network processor‐based routers , 2005, Softw. Pract. Exp..

[17]  Jeffrey F. Naughton,et al.  Real-time, concurrent checkpoint for parallel programs , 1990, PPOPP '90.

[18]  K. Shin,et al.  Performance Guarantees for Web Server End-Systems: A Control-Theoretical Approach , 2002, IEEE Trans. Parallel Distributed Syst..

[19]  Miron Livny,et al.  Condor-a hunter of idle workstations , 1988, [1988] Proceedings. The 8th International Conference on Distributed.

[20]  Peter A. Dinda,et al.  Multiscale Predictability of Network Traffic , 2002 .

[21]  David E. Culler,et al.  SEDA: an architecture for well-conditioned, scalable internet services , 2001, SOSP.

[22]  Bernhard Plattner,et al.  PromethOS: A Dynamically Extensible Router Architecture Supporting Explicit Routing , 2002, IWAN.

[23]  Calton Pu,et al.  A feedback-driven proportion allocator for real-rate scheduling , 1999, OSDI '99.

[24]  Jason Nieh,et al.  Proceedings of the 5th Symposium on Operating Systems Design and Implementation , 2022 .

[25]  Harrick M. Vin,et al.  Share: run-time system for high-performance virtualized routers , 2005 .