FullStack routing software


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

Why distribute your SDN?

Distributing the SDN control layer is key. Firstly, it 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 taken an ‘Internet-native’ approach: using 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 Internet-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 JUNOS or IOS-XR. 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 Internet-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 REST and RPC APIs, such as gNMI (Google Network Management Interface).  The cost will be significantly lower than traditional systems.

Products

The software is available in a number of discrete products, such as Spine and Leaf Routers and a Route Reflector. 

Features

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 *Access Leaf RouterSpine RouterBorder Leaf RouterRoute ReflectorRouter Test Harness **






General




Routing Policy
LDP



L2X


BGP




IPv4
IPv6
LU-v4
LU-v6
VPNv4
VPNv6
Add-path
Multi-path
Multi-hop
Segment Routing
4-Byte AS
TCP-AO
ISIS




IPv4

IPv6

Segment Routing

OSPFv2




Segment Routing

Forwarding Plane




VPP
ACLs (IPv4/6, L2)



QoS (policing, scheduling, queuing, hierarchical)

Access




Radius support



PPPoE



L2TPv2 (LAC)



Accounting (Time/Volume based)



Operations




ResmondD (RtBrick resource monitoring application)
CLI
Inband Management

ZTP Provisioning
RBMS (RtBrick Management System)




Rules Engine
Topology Discovery & Inventory
REST API
Microservice
Dynamic Service Selection
Hardware Compatibility




AS5916-54XKS


W100BF-32X


AS7712-32X



DPDK enabled platform








* may include some road-map features

** The Router Test Harness only includes iod elements of protocols. (Protocols include iod and appd elements, where iod is concerned with communication with peers and appd is concerned with route computation.)

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

Transform your carrier into an ‘Internet-native’

So now you can have everything SDN promised, and more…

  • You can migrate to a simpler, safer network
  • You can operate your network at web-scale
  • And you can operate at cloud cost-levels