Queuing Behavior and Packet Delays in Network Processor Systems

Network processor systems provide the performance of ASICs combined with the programmability of general-purpose processors. One of the main challenges in designing these systems is the memory subsystem used when forwarding and queueing packets. In this work, we study the queueing behavior and packet delays in a network processor system which works as a router. We introduce a system model and a simulation tool based on the model. Using the simulation tool, both best-effort and diffserv IPv4 forwarding were modeled and tested using real-world and synthetically generated packet traces. The results on queueing behavior have been used to dimension various queues, and can be used as guidelines for designing memory subsystems and queueing disciplines. In particular, a system with small queue sizes has been proposed. The results on packet delays also show that our diffserv setup provides good service differentiation for best-effort and priority packets. Finally, the study reveals that the choice of traces has a large impact on the results when evaluating router and switch architectures.

[1]  Konstantina Papagiannaki,et al.  Bridging router performance and queuing theory , 2004, SIGMETRICS '04/Performance '04.

[2]  Zheng Wang,et al.  An Architecture for Differentiated Services , 1998, RFC.

[3]  Ying-Dar Lin,et al.  DiffServ over network processors: implementation and evaluation , 2002, Proceedings 10th Symposium on High Performance Interconnects.

[4]  Lothar Thiele,et al.  Chapter 4 – Design Space Exploration of Network Processor Architectures , 2003 .

[5]  Nick McKeown,et al.  The iSLIP scheduling algorithm for input-queued switches , 1999, TNET.

[6]  Jing Fu,et al.  Designing and evaluating network processor applications , 2005, HPSR. 2005 Workshop on High Performance Switching and Routing, 2005..

[7]  David L. Black,et al.  An Architecture for Differentiated Service , 1998 .

[8]  Thomas E. Anderson,et al.  High-speed switch scheduling for local-area networks , 1993, TOCS.

[9]  Nick McKeown,et al.  The Tiny Tera: A Packet Switch Core , 1998, IEEE Micro.

[10]  Cheng-Shang Chang,et al.  Load balanced Birkhoff-von Neumann switches, part II: multi-stage buffering , 2002, Comput. Commun..

[11]  Michalis Faloutsos,et al.  A nonstationary Poisson view of Internet traffic , 2004, IEEE INFOCOM 2004.

[12]  David M. Lucantoni,et al.  A Markov Modulated Characterization of Packetized Voice and Data Traffic and Related Statistical Multiplexer Performance , 1986, IEEE J. Sel. Areas Commun..

[13]  Cheng-Shang Chang,et al.  Load balanced Birkhoff-von Neumann switches, part I: one-stage buffering , 2002, Computer Communications.

[14]  F. Risso,et al.  Network virtual machine (NetVM): a new architecture for efficient and portable packet processing applications , 2005, Proceedings of the 8th International Conference on Telecommunications, 2005. ConTEL 2005..

[15]  Theofanis Orphanoudakis,et al.  Queue management in network processors , 2005, Design, Automation and Test in Europe.

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