Open source operating systems for network devices

Page 1


Open source operating systems for network devices

Introduction

At Luxoft, we are often asked by our customers about the relative merits and approaches of using open source as the basis for developing new networking devices. These open coded approaches are no-longer just for test devices and simulators but now offer fully functional and competitive approaches to device development reducing costs and shortening time to market. Among the popular open source operating systems for networking devices are DentOS and Sonic. This white paper provides an in-depth analysis of these two operating systems, comparing their features and suitability for strategic commercial platforms. Additionally, this paper discusses the possible factors to consider when choosing between the two operating systems, including alignment with chip vendors like Marvell or Broadcom.

DentOS vs. Sonic for networking devices

DentOS is an open source network operating system developed by Dent Instrument, a Canadian company. It is a lightweight, modular operating system that is designed for use in small to medium-sized networks. It is based on the Open Network Install Environment (ONIE) and can be installed on a range of whitebox hardware. DentOS supports various network protocols, including BGP, OSPF, and VXLAN. It also includes several features such as traffic filtering and monitoring, virtual routing, and multicast support. It is a Linux-based open source operating system that is specifically designed for networking devices. It provides a wide range of features that include management, automation, and security functionalities. One of the significant benefits of DentOS is its flexibility, which allows network administrators to customize it according to their specific needs. Additionally, DentOS supports a broad range of hardware platforms, making it an excellent choice for organizations that use diverse networking devices.

Sonic, on the other hand, is another open source operating system that is built on top of Debian Linux and was developed by Microsoft. Sonic is designed for networking devices, especially switches, and provides various features such as automation, management, and telemetry. The use of a Debian base provides a stable and secure platform for network administrators. Sonic supports a range of network hardware and includes features such as dynamic routing, virtual networking, and telemetry. It also supports the use of network programming languages like Python and offers a REST API for easy integration with other network management tools.

One of the significant differences between DentOS and Sonic is their heritage. While Sonic is based on Debian distribution, DentOS is utilizing the Linux Kernel, Switchdev, and other Linux based projects, hosted under the Linux Foundation. This difference affects the way these operating systems function and interact with hardware platforms. DentOS is optimized for embedded systems and offers a smaller footprint compared to Sonic, making it suitable for low-end hardware platforms. In contrast, Sonic provides a more comprehensive set of features and is suitable for high-end networking devices.

Some of the additional differences between DentOS and Sonic include:

Architecture:

DentOS is based on a traditional monolithic kernel architecture, whereas SONiC uses a modular architecture based on the Switch Abstraction Interface (SAI) specification. This makes SONiC more flexible and easier to customize.

Community support:

SONiC has a larger and more active open source community, with support from companies like Microsoft, Facebook, and Alibaba. DentOS is a proprietary system with a smaller user base.

Hardware compatibility:

SONiC has wider hardware compatibility due to its modular architecture, while DentOS may be limited in the hardware it can support.

CLI and management:

The command-line interface (CLI) and management tools in SONiC are more advanced and offer more features than those in DentOS.

Protocol support:

Both systems support a wide range of networking protocols, but SONiC is known for its excellent support of high-speed switching technologies like 100G and 400G.

Vendor support:

DentOS is primarily used by Delta Networks, whereas SONiC has a broader range of vendor support from companies like Dell, Edgecore Networks, and Apcela.

Overall, while both systems have their strengths, SONiC is generally considered to be more flexible, scalable, and better suited for modern high-speed networking environments. DentOS, on the other hand, may be a good choice for organizations with more limited networking needs and a preference for a more traditional CLI interface.

Advantages and disadvantages

In practice we have found the following advantages and disadvantages of SONiC vs DENT:

Advantages

SONiC

DENT

• Open source — large and active community and contributors

• Supports large range of ASIC Vendors via SAI: Broadcom, Marvell, Mellanox, Barefoot, etc.

• Large feature set

• FRR (Free Range Routing)

• Mature project with a lot of deployments including Microsoft Azure

• Open source — successor of the Open Network Linux

• FRR (Free Range Routing)

• HW resource usage is lightweight

• Feature set based on the Linux Kernel support and FRR

Disadvantages

• HW resource demanding

• Market differentiation

• Interoperability with several existing chassis

• Small deployments

• Only Marvell support for now

• No chassis support

• For applications such as IoT Gateways, OpenWRT may be a better choice

Considerations when selecting a network

OS

When selecting a network device OS, Luxoft recommends that developers consider the following best practices:

Working with newer kernel/OS versions is desirable for better community support

Recommended OS solutions:

The OS should be kept as close as possible to the vanilla/upstream variant; this makes maintenance and upgrades easier

Having HW components with upstream OS support is highly desired

Yocto custom OS distribution Buildroot custom OS distribution

ONL based OS distribution Debian based OS distribution

Consider the tradeoffs between ease of use/development and the degree of customization required to meet the network device requirements:

Yocto

System

Ease of development

Desktop distribution Yocto

• Looks and feels like desktop Linux by default

• Has large rootfs

• Is well-known by the community, and only requires a basic knowledge of Linux

• Package managerruntime

Configuration/ Update

Build

Component customization

• Distribution component is already prepackaged

• Image build is fast

• Designed for embedded system

• Minimum size rootfs by default

Buildroot

• Designed for embedded system

• Small rootfs

Maintainability

Source:

• Can create your own Debian package, but can be difficult to maintain as it’s not designed for it

• High learning curve, difficult for beginners

• Quick to get up and running, and easy to understand

• Partial manual build and deployment

• Full manual build and deployment

• Sources incremental builds

• Sources build

• Rebuild needed when change in package

• Apply patches on Yocto sources (Designed for it)

• Apply patches via Makefile

• Maintenance is done by the desktop community

• Support and porting must be done manually if using custom packages

• Yocto Project has long-term support

• Layers may require some corrections and updates

• Designed for continuous integration

• Buildroot git version branches and _br2- external_mechanism

https://witekio.com/blog/yocto-vs-the-competition-which-is-the-best-build-system/

Strategic commercial platforms

When it comes to strategic commercial platforms, DentOS and Sonic have their strengths and weaknesses. DentOS is an excellent choice for organizations that require a high level of flexibility in their network operations. Its compatibility with a wide range of hardware platforms makes it suitable for organizations that use diverse networking devices. Additionally, DentOS is backed by a strong community of developers who provide support and continuously improve the operating system.

On the other hand, Sonic is suitable for organizations that require a stable and secure network operating system. Sonic’s use of a Debian base provides a secure platform for network administrators, and its features are optimized for high-end networking devices. Additionally, Sonic is backed by a strong community of developers who continuously improve the operating system.

Alignment with chip vendors

When choosing between DentOS and Sonic, it is essential to consider alignment with chip vendors such as Marvell or Broadcom. Both DentOS and Sonic support a broad range of hardware platforms, including those from Marvell and Broadcom. However, it is essential to ensure that the operating system is optimized for the specific hardware platform to ensure optimal performance.

Other chip vendors

Apart from Marvell and Broadcom, there are other chip vendors in the market, including Intel and Qualcomm. Both DentOS and Sonic support hardware platforms from these vendors. When choosing between the two operating systems, it is essential to ensure that the hardware platform is compatible with the operating system.

Other network device operating systems

In addition to DentOS and Sonic, there are several other open-source network operating systems and protocol stacks available, including:

Cumulus Linux:

Cumulus Linux is an open source network operating system developed by Cumulus Networks. It is designed for use in data center networks and supports a range of hardware. Cumulus Linux includes features such as dynamic routing, BGP, and OSPF support, virtual networking, and network automation.

3VyOS:

VyOS is an open source network operating system based on Debian Linux. It is designed for use in small to medium-sized networks and includes features such as dynamic routing, VPN support, and firewall and NAT capabilities.

pfSense:

A free and open source firewall and router software based on FreeBSD.

RouterOS:

A Linux-based operating system designed for use on MikroTik routers and other embedded systems.

OpenWrt:

OpenWrt is an open source operating system designed for use in home and small office routers. It is based on Linux and is designed to be lightweight and easy to use. OpenWrt includes features such as firewall and traffic shaping, VPN support, and network monitoring.

DD-WRT:

A Linux-based firmware suitable for a wide range of wireless routers and embedded systems.

OPNsense:

A fork of pfSense that provides a similar set of features but with a different user interface and updated codebase.

FRRouting:

A free and open source routing protocol suite that supports a wide range of protocols, including BGP, OSPF, and IS-IS.

There are also several notable commercial/licensed network device operating systems:

Cisco IOS:

This is the operating system used on Cisco routers and switches.

Arista EOS:

This is the operating system used on Arista networks switches.

Extreme Networks Switch Engine, Fabric Engine and SLX

Proprietary operating systems used by Extreme Networks.

Conclusion

In conclusion, DentOS and Sonic are two excellent open source operating systems for networking devices. DentOS offers a high level of flexibility and supports a broad range of hardware platforms, making it suitable for organizations that use diverse networking devices. On the other hand, Sonic provides a stable and secure platform for network administrators and is optimized for high-end networking devices. When choosing between the two operating systems, it is essential to consider factors such as alignment with chip vendors and specific hardware

Junos OS:

This is the operating system used on Juniper networks routers and switches.

HP ProVision:

This is the operating system used on HP ProCurve switches.

Brocade Fabric OS:

This is the operating system used on Brocade switches.

requirements. Luxoft has extensive experience with developing software for both DentOS and Sonic and many of the proprietary network device OS’s as well. We have the experience and training to help our customers select the right OS and device features to suit a specific purpose, or budget. Choosing the right OS is critical for ensuring marketability of a new device and minimizing time to market; engage with Luxoft to help make this decision and help your enterprise develop their next routing, switching or core network product.

Linux experience in real time/embedded platforms for telecom using DentOS, Sonic and other carrier-grade OSs (VxWorks, etc.)

1 2

The Luxoft team has extensive experience in networking protocols, a deep understanding of how network protocols interact with each other, and their real-life applications and limitations.

Our team possesses extensive experience in the full cycle of software development for enterprise switching products, which helps us to prioritize and implement tasks in the right order.

3 4

We have expertise in corner cases and caveats, which allows for precise time and resource planning of the project, as well as risk mitigation.

Our team is knowledgeable in Broadcom ASICs and SDK, which enables fast under-the-hood debugging and development.

5 6

We have a strong understanding of testing and development interworking for each phase of the development cycle.

Our team has infrastructure knowledge for building tools and networking equipment, and lab infrastructure is readily available at Luxoft from day one.

About the author

James Hopson

Luxoft CTO for Networking and Cloud

James has been a solutions architect and product manager in telecommunications operations and virtualization for more than 30 years, most recently specializing in the areas of network and cloud solutions, NFV testing and test automation. He is the CTO for Networking and Cloud Solutions at Luxoft and a solution manager in Luxoft’s Technology, Media and Telecom organization. James is responsible for Luxoft’s Software Defined Lab Services Accelerator which is an automated configuration and test, environment management and modeling framework for private/public/hybrid cloud, NFV, hybrid and physical environments.

If you’d like to find out more visit luxoft.com or consult one of our experts at email@luxoft.com

About Luxoft

Luxoft, a DXC Technology Company delivers digital advantage for software-defined organizations, leveraging domain knowledge and software engineering capabilities. We use our industry-specific expertise and extensive partnership network to engineer innovative products and services that generate value and shape the future of industries.

For more information, please visit luxoft.com

Turn static files into dynamic content formats.

Create a flipbook
Issuu converts static files into: digital portfolios, online yearbooks, online catalogs, digital photo albums and more. Sign up and create your flipbook.