Wednesday, June 21, 2023
HomeNetworkingUse FRR Containers to Study Routing Protocol Fundamentals « ipSpace.web weblog

Use FRR Containers to Study Routing Protocol Fundamentals « ipSpace.web weblog


An nameless commenter requested this extremely related query about my Web routing safety lab:

What are the smallest {hardware} necessities to run the lab.

TL&DR: 2 GB RAM, 2 vCPU

Now for the extra exact reply (aka “it relies upon”).

The lab has 9 routers. Every system wants between 256KB (Mikrotik) and 8GB (Cisco IOS XR) in the event you run them as digital machines. Add 2 GB for the host working system and the virtualization atmosphere, and we’re rapidly moving into the 8GB – 16 GB ballpark. Additionally, it is best to count on each community system to make use of a minimum of half a CPU core.

Luckily there’s one other manner: Linux containers. As a substitute of a full-blown digital machine, each community system will get one other copy of the Linux TCP/IP stack and turns into only a set of remoted processes working on prime of a shared Linux kernel. There are 4 easy-to-get network-device-as-container implementations supported by netlab: Arista EOS, Cumulus Linux, FRR, and Nokia SR-Linux.

I ran the BGP lab with all 4 of them and received the next printouts from the free command after the lab was began and configured. The related column is the used column the place it is best to subtract 1GB (the idle system reminiscence utilization) to get the reminiscence consumed by the lab containers.

Idle system (no lab is working)

$ free -h
               whole        used        free      shared  buff/cache   accessible
Mem:            62Gi       1.0Gi        16Gi        19Mi        44Gi        60Gi
Swap:          8.0Gi          0B       8.0Gi

Arista cEOS

$ free -h
               whole        used        free      shared  buff/cache   accessible
Mem:            62Gi        11Gi       4.8Gi       961Mi        45Gi        48Gi
Swap:          8.0Gi          0B       8.0Gi

Cumulus Linux 4.x container (unofficial picture by Michael Kashin)

free -h
               whole        used        free      shared  buff/cache   accessible
Mem:            62Gi       2.6Gi        11Gi       468Mi        47Gi        58Gi
Swap:          8.0Gi          0B       8.0Gi

FRR containers

$ free -h
               whole        used        free      shared  buff/cache   accessible
Mem:            62Gi       1.2Gi        16Gi        20Mi        44Gi        59Gi
Swap:          8.0Gi          0B       8.0Gi

Nokia SR Linux

$ free -h
               whole        used        free      shared  buff/cache   accessible
Mem:            62Gi        12Gi       2.0Gi        29Mi        47Gi        48Gi
Swap:          8.0Gi          0B       8.0Gi

As you’ll be able to see, you’ll be able to select between two light-weight implementations (Cumulus and FRR) and two heavy hitters (Arista cEOS and Nokia SR Linux). For sure, Arista and Nokia have significantly better configuration capabilities and assist extra options than Cumulus or FRR, however that doesn’t matter in the event you’re serious about BGP routing and a few easy ingress/egress filters.

It will be an fascinating train to attempt to run community system containers and containerlab on Home windows or MacOS laptop computer, however you don’t must: create a Ubuntu VM with 2GB or 4GB of RAM and some digital CPU cores, set up netlab and containerlab on it, and also you’re good to go.

RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

- Advertisment -
Google search engine

Most Popular

Recent Comments