From c71559de105c639ca2f2d656d4a0fd5f0cfe7688 Mon Sep 17 00:00:00 2001 From: Quentin Young Date: Fri, 9 Apr 2021 18:05:42 -0400 Subject: [PATCH] doc: vaguely describe system requirements Lame attempt at describing the factors involved in choosing resources for running FRR Signed-off-by: Quentin Young --- doc/user/overview.rst | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/doc/user/overview.rst b/doc/user/overview.rst index b4f56260c9..efe64b72f0 100644 --- a/doc/user/overview.rst +++ b/doc/user/overview.rst @@ -58,6 +58,33 @@ routes to Internet exchanges running full Internet tables. FRR runs on all modern \*NIX operating systems, including Linux and the BSDs. Feature support varies by platform; see the :ref:`feature-matrix`. +System Requirements +------------------- + +System resources needed by FRR are highly dependent on workload. Routing +software performance is particularly susceptible to external factors such as: + +* Kernel networking stack +* Physical NIC +* Peer behavior +* Routing information scale + +Because of these factors - especially the last one - it's difficult to lay out +resource requirements. + +To put this in perspective, FRR can be run on very low resource systems such as +SBCs, provided it is not stressed too much. If you want to set up 4 Raspberry +Pis to play with BGP or OSPF, it should work fine. If you ask a FRR to process +a complete internet routing table on a Raspberry Pi, you will be disappointed. +However, given enough resources, FRR ought to be capable of acting as a core IX +router. Such a use case requires at least 4gb of memory and a recent quad-core +server processor at a minimum. + +If you are new to networking, an important thing to remember is that FRR is +control plane software. It does not itself forward packets - it exchanges +information with peers about how to forward packets. Forwarding plane +performance largely depends on choice of NIC / ASIC. + System Architecture ------------------- -- 2.39.5