在IP网络统一天下的年代,各种网络设备都需求以太网接口来完成与其他设备的互联互通,比方传统的TDM设备就经过伪线技能完成了以太网封装,具有了与IP网络对话的才干。关于服务器来讲,一般也需求装备网络接口卡(NIC)来完成与其他网络的数据对接与传送。网络接口卡能够协助体系捕获报文,对网络功用进行监测并检测服务质量,完成必要的OAM功用;在确保安全的IPSec功用基础上,网络接口卡还能够经过对接纳流量进行深度的报文检测,辨认不同运用与事务,对不同事务类型进行分门别类的处理。
跟着多核技能的开展,越来越多的网络接口卡开端选用多核处理器计划,经过分配不同的事务处理到不同的CPU核,多核架构能够灵敏应对各种杂乱的事务需求。不过,跟着网络带宽的不断提高,纯CPU多核架构也面对一些问题。以网络接口卡根本的安全功用为例,一般在第一层维护中需求ACL、防火墙/NAT/PAT、ALG、L2TP和IPSec VPN等;第二级维护中需求对接纳数据深度检测,从而辨认运用、ToE、IPSec;第三级维护中需求MAC/URL过滤,端口 /MAC认证等。假如将这些处理彻底交给CPU,不只CPU的事务负荷过大,影响到单板功耗和体系软件规划,并且跟着带宽需求的不断添加,CPU核会面对处理瓶颈的问题。
LSI公司推出的Axxia系列多核通讯处理器,选用异构多核的方法,立异性的将多核与快速处理引擎经过专利技能虚拟管道(Virtual Pipeline)技能相连,处理了纯CPU多核以及同构多核在处理杂乱事务时功用下降的问题,在确保事务线性处理的情况下依然保存CPU核资源用于操控、办理、事务后处理等作业。
Axxia通讯处理器
LSI公司第六代通讯处理器的中心是高功用的多核处理器和一系列依据硬件的事务加快引擎,经过灵敏的Axxia渠道架构,处理器核能够有多种挑选,如ARM、PowerPC或许MIPS。本文将对以PowerPC为主的Axxia通讯处理器进行介绍,处理器的根本框图如图1所示。
图1:依据PowerPC的AXXIA通讯处理器内部框图。
图1中PPC476核由IBM和LSI联合研制,兼容Power ISA Version 2.05,最高主频能够抵达2GHz;用来供给快速处理通路的各加快引擎得益于LSI公司多年来的研制堆集,技能老练牢靠,多代产品经过商场检测,这些引擎首要包含:报文处理、安全引擎、正则处理引擎、流量办理/调度器(六级调度)。
Axxia规划选用异构多核的架构,立异性的选用虚拟管道技能来完成各加快引擎,CPU核以及各子体系间的通讯,这个全新的音讯传递机制确保Axxia不管报文长短,体系负荷以及协议类型都能够供给确认性的处理功用,防止同构多核在核数目与体系功用提高间不成比例的问题。在虚拟化日益遍及的情况下,低延时和可确认的处理功用已经成为网络设备的首选条件。
Axxia处理器供给一系列高速接口,包含8路依据SerDes的SGMII,2路依据XAUI的10GbE,3路PCIe接口,支撑x1/x2/x4,一起它还支撑IEEE1588v2协议。
网络接口卡的硬件规划
Axxia兼备灵敏的数据处理和强壮的主控CPU,单芯片计划供给丰厚的高速接口和低速调试接口,由此十分合适运用于嵌入式的单板规划。图2为依据Axxia芯片的网络接口卡计划框图。Axxia芯片的快速处理引擎能够用来完成数据层面的加快,PowerPC核能够用来完成附加功用以及主控层面的处理。
图2:依据AXXIA芯片的网络接口卡计划框图。
单板规划选用Axxia系列中中端的ACP3423,装备了2G DDR3 SDRAM,背板侧PCIe x4 Gen2用做办理,6个SGMII和XAUI用做数据交流;网络侧为10GE SFP+;支撑IEEE1588和同步以太网。
Axxia通讯处理器为支撑SGMII、XAUI、sRIO和PCIe等高速接口,芯片内部包含有多条SerDes PHY接口,这些协议可装备接口依据不同的发送和接纳数据对被分红两大组:SGMII/XAUI和sRIO/PCIe。对单板的硬件规划来讲,这些高速接口的信号完好性十分重要,在规划过程中要确保PCB板、背板、线缆等有洁净的供电,杰出的接地,在布线过程中要对走线做阻抗匹配。LSI公司供给了具体的硬件规划文档和SerDes规划文档。
软件开发
如前文所述,Axxia确认性的功用来自于优秀的硬件架构,一起,作为整个接口卡计划的“魂灵”,LSI公司还为Axxia系列处理器的软件开发供给依据各种操作体系的软件包,包含Axxia运转开发环境RTE,Axxia软件环境ASE等。关于网络接口卡开发还供给完好的Linux BSP完成以及Axxia运用开发套件(ADK)。ADK由一系列针对特定协议的数据层和操控层软件模块组成,有了这些模块软件开发者无需重视底层细节,能够很灵敏便利的直接用高档言语如C进行运用程序开发。软件根本结构如图3所示。
图3:Axxia软件开发结构。
运用事例
1.ARP(地址解析协议)处理加快
以太网中的数据帧从一个主机抵达网内的另一台主机不是依据32位的IP地址而是依据48位的以太网地址即硬件地址来确认接口。内核如驱动有必要知道意图端的硬件地址才干发送数据。由RFC826咱们知道,ARP地址解析协议就用于将核算机的网络地址即IP地址转化为物理地址即MAC地址。因为传统的物理网络接入的是物理服务器,并且整个网络只能为一个用户运用,一般CPU就能够处理报文的ARP恳求,但跟着服务器的虚拟化,以及云核算多租户的呈现,网络对ARP处理的功用需求也大幅提高。选用纯CPU计划不只很多消耗CPU资源,并且无法供给可确认的功用,无法防备或许的网络进犯。选用ACP3423的网络接口卡计划就能够很好的处理这个问题。
ACP3423处理ARP报文首要用到图1中的网络输入输出EIOA模块和流分类MPP模块,无需内部PowerPC核的参加,也就是说ARP流程彻底卸载到快速通路来处理。EIOA模块首要用来从网络收发报文并履行以太CRC校验;MPP模块首要用来依据以太网类型字段过滤ARP报文,ARP报文操作验证比如恳求或许回复,MAC_DA flooding校验,对给定AR_IP寻觅对应AC_MAC,生成ARP呼应报文等。ARP处理流程图如图4所示。
图4:ARP地址解析协议处理流程图。
以具有100K条意图ARP表项为例,Axxia能够处理超越1250万ARP报文/秒,即便在过载状况,Axxia也能够确保确认性的功用,有用防备各种进犯。
2. DPI(深度报文检测)
在多租户运用环境中,不同等级客户会有不同的服务等级,此刻传统的五元组查看无法供给精密的操控,这就需求有DPI技能来对报文进行深化到7层的检测。经过Axxia的流分类引擎MPP,深度报文检测DPI引擎以及内置的多核芯片,网络接口卡可勘探辨认的运用品种超越5500种。
处理流程既能够经过Axxia的MPP引擎检测固定特性运用,也能够使用DPI引擎和CPU核对报文进行深度排查。依据固定特性表的运用辨认首要经过意图端口号和协议来辨认运用,MPP引擎具有表查找功用;依据特征的运用辨认经过DPI引擎来查看特征时,在需求CPU干涉或做后处理时,Axxia能够将报文送至内部CPU核做进一步判别处理,也能够送至恣意外部主处理器做进一步操作。
本文小结
在数据中心的网络产品运用中,既要确保交流速度足够快,满意某些金融用户做高频买卖服务的需求,另一方面要把容量做得更大,更具扩展性,满意像谷歌、Facebook这样的互联网用户的服务。LSI公司的异构多核通讯处理器Axxia经过灵敏的架构将硬件加快引擎与CPU相结合,很好处理了通用多核CPU处理功率与核数目增加非线性的联系。Axxia彻底卸载事务到快速通路的事务流程确保了体系具有确认性的功用,一起可减低体系的本钱和功耗。依据Axxia处理器的网络接口卡很好的满意了虚拟化环境下对网络设备提出的新需求。