Everyone agrees that open solutions are the best solutions, but for Ethernet switches, there are very few truly open operating systems – until now. Microsoft has open sourced the network operating system (NOS) they use in Azure, SONiC (Software for Open Networking in the Cloud), created the community, and posted it on Github. SONiC is a NOS that is designed to work on many different Ethernet switch ASICs, from many vendors. At Mellanox, we have embraced open Ethernet and, besides just supporting SONiC, have contributed a number of innovations to this important community project
SONiC is an open source Networking OS initiative driven by Microsoft. Running one of the largest clouds in the world, Microsoft has gained a lot of insight into building and managing a global, high performance, highly available, and secure network. Experience has taught them that there is a need for a change in the way they operate and deploy their data centers.
The main requirements were:
To address these requirements, Microsoft pioneered SONiC and open-sourced it to the community, making it available on SONiC GitHub Repository.
SONiC is built on the Switch Abstraction Interface (SAI), which defines a standardized API. Network hardware vendors can use it to develop innovative hardware platforms that can achieve great speeds while keeping the programming interface to ASIC (application-specific integrated circuit) consistent.
SONiC is the first solution to break monolithic switch software into multiple containerized components. SONiC enables fine-grained failure recovery and in-service upgrades with zero downtime. Instead of replacing the entire switch image for a bug fix, you can now upgrade the flawed container with the new code, including protocols such as Border Gateway Protocol (BGP), without data plane downtime. This capability is a key element in the serviceability and scalability of the SONiC platform.
Containerization also enables SONiC to be extremely extensible. At its core, SONiC is aimed at cloud networking scenarios, where simplicity and managing at scale are the highest priority. Operators can plug in new components, third-party, proprietary, or open sourced software, with minimum effort, and tailor SONiC to their specific scenarios.
The above was Written by Yousef Khalidi CVP, Azure Networking, in his blog about SONiC.
Full Architecture of SONiC – https://github.com/Azure/SONiC/wiki/Architecture
Features SONiC currently supports:
Additional features are in the oven, check out the SONiC Roadmap.
It’s highly recommended to watch the following video to understand how Alibaba uses SONiC in their Data Centers.
When choosing a switch to run SONiC on top you should look at two main factors:
Mellanox is the only company participating in all levels of the SONiC development community. We are one of the first companies to develop and adopt SAI, all of our Spectrum family switches are fully supported by SONiC as well as being a major and active contributor to the SONiC OS feature set.
The Mellanox Open Ethernet Switch portfolio is fully based on the Spectrum ASIC, providing the lowest latency for 25G/100G in the market, Zero Packet Loss and a fully shared buffer. The ideal combination for Cloud Networking demands.
All of the Mellanox platforms support port splitting via the SONiC OS, the only Platforms that currently supports this feature.
Check out this report and get details about our unmatched ASIC performance generated by the Tolly group. Read it to Understand the fundamental differences between Mellanox Spectrum and Broadcom Tomahawk based switches.
SONiC can be deployed on any switch in our Ethernet portfolio.
Mellanox Spectrum switch systems are an ideal Spine and Top of Rack solution, allowing flexibility, with port speeds ranging from 10Gb/s to 100Gb/s per port, and port density that enables full rack connectivity to every server at any speed. These ONIE based switch platforms support multiple operating systems, including SONiC and leverage the advantages of Open Network disaggregation and the Mellanox Spectrum ASIC capabilities.
By using the Mellanox switches as your building blocks, you will be able to build a high performing CLOS data center.
Typical leaf spine POD design with BGP as the routing protocol:
Scaling to multiple PODs:
Read more about leaf/spine designs best practices.
Interested to learn more about SONiC? Watch this webinar hosted by Mellanox, Apstra and Microsoft.
Ready to deploy SONiC on Spectrum? Check out this community post.