1. 尊龙凯时

      新一代开源网络操作系统SONiC 之二

      2. SONIC

      有了 SAI, 这让网络操作系统不再关心底层怎么与专有硬件通信,操作系统厂商可以专注于网络操作系统的开发,其中以 SONIC 最为突出,他是 Microsoft/Azure 网络操作系统,由微软和多家厂商一起开发,并且开源。

      2.1. 什么是SONIC?

      SONiC 是一个基于 Linux 的开源网络操作系统,运行在多个供应商和 ASICs 的交换机上。SONiC 提供一整套网络功能,如 BGP 和 RDMA,这些功能在一些最大的云服务提供商的数据中心经过生产验证。它为团队提供了创建所需网络解决方案的灵活性,同时利用大型生态系统和社区的集体力量。

      2.2. SONIC 系统架构[13]

      SONIC 系统的体系结构由各种模块组成,这些模块通过一个集中的、可伸缩的基础设施彼此交互。这个基础结构依赖于 redis-database 引擎的使用: 键值数据库提供独立于语言的接口、数据持久性、复制和所有声音子系统之间的多进程通信的方法。

      SONIC 通过依赖 redis-engine 基础结构提供的发布者/订阅者消息传递范式,应用程序可以只订阅它们所需的数据视图,并避免与其功能无关的实现细节。

      SONIC 将每个模块放在独立的docker容器中,以保持语义仿射组件之间的高内聚性,同时减少脱节组件之间的耦合。每个组件都被编写为完全独立于平台特定的细节,而这些细节是与低层抽象交互所必需的。

      SONIC 将其主要功能组件分解为以下 docker 容器:

      • Dhcp-relay
      • Pmon
      • Snmp
      • Lldp
      • Bgp
      • Teamd
      • Database
      • Swss
      • Syncd

      2.3. SONIC 的功能发展

      尊龙凯时来看一下 SONIC 的功能发展 (来源于 SONIC 官网) [14]

      Release Release Date SAI version Features Included
      SONiC.201705 5/15/2017 0.9.4 BGP
      ECMP
      LAG
      LLDP
      QoS – ECN
      QoS – RDMA
      Priority Flow Control
      WRED
      COS
      SNMP
      Syslog
      Sysdump
      NTP
      COPP
      DHCP Relay Agent
      SONiC to SONiC upgrade
      Multiple Images support
      One Image
      SONiC.201709 9/15/2017 0.9.4 VLAN
      ACL permit/deny
      IPv6
      Tunnel Decap
      Mirroring
      Post Speed Setting
      BGP Graceful restart helper
      BGP MP
      SONiC.201712 12/15/2017 1 Fast Reload
      SONiC Support SAI 1.0
      TACACS+
      LACP Fallback
      MTU Setting
      Vlan Trunk
      Static Port breakout1
      Dynamic ACL Upgrade
      SWSS Unit Test Framework
      CobfigDB framework
      SONiC.201803 3/15/2018 1.2
      Critical Resource Monitoring
      MAC Aging
      IPv6 ACL
      BGP/Neighbor-down fib-accelerate
      PFC WD
      SONiC.201807 7/30/2018 1.3
      gRPC
      Dtel support
      SONiC Architecture and User Manual (Documentation)
      Sensor transceiver monitoring
      LLDP extended MIB: lldpremtable, lldplocporttable, lldpremmanaddrtable, lldplocmanaddrtable, lldplocporttable, lldpLocalSystemData
      SONiC.201811 11/30/2018 1.3 Release Note
      Debian Kernel Upgrade to 4.9
      Warm Reboot
      Incremental Config (IP, LAG, Port shut/unshut)
      Asymmetric PFC
      PFC Watermark
      Routing Stack Graceful Restart
      Basic VRF and L3 VXLAN
      SONiC.201904 4/30/2019 1.4 Release Note
      FRR as default routing stack
      Upgrade each docker to stretch version
      Upgrade docker engine to 18.09
      Everflow enhancement
      Egress ACL bug fix and ACL CLI enhancement
      L3 RIF counter support
      PMon Refactoring
      BGP-EVPN support(type 5), (related HLD Fpmsyncd,Vxlanmgr,template)
      Transceiver parameter tuning PR pending on CR sign off
      SONiC.201910 10/30/2019 1.5 Progress Tracking
      ZTP – design review in progress
      BFD – SW – 100ms interval from FRR
      NAT
      STP/PVST
      Mgmt VRF
      Multi-DB optimization
      Test to Pytest
      sFlow
      Management Framework (Tentative )
      Platform Driver Development Framework
      Build Improvements
      Error handling enhancements
      L2 functional and performance enhancements
      L3 perf enhancement
      BroadView BST
      VRF
      Configuration Validation
      Dynamic Break Out
      Platform APIs move to new APIs *
      Sub-port support
      Backlog
      CLI framework
      VRF (Taken)
      L3 MLAG (Taken)
      EVPN
      RDMA CLI enhancement
      Virtual path for streaming telemetry (pushed off)
      Management VRF (pushed off)
      Port and Vlan configuration and validation (TBD)

      3. 结束语

      今天尊龙凯时先聊这些,尊龙凯时大致了解一下开放型网络包含的几个重要组件,开源软件的概念,开源的网络操作系统的概念,开放的计算硬件有何而来,软件定义网络的概念,但是开放型网络中还包含以下组件:

      • 网络功能虚拟化
      • 云计算
      • 自动化
      • 敏捷型开发方法和处理过程

      SONIC 作为网络操作系统在其中扮演很重要的角色,如果想进一步了解 SONIC 子系统的各个功能以及逻辑,网络功能虚拟化,云计算,网络自动化,以及敏捷型开发方法和处理过程,请关注尊龙凯时。

      参考文献:
      [1] http://en.wikipedia.org/wiki/Software-defined_networking
      [2] http://en.wikipedia.org/wiki/Open_source
      [3] http://en.wikipedia.org/wiki/Open-source_software
      [4] http://www.opencompute.org/about
      [5] http://aptira.com/what-is-open-networking/
      [6] http://events19.linuxfoundation.org/wp-content/uploads/2017/11/Open-Hardware-and-Open-Networking-Software-How-We-Got-Here-and-Where-We-are-Going-Steven-Noble-Big-Switch-Networks-_-NetDEF.pdf
      [7] http://www.opencompute.org/wiki/Networking/ONIE
      [8] http://www.openswitch.net/about/
      [9] http://opennetlinux.org/
      [10] http://events19.linuxfoundation.org/wp-content/uploads/2017/11/Open-Hardware-and-Open-Networking-Software-How-We-Got-Here-and-Where-We-are-Going-Steven-Noble-Big-Switch-Networks-_-NetDEF.pdf
      [11] http://events19.linuxfoundation.org/wp-content/uploads/2017/11/Open-Hardware-and-Open-Networking-Software-How-We-Got-Here-and-Where-We-are-Going-Steven-Noble-Big-Switch-Networks-_-NetDEF.pdf
      [12] http://www.opencompute.org/documents/switch-abstraction-interface
      [13] http://github.com/Azure/SONiC/wiki/Architecture
      [14] http://github.com/Azure/SONiC/wiki/Sonic-Roadmap-Planning

      下一篇
      企业与客户的理想联络者:尊龙凯时用户连接服务正式商用!
      上一篇
      新一代开源网络操作系统SONiC 之一