单片机 > 单片机程序设计 > 详情

基于ARM处理器的嵌入式防火墙总体架构设计

发布时间:2023-06-13 发布时间:
|

集中式防火墙通常架构在内部网络与外部网络之间,用于对流入和流出网络的数据包进行实时检测,过 滤存在安全威胁的数据信息.集中式防火墙处理数据信息速度快、消耗低、延迟短,目前已经广泛应用于网络 规划建设中.但是,集中式防火墙的架构实现需要浪费大量资金成本,只能够对外部网络流入的安全威胁进行检测,无法保障内部网络的安全,而且其架构依赖于网 络拓扑结构,存在较多的问题和弊端。分布式防火墙能 够解决集中式防火墙实现过程中的诸多问题。

本文研究的是基于硬件的嵌入式防火墙实现机制,给出了基于ARM处理器的嵌入式防火墙安全保 护机制总体设计,提出了嵌入式防火墙软件架构和硬 件架构,详细分析了嵌入式防火墙实现过程中的关键 技术,包括芯片选型、硬件布局等,对嵌入式防火墙 的通信性能进行测试评估,测试结果表明,本文给出的ARM处理器的嵌入式防火墙的通信性能优于普通 处理器的通信性能.


1. 基于ARM处理器的嵌入式防火墙总体架构设计

基于ARM处理器的嵌入式防火墙架构由硬件部 分和软件部分共同组成.嵌入式防火墙系统设计满足 成本低、体积小、消耗少、运行稳定可靠等原则要求, 本文给出的嵌入式防火墙硬件架构与软件架构设计如 图1 所示,嵌入式防火墙系统通过接口与被保护的计算机终端网卡相连,流入和流出计算机终端的数据包都需要经过嵌入式防火墙的检测处理.经过嵌入式防 火墙检测处理的数据包通常包括普通数据流和客户端与服务器之间的策略/审计数据流。

图1嵌入式防火墙硬件与软件架构模型


1.1 普通数据流传输

计算机终端通过嵌入式防火墙与其他终端进行数据通信时所流入和流出的数据包称为普通数据流.普 通数据流从被保护的计算机终端开始,经过计算机终端的应用程序协议栈以及终端网卡芯片,再传输到嵌 入式防火墙网卡驱动中,通过嵌入式防火墙处理器将数据流存储到网卡驱动的存储空间,同时启动包过滤 引擎过滤,按照预先设定的策略规则对数据流放行,并将经过过滤的数据流传送到传输介质中.数据流从 外部网络流入的过程是:通过嵌入式防火墙处理器的控制,将网卡驱动中的数据流传送到嵌入式防火墙存 储空间中,同时启动包过滤引擎,按照预先设定的策略规则对数据流放行,再通过另一个网卡驱动将数据 流传送到计算机终端的网卡芯片中,由计算机中央处理器在协议栈中对数据流进行相关协议处理。


1.2 策略/审计数据流传输

通过嵌入式防火墙处理器控制,将计算机终端与服务器之间的策略/审计数据流传送到计算机终端网 卡芯片的协议栈中,根据相关协议认证与服务器之间建立通信连接,达到传输策略/审计数据流的目的。


2. 基于ARM处理器的嵌入式防火墙硬件架构设计

2.1 嵌入式芯片选型

本文给出的基于ARM处理器的嵌入式防火墙采用的是型号为S3C2410X的32位处理器芯片,是三星公司生产的以ARM920T为核心的嵌入式处理器芯片,该嵌入式处理器芯片具有数据处理速度快、功耗 低、集成广等特点.嵌入式防火墙的硬件架构设计如图2所示。

图2嵌入式防火墙硬件架构

2.2 硬件布局设计

ARM920T核心处理器的频率最高为203MHz,因此在进行高频电路板设计过程中,要时刻注意电路 板布局设计和布线走向,要尽可能保证高频信号与其他信号相互隔离,减少信号干扰、串扰等问题。在 防止电磁信号干扰的情况下,基于目前嵌入式系统的硬件布局方案,提出了以扩展板结合核心板的方式来 实现的嵌入式防火墙,如图3所示。扩展板是2层电路板布线结构,保证外围设备的基本功能可以实现,外 围设备包括网络控制器、调试电路、电源电路、复位电路等。核心板是6层电路板布线结构,其外围设备包 括ARM920T核心处理器、NorFlash存储电路、外围电路中的晶振电路等。

图3嵌入式防火墙硬件结构布局


3. 基于ARM处理器的嵌入式防火墙软件架构设计

3.1 网卡驱动程序

网卡驱动模块是组成操作系统的核心模块之一,与 操作系统核心网络子系统有着密切关系,网卡驱动模块 负责向操作系统核心提供网络数据通信功能.网卡驱动 模块直接可以对硬件设备进行驱动操作,位置处于网络 体系结构的下层。Linux网卡驱动模块包括网络协议层、 网络设备层、网络设备驱动功能层和网络介质层,如图4所示。当操作系统核心加载了某个 Linux网卡驱动模块 时,驱动程序通过初始化函数启动该网卡设备.这个网 络设备的名称与网卡驱动模块中的结构体变量相互对 应,由于网络设备多种多样,应用程序的编写不可能兼 容所有硬件设备,因此,通过网络设备层的接口相连,可 以实现与底层网络设备的无关性.网络设备驱动功能层 是与底层设备密切相关的,主要包括3个部分,分别是帧发送、帧接收和硬件加载与卸载。

图4网卡驱动体系结构


3.2 应用程序

本文以包过滤器应用程序为例进行说明,计算机终端的嵌入式防火墙按照预定的策略规则对数据包进 行过滤检测,当收到和传送数据包时,都要对每一个数据包进行判断,确定是否符合规则条件。嵌入式防 火墙能够将分组和目的IP地址、源端命令、目的命令及协议类型等信息提取出来,再由包过滤器的应用程 序对这些数据信息进行过滤检测,这种通过包过滤器检测数据包的方式与传统的集中式防火墙相似.当包 过滤器的应用程序拦截到一个数据分组信息之后,以过滤策略规则对其进行遍历,根据分组IP地址、目的IP地址和协议类型等策略规则进行搜索,当查询到与其匹配的规则之后,则按照策略规则对分组数据信息 进行放行或丢弃操作。其他相关网络安全应用程序的开发也可以基于嵌入式防火墙平台实现。


4. 嵌入式防火墙的通信性能测试及对比分析

本文采用美国IXIA公司研发的Ix Chariot测试软件对网络进行性能测试和压力测试,得出网络在不同情况下,其吞吐量、延时时间、响应时间和丢包数量的 性能参数,达到评估网络性能的目的。Ix Chariot测试软 件包括控制端和远程端,控制端需要配置在微软操作系统中。


4.1 测试环境

嵌入式防火墙的性能测试环境如图5所示,测试环境 包括与嵌入式防火墙相互连接的2台普通计算机终端。

图5嵌入式防火墙性能测试环境


4.2 测试指标

嵌入式防火墙性能测试指标包括吞吐量和响应时间,但是每个性能指标参数的测试需要2个对等的计算机终端共同作用完成,即终点1和终点2。

4.3 测试结果

在计算机终端1上运行Ix Chariot测试软件,在计算机终端2上运行Ix Chariot测试软件中的end-point程序。Ix Chariot测试软件能够将嵌入式防火墙的通信性能实时显示,图6(a)为计算机终端1与计 算机终端2之间进行对等通信的吞吐量参数,图6(b)为计算机终端1与计算机终端2之间进行对等通信的响应时间参数。

图6嵌入式防火墙性能测试


由图6(a)和图6(b)可以看出,嵌入式防火墙采用外接硬件部分之后,由Ix Chariot测试软件测试得到 的网络应用层的数据通信速率为15.5Mbps左右,测试得到的响应时间为50.5ms左右。


4.4 测试对比

目前,我国生产的大部分防火墙产品主要属于边界式防火墙,通常利用网络处理器实现安全保护功 能,因此本文的嵌入式防火墙性能测试对比选择的都是基于ARM处理器的防火墙产品,以开发板和路由 板的数据信息处理性能参数进行测试对比,测试对比选择的是三星公司生产的S2410开发板和华北工控公 司生产的P780路由板。

图7嵌入式防火墙与 华北工控路由板通信性能对比


三星公司生产的 S2410开发板是基于ARM 处理器实现的,能够支持嵌入式系统,同时具有一 个以太网接口,但是不能使用Ix Chariot测试软件 进行性能测试,只能通过网络传输协议进行性能 测试,其网络应用层的数据通信速率为7.2Mbps。


华北工控公司生产的 P780 路由板是基于ARM处理器实现的,具有3个以太网接口,同时 配备2个无线网卡,无线网卡置于 Mini PCI插槽 内,将以太网的2个接口分别与2台计算机终端 相互连接,利用Ix Chariot测试软件进行性能测 试,其网络应用层的数据通信速率为7.5Mbps。 由图7可以看出,本文给出的基于ARM处理器的嵌入式防火墙通信性能可以达到15.5Mbps左右,比一般的处理器通信性能提高2.15倍。


5.结论

本文针对目前嵌入式防火墙通信性能差的问题,提出了一种基于ARM处理器的嵌入式防火墙实现机制,对嵌入式防火墙的吞吐量和响应时间进行通信性能测试.实验结果表明,基于ARM 处理器的嵌入式 防火墙的通信性能优于其他处理器。进一步的工作包括继续优化其通信性能,或者在其基础之上扩展相关安全应用,包括身份认证系统、入侵检测系统、数据加密系统等,未来应用前景非常广泛。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
STC89C52RC单片机的NRF24L01无线通信程序.收发一体