TAGS: | |

Putting A Dent In Open-Source Switches: NOS/Device-Driver Combo Gains Traction

Kurt Marko

This article was originally posted on the Packet Pushers’ Ignition site on October 20, 2021.

The emergence of whitebox switches based on increasingly capable merchant silicon has been a topic of interest here on Packet Pushers for almost a decade. As early as 2016, Greg Ferro outlined nine reasons why they made technical and economic sense. More enterprise buyers agree as the intervening years have brought an erosion — but not obliteration — of Cisco’s market dominance and a rise in the sales of no-name whitebox switches.

The most recent IDC switch tracker has the “others” category picking up a bit more than one-fifth of worldwide Ethernet switch revenue. However, a decade-long look at the market shows a slow, steady increase in OEM market share. Indeed, in some quarters, whitebox sales account for more than a quarter of the market.

Source: Statista and IDC; chart by the author.

Perhaps the largest obstacle to faster growth in whitebox products is a dearth of mature and full-featured software. SONiC, which has been available for several years, addresses this shortcoming for hyperscale cloud operators — not surprising since they are the largest consumer of whitebox products.

What about the needs of the growing distributed edge segment? That’s where DENT comes in. DENT is a network OS, and the DENT team differentiates the project by breaking the NOS ecosystem into open and proprietary products targeting four distinct categories: telecom, cloud, enterprise data centers, and distributed locations. As this presentation by two of its founding designers explains, DENT was started to address the “challenge [of] bringing the scale of data center and telecom networking into a small wiring closet or distributed location,”  and to connect systems and IoT devices at the edge with a hybrid cloud backbone.

Source: Introducing DENT OS, switchdev NOS for the rest of us; presentation to the Open Source Europe Summit 2020.

DENT Components And Architecture

The Linux Foundation launched DENT almost two years ago to build a disaggregated switch architecture and NOS for edge environments. The project joins silicon vendors, ODM/OEMs, integrators, and networking professionals into a collaborative, open source effort. Leading commercial sponsors include Amazon, Marvell, NVIDIA (via Cumulus Networks and Mellanox), and Wistron NeWeb (WNC). The initial focus is on retail sites, but there are plans to extend the technology to enterprise data centers, the campus, and remote offices.

The technical team adopted three design principles:

  1. Use open-source software, particularly the Linux Kernel and Switchdev device driver model, as the foundation.
  2. Simplify abstractions, APIs, and drivers to reduce the low-level overhead compared to existing switches and switch software.
  3. Treat ASICS and merchant networking/data path silicon as interchangeable, like any other hardware.

DENT is the culmination of a trend in switch design from proprietary, monolithic systems that combine switch hardware and operating software to disaggregated systems built from commodity (merchant) switch silicon, an open NOS, and documented abstraction layers between the hardware, operating system and network applications. Disaggregated switches are designed around standard, interchangeable components. They:

  • Provide a broad choice of hardware and vendors.
  • Facilitate the introduction of new components to increase performance, improve power efficiency ,and lower costs.
  • Speed product development by reducing the time to integrate hardware and software modules.

Furthermore, a Linux-based NOS such as DENT hastens system and application development by working with existing software development and DevOps automation tools.

Source: Introducing DENT OS, switchdev NOS for the rest of us; presentation to the Open Source Europe Summit 2020.

DENT has two principal components, the DENT OS and switchdev in-kernel device driver model. DENT OS is based on Debian and uses Linux network APIs and the FRR (Free Range Routing) stack to support standard protocols such as BGP, RIP, OSPF, IS-IS, PIM and others. (For more information on FRR and its capabilities, listen to this Packet Pushers podcast).

Switchdev is a model for Ethernet switching that allows offloading the data (forwarding) plane from the kernel and replaces proprietary switch SDKs with a standard, open-source Linux interface. Switchdev is a kernel module, which requires ASIC vendors to develop drivers, but with the benefit of enabling existing applications to work on new hardware without modification. The model’s devlink API provides a hardware-agnostic way to expose device-specific information and resources (such as debugging options). According to Amit Katz, Mellanox’s VP of Ethernet switches, “Switchdev exposes the unique hardware innovations in the Mellanox Spectrum family of Ethernet Switches.

Source: Introducing DENT OS, switchdev NOS for the rest of us; presentation to the Open Source Europe Summit 2020.

First Deployments From Marvell

Marvell is the first to announce DENT support for its Prestera switch SoCs with PLVision providing software development for the switchdev driver and Dent OS port. The first whitebox products come from Delta Electronics, Edgecore ,and WNC, each with 1G/10G switches. For example, the Edgecore EPS101 uses two Prestera 98DX3265 SoCs to provide 48x1G, 4x10G plus one 1G management port with 176 Gbps of switching throughput.

Source: Edgecore Networks

The DENT project team sees retail locations as the most promising scenario for first-generation products as businesses upgrade networks to accommodate an explosion of data from surveillance cameras, smartphone-ready POS systems, HVAC, lighting, other smart sensors and wireless inventory (RFID, UWB) inventory systems.

It sees opportunities for a new generation of applications to support Amazon Go-type grab-and-go stores, electronic labeling, traffic counting and queue estimation, and building control. Future releases will target data center ToR switches by focusing on integrating DENT OS with automation software like Ansible, Chef, Puppet and Saltstack and network monitoring and analytics software like the ELK stack, Grafana, Nagios, Prometheus and others.

Source: Introducing DENT OS, switchdev NOS for the rest of us; presentation to the Open Source Europe Summit 2020.

When DENT was launched, it was reasonable to question the necessity of another open source NOS given the plethora of available options. However, deep-pocketed sponsors (including Amazon’s Steve Noble as the technical chairman) and the release of commercial silicon and switches supporting the software show that DENT has a promising future. With two releases on the roadmap, organizations building or expanding edge infrastructure should investigate DENT. Those with the requisite expertise should consider contributing to the effort.

About Kurt Marko: Kurt was an IT analyst, consultant and regular contributor to a number of technology publications including Diginomica, TechTarget and AvidThink. Starting his career as an electrical engineer, Kurt spent the past 35 years providing deep reporting and analysis in networking and IT. Kurt passed away in January 2022.