一种基于高速交换缓存的网络隔离SoC芯片结构研究

2019-11-12 02:13谷会涛孙懿峰
网络安全技术与应用 2019年11期
关键词:报文专用芯片

◆谷会涛 孙懿峰

(1.91977部队 北京 100841;2.91991部队 浙江 316000)

近年来,随着移动网络、移动支付、智能手机等新型技术的快速发展,各种社会信息迅速电子化、网络化,政府、金融、教育、公安、电力等过去孤立的内部网络都迅速接入到了互联网中,通过各种手持网络终端设备,可以实现各种数据在网络上快速共享和交换,极大便利了人们的日常生活。然而,接入互联的各行业内部网络也受到了日益严重的黑客攻击、病毒、木马等网络安全威胁,尤其是一些工业控制网遭到了入侵,产生了严重的后果。因此,网络安全防护技术也越来越受到重视,被动防护技术包括病毒防护、防火墙和入侵检测等技术,主动防护技术主要是网络隔离技术[1]。

本文首先介绍了网络隔离技术的基本原理和技术发展路线,分析了目前典型网络隔离技术的几种实现方式,提出了一种高度集成的网络隔离芯片硬件结构,最后定量分析评估了该芯片硬件结构的设计约束和性能。

1 网络隔离技术

1.1 网络隔离技术的基本原理

网络隔离技术[2]是指将不同等级的内部网络和外部网络在物理断开的基础上,实现信息的安全可控交换。网络的物理断开,简单有效地阻断了来自外部网络的各种有害的网络安全威胁。信息的安全可控交换又实现了信息的共享和交换。

1.2 网络隔离技术的发展

随着网络技术的高速发展,网络隔离技术也在不断改进完善,从信息交换技术特点来考虑,隔离技术发展可以分为三个阶段[3]。

第一代是数据转播隔离技术。数据转播技术通过分时转播系统实现文件的共享和交换。这项技术切换速度慢,且不支持常见的网络应用,失去了数据共享和交换的意义。

第二代是空气开关隔离技术。空气开关技术通过设置临时数据缓冲,内部网络和外部网络通过分时访问临时数据缓冲,来共享和交换信息。这项技术存在一定安全性问题。

第三代是安全通道隔离技术。安全通道技术通过专用硬件和安全协议,实现内部网络和外部网络件间的隔离和数据安全交换。该技术高效实现了网络件数据的安全可控交换,可以透明支持多种网络应用,是当前隔离设备采用的主要技术。安全通道隔离技术一般包含以下技术特点[4]:一是断开网络物理层和链路层的连接;二是将剥离通用的TCP/IP协议数据。三是采用专用硬件和传输协议实现信息交换。

1.3 网络隔离设备的组成

当前典型的网络隔离设备一般至少由内网单元、外网单元和隔离交换单元三部分组成。其中,内网单元和外网单元采用独立的网络接口来连接内部网络和外部网络,完成网络报文的收发。隔离交换单元通过专用硬件和协议使,过滤数据交换过程中的病毒、恶意代码等信息,实现信息在外网单元和内网单元间的安全可控交换。

目前各种网络隔离技术设计中,内网单元和外网单元一般采用通用计算机系统实现。隔离交换单元实现技术有多种。文献[1]、文献[3]和文献[7]设计了两块隔离交换板,内外网络单元各配属一块,隔离交换板间通过专用协议和电缆通信。文献[4]中隔离交换单元采用通用计算机系统实现,但采用接入认证和访问控制技术进行安全加固。隔离交换单元与内外网单元间还采用信道加密技术进行安全增强。文献[5]中采用专用硬件实现隔离交换单元,并增加了管理控制单元对隔离交换进行安全审计。文献[6]将防火墙、入侵检测等技术和网络隔离技术结合,提出将网络隔离设备放置在防火墙和入侵检测设备之后,增强系统安全性。

2 网络隔离芯片硬件结构设计

隔离设备采用多主机架构隔断网络物理连接,实现网络数据安全交换,设备体积较大、安装和维护工作较烦琐。随着集成电路技术高速发展,基于单芯片实现隔离交换功能已经成为可能。

2.1 芯片总体架构

基于典型网络隔离系统架构模式,本文提出了一种基于高速交换缓存的网络隔离SoC芯片结构,如图1所示。以三个处理器为中心构成了SoC芯片的三个功能模块:两个通信处理模块和一个隔离交换模块。通信处理模块由处理器、DMA控制器、网络接口和串口等部件组成,负责网络通信和报文解析。隔离交换模块由主处理器、隔离控制逻辑、专用通道、缓存控制器和缓存单元组成,实现数据审核和交换功能。

图1 网络隔离芯片结构图

2.2 通信处理模块功能

通信处理模块主要完成两个功能。一是从网络接口接收数据包,向隔离认证模块发送数据包审核请求,并通过专用通道接口将数据写到隔离认证模块的缓存单元中。二是接收隔离认证模块的发送数据包命令,并通过专用通道接口从隔离认证模块的缓存单元读取数据包,通过网络接口发送。

通信处理模块支持在多层次上实现网络的隔离与通信。通过设置PHY寄存器实现物理链路的断开和链接可实现物理层隔离;通过设置GMAC寄存器可实现链路层的断开与连接;通过设置RxFilter寄存器来实现IP地址、TCP/UDP的端口的断开与连接。

2.3 隔离交换单元功能

隔离交换单元主要由CPU、四条专用通道、两个隔离控制逻辑、两组专用缓存、DMA控制器、异步通信接口等模块组成。两条专用通道、一个隔离控制逻辑和一组专用缓存组成一套独立的隔离交换处理逻辑。两组隔离交换处理逻辑可实现内网到外网、外网到内网数据交换的单向性和独立性,实现双向数据信息的并行隔离交换处理。

数据隔离交换速率是影响网络隔离SoC芯片性能的关键因素。本文设计了专用的高速隔离交换缓存,针对网络隔离系统中报文数据计算和传输模式,定制设计了地址映射和高速硬件逻辑开关等技术,构建了报文数据在多个处理器间高速安全隔离交换架构。支持多处理器同时访问的隔离交换缓存结构,有效减少了数据传递次数,提高了数据处理速度;高速隔离交换缓存同时设计了缓存分块和缓存区访问权限控制技术,实现隔离交换缓存的安全访问功能。

3 网络隔离SoC芯片分析

3.1 通信处理模块CPU性能分析

通信处理模块主要完成网络数据包的收发处理。针对典型网络通信速率,本文分析了通信处理模块CPU的任务复杂度。千兆网络单向理论最大传输速率125MB/s(1000Mbps),以太网线速带宽约为86600帧/s(125MB/1514B,每帧总长1514By te,有效数据长度1460Byte)。

本文基于开源TCP/IP协议源码,统计了Socket接口层以下协议处理需要的CPU指令数,CPU约需要1500 MPIS CPU性能才能满足千兆网络实时处理。数据进入应用层后,进行应用层协议解析及安全扫描等的工作量,考虑到实际应用差别较大,本文仅将应用层工作及其他工作性能需求分别按网络协议处理性能需求的50%、100%、200%进行分析。图2给出了单向通信速率为100Mbps和1000Mbps时,对CPU性能的需求。

图2 CPU性能需求分析图

当应用层协议处理等运算复杂度与网络协议处理运算复杂度相当时,100Mpbs通信性能要求通信处理模块CPU性能至少应达到0.3GIPS。1000Mpbs通信性能要求通信处理模块CPU性能至少应达到3GIPS。

3.2 隔离交换模块CPU性能分析

由于隔离交换功能主要由隔离控制逻辑实现,隔离控制逻辑与CPU并行工作,因此隔离交换模块CPU任务复杂度较低。本文采用Verilog语言实现了隔离控制逻辑、专用通道和缓存控制器,设计了隔离交换模块CPU模型。通过Modelsim工具进行模拟,得到了不同传输报文大小、不同传输速率对隔离交换模块CPU的性能需求。

当报文大小分别为1KB、2KB、4KB、8KB、16KB时,传输速率为10Mbps、100Mbps、1Gbps、10Gpbs时,隔离交换CPU性能要求曲线如图3所示。

图3 隔离交换CPU性能曲线

当数据大小为1KB,网络传输速率要求1Gbps时,CPU性能至少应达到1.1GIPS。隔离交换模块中,由于报文数据的由搬运主要由隔离控制逻辑和DMA完成,因此极大降低了对CPU的性能需求。

4 结论

随着网络技术的快速发展和网络安全威胁的日益严重,在内部网络,尤其是工业控制网的防护上网络隔离技术应用广泛。本文介绍了网络隔离技术基本原理,给出了当前典型网络隔离技术的实现方式,提出了一种基于高速交换缓存的网络隔离SoC芯片硬件结构,分析评估表明该硬件结构具有较高的网络安全性和数据交换性能。

猜你喜欢
报文专用芯片
基于J1939 协议多包报文的时序研究及应用
芯片会议
以太网QoS技术研究及实践
人体微芯片
关于射频前端芯片研发与管理模式的思考
浅析反驳类报文要点
灵动驾驭 邓禄普豪华SUV专用轮胎SP SPORT MAXX 050+
数学达人专用时钟
1588v2中的PTP报文格式及应用
飞机是怎么飞上天的?