Microsoft has developed a new networking OS, Azure Cloud Switch (ACS), that will give it a say in how data center switches operate.
Linux-based ACS is Microsoft’s first foray into offering its own SDN-like software for running network devices such as switches. It came about because cloud and enterprise networks are challenged by the task of integrating “different software running on each different type of switch into a cloud-wide network management platform,” Subramanian writes.
“Ideally, we would like all the benefits of the features we have implemented and the bugs we have fixed to stay with us, even as we ride the tide of newer switch hardware innovation,” she writes.
ACS allows Microsoft to share the same software stack across multiple switch vendors. Other benefits include the ability to scale down the software while developing features that are required for data center and networking needs, as well as debug, fix, and test software bugs at a faster rate.
A cynic might view ACS as Microsoft’s attempt to get commercial switches to behave the way it wants. Subramanian explains it this way: “We believe there are many excellent switch hardware platforms available on the market, with healthy competition between many vendors driving innovation, speed increases, and cost reductions.”
ACS was designed using the Switch Abstraction Interface (SAI) specification, which is an Open Compute Project (OCP) standard that has an API for programming network-switch chips. Microsoft is a founding member of SAI and continues to be a major contributor. In July, the SAI specification was officially accepted by OCP as a standardized C API to program ASICs.
Microsoft put its ACS through its paces publicly at the SIGCOMM conference in August. The ACS was demonstrated with four ASIC vendors (Mellanox, Broadcom, Cavium, and the Barefoot Networks software switch), six implementations of SAI (Broadcom, Dell, Mellanox, Cavium, Barefoot, and Metaswitch), and three applications stacks (Microsoft, Dell, and Metaswitch.)
In her blog, Subramanian endorses the trend of separating switch software from switch hardware as part of a growing trend in the networking industry, and “we would like to contribute our insights and experiences of this journey starting here.”