Architectural analysis and instruction-set optimization design of network protocol processors

TCP/IP protocol processing latency has been an important issue in high-speed networks. In this paper, we present an architectural study of TCP/IP protocol. We port the TCP/IP protocol stack from the 4.4 FreeBSD to the SimpleScalar simulation environment. The architectural characteristics, such as instruction level parallelism and cache behavior, are studied through simulation. We also compare the characteristics of TCP/IP protocol to that of SPECint benchmark programs. It turns out that the former is quite different from the latter due to the unique processing structure. Furthermore, in order to improve the effectiveness of instruction cache, frequent instruction pairs are analyzed, and corresponding architectural optimizations are made to the instruction set architecture. The performance is evaluated in the simulator. We find that a 23% improvement can be achieved by taking advantage of the optimization. The instruction set optimizations proposed in this paper will be helpful for the design of new programmable protocol processors in future.

[1]  Jonathan M. Smith Programmable Networks: Selected Challenges in Computer Networking , 1999, Computer.

[2]  Tilman Wolf,et al.  CommBench-a telecommunications benchmark for network processors , 2000, 2000 IEEE International Symposium on Performance Analysis of Systems and Software. ISPASS (Cat. No.00EX422).

[3]  Joseph Pasquale,et al.  Profiling and reducing processing overheads in TCP/IP , 1996, TNET.

[4]  Larry L. Peterson,et al.  The x-Kernel: An Architecture for Implementing Network Protocols , 1991, IEEE Trans. Software Eng..

[5]  Armando P. Stettner The design and implementation of the 4.3BSD UNIX operating system , 1988 .

[6]  Mirko Benz,et al.  An Architecture and Prototype Implementation for TCP / IP Hardware Support , 2001 .

[7]  R. Callon Predictions for the core of the network , 2000 .

[8]  Erich M. Nahum,et al.  Cache behavior of network protocols , 1997, SIGMETRICS '97.

[9]  Samuel J. Leffler,et al.  The design and implementation of the 4.3 BSD Unix operating system , 1991, Addison-Wesley series in computer science.

[10]  Larry L. Peterson,et al.  Analysis of techniques to improve protocol processing latency , 1996, SIGCOMM '96.

[11]  PasqualeJoseph,et al.  The importance of non-data touching processing overheads in TCP/IP , 1993 .

[12]  R. Wilder,et al.  Wide-area Internet traffic patterns and characteristics , 1997, IEEE Netw..

[13]  Jeffrey S. Chase,et al.  Trapeze / IP : TCP / IP at Near-Gigabit Speeds , 1999 .

[14]  Trevor Blackwell Speeding up Protocols for Small Messages , 1996, SIGCOMM.