扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
作者:ZDNet网络频道 来源:ZDNet网络频道 2010年7月26日
关键字: 风河
对于电信运营商来说,客户满意度的降低就意味着营业收入的损失。随着人们手中的手机功能越来越强大,家里的电视画面越来越精美,人们对网络流量的需求也爆炸性地增长。从技术上来看,满足这些需求都将离不开多核处理器芯片。
传统的网络设备设计架构难以跟上移动装置、社交网络、多媒体内容所带来的爆炸性的带宽需求,而以多核处理器为基础而设计的网络设备不仅可以大幅度提升性能,而且占用的机房空间更小,重量更轻,能耗也更低,可扩展性也更好。所以,运用这种新的处理器芯片,可以让运营商以更低的成本满足更高的客户需求。
不论是在网络核心设备中,还是在网络边缘的接入设备中,多核技术的应用都在快速普及。有的处理器内核只有2个,有的则多达32个以上,无论如何这些设备都从多核技术获得了极大的效益。这些效益主要是来源于两个方面:
第一,用更少的芯片实现更多的功能,从而降低了制造和拥有成本。这基本上是采用多核芯片自然而言就能获得的好处,不用花费太多心思,但其效益需要从设计、生产、使用到报废整个产品生命周期中才能体现出来。
第二,通过网络加速技术提高了性能。这方面的效益是立竿见影、立刻显现的,但与产品架构设计有着极为密切的关系。
所以,从产品开发的角度来看,我们必须花费更多的精力去研究多核产品的设计架构。
网络设备的架构选择
我们知道,多核处理架构基本上可以分为对称多处理(SMP)和非对称多处理(AMP)两种。SMP架构的特征是同等地看待每一个处理器内核,并不会特别指定哪个内核或者哪些内核去执行哪个特定的任务,完全由操作系统来平均地分配和协调内核之间的工作。AMP架构的特征是与SMP相反,不是同等地看待每一个处理器内核,而是把特定的任务分配给特定的内核来运行。这样做的好处是减少了重复性工作的相关数据切换,从而获得较高的运行效率。
SMP架构因为每个内核都可完成任何任务,所以内核利用率较高,但多个内核置于同一个操作系统管理之下,就会存在一些管理开销。AMP架构让特定的处理器内核专门执行特定的任务,因此可以针对某些专门的业务,通过专门优化来获得更高的性能。网络交换就是一种具有明显特殊性的业务,如果以AMP架构来实现,并且在设计架构方面善加优化,就会取得比SMP更高的性能。
值得注意的是,如果我们想获得一个真正高效的网络交换架构,仅仅了解多核处理器架构是不够的,很难全面发挥多核处理的效益。更先进有效的方法是综合考虑到多核处理器、操作系统和网络协议等三方因素来进行产品架构设计。
首先来看当今的多核处理器,它绝不仅仅是把多个处理器放进同一个芯片那么简单。领先的处理器提供商在其产品中植入了很多有用的特殊功能。例如,散列(hashing)、高速缓存(caching)、处理器间通信、中断管理和内存管理等。这些功能特性如果能够善加利用,就会让AMP架构高效率地运行起来,这就需要在软件上进行专门的优化。
再来看操作系统,它在多核处理环境中扮演重要角色,要提供高效的结构来引导多个内核,实现处理器间通信、系统感知、电源管理和上下文切换等功能。在AMP系统中,为了协调多个操作系统的运行,必须具备高效率的消息机制。同时,操作系统中的调试工具也不可忽视。性能调优工作也需要特别的分析工具,以便同时监控多个内核,综合与过滤消息,并且在多个内核中设定断点。对多核系统进行调试是一项非常复杂的工作,如果没有恰当的工具,肯定会束手无策。
最后来看网络技术。毫无疑问,如果不懂网络技术,就不可能构造一个有效的包处理系统。不过,要用多核处理器来构造包处理系统还会遇到更复杂的问题,而且这些问题尚未引起足够的重视。因此我们看到,有人简单地把单处理器中的网络堆栈搬到多核架构中,这肯定是可以运行的,但效率肯定不会高。
要充分利用多核环境的特色,必须处理好通用数据结构、连接管理、控制同步和数据平面操作等重要问题。因此,必须对网络堆栈的2、3、4层和高层协议有较深的理解,这样才有可能建构符合行业标准并且充分利用多核优势的网络环境。
有了对多核处理、操作系统和网络技术的了解,自然就明白,采用AMP架构来进行包处理是比较合理的,因为要把整个系统划分为控制平面和数据平面两大部分,再分别为这两类工作指定专门的处理器内核。
风河网络加速平台
最近,风河公司发布了专门针对网络加速的多核处理开发平台Wind River Network Acceleration Platform(风河网络加速平台),其最大的特色就是以超高的速度进行IP包转发,目的是为了帮助电信设备制造商快速低成本地推出基于多核处理的网络设备。
数据平面是多核网络加速的关键点。为了实现高性能包处理,风河提出了全新的思路,在网络加速平台中建立了一个快速通道。控制平面由运营商级的操作系统(风河Linux或者VxWorks系统)来管理。
在建立一个数据流时,首先要进入控制平面来设定转发信息和其他连接特性,这些信息将会用于随后的数据通信。这种设计思路的目的是让数据包头检查与修改、加密/解密、地址翻译和标签操作这些在数据平面里大量重复的工作尽量少去跟控制平面发生交互。在数据平面中则包含了一个网络加速引擎,并且专为在Wind River Executive(一个专门针对具体任务的小型操作系统)上运行IPv4/IPv6包转发协议而做了设计和优化。
风河网络加速平台还包括一个Hypervisor,为各个内核上运行的软件提供运营商级的保护。为了处理多核软件开发过程中出现的各种复杂问题,风河还提供了一整套旨在有效地开发、测试和调试软件的工具以及复杂多核环境下的仿真系统。
根据在基于Intel®至强® 5500系列处理器的参考板卡运行Linux系统对IPv4数据包转发性能进行的测量,风河网络加速平台仅用4个处理器线程就达到了每秒2.1亿个数据包的转发速度。这个速度5倍于同样系统上采用本地Linux网络在对称多处理(SMP)模式下的性能。虽然没有单一的指标可以表现每个系统的性能,但第3层转发是用来描述数据包处理效率的一个基本指标。利用风河的高效设计,只需要使用50%的可用内核进行数据包转发,就可以达到与使用超过14千兆以太网端口相当的转发吞吐量。
风河产品的新思路
在风河的产品组合中,除了风河通用平台(Wind River General Purpose Platform),还有一系列面向行业市场的平台,例如汽车、消费品、工业控制和网络通信专用平台,再就是风河传统优势的面向航空航天与国防军工的几个平台。最近推出的风河网络加速平台(Wind River Network Acceleration Platform)有着特殊的意义。
相对于其他风河平台,风河网络加速平台的规模很小,面向的市场更有针对性。这款产品的推出预示着,风河公司已经把注意力集中于面向更多更专业的应用领域,以充分发挥多核处理的潜力为目标,精心配备所需的各种软件部件,推出集成化的灵巧型解决方案。
面对复杂的多核环境,风河已经拥有了稳定可靠的操作系统,以及覆盖开发、测试、调试和方针等全部功能的高效率工具套件,并且可以支持SMP、AMP、Supervised AMP、虚拟化和Offload等多种架构。把这些领先的功能部件组合起来,针对非常特定的行业应用,提供集成化的解决方案,这将是风河今后的一个重要战略。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。