A Fast Approach for Generating Efficient Parsers on FPGAs

The development of modern networking requires that high-performance network processors be designed quickly and efficiently to support new protocols. As a very important part of the processor, the parser parses the headers of the packets—this is the precondition for further processing and f...

Full description

Bibliographic Details
Main Authors: Zhuang Cao, Huiguo Zhang, Junnan Li, Mei Wen, Chunyuan Zhang
Format: Article
Language:English
Published: MDPI AG 2019-10-01
Series:Symmetry
Subjects:
p4
Online Access:https://www.mdpi.com/2073-8994/11/10/1265
id doaj-825ed9887ab342cb9d48a8497754df35
record_format Article
spelling doaj-825ed9887ab342cb9d48a8497754df352020-11-25T02:03:58ZengMDPI AGSymmetry2073-89942019-10-011110126510.3390/sym11101265sym11101265A Fast Approach for Generating Efficient Parsers on FPGAsZhuang Cao0Huiguo Zhang1Junnan Li2Mei Wen3Chunyuan Zhang4College of Computer, National University of Defense Technology, Changsha 410073, ChinaSchool of Computer Science and Engineering, Nanyang Technological University, Singapore 639798, SingaporeCollege of Computer, National University of Defense Technology, Changsha 410073, ChinaCollege of Computer, National University of Defense Technology, Changsha 410073, ChinaCollege of Computer, National University of Defense Technology, Changsha 410073, ChinaThe development of modern networking requires that high-performance network processors be designed quickly and efficiently to support new protocols. As a very important part of the processor, the parser parses the headers of the packets—this is the precondition for further processing and finally forwarding these packets. This paper presents a framework designed to transform P4 programs to VHDL and to generate parsers on Field Programmable Gate Arrays (FPGAs). The framework includes a pipeline-based hardware architecture and a back-end compiler. The hardware architecture comprises many components with varying functionality, each of which has its own optimized VHDL template. By using the output of a standard frontend P4 compiler, our proposed compiler extracts the parameters and relationships from within the used components, which can then be mapped to corresponding templates by configuring, optimizing, and instantiating them. Finally, these templates are connected to output VHDL code. When a prototype of this framework is implemented and evaluated, the results demonstrate that the throughputs of the generated parsers achieve nearly 320 Gbps at a clock rate of around 300 MHz. Compared with state-of-the-art solutions, our proposed parsers achieve an average of twice the throughput when similar amounts of resources are being used.https://www.mdpi.com/2073-8994/11/10/1265packet parserpipelinep4fpga
collection DOAJ
language English
format Article
sources DOAJ
author Zhuang Cao
Huiguo Zhang
Junnan Li
Mei Wen
Chunyuan Zhang
spellingShingle Zhuang Cao
Huiguo Zhang
Junnan Li
Mei Wen
Chunyuan Zhang
A Fast Approach for Generating Efficient Parsers on FPGAs
Symmetry
packet parser
pipeline
p4
fpga
author_facet Zhuang Cao
Huiguo Zhang
Junnan Li
Mei Wen
Chunyuan Zhang
author_sort Zhuang Cao
title A Fast Approach for Generating Efficient Parsers on FPGAs
title_short A Fast Approach for Generating Efficient Parsers on FPGAs
title_full A Fast Approach for Generating Efficient Parsers on FPGAs
title_fullStr A Fast Approach for Generating Efficient Parsers on FPGAs
title_full_unstemmed A Fast Approach for Generating Efficient Parsers on FPGAs
title_sort fast approach for generating efficient parsers on fpgas
publisher MDPI AG
series Symmetry
issn 2073-8994
publishDate 2019-10-01
description The development of modern networking requires that high-performance network processors be designed quickly and efficiently to support new protocols. As a very important part of the processor, the parser parses the headers of the packets—this is the precondition for further processing and finally forwarding these packets. This paper presents a framework designed to transform P4 programs to VHDL and to generate parsers on Field Programmable Gate Arrays (FPGAs). The framework includes a pipeline-based hardware architecture and a back-end compiler. The hardware architecture comprises many components with varying functionality, each of which has its own optimized VHDL template. By using the output of a standard frontend P4 compiler, our proposed compiler extracts the parameters and relationships from within the used components, which can then be mapped to corresponding templates by configuring, optimizing, and instantiating them. Finally, these templates are connected to output VHDL code. When a prototype of this framework is implemented and evaluated, the results demonstrate that the throughputs of the generated parsers achieve nearly 320 Gbps at a clock rate of around 300 MHz. Compared with state-of-the-art solutions, our proposed parsers achieve an average of twice the throughput when similar amounts of resources are being used.
topic packet parser
pipeline
p4
fpga
url https://www.mdpi.com/2073-8994/11/10/1265
work_keys_str_mv AT zhuangcao afastapproachforgeneratingefficientparsersonfpgas
AT huiguozhang afastapproachforgeneratingefficientparsersonfpgas
AT junnanli afastapproachforgeneratingefficientparsersonfpgas
AT meiwen afastapproachforgeneratingefficientparsersonfpgas
AT chunyuanzhang afastapproachforgeneratingefficientparsersonfpgas
AT zhuangcao fastapproachforgeneratingefficientparsersonfpgas
AT huiguozhang fastapproachforgeneratingefficientparsersonfpgas
AT junnanli fastapproachforgeneratingefficientparsersonfpgas
AT meiwen fastapproachforgeneratingefficientparsersonfpgas
AT chunyuanzhang fastapproachforgeneratingefficientparsersonfpgas
_version_ 1724945514685792256