Microsoft has developed its own Linux distribution. And Azure runs it to do networking.
Redmond's revealed that it's built something called Azure Cloud Switch (ACS), describing it as “a cross-platform modular operating system for data center networking built on Linux” and “our foray into building our own software for running network devices like switches.”
Kamala Subramanian, Redmond's principal architect for Azure Networking, writes that: “At Microsoft, 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.”
(Translation: Microsoft partners, we mean you no harm.)
“However, what the cloud and enterprise networks find challenging is integrating the radically different software running on each different type of switch into a cloud-wide network management platform. 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.”
(Translation: Software-defined networking (SDN) is a very fine idea.)
But it appears Redmond couldn't find SDN code to fits its particular needs, as it says ACS “... focuses on feature development based on Microsoft priorities” and “allows us to debug, fix, and test software bugs much faster. It also allows us the flexibility to scale down the software and develop features that are required for our datacenter and our networking needs.”
ACS is designed to use the Switch Abstraction Interface (SAI), an OpenCompute effort that offers an API to program ASICs inside network devices.
So bizarre it might sound, this isn't any surprise if you remember that Microsoft's online services require datacenters with cost equations that cannot afford Dell machines running Windows. Microsoft has been a very early and massive supporter of Open Compute and networking is the next logical step to combine software with bare metal...