[Xorp-users] Understanding structure of Forwarding Table

Ben Greear greearb at candelatech.com
Mon Dec 5 12:11:56 PST 2011


On 12/05/2011 12:07 PM, Matt Sinclair wrote:
> Thanks Ben, I'll look into that.  However, I was also wondering if
> anyone had insight into where this is set up?

I think each xorp module has several routing tables, and there
is some fancy logic to merge these into final routing table, which
is then poked into the kernel.  You could add some static instance
counts the the appropriate classes (see the BugCatcher logic
for example of how to do this sort of thing).

Thanks,
Ben

>
> Matt
>
> On Mon, Dec 5, 2011 at 12:49 PM, Ben Greear<greearb at candelatech.com>  wrote:
>> On 12/04/2011 11:55 AM, Matt Sinclair wrote:
>>> Hi Ben,
>>>
>>> Thanks for getting back to me!  What you said is definitely true, but
>>> I'm still interested in what the number might be.  Also, I'm
>>> interested in trying to separate out control and data plane memory
>>> requirements, so if I did as you proposed, wouldn't I be unable to
>>> make that distinction?
>>
>> Your OS should be able to tell you the kernel usage v/s
>> the memory used by the xorp binaries.  'top' will do this
>> on Linux, and /proc/meminfo and other tools can tell you
>> details about the kernel memory usage.
>>
>> Thanks,
>> Ben
>>
>>>
>>> Thanks,
>>> Matt
>>>
>>> On Sun, Dec 4, 2011 at 1:45 PM, Ben Greear<greearb at candelatech.com>    wrote:
>>>> On 12/03/2011 04:55 PM, Matt Sinclair wrote:
>>>>> Hi everyone,
>>>>>
>>>>> I'm new to XORP and I'm interested in looking at how much memory XORP
>>>>> uses on a commodity machines.  Specifically, I'm interested in how
>>>>> many entries the forwarding table has (and thus how much memory
>>>>> they're using).  However, I can't seem to find where this is defined
>>>>> in the code.  Where does the FEA actually store routing information
>>>>> (the information base) and in what manner does it store it?  I imagine
>>>>> it's somewhere in the xorp/fea/ folder, but I'm getting lost in all
>>>>> the abstract classes and can't find it.  I saw in fibconfig.hh that it
>>>>> has a trie4/trie6 field, which I believe correspond to a forwarding
>>>>> table for the IPv4 and IPv6 packets, but it says that those fields are
>>>>> for "testing purpose" only, so I'm not sure if they're what's actually
>>>>> being used or not.
>>>>>
>>>>> As far as I can tell, I haven't seen any questions about this on the
>>>>> user forum in the past 16 months or so, so if I'm asking a question
>>>>> that's been asked before, I apologize.  I also didn't see anything on
>>>>> this in the documentation.  Thanks for any help you may be able to
>>>>> provide!
>>>>
>>>> Well, you can get a nice server with 16GB of RAM for less than $2000
>>>> these days, so I'm not sure it matters.  I have a feeling that some
>>>> other bottleneck will be found first if you are trying to use very large
>>>> numbers of routes.
>>>>
>>>> Maybe just figure out how to add lots of routes, and check the actual
>>>> memory usage with 10, 1000, 10,000 routes.
>>>>
>>>> Thanks,
>>>> Ben
>>>>
>>>>
>>>> --
>>>> Ben Greear<greearb at candelatech.com>
>>>> Candela Technologies Inc  http://www.candelatech.com
>>>
>>> _______________________________________________
>>> Xorp-users mailing list
>>> Xorp-users at xorp.org
>>> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users
>>
>>
>> --
>> Ben Greear<greearb at candelatech.com>
>> Candela Technologies Inc  http://www.candelatech.com
>>
>
> _______________________________________________
> Xorp-users mailing list
> Xorp-users at xorp.org
> http://mailman.ICSI.Berkeley.EDU/mailman/listinfo/xorp-users


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



More information about the Xorp-users mailing list