基于 FPGA 防火墙的快速可重构包分类引擎
摘要
在通过互联网进行的数据通信中,安全性正成为最具影响力的方面之一。支持它的一种方法是在网络设备内对以太网包进行分类和过滤。包分类是路由器、防火墙和入侵检测系统等网络设备的基本任务。本文提出了一种快速且可重构的包分类引擎(Packet Classification Engine, PCE)架构。该引擎用于基于 FPGA 的防火墙。我们的 PCE 基于树算法按顺序检查包头的多维字段。该算法将整个系统简化到较低的规模,并带来更安全的系统。PCE 在系统中采用单周期处理器架构的适配版本。PCE 基于包头的源 IP 地址、目的 IP 地址、源端口、目的端口和协议字段检查以太网包。这些是在检查内容之前判断其是危险包还是正常包的基本字段。通过在架构中实现树算法,防火墙规则被重建为 24 位子规则,在检查过程中作为处理器指令读取。检查过程在每个时钟周期将一个子规则与头的输入字段进行比较。所提出的 PCE 在 Cyclone II EP2C70F896C6 上显示出 91 MHz 的时钟频率,从输入到输出生成的平均吞吐量为 13 个时钟周期。树算法的使用简化了多维包检查,并为我们提供了可重构且可扩展的系统。该架构快速、可靠且适应性强,也能很好地最大化算法的优势。尽管 PCE 具有高频率和较少的时钟数,防火墙的过滤速度还取决于其他组件,例如包 FIFO 缓冲器。需要快速可靠的 FIFO 缓冲器来支持 PCE。该 PCE 尚未配备规则更新机制。所提出的 PCE 作为基于 FPGA 的防火墙的一个组件进行了测试,使用 NIOS II 平台在 FPGA DE2 开发板上过滤以太网包。
引用
@article{arxiv.1611.06078,
title = {Fast and reconfigurable packet classification engine in FPGA-based firewall},
author = {Arief Wicaksana and Arif Sasongko},
journal= {arXiv preprint arXiv:1611.06078},
year = {2016}
}
备注
in 2011 International Conference on Electrical Engineering and Informatics (ICEEI), Jul 2011, Bandung, Indonesia