[Xorp-users] OSPF Hello messages not exchanged after some period, and link status becomes dead

Ben Greear greearb at candelatech.com
Thu Apr 1 11:14:12 PDT 2010


On 04/01/2010 10:38 AM, Dejan Petkovic wrote:
> On Thu, Apr 1, 2010 at 4:21 AM, Ben Greear<greearb at candelatech.com>  wrote:
>> On 03/31/2010 07:06 PM, Ben Greear wrote:
>>
>> err, I was editing this by hand a bit....router id below should be
>> different than the previous one.
>>
>> The main thing is that you need the unique router table ID in
>> the FEA config.
>>
>>>           router-id: 127.1.0.1
>>>           area 0.0.0.0 {
>>>               interface "rddVR7" {
>>>                   vif "rddVR7" {
>>>                       address 2.2.2.2 {
>>>                          interface-cost: 1
>>>                       }
>>>                   }
>>>               }
>>>
>>>           } /* area */
>>>       }
>>> }
>>
>>
>> Thanks,
>> Ben
>>
>>
>> --
>> Ben Greear<greearb at candelatech.com>
>> Candela Technologies Inc  http://www.candelatech.com
>>
>
> Ben hi,
>
> The explanation was 100% clear, even more than that :) I had the
> config file prepared except the table-id input.
>
> Now, I can start two rtrmgr instances on one virtual machine, but how
> do I enter into the rtrmgr's terminal? Plain xorpsh does not work and
> gives back:
>
> [root at srv5 xorp.ct]# export XORP_FINDER_SERVER_PORT=5556
> [root at srv5 xorp.ct]# xorpsh
> Unexpected exception:   thrown did not correspond to specification - fix code.
> XrlPFConstructorError from line 38 of libxipc/xrl_pf_unix.cc ->  Cannot
> allocate memory
> terminate called after throwing an instance of 'XrlPFConstructorError'
> Aborted
> [root at srv5 xorp.ct]#

That should have worked..looks like it's crashing or asserting.

XrlPFUNIXListener::XrlPFUNIXListener(EventLoop& e, XrlDispatcher* xr)
     : XrlPFSTCPListener(&e, xr)
{
     string path = get_sock_path();

     _sock = comm_bind_unix(path.c_str(), COMM_SOCK_NONBLOCKING);
     if (!_sock.is_valid())
	xorp_throw(XrlPFConstructorError, comm_get_last_error_str());

You might try adding some debugging logic to figure out why _sock isn't
valid.  I *might* be memory allocation error, but I'm not sure how
valid that comm_get_last_error_str is (I haven't looked at that code anytime
recently).

> Btw, I see rather high CPU usage level with only two virtual machines,
> with three xorp_rtrmgrs on it. On AMD Athlon X4 620, it loads CPU
> approximately 40%.

Use top, see what processes are using lots of CPU.  Use strace on those processes
and see if it appears they are doing lame things (select/poll with no or small
timeout in a tight loop, without doing any other IO, that sort of thing).

> Lastly, I should use traffic generator for my tests. However, I had
> some difficulties in installing RUDE traffic generator, so I was
> wondering if you could suggest a better, more stable solution?

Heh, we sell such a product, but not sure it would integrate with your
openvz environment..and it's not free.  Maybe something like iperf or
netperf?

Thanks,
Ben

-- 
Ben Greear <greearb at candelatech.com>
Candela Technologies Inc  http://www.candelatech.com



More information about the Xorp-users mailing list