加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
    • Part 01●  nDPI框架简介 ●
    • Part 02●  nDPI中Hyperscan的集成 ●
    • Part 03●  内存优化 ●
    • Part 04●  结论 ●
  • 推荐器件
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

五分钟技术趣谈 | 浅析nDPI中Hyperscan的集成方案

2023/12/13
5653
阅读需 5 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

作者:李坤明,单位:中国移动智慧家庭运营中心

Hyperscan是英特尔推出的一款高性能的正则表达式匹配库,非常适用于部署在诸如DPI/IPS/IDS解决方案中。nDPI 是目前应用较为广泛的开源DPI源码库,将nDPI源码进行二次开发部署到资源受限的路由器产品中时,其核心模块耗费了大量的内存。因而本文将英特尔Hyperscan正则表达式匹配库集成到nDPI中,来显著减少其资源消耗并提升其在路由器产品中的检测性能。

Part 01●  nDPI框架简介 

图1 nDPI框架图

nDPI是由ntop负责维护的一款非常流行的开源DPI库,它同时支持Windows和Unix/Linux两种系统,支持跨平台体验[1]。如图一框架图所示,nDPI库主要由网络数据采集模块、数据预处理模块、协议检测匹配模块及特征库相关模块组成。数据采集模块从网卡实时采集数据或解析已有的pcap文件;数据预处理模块负责对网络数据进行接收、数据分组及数据整型及过滤;其中协议检测匹配模块是nDPI最核心的模块,它根据现有的协议规则特征库对整型后的报文数据进行规则匹配。匹配算法的性能及匹配过程中对内存及CPU硬件资源的消耗对整个系统至关重要。

Part 02●  nDPI中Hyperscan的集成 

 

图2 集成了hYperscan的DPI框架图

Hyperscan与nDPI的集成主要集中在以下两个方面:

字符串多模匹配

nDPI中一个重要的匹配过程是字符串的多模匹配。字符串的多模匹配可以快速过滤掉无法匹配的规则以减少需要逐条匹配的规则数,从而提升匹配的性能。nDPI中使用了Aho-Corasick算法进行多字符串的匹配,由于原生Aho-Corasick算法,需要将所有规则转化成Trie树结构,因此占用较大的内存。而Hyperscan拥有自身优化过的匹配引擎进行匹配,大量减少了匹配过程中对内存的消耗。我们用Hyperscan替代了这一算法,降低了内存消耗及CPU占用率,并且带来了显著的性能提升。

Http预处理

除了引擎的匹配算法的集成,我们在预处理器模块中也添加了Hyperscan。在Http预处理时,利用了Hyperscan搜索相关关键字来进一步加速预处理的流程。

Part 03●  内存优化 

我们选取了MT7981B芯片+OpenWrt系统作为测试平台,采用了nDPI自带的协议规则库文件进行测试,同时以真实网卡采集到数据报文作为数据输入。如图三所示,原生nDPI内存消耗较大为56MB,而采用nDPI+Hyperscan的方案下,内存消耗降低为5.7MB,内存占用仅仅为原生nDPI的十分之一。

图3 内存占用

Part 04●  结论 

经过Hyperscan集成后的nDPI在内存消耗上远远低于原始nDPI。现有嵌入式网络设备产品中内存资源十分紧张,集成Hyperscan后的nDPI组件对内存资源的优化,有利于DPI及其相关产品在端侧嵌入式网络产品中的部署。

参考文献

[1] 卞德康.基于深度包检测的应用层协议识别研究[D].合肥:安徽工业大学.2017.

推荐器件

更多器件
器件型号 数量 器件厂商 器件描述 数据手册 ECAD模型 风险等级 参考价格 更多信息
TJA1021T/10/C,118 1 NXP Semiconductors TJA1021 - LIN 2.1/SAE J2602 transceiver SOIC 8-Pin

ECAD模型

下载ECAD模型
$1.44 查看
KSZ9567RTXI-TR 1 Microchip Technology Inc IC ETHERNET SWITCH 7PORT 128TQFP

ECAD模型

下载ECAD模型
$13.11 查看
KSZ9031RNXCA 1 Microchip Technology Inc DATACOM, ETHERNET TRANSCEIVER

ECAD模型

下载ECAD模型
$5.5 查看
中国移动

中国移动

中国移动有限公司(「本公司」,包括子公司合称为「本集团」)于1997年9月3日在香港成立,本集团在中国内地所有三十一个省、自治区、直辖市以及香港特别行政区提供通信和信息服务,业务主要涵盖个人、家庭、政企和新兴市场的语音、数据、宽带、专线、IDC、云计算、物联网等,是中国内地最大的通信和信息服务供应商,亦是全球网络和客户规模最大、盈利能力领先、市值排名位居前列的世界级通信和信息运营商。

中国移动有限公司(「本公司」,包括子公司合称为「本集团」)于1997年9月3日在香港成立,本集团在中国内地所有三十一个省、自治区、直辖市以及香港特别行政区提供通信和信息服务,业务主要涵盖个人、家庭、政企和新兴市场的语音、数据、宽带、专线、IDC、云计算、物联网等,是中国内地最大的通信和信息服务供应商,亦是全球网络和客户规模最大、盈利能力领先、市值排名位居前列的世界级通信和信息运营商。收起

查看更多

相关推荐

电子产业图谱

移动Labs是中国移动的社交化新媒体平台,是面向外部行业及产业链合作伙伴的信息发布、业务发展和产业推进门户。