[Xorp-hackers] Some performance numbers
Hasso Tepper
hasso@linux.ee
Thu, 23 Feb 2006 15:11:22 +0200
I have played with BGP full feed during last days and found out that
unfortunately performance isn't acceptable for real world usage. Tests
have been done with 1.8 Pentium M (speed-step off) laptop 512MB memory.
One eBGP multihop peer announcing full table. For nexthop resolving static
the default route is entered into Xorp.
Peer up without static default route (no routes installed into RIB):
********************************************************************
It takes about 4 seconds to receive full table, xorp_bgp takes about 90MB
of memory after this. Not very bad IMHO.
Peer up with static default route (routes installed into RIB and FIB):
**********************************************************************
It takes about 60 seconds to receive full table and to put routes into
RIB/FIB, xorp_bgp takes about 100MB of memory after this. Memory usage is
still acceptable, but 60 seconds is certainly very far from being
acceptable.
Peer down with static default route (routes removed from RIB and FIB):
**********************************************************************
Just entered "disable: true" into peer config and committed. It takes
about 4 minutes and 40 seconds to remove all routes from RIB and FIB.
This isn't acceptable at all of course.
I wouldn't expect from Xorp instant failover and peer up/down times like
hardware router vendors can achieve. They have many tricks in use which
are not available for software routers. But it should be certainly happen
during max some seconds, not minutes.
Questions ... Is anyone aware of problem? Is it BGP or RIB or IPC or ...
problem? Is it worth of effort to open bugreport regarding this? Can I
help with something? I'm not familiar enough with design of XORP and C++
coding yet to solve design related problems though yet. But I have
environment and can profile (direction, please?), test patches etc.
regards,
--
Hasso Tepper