在当今由人工智能和高性能计算驱动的世界中,网络性能至关重要。各种规模的企业都依赖强大且可扩展的网络来支持从电子商务平台到创意服务的关键业务应用程序。
垂直封闭的供应链模式
在传统交换机的架构下,网络操作系统由各设备厂商基于芯片厂商提供的ASIC芯片及配套SDK(软件开发包)自行设计、开发(但不开放底层细节)。设备厂商需要开发上层APP、适配层以在特定设备上完成应用,实现各种网络功能。
传统交换机的软硬件开发均由设备厂商提供,锁定在特定芯片的生态中,系统完全封闭,如同“戴着镣铐跳舞”。已经无法适应新功能快速开发部署的需求。
SONiC的起源
为构建一个开放的系统,OCP(Open Compute Project, 开发计算项目)开始推动硬件、网络操作系统开源与标准化进程。SONiC(Software for Open Networking in the Cloud)的诞生是云计算巨头与封闭网络设备生态博弈的必然结果,其起源可追溯至微软 Azure 应对超大规模数据中心网络挑战的“自救行动”。
“将网络操作系统拆分为容器化微服务,并通过开放接口解耦硬件”Azure 网络架构师 Dave Maltz
2017年3月正式开源 SONiC/SAI,并贡献给OCP的项目,作为OCP网络组的两个子项目。其核心代码托管 GitHub(Azure/SONiC / OpenComputeProject/SAI)
SONiC的所有软件功能模块都开源,这极大地推动了OCP社区以及其他厂商/用户在开放网络方面的创新。
SONiC通过将SAI作为南北向互联的中间件,屏蔽不同ASIC之间的驱动差异,也正是由于SAI的存在,SONiC的网络功能应用才能够支持多个厂家的ASIC。网络软件建立在SAI(交换机抽象接口,SAI接口适配ASIC的工作由各个厂家实现)上,使其可以运行在各种硬件设备中,形成白盒交换机软件生态链。

我们需要知道,SONiC是成长最快的开源网络操作系统,运作在不同厂商的硬件芯片上,使网络运营商能构建和运营自己高效的网络。
SONiC的架构
SONiC构建在Linux系统之上,并且利用键值数据库(redis)、容器技术(docker)、标准化硬件接口定义等技术,使其成为一个软硬件彻底解耦、软件模块松耦合(loose coupling)、高可靠、易于扩展、开源开放的网络软件系统。其架构特点主要体现以下几个方面:
- SAI接口:SAI是SONiC的核心,并为SONiC提供了统一的API。设备厂家、网络开发者可以基于芯片厂家提供的SAI接口开发应用,而不需要关心底层硬件实现,加速产品迭代与创新;
- 数据库架构:在数据库架构方面,SONiC使用数据库架构代替原有的模块化耦合架构,将应用模块之间的传递数据模式变成应用模块之间通过数据库进行数据交换的模式,从关注流程转变为关注数据,实现了功能模块之间的解耦。数据库成为了所有模块的枢纽,模块与模块之间解耦,数据库是稳定的,各个模块升级与故障不会影响其他模块,在整个切换过程中转发面不受到影响;
- 容器化组件:容器化使得SONiC具有极高的可扩展性,网络运营管理人员能够快速引入第三方、专有或开源组件,而不对原有业务造成影响;
- 与内核交互少: 运行在用户空间的SONiC系统,只有为数很少的模块(pmon、swss和syncd)与Linux内核之间存在交互关系,从而保证了系统的稳定性。

SONiC的主要优势
- 效益: 通过利用在其支持的100多个硬件平台上运行的SONiC软件,组织可以大幅降低资本支出(CAPEX)和运营支出(OPEX)。当消除供应商锁定,允许从广泛的供应商中选择兼容的硬件平台时,资本支出就会减少。运营支出节省是在考虑人员配置、支持资源、运营简化和一致性的情况下得出的。
- 灵活: SONiC使网络设计人员和运营商能够自由定制其网络基础设施,以满足特定需求。这种灵活性在当今动态且不断发展的技术环境中至关重要,SONiC开发人员的大型社区确保可以轻松实现任何所需的特定网络功能。
- 创新: SONiC的开源性质培育了一个充满活力的开发者和贡献者生态系统,主要成员包括阿里巴巴、博通、戴尔、谷歌、英特尔、微软、NVIDIA、星融元Asterfusion和50多家全球合作伙伴。这种协作环境推动快速而稳健的创新,从而更快地采用新功能并加快生产可用性。
- 社区支持: 活跃的社群提供了大量基于经验的支持资源,包括详细的文档、用户论坛和来自许多组织的专家协助。这个集体知识库对于解决问题和应对挑战非常宝贵。
互通:作为一种架构,SONiC促进了不同网络硬件设备和组件之间的互通性,简化了网络管理并降低了整合复杂性。硬件和软件的抽象化使SONiC保持一致,无论部署的硬件类型如何。

星融元自成立之初就正式加入了SONiC社区,成为国内最早参与SONiC社区的云网络公司之一。
基于SONiC内核的网络操作系统—AsterNOS
作为国内第一批SONiC社区成员,围绕开放网络技术进行了长期、持续的投入,并结合各种典型应用场景做了足够的测试验证和缺陷修复,所提供的SONiC企业级发行版AsterNOS目前已可稳定兼容几乎所有主流商业交换芯片,构建的一系列有特色的硬件平台,能够实现从数据中心到云化园区的跨场景使用。
截至2022年底,AsterNOS已针对社区原生版本的缺陷和不足完成了大量开发工作,并切实提升了软件的可靠性和易用性,这其中就包含了VXLAN、ARP Host Routing、BGP EVPN、VLAG、Monitor-link、STP/MSTP等网络功能补充和增强,以及对思科风格的CLI的支持。
为了更加充分地发挥开源开放的力量,AsterNOS还在SONiC云原生的架构之上提供了强大的SDK能力——用户可通过丰富的API(RESTful API和系统级API)在网络设备上简单快速地开发第三方APP,以及与各种开源运维工具/平台无缝集成。



SONiC商用场景扩展
数据中心(AsterNOS-DataCenter)
主要提供 L2/L3/VXLAN/Routing/EVPN 等云数据中心所需的各种功能,以及对智算等场景的RoCE、智能路由等特性的增强支持(未来也将主要基于此版本平滑支持下一代以太网协议,例如超以太网)。
企业园区(AsterNOS-Campus)
将SONiC的核心原则——开放性、易用性和灵活性引入园区。提供VXLAN 和 BGP-EVPN 虚拟化,实现灵活的逻辑网络编排;选定型号上采用 MPLS,可实现运营商级场景的无缝 WAN 集成;部分型号采用 PTP(精确时间协议),为关键应用提供高精度时间同步的网络。
从数据中心场景到园区网络,这不仅仅是“更换操作系统”,而是一次深度集成和系统级重构。我们针对资源受限的硬件平台(甚至是 1G 端口的接入交换机)移植并优化了SONiC,并围绕其他开放网络技术(例如OpenWiFi/OLS)提供端到端的新一代云化园区网整体解决方案。
边缘路由(AsterNOS-VPP*)
从硬件角度来看,业界已有很多强大的基础平台如各类 DPU 网卡、高性能服务器或虚拟化主机;在软件方面,VPP等数据平面解决方案也已经显著成熟,两者共同为构建开放路由平台奠定了坚实的基础。
然而,SONiC 仍难以在这些新平台上提供完整的路由功能——市场上明显缺乏一种能够真正取代昂贵的封闭式黑盒路由器的商用级、成熟且用户友好的开放式路由解决方案。
AsteNOS-VPP 则是目前我们围绕SONiC的最新实践。具体而言是将 SAI 接口集成到 VPP 上,使基于 SONiC 的 AsterNOS 能够从交换机 ASIC 平台扩展到具有完整路由功能的 DPU 和服务器平台。
参考文献
mp.weixin.qq.com
SONiC Boom: Leveraging Open Source and Merchant Silicon for Today’s Scalable Network Infrastructures
-
网络操作系统
+关注
关注
0文章
7浏览量
6654 -
SAI
+关注
关注
0文章
3浏览量
2945
发布评论请先 登录
树莓派操作系统:版本、特性及设置完整指南!

企业级SSD的核心技术与市场趋势

Linux发行版江湖探秘

再获权威认证!KaihongOS通过公安部安全操作系统四级认证

解构Gartner报告:企业如何借力SONiC实现网络架构成本优化

IAR推动嵌入式开发:云就绪、可扩展的CI/CD和可持续自动化
abg欧博 KiCad 发行版 9.0.1 发布

告别复杂操作:一款在树莓派上测试操作系统的免费工具!

abg欧博 KiCad 发行版 8.0.8 发布

deepin操作系统介绍

abg欧博 KiCad 发行版 8.0.7 发布

评论