RBFS Tour
Welcome
Welcome to the RBFS Tour, an interactive guide through the RtBrick Full Stack (RBFS) software. This tour is intended to be a guide through the RBFS CLI configuration. The tour contains some training modules explaining step-by-step which commands you need to use to get your switch running. It also provides some hands-on exercises and some troubleshooting guidelines. The material covers interface configuration, routing protocols (e.g., IS-IS and BGP), MPLS, VPN services and subscriber management.
RBFS Overview
RtBrick Full Stack (RBFS) is a disaggregated and open network operating system that allows faster deployment of new features and services within a short period and it promotes a collaborative ecosystem of hardware and other component vendors. By separating the hardware from the software, RBFS enables you to choose the whitebox switches of your choice without any vendor lock-in.
RBFS has been designed based on a microservices architecture, which offers some key benefits compared to traditional monolithic systems. It offers greater agility and provides a higher degree of automation that reduces operational overheads. RBFS works well with continuous integration (CI) and continuous delivery (CD) practices and tools.
The key components of RBFS are
-
a schema-driven and in-memory database called Brick Data Store (BDS). BDS acts as a control plane and provides all required data and instructions to the daemons for their functioning. BDS has architecturally been designed to enable very minimal response time by removing the time to access data stored in disks.
-
multiple microservices, known as brick daemons (BD) which allows decoupling of various functionalities and services. For example, the ribd daemon is responsible for route selection, next-hop resolution, tunnel selection and recursion, while the forwarding (fibd) daemon handles packet forwarding, route NH download, VPP and PD layer programming. Daemons such as confd and ifmd take care of various configurations and interface management respectively.
There are daemons such as CtrlD (Controller) and ApiGwD (API Gateway) which are part of the RBFS ecosystem. These daemons reside on the ONL and manage all the communication between the client and backend services running in the container. The API Gateway (ApiGwD) daemon provides a single point access to expose services running inside of the RBFS container.
RBFS provides a CLI and a rich set of commands that you can use to operate, configure, monitor, and manage the system and its various components. In addition to the CLI, RBFS also offers support for REST-based industry-standard tools such as RESTCONF and Operational State API to enable communication with the software and underlying devices.
How to use this Tour Guide
Each training module can be used independently. Nevertheless, if you are new to RBFS, it is recommended to go through these modules in the given order.
Each module consists of a few background information and some exercises you should try to implement yourself. The exercise section has the following style:
Configure something on your node.
In case you are stuck and unsure what exactly is to be done, there is a hidden section following each exercise that explains the steps and the expected solution which you can expand by clicking on the Click to reveal the answer link below the exercise:
Click to reveal the answer
Here are some more details.
Virtual Training Environment
The Virtual Training Environment (for the training topology) can be set up in two methods.
-
Getting Training Topology via VM Image (simple): Here, you can request the virtual RBFS Tour VM image from RtBrick, start it on a hypervisor (Proxmox / VirtualBox), and then start the RBFS Tour topology and run associated exercises inside the VM. For details, see section Getting the Training Topology via VM Image (Simple).
-
Getting Training Topology by Installing Locally (advanced): Here, you need to access the RtBrick image store, download the required RtBrick software tools and packages, and start the RBFS Tour topology to run the associated exercises on your local machine. For details, see section Getting the Training Topology by Installing Locally (Advanced).