{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,12,24]],"date-time":"2025-12-24T07:36:04Z","timestamp":1766561764449,"version":"3.48.0"},"reference-count":56,"publisher":"Association for Computing Machinery (ACM)","issue":"1","funder":[{"name":"National Key Research and Development Program of China","award":["2022YFB2901404"],"award-info":[{"award-number":["2022YFB2901404"]}]}],"content-domain":{"domain":["dl.acm.org"],"crossmark-restriction":true},"short-container-title":["ACM Trans. Reconfigurable Technol. Syst."],"published-print":{"date-parts":[[2026,3,31]]},"abstract":"<jats:p>Deep Packet Inspection (DPI) faces significant bottlenecks in regular expression (regex) matching due to escalating rule complexity and traffic volume. Existing FPGA-based solutions inefficiently process all packets through every automaton, incurring substantial resource overhead. This article proposes OD-REM, an on-demand regex matching architecture for FPGAs that dramatically improves efficiency. In addition to this novel architecture, OD-REM also introduces three innovations: (1) A Counter-Enabled Fast Reconfigurable Automaton (cFRA) compresses regex states by 97.5% via counting semantics, eliminating state explosion for bounded repetitions; (2) A Ring Queue (RQ) scheduler dynamically dispatches packets only to automata relevant to their candidate rules (identified via pre-filtering); (3) A modular pipeline for per-packet, on-chip run-time reconfiguration. Implemented on a Xilinx VU9P FPGA with 32 parallel cFRAs, OD-REM achieves 41.18 Gbps throughput\u2014roughly 3\u00d7 to 40\u00d7 higher than the similar works while still performing a full reconfiguration on every packet. It reduces packet latency by 3.73 \u00b5s versus sliding-window scheduling. Integrated with Pigasus, OD-REM offloads complex rules, accelerating Hyperscan software matching by up to 37\u00d7. This work demonstrates FPGA-centric regex matching as a scalable, high-throughput solution for modern DPI systems.<\/jats:p>","DOI":"10.1145\/3774651","type":"journal-article","created":{"date-parts":[[2025,11,11]],"date-time":"2025-11-11T14:46:19Z","timestamp":1762872379000},"page":"1-32","update-policy":"https:\/\/doi.org\/10.1145\/crossmark-policy","source":"Crossref","is-referenced-by-count":0,"title":["On-Demand Regular Expression Matching on FPGAs for Efficient Deep Packet Inspection"],"prefix":"10.1145","volume":"19","author":[{"ORCID":"https:\/\/orcid.org\/0009-0002-1321-7172","authenticated-orcid":false,"given":"Weihai","family":"Xu","sequence":"first","affiliation":[{"name":"School of Cyber Science and Engineering, Southeast University, Nanjing, China and Purple Mountain Laboratories, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0008-6602-9814","authenticated-orcid":false,"given":"Jin","family":"Zhang","sequence":"additional","affiliation":[{"name":"Purple Mountain Laboratories, Nanjing, China and Southeast University, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-3101-9765","authenticated-orcid":false,"given":"Zheng","family":"Zhou","sequence":"additional","affiliation":[{"name":"School of Cyber Science and Engineering, Southeast University, Nanjing, China and Purple Mountain Laboratories, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0002-1178-6523","authenticated-orcid":false,"given":"Hang","family":"Yang","sequence":"additional","affiliation":[{"name":"School of Cyber Science and Engineering, Southeast University, Nanjing, China and Purple Mountain Laboratories, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0007-1360-7468","authenticated-orcid":false,"given":"Shifeng","family":"Huang","sequence":"additional","affiliation":[{"name":"Purple Mountain Laboratories, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0000-8920-3442","authenticated-orcid":false,"given":"Yin","family":"Tang","sequence":"additional","affiliation":[{"name":"Purple Mountain Laboratories, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0009-2253-8008","authenticated-orcid":false,"given":"Yiming","family":"Jiang","sequence":"additional","affiliation":[{"name":"National Digital Switching System Engineering and Technological Research Center, Zhengzhou, China"}],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0009-0006-8269-2662","authenticated-orcid":false,"given":"Jiangxing","family":"Wu","sequence":"additional","affiliation":[{"name":"Purple Mountain Laboratories, Nanjing, China and Southeast University, Nanjing, China"}],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"320","published-online":{"date-parts":[[2025,12,22]]},"reference":[{"key":"e_1_3_2_2_2","doi-asserted-by":"publisher","DOI":"10.1145\/2678373.2665678"},{"key":"e_1_3_2_3_2","doi-asserted-by":"publisher","DOI":"10.1145\/1544012.1544037"},{"key":"e_1_3_2_4_2","doi-asserted-by":"publisher","DOI":"10.1109\/FPT.2006.270302"},{"key":"e_1_3_2_5_2","unstructured":"Bro. 2025. Bro IDS. Retrieved from http:\/\/www.bro.org\/"},{"key":"e_1_3_2_6_2","doi-asserted-by":"publisher","DOI":"10.1145\/3649329.3657378"},{"key":"e_1_3_2_7_2","doi-asserted-by":"publisher","DOI":"10.1145\/3470496.3533043"},{"key":"e_1_3_2_8_2","unstructured":"Cisco. 2025. Cisco IOS IPS Deployment Guide. Retrieved from http:\/\/www.cisco.com\/"},{"key":"e_1_3_2_9_2","doi-asserted-by":"publisher","DOI":"10.1109\/TETC.2022.3157948"},{"key":"e_1_3_2_10_2","doi-asserted-by":"publisher","DOI":"10.1145\/75247.75248"},{"key":"e_1_3_2_11_2","doi-asserted-by":"publisher","DOI":"10.1109\/TPDS.2014.8"},{"key":"e_1_3_2_12_2","doi-asserted-by":"publisher","DOI":"10.1145\/2830772.2830809"},{"key":"e_1_3_2_13_2","first-page":"51","volume-title":"15th USENIX Symposium on Networked Systems Design and Implementation (NSDI \u201918)","author":"Firestone Daniel","year":"2018","unstructured":"Daniel Firestone, Andrew Putnam, and Sambhrama Mundkur. 2018. Azure accelerated networking: SmartNICs in the public cloud. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI \u201918). USENIX Association, 51\u201366. Retrieved from https:\/\/www.usenix.org\/conference\/nsdi18\/presentation\/firestone"},{"key":"e_1_3_2_14_2","doi-asserted-by":"publisher","DOI":"10.1145\/322326.322327"},{"key":"e_1_3_2_15_2","doi-asserted-by":"publisher","DOI":"10.1070\/RM1961v016n05ABEH004112"},{"key":"e_1_3_2_16_2","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2016.7783747"},{"key":"e_1_3_2_17_2","unstructured":"Google re2. 2020. Google re2. Retrieved from https:\/\/github.com\/google\/re2"},{"key":"e_1_3_2_18_2","doi-asserted-by":"publisher","DOI":"10.1145\/2620728.2620749"},{"key":"e_1_3_2_19_2","doi-asserted-by":"publisher","DOI":"10.1587\/transinf.e95.d.1847"},{"key":"e_1_3_2_20_2","doi-asserted-by":"publisher","DOI":"10.1109\/FPT.2010.5681536"},{"key":"e_1_3_2_21_2","doi-asserted-by":"publisher","DOI":"10.1109\/RECONFIG.2017.8279779"},{"key":"e_1_3_2_22_2","doi-asserted-by":"publisher","DOI":"10.1145\/3582016.3582067"},{"key":"e_1_3_2_23_2","doi-asserted-by":"publisher","DOI":"10.1145\/3586044"},{"key":"e_1_3_2_24_2","doi-asserted-by":"publisher","DOI":"10.1007\/BF01553887"},{"key":"e_1_3_2_25_2","doi-asserted-by":"publisher","DOI":"10.1109\/TVLSI.2007.909801"},{"key":"e_1_3_2_26_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICC.2009.5198833"},{"key":"e_1_3_2_27_2","doi-asserted-by":"publisher","DOI":"10.1145\/3632934"},{"key":"e_1_3_2_28_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.jnca.2022.103507"},{"key":"e_1_3_2_29_2","doi-asserted-by":"publisher","DOI":"10.1145\/3485832.3485878"},{"key":"e_1_3_2_30_2","doi-asserted-by":"publisher","DOI":"10.1145\/3476982"},{"key":"e_1_3_2_31_2","unstructured":"pigasus. 2025. Pigasus-Code. Retrieved from https:\/\/github.com\/crossroadsfpga\/pigasus"},{"key":"e_1_3_2_32_2","doi-asserted-by":"publisher","DOI":"10.1145\/3472456.3473512"},{"key":"e_1_3_2_33_2","doi-asserted-by":"publisher","DOI":"10.1109\/FCCM48280.2020.00027"},{"key":"e_1_3_2_34_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.matpr.2021.04.028"},{"key":"e_1_3_2_35_2","doi-asserted-by":"publisher","DOI":"10.1287\/opre.14.4.670"},{"key":"e_1_3_2_36_2","doi-asserted-by":"publisher","DOI":"10.1145\/3341302.3342090"},{"key":"e_1_3_2_37_2","doi-asserted-by":"publisher","DOI":"10.5555\/1058426.1058885"},{"key":"e_1_3_2_38_2","doi-asserted-by":"publisher","DOI":"10.1145\/2934872.2934899"},{"key":"e_1_3_2_39_2","unstructured":"Snort. 2025. Snort. Retrieved from http:\/\/www.snort.org\/"},{"key":"e_1_3_2_40_2","doi-asserted-by":"publisher","DOI":"10.1145\/3696443.3708916"},{"key":"e_1_3_2_41_2","unstructured":"stratosphereips. 2025. stratosphereips. Retrieved from https:\/\/www.stratosphereips.org\/"},{"key":"e_1_3_2_42_2","unstructured":"Suricata. 2025. Suricata. Retrieved from http:\/\/www.snort.org\/"},{"key":"e_1_3_2_43_2","doi-asserted-by":"publisher","DOI":"10.1016\/j.procs.2014.05.336"},{"key":"e_1_3_2_44_2","doi-asserted-by":"publisher","DOI":"10.1145\/3428286"},{"key":"e_1_3_2_45_2","doi-asserted-by":"publisher","DOI":"10.1109\/MICRO.2012.49"},{"key":"e_1_3_2_46_2","doi-asserted-by":"publisher","DOI":"10.1109\/IISWC.2016.7581271"},{"key":"e_1_3_2_47_2","first-page":"631","volume-title":"16th USENIX Symposium on Networked Systems Design and Implementation (NSDI 19)","author":"Wang Xiang","year":"2019","unstructured":"Xiang Wang, Yang Hong, Harry Chang, KyoungSoo Park, Geoff Langdale, Jiayu Hu, and Heqing Zhu. 2019. Hyperscan: A fast multi-pattern regex matcher for modern CPUs. In 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI 19). USENIX Association, 631\u2013648. Retrieved from https:\/\/www.usenix.org\/conference\/nsdi19\/presentation\/wang-xiang"},{"key":"e_1_3_2_48_2","first-page":"967","volume-title":"2022 USENIX Annual Technical Conference (USENIX ATC 22)","author":"Wang Zeke","year":"2022","unstructured":"Zeke Wang, Hongjing Huang, Jie Zhang, Fei Wu, and Gustavo Alonso. 2022. FpgaNIC: An FPGA-based versatile 100Gb SmartNIC for GPUs. In 2022 USENIX Annual Technical Conference (USENIX ATC 22). USENIX Association, Carlsbad, CA, 967\u2013986. Retrieved from https:\/\/www.usenix.org\/conference\/atc22\/presentation\/wang-zeke"},{"key":"e_1_3_2_49_2","doi-asserted-by":"publisher","DOI":"10.1145\/3620665.3640412"},{"key":"e_1_3_2_50_2","doi-asserted-by":"publisher","DOI":"10.23919\/DATE51398.2021.9474249"},{"key":"e_1_3_2_51_2","first-page":"651","volume-title":"19th USENIX Symposium on Networked Systems Design and Implementation (NSDI \u201922)","author":"Xing Jiarong","year":"2022","unstructured":"Jiarong Xing, Kuo-Feng Hsu, Matty Kadosh, Alan Lo, Yonatan Piasetzky, Arvind Krishnamurthy, and Ang Chen. 2022. Runtime programmable switches. In 19th USENIX Symposium on Networked Systems Design and Implementation (NSDI \u201922), 651\u2013665."},{"key":"e_1_3_2_52_2","doi-asserted-by":"publisher","DOI":"10.1109\/COMST.2016.2566669"},{"key":"e_1_3_2_53_2","doi-asserted-by":"publisher","DOI":"10.1109\/ICFPT59805.2023.00029"},{"key":"e_1_3_2_54_2","doi-asserted-by":"publisher","DOI":"10.1109\/FPL57034.2022.00055"},{"key":"e_1_3_2_55_2","doi-asserted-by":"publisher","DOI":"10.1145\/3651890.3672270"},{"key":"e_1_3_2_56_2","first-page":"1","volume-title":"14th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201920)","author":"Zhao Zhipeng","year":"2020","unstructured":"Zhipeng Zhao, Hugo Sadok, Nirav Atre, James C. Hoe, Vyas Sekar, and Justine Sherry. 2020. Achieving 100gbps intrusion prevention on a single server. In 14th USENIX Symposium on Operating Systems Design and Implementation (OSDI \u201920). USENIX Association, 1\u201311."},{"key":"e_1_3_2_57_2","doi-asserted-by":"publisher","DOI":"10.1093\/comjnl\/bxac138"}],"container-title":["ACM Transactions on Reconfigurable Technology and Systems"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/dl.acm.org\/doi\/pdf\/10.1145\/3774651","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2025,12,24]],"date-time":"2025-12-24T06:20:47Z","timestamp":1766557247000},"score":1,"resource":{"primary":{"URL":"https:\/\/dl.acm.org\/doi\/10.1145\/3774651"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2025,12,22]]},"references-count":56,"journal-issue":{"issue":"1","published-print":{"date-parts":[[2026,3,31]]}},"alternative-id":["10.1145\/3774651"],"URL":"https:\/\/doi.org\/10.1145\/3774651","relation":{},"ISSN":["1936-7406","1936-7414"],"issn-type":[{"type":"print","value":"1936-7406"},{"type":"electronic","value":"1936-7414"}],"subject":[],"published":{"date-parts":[[2025,12,22]]},"assertion":[{"value":"2025-01-24","order":0,"name":"received","label":"Received","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-10-19","order":2,"name":"accepted","label":"Accepted","group":{"name":"publication_history","label":"Publication History"}},{"value":"2025-12-22","order":3,"name":"published","label":"Published","group":{"name":"publication_history","label":"Publication History"}}]}}