**FRRouting (FRR)** is an open source IP routing suite that implements BGP, OSPF, IS-IS, RIP, PIM, and many other routing protocols. It is the underlay routing engine for most open source data center fabrics — the software that ensures packets find the right path between racks, pods, and data centers.
---
### First Principle: Routing is distributed shortest-path computation. Open source implementations are as good as proprietary ones.
FRR evolved from Quagga and Zebra — projects that have been running real networks for over 20 years. It runs on Linux hosts and [[SONiC]] switches, providing carrier-grade routing without Cisco or Juniper licensing costs.
---
### Key Considerations
- **BGP at Scale**: Modern data center fabrics use BGP (particularly BGP Unnumbered) as the underlay routing protocol — even within a single data center. FRR's BGP implementation is used by Facebook, Cloudflare, and AT&T in production.
- **OSPF for Smaller Fabrics**: For smaller deployments, OSPF is simpler to configure. FRR's OSPF daemon handles multi-area hierarchical routing.
- **ECMP**: FRR supports Equal-Cost Multi-Path routing — distributing traffic across multiple equal-cost links. Critical for non-blocking fabric designs.
- **[[SONiC]] Integration**: SONiC ships FRR as its routing container — meaning FRR is running on the physical switches themselves.
- **Configuration**: Uses a Cisco-like CLI via `vtysh`, accessible to network engineers familiar with traditional gear.
---
### How It Fits
```
Physical data center fabric (spines/leaves)
→ FRRouting on [[SONiC]] switches (underlay BGP/OSPF)
→ [[OVN]] / [[Open vSwitch (OVS)]] (overlay above)
→ [[MetalLB]] (BGP peer for Kubernetes service IPs)
```
[[SONiC]] | [[Open vSwitch (OVS)]] | [[OVN]] | [[MetalLB]] | [[Open Source Hyperscaler MoC]]