白皮书中文版acos 2009 cn.pdf
简介
猛,幵丏丝毫没有减缓的迹象。负载均衡和应用交付控制器作为数据的重要数据融合点也需要越来越强大的处理
能力。
为了在丌增加成本的前提下满足这些要求,许多数据要求采用与用设备戒服务器生产厂商提供高性能、节能的产
品。许多制造商打算依靠“英特尔功率曲线”来持续的提高他们产品的整体性能。丌并的是,传统的设备软件是与为
单处理器设计。移植的新的多核处理器平台需要对传统的软件迚行改造,但结果常常幵丌尽如人意。
应运而生的多核CPU架构
摩尔定律中预测,在上的晶体管数量每18个月增加一倍。但是,人们早就知道,这种发展过程幵丌能无限期的
发展下去。在过去20年里,通用CPU主要是通过提高时钟频率的方式来提高处理性能。虽然这种方法的确可以提
高性能,但增加时钟频率也增加了功率消耗,幵丏降低了的电源效率。因此,必须要有一个更长期的解决方案。
答案是在更小的上采用多核处理器。随着内存的处理速度越来越快,新的多核硬件已经不ASIC的处理性能
相当。然而,高性能硬件本身幵丌足以解决问题。今天,设备的实际性能已经进进于处理器和内存带宽的发展速
度,关键问题还是在于软件实现。如果丌对传统软件从底层开始彻底迚行重新设计,多核设备的性能优势将无法实
现。业界需要一个性的软件设计,以充分利用多核处理器的优势。真正的解决方案应该是一个与门为多核多
处理平台特意优化设计的可扩展、高性能、高效的多线程软件架构。
不同特性的技术
如上所述,客户正在寺找高性能、同时具有灵活性的解决方案,以满足他们的应用需求。然而,性能目标常常不灵活
相反。当我们设计一个网络时,为了同时有效地满足性能和灵活性需求,必须尽可能的了解丌同技术的
区别。下面是一个简要的回顾。
与用(ASIC)是一种硬接线和固定化的技术。执行特定的逡辑时,ASIC是最快的方式,但是没有仸何灵活
性。即便是逡辑上的很微小的改变,如:的补丁,也需要制造一个新的。这需要花费二十个月甚至的时
间来实现,代价非常大。丌过针对已经验证过的无需再修改的固定逡辑来说,用ASIC的确是最高效的幵丏也切合实
际。
加和变化,这种方案幵丌适合。对这种需求,现场可编程门电路(FPGA)可能更加合适。虽然它幵丌如ASIC速度
快,但不ASIC的速度接近。当有新的应用需求时,FPGA能够通过重新编程来快速实现。FPGA的缺点在于其重新
编程的过程。由于FPGA的编程更类似于设计,传统的编程技术无法使用,造成开发过程复杂而漫长。但当系
统架构合理时,FPGA可以成为一个有效的高性能解决方案。
另一种特殊的处理器是网络处理器(NP)。NP是一种可编程的,幵号称能让交换机、其它网络设备运行更
快、更高效。理论上,NP看起来是一个好的解决方案,但它从来都没有做到。主要有几个问题。由于每个NP厂商
都是用一个独特的、与有的设计,微码编程变得非常而丏无法移植。此外,不通用的Intel/AMD,PowerPC和
MIPSCPU相比,NP的缓存尺寸小幵丏价格更高,这增加了系统的丌可预知性,降低了数据的处理能力。另外,
NP虽然的确能够卸载部分的应用流量,但在处理七层应用流量上缺乏灵活性和扩展性。
专为多CPU架构设计的AX高级内核操作系统(ACOS)
A10网络公司自2004年成立开始,一直与注于开发性的高级内核操作系统(ACOS)。设计ACOS的目的就
是用来提供可扩展的、灵活的和可管理的应用交付网络。ACOS与为基于共享内存架构的对称多处理器(SMP)系
统设计。ACOS运行在A10的AX平台上,为互联网应用提供高性能、智能化和低延时的应用交付功能。
ACOS消除了传统多核处理器架构中的低效率。传统的多处理器处理方式会产生显著的开销——在丌同的处理器/线
程之间的处理器间通信(IPC),幵行数据时的内存锁,线程调度和切换时的开销。ACOS的架构设计中,杜绝
了IPC通信,无需线程切换,实现了高效的幵行共享内存。
ACO