0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

讲讲AliNOS的起源和发展

SDNLAB 来源:阿里云基础设施 2023-01-12 14:37 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

01

阿里云基础网络架构演进

我们先回顾一下阿里云基础网络架构的演进历程,这有助于更好理解阿里云对自研平台网络操作系统的需求、AliNOS的设计理念及其发展方向。

在2017年以前,OTT作为最终网络产品用户看到的网络设备及能力如下图所示:

700420dc-8c13-11ed-bfe3-dac502259ad0.png

主要的痛点集中在以下四个方面。

● 商业网络设备软硬件设计对最终用户不透明,作为网络最重要的组成单元在规模化部署后,设备内部器件的成本、失效率都对整体网络有着巨大规模化效应;

●设备的功能实现无法按需定制,复杂的系统特性排期长无法快速交付,无法满足大规模数据中心要求;

●由于云规模化的特点,多厂商供应是客观存在的,但不同厂商的运维管控方式各不相同,这对自动化管控造成非常大的挑战;

●交付及设备修复需要通过厂商的运维体系,链条长,从而对时效满足度低。

为解决上述痛点,从2017年始,阿里云数据中心网络确立“基于全自研平台,分布式超大规模数据中心建设”的宏伟目标。构建超大规模全自研数据中心,第一出发点是要解决HAIL架构中的“Highly Availability、Intelligence”,这样才能满足大规模部署要求下的自主可控节奏、规模化交付效率和运维高自动化。

阿里云自研白盒网络设备,结合自研操作系统AliNOS,与后端的监控管控自动化作为一个整体进行设计和研发,从而得以全面解决架构、建设及运维各角度在超大规模数据中心的高可用、低成本、快速迭代及智能化的网络诉求。通过白盒化,网络产品用户看到的网络设备及能力,转化成如下图所示的特点。

7019f29a-8c13-11ed-bfe3-dac502259ad0.png

白盒设备

标准化、模块化白盒设备硬件组件与软件集成,提高效率、降低成本,从而丰富生态,加速白盒规范化网络发展。

DevOps

研发、架构、运营、自动化工具平台等多个团队参与基于自研交换机的体系建设,深度devops定制符合阿里云数据中心架构、交付逻辑和运维沉淀的重点需求,并能快速迭代,打造了专属阿里云的企业版SONiC-AliNOS网络操作系统。

IBN

通过一套网络操作系统AliNOS的标准化南北向接口,从而使得IBN在阿里云网络以更标准、更完整地规模化实现,提升网络整体稳定性。

自动网络

端到端全自研,让阿里云大规模数据中心网络实现了接近全自动化交付,和运维的自驱动自适应的高可用智能网络。

互联网重新定义了网络系统,白盒化解决了HAIL架构中“HAI”代表的高可用和智能化运维。HAIL架构中“Low Latency”所代表的高性能,则成为了驱动阿里云数据中心网络全栈深度自研的动力,给出了一个持续的发展方向。2019年,基于AliNOS构建的自研交换机及配合高性能网络的RDMA技术正式大规模上线。这是一个通过可预期网络架构中的端网融合技术及AliNOS创新,为上层业务打造的超越现有商业解决方案可提供能力的极致高性能、高稳定RDMA自研网络。

在成功高效地部署百万级端口,在数据中心内为业务提供高可用、高效率、智能化以及以RDMA为代表的高性能网络后,阿里云基础网络为进一步服务到更多最终应用和客户,提出了端网融合可预期网络(Predictable Network)的新型技术体系,这也代表着AliNOS走出了数据中心,开始走向更广阔的领域。

02

SONiC的前世今生

AliNOS是建立在SONiC基础之上的,同时它还集成了阿里云业务和运营需求的一些功能优化,在介绍AliNOS之前,我们先来回顾一下SONiC的前世今生。

SONiC(Software for Open Networking in the Cloud)是一个开源的,以Linux为基础的网络操作系统。这个系统由三部分组成。

SONiC从FRR社区(Free Range Routing) 取得了一套完整的网络协议栈,如BGP、BFD、LLDP。 SONiC通过OCP社区 (Open Compute Project)定义了一层软硬件解耦合的APIs-SAI(Switch Abstraction Interface)。这层APIs使得软件和交换芯片ASIC可以独立演进迭代。这也使得自研平台可以根据自身需求来选取适合的交换芯片ASIC,以达到最高性价比。

SONiC自身通过SONiC社区的努力把协议、配置及交换芯片ASIC组合起来,构成网络设备的控制平面。

SONiC社区是为这个开源网络操作系统的合作而成立的开源社区,现在社区有7个创始成员,几十个贡献组织和上千个做贡献的活跃成员,阿里巴巴是早期创始成员之一。这个开源社区也不是一蹴而就的,SONiC最初从一个OCP旗下的项目成长起来,于2022年正式引入Linux基金会。

网络操作系统是一个非常复杂的系统,不少设备厂商为了让一个系统支持多种网络设备、协议和不同客户的需求,不得不提升设备厂商自身网络操作系统的复杂度。如北美一家知名设备厂商为电信运营商支持IEFT YANG model,同时又要为云运营商支持Open Config YANG model,而不得不在一套网络操作系统里支持两个不同配置的YANG model做相同的事情。为了降低复杂度,SONiC最初的定位只是TOR的网络操作系统,还做了不少简化,即使这样,SONiC也还是经历了一个痛苦摸索和演进的过程,不少早期工作在SONiC上的人都有一本辛酸血泪史,大家都是一步一坑地通过摸索、完善,才逐渐爬出来的。

经过多年的积累,特别是包括阿里云在内的多个云厂商的实战经验打磨,SONiC已经成为业界认可的网络操作系统,不少初创公司以SONiC为基础很快建立起他们设备的网络操作系统,快速推出自己的产品,从而推动了整个网络新技术的快速发展,阿里云通过与社区的交流在不断贡献的同时也获取了不少适合自身发展的网络技术。

03

AliNOS的现状

AliNOS是伴随阿里云自研网络平台的成长而成长起来的,由于阿里云网络的规模庞大,厂商难以保证他们的软件能够有效支持这么大规模的设备,并跟上运营、变更的节奏,因此可以让厂商代工自研设备,但必须自己掌控整个软件栈,才能有效实现问题的快速修复、需求的快速响应、新技术的快速推出及安全的验证等要求。

“求真务实,简单开放”是阿里云基础设施团队的工作理念,在这个理念的指导下,阿里云基础网络团队选择了以SONiC为基础,研发AliNOS这款适合阿里云需求的网络操作系统。AliNOS的软件代码主要分为三大部分:SONiC的软件代码、交换芯片供应商提供的SAI/SDK相关代码,以及阿里云内部的监管控工具。SONiC的软件代码包括了FRR的网络协议栈和SONiC的控制平面部分。阿里云基础网络团队还在研发、运营过程中不断对SONiC软件代码进行优化改进。

本着简单开放的原则,阿里云也分期分批地将这些优化改进回馈社区,如去堆叠的想法及研发结果就是阿里云依据自身的运营经验介绍给社区的,目前已成为行业的事实标准,大幅降低了服务器双上连的网络系统复杂度。

AliNOS已经支持了阿里云数据中心网络5.2架构,6.0架构的大规模部署,现在AliNOS开始了7.0架构数据中心网络开发。此外,AliNOS也开始用来支撑广域网及边缘网关设备,特别是对自研路由器的支持给AliNOS带来了不少挑战。不久的将来,AliNOS还将用来管理一些新型的网络设备,如DPU等。AliNOS已经从数据中心的网络设备拓展到了广域网及边缘网的网络设备,这些新的机遇不可避免地也带来了不少新的挑战。

04

新的挑战

从交换机到路由器

阿里云在完成数据中心网络交换机全自研后,开始把成功的经验拓展到数据中心互联网络上面,着手研发路由器并推动下一代广域网架构变革。从交换机到路由器,不是一个简单的路由规模增加的问题,这个问题其实有点儿像某著名大学的化学系教授按比例放大实验室的实验给化工厂酿成事故,被隔壁大学的化工系当作反面教材一样,看似简单但有很多实际问题需要考虑,路由器有很多复杂度是交换机没有经历过的。

704625d6-8c13-11ed-bfe3-dac502259ad0.png

首先路由器要支持L3VPN,而L3VPN的路由是百万级别的,因而要在系统层面综合考虑数据平面的速率,BGP loading time、BGP路由的收敛及IGP路由变化对BGP路由收敛的影响。L3VPN的路由处理也就不再能用像交换机那样所见及所得的处理方式,L3VPN的路由转发链的设计会根据交换芯片ASIC的能力而有所不同,特别是L3VPN的VPN信息存储及处理,需要在SAI层面做适当的抽象,从而避免控制平面感知交换芯片ASIC的不同,这个抽象同时也不能绑定某个供应商的特殊处理,但又需要有前瞻性,符合交换芯片ASIC的演进道路。

其次由于L3VPN的路由是百万级别的,BGP路径的规模要到千万级别,因而对于软件内存的管理优化变得非常重要,FRR的协议栈在之前并没有这种优化需求,写代码时对内存的使用也比较随意。阿里云目前和社区在紧密合作,共同优化FRR BGP的代码,从而把FRR BGP从交换机级别的支持提升到路由器级别的支持。

另外需要对FRR BGP增加一些路由器必需的功能,如BGP advertise delay、BGP VRF leaking、BFD硬件卸载等,使得协议栈整体达到路由器可部署的级别而不是单一功能的演示。

最后由于交换机路由在千或者万级规模,交换机对路由的卸载速率没有要求,现有SONiC控制平面的路由下发通道并没有优化,这就需要AliNOS对控制平面做整体优化,让百万级别的L3VPN路由可以高速卸载到芯片ASIC,从而得到较好的BGP loading time,BGP loading time一直是各路由器厂商比拼的性能指标之一。

阿里云计划把这些在FRR及SONiC代码的优化改进在适当的时候反馈回社区。

利用IPv6简化网络协议栈

上面的L3VPN的复杂度来自于在IPv4上做多租户的VRF。在数据中心内,我们也引进了VXLAN给overlay做多租户,由于VXLAN的引进,我们又引进了BGP EVPN、OVS等协议,随着协议的不断引入,网络的复杂度也日益增加,利用IPv6简化网络协议栈是阿里云网络团队定义下一代阿里云网络架构的一个基本出发点。


IPv6技术已经存在了很长时间了,但网络应用和网络技术一直有着“鸡生蛋,蛋生鸡”的关系,因此在AliNOS上,我们不止要大力加强IPv6建设,还要加强对如何让现有的IPv4应用平稳过渡到IPv6的技术上做研发投入。只有把这个过渡期处理好了,我们才有可能实现利用IPv6简化网络协议栈,从而让网络变得像水管一样,简单、好用且可靠。

通过SRv6实现流量可控

705471b8-8c13-11ed-bfe3-dac502259ad0.png

在利用IPv6简化网络协议栈的同时,我们还需要加强对流量可控的手段。SRv6是2014年左右提出来的,随着芯片技术的成熟及协议发展的完善,越来越多的用户意识到SRv6将不再仅仅是一个网络协议,它将是一种面向应用业务的对网络编程的语言,SRv6协议开始被采纳,有人把SRv6的一些基本功能开发出来并贡献给SONiC社区,但没有人用SONiC的SRv6部署在生产网。阿里云开始在AliNOS里研发SRv6 VPN,并通过自研路由器在DCI部署这个技术,从而实现对于应用的流量调度。

SRv6 VPN的研发主要有三个部分:FRR里对于BGP协议的补充、SONiC的SWSS里对于SRv6 VPN的开发,以及SAI里增加SRv6 VPN相关的新的objects。由于SRv6 VPN是在阿里云生产网里部署的,AliNOS又增加了一些部署时必需的优化改进。阿里云基础网络团队计划把SRv6 VPN的研发成果及部署相关的改进上传至SONiC的后续版本中。

这个应用也在Linux Foundation的Open Network & Edge大会上做了交流,得到了业界很多很好的反馈,若干云厂商已经计划在阿里云上传代码到SONiC社区后,开始在它们的网络里部署SRv6 for SONiC技术。我们可以预期在不久的将来,SRv6将成为一个事实标准被各云厂商所采用。

端网融合可预期网络

7062a24c-8c13-11ed-bfe3-dac502259ad0.png

云计算重新定义的网络系统,是基于计算和网络的协同设计。近几年DPU的蓬勃发展,让服务器里的智能网卡或DPU也更多地参与到了网络里来。

AliNOS的应用范围从网络设备伸展到了网络边缘设备或DPU的SOC。随着网络边界的延伸,许多问题可以通过端网融合的方式得到更好的解决,如传统多打一拥塞的解决点在TOR或者SMART NIC上,但因为不了解服务器PCIe端的信息,不少设备厂商还提出了Smart Pipeline、Smart TOR的概念,由于没有端的信息,很多方案只能隔山打牛,费力不讨好。随着DPU的引入,网络可以开始感知到服务器PCIe端及其他更多的信息,很多问题可以利用这些新信息重新思考了。

SONiC社区也成立了DASH工作组(Disaggregated API for SONiC Hosts)来协调这个方向的工作,阿里云基础网络团队也有不少同学参与了DASH的讨论。

AliNOS作为一个端到端,各种网络设备的统一平台,可以通过telemetry让计算能够感知到整个网络的状态,一个实时的状态。AliNOS还可以通过SRv6、HPCC高性能流控算法、uFAB新型架构及Solar多路径等硬核技术与计算协同设计,让整个网络变成计算的编程平台,可以任意调度所需资源,并实现带宽和延迟(尤其是长尾延迟)的保证。

端网融合可预期网络的核心思想是让网络更加透明,让端侧(计算/存储等应用)更加方便灵活地利用网络信息进行资源调度。这种透明度使业务可以充分利用CLOS无拥塞拓扑、Path规划与调度,从而为业务提供更加高效的网络带宽资源。业务也可以通过对CLOS架构拓扑全透明感知,分布会话更合理,从而最小化单链路故障影响域,实现业务高稳定网络,在出现单点故障时,业务可以进行有序迁移,100%成功率切换,保证了故障场景下依然满足极致低长尾时延。

05

展望

阿里云基础网络团队的工作理念是“求真务实,简单开放”,AliNOS的研发也是本着这个信念进行的,从数据中心网络拓展到了广域网、边缘网及DPU,AliNOS将遇到不少新的挑战,这些新的挑战也是动力,激励阿里云基础网络团队继续做好AliNOS,让AliNOS成为建设端网融合可预期网络的基石。我们也希望通过和开源社区的合作交流,让我们的网络更加简单开放,我们的工作更加求真务实,推动全球云网络的共同发展。





审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • RDMA
    +关注

    关注

    0

    文章

    85

    浏览量

    9558
  • BFD
    BFD
    +关注

    关注

    0

    文章

    12

    浏览量

    6079
  • OTT
    OTT
    +关注

    关注

    3

    文章

    61

    浏览量

    25147

原文标题:AliNOS起源及演进—从数据中心到广域网、泛边缘及DPU

文章出处:【微信号:SDNLAB,微信公众号:SDNLAB】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    汇编语言的起源

    一、汇编语言是什么? 我们知道,CPU 只负责计算,本身不具备智能。你输入一条指令(instruction),它就运行一次,然后停下来,等待下一条指令。 这些指令都是二进制的,称为操作码(opcode),比如加法指令就是00000011。编译器的作用,就是将高级语言写好的程序,翻译成一条条操作码。 对于人类来说,二进制程序是不可读的,根本看不出来机器干了什么。为了解决可读性的问题,以及偶尔的编辑需求,就诞生了汇编语言。 「汇编语言是二进制指令的文本形式」,与指令是一一对应的关系。比如,加法指令00000011写成汇编语言就是 ADD。只要还原成二进制,汇编语言就可以被 CPU 直接执行,所以它是最底层的低级语言。 二、源起 最早的时候,编写程序就是手写二进制指令,然后通过各种开关输入计算机,比如要做加法了,就按一下加法开关。后来,发明了纸带打孔机,通过在纸带上打孔,将二进制指令自动输入计算机。 为了解决二进制指令的可读性问题,工程师将那些指令写成了八进制。二进制转八进制是轻而易举的,但是八进制的可读性也不行。 很自然地,最后还是用文字表达,加法指令写成 ADD。内存地址也不再直接引用,而是用标签表示。 这样的话,就多出一个步骤,要把这些文字指令翻译成二进制,这个步骤就称为 assembling,完成这个步骤的程序就叫做 assembler。它处理的文本,自然就叫做 aseembly code。标准化以后,称为 assembly language,缩写为 asm,中文译为汇编语言。 **每一种 CPU 的机器指令都是不一样的,因此对应的汇编语言也不一样。
    发表于 11-20 07:19

    光伏电池的发展历程和分类

    2025 光伏电池的研究起源可追溯至 1883 年,科学家 Charles Fritts 采用硒半导体材料研制出全球首个光伏电池,但该器件的光电转化效率仅为 1%。此后直至 20 世纪 50 年代,贝尔实验室研发出首款具备实际应用价值的硅基光伏电池。
    的头像 发表于 09-17 16:09 1003次阅读
    光伏电池的<b class='flag-5'>发展</b>历程和分类

    HCI杭晶电子:晶振的起源

    一、前言晶体振荡器作为核心频率控制元件,广泛应用于工业设备,安防监控设备,医疗设备,汽车电子设备,智能家居设备等领域,从宏观视角审视,全球信息化基础设施的构建与晶体振荡器的发展存在本质关联。本文将
    的头像 发表于 08-27 11:21 873次阅读
    HCI杭晶电子:晶振的<b class='flag-5'>起源</b>史

    维也纳整流器技术深度解析:起源、演进与SiC碳化硅应用

    倾佳电子维也纳整流器技术深度解析:起源、演进与SiC碳化硅MOSFET应用 倾佳电子(Changer Tech)是一家专注于功率半导体和新能源汽车连接器的分销商。主要服务于中国工业电源、电力电子设备
    的头像 发表于 08-24 18:08 754次阅读
    维也纳整流器技术深度解析:<b class='flag-5'>起源</b>、演进与SiC碳化硅应用

    晶振的起源

    一、__前言 __晶体振荡器作为核心频率控制元件,广泛应用于工业设备,安防监控设备,医疗设备,汽车电子设备,智能家居设备等领域,从宏观视角审视,全球信息化基础设施的构建与晶体振荡器的发展存在本质关联
    的头像 发表于 08-15 11:29 460次阅读
    晶振的<b class='flag-5'>起源</b>史

    无刷双馈电机专利技术发展

    机的发展进行了全面的统计分析,总结了与无刷双馈电机相关的国内和国外专利的申请趋势、主要中请人分布以及其转子结构的发展路线做了一定的分析,并从中得到一定的规律。 纯分享帖,点击下方附件免费获取完整资料
    发表于 06-25 13:10

    轮边驱动电机专利技术发展

    ,具有较高的灵敏度。 本文主要以 DWPI 专利数据库以及 CNABS 数据库中的检索结果为分析样本,从专利文献的视角对轮边驱动电机的技术发展进行了全面的统计分析,总结了与轮边驱动电机相关的国内和国外
    发表于 06-10 13:15

    物联网未来发展趋势如何?

    近年来,物联网行业以其惊人的增长速度和无限的潜力成为了全球科技界的焦点。它正在改变我们的生活方式、商业模式和社会运转方式。那么,物联网行业的未来发展趋势将会是怎样的呢?让我们一同探寻其中的奥秘
    发表于 06-09 15:25

    工业电机行业现状及未来发展趋势分析

    引言:工业电机行业作为现代制造业的核心动力设备之一,具有广阔的发展前景和巨大的市场潜力。随着技术的不断进步和市场需求的持续增长,工业电机行业将迎来更多的发展机遇和挑战。以下是中研网通
    发表于 03-31 14:35

    PID发展趋势分析

    摘要:文档中简要回顾了 PID 控制器的发展历程,综述了 PID 控制的基础理论。对 PID 控制今后的发展进行了展望。重点介绍了比例、积分、微分基本控制规律,及其优、缺点。关键词:PID 控制器 PID 控制 控制 回顾 展望
    发表于 02-26 15:27

    2024年risc-v的发展总结

    新的一年已经来临,请问有人能将risc-v在2024年的发展做一个比较全面的总结?
    发表于 02-01 18:27

    光伏产业的发展历程:从萌芽到蓬勃发展

    光伏产业的发展历程充满了挑战与机遇,见证了人类对清洁能源的不懈追求。其起源可追溯到 20 世纪 50 年代,贝尔实验室成功研制出第一块实用的硅基太阳能电池,虽然当时的转换效率仅为 6%,但这一突破性
    的头像 发表于 01-23 14:29 1435次阅读

    汽车电子技术的发展与变革

    汽车,这个现代社会中不可或缺的交通工具,正经历着一场由汽车电子技术引领的深刻变革。从最初简单的电气设备到如今高度智能化、电子化的复杂系统,汽车电子技术的发展历程不仅是科技进步的见证,更是汽车行业迈向
    的头像 发表于 01-21 13:29 1134次阅读

    模拟IC设计中Spectre和HSPICE仿真工具的起源、差别和优劣势

    本文详细介绍了在模拟集成电路的设计与仿真领域中Spectre和HSPICE两款仿真工具的起源、差别和优劣势。 在模拟集成电路的设计与仿真领域,Spectre和HSPICE是两款具有广泛应用的仿真工具
    的头像 发表于 01-03 13:43 3080次阅读

    risc-v发展的周期是多久?

    risc-v已经发展有一段时间了,请问每次大的更新换代大概间隔多长时间呢?
    发表于 12-29 18:39