新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 依托FPGA开发高性能网络安全处理平台

依托FPGA开发高性能网络安全处理平台

作者:时间:2017-06-06来源:网络收藏
通过来构建一个低成本、、开放架构的数据平面引擎可以为设备提供性能提高的动力。

随着互联网技术的飞速发展,性能成为制约网络处理的一大瓶颈问题。作为一种高速可编程器件,为流量处理提供了一条低成本、的解决之道。

的核心任务之一是对IP流量的解析、识别和处理,也就是在IP网络通信中经常提到的“数据平面”。网络通信数据平面具备如下特点:1.需要处理多种物理层接口,随着安全的触角向网络核心延伸,网络安全设备需要面对的网络接口也在向高端延伸,从低端的100M/1000M以太网向高端的万兆以太网甚至城域网级别的2.5GPOS(接口)、10GPOS乃至40GPOS接口延伸;2.数据平面处理流程在网络层(IP)和会话层(TCP/UDP)相对标准化;3.数据平面需要具备分析处理应用层(L7)内容的能力,而应用层分析的算法,如内容匹配、特征识别等将需要巨大的计算能力。

应对五大技术挑战

恒扬科技是一家专注于为网络安全厂商提供网络通信数据平面基础平台的技术型公司。正是由于数据平面的上述特点,我们认识到,通过来构建一个低成本、高性能、开放架构的数据平面引擎可以为网络安全设备提供性能提高的动力。要实现这样一个引擎,需要应对如下技术挑战:

1.需要具备多种接口上高速网络报文的处理能力:安全解决方案正在和网络通信融合,这种融合必然要求网络安全应用不再拘泥于简单的100M、1000M局域网接口,针对处理类似POS接口上的城域网、广域网流量,处理正在成为应用主流的10G接口乃至40G接口,每一代新的FPGA都提供了更丰富的接口,性能也不断提高。现在FPGA可提供大于1Gbps的LVDS(低压差分信号)接口,高速SERDES(并串行与串并行转换器)接口则可支持高达10Gbps的速率,再加上FPGA的可编程特性,使得设计者可以快速地响应新的接口标准,推出自己的产品。而FPGA内部资源的不断增加,则允许设计者在不断增加的网络带宽面前,仍然可以开发出实现多种安全处理的设备。

2.单板密度、功耗要求:一直以来,FPGA都在快速发展当中,密度更高,接口类型更丰富,性能更高。因此,FPGA可支持更多的功能,单板的密度也得以增加。在传统的认知中,FPGA常常被挂上高功耗的标签。其实,现在情况正在发生变化。举例来说,FPGA厂家已经成为IC新生产工艺的应用先驱,在主流器件中,65nm和40nm工艺已经被广泛应用。当从90nm工艺转到65nm工艺时,FPGA的核心电压从1.2V降到1.0V,动态功耗就下降了30%。同时,FPGA厂家在新一代的器件中都不断地进行着结构上的优化。此外,我们结合多年FPGA应用设计的经验,可以在架构设计、算法优化、设计优化上不断调整性能和功耗的平衡,实现最优配置,从而进一步降低功耗。

3.高效处理基础网络业务:通过FPGA识别并管理网络会话,可以极大地降低CPU识别跟踪会话需要消耗的计算能力。在我们的芯片中,实现了网络层和会话层协议分析和跟踪算法,同时,通过对内存访问算法和内存控制器的优化,我们的单颗芯片中最高可以实现10G线速(小包)的会话建立和跟踪能力。

4.DPI(深度包检测技术)能力:业界已经有很多厂家尝试用FPGA芯片或者ASIC芯片实现一个完整的正则表达式搜索,但因为各种各样的原因,其并没有在网络安全领域被大规模应用起来。我们用FPGA算法和TCAM(高速路由查找技术)器件互相配合,并结合流管理算法,可以实现超过4G的全流量字符串特征匹配,为DPI应用提供了一个低成本、轻量级的流量捕获引擎。

5.以需求和成本为核心灵活进行方案选择和迁移:根据接口、性能要求的不同,只有灵活选择合适的芯片才能让这个方案具备成本上的竞争优势。我们通过对IP库的建设,逐步形成了一套可以灵活裁减、扩充和移植的IPCore功能集合,而各种接口和性能规格的数据平面引擎总可以根据成本的需求,在成熟代码库的基础上快速组合而成,有效地兼顾了需求、成本、研发周期和产品成熟度。

数据平面引擎助推应用

一个好的基于FPGA的数据平面引擎并不仅仅是一套IPCore的组合,更重要的是它必须是一个可以让用户直接应用起来的软硬件实体。FPGA应用在网络安全领域已经叫好很多年了,但一直没有像X86一样流行起来,一个主要的原因就是从技术到产品的进入“门槛”太高。如何将IPCore变成实体的硬件,如何将这样一个硬件平台和厂商既有的成熟软件平台紧密结合?只有回答了这个问题,FPGA在网络安全领域的应用才可能真正实现应用规模的突破。

恒扬科技提出的“数据平面引擎”就是希望能够为网络安全应用的开发厂商提供一套直接可用的、开放的硬件平台:一方面,用以FPGA技术为核心开发标准的网络接口和处理卡来实现这个数据平面,如可以和服务器、工控机结合的PCI-E插卡,可以和cPCI、ATCA结合的工业标准插卡,网络安全厂家可以非常方便地将它们和运行自己软件的X86结合到一起,以完全相同的一套X86软件实现从低端千兆到高端10G乃至核心40G的安全应用;另一方面,通过软件应用开发包的方式把FPGA实现的业务功能开放给网络安全应用开发厂商,应用厂商完全可以在不对现有X86软件应用进行大修改的前提下方便地集成FPGA的功能,有效降低应用开发厂家的研发成本和研发风险。

回顾并放眼网络安全应用领域,FPGA以其可编程、高性能的特性,正在成为网络安全数据平面开发者的首要选择之一。然而,只有将数据平面引擎实体化、标准化,使其成为像网卡一样简单、易集成、易应用的标准组件,FPGA和高性能硬件平台才可能实现在这个领域的规模化应用。随着网络安全产业链中提供标准化中间件的厂商逐步成熟,高性能网络安全应用也一定会加速发展。



评论


相关推荐

技术专区

关闭