基于FPGA的防火墙系统设计
本文在Xilinx杯全国高校开放源码硬件创新大赛中获得三等奖。
1. 系统介绍
本系统由服务器软件控制平台和fpga硬件处理系统组成,其中fpga硬件处理系统是整个系统的核心部分。系统管理员通过服务器的软件控制平台可以对fpga硬件处理系统进行即时的配置,fpga硬件处理系统按照系统管理员的配置进行工作,并会在检测到异常情况或者检测到用户敏感的流量或者数据包的时候通知服务器,服务器会向管理员发送通知。管理员可以在服务器软件平台上做进一步的分析处理。
1.1 系统功能
本系统可以实现对10M/100M/1000M网络中流经该系统的各种类型的数据包进行流量统计、匹配过滤、捕获截取以及发送数据包等功能,具体如下。
流量统计:本系统能够对网络中的各类型数据包流量、各主机通信流量、通信流量与时间段的关系以及用户所关心的特定数据包类型进行流量统计。
匹配过滤:本系统能够根据管理员定义的过滤规则来对流经的数据包进行转发、捕获或者直接丢弃等处理。
流量控制:本系统能够针对流量统计模块提供的流量信息,决定相应的流量控制策略,对特定的主机进行流量控制。
捕获分析:本系统能够捕获网络中特定的数据包,进行分析,并可以发送给服务器由上层软件做进一步分析,并报告给系统管理员。
设备测试:本系统能够配置为设备测试,可以在网络中发送用户需要的数据包类型,并根据返回的数据包来测试网络中其他设备的性能。
以上是系统的基本功能,在实现以上功能的基础上还可以实现更多的扩展功能,例如修改和伪造数据包,监听可疑用户,控制网络流量,屏蔽特定的服务器等。
详细的设计文档
基于FPGA的防火墙系统设计_文档.rar
源代码
基于FPGA的防火墙系统设计_源码.part01.rar
基于FPGA的防火墙系统设计_源码.part02.rar