Share This Article:

SimNP: A Flexible Platform for the Simulation of Network Processing Systems

Abstract Full-Text HTML Download Download as PDF (Size:357KB) PP. 207-215
DOI: 10.4236/cn.2010.24030    4,744 Downloads   9,038 Views   Citations


Network processing plays an important role in the development of Internet as more and more complicated applications are deployed throughout the network. With the advent of new platforms such as network processors (NPs) that incorporate novel architectures to speedup packet processing, there is an increasing need for an efficient method to facilitate the study of their performance. In this paper, we present a tool called SimNP, which provides a flexible platform for the simulation of a network processing system in order to provide information for workload characterization, architecture development, and application implementation. The simulator models several architectural features that are commonly employed by NPs, including multiple processing engines (PEs), integrated network interface and memory controller, and hardware accelerators. ARM instruction set is emulated and a simple memory model is provided so that applications implemented in high level programming language such as C can be easily compiled into an executable binary using a common compiler like gcc. Moreover, new features or new modules can also be easily added into this simulator. Experiments have shown that our simulator provides abundant information for the study of network processing systems.

Conflicts of Interest

The authors declare no conflicts of interest.

Cite this paper

D. Bermingham, Z. Liu and X. Wang, "SimNP: A Flexible Platform for the Simulation of Network Processing Systems," Communications and Network, Vol. 2 No. 4, 2010, pp. 207-215. doi: 10.4236/cn.2010.24030.


[1] D. Comer and L. Peterson, “Network Systems Design Using Network Processors,” 1st Edition, Prentice-Hall, Inc., USA, 2003.
[2] Intel Inc., IXP2800 Hardware Reference Manual.
[3] M. R. Hussain, “Octeon Multi-Core Processor,” Keynote Speech of ANCS 2006, San Jose, California, USA, December 2006.
[4] M. Venkatachalam, P. Chandra and R. Yavatkar, “A Highly Flexible, Distributed Multiprocessor Architecture for Network Processing,” Computer Networks, Vol. 41, No. 5, 2003, pp. 563-586.
[5] W. Eatherton, “The Push of Network Processing to the Top of the Pyramid,” Keynote Address at the Symposium on Architectures for Networking and Communication Systems (ANCS2005), Princeton, New Jersey, USA, October 2005.
[6] J. Mudigonda, H. M. Vin and R. Yavatkar, “Managing Memory Access Latency in Packet Processing,” Proceedings of the International Conference on Measurement and Modeling of Computer Systems (SIGMETRICS 2005), Banff, Alberta, Canada, June 2005, pp. 396-397
[7] M. Peyravian and J. Calvignac, “Fundamental Architecture Considerations for Network Processors,” Computer Networks, Vol. 41, No. 5, 2003, pp. 587-600.
[8] W. Bux, W. E. Denzel, T. Engbersen, A. Herkersdorf and R.P. Luijten, “Technologies and Building Blocks for Fast Packet Forwarding,” IEEE Communications Magazine, , Vol. 39, No. 1, 2001, pp. 70-77
[9] D. Burger and T. Austin, “The SimpleScalar tool set verstion 2.0,” Computer Architecture News, Vol. 25, No. 3, 1997, pp.13-25
[10] N. Shah, W. Plishker and K. Keutzer, “NP-click: A productive software development approach for network processors,” IEEE Micro, Vol. 24, No. 5, 2004, pp. 45-54.
[11] T. Wolf and M. Franklin, “Commbench: A Telecommunications Benchmark for Network Processors,” IEEE International Symposium on Performance Analysis of Systems and Software, Austin, USA, April 2000.
[12] G. Memik, W. H. Mangione-Smith and W. Hu, “NetBench: A Benchmarking Suite for Network Processors,” Proceedings of IEEE/ACM International Conference on Computer-Aided Design, Digest of Technical Papers, San Jose, USA, November 2001, pp. 39-42.
[13] J. L. Hennessy and D. A. Patterson, “Computer Architecture: A Quantitative Approach,” 4th Edition, Morgan Kaufmann, USA, 2006.
[14] Z. Liu, D. Bermingham and X. Wang, “Towards Fast and Flexible Simulation of Network Processors,” The IET 2008 China-Ireland International Conference on Information and Communications Technologies (CIICT2008), Beijing, China, September 2008, pp. 611-614.
[15] D. Bermingham, Z. Liu and X. Wang, “SimNP: A Flexible Platform for the Simulation of Network Processing System,” ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS2008), California, USA, November 2008, pp. 123-124.
[16] P. Willman, M. Broglioli and V. Pai, “Spinach: A Liberty-Based Simulator for Programmable Network Interface Architectures,” LCTES, 2004, pp. 20-29.
[17] R. Ramaswamy and T. Wolf, “PacketBench: A Tool for Workload Characterization of Network Processing,” Proceeding of IEEE 6th Annual Workshop on Workload Characterization (WWC-6), Austin, TX, 2003, pp. 42-50.
[18] Y. Luo, J. Yang, L. N. Bhuyan and L. Zhao, “NePSim: A Network Processor Simulator with a Power Evaluation Framework,” IEEE Micro, Vol. 24, No. 5, 2004, pp. 34- 44.
[19] D. Suryanarayanan, J. Marshall and G. T. Byrd, “A Methodology and Simulator for the Study of Network Processors,” In: P. Crowley, M. A. Franklin, H. Hadimioglu, and P. Z. Onufryk, Eds., Network Processor Design: Issues and Practices, Morgan Kaufmann Publishers, USA, 2003, pp. 27-54.
[20] “NLANR Passive Measurement Analysis,” 2007. http:// pma.
[21] “The GNU Compiler Collection,” 2009.
[22] B. Schneier, “Applied Cryptography,” 2nd Edition, John Wiley & Sons, New York, 1996.
[23] S. Kumar, J. Turner and J. Williams, “Advanced Algorithms for Fast and Scalable Deep Packet Inspection,” Proceedings of the ACM/IEEE symposium on Architecture for networking and communications systems, San Jose, USA, December 2006, pp. 81-92.
[24] P. Gupta and N. McKeown, “Packet Classification on Multiple Fields,” Proceedings of the 1999 Conference on Applications, Technologies, Architectures and Protocols for Computer Communications (ACM SIGCOMM’99), Massachusetts, US, September 1999, pp. 147-160.
[25] S. Nilsson and G. Karlsson, “IP-Address Lookup Using LC-Tries,” IEEE Journal on Selected Areas in Communications, Vol. 17, No. 6, June 1999, pp. 1083-1092.
[26] RFC-791, “Internet Protocol DARPA Internet Program Protocol Specification,” 1981.

comments powered by Disqus

Copyright © 2018 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.