OCP US Summit 2016 has ended
Back To Schedule
Thursday, March 10 • 10:30am - 11:00am
Azure Cloud Switch (ACS)

Sign up or log in to save this to your schedule, view media, leave feedback and see who's attending!

Azure Cloud Switch (ACS) - Live Stream - http://www.youtube.com/watch?v=5XFm9EteAks

The cloud depends on high-speed, highly available networks to power their services. This makes it critical for network operators to be able to control their own destiny by rapidly adding to their network features they need while keeping out feature changes that increase risk and complexity. ACS came into existence to simplify the way we manage our data center networks. Part of that challenge was to manage the fleet of switches like we manage our servers. To be able to use new switching ASICs from various switch ASIC vendors to reduce time to market. To be able to develop new applications on the switch easily. ACS uses Linux as the base operating system and breaks the software running on the box into different modules. A set of software modules are developed to manage the switch ASICs as well as software routing stack such as BGP. Like any other software modules in Linux, users can use common Linux tools to manage these modules independently.

For example, user can use popular Linux automation tools such as Puppet, Chef and Ansible to manage them. This makes managing this Linux switch box no different than managing all the servers in our data centers in principle. As a result, we integrate this Linux-based box with our network management stack to enable some agile software development practices such as weekly software upgrade and quick bug fix rollout. Azure cloud switch software stack runs on top of Switch Abstraction Interface (SAI), which allows the same software stack to run across different switch platforms. SAI provides a set of unified switch control C APIs across multiple ASICs. Azure cloud switch provides a shared storage for all switch states, which allows users to easily develop new applications to manage the switch states. We developed a switch state service which manages all states within the switch. It provides a consistent view of all switch states to any application that subscribes to them. Above the switch state service, developers can then develop different applications to manage any switch based on the up-to-date view. Below the switch state service, sync agents synchronize the switch states to the hardware throughout SAI.

In summary, this demo presents ACS as a collection of software modules with Linux as the base OS, that runs on top of several switch ASICs, Broadcom, Mellanox, Cavium, Centec, Mediatek, and Barefoot. It allows user to easily integrate switch with existing automation and management software to support agile software development and deployment. The software stack also provides a central place to store all switch states and allow multiple applications orchestrate the switch resource management.

Thursday March 10, 2016 10:30am - 11:00am PST
Lower Level: LL21A/B