更多企业学院:...../Shop/
《中小企业管理全能版》 183 套讲座+89700 份资料 ...../Shop/
《总经理、高层管理》 49 套讲座+16388 份资料 ...../Shop/
《中层管理学院》 46 套讲座+6020 份资料 ...../Shop/
《国学智慧、易经》 46 套讲座 ...../Shop/
《人力资源学院》 56 套讲座+27123 份资料 ...../Shop/
《各阶段员工培训学院》 77 套讲座+ 324 份资料 ...../Shop/
《员工管理企业学院》 67 套讲座+ 8720 份资料 ...../Shop/
《工厂生产管理学院》 52 套讲座+ 13920 份资料 ...../Shop/
《财务管理学院》 53 套讲座+ 17945 份资料 ...../Shop/
《销售经理学院》 56 套讲座+ 14350 份资料 ...../Shop/
《销售人员培训学院》 72 套讲座+ 4879 份资料 ...../Shop/
多核技术在金融骨干网中的应用
文/刘晖
随着银行信息系统整合逐渐深化,越来越多的新型业务和管理系统以大集中的方式部署,
使得业务种类和流量模型日益丰富,金融骨干网中核心与汇聚设备之间的界限趋于模糊,传
统的层次化组网模型开始向扁平化组网迁移。这些变化对骨干网络设备提出了更高的要求,
如大容量精细化 QoS 业务保障、大型扁平化组网的高可靠性、MSTP 组网端到端的安全、
金融数据中心的深层安全防护等等,都已经成为设备商必须面对的现实需求。
传统高端设备在金融骨干网中面临的挑战
以金融骨干网中最常见的路由器设备为例,二十余年来经历了数代的技术革新:
第一代:CPU 集中式转发,共享总线,固定接口
第二代:CPU 集中式转发,共享总线,模块化接口卡
第三代:CPU 分布式转发,共享总线,模块化接口卡
第四代:ASIC 分布式转发,交换矩阵,模块化接口卡
第五代:网络处理器 NP 分布式转发,交换矩阵,模块化接口卡
图 1 路由器中常见的微处理器
从第一代到第五代路由器,转发性能从几十 M 软件转发提升到几十 G 硬件转发,内部
互连架构从冲突严重的共享总线升级到无阻塞的全分布式 Crossbar 交换矩阵,接口类型从
窄带固定接口一举跨入万兆。可以说路由器应对传统的路由转发业务完全没有问题。但即使
是先进的第五代路由器,在金融骨干网新业务面前也仍然面临着严峻的挑战。
回顾路由器的发展历史,使用过的微处理器一共有四种: 通用 CPU、嵌入式 CPU、ASIC
芯片以及网络处理器(NP),如图 1 所示。从处理器的报文转发能力上看,通用 CPU<嵌入
式 CPU<网络处理器<ASIC,而从四到七层业务处理能力上来看,ASIC<嵌入式 CPU<网络
处理器<通用 CPU。
1. 通用 CPU
通用 CPU 一般指 X86 系列 CPU,主要提供厂家是 Intel 和 AMD。通用 CPU 的主频一
般都很高,适合于图像处理、科学运算、数据库处理等对运算尤其是浮点运算性能要求很高
的上层复杂业务。通用 CPU 具有良好的编程灵活性、极佳的复杂业务适应能力和简单易用
的开发环境。不过通用 CPU 毕竟不是网络处理器,虽然早期的路由器曾经采用过奔腾通用
CPU,但终因其功耗大、对加密等复杂应用无硬件加速、网络专用总线类型匮乏、指令系统
复杂且效率低、更新换代频繁等劣势而被各网络设备厂家抛弃,现在只能在网络设备的控制
系统,如主控板上偶尔看到它们的身影。
2. 嵌入式 CPU
目前嵌入式 CPU 使用非常广泛,从 ARM、MIPS 到 PPC 架构,都有大量的选择。嵌入
式 CPU 是第一代至第三代路由器的主要处理器平台。一般来说,嵌入式 CPU 的主频不是特
别高,从几百 M 到 1 个 G 不等,功耗相对通用 CPU 要低很多,但对系统架构进行了专门
优化设计,在数据包转发性能上较通用 CPU 要高很多。另外,嵌入式 CPU 一般也可以完成
一定性能的 L3-L4 层应用业务的处理,甚至也可以完成对 L4-L7 层业务的处理。但由于受
限于编程环境,以及缺少专门的硬件加速部件,会出现随着业务复杂性的增加和叠加业务的
增多,性能急剧下降的问题。因此,嵌入式 CPU 通常使用在中低端路由器上。
3. 专用 ASIC 芯片
专用 ASIC 芯片是为了满足网络带宽需求爆炸式增长而出现的高性能处理器。它将 IP
转发、MAC 转发以硬件的方式固化下来,轻松达到几十个 G 的包转发性能,这是通用 CPU
和嵌入式 CPU 根本无法企及的。因此,专用 ASIC 芯片在二、三层以太网交换机以及某些
强调转发性能的高端路由器上得到了广泛应用。但有些尴尬的是,在得到了高转发性能的同
时,对复杂业务的处理能力却没有改观,甚至仍需借用其他设备。以 GRE 隧道业务为例,
目前普通的以太网交换机不能单独提供,必须搭配路由器或者 VPN 网关。至于 IPSec 加密、
语音等复杂的网络应用,ASIC 更是无能为力。并且由于 ASIC 芯片均为固化设计,很多时
候为了支持新业务只能等待新型号的 ASIC 推出,周期漫长,不利于保护投资。
4. 网络处理器
为了满足高性能业务的需求,设备商在高端路由器中引入了网络处理器(NP)。可以
认为,NP 是一种可编程的 ASIC。NP 在报文转发性能上比 ASIC 稍弱,但是由于可编程,
它可以完成 ASIC 不能胜任的 L3-L4 层复杂业务,如 NAT、GRE 隧道等功能,且业务性能
相对传统的嵌入式 CPU 也有了质的提升。但是 NP 采用微码进行开发,提供新功能的周期
相对较长。另外 NP 的代码空间有限,无法支持很丰富的业务类型,并且受硬件架构所限,
隧道加密、多业务的灵活叠加等仍然很难实现。
由上面的分析可以看出,传统的微处理器各有特色。在应用日趋复杂的大型骨干网络中,
上述处理器很难在性能和复杂业务适应性方面实现很好的平衡,因而采用上述处理器为处理
核心的网络设备也会面临越来越严峻的挑战。
因此,在网络应用蓬勃发展的今天,众所期待的理想处理器可以概括为:具备高转发性
能、易编程、良好 L4-L7 层业务应用灵活性的网络微处理器。而多核处理器,正是朝着这
一方向迈进的新一代网络处理器,它的出现,给网络设备的复杂业务高性能处理带来了无限
的可能性。
多核技术在网络设备中的使用
首先,在目前芯片功耗及技术、工艺能力限制下,采用多核处理器设计架构可以说是最
好的提升芯片性能的方法。简单说来,多核处理器,是在同一个硅晶片上集成了多个独立物
理核心(所谓核心,就是处理器内部负责计算、接受/存储命令、处理数据的执行中心,可
以理解成一个传统的单核通用 CPU),每个核心都具有独立的逻辑结构,包括缓存、执行
单元、指令级单元和总线接口等逻辑单元,通过高速总线、内存共享进行通信。实际工作时,
每个核心可以在相对节能的方式下运行,以牺牲单个核心的运算速度,达到多颗核心协同处
理任务使性能倍增的目的。上述工作原理,对于网络专用和民用的多核处理器(如 Intel 或
AMD)而言都适用。
表 1 微处理器关键规格对比一览
关键规格 嵌入 CPU NP 民用多核处理器 网络多核处理器
可编程能力/易用性
操作系统 支持 不支持 支持 支持
C 语言编程,
标准指令集
支持,
精简指令集
不支持 支持,复杂指令集
支持,
精简指令集
指令空间无限制 支持 不支持 支持 支持
数据转发性能
优化的报文转发指令 不支持 支持 不支持 支持
高速内存子系统 不支持 支持 支持 支持
优化的报文重组、转
发、缓存调度机制
不支持 支持 不支持 支持
网络专用总线与接口
高速 SPI 通信总线 不支持 支持 不支持 支持
内置高速通信接口 少量 FE、GE 不支持 不支持 多个 GE、10GE
复杂业务处理加速能力
浮点运算加速单元 无 无 支持 无
硬件加密
部分支持,
性能有限
不支持 不支持 普遍支持
正则表达式模式适配 不支持 不支持 不支持 部分支持
TCP 硬件加速 不支持 不支持 不支持 部分支持
硬件压缩与解压缩 不支持 不支持 不支持 部分支持
由上表可以看出,网络多核处理器保持了传统 CPU 软件转发的灵活性,其多个内核并
行工作的机制也提供了几乎等同 NP 的硬件高转发性能;同时在网络常见复杂业务的硬件加
速方面也做了充分考虑,使得多种复杂业务叠加时,转发性能几乎不受影响。0 所示的一款
网络多核处理器,它不仅提供了各种高速网络端口(从 GE 到 100GE),还可以完成普通转
发和直达 7 层的复杂业务,可以说,网络多核处理器是一个真正的全能型选手。
图 2 一款网络多核处理器的功能
需要指出的是,网络多核处理器和民用多核处理器虽然同为多核架构,但前者侧重于网
络报文高速转发并兼顾复杂业务,而后者则侧重于高速运算,适用于七层复杂应用,这使得
目前两者还无法互相替代。后续篇幅中涉及的多核处理器如无特殊说明,都是指网络多核处
理器。
多核处理器的出现使网络设备商找到了一条融合复杂业务和高转发性能的新路,但多核
处理器特有的并发互锁难题、多核处理器在分布式网络设备中的无缝集成、复杂业务多核并
行架构设计等等,也同时成为各个设备厂家必须攻克的技术难题。
H3C 从 2004 年初开始便涉足多核处理器领域,在多核技术方面的探索和积累走在业界
前列。截至 2009 年 9 月份,H3C 一共有超过 50 项的多核相关软硬件技术获得专利,另外
还有 20 多项的多核专利技术已经被国家专利局受理。H3C 的多款高端网络设备,如
SR88/SR66 系列核心路由器,引入了业界领先的多核技术并成功商用,结合 H3C 多年来服
务于金融行业的经验以及对金融业务应用模型的深入理解,已经为金融骨干网的各种新课题
提供了完美的解决方案。
金融骨干网中的多核技术应用
1. 大容量精细化 QoS 业务保障
金融网络的扁平化发展,在大幅度降低 IT 运维成本的同时,也对骨干网设备也提出了
更高的要求。原先通过多个汇聚设备终结的流量转由一两个骨干设备直接承载,每台骨干设
备需要接入的通道大大增加,突发流量导致的链路拥塞会引起实时交易失败、视频会议马赛
克、VoIP 语音无法听清等恶劣后果。这就需要在骨干网链路上部署精细化的 QoS 拥塞管理
策略,即为每条链路上按照承载的业务重要性分配带宽并保证相应的传输时延和抖动指标。
同时为了避免不同业务之间的互相干扰,还需要在一条链路上为不同的业务配置不同的 QoS
队列。目前有的银行已经明确规定单链路要提供超过 10 个以上的 QoS 队列。这对传统的网
络设备是极为严峻的挑战:数百条广域链路上部署精细化的拥塞管理策略;QoS 队列总数可
能多达数千个;所有 QoS 队列出现拥塞时还需保证线速的转发性能……
业界通常采用高端 NP 网络处理器结合 TM(Traffic Manager,流量管理器)的设计方
案来应对上述 QoS 需求,性能指标上是可以满足的,但成本很昂贵,导致客户部署时投入
偏高。
业界也有少数厂商为上述难题找到了具备较高性价比的解决方案。下面以 H3C 的汇聚
路由器 SR6600 系列为例进行说明。SR6600 系列路由器采用业界领先的网络多核处理器作
为分布式接口板的业务处理核心,创新性地实现了分布式多核 QoS 功能。单处理器内部由 32
个微核组成,每个微核的处理性能都与一台中端路由器相当,所有的微核并行工作,再加上
分布式多线卡的设计,那么一台 SR6600 的整机性能就相当于数百台中端路由器。因此,无
论是广域端口密度还是大容量 QoS 队列调度的要求,都能轻松满足。另外,SR6600 线卡采
用的多核处理器为其每个端口配备的 QoS 高优先级队列超过 60 个,结合处理器内置的
200ms 大容量 QoS 缓存以及高精度硬件调度单元,完全满足大容量多业务精细化拥塞管理
的需求。
2. 大型扁平化组网高可靠性
金融业务的特殊性,要求为所有链路提供秒级甚至亚秒级的可靠性方案。而路由协议传
统的慢速 Hello 检测机制是无法满足这一指标的。目前业界较为常见的做法是在设备之间部
署 BFD(双向路径检测)快速检测,结合路由协议快速收敛或者 FRR(Fast Re-Routing,快
速重路由)技术,将业务倒换恢复速度控制在秒级。
需要说明的是,BFD 通常是由网络设备主控板的控制 CPU 完成的,很容易导致以下状
况:当主控 CPU 不忙的时候,可以应付 BFD 实时处理,一旦 CPU 负载很重,则很可能使
得 BFD 报文收发间隔超过 10ms(BFD 的最小检测间隔)。这种情况持续一段时间后,BFD
会话双方收发检测报文不及时,产生误检测,最终导致业务在主备链路之间反复切换,流量
频繁中断。这使得 BFD 技术通常只能部署在会话数不会很多(一般不超过 20 个),并且收
发包间隔较长(300ms 以上)的场景。但这样的规格显然无法满足金融高可靠性要求。
早期的高端设备设计时大多没有考虑到检测精度如此苛刻的可靠性需求,只好将其软件
故障检测指标压低并且局限于小范围使用。近年来,部分网络设备开始逐渐实现此需求,比
较常见的做法是在主控板上放置一个专门的、负责高精度的故障检测的 OAM CPU,但这种
做法受限于 OAM CPU 的能力,故障检测的容量不能很大,并且发生故障后,还存在从主控
板到接口板的通知延迟,影响业务切换速度,另外,增加 OAM CPU 还会提高设计成本。
还是以 H3C 的 SR6600 为例,说明如何在故障检测精度、容量以及设计成本三者之间
取得平衡。SR6600 充分利用多核处理器的硬件架构,实现了高性价比的多核分布式 OAM
平面,使 BFD 会话的容量和检测性能大幅度提升,满足了大型可靠性组网的需求。图 3 为
SR6600 路由器的多核分布式 OAM 平面架构示意图:
图 3 多核分布式 OAM 平面架构
一个完整的多核分布式 BFD 故障检测工作过程如下:
1) 使能 BFD 应用以后,线卡多核处理器的一个硬件内核就被剥离出来形成一个实时 OAM
平面(如图 3 红色所示),专门用作 BFD 业务处理
2) 对端的 BFD 报文到达线卡后不上送主控,而是通过内置的硬件报文分流引擎,直接上
送到 OAM 平面进行实时处理,这个过程与主控及线卡控制平面无关,避免了高精度
BFD 应用时的本端误检测
3) 对于 BFD 检测出方向, OAM 平面会启动一个微秒级的高精度硬件定时器,检测报文
以固定的时间间隔向对端发送(最快可达 10ms),并且设置此报文在设备内部的优先
级最高,即使接口出方向极端拥塞也能优先发送,从而避免了对端误检测
4) 当检测到某一链路故障时,OAM 平面会通过硬件组播机制发送最高优先级消息,通知
系统中所有线卡的各种联动应用切换业务路径,如 VRRP、路由转发等,实现业务流量
的快速倒换
借助这种多核分布式 OAM 平面,可支持数百个的整机 BFD 会话,故障检测连同业务
倒换时间,可以达到电信级可靠性所要求的 50ms,完全满足金融骨干网的大容量可靠性要
求。
3. MSTP 组网端到端的安全
在金融扁平化组网中应用越来越广泛的 MSTP,使用的是广播型的以太网链路,这种链
路承载的金融机密数据很容易用镜像等简单的技术手段窃取,存在很大的安全隐患。那么如
何在 MSTP 组网实现端到端的安全?IPSec 加密是一个不错的方案。但在扁平化组网里,就
意味着骨干设备需提供数百个带宽从 2M 到 10M 不等的加密通道,要求加密性能高达几百
兆。而传统路由器上的 IPSec 加密卡通过慢速的 PCI 总线来传输数据,并且受到 IPSec 引擎
技术的限制,加密性能也只能达到几十兆 bps 的量级,没有办法满足上述要求。
早期的高端网络设备通常配合 VPN 网关设备完成流量加解密,或者在设备上插入加密
卡。前者会增加组网部署和运维的复杂性,后者会挤占宝贵的设备槽位资源,并且两种方案
的部署成本都比较高。
目前业界出现了基于网络多核处理器的解决方案。例如,H3C 的 SR6600 路由器就实现
了分布式 IPSec 加解密功能。该方案利用了接口板多核处理器内置的硬件加密引擎(包括多
个加密内核和算法内核),需要加解密的流量被送至加密引擎,并行地进行数据加解密处理
或者密钥快速计算,处理完的流量自行送回多核处理器完成后续的业务处理。不需要配置专
门的加密业务卡就可以获得高达 GE 线速的小报文(注:金融业务流量以小报文居多)加解
密性能。另外,分布式的设计使得接口板数量增加时,加解密的性能也随之增加,设备支持
的并发加密隧道可达数千个,满足了大容量 MSTP 组网加解密的性能需求。
4. 金融数据中心的深层安全防护
面对层出不穷的网络攻击,金融数据中心的安全防护变得愈发重要。传统的做法是在骨
干网络与数据中心网络之间串行部署各种独立的安全防护设备,如防火墙、IPS 等。但多套
设备并存,一方面增加了设备管理难度,另一方面也使得客户部署业务和后期运维工作变得
非常困难。另外,安全防护设备必须具备直达报文七层特征的深层分析能力才能过滤掉有害
的流量。这一功能无论是 ASIC 还是 NP 处理器都无法实现,传统的 CPU 系统虽然能提供相
关功能,但又因性能非常低下而无法实际部署。
业界早期的高端网络设备,在深层安全防护方面的考虑普遍不够全面。也有通过业务插
卡提供一定深层安全功能的。但因系统架构所限,业务插卡与主机系统之间几乎没有联动配
合,业务卡基本上只从主机取电。这造成很难实现融合管理,并且实现的深层安全功能限制
也比较多。
针对这一现状,少数厂商提供了较有前瞻性的设计。以 H3C 设备为例说明。H3C 在高
端路由器、交换机上全面推出了基于多核处理器的防火墙、IPS 等多种安全业务插卡,在功
能、性能、可靠性、易管理、易部署等方面实现了较好的统一:
1) 深层安全业务插卡集成了通用 CPU 高度灵活和易编程的优点,可以轻松应对复杂的 7
层状态特征匹配;另外,基于多核处理器优化的安全操作系统,对各种深层安全功能,
如防 DoS 攻击、黑名单、有害报文过滤、病毒、蠕虫以及木马过滤、深层业务识别限
速等,在处理器的多个硬件内核上实现了并行处理,处理性能达到普通 CPU 的数十倍。
并且支持多块安全业务插卡在同一台网络设备中同时工作,使设备的安全防护能力成倍
增加。
2) 此类安全插卡基于 OAA 架构(Open Application Architecture)设计,开放的管理协议使
插卡与主机有机地融为一体。通过 Web 图形界面可以直接对主机所有端口部署各种深
层安全策略。所有端口都可以共享安全插卡,节省了业务端口,降低了部署成本,同时
组网灵活性大大增强。并且,当插卡升级或发生故障时,主机还具有逃生功能,即流量
可以跳过安全插卡处理,从而保证业务不受影响。
总结
金融行业作为信息化最早也是信息化程度最高的行业之一,时至今日,信息化进程中新
的需求仍然不断涌现。这对于网络设备供应商而言,既是机遇也是挑战。业界领先的多核技
术,在金融骨干网中已经得到了大量应用并且初见成效。越来越多的设备商也认识到多核处
理器的优势并加以使用。相信随着更多类似多核的先进技术的应用,金融行业的网络建设将
变得更加可靠、安全、快速!