Understanding the value of OpenWrt
by Bruce Horowitz
Imagine one software layer to help you manage a wide variety of devices and, at the same time, meet your customer needs. OpenWrt might be the answer for customer premise equipment (CPE) manufacturers looking to optimize and manage their devices more efficiently in terms of costs and developing new innovative products.
What is OpenWrt?
To understand OpenWrt*, we have to take a few steps back to the underlying value of open-source. Just as the name implies, “open” means that the source code is accessible and available for developers and users to build upon and use. The open source community embraces a Copyleft (as opposed to Copyright) mindset. It is the practice of granting the right to freely distribute and modify intellectual property with the requirement that the same rights are granted to any work created from that property. In simple terms, “I give this to you, but you have to give it back to me with any improvements that you have made.”
Based on the open source community and the “wisdom of the crowd” with developers’ shared and collective knowledge, OpenWrt is a Linux operating system targeting embedded devices. It includes 3,500 optional software packages, which is an extensive and rich breadth of software supported by an open source community. You can find OpenWrt used in devices for Internet of Things (IoT), Wi-Fi routers, and -extenders.
When you think about a device such as a gateway, it has pre-installed software called firmware – with the emphasis on “firm.” What this means is that the vendor provides fixed features and capabilities. However, for CPE manufacturers looking to offer a broad variety of easy-to-install devices such as gateways, OpenWrt allows you to customize the gateway by using packages to suit any application. You choose among 3,500 packages that are ready to be installed. With so many options, CPE manufacturers have ample opportunity and flexibility to develop innovative products.
Extensible – one software for many products
And because OpenWrt has standardized applications, it is easily extensible. This means you can copy the same setup ranging from low-end to high-end gateways. Furthermore, with OpenWrt, you have one software to service all the different platforms. It does not make any difference if you use a chipset that is low cost or high end; you can use the same software across a wide spectrum of products and chipsets, which makes it highly cost-efficient. This is similar to how Android is based on open-source software which allows for many variations of the operating system to be developed for other devices besides mobile phones.
OpenWrt is highly secure because it is always up-to-date based on improvements from the open source community. When you think about gateways in people’s homes, they tend to have a long life cycle – up to 5 years compared to mobile phones, which are replaced after 1-2 years. So, it is reassuring to know that there is an active community that continuously adds functionality and fixes issues.
One step closer to carrier grade requirements
When CPE manufacturers meet their carrier customers, they are often faced with a list of requirements regarding the capabilities of a gateway. OpenWrt is a good starting point, but additional software is still needed to program gateway functionalities that carriers require. Building upon open-source standards from the community with OpenWrt, you can use an agnostic software development kit (SDK) such as IOWRT**, where you can build your own unified CPE software layer to suit specific customer requirements.
For instance, an everyday basic requirement is that a carrier wants to ensure that the gateway is working 24/7 and is highly reliable. By using an SDK built on OpenWrt, you can easily add an application to manage, monitor, and log data. This enables the carrier to upgrade and configure devices in the field as well as detect any problems that may occur.
You can change the behavior of the gateway to better suit the carrier’s offering. For example, carriers offer triple-play services: broadband, telephony, and TV to end consumers. To deliver these services efficiently, for instance, when watching TV and making a phone call or gaming simultaneously, carriers need to prioritize the traffic. You can add applications to help carriers do this and improve the end consumer experience at home. These applications are most often based on standards from the Broadband Forum (BBF).
Potential new applications in containers
Because end consumers expect more from their broadband experience in their connected homes, carriers are looking at how to deploy new types of applications customized for each individual home. The market is still in an early phase, but there are many exciting opportunities for carriers. And CPE manufacturers enable new applications for their carrier customers.
One example is by adding a new application in the gateway which is “containerized.” This means that the application is isolated from other applications and systems. The basic idea is to place the application in a container to protect the rest of the system from any disruption.
OpenWrt enables third party applications to be installed and run in containers on the gateways, where they get access to all APIs they need without impacting other applications or the firmware of the gateway. Conceptually, the mechanics of the containers are very similar to how third-party applications can be enabled in Android smartphones. For instance, a containerized Quality of Service application could prioritize and reduce latency for streaming or gaming. Just imagine the market potential!
*OpenWrt is a trademark owned by software in the Public Interest, Inc.
** IOWRT is a carrier grade SDK based on OpenWrt, developed and available from IOPSYS Software Solutions