Microsoft’s Own Linux Distribution
Microsoft has created its own Linux distribution with Azure running its networking. Redmond has revealed that it has built something known as Azure Cloud Switch – ACS, defining it as a cross platform modular operating system for data centre networking.
This is built on Linux and the foray in building their own software to run network devices like switches.It is supposed to make it easy for the IT pros in managing their networking infrastructure over various types of hardware. It is especially important while running a bunch of networks across a group of data centres at cloud computing scales.
The important element is that Microsoft has envisaged a problem and decided to create Linux, as the best option to fix it. ACS has also permitted Microsoft to share the software stack across hardware from various switch vendors which is done through the Switch Abstraction Interface – SAI specification.
This is the first open standard C API in programming network switching ASICs of the Open Compute Project – OCP.Redmond’s main architect from Azure Networking, Kamala Subramaniam has written that `at Microsoft, they are of the belief that there are several excellent switch hardware platforms available in the market, together with healthy competition among several vendors driving innovation, increases in speed together with reduction in costs.
Challenges – Integrating Totally Different Software
However, what the cloud and enterprise networks found challenging was that it is integrating totally different software operating on each of the different kind of switch in a cloud-wide network management platform. One would prefer all the benefits of the features implemented and the bugs fixed to stay on even as one goes with the tide of updated switch hardware innovation.
The software-defined networking – SDN is a fine idea. However, it seemed that Redmond did not find the SDN code to accommodate its particular needs and so it required to build new systems based on what the other industry were using and the experience includes Linux and not Windows as the path to SDN.
It states ACS…. focuses on feature development based on Microsoft priorities and enable to debug, fix and test software bugs much quicker. Moreover it also enables the flexibility to scale down the software and create features which are essential for their datacentre as well as their networking needs.
ACS – Designed to Utilise Switch Abstraction Interface
ACS has been designed to utilise Switch Abstraction Interface, an OpenCompute attempt which provides an API for programming ASICs internal network devices. Microsoft’s post exposing ACS states a fair amount about its features, though it does not clarify the association between Microsoft and Linux. Probably the complexity of theswitching ecosystem of the world could be the reason.
Redmond has commented that it has demonstrated ACS across with `four ASIC vendors namely Mellanox, Broadcom, Cavium and the Barefoot software switch, six implementation of SAI – Broadcom, Dell, Mellanox, Cavium, Barefoot and Metaswitch with three applications stacks – Microsoft, Dell and Metaswitch.
Subramaniam ends his post by conveying that they were talking about ACS publicly as they were of the belief that this approach of disaggregating the switch software from the switch hardware would tend to continue as a growing trend in the networking industry and that they would like to contribute their insights as well as experiences to the journey starting from here.