• DocumentCode
    2906773
  • Title

    Building High-Performance Application Protocol Parsers on Multi-core Architectures

  • Author

    Zhang, Kai ; Wang, Junchang ; Hua, Bei ; Tang, Xinan

  • Author_Institution
    Sch. of Comput. Sci. & Technol., Univ. of Sci. & Technol. of China (USTC), Hefei, China
  • fYear
    2011
  • fDate
    7-9 Dec. 2011
  • Firstpage
    188
  • Lastpage
    195
  • Abstract
    Parsing packet payloads according to the syntax and semantics of an application protocol is a key step in analyzing network traffic. However, it is still a challenge to fulfill this task with high speed(10Gbps+) because parsing packets through deep-content analysis to build a corresponding syntax tree requires tremendous computing resources. Multi-core architectures provide a viable solution for building high-performance parsers for application protocols. Existing sequential application protocol parsers are hard to be reused, and building a new protocol parser from scratch is error-prone and time-consuming. This paper proposes a general and efficient approach to building high-performance parallel application protocol parsers on multi-core platforms. First, the open-source lexical analyzer FLEX is used to describe a protocol and generate a sequential parser. Then a source-to-source translation is performed to transform the sequential parser into a parallel one. Finally, an efficient parallel run-time system is built by employing lock-free design principles from top to bottom to support multi-threaded execution on multi-core processors. Experimental results show that our parsers achieve nearly 20Gbps for average HTTP packets and 5Gbps for the challenging smaller FIX packets.
  • Keywords
    multi-threading; multiprocessing systems; program compilers; program interpreters; protocols; FLEX open-source lexical analyzer; application protocol parser; deep-content analysis; lock-free design principle; multicore architecture; multithreaded execution; network traffic analysis; packet payload parsing; parallel run-time system; source-to-source translation; syntax tree; Buildings; Flexible printed circuits; Multicore processing; Pipelines; Protocols; Servers; Highperformance Network Processing; Multi-core; Protocol Parser;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel and Distributed Systems (ICPADS), 2011 IEEE 17th International Conference on
  • Conference_Location
    Tainan
  • ISSN
    1521-9097
  • Print_ISBN
    978-1-4577-1875-5
  • Type

    conf

  • DOI
    10.1109/ICPADS.2011.37
  • Filename
    6121277