[Xorp-hackers] More problems with XORP+Click...

Pavlin Radoslavov pavlin@icir.org
Wed, 26 Jan 2005 16:33:57 -0800


Rafael,

See my comments inline.

> We are having some problems here with XORP using click as the forwarding 
> engine. We are able to add new routes with our test routing protocol 
> but, whenever it tries to delete routes although our process receives a 
> confirmation from XORP telling that the route was deleted (through a 
> callback), it does not delete the route (we get some error messages in 
> the router manager telling the the operation could not be commited). We 
> have tried the same by using static routes and we get the same problem. 
> Below there is the transcription of the errors we have got for out test 
> protocol, then the commands we used to test the same situation with 
> static routes and finally the errors we have got with the static routes 
> procedure. Thank you!
> 
> 
> TEST PROTOCOL
> =============
> [ 2005/01/26 16:15:22  INFO xorp_rtrmgr:2220 RTRMGR +166 
> master_conf_tree.cc execute ] Changed modules: interfaces, fea, rib, 
> static_routes
> [ 2005/01/26 16:15:22  INFO xorp_rtrmgr:2220 RTRMGR +403 
> module_manager.cc run ] Running module: interfaces 
> (/root/XORP/xorp/fea/xorp_fea)
> [ 2005/01/26 16:15:24  INFO xorp_rtrmgr:2220 RTRMGR +403 
> module_manager.cc run ] Running module: fea (/root/XORP/xorp/fea/xorp_fea)
> [ 2005/01/26 16:15:30  INFO xorp_rtrmgr:2220 RTRMGR +403 
> module_manager.cc run ] Running module: rib (/root/XORP/xorp/rib/xorp_rib)
> [ 2005/01/26 16:15:32  INFO xorp_rtrmgr:2220 RTRMGR +403 
> module_manager.cc run ] Running module: static_routes 
> (/root/XORP/xorp/static_routes/xorp_static_routes)
> [ 2005/01/26 16:15:34  INFO xorp_rtrmgr:2220 RTRMGR +1372 task.cc 
> run_task ] No more tasks to run
> [ 2005/01/26 16:15:41  ERROR xorp_rib:2247 RIB +133 rib.cc 
> admin_distance ] Administrative distance of "test" unknown.

To get rid of this error message, you would have to add a line like:
_admin_distance["test"] = <your protocol's admin distance>;

to rib/rib.cc (inside the RIB<A>::RIB() constructor).

Though, if you don't do apply this change then things should still
work. Sigh, making the RIB admin distances configurable is one very
old TODO item...


> [ 2005/01/26 16:16:13  ERROR xorp_fea:2221 FEA +346 
> fticonfig_entry_set_click.cc delete_entry ] Cannot find outgoing port 
> number for the Click forwarding table element to delete entry net = 
> 147.83.34.82/32 nexthop = 0.0.0.0 ifname =  vifname =  metric = 0 
> admin_distance = 0 xorp_route = false is_deleted = false is_unresolved = 
> false is_connected_route = false
> [ 2005/01/26 16:16:13  ERROR xorp_fea:2221 FEA +70 fti_transaction.cc 
> operation_result ] FTI transaction commit failed on DeleteEntry4: net = 
> 147.83.34.82/32 nexthop = 0.0.0.0 ifname =  vifname =  metric = 0 
> admin_distance = 0 xorp_route = false is_deleted = false is_unresolved = 
> false is_connected_route = false
> [ 2005/01/26 16:16:13  ERROR xorp_fea:2221 FEA +346 
> fticonfig_entry_set_click.cc delete_entry ] Cannot find outgoing port 
> number for the Click forwarding table element to delete entry net = 
> 192.168.242.2/32 nexthop = 0.0.0.0 ifname =  vifname =  metric = 0 
> admin_distance = 0 xorp_route = false is_deleted = false is_unresolved = 
> false is_connected_route = false
> [ 2005/01/26 16:16:13  ERROR xorp_fea:2221 FEA +346 
> fticonfig_entry_set_click.cc delete_entry ] Cannot find outgoing port 
> number for the Click forwarding table element to delete entry net = 
> 10.0.0.1/32 nexthop = 0.0.0.0 ifname =  vifname =  metric = 0 
> admin_distance = 0 xorp_route = false is_deleted = false is_unresolved = 
> false is_connected_route = false
> [ 2005/01/26 16:16:13 WARNING xorp_fea XrlFeaTarget ] Handling method 
> for redist_transaction4/0.1/commit_transaction failed: XrlCmdError 102 
> Command failed DeleteEntry4: net = 147.83.34.82/32 nexthop = 0.0.0.0 
> ifname =  vifname =  metric = 0 admin_distance = 0 xorp_route = false 
> is_deleted = false is_unresolved = false is_connected_route = false
> [ 2005/01/26 16:16:13  ERROR xorp_rib:2247 XifRedistTransaction6 +896 
> redist_xrl.cc dispatch_complete ] Failed to commit transaction

All errors and warnings above are triggered by the same bug inside
the FEA. This bug should be fixed now in the CVS repository.
Make sure that your fea/fticonfig_entry_set_click.cc file
has revision 1.19 (or newer).

Thanks,
Pavlin