SlowGuess/NeurIPS_2023_OCR huggingface dataset:
Dataset. Although there are several existing datasets collecting the real traces, e.g., CAIDA (Caida, 2019) and MAWI (Kenjiro Cho, 2000), most of them do not contain the payload of network traffic to protect user privacy, which makes them unsuitable for evaluating Metis. To evaluate Metis in realistic and diverse network scenarios, we collect packet-level traces at gateways of a large data center, which belongs to one of the largest public cloud providers. The data center serves tens of Tbps traffic for customers with diverse cloud access requirements. The collected traces are labeled by the advanced attack detection system and application identification system deployed in the data center. We use 10 minutes of traffic traces collected in different time periods of three weeks. We construct 11 categories of the dataset based on Snort (Roesch, 1999) rules, including "chat", "ftp", "games", "malware", "misc", "netbios", "p2p", "policy", "telnet", "tftp", and "client". Each category of the dataset consists of a set of network rules and 200,000 labeled data. We label the data as 0 if it does not match any of the network rules in this category. Otherwise, we label it as 1. As such, our task is a binary classification task. We split each category of the dataset into the training set, test set, and validation set with a ratio of  $7:2:1$ .
Baselines. For DFA2BRNN, we compare it with LSTM (Hochreiter & Schmidhuber, 1997), a 4-layer CNN (Kim, 2014) and a 4-layer DAN (Iyyer & Manjunatha, 2015) which are widely applied in text classification. For BRNN2PSRF, we compare it with a CART decision tree (DT) (Breiman et al., 2017), a random forest (RF) (Breiman, 2001), a hard DT, a hard RF, and a soft random forest (SRF). We use BRNN to tag unlabeled data and combine them with the ground truth to train models which
are called Hard DT and Hard RF. Compared to PSRF, SRF does not include the pooling operation to verify the pooling effect.
Implementation. We conduct our experiments on a server with two 16-core CPUs (Intel(R) Xeon(R) Gold 5218 CPU @ 2.30GHz), 64GB DRAM memory, and six GeForce RTX 2080 SUPER GPUs. For DFA2BRNN, we set the learning rate to  $10^{-4}$ , batch size to 500, and hidden state to 200 for each model. We use the cross-entropy loss as the objective function. We train each model for 200 epochs and use early stopping to avoid overfitting. For BRNN2PSRF, we set  $t$  to 7,  $\alpha$  to 0.3,  $\#$  split features to 7 and minimum samples to 15. We run each experiment under three different random seeds and report the standard deviation. We implement our PSRF hardware prototype based on a Tofino switch using the P4 language. The P4 code is compiled by Barefoot P4 Studio Software Development Environment(SDE). We use the traffic generator KEYSIGHT XGS12-SDL to generate high-speed traffic. We enable the Intel DPDK library on the server for high-performance traffic replay.
Ethical considerations. All data analysis had been approved by our cooperation units. We did not investigate human behavior, surface or any individual flows or IP addresses, nor store any traffic or individual records to disk. To protect user privacy, all packets in the collected traces are anonymized. We restricted all analysis to network statistics directly output by Metis. We only collected the mirrored traffic to avoid impacting network users.
Table 1: DFA2BRNN main results on classification accuracy. Note that # TD is the number of training data for simplicity.
Method	# TD	chat	ftp	games	malware	misc	netbios	p2p	policy	telnet	tftp	client	average
RE	-	85.3	83.2	91.7	87.1	81.8	84.9	86.6	87.2	84.1	84.6	83.1	85.4
LSTM	0%	55.6±0.5	52.0±0.4	49.6±0.5	57.0±0.9	50.3±0.4	50.0±0.3	49.8±0.5	52.5±1.1	53.1±1.3	49.8±0.4	54.9±2.9	52.3
1%	88.3±0.4	51.6±13	88.1±0.3	92.0±0.2	90.5±0.5	89.8±0.3	84.0±0.7	86.2±0.4	90.2±0.3	89.0±0.5	82.8±0.5	84.8
10%	92.9±0.3	96.4±0.3	91.3±0.4	96.6±0.2	96.6±0.3	95.0±0.3	86.0±0.5	91.4±0.2	98.4±0.2	98.3±0.3	88.8±0.5	93.8
100%	98.8±0.2	98.6±0.2	98.7±0.3	98.6±0.2	98.7±0.3	98.5±0.4	97.9±0.1	98.3±0.2	98.7±0.3	98.7±0.2	97.5±0.2	98.5
CNN	0%	50.0±0.6	52.1±0.8	49.7±0.6	49.7±0.5	49.9±0.5	49.9±0.6	49.9±0.4	50.2±0.7	53.2±1.3	50.1±0.4	49.9±0.6	50.4
1%	88.7±0.5	96.6±0.3	92.8±0.3	95.9±0.2	94.7±0.1	80.5±0.7	91.8±0.5	92.7±0.4	98.7±0.2	95.6±0.5	94.1±0.5	93.0
10%	96.1±0.3	96.1±0.4	95.6±0.2	95.7±0.2	96.2±0.5	94.3±0.3	93.7±0.4	95.1±0.4	96.8±0.2	96.1±0.1	95.0±0.3	95.5
100%	98.9±0.1	99.0±0.1	98.9±0.2	98.9±0.2	98.9±0.3	96.9±0.3	98.8±0.2	98.8±0.2	99.0±0.1	98.9±0.1	98.8±0.3	98.7
DAN	0%	50.4±0.7	49.8±0.6	48.7±2.3	49.6±0.9	50.9±1.1	50.2±0.5	51.0±0.3	49.9±0.7	51.2±1.8	50.5±0.6	50.1±0.4	50.2
1%	74.0±1.6	54.0±2.9	53.1±3.3	67.0±1.4	82.3±0.8	78.8±1.0	53.4±5.2	72.7±2.6	53.1±1.9	71.3±3.1	52.8±4.3	64.8
10%	72.7±6.6	76.5±5.7	53.3±11	72.2±2.5	87.0±0.9	80.2±1.2	80.3±0.9	80.4±1.2	88.1±0.6	77.7±2.4	64.0±6.7	75.7
100%	88.2±0.6	79.6±3.3	83.7±0.7	81.9±0.6	86.3±0.5	81.6±0.9	80.7±1.2	84.5±0.9	90.6±0.3	78.9±3.8	73.7±4.0	82.7
BRNN	0%	85.3±0.3	83.2±0.2	91.7±0.2	87.1±0.3	81.8±0.3	84.9±0.4	86.6±0.2	87.2±0.2	84.1±0.3	84.6±0.5	83.1±0.2	85.4
1%	95.0±0.2	97.7±0.1	96.8±0.2	95.3±0.3	94.2±0.2	94.5±0.3	91.1±0.5	92.4±0.2	98.8±0.1	90.7±0.1	93.4±0.2	94.6
10%	98.7±0.1	99.4±0.1	99.6±0.2	99.0±0.1	99.1±0.2	98.1±0.1	97.4±0.3	98.7±0.1	99.7±0.0	98.9±0.2	98.6±0.1	98.8
100%	99.8±0.1	99.9±0.1	99.9±0.1	99.7±0.2	99.8±0.1	99.8±0.0	99.8±0.1	99.8±0.0	99.9±0.0	99.8±0.1	99.9±0.1	99.8
As shown in Table 1, for DFA2RNN, we compare BRNN with baseline models trained with  $0\%$ ,  $1\%$ ,  $10\%$ ,  $100\%$  training data, and the RE-based system. BRNN achieves the same accuracy of  $83.1\% \sim 91.7\%$  as REs in zero-shot scenarios (i.e.,  $0\%$  training data). On the contrary, other baselines literally perform random guesses, i.e., only having around  $50\%$  accuracies, in zero-shot scenarios. In few-shot scenarios (i.e.,  $1\%$  and  $10\%$  training data), BRNN also demonstrates superior accuracy over baselines. With  $1\%$  and  $10\%$  training data, BRNN is already able to further boost the accuracies over different categories to  $90.7\% \sim 98.8\%$  and  $98.1\% \sim 99.7\%$  respectively. Among the baselines, DAN performs the worst, only obtaining accuracies of  $52.8\% \sim 82.3\%$  and  $53.3\% \sim 88.1\%$  over different categories, when given  $1\%$  and  $10\%$  training data, respectively. The best-performing one among the baselines, i.e., CNN, also underperforms our BRNN in most categories, especially with  $10\%$  training data. For full training, LSTM and CNN achieve  $98\%$  accuracy. DAN only achieves  $80\%$  accuracy. BRNN achieves  $99.8\%$  accuracy over all categories. In a word, BRNN achieves competitive accuracy both in data-scarce and data-rich scenarios, while the baseline models suffer from poor accuracy in data-scarce scenarios. This lays a solid foundation for the following SSKD to train better student models.
For BRNN2PSRF, we compare PSRF with baselines trained with  $0\%$ ,  $1\%$ ,  $10\%$ ,  $100\%$  training data. The results are shown in Table 2. Note that DT and RF can not be trained using SSKD when it comes to zero-shot scenarios. In zero-shot scenarios, SRF degrades to Hard RF due to the lack of soft labels. PSRF improves accuracy compared with SRF thanks to the pooling operation. In few-shot scenarios, semi-supervised based models such as Hard DT, Hard RF, SRF, and PSRF demonstrate improved
Table 2: BRNN2PSRF main results on classification accuracy.
Method	# TD	chat	ftp	games	malware	misc	netbios	p2p	policy	telnet	tftp	client	average
DT	1%	70.3±1.8	75.0±0.8	75.7±1.0	74.0±1.1	73.8±0.7	77.5±0.8	72.7±0.8	64.5±1.5	74.3±0.7	73.7±0.9	67.9±3.0	72.7
10%	81.1±0.7	84.3±0.5	83.3±0.6	81.5±0.7	81.5±0.8	83.7±0.5	82.0±0.7	75.5±1.3	82.8±1.7	80.1±0.8	77.3±0.6	81.2
100%	88.6±0.6	91.7±0.3	89.4±0.3	90.3±0.4	89.3±0.8	90.0±0.7	88.7±0.6	84.8±0.5	91.4±0.3	88.3±0.7	86.5±0.6	89.0
RF	1%	77.3±1.0	83.0±0.9	81.8±0.5	78.3±0.8	79.0±1.6	82.0±0.7	78.6±1.4	70.3±0.8	80.0±0.5	79.4±0.7	72.4±0.9	78.4
10%	86.8±0.5	89.8±0.6	86.8±0.4	87.7±0.4	87.0±0.7	87.5±0.5	87.2±0.6	81.3±0.4	88.2±0.7	86.3±0.6	82.2±0.8	86.4
100%	88.9±0.4	91.1±0.4	88.0±0.6	90.0±0.6	89.4±0.7	89.0±0.5	89.0±0.4	84.4±0.4	90.7±0.5	88.0±0.4	85.4±0.5	88.5
Hard DT	0%	78.8±0.7	77.1±0.9	84.7±0.6	79.8±0.8	81.0±0.7	75.6±1.0	81.2±0.6	79.0±1.3	73.9±1.0	79.4±0.9	78.0±0.9	79.0
1%	87.0±0.8	90.3±0.5	89.0±0.7	88.9±0.5	87.8±0.6	87.6±0.6	87.0±0.5	81.7±0.8	90.5±0.4	85.2±0.5	83.9±0.6	87.2
10%	88.6±0.5	91.4±0.3	89.9±0.4	89.8±0.4	89.0±0.5	89.9±0.3	88.6±0.5	84.9±0.6	91.2±0.2	88.32±0.5	86.4±0.7	88.9
100%	88.1±0.6	91.7±0.3	89.6±0.5	90.6±0.2	89.3±0.4	89.9±0.4	89.0±0.5	85.0±0.6	91.7±0.4	88.6±0.7	86.5±0.6	89.1
Hard RF	0%	78.8±0.9	77.3±1.6	84.9±1.1	80.1±0.8	81.3±0.5	76.3±0.9	81.5±1.0	79.8±0.8	74.6±1.3	79.5±0.9	78.2±0.8	79.3
1%	86.7±0.6	90.0±0.4	86.9±0.5	88.6±0.5	87.8±0.7	86.4±0.6	87.2±0.6	81.7±0.8	89.2±0.4	84.8±0.5	82.5±0.5	86.5
10%	88.1±0.7	90.6±0.3	87.3±0.6	89.2±0.5	88.9±0.7	87.8±0.6	88.2±0.6	82.7±0.4	89.5±0.5	87.3±0.7	83.9±0.6	87.6
100%	88.0±0.5	90.8±0.2	87.4±0.6	88.5±0.7	88.8±0.8	88.5±0.6	88.3±0.5	83.0±0.7	89.7±0.4	87.3±0.6	83.8±0.7	87.7
SRF	0%	78.8±0.8	77.3±0.7	84.9±0.9	80.1±0.6	81.3±0.6	76.3±0.5	81.5±0.6	79.8±0.7	74.6±0.7	79.5±0.8	78.2±0.6	79.3
1%	92.2±0.5	94.2±0.4	93.1±0.6	94.2±0.6	94.9±0.5	93.7±0.4	94.5±0.5	89.3±0.6	94.4±0.6	90.8±0.4	90.5±0.4	92.9
10%	94.3±0.4	94.3±0.5	94.0±0.4	95.3±0.3	96.3±0.4	94.6±0.4	95.5±0.4	92.5±0.6	95.1±0.5	94.8±0.5	92.5±0.3	94.5
100%	94.9±0.4	94.8±0.4	94.2±0.5	95.7±0.3	96.4±0.2	94.7±0.4	96.0±0.3	92.7±0.4	95.1±0.2	95.2±0.2	92.6±0.3	94.7
PSRF	0%	84.0±0.5	82.6±0.4	91.4±0.4	86.7±0.4	81.3±0.3	84.8±0.5	86.2±0.6	87.0±0.4	83.8±0.4	84.3±0.5	84.1±0.6	85.1
1%	95.6±0.3	96.4±0.3	96.6±0.4	94.8±0.2	96.4±0.2	94.9±0.3	97.0±0.1	93.7±0.2	94.2±0.3	95.5±0.3	92.6±0.2	95.2
10%	97.7±0.2	98.9±0.1	99.2±0.0	97.6±0.1	98.4±0.1	97.0±0.2	98.8±0.2	95.4±0.3	96.5±0.2	97.2±0.2	96.4±0.1	97.5
100%	98.6±0.1	99.3±0.1	99.5±0.0	98.1±0.2	99.0±0.3	97.3±0.2	99.1±0.1	96.8±0.2	98.4±0.3	98.7±0.3	98.3±015	98.5
accuracy compared to models trained on original labeled data, like DT and RF, highlighting the significance of semi-supervised learning. Additionally, attributing to the pooling operation and soft labels introduced by SSKD, PSRF demonstrates the most exceptional accuracy, with an improvement of  $9\% \sim 25\%$  over other baselines. Furthermore, when compared to RE-based systems, PSRF shows an improvement of around  $8\% \sim 17\%$  in accuracy. Even when provided with full training data, PSRF maintains its superiority in terms of accuracy compared to other baselines. Our system can easily identify normal traffic, which comprises over  $99\%$  of total traffic because it does not match RE patterns. By analyzing the traffic, the PDF and CDF of matched abnormal packet segment lengths are illustrated in Figure 5 in Appendix B. Although our traffic is collected from the real world and sampled over different time periods, we find that the RE patterns in the traffic are relatively fixed, and are only a subset of the Snort. This is why the accuracy of the baseline scheme increases rapidly from  $0\%$  to  $1\%$  # training data, but not so much from  $1\%$  to  $100\%$  # training data. For abnormal traffic, PSRF can effectively detect abnormal traffic containing short RE patterns (shorter than 50), which takes up over  $95\%$  of abnormal traffic as shown in Figure 5 in Appendix B. Though PSRF may struggle with long RE patterns due to both its inherent design logic and hardware limitation (e.g., the input length of PSRF cannot exceed 128 bytes, as restricted by the maximum width supported by the switch matching table), such patterns rarely appear and thus has very limited impact: PSRF can still achieve an accuracy higher than  $99\%$ . We also show average F1-Scores of DFA2BRNN and BRNN2PSRF with normal/abnormal traffic ratios of  $99\% / 1\%$  and  $50\% / 50\%$  in Appendix C. Besides, we conduct experiments on network intrusion detection using UNB ISCX IDS 2012 dataset (Moustafa & Slay, 2015), and the results are shown in Appendix D.
4.3 Sensitivity Analysis
Effect of  $s$  and  $w$ . In Figure 2(a) and 2(b), the accuracy decreases when  $s$  increases, while the accuracy is stable when  $w$  exceeds 2. The increase of  $s$  significantly reduces the number of features and ignores partial context information, which impairs the accuracy. The change of  $w$  is related to the contextual perspective of the feature and slightly affects accuracy. Note that when  $w = 1$ , the pooling operation does not function effectively, resulting in a significant drop in accuracy. This highlights the importance and effectiveness of the pooling operation. Therefore, we set  $s$  to 1 and  $w$  to 3.
Effect of # split features and minimum samples. As shown in Figure 2(c), when minimum samples rise, the accuracy of PSRF decreases slightly. However, decreasing the minimum samples will increase the depth of the tree, which will affect the speed of inference and may cause overfitting. Therefore, we set the minimum samples to 15. As shown in 2(d), we find that the accuracy grows slightly and then even decreases as # split features grows. The decrease results from overfitting. To improve the training speed and accuracy, we set # split features to 8.
(a) Effect of  $s$  on accuracy
(b) Effect of  $w$  on accuracy
(c) Effect of min samples
(d) Effect of # split features
(e) Effect of t on accuracy
(f) Effect of t on # entries
Figure 2: Sensitive analysis on PSRF.
Effect of  $t$ . As shown in Figure 2(e) and 2(f), with the increase of  $t$ , the accuracy and the # entries of PSRF also increase. There exists a tradeoff between accuracy and efficiency. Therefore, in our implementation, we set  $t$  to 9, which can maintain both high accuracy and high efficiency.
Effect of  $\alpha$ . We conduct experiments on  $\alpha$  using PSRF and the results are shown in Figure 3. In the zero-shot scenario, the soft labels are the same as the hard labels, thus the accuracy remains the same. For other scenarios, we find that PSRF performs well when  $\alpha$  is in the range [0.2, 0.4]. This is because PSRF considers both information inherited in the BRNN and the original label. When  $\alpha$  is 0, PSRF only considers the logits of the BRNN and when  $\alpha$  is 1, PSRF mainly considers the original label while ignoring the information in the logits of the BRNN. We found the PSRF performs best when  $\alpha$  is around 0.3, so we set  $\alpha$  to 0.3 in our experiments.
4.4 Experiment on Network Devices
We first conduct experiments on # entries consumed by different student models on programmable switches (PS). As shown in Table 3, # entries in PSRF are less than that in SRF and RF, indicating the lightweightness of the PSRF. Note that columns represent # TD. Although DT achieves fewer # entries compared with SRF, it suffers from poor accuracy as illustrated in Table 2. Therefore, PSRF is the best choice for the student model in terms of accuracy and resource efficiency.
Method	0%	1%	10%	100%
DT	-	410	407	411
RF	-	2145	2162	2129
SRF	1973	1834	1756	1694
PSRF	1640	1513	1538	1474
Table 3: # entries consumed by different student models on PS.
Since network devices have limited computation and memory resources, it is difficult to deploy RE-based systems on them directly. To demonstrate the superiority of Metis for processing network traffic in practical deployment, we deploy PSRF on PS and compared it with common RE-based systems deployed on CPUs. We use multi-core parallel processing to boost the throughput of RE-based systems. We compare the number of (processed) packets per second (PPS) achieved by PSRF on PS and by RE-based systems (with 1, 2, 4, 8, 16, and 32 cores) in Figure 4 to show the difference in their throughputs. It is obvious that PSRF deployed on PS achieves a significantly higher throughput, which is 74 times that of the RE-based system with 32 cores.
Figure 3: Effect of  $\alpha$  on accuracy.
Figure 4: Experiment on Programmable Switches.
5 Disscussion
Limitations. 1) Due to the limitation of hardware resources (the maximum width supported by the switch matching table is limited, e.g., 128 bytes), the input length of PSRF cannot exceed 128 bytes. In future work, we will consider using feature compression (such as using an autoencoder) as an attempt to support long REs. 2) Though we introduce the pooling operation into our device-friendly model PSRF, its ability to model sequence features still has room for improvement (compared to BRNN, PSRF after SSKD drops  $2\% -3\%$  in accuracy). In future work, we will try to use other student models, such as binary neural networks, to improve the accuracy. 3) We only test single-phrase RE matching. In practice, some rules may be composed of multi-phrase REs. We can implement multi-phase REs by adding aggregation operations on the results of single-phrase RE matching. This will be part of our future work.
Societal impact on AI community. In the AI community, though many amazing NN works have been proposed, NNs can only be deployed on powerful devices (CPU, GPU), which undoubtedly limits the scope of their practical applications. In many domains, there exist a large number of less-powerful devices, which cannot take advantage of the excellent performance of NNs, including switches, network cards, intelligent gateways, and IoT devices. In mainstream large-scale data centers,  $80\%$  of the switches have been replaced with programmable switches. However, NNs contain complex floating-point and nonlinear operations, making it impossible to directly deploy them on programmable switches. Therefore, our work endeavors to bring NNs into a wider community (e.g., network community, and security community), so that more devices can take advantage of NN's superior performance to improve the quantity of service (QoS), and facilitate people's daily lives.
In this paper, we propose Metis, an intelligent and general framework to understand and enhance regular expressions in-network by utilizing learning models. We utilize byte-level tokenization to extract RE from network rules and process bit streams of network traffic. Then we design SSKD to transform the BRNNs into PSRFs that can be deployed on network devices to process online network traffic in line-speed. We collect network traffic on a large data center for the evaluation of Metis. Experimental results show that Metis is more accurate than original REs and other baselines, while also achieving superior throughput when deployed on network devices. We contribute Metis source code and datasets to the AI community to stimulate the following research.
We would like to thank the anonymous NeurIPS reviewers for their thorough comments and feedback that helped improve the paper. This work is supported by the National Key Research and Development Program of China under grant No. 2022YFB3105000, the Major Key Project of PCL under grant No. PCL2023AS5-1, and the Shenzhen Key Lab of Software Defined Networking under grant No. ZDSYS20140509172959989.
Barefoot Networks. Tofino switch, 2021. URL https://www.barefootnetworks.com/products/brief-tofino.
Barradas, D. and Santos, N. Flowlens: Enabling efficient flow classification for ml-based network security applications. In 28th Annual Network and Distributed System Security Symposium, NDSS 2021, 2021.
Baum, L. E. and Petrie, T. Statistical Inference for Probabilistic Functions of Finite State Markov Chains. The Annals of Mathematical Statistics, 37(6):1554 - 1563, 1966.
Breiman, L. Random forests. Machine learning, 45(1):5-32, 2001.
Breiman, L., Friedman, J. H., Olshen, R. A., and Stone, C. J. Classification and regression trees. Routledge, 2017.
Caida. Anonymized 2019 internet traces. http://www.caida.org/data/overview/, 2019.
Chen, D. and Mei, J.-P. Cross-layer distillation with semantic calibration. In Proceedings of the AAAI Conference on Artificial Intelligence, volume 35, pp. 7028-7036, 2021.
Chen, G., Choi, W., Yu, X., Han, T., and Chandraker, M. Learning efficient object detection models with knowledge distillation. Advances in neural information processing systems, 30, 2017.
Cisco. High capacity 400g data center networking, 2021. URL https://www.cisco.com/c/en/us/solutions/data-center/high-capacity-400g-data-center-networking/index.html.
Foundation, O. I. S. Suricata: Open source ids, 2022. URL https://suricata-ids.org/.
Frosst, N. and Hinton, G. E. Distilling a neural network into a soft decision tree. In Proceedings of the First International Workshop on Comprehensibility and Explanation in AI and ML 2017 co-located with 16th International Conference of the Italian Association for Artificial Intelligence (AI*IA 2017), volume 2071, 2017.
Fu, C. and Li, Q. Realtime robust malicious traffic detection via frequency domain analysis. In CCS '21: 2021 ACM SIGSAC Conference on Computer and Communications Security, pp. 3431-3446. ACM, 2021.
Fu, C., Li, Q., Shen, M., and Xu, K. Realtime robust malicious traffic detection via frequency domain analysis. In CCS '21: 2021 ACM SIGSAC Conference on Computer and Communications Security, pp. 3431-3446, 2021.
Gou, J., Yu, B., Maybank, S. J., and Tao, D. Knowledge distillation: A survey. International Journal of Computer Vision, 129(6):1789-1819, 2021.
Hinton, G. E., Vinyals, O., and Dean, J. Distilling the knowledge in a neural network. CoRR, abs/1503.02531, 2015. URL http://arxiv.org/abs/1503.02531.
Hoang, N. P. and Niaki, A. A. How great is the great firewall? measuring china's DNS censorship. In Bailey, M. and Greenstadt, R. (eds.), 30th USENIX Security Symposium, USENIX Security 2021, pp. 3381-3398, 2021.
Hochreiter, S. and Schmidhuber, J. Long short-term memory. Neural Comput., 9(8):1735-1780, 1997.
Hopcroft, J. An nlogn algorithm for minimizing states in a finite automaton. In Theory of Machines and Computations, pp. 189-196. Academic Press, 1971.
Hosoya, H. and Pierce, B. C. Regular expression pattern matching for XML. In Conference Record of POPL 2001: The 28th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 67-80. ACM, 2001.
Wang, S. and Zhang, M. Making multi-string pattern matching scalable and cost-efficient with programmable switching asics. In 40th IEEE Conference on Computer Communications, INFOCOM 2021, pp. 1-10. IEEE, 2021.
Xie, G., Li, Q., Dong, Y., and Duan, G. Mousika: Enable general in-network intelligence in programmable switches by knowledge distillation. In IEEE INFOCOM 2022 - IEEE Conference on Computer Communications, pp. 1938-1947. IEEE, 2022.
Yang, M., Baban, A., Kugel, V., Libby, J., Mackie, S., Kananda, S. S. R., Wu, C.-H., and Ghobadi, M. Using trio-juniper networks' programmable chipset-for emerging in-network applications. 2022.
Yim, J., Joo, D., Bae, J., and Kim, J. A gift from knowledge distillation: Fast optimization, network minimization and transfer learning. In Proceedings of the IEEE conference on computer vision and pattern recognition, pp. 4133-4141, 2017.
Yu, L., Luo, B., Ma, J., Zhou, Z., and Liu, Q. You are what you broadcast: Identification of mobile and IoT devices from (public) wifi. In 29th USENIX Security Symposium, USENIX Security 2020, pp. 55-72, 2020.
Zeng, Y., Gu, H., Wei, W., and Guo, Y. deep-full-range: a deep learning based network encrypted traffic classification and intrusion detection framework. IEEE Access, 7:45182-45190, 2019.
Zhang, S. and He, L. Regular expression guided entity mention mining from noisy web data. In Proceedings of the 2018 Conference on Empirical Methods in Natural Language Processing, pp. 1991-2000. Association for Computational Linguistics, 2018.
A PCRE syntaxes supported in our paper