专栏首页SDNLAB白盒交换机:实现网络可编程性的三种方式

白盒交换机:实现网络可编程性的三种方式

编者按:白盒交换机将软件与硬件进行解耦,用户可以在白盒交换机上自主灌装软件,用户的选择空间更大,而且性价比非常高。在这个“用户为王”的时代白牌交换机受到越来越多人的推崇。随着SDN的初始用例不断增多,白盒交换机的基本设计方案在未来SDN发展中将占据越来越重要的位置。

白盒交换机通常被视为一种降低成本的方法,但是它更大的价值在于提高网络的可编程能力和自动化。

哪怕是最苛刻的IT专业人员,有一个词也会很吸引他注意:节约成本。当市场中出现白盒交换机时——即一种预安装第三方网络操作系统的消费类交换机硬件,网络工程师一般首先听到或了解到的是这种新方法有可能节约成本。

但是,随着网络可编程性的概念变得越来越受到关注,节约成本已经不是白盒交换机中最受关注的方面了。除了节约金钱,它们还可以增加网络自动化、可编程性和灵活性,这些改进也有其实际价值。

根据波士顿Doyle Research首席分析师Lee Doyle的观点,包含软件和硬件在内的白盒交换机市场预计将在2018年增长到5亿美元。但是,现在仍然是软件定义网络(SDN)的发展早期,因为白盒交换机与网络操作系统市场目前还很小。Doyle指出,作为对比,像Cumulus Networks和Big Switch Networks这样的白盒交换机供应商现在的“收益可能只有200万美元”。

他补充说,目前主攻白盒交换机的公司主要有三类:有资源部署和维护这些交换机的互联网级别公司、更多考虑绿地部署风险的数据中心运营商和一些基于云但未达到互联网级别的公司。然而,大多数企业和服务提供商并不满足于任何一个网络操作系统。对于大多数公司而言,他们的操作系统选择最终取决于作出采购决策的负责人的专业技术背景。

Gartner公司杰出分析师Joe Skorupa说:“服务人员会选择Cumulus Networks或Pica8,而网络人员则会选择Big Switch或Pica8。Cumulus Networks有适用于数据中心的白盒交换机。人们通常会用它来支持SDN堆叠网络,但是它本身并不是SDN。”

下面将针对这个特点来介绍三个使用拍盒交换机实现网络可编程性的用例。

像管理服务器一样管理交换机

DreamHost LLC是洛杉矶一家网站托管公司和云提供商,它在白盒交换机上使用Cumulus Networks的Cumulus Linux网络操作系统来高效地扩展和管理自己的开源多租赁公共云服务:DreamCompute。

DreamHost负责云的副总裁Jonathan LaCour说:“由于运行着Cumulus Linux网络操作系统,所以我们将交换机看作是另一种Linux服务器。我们也用相同的团队、工具和流程去管理我们的Linux服务器上的Cumulus Linux。”

这与DreamHost的遗留交换机有很大的区别,后者运行着预安装的私有软件和工具,与IT团队用于管理和监控计算与存储设备的Linux工具完全不同。

LaCour说:“Cumulus Linux帮助我们将一种特殊的网络环境变成一种不那么特殊的通用环境。”

Cumulus白盒交换机采用的方法将来自大型传统交换机供应商的私有交换机接口更换为所有Linux服务器管理员都能理解的通用Linux接口。

在白盒交换机上运行Cumulus Linux可以帮助DreamHost提升Linux平台的性能和实现网络可见性,同时让它的工程师能够使用现有的Linux服务器管理工具实现网络自动化。采用与Linux服务器自动配置安装过程的相同方法,除了一些小更新和修改之外 ,完全不需要更多的特殊考虑,Cumulus Linux控制器会自动配置其白盒交换机安装设置,以满足DreamHost的网络要求。这个网络包括客户Pod(自包含硬件单元,表示DreamHost云的一个可用域)和用于管理用途的命令与控制Pod,它们运行着Cumulus Linux和40GbE叶脊架构。

LaCour说:“虽然网络工程师现在可以通过自动化、CPI(命令行接口)和API编程控制交换机,Cumulus Linux的特别之处是它的CLI和API与每一位系统工程师和云工程师长期使用的Linux工具完全相同,如路由器命令和ipconfig等。他们完全不需要学习新东西,所有东西都由硬件加速。”

Linux服务器与运行Cumulus Linux的交换机之间并没有很大的差别——主要差别就是每一台设备上的端口数量。一个Linux服务器可能只有2~4个2层和3层连接以太网端口,而Cumulus白盒交换机则有48个10GB端口。

DreamHost使用DevOps工具Opscode Chef实现服务器与网络编制。由于每一个交换机都运行着版本2和版本3的开放最短路径优先(Open Shortest Path First)协议,因此从配置到故障修复等所有网络操作都变得非常简单。DreamHost工程师根据Chef手册和秘诀(一组可重用配置说明)编程实现Cumulus Linux交换机的目录管理和配置。它的IT团队使用基于Python编写的工具Graphite来监控交换机。

交换机会出现故障,而当它们出现故障时,Cumulus Linux会让DreamHost的网络保存路由数据并保持正常运行,直到交换机完成更换,即从网络移除故障交换机,然后使用剩余交换机自动重建网络结构。然后,控制器会配置新交换机,然后自动将它添加到网络中。这样就可以将平均修复时间从几小时减少为几分钟。

但是,与所有网络平台一样,Cumulus Linux也不是完美的。

LaCour说:“在一些复杂特性上,网络操作系统仍然无法与传统交换机架构相媲美。但是,这与我们的情况没有关系,因为我们更愿意保持底层网络的简单性,同时在SDN堆叠网络上添加白盒交换机所缺少的更多特性。”

本文分享自微信公众号 - SDNLAB(SDNLAB)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2015-01-19

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • “白牌”来挑战 传统品牌交换机还行吗?

    编者按:“白牌”交换机的呼声甚嚣尘上,“控制器+白牌交换机”似乎已经是黄金组合,其实不然。瘦死的骆驼比马大,传统交换机横行这么多年必然有其可取之处,因此在白牌交...

    SDNLAB
  • 基于Mininet的MAC地址学习实验

    1 实验目的 了解交换机的MAC地址学习过程; 了解交换机对已知单播、未知单播和广播帧的转发方式。 2 实验原理 MAC(media access contro...

    SDNLAB
  • P4:开创数据平面可编程时代

    现有的SDN解决方案将控制平面与转发平面分离,并为我们提供了控制平面的可编程能力。而事实上,目前通过软件编程实现的控制平面的功能,在传统的高级交换机和路由器上也...

    SDNLAB
  • 基于Mininet的MAC地址学习实验

    1 实验目的 了解交换机的MAC地址学习过程; 了解交换机对已知单播、未知单播和广播帧的转发方式。 2 实验原理 MAC(media access contro...

    SDNLAB
  • P4:开创数据平面可编程时代

    现有的SDN解决方案将控制平面与转发平面分离,并为我们提供了控制平面的可编程能力。而事实上,目前通过软件编程实现的控制平面的功能,在传统的高级交换机和路由器上也...

    SDNLAB
  • H3C交换机型号区分

    第一个5代表千兆交换机,如果是3代表千兆上行,百兆下行。如果是7代表高端箱式交换机。9代表核心箱式交换机

    用户2398817
  • 百年老图难倒谷歌AI,网友:是鸭是兔?连我都不能确定

    自从1892年首次出现在一本德国杂志上之后,这张图就一直持续引发争议。有些人只能看到一只兔子,有些人只能看到一只鸭子,有些人两个都能看出来。

    量子位
  • Awesome Java - 2017 Java 资源大合集

    A curated list of awesome Java frameworks, libraries and software.

    大数据工程师-公子
  • jquery的checkbox,radio,select等方法总结

    jquery的checkbox,radio,和select是jquery操作的一个难点和重点,很多前端新手对其了解不是很透彻。时间久了不用,我在写的时候有时也难...

    奋斗蒙
  • ReflectASM-invoke,高效率java反射机制原理

    前言:前段时间在设计公司基于netty的易用框架时,很多地方都用到了反射机制。反射的性能一直是大家有目共睹的诟病,相比于直接调用速度上差了很多。但是在很多地方,...

    生活创客

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动