科技网

当前位置: 首页 >新闻

Netronome异构多核统一架构在云计

新闻
来源: 作者: 2019-03-13 12:13:12

近年来,得益于络带宽以及全新的基于全IP业务的移动互联,远程云服务、基于IP的流媒体和IPTV的增长,导致企业和电信的流量爆炸性增长。另外,云计算、虚拟化的到来,以及100Gbit/s的高性能需求,给络通信系统的设计带来巨大挑战和压力,其中包括I/O子系统。这些需求再加上多核x86CPU在嵌入式应用和数据中心的广泛应用,需要一种协处理器能够无缝连接,高性能并提供虚拟化的接口和x86CPU系统配合,能够处理千万级的状态流的报文处理。目前服务提供商提供的基于云服务和企业数据中心都能随时随地的通过无线或有限络活动有价值的资源。这导致了大量的流量需要接入交换机和路由器已经其他络节点都面临持续的超过带宽的压力和需求。从而必须组建带有DPI(深度报文检测)功能的防护墙,以及能搞提供虚拟化支持的可靠性云计算环境。

一、云计算环境络安全处理的新特点

以移动互联,智能终端和应用平台为核心的移动互联产业的发展,带来日益突出的络安全问题。云计算技术的发展,云服务的引入,更是对现有的基础信息架构及其安全带来了不可预知的风险。为满足不同络,以及复杂业务带来的安全威胁,这需要一个强大的统一计算平台,对海量数据和报文进行关联分析和检测,传统的单一处理器架构带来巨大挑战,这样需要全新的统一计算架构搭建未来适应云计算环境的基础计算架构平台。

二、云计算环境下实现40Gbit/s、100Gbit/s络安全处理对于处理器的挑战

当前的处理器主要分为偏重于应用层的多核处理器,以及偏重络2层到4层的专业络处理器,但是基于这两种架构的处理器很难跟上现在络流量和络安全处理的发展需要,现在的关键是怎么能够把这两种处理器紧密耦合起来,无缝连接,从而搭建一个能够实现线性,安全,虚拟化的统一平台,就如支持x86的图像加速卡一样,分布式应用处理,负载均衡。

三、多核处理器

近年来兴起的多核处理器,因为其采用SMP架构,主要依赖于Cache来减少内存访问,但是内存访问延迟相对于Cache来说太大,这种所谓“基于内存的处理器“不能够升级到更高到100Gbit/s的处理能力”。这就需要外围协处理器能够处理卸载CPU的负担,尽量把Cache高命中,低延迟的操作放在CPU,把复杂的络处理卸载到协处理器来实现性能的提升。如图1所示虚线标出的协处理器系统,能够帮助通用多核处理器大大提高系统性能。

图1通用多核处理器需要硬件辅助以达到100Gbit/s规模上的千万条流处理

四、络处理器

络处理器是专注于优化的络2层到4层报文处理能力的一类处理器,由于其内置了多个微内核,并存采用流水线处理架构,在加上优化的内存性能,使得100Gbit/s的处理能力变得可能。络处理器提供专有的数据报文处理指令和硬件协处理器,给软件编程提供极大的在络层处理的灵活性,同时有不失性能。

五、云计算环境下基于数据报文处理机制到状态处理机制的转变

由TCP,UPD和RTP流量组成了多个数据报文同属于一个络连接,如交换机,路由器和关等中间络节点必须能够处理百万级的并发络连接。试着处理每一个络连接中的单个报文使得络单元必须跟上处理线速流量的速度。这使得处理即使部分流量的DPI的需求变得更加复杂。因而,络中的中间节点必须能够处理器百万,千万级的数据报文。

如果报文之间没有相关性,因而在时间和空间上也就没有联系。因此这类异步的数量流量最好采用绑定多个报文到一条流来处理。一条流就是一个连接,属于这个流的报文也是同一个络会话,通常属于一个源和目的对。上传的报文必须分类成数据流,从而处理器能够对属于同一个流的数据报文进行规则控制,这可以通过数据流状态表可以实现。

所有的络处理单元都需要百万,千万级的状态流,尤其是在执行安全处理是,如防火墙,入侵检测和保护系统,以及应用层的负载均衡等。这些需求导致了硬件平台也必须支持状态流管理,并监控流里的数据报文,更新TCP连接,新建和超时的UDP连接处理,跟踪VPN连接。状态处理要求支持TCP代理和TCPSplicing。

系统软件应该维护流状态表,硬件必须支持复杂哈希和流表的查找以支持软件实现。软件负责分析流哈希值和管理新建的数据流,更新哈希状态表,并维护流的状态。

六、异构多核统一计算架构的系统特征和优势

所谓异构多核统一计算架构就是采用通用多核处理器作为应用和控制CPU,另外采用专用络处理器作为协处理器实现络层面的高性能精确处理。协处理器需要访问报文,存储转发报文,在如x86CPU的通用多核拿到数据报文之前进行预处理,大大卸载的x86的处理要求。同时协处理器支持VM(虚拟机)之间的交换,同样协处理器也能支持旁路卡模式,可以把全部数据报文上传到x86来处理。

统一计算架构在协处理器上(如络处理器)上络2层的交换,3层的路由,负载均衡和虚拟化,NAT、IPSec和SSLVPN,同时在x86多核处理器实现内容查找,深度报文分析,病毒扫描,入侵检测。协处理器提供一种软件定义的络架构,为主控CPU带来虚拟化,软件可控,高性能的络处理。比如OpenFlow协议的控制面会运行在多核x86处理器上而状态流的建立和维护都由协处理器负责。最新的Openflow协议也会支持SDN(Software-DefinedNetworking)。SDN使得络更加智能,通过远程软件动态编程可以控制络硬件行为,是未来络发展的一个重要方向。如图2所示,就是一个NetronomeNFP-3240络流处理器配合x86多核的例子,其中,NFP-3240作为协处理器,通过和x86处理器的紧密耦合,卸载络处理密集型任务,提高整体系统性能。统一计算架构有以下特点和优势。

图2在多核异构系统中,协处理器集成了所有硬件加速功能以实现性能的优化

a)处理高效和内存优化

协处理器需要访问数据包,在最小延迟内转发数据包和其相关的Metadata(数据包状态信息)。这要求有分层存储结构以及片上和片外存储器对报文数据进行有效管理。例如,第一级查找表可以在片上存储器,而大容量的数据可以存储在外部存储器。

此外,使用多线程处理核心可以绕过内存墙的问题。一个核或线程继续执行,直到一个外部存储器访问是必要的,然后运算单元被其他的处理线程接管。因而异步存储器架构屏蔽了外部存储器访问的延迟,最大限度地提高系统的整体性能。同时允许多个内存访问合并到一个内存访问,进一步提高外部存储器接口效率。

b)支持串行和旁路的安全和虚拟化处理

协处理器工作在串行模式时,可以对上行和下行的流量进行报文分类,建立流表,查找流状态,解密和加密,同时可以对不同的协议报文进行精确控制。同时,协处理器支持I/O虚拟化技术,使得x86的核和虚拟机(VM)共享I/O子系统。此外,协处理器还可以根据数据流的状态动态负载均衡流量到x86的不同内核。

c)和x86的快速通道

支持异构处理架构需要一个高性能互连的支持I/O虚拟化的一个通道。例如,采用PCIE二代8-lane的接口可以提供40Gbit/s理论带宽。

d)支持直通和基于流内容的直通模式

在理想情况下,并非所有的流都需要传送到x86处理器,协处理器可以实现足够的智能处理,例如把数据包分类为不同的数据流,根据流状态表来决定采取何种策略,比如,直通,丢弃或者上传给x86。在多数情况下,一条流的头几个数据包需要转发到x86子系统做深度检测处理,然后x86处理器可以指示协处理器来直接转发后续的属于同一条流的数据报文。

e)虚拟机之间的交换

虚拟机和I/O虚拟化都需要对I/O接口进行智能管理,协处理器可以实现基于虚拟机的交换,从而实现不同业务在不同虚拟机上的交换,这些虚拟机可以属于数据中心中不同的服务器。

f)Passive旁路卡模式

协处理器应该能够支持旁路模式,所有的络流量都需要传递给x86处理器来处理。这种模式需要络监测和统计或者需要百分之百的x86CPU处理。

七、结束语

随着线性处理速度要求的增长,云计算和数据中心的复杂业务的增多,统一计算架构为用户带来一种面临挑战的新的选择。通过灵活的异构编程模式把复杂络处理和应用层处理分开,充分发挥x86的应用层计算能力和络处理器的络层处理能力,随着Netronome的200Gbit/s络流处理器的即将问世,从而能够搭建100~200Gbit/s复杂络处理的硬件平台,为日益发展的数据中心和络安全提供一个高性能解决方案。

肩关节脱臼了怎么办
美容瘦身
广西玉林制药产品目录
风寒风热感冒吃什么药
治跌打损伤中药方

相关推荐