面对最高线速考验 SDN控制器集体陷落

简介:

近期,澳大利亚研究机构Data61和悉尼大学的计算机科研人员评估了四个主流OpenFlow控制器:NOX、Maestro、Floodlight和Beacon,最终得出结论,认为OpenFlow架构的效率低,限制了性能的改善,而且还会消耗不必要的功率。

研究人员在ArXiv上发表了针对此次测试的论文,其中OpenDaylight也是测试对象之一,但其性能未包括在报告中,报告还表示,“它的性能太差,拿出来比较不能提供任何有用的东西。”

值得关注的是,无论是在基于Tilera的芯片网络处理器上运行,还是在基于E5-2450至强服务器上运行,在所有测试的控制器中并没有一款控制器能够达到最高线速。

就CBench软件定义网络(SDN)控制器性能指标而言,最佳Tilera设置仅仅勉强达到了每秒500万个请求,与每秒2900万请求的最高线速比不相去甚远。

而英特尔过去在数据包处理方面所付出的工作终于得到了回报,在x86设置下,Beacon能达到每秒2000万个请求;而其它控制器所能达到的最大值仅为每秒700万的请求。

面对最高线速考验 SDN控制器集体陷落

由于SDN控制器处理网络数据包时用的是流量概念,就是说它们必须记住MAC地址,以便跟踪通信,而以太网交换机则只需要知道将数据包转发到哪个端口,另外,网络可扩展性也是一个大问题。

在性能指标测试里,在1000万个唯一MAC地址的请求下,没有控制器可以保持其峰值性能,基于Java的控制器(Bean和Floodlight)则在该规模上几乎陷于完全停顿状态。

该文章还指出,OpenFlow的本身存在结构性的低效率问题。文章作者提到了序列化: I/O线程,以及“学习中的交换应用里的关键数据结构:哈希表”。

据称,序列化对开销的影响最大,最有效的控制器也在数据包序列化上花了五分之一的时间,此限制是这些控制器面向对象设计原则固有的。每个独立的数据包都被控制器作为一个单独的对象处理,从而会对每个数据包引入不可忽视的开销。

最后,作者还提出了一种全新的SDN控制器设计,指出:“要用预分配的缓冲区处理新到达的数据包,而不是将其作为新的对象处理。控制器还应该考虑硬件特性,以达到在多核平台里限制高速缓存未分配的现象,以便可利用多核平台的网络芯片。”


原文发布时间为: 2016年8月22日

本文作者:李超

本文来自云栖社区合作伙伴至顶网,了解相关信息可以关注至顶网。

相关文章
|
监控 网络协议 Java
企业SDN控制器选择没有最好,只有最适合
随着软件定义网络(SDN)这个概念日渐深入人心,你自然会考虑将SDN部署到贵企业,可是现有的选择数量多得让人晕头转向。现在有许多的开源SDN方案,而且似乎每一家传统网络厂商都推出了各自的产品或平台,加入了这场混战。此外还有不计其数的SDN初创企业。
502 0
|
SDN
SDN控制器列表
目前,业界比较流行的有OpenDaylight(ODL)、ONOS、OpenContrail、Ryu、Floodlight等SDN控制器; 目前基于ODL技术部署的SDN控制器有 61%市场客户,适合大部分企业和OTT运营商; 基于ONOS技术的SDN控制器有23%市场客户。
1817 0
|
安全 SDN 数据安全/隐私保护
思科SDN控制器存在安全漏洞
本文讲的是思科SDN控制器存在安全漏洞,思科发布了软件补丁,修复Root访问漏洞。
1388 0