《给力吧,x86》专题连载四:网络通信平台评估软件NCPBench应用分析

Sina WeiboBaiduLinkedInQQGoogle+RedditEvernote分享




x86网络通信硬件平台的迅猛发展,已经吸引了许多厂商、用户的关注。在进行评估测试时,如何才能准确、便捷地了解硬件平台的整体性能,是所有人都关心的问题。本期,就让我们聚焦于新兴的评估软件NCPBench,感受一下它诸多与众不同的特性。

在上一期连载中,我们介绍了与北京市某学校信息中心合作进行的一次硬件平台选型测试,并以此为依据,证实了x86平台在网络业务处理方面的潜力。随后一段时间内,我们收到了许多来自厂商、用户的咨询;个别用户甚至愿意提供更完善的环境,希望我们将这一系列测试长期进行下去,持续公开更详细的测试结果。对于来自读者的热情关注,我们表示感谢,并将在后续连载中安排更多平台的测试分析。同时,我们也在这里介绍一款经常使用的网络通信平台评估软件NCPBench,供读者进行独立的性能评估。

以互联网的名义

NCPBench是近期兴起的一款测试软件,用于评估x86硬件平台做网络业务处理时的性能。在我们看来,该软件融入了大量的互联网基因,与日常使用的诸多软硬件评估产品有着明显的不同。众所周知,用户参与是互联网产品成功的基本要素,NCPBench显然抓住了这个要点,在产品发展的方向性上与用户需求保持着高度一致。该软件采用了十分开放的构建模式,版本升级比较迅速。与之对应的,在主要功能保持稳定的情况下,再根据用户反馈需求的迫切性,逐步完善产品的细节功能。而互动的效果则取决于用户数量与质量,所以NCPBench本着“让更多人使用”的理念,采用了免费的许可授权模式,允许甚至鼓励被用于包括商业在内的各类评估环境。

NCPBench与其他软硬件评估产品的第二个不同,体现在操作的便捷性方面。一般来说,网络通信、信息安全等领域的测试解决方案都比较复杂,使用时需要较高的专业素养,配置过程也相对麻烦。NCPBench则很好地简化了用户端的工作,使用时只需对网络接口、业务模式等几个必要环节进行设置,即可进行性能测试。一键式安装也是非常实用的功能,我们拿到新的硬件平台,用几分钟时间就可以将NCPBench安装到本地或USB存储设备上,而不必经历从磁盘分区到编译的诸多步骤。该软件还内置了常见的硬件驱动,在多数平台上可以直接发挥出硬件的所有潜力。

利用NCPBench,我们可以评估任何x86平台的网络业务处理能力。现阶段该软件提供了“转发”与“业务”两种应用模型,前者不对数据包进行任何处理,考察的是硬件平台的数据包转发极限;后者将建立数据流的概念,其业务复杂度与NAT、状态检测引擎类似。通常,我们会测试x86硬件平台在两种模型下的吞吐量与延迟,当然这些结果都是理论值,仅供评估参考。根据经验来看,设备在真实流量下的综合效能,如果能达到模拟测试环境中的50%,就已经相当难得了。不过“转发”模型下的性能还是很重要的,毕竟对于没有任何加速逻辑的x86平台来说,数据包纯转发的性能是一个极限标杆。没有高性能转发做支撑,任何上层业务都将是纸上谈兵。

高性能的诱惑

众所周知,目前x86平台用做网络业务处理时,首先要解决的就是多个处理器内核间的调度与资源分配问题。如果使用传统的处理模型,很可能导致资源使用的不平衡,无法发挥出硬件平台的整体性能;而多核并行处理的模式,虽然在理论上可以提升性能,实际使用时的效果却大多难令人满意。NCPBench在这方面就显得非常灵活,用户可以人为设定用做转发及业务处理的内核数量,并且转发与业务在每个独立内核上也都是并行处理,系统呈纯SMP形态。该软件也不像某些同类产品那样必须人为地将网络接口与处理器内核进行绑定,而是根据硬件平台配备的接口种类及数量,自动建立关联关系。

经过多次测试,我们已经确认NCPBench在x86平台上可以做到非常强悍的数据包转发性能。现有测试数据中,64byte UDP数据包的最大转发速率接近30Mpps,是在英特尔Sandy Bridge搭配i82599万兆网卡的平台下测得。此时使用RFC 2544规定的7种帧长的数据包测试转发延迟,时间也均在10微秒以内。这意味着,x86平台用做20G/40G环境中的业务处理,并非是遥不可及的目标。需要注意的是,x86平台所能达到的的数据包转发能力与处理器、桥片、网卡芯片等都有很大关系,如果在硬件规格上无法很好地匹配,性能瓶颈就会过早地出现。我们发现,网络通信硬件平台大多经过有针对性的定制,硬件搭配相对合理;服务器的配置则大多是计算远强于网络,很可能要另行采用高性能网卡以达到更快的转发速度。

为了让用户更方便地了解x86硬件平台的网络处理性能,NCPBench还内置了一个自评估工具。该工具的使用极其简单,只需用网线将要测试的接口两两互联,就可以在环路内生成指定帧长、方向、强度的UDP测试流量,对硬件平台自身进行测试。我们注意到,在多数情况下,使用自评估工具得到的性能值都较测试仪得到的略低,但观察到的最大一次误差也仅在3%以内,还是具有比较强的参考价值。

(1个打分, 平均:4.00 / 5)

雁过留声

“《给力吧,x86》专题连载四:网络通信平台评估软件NCPBench应用分析”有15个回复

  1. Arak 于 2011-12-08 5:56 下午

    这东东有地方下载么?

  2. 新手 于 2011-12-08 6:36 下午

    what is NCPBench? 跑在什么OS上?为啥说是“经常使用的网络通信平台评估软件”?

  3. 新手 于 2011-12-08 6:43 下午

    不好意思,没太看明白,NCPBench是跑在被测设备(DUT)上,还是跑在产生流量的设备上(相当于一个测试仪)?

  4. 弯曲读者 于 2011-12-08 7:07 下午

    请问哪里可以下载NCPBench免费软件?

  5. blue 于 2011-12-08 8:12 下午

    “所以NCPBench本着“让更多人使用”的理念,采用了免费的许可授权模式,允许甚至鼓励被用于包括商业在内的各类评估环境”

    怎么免费啊? 网上搜了下,就你几篇文章有提

  6. 抓狂 于 2011-12-09 9:39 上午

    高手啊,一个系列到第四篇才把广告打出来

  7. 理客 于 2011-12-09 11:56 上午

    老韩能否晒一下在ACL(五元组)+QOS(CAR+CBWFQ)下的测试条件和结果?

  8. DK101319 于 2011-12-10 6:16 下午

    NCPBench
    貌似是panabit的一个产品.
    不过还真找不到可下载的地方

  9. aguai 于 2011-12-11 6:44 上午

    这个软件我找了很久都没找到,哪儿有卖?老韩别藏着掖着啊,好东西要分享啊。要干货。搞个来测试我的WAF。

  10. 大兵小将 于 2011-12-13 9:39 下午

    to 老韩,Panabit:
    NCPBench 的事情到底给个说法啊。

    to 首席:

    不能放任他们当闷葫芦。

  11. 陈怀临 于 2011-12-13 10:24 下午

    我也有点糊涂。扯了半天,NCPBench在哪里?再这样下去,我就,我就,。。。

  12. Panabit 于 2011-12-14 4:12 上午

    回首席:这段时间太忙,等这阵子忙过我会整理出来。

  13. to 新手 于 2011-12-16 9:10 上午

    我以一个在hillstone工作过的老员工客观的评价,hillstone是个非常不错的公司,很多东西值得做技术的人去学习,氛围也不错,希望不会有错误的决策,国内安全界太缺少这样踏实做技术的公司了,当然任何公司都不会十全十美

  14. 理客 于 2011-12-17 1:18 上午

    说起MZ ZY太复杂而沉重,人类自私的本质让利己性成为本能,这也是宗教存在的一个积极意义。
    MZZY社会如何解决争议和批评?基本原则还是MZ的方法,但话语权和媒体控制权的争夺却从没有停止过。德国的右翼纳粹是一直存在的,但这些年却一直都很难发展,对于走在法律边缘的激进右翼,如何控制是让一个MZ政府很头痛的方式,而的德国民众用了相对MZ的方式,比如当右翼集会的时候,普通百姓也集会并把少数右翼围在中心,使其宣传无力发挥,只好渐渐自行解散。所以MZ的方法解决争议不是让大家闭声,而是让所有人,只要不违法,都能正常的发出自己的声音,让所有声音在一起,去判断事情的真相。当然,你也有沉默的权利,比如HW过去的媒体策略:沉默不辩解,你们说你们的,我只按照我认为正确的做。
    当然,对于具有私有性的论坛,关闭袭击不喜欢的言论是坛主的权力,不喜欢可以离开;只是人总是有感情的,谁能心中有情,手中无情?西门吹雪也不行。开放性媒体,一样会有自己的倾向,但不能太过关闭
    我最prefer开放ZY的论坛,即使里面有很多各种不是你喜欢的声音,但这才是真实的江湖,我们真的担心MZZY会经常让正确的人蒙冤吗?如果真的是这样,那还要MZZY干嘛?

  15. kevint 于 2011-12-17 1:49 上午

    怎么什么都能扯到hs上去。。。

    那种捕风捉影式的无聊对话自由下去就是无穷尽的口水战。不是人人都有兴趣看hs那点八卦的。要吹水上天涯去吹好了