FullStack Routing Software


FullStack carrier routing software is a new way to build and run your network, applying a cloud-native approach to deliver routing software that is more robust, more controllable and costs far less than a conventional network. Disaggregating your routing software from hardware allows you to build a distributed Software Defined Network, using software that delivers at carrier-scale.

Use-Cases and Applications

RtBrick's modular code makes it suitable for many use-cases that require robust and highly scalable IP/MPLS routing, including:

  • Next generation telco edge networks
  • Broadband Network Gateways
  • Mobile and 5G backhaul

Why distribute your SDN?

Distributing the control layer achieves all SDN’s objectives:

  • Agile – it’s still easy to add and test new services
  • Highly programmable – every network attribute is exposed to higher level systems
  • Lower cost – because it uses low-cost bare-metal hardware and automates operations

Distributed SDN

But compared to using a centralized SDN controller to make routing decisions, it is also:

  • Lower risk – a highly distributed control system is more robust and can contain any ‘blast radius’
  • More scalable – unrestricted by the I/O limits of a single controller
  • Easier to operate and migrate - network elements can work side-by-side with legacy routers, and can even be controlled by a classical SDN system

How do we make this work?

We’ve done three fundamental, new things that have changed everything:

  1. We’ve used one ‘state database’ in each network element (separated from run-code)
  2. We’ve created ‘composable’ code – built from simple blocks
  3. We’ve used ‘cloud-native’ design principles: with independent microservices running in Linux containers

One state-database – a massive simplification

In the past, limitations in silicon performance meant that routing code had to optimize for CPU and memory utilization. This led to hundreds of different state databases in each router, each optimized for a different job. But we’ve replaced all of these with a single database, operating independently from run-code. This has brought a huge gain in simplicity.

  • ~1000 times fewer database interactions to manage
  • It’s more robust - everything is versioned and preserved in one place, enabling fast restart and re-sync of state
  • We can scale by using hundreds of processor cores - this is how the cloud-natives scale (Amazon uses 128 cores in a server). Even mobile phones can do that, yet traditional routers can’t!
  • It’s easier to program, with every element exposed to higher level systems via a single interface
  • And this simplicity makes it possible to automate the testing of every feature to reduce the risk of bugs

Modular 'composable' code – deploy only what you need, test everything you use

We’ve taken an approach to our software that is native to virtual IT environments. You get your own unique code-version, built from discrete blocks and delivered as a Linux container. Your code is no longer bloated with features that you don’t use. This allows us to upgrade or add each feature independently, in sub-milliseconds, with no service disruption. As a result, route-processing, updates and restart is 20x faster than traditional operating systems. And we publish open interfaces – so you can even develop your own unique features if you want to.

From Carrier-Grade to Web-Scale – the cloud-native approach

Rather than try to build an unattainable flawless system, we’ve taken a web-scale approach and focused on self-healing systems.

Our composable code and single state database makes it easier to contain risk. For example, we can isolate different routing universes (such as public and enterprise networks) and watchdogs can detect issues and redeploy software if needed. And it’s inherently simpler to control, as we’ve replaced a ‘full-mesh’ of logical relationships between the control system and many network element databases with single links.

Resulting in a simpler, safer, lower-cost operating environment

You can manage your whole network from a single browser window. And you get automation straight out-of-the-box. Simply power-on your bare metal switches and they will self-register, download the correct software image, discover their topology and all microservices self-start. Automated software version management reduces risk of human error, and new microservices can be updated and tested independently of other operating software. The system also includes tools to simplify repair, such as ‘clone a switch’ for zero-touch replacement of broken hardware. And there’s in-depth alarm and status management, with thresholds and abnormalities automatically flagged: from data rates to fan speeds. You can glue this into your existing OSS using our consumer-driven Management API, which can create a client in your choice of programming language.

Is this like CUPS?

RtBrick's software is completely compatible with CUPS (Control and User Plane Separation). The control plane is independent of the forwarding (or user) plane. The control plane is usually collocated with the forwarding plane on the same bare-metal switch, taking advantage of the x86 processors that the switch provides, but it could be run remotely on dedicated x86 infrastructure, using RtBrick's state synchronisation protocol to communicate between the two.


The software is available in a number of discrete products, such as a BNG (Broadband Network Gateway) and a PE Router (Provider Edge).


The features supported by RtBrick FullStack are expanding all the time, because it's much faster for us to add and test new features than it is using a traditional monolithic code base. Currently supported features include:

Features *BNGPE Router


Routing Policy

Segment Routing
4-Byte AS

Segment Routing


Segment Routing
Forwarding Plane

ACLs (IPv4/6, L2)
QoS (policing, scheduling, queuing, hierarchical)

Radius support
L2TPv2 (LAC)
Accounting (Time/Volume based)

Multicast - PIM, MVPN, IGMP v2/3 (all partial RFC compliance)

Multicast - SSM Mapping

Radius integration for subscriber channel policy, blacklisting and whitelisting

Sub-second channel zap time

Preview up to 15 other channels

Preview up to 15 other channels

IPTV usage statistics


ResmondD (RtBrick resource monitoring application)
Inband Management
ZTP Provisioning
RBMS (RtBrick Management System)

Rules Engine
Topology Discovery & Inventory
Dynamic Service Selection

* may include some road-map features

Compatible Hardware

RtBrick's Full Stack routing software can operate on many bare metal switches, depending on your performance and port count requirements. You can find details of compatible hardware here