Authored by: Jason Lackey, Network and Security Test, Keysight Technologies
In Silicon Valley, perhaps due to the normally incomprehensible gibberish you get from the unholy convergence of technology and marketing, one way of pitching new startups or ideas is to use the construct “the X of Y” to simplify the explanation and maybe save long rambling descriptions involving the word “disrupt.” It also helps venture capitalists to actually have a chance of understanding what you are pitching before they open their purses. The Airbnb of fortified bunkers, the DC comics of romance novels, the Dodge Hellcat of kitchen blenders, the Jeep of skateboards. The list goes on. Some better and more interesting than others.
One of these X of Y constructs that is of particular interest is SONiC (Software for Open Networking in the Cloud), the Linux of Networking. With origins at Microsoft/Azure by way of LinkedIn, an early adopter, SONiC was developed and opened sourced in 2017. In the years following, interest and support have increased rapidly. Indeed, in March, 2020, Keysight announced we were joining the SONiC open-source network software community.
Being based on Linux, as many good things are including NASA, Chromebooks and Japan’s Shinkansen, just to name a few, SONiC is the OS of choice for open or disaggregated data centre network switching. Compare and contrast this with DENT, another Linux-based offering intended more for campus, edge retail and remote/branch office switching. Keysight supports both SONiC and DENT.
For folks looking to do work with open data centre switching, SONiC does bring some interesting toys to the party. One of the most interesting is the use of a standardised API to abstract the underlying switch hardware. In this case, the hardware abstraction layer, Switch Abstraction Interface (SAI), is another gift from Microsoft, open-sourced in 2015. The inclusion of SAI enables ongoing hardware innovation without forcing you to throw away or refactor existing investments in software development.
Other goodies in the SONiC bag of tricks include a modular software system architecture (as opposed to more traditional monolithic designs) with network applications such as BGP, SNMP, DHCP and IPv6 running in containers, allowing individual network applications to be patched or upgraded without bringing the entire switch down. Pretty cool, especially if uptime is a concern - which it should be for anyone building networks.
OK, Let’s Test!
When it is time to test SONiC, there are some options. Regardless of the path you end up taking, you will probably want to ensure that you end up on a path that is neutral to ASIC, switch and software. One such approach is to use SONiC community-based tests – which are widely viewed as being optimal for unit testing. There are, however, other options. One of them is the Ixia Open NOS Validation Suite.
As you would expect, the Open NOS Validation Suite is neutral, but in order to address the sometimes challenging business environment that device makers face when building open source products, it offers subscription test and perpetual license test modules and test as a service options: Ixia Open NOS Validation Suite for SONiC.