| 
 | 
 | ||||||||||||||||
The XORP BGP is internally implemented as a set of pipelines consisting of a series of BGPRouteTables. Each pipeline receives routes from a BGP peer, stores them, and applies filters to them to modify the routes. Then the pipelines converge on a single decision process, which decides which route wins amongst possible alternative routes. After decision, the winning routes fanout again along a set of pipelines, again being filtered, before being transmitted to peers.
RibInTable is the first stage in such a pipeline. It receives routes from a single BGP peer, and stores them. Changes are passed down the pipeline as they occur, and route lookups from downstream are answered by the RibInTable.
| RibInTable (string tablename, Safi safi, const PeerHandler *peer) | RibInTable | 
| ~RibInTable () | ~RibInTable | 
| void  flush () | flush | 
Remove all the stored routes. Used to flush static routes only.
| int  add_route (const InternalMessage<A> &rtmsg,
		  BGPRouteTable<A> *caller) | add_route | 
Reimplemented from BGPRouteTable.
| void  ribin_peering_went_down () | ribin_peering_went_down | 
| void  ribin_peering_came_up () | ribin_peering_came_up | 
| int  replace_route (const InternalMessage<A> & ,
		      const InternalMessage<A> & ,
		      BGPRouteTable<A> *  ) | replace_route | 
Reimplemented from BGPRouteTable.
| int  delete_route (const InternalMessage<A> &rtmsg,
		     BGPRouteTable<A> *caller) | delete_route | 
Reimplemented from BGPRouteTable.
| int  push (BGPRouteTable<A> *caller) | push | 
Reimplemented from BGPRouteTable.
| int  delete_add_routes () | delete_add_routes | 
| const SubnetRoute<A> * lookup_route (const IPNet<A> &net, 
				       uint32_t& genid) | lookup_route | 
[const]
Reimplemented from BGPRouteTable.
| void  route_used (const SubnetRoute<A>* route, bool in_use) | route_used | 
Reimplemented from BGPRouteTable.
| BGPRouteTable<A> * parent () | parent | 
Reimplemented from BGPRouteTable.
| RouteTableType  type () | type | 
[const]
Reimplemented from BGPRouteTable.
| string  str () | str | 
[const]
Reimplemented from BGPRouteTable.
| bool  get_next_message (BGPRouteTable<A> *) | get_next_message | 
Reimplemented from BGPRouteTable.
| void  set_peer_is_up () | set_peer_is_up | 
| bool  dump_next_route (DumpIterator<A>& dump_iter) | dump_next_route | 
Reimplemented from BGPRouteTable.
| void  igp_nexthop_changed (const A& bgp_nexthop) | igp_nexthop_changed | 
Reimplemented from BGPRouteTable.
| int  route_count () | route_count | 
[const]
| BgpTrie<A>&  trie () | trie | 
[const]
| const PeerHandler*  peer_handler () | peer_handler | 
[const]
| uint32_t  genid () | genid | 
[const]
| void  crash_dump () | crash_dump | 
[const]
Reimplemented from CrashDumper.
| string  dump_state () | dump_state | 
[const]
Reimplemented from CrashDumper.