开源NOS:SONiC大战DENT

近十年来,白盒交换机的市场越来越大,这几年甚至已经侵蚀了霸主思科的市场主导地位。

据IDC最新的全球以太网交换机市场报告显示,“其他”类别占全球以太网交换机收入份额超过五分之一。OEM 市场份额正在缓慢而稳定地增长,白盒交换机销量有时候甚至占到市场的四分之一以上。

随着白盒交换机市场份额的不断增长,人们对开源的网络操作系统需求也越来越强烈。SDN的高速发展促使白盒产业催生了一批开源开放的NOS。

提到开源NOS,很多人可能会第一个想到SONiC,目前SONiC已经打造了一个强大的生态系统,其主要成员包括阿里巴巴、博通、戴尔、谷歌、英特尔、微软、英伟达等50 多个全球合作伙伴,许多大型云服务提供商的数据中心都出现了SONiC的身影。然而除了SONiC之外,一个后起之秀“DENT”近年来也频频出现在我们视野中,很多人戏称它为“蛋疼”。下面我们就展开讲讲。

SONiC

SONiC(全称Software for Open Networking in the Cloud)是一款开源网络操作系统,由微软于2016年发起,并在一年后贡献给了开放计算项目(OCP)。SONiC基于Linux,建立在交换机抽象接口(SAI)上,并且可以运行在各种交换机和ASIC(专用集成电路)上。换句话说,SONiC是内核补丁、设备驱动程序、实用程序等的集合,旨在解决云网络的可靠性和可用性以及演进(即添加新功能)问题。

SONiC给整个网络产业带来的最根本变革在于:

1)传统网络设备软硬件一体的封闭架构被打破,软件和硬件被彻底解耦;
2)网络软件系统的演进让快速迭代、按需定制、社区共建成为可能;
3)网络软件的开发形成了全新的共建、共享、开放的网络生态系统,快速推进网络自身的发展。

SONiC全新的理念、开放的架构,很快获得了云计算时代的用户、厂商的青睐,成为云计算时代构建网络软件系统的首选。SONiC将SAI作为南北向互联的中间件,屏蔽不同ASIC之间的驱动差异,也正是由于SAI的存在,SONiC的网络功能应用才能够支持多个厂家的ASIC。

据 Gartner 预测,到 2025 年,40%拥有大型数据中心网络(超过 200 台交换机)的企业都将在生产环境中运行 SONiC。未来三到六年内,SONiC 有望像Linux一样作为服务器操作系统。

在2021年11月的OCP峰会上,SONiC社区发布了最新更新。1)通过智能电缆实现高可靠性双 ToR 支持:这种基于 SONiC 的方法不需要向现有服务器添加更多的 NIC,并且避免了使用容易出现故障的传统 MLAG(多机箱链路聚合)机制。秘密就在电缆内部。与传统的 Y 型电缆不同,新的智能电缆包含一个微控制器和一个无中断 MUX。SONiC ToR 交换机管理智能电缆内部的 MUX,确定服务器的流量路径,并快速处理故障转移。测试结果表明,该方法通过智能电缆和 SONiC 交换机实现双重连接,故障转移时间小于 1µs。

通过智能电缆和 SONiC交换机支持双 ToR。

2)DASH 实现无限网络连接:DASH利用SmartNIC 硬件加速流处理,目标将SDN的L4性能和连接规模提高10到100倍。预计具有高速内联加密和密钥管理的加密网关、负载平衡器、服务隧道等应用将从中受益。

2022 年 2 月 17 日,ONF宣布其合作开发的P4 集成网络堆栈 (PINS) 贡献给SONiC。PINS 通过 SDN 接口和 P4 可编程管道扩展了 SONiC ,为网络开发人员提供了一个标准化的接口,简化并加速了网络编程、验证、测试和分析。

主要优势:
1)支持混合控制平面:PINS 让网络运营商可以选择网络控制平面,以及哪些部分在本地或远程运行,甚至允许控制平面与本地运行的某些功能(如BGP等传统路由协议)和集中编排的其他控制操作(如流量工程)混合。
2)将 SDN 引入 SONiC:P4Runtime 和 SONiC 结合,SONiC 将继续以现在的方式工作,同时允许用户迁移到 SDN 解决方案,无需 SDN 控制器。使用 P4Runtime,用户可以控制基本的网络功能,包括 L3 路由、WCMP路由和 ACL。
3)P4 Runtime 接口:PINS使用P4对SAI管道进行建模,SONiC使用该管道对数据平面管道进行建模。PINS 还提供了一个 P4 Runtime 接口,通过快速安全的 gRPC 连接将管道公开给本地和远程控制平面。

4月14日,SONiC宣布成为Linux基金会正式项目,这标志着SONiC加入了全球最大的开源生态系统,SONiC可以在安全、网络、云、边缘/IOT、CI/CD、硬件等方面充分利用Linux基金会的成果,加速拓展SONiC的边界——从数据中心、到边缘、到广域网、到智能网卡,为实现SONiC成为网络行业的Linux这一宏伟愿景提供了坚实的技术基础。

DENT

SONiC主要服务的对象是超大规模云提供商,而不断增长的分布式边缘市场就是 Dent 的天下了。2019 年 12 月,Linux基金会宣布推出 Dent , 初始成员包括亚马逊、Cumulus Networks、Delta Electronics、Marvell、迈络思(英伟达)和 Wistron NeWeb ,为远程园区和零售店等企业边缘网络构建开源网络操作系统。DENT 提供了一个更小、更轻量级的 NOS,用于企业网络的小型远程边缘。2020 年 12 月,Linux 基金会宣布了Dent OS第一个代码版本“Arthur”。

Dent 基于 Linux 内核,以 Switchdev 为核心。Dent 的设计使其可以像 Linux 一样轻松安装。与数据中心供应商的解决方案不同,它不需要许可费用,不需要特殊的软件开发工具包 (SDK),也不需要集成工具集。由于所有硬件都通过相同的接口寻址,因此 Dent 不仅与交换机无关,而且与底层硬件也无关。

Dent 有两个主要组件,Dent OS 和Switchdev 内核设备驱动程序模型。Dent OS 基于 Debian,使用 Linux 网络 API 和FRR(Free Range Routing)协议栈,支持BGP、RIP、OSPF、IS-IS、PIM 等标准协议。

Switchdev 是一种以太网交换模型,它允许从内核卸载数据(转发)平面,并用标准的、开源的 Linux 接口替换专有的交换机 SDK。Switchdev 是一个内核模块,它需要 ASIC 供应商开发驱动程序,但其好处是现有应用程序无需修改即可在新硬件上工作。该模型的 devlink API 提供了一种与硬件无关的方式来公开特定于设备的信息和资源(例如调试)。

2022年3月8日,Dent发布了2.0版本“Beeblebrox”,DENT 2.0 主要功能包括:

  • 使用 IPv6 和 NAT 进行安全扩展,以吸引更广泛的中小企业客户群体
  • PoE 控制,允许远程切换、监控和关闭
  • 速率限制以防止广播风暴

有预测显示,到2025年,Dent的市场规模将达到240亿美元。

同样作为开源网络操作系统,大家很容易把 Dent 与 SONiC放在一起进行比较。

尽管 SONiC 是基于 Linux 发行版构建的,但它包含一个必要的SAI接口,将ASIC 从 NOS 控制平面中分离出来,并部署了一个基于微服务的 API来将信息从 ASIC 转发到 NOS,这种容器化方法使其能够轻松适应大量交换机和路由器环境。

但这种适应性是一把双刃剑。由于 SAI 带来的复杂性,SONiC 架构实施起来并不那么容易。因此,SONiC 更多的需要搭配主流供应商的设备一起部署,更适用于大型云服务提供商。

相比之下,由于 Dent 在 Linux 内核中运行并且不需要 SAI,因此实施起来更简单且成本更低,特别适用于零售店、酒店、医院等拥有大量分支机构或者远程办公等需求的场景。

很多时候,世界并不是非黑即白的,对于NOS亦是如此。Dent和SONiC不仅不互相冲突,甚至可以共存。在某些场景下,我们可以将SONiC 用于中央或区域数据中心,Dent 部署在远程站点。Dent 可以通过以太网连接到任何其他交换机,无论交换机运行 SONiC 还是其他 NOS 软件,它都可以根据需要与之共存。

在过去的几年中,开源NOS正变得越来越强大,并且拥有一大批忠实支持者。开源NOS的服务质量 (QoS) 也在许多方面表现出优于专有NOS的趋势。毫无疑问,开源正在逐渐成为主流,尤其是随着社区和贡献者的不断壮大,开源发展势头强劲。即便如此,开源NOS仍有很长的路要走,至少在很长一段时间内,它不会完全超过或者取代专有NOS。

为了大家能够进一步探索论证开源的创新模式、协作模式、商业模式,我们将在5月24-26日举办2022网络开源技术生态线上峰会, “足不出户”尽享网络开源技术大咖带来的精彩分享。


  • 本站原创文章仅代表作者观点,不代表SDNLAB立场。所有原创内容版权均属SDNLAB,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用,转载须注明来自 SDNLAB并附上本文链接。 本站中所有编译类文章仅用于学习和交流目的,编译工作遵照 CC 协议,如果有侵犯到您权益的地方,请及时联系我们。
  • 本文链接https://www.sdnlab.com/25705.html
分享到:
相关文章
条评论

登录后才可以评论

SDNLAB君 发表于22-04-20
0