DPDK
之前我们介绍过Hyperscan在IDS/IPS解决方案Snort、Suricata中的应用。本文将介绍Hyperscan在电子邮件过滤系统Rspamd中的应用。
Rspamd简介
Rspamd(https://www.rspamd.com)是一款快速、免费、开源的电子邮件过滤系统,由主进程、扫描进程、控制器和服务进程等部分构成。

电子邮件过滤系统长期以来一直是模式匹配技术的重要用户,通常要求扫描通过邮件服务器的每个消息,对大量的正则表达式规则集进行匹配。Rspamd也不例外,每条MIME(Multipurpose Internet Mail Extensions)消息的各个部分都对应有预定义的正则规则集,Rspamd扫描消息各部分来检测是否有对应正则规则集上的匹配。原生的Rspamd使用PCRE做正则表达式匹配工作,但PCRE只能在一次扫描中对单条正则表达式进行匹配,对于大规模正则规则集需要对相同输入进行多次扫描。

Hyperscan在Rspamd中的应用
自Rspamd 1.1 release开始,将Hyperscan集成其中,用于处理正则表达式匹配任务。其关键点在于下述几个方面:
高性能
Hyperscan在单条正则表达式匹配上的表现比PCRE更加优秀。此前有专门的文章(从PCRE到Hyperscan)介绍对比测试的结果。
多模式匹配