Skip to content

Want API endpoints for full switch router information base (RIB) #6445

@rcgoodfellow

Description

@rcgoodfellow

Right now, we have the ability to list static routes per port and show imported BGP prefixes per switch through the Omicron API. But for complex networking setups, this does not tell the whole story. Routes have a set of attributes that all come together under the best path algorithm to determine what path or paths are considered optimal in the presence of multiple path choices. Only paths that are in the optimal set get installed into the forwarding plane.

The mgd API provides a way to get at the information that the best path algorithm is using for selection as shown through the CLI invocation below.

root@oxz_switch:~# mgadm bgp status selected
BGP Routes
=============
Prefix        Nexthop       Local Pref  Origin AS  Peer ID        MED   AS Path         Stale
0.0.0.0/0     169.254.10.1  None        64500      192.168.1.168  None  [64500, 64510]  None
2.0.1.0/24    169.254.50.1  Some(20)    64501      192.168.1.176  None  [64501, 64570]  None
[...]

There is also a mgadm bgp status imported command that allows operators to see the delta between imported and selected routes. (Note that bgp here is a bit of a misnomer as this started out as just a BGP CLI command, but now includes static routing, so this should be more like mgadm rib status selected and mgadm rib status imported.)

All this information should be available to the operator through the Omicron API.

Metadata

Metadata

Assignees

No one assigned

    Labels

    apiRelated to the API.networkingRelated to the networking.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions