Browse > Article
http://dx.doi.org/10.9708/jksci.2014.19.1.065

eFlowC: A Packet Processing Language for Network Management  

Ko, Bang-Won (Dept. of Computer Science, Soongsil University)
Yoo, Jae-Woo (Dept. of Computer Science, Soongsil University)
Abstract
In this paper, we propose a high-level programming language for packet processing called eFlowC and it supporting programming development environment. Based on the C language which is already familiar and easy to use to program developers, eFlowC maintains the similar syntax and semantics of C. Some features that are unnecessary for the packet processing has been removed from C, eFlowC is highly focused on performing packet data, database, string byte information checking and event processing. Design high-level programming languages and apply an existing language or compiler technology, language function and compilation process that is required for packet processing will be described. In order to use the DPIC device such as X11, we designed a virtual machine eFVM that takes into account the scalability and portability. We have evaluated the utility of the proposed language by experimenting a variety of real application programs with our programming environment such as compiler, simulator and debugger for eFVM. As there is little research that devoted to define the formats, meanings and functions of the packet processing language, this research is significant and expected to be a basis for the packet processing language.
Keywords
Packet processing language; Compiler; DPIC; Virtual machine;
Citations & Related Records
연도 인용수 순위
  • Reference
1 CloudShield Technologies Inc., "PacketWorksTM Integrated Development Environment", CloudShield, 2007.
2 CloudShield Technologies Inc., "PacketC Unleashed", CloudShield, 2008.
3 S. Dharmapurikar, P. Krishnamurthy, T. Sproull, and J. W. Lockwood, "Deep Packet Inspection Using Parallel Bloom Filters", Hot Interconnects 11(HotI), pp.44-51, Stanford, CA, USA, Aug. 2003.
4 L.Degioanni, M.Baldi, D.Buffa, F.Risso, F.Stirano, G.Varenni, "Network Virtual Machine(NetVM): A New Architecture for Efficient and Portable Packet Processing Applications", Proceedings of the 8th International Conference on Telecommunications, pp.163-168, 2005.
5 R.Duncan and P.Jungck, "PacketC Language for High Performance Packet Processing", Proceedings of the 11'th IEEE International Conference on High Performance Computing and Communications, Seoul, Korea, pp. 450-457, June 2009.
6 R.Duncan, P.Jungck and K.Ross, "PacketC Language and Parallel Processing of Masked Databases," Proceedings of the 2010 International Conference on Parallel Processing, pp. 472-481, 2010.
7 R.Duncan, P.Jungck, K.Ross and S.Tillman, "Packet Content Matching with packetC Searchsets", Proceedings of the International Conference on Parallel and Distributed Systems, 2010.
8 B. Gatliff, "Embedding with GNU : GNU debugger", Embedded Systems Programming, 1999
9 A.V.Aho, M.S.Lam, R.Sethi, J.D.Ullman, "Compilers Principles, Techniques and Tools", Addison-Wesley, 2007.
10 M.Baldi, F.Risso, "A Framework for Rapid Development and Portable Execution of Packet -Handling Applications", Signal Processing and Information Technology, pp.233-238, 2005.
11 B.W. Kernighan, D. M.Ritchie, "The C Programming Languages", Prentice-Hall, 1988.
12 Kevin R. Fall, W. Richard Stevens, "TCP/IP illustrated volume 1", Addison-Wesley, 2011.
13 S.P, Harbisonn G.L, Steele Jr., "C: A REFERENCE MANUAL", Tartan Inc., 1995.
14 B. L, Kurtz, "Formal Syntax and Semantices of Programming Language", Louisiana Tech University, 1995.
15 O.Morandi, F.Risso, Pierluigi, Rolando, S.Valenti, P.Veglia, "Creating Portable and Efficient Packet Processing Applications", Creating Portable and Efficient Packet Processing Applications, pp.51-85, Mar. 2011.
16 Y.R. Kang, "Internet Traffic Control and DPI", KISDI, Vol. 25(8), pp.23-48, May. 2013.
17 H. Park ,D. Xu, J.Park, J.H.Ji, G.Woo "Design of On -Chip Debug System for embedded processor," Procedeeings of 2008 SoC Design Conference, Dept. of Electron. Eng., Pusan Nat. Univ. 2008.
18 R.Stallman, R.Pesch, S.Shebs, "GNU User Manual: Debugging With GDB (TheGNU Source-level Debugger)", GNU Presss, 2002
19 Xelerated, "Xelerator X11 Network Processor User's Guide Part1-Programmable Pipeline", Xelerated Inc., 2010.
20 D.Y. Kim, H.Y. Cho, "Technology of Security Engine Based on Hardware", ICAT 2003, Apr. 2003.
21 S.Y. Shin, D.H. Kang, K.Y. Kim, J.S. Jang, "Analysis of DPI Technology", Electronics and Telecommunications Trends, Vol. 19(3), pp.117-124, 2004. 06
22 C.W. Yoo, BangWon Ko, "A Study on the Application Development Environment and Simulator Architecture of High Speed In-line Network Computing", Final Report, ETRI, 2012