Software for Open Networking in the Cloud or SONiC is an open-source network operating system based on Debian Linux that runs on switches from multiple vendors.
SONiC offers a full feature set that has been in use in the data centers of some of the largest cloud service providers. Since it is open-source, SONiC helps users leverage the collective strength and take advantage of the vast ecosystem and community.
SONiC is designed with networking software components to meet the requirements of a cloud data center. SONiC is built on top of the Switch Abstraction Interface (SAI) layer, which defines a standardized Application Programming Interface (API) for Network Processing Units (NPUs).
SONiC uses containerization enabling it to be extensible. SONiC is targeting cloud networking scenarios, where scale, simplicity, and management are the highest priority. Operators can plug in new third-party, proprietary, or open-sourced software components, with minimum effort, and tailor SONiC to their specific scenarios.
The SONiC architecture covers various modules that interact with each other through a centralized and scalable infrastructure. This infrastructure is based on the use of a key-value database to provide a language-independent interface, a method for data persistence, replication, and multiprocess communication among all SONiC subsystems.