Microsoft's Solution Will Allow Developers To Extend Datacenter Switches
SONiC is the company's open source framework that will allow application developers to extend network switches to work across disparate hardware platforms.
Microsoft aims to more flexibility to datacenter hardware switches through a proposed open source contribution to the Open Compute Project. The solution, called Software for Open Networking in the Cloud (SONiC), is a set of software components that run on top of Linux.
In a keynote talk at the OCP Summit event in San Jose, Calif., Microsoft CTO Mark Russinovich said that SONic uses the open source Redis cache to store routing information. He explained that the aim of SONiC is to add flexibility and choice when using hardware switches in service provider datacenters, while also permitting hardware switch vendors to deliver their own product values. Microsoft collaborated with companies such as Arista, Broadcom, Dell and Mellanox to create SONiC.
SONiC also is described as an open source framework for application developers to target network switches across multiple hardware platforms. It can be extended using "open source, third party or proprietary software components," according to a blog post by Russinovich.
SONiC is considered to be a "major step in Microsoft's open source journey," according to Russinovich. Currently, the specification is at the initial proposal stage. SONiC isn't accepted yet by the OCP. It builds on Microsoft's earlier OCP contributions, such as the Switch Abstraction Interface (SAI), which the OCP accepted in July. The SAI specification abstracts application programming interfaces (APIs) used for communicating switching functionality, Russinovich explained.
Microsoft similarly built its Azure Cloud Switch solution, announced back in September, using SAI and Linux.
Microsoft collaborated with Barefoot Networks, Broadcom, Cavium, Centec, Dell, Mellanox and Metaswitch on the SAI spec, according to a blog post by Kamala Subramaniam, a principal architect for Azure Networking at Microsoft.
SONiC may be at the initial proposal stage at the OCP, but it's also currently in use, too.
"SONiC is not just prototyped software but deployed today and planned to run at scale in the future," Subramaniam stated.
SONiC is part of Microsoft's software-defined networking efforts centered on its Azure datacenters, which has requirements for scalability, speed and reliability that need to exceed legacy hardware designs, Subramaniam explained. She noted that it's currently "challenging to integrate the different software running on each different type of switch into a cloud-wide network management platform," but that SONiC lets Microsoft share the same software stack across different switch vendor hardware products.
Microsoft's SONiC platform provides APIs in the C language that can be used to program the application-specific integrated circuits (ASICs) in switch products. SONiC comes with drivers for switches that enable it to serve as "a fully functional Layer2/Layer3 switch," Subramaniam added. Future Linux distributions could also provide "support for SONiC and SAI through kernel modules," she added.
Microsoft also previously contributed its Open CloudServer (OCS) specification to the OCP. Russinovich described OCS as "the very same server and datacenter designs that power our own Azure hyper-scale cloud" in his blog post. During the talk, Russinovich said that Microsoft has been collaborating on open source software projects for about 10 years, supporting more than 1,900 projects. Microsoft currently operates more than one million servers around the globe and 90 percent of its servers are OCS servers, he added.
Microsoft had announced its membership in the OCP back in January 2014. The OCP originally was initially started by Facebook engineers to share datacenter knowledge but it later was formed into an organization by Facebook to create open datacenter specifications. The OCP drew initial support from Intel and Rackspace. Later, companies such as Canonical, Cloudscaling, Hewlett-Packard and VMware, among others, joined the OCP effort.
Kurt Mackie is senior news producer for the 1105 Enterprise Computing Group.