使用优化的数据包软件降低网络功耗
扫描二维码
随时随地手机看文章
似乎每天都有新型可上网器件发布的消息。不管是智能手机、平板电脑、电子阅读器,或者甚至是能连接网络的电冰箱,基础设置性能需求的增加,这些器件被赋予具有直接连网的功能。不管是在用户端还是在数据中心级别,功耗是一个必须处于可控程度的领域,尤其是此需求仍在持续增加。
节能——一项系统的方法
在网络系统平台里有两种基本的节能方式。第一种是通过核心技术筛选,选择那些每瓦特能提供最优化性能的适当的原件。这能减小电源的尺寸,且能减小总体的功耗。第二种方法基于应用的效率,以及如何用最小的功耗实现最大的性能,这使得节能不仅仅体现在总体的瓦数上,还体现在初始的成本上。
在任何计算平台,最高的耗能原件之一都是处理器。在高性能的网络应用中,速度和吞吐量是至关重要的,并且使用多个处理器是司空见惯的事情,这使得节能的挑战更加严重。
增加时钟频率是提高处理器性能的传统方法。然而,功耗与时钟频率的平方成正比,这项技术增加了功耗,是不实用的。
改进的每瓦特性能
随着多核处理器架构的引入,处理器运行于更节能的时钟频率下,功耗问题得到改善。当某项应用可以逻辑地划分为相互独立的可管理的个体时,最重要的进步可以通过总体的系统吞吐量和功耗管理来取得。
图1 每瓦功耗下CPU PassMark性能示例
对于网络应用,数据处理和控制处理可以分开进行。多核处理器可以做到这一点,在总体每瓦特性能提升的同时维持功耗在可管理的级别。例如,Intel最新的Xeon 5600系列处理器——E5645,它具有六个处理器核,TDP仅有80W。
通过筛选恰当的多核处理器,我们已经解决了上面提到的节能方法的第一部分。第二部(提高效率)完全与软件以及软件如何使用相关。高性能的数据处理需要大量同时运行的个体被轮流管理,这就需要一种高效的数据包处理软件解决方案。
软件满足功耗/性能的挑战
操作系统及其堆栈网络是数据包处理效率的主要约束因素。
优化效率的关键是限制那些直接到达操作系统网络堆栈的数据包。其中一种方法是通过将网络执行分成两个层次。一种是较低的层次,为快速路径,数据主体通过它来流动。这样,输入的数据包就可以在操作系统环境之外进行处理,且避免了操作系统的耗费。那些需要复杂处理过程的相对较少的数据包,例如必要的管理、信号以及控制功能等,可以送到操作系统网络堆栈。
图2 能量效率目标
[!--empirenews.page--]
用这种方法划分数据包处理过程维持了标准操作系统应用界面,最小化或者说消除了对应用软件功能性的影响。一项额外的好处是可移植性,因为不需要重写或重新认证现有的应用。它们能快速运行仅仅是由于数据通过快速路径形成数据包。
在给定了数据处理和软件如何划分的方式之后,就可以充分利用多核处理器。可以利用有限数量的处理器核来运行操作系统的网络堆栈,从而解放其他的处理器核以运行快速路径的数据包处理。标准操作系统堆栈可伸缩性的缺乏不再会冲击系统性能,因为大多数的数据包不再会受限于不必要的延迟。快速路径的处理器核专用于执行那些能实际决定产品性能的功能。
每个网络装置都有不同的特性,然而已经看见的是基于快速路径概念的许多真实世界的例子在处理器子系统效率方面产生了7到10倍的改进。在一个典型的网络基础设施产品里,60%的功耗被处理器、内存等原件消耗,其余功率被I/O、系统管理元件以及电源等消耗。因此,如果你能降低处理器的功耗到原先的1/7,这就意味着你可以节省大约1/2的系统功耗。
随着处理器所消耗的功率极大地降低,系统电源的体积也可以减少。为了简化起见,我们估计其节能比例约为4%。那么在维持应用性能和吞吐量保持不变的情况下,总体而言,整个系统的功耗大约降低了55%。这些内容在论文的阐述里看似简单,但是通过使用这些技术真能产生实际确凿的节能目的吗?
简单的回答是:绝对可以。现在已有许多的高性能数据包处理软件解决方案。其中一个领先的供应商,即是6WIND,已经通过其运行于独立网络处理平台的6WINDGate产品展示了若干使用案例。其中一个案例是与Advantech这一通信与网络计算设备领先制造商合作的成果。6WIND基于Advantech的NCP-7560 Packetarium平台用96个处理器核,在横贯8块电路板上实现了这种解决方案。
图3 6WINDGate软件包是标准操作系统网络堆栈的方便替代品
Packetarium系统的典型功率预算为250W+480W(8×60W,为每一个处理器电路板)=730W,并且包含了用于远程系统管理和电源等模块的功耗。6WINDGate安装于标准Linux操作系统的网络堆栈,并且测试了一个具有6个端口的应用。
结果显示,只需要3块网络处理电路板就能达到原本需要8块电路板才能实现的性能。这一数量的减少意味着减少了62.5%的处理负载。在系统级别,功耗相比原先的预算大约减少了55%。优化的软件能够使得这一网络应用的总体功耗从730W降低到仅有400W。从可预见的潜在的CAPEX减少,这样的情况意味着节能40%。
图4 Advantech的 NCP-7560 Packetarium平台在8块电路板上具有多达96个处理器核
因为大部分的网络平台运行在24×7的状态下,潜在的能量和OPEX节省会非常可观。就按照节能330W来算,这也意味着每天节能大约8kWh,或者说每年大约节能2890kWh。