[Xorp-users] error with XRLs

Atanu Ghosh atanu@ICSI.Berkeley.EDU
Wed, 02 Feb 2005 15:29:36 -0800


Hi,

If you choose to start the processes yourself you will need to start RIB
(xorp_rib) and FEA (xorp_fea) process, otherwise BGP will not allow
peer information to be added.

Use xorp_fea_dummy if you don't want routes to get into the kernel.

RIB - Routing Information Base
FEA - Forwarding Engine Abstraction

   Atanu.

>>>>> "Pavlin" == Pavlin Radoslavov <pavlin@icir.org> writes:

    >> I guess I should also add that I had compiled my module on its
    >> own and then I started it up on its own at the shell prompt.  So
    >> maybe I need to have Xorp start it somehow?

    Pavlin> Jeff,

    Pavlin> The problem is that you need to have a running XORP finder
    Pavlin> if you use XRLs. For that you have two options:

    Pavlin> 1. Add a rtrmgr template to etc/templates/your_protocol.tp
    Pavlin> that will contain the rtrmgr template how to configure your
    Pavlin> protocol, the XRLs sent to your protocol to configure it,
    Pavlin> etc.  Then, when you run xorp_rtrmgr, it will start the XORP
    Pavlin> finder, your protocol, etc and everything else that is
    Pavlin> needed.

    Pavlin> 2. Start libxipc/xorp_finder by hand before starting your
    Pavlin> protocol.

    Pavlin> Option (2) is simpler during initial development testings
    Pavlin> until you have something stable and running.

    Pavlin> Also, please note that you cannot have more than one finder
    Pavlin> on the same machine. E.g., if you have started a XORP router
    Pavlin> (which will be running a finder internally), then you cannot
    Pavlin> start xorp_finder by hand. If, say, you need other XORP
    Pavlin> components as well (say, fea, rib, bgp, etc), then you can
    Pavlin> start each of them by hand in the appropriate order. E.g.,
    Pavlin> xorp_finder, xorp_fea, xorp_rib, xorp_bgp, etc...

    Pavlin> Regards, Pavlin

    >> Jeff
    >> 
    >> On 1 Feb 2005, Jeff Krasky wrote:
    >> >  
    >> > Hi, > I am writing my own module and I plan on having it use
    >> the BGP XRLs to > communicate with the running BGP process.  I
    >> have compiled and built my > executable and when I run it, I get
    >> this error:
    >> > 
    >> > [ 2005/02/01 20:54:06 ERROR bgp_beacon:24432 XRL +569
    >> xrl_router.cc > wait_until_xrl_router_is_ready ] XrlRouter
    >> failed. No finder?
    >> > 
    >> > Here is what my call looks like: > My header file,
    >> bgp_beacon.hh, declares the variables
    >> > 
    >> > EventLoop _eventloop; > XrlStdRouter *_xrl_router;
    >> > 
    >> > Then in my constructor, I say
    >> > 
    >> > _xrl_router = new XrlStdRouter(_eventloop, "bgp_beacon"); >
    >> wait_until_xrl_router_is_ready(_eventloop, *_xrl_router);
    >> > 
    >> > Is there something else I should be doing so that I don't get
    >> this error > when I make the call to
    >> wait_until_xrl_router_is_ready()?  I've read > through some docs
    >> on the xorp site and also one tutorial about XRLs by > somebody
    >> in the UK and so this is where I am at.
    >> > 
    >> > Thanks for any hints.
    >> > 
    >> > _______________________________________________ > Xorp-users
    >> mailing list > Xorp-users@xorp.org >
    >> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
    >> > 
    >> 
    >> 
    >> _______________________________________________ Xorp-users
    >> mailing list Xorp-users@xorp.org
    >> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users

    Pavlin> _______________________________________________ Xorp-users
    Pavlin> mailing list Xorp-users@xorp.org
    Pavlin> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users