Fib - Route Programming¶
Fib is responsible for programming the actual forwarding tables in hardware on
the local node. Open/R defines the RPC interface, which is the
Platform.thrift. Underlying platform is expected to implement
this. All forwarding table entries are programmed via this thrift interface.
Inter Module Communication¶
[Producer] ReplicateQueue<thrift::RouteDatabaseDelta>: stream
routeDbDeltato subscribers who want to receive updates for routes to be programmed.
[Consumer] RQueue<thrift::DecisionRouteUpdate>: receive real-time updates from
Decisionand program update via thrift client call.
For Data Types and Format, check out
For Thrift Interface, check out
Fib programs routes via external FibAgent (HW specific, implements
FibService) over thrift. Open/R offers
FibService implementation for native
routing with Linux. The binary is named as
platform_linux and code is located
openr/platform/ directory. For more detals, see Platform.md
Thrift port to communicate with underlying platform can be configured via