NPCryptBench: A Cryptographic Benchmark Suite for Network Processors

Introduction

As requirements for communication security grow, cryptographic processing becomes another type of network processor's application domain. However, hardware solution cannot meet flexibility requirements of emerging security protocols and services. Clearly, implementing cryptographic applications on NPs using software is still necessary. Unfortunately, the impact of performing such security applications on NP architecture is not quite known to us.

NPCryptBench is the software package for implementing and optimizing cryptographic applications on data-plane (fast-path) of NP architecture. NPCryptBench selects a group of algorithms based on their representativeness, popularity and availability. NPCryptBench does not focus on the functionality of each algorithm but the critical small inner loops where the vast majority of all processing is present. This differentiation also complies with the layered architecture of NPs, where initialization and non real-time calculations are carried out by control-plan (slow-path) processors. NPCryptBench can be used for NP architecture evaluation and power estimation purpose. The code segments can also be easily turned into full functional algorithms for security applications (e.g. VPN, IPSec) on NPs without hardware encryption engines. (We may not need IXP2850 or IXP1250)

NPCryptBench is licensed under an academic-license situation, which basically means that you are free to get and use it for non-commercial purposes as long as you fulfill the conditions of the licenses.  

The Software Package

The initial release of NPCryptBench 1.01 is available for non-commercial use only. This release contains codes for DES, AES, RC4/5/6, Blowfish, SEAL, IDEA, MD5, SHA-1. The source codes are written in Intel IXP C (Both for Intel's IXP2XXX and IXP1200).  

To get the software package and its free update, you should print the license agreement with official letter head, sign it (do NOT simply print your name in the signature field) and mail us directly. For mailing address and download instructions, see Additional Information below. Scanned copies of signed license are also accepted through email. 

Current Version

A major update for IXP2XXX will be released soon.

Version 1.00 (IXP1200) Mar 7, 2005

    +Initial release with 9 working algorithms

Version 1.01 (IXP2XXX) Mar 31, 2005

    +Add more code comments
    +Correct simple initialization issue of RC4

Publication

Yao Yue, Chuang Lin, Zhangxi Tan, “NPCryptBench: A Cryptographic Benchmark Suite for Network Processors”, ACM SIGARCH MEDEA 05, held in conjunction with ACM/IEEE Parallel Architectures and Compilation Techniques (PACT), to be appeared in the March 2006 special issue of ACM SIGARCH Computer Architecture News.  (Intel IXP1200/2X00 Version)

Zhangxi Tan, Chuang Lin, Hao Yin, Bo Li, "Optimization and Benchmark of Cryptographic Algorithms on Network Processors", IEEE Micro, Special Issue on Network Processor For Future High-End Systems and Applications, pp.55-69, sep/oct 2004.  (Intel IXP2800 Version)

Zhangxi Tan, Chuang Lin, Yianxi Li, Yixin Jiang, "Optimization and Benchmark of Cryptographic Algorithms on Network Processors", IEEE International Conference on System, Man and Cybernetics (SMC 2003), Washington D.C. USA, Oct 2003. Vol 3, pp. 2296-2301. (Intel IXP1200 Version)

NPCryptBench in Use

NePSim, University of California, Riverside, USA
University of Colorado, Boulder, USA
Harbin Institute of Technology, China
Clemson University, South Carolina, USA
California State University, Long Beach, USA
Zhejiang University, China
University of Karlsruhe, Germany
International Institute of Information Technology, India
Research Unit in Networking of University of Liège, Belgium

People

Zhangxi Tan, University of California, Berkeley, USA
Yao Yue, Tsinghua University, China
Donghua Ruan, Tsinghua University, China

Development of this package is suspended. Please send emails to yy277 AT cornell DOT edu to report bugs, ask questions or get more information.
Thanks for your interest.


Last update @ 10-03-2007 by Yao Yue