科技网

当前位置: 首页 >手机

Netronome应用加速卡在高速包捕获

手机
来源: 作者: 2019-03-21 11:01:46

1. 概述

Netronome络流处理引擎(NFE-3240)是业内最高性能的PCIE加速卡,专为提升络设备和服务器的性能而设计。每块NFE-3240加速卡配合Netronome络流管理器(NFM)软件都能提供高达20Gbps@64字节的线速可编程的络数据报文和数据流处理能力,10倍于采用标准NIC(卡)的IA/X86系统在实际络和安全应用方面的性能,可供选择的硬件接口规格,包括2个10Gigabit以太端口和6个1Gigabit以太端口。NFE-3240利用多种技术极大的提升了络I/O能力,包括包分类、状态流分析、深度包检测,同时数据流通过一个高性能、虚拟化的PCIE数据通道可在多个X86 CPU核之间实现应用级的动态负载均衡。

2. 问题与机遇

互联与数据通信的持续发展,带来流量的快速增长,业务类型越来越丰富,各种络骨干出口发展呈现高宽带,高流量化趋势。大流量对服务器的IO能力以及IO和业务处理之间的平衡提出了极大的挑战。在大流量情况下,采用传统普通卡的服务器,在数据包的IO处理上,将消耗CPU大部分的资源,导致上层应用的处理能力急速下滑。

而Netronome络流处理引擎则能很好的解决服务器所面临的这种困扰,Netronome络流处理引擎(NFE-3240)配合络流管理器(NFM)能极大的降低服务器在数据包IO上的资源消耗,从而使得服务器上层应用可以获得更多的资源完成数据包的有效处理。

下图是同一个服务器在采用标准卡和采用Netronome加速卡,运行同一上层应用时的CPU资源消耗对比图:

从图中可以看出:

当服务器采用标准卡时,高达80%的CPU资源被数据包IO所消耗,而上层应用仅能使用20%的CPU资源。

当服务器采用Netronome加速卡时,能为服务器带来3~5倍的数据包处理能力的增长。

3. 高达20Gbps@64字节的包捕获能力

传统的包捕获采用抓包软件+普通卡的模式,主要的工作由CPU负担,抓包的过程消耗了CPU的绝大部分的处理能力,导致抓包成功率地下,且CPU资源耗尽,无法完成后续的处理任务,如:流量统计、协议分析等。

对于此问题,传统的解决方法是,预先将大流量分流为小流量,同时部署更多的应用处理服务器,分别进行处理。由此带来一系列其他问题:

多台应用服务器的存在导致管理工作量的急剧增加,在设备安全、可靠性方面的投入也相应成倍增长。另外,从业务角度考虑,具有相同属性的流量可能被分流到了不同的应用处理服务器,导致分析存在较大误差,甚至无法分析。

Netronome络流处理引擎PCIE加速卡采用专业的可编程硬件引擎,配合Netronome络流管理器(NFM)软件,高效、可靠的实现高达20Gbps@64字节的包捕获能力,同时NFM提供的数据包零拷贝技术,能将CPU接收数据包的资源消耗降到最低,为数据包的后续应用处理提供的强有力的支持。

4. 包过滤、分类和基于流的管理

对于某些应用而言,仅仅关注特定的某些数据流,传统的包捕获模式,无法预先进行包过滤,所有数据包将进入到系统中,导致大量的、无效数据包浪费了CPU的有限资源。

Netronome络流处理引擎PCIE加速卡则可以在数据包进入系统前,按照用户的要求,对数据包进行预处理,包括包过滤,包分类,快速转发等等。Netronome络流处理引擎采用基于六元组的包过滤技术,可针对VlanID、源IP及端口、目的IP及端口、L4协议类型设置过滤规则,及时丢弃主机软件不需要关注的数据包,提取符合规则的数据包转发给主机处理,将极大的提高系统响应速度。

此外,针对有效的数据包,netronome络流处理引擎将为其建立对应的流表,支持高达800万条流的管理,提供完善的流管理功能。当数据包进入主机系统时,通过NFM可以轻松获得数据包对应的流表项,帮组上层应用实现数据包基于流的处理,将流管理部分卸载到加速卡上实现,进一步提高应用服务器的处理能力。

由于采用可编程的NFP络流处理器,用户可以对现有功能进行裁剪,同时还可以基于现有功能进行增量开发,利用NFP络流处理器的强大流处理能力,实现用户特定的包处理功能,如:特殊的包分类算法,特殊的包统计需求等等。

5. 有效的支持多核应用

Netronome络流处理引擎可以实现基于流的负载均衡,既可以将同一类型的数据包负载均衡到多个核心应用上,保证应用在不同核心上的平衡,也可以将不同类型的数据包分担到不同的核心应用上,极大的提升多核应用的效率。

6. 完善的配置管理

Netronome络流管理器提供了一套命令接口,利用此命令接口,无需编程,用户即可实现对Netronome络流处理引擎的完全配置,包括过滤规则创建、维护,流表的维护,统计等等。

7. 标准的libpcap接口/可编程API接口

Netronome络流管理器除了提供一套命令接口外,还为用户提供标准的libpcap接口,通过libpcap接口,上层应用无需修改代码,即可轻松实现包捕获。

此外,NFM还为用户提供了一套编程接口,通过API接口,用户可以实现数据包的接收/发送,以及其他所有的管理功能,如:规则创建、维护,流表维护,统计等等。

这些接口的存在,为用户使用Netronome络流处理引擎提供了极大的便利和灵活的选择方式。此外,NFM的零拷贝技术,极大了降低了应用处理从Netronome络流处理引擎获取数据包的开销,为应用实现高效处理提供了保障。

8. 总结

作为一款面向高速包捕获及过滤功能的产品,Netronome络流引擎包捕获系列加速卡可在任何基于IP传输的络中进行高速全流量的包捕获及过滤,在DPI, 安全,负载均衡等多种领域为服务器处理大流量数据提供强有力支持,它能很好的帮助提升服务器的性能和效率。

佝偻病要怎么治疗
宝宝不爱吃饭怎么办
孕妇吃什么牌子的钙片好
经期延长有血块量少

相关推荐