What is a Virtual Router?

As service providers define how the network edge will evolve to deliver new services, it is clear that IP and routing will be needed very close to the end-user.  Small sites will expand dramatically, RAN disaggregation and virtualization will be needed and compute resources will move closer to edge to deliver low latency services.  Coupled with increases in bandwidth and port speed, routers will need to look very different and cost much less.  For example, cell site gateway routers will need to support aggregate throughput of up to 300 Gbps with port speeds of 25 Gbps to 100 Gbps.  Moreover, routing will be needed in applications ranging from uCPE to RAN sharing and network slicing to crosshaul.

Open networking and disaggregation are part of the solution. However, it is clear that a new approach to routing software will be needed as there is a wide range of applications that will need more than one router at a given location in the network. Thus, virtual routers are also part of the solution.

The term virtual router is used somewhat broadly and imprecisely so how do we define a virtual router? Like server virtualization, a virtual router must be one of multiple, separate workloads on low cost or commodity hardware.  This means that there should be multiple routing instances on a single piece of hardware. A routing instance must be a separate management domain with its own protocol stacks.

There are several terms that are associated with virtual routers. For example, a virtual router is disaggregated, meaning you can choose the hardware and software separately and are not locked into a single vendor. However, not all disaggregated implementations support multiple virtual routers.  A Network Operating System (NOS) is disaggregated but is a single instance of the routing software running on an open network device.

Routing software vendors will often talk about how their software uses containers or is cloud-native. Legacy routers software was monolithic.  This had disadvantages in time to develop features and test and deploy new releases. Containerization creates a separation of functions and is common in cloud implementations of software. This can be a feature of any router software including virtual routers. Virtual Route Forwarding (VRF) is a feature that allows multiple copies of the routing table to create separate virtual private networks (VPNs) for customers. A virtual router can also be interpreted as a collection of VRFs and a collection of VSIs under the same administrative domain, and the virtual router operator can support multiple L3VPN and L2VPN customers.

We see two basic approaches that meet our definition of a virtual router:

The Virtualized Router

Universal Customer Premises Equipment (uCPE) has an x86 processor and can support multiple VMs to create a service such as a managed router with a firewall.

This is a router OS like JUNOS or IOS implemented as a Virtual Machine (VM) running on a hypervisor which runs on a general-purpose processor like an Intel x86 server or equivalent.  The vendor will specify which hypervisors are compatible with their software. It is noteworthy that this is also a Virtualized Network Function (VNF) which is a network function such as a router or a firewall running as a VM.  There are a number of Network Function Virtualization (NFV) initiatives such as the European Telecommunications Standards Institute (ETSI), which released an NFV standard in October 2013 as well as cooperative projects like OPNFV.

Cloud-based Control Planes

In this approach, the control plane is fully disaggregated from the underlying hardware such as a white box switch. The control plane runs on the cloud and manages the switch. Each control plane can be thought of as equivalent to a Routing Engine or Route Switch Processor. It runs its own set of routing protocols as a separate management domain. This allows for multiple routing engines to run in the cloud.  These routing engines are then associated with switch resources such as physical or virtual ports.  Thus, each set of the virtual routing engine and the switch ports functions as a virtual router. The cloud provides the most cost-effective way to scale processing and since the control plane portion is not dependent on the processor on the switch, the number of virtual routers can scale significantly.

By running the control plane in the cloud, a single white box switch can support multiple virtual routers.

The definition of a virtual router was discussed in detail on our webinar “Demystifying Virtual Routers” with noted analyst Lee Doyle. The definition is summarized in this 5-minute video from the webinar: