[Xorp-users] Why Xorp so slow ?

Sébastien Namèche seb at anet.fr
Fri Jul 3 03:35:03 PDT 2009


Hi,

We spent those last days experimenting Xorp, OpenBGP and Quagga.

We found that Xorp takes a lot of time to construct the RIB and to  
inject all prefixes to the kernel routing tables. For example, for the  
same machine, same OS, this is the rough time needed to import the  
global routing table from a peer just after the opening of the BGP  
session :
   - OpenBGP: less than 1 minute ;
   - Quagga: between 2 and 3 minutes ;
   - Xorp: 14 minutes.

This is a copy of the first lines of a "top" running while importing  
the global routing table :

-----
last pid:  1055;  load averages:  1.44,  0.82,  0.40    up 0+00:13:38   
13:53:40
24 processes:  2 running, 22 sleeping
CPU: 88.3% user,  0.0% nice, 10.5% system,  1.2% interrupt,  0.0% idle
Mem: 74M Active, 21M Inact, 29M Wired, 252K Cache, 11M Buf, 1372M Free
Swap: 3039M Total, 3039M Free

   PID USERNAME  THR PRI NICE   SIZE    RES STATE    TIME   WCPU COMMAND
   545 root        1 103    0 47044K 44152K RUN      1:36 32.96%  
xorp_bgp
   451 root        1  59    0 15424K 10676K select   0:58 22.17%  
xorp_fea
   512 root        1  59    0 19268K 15924K select   0:51 18.26%  
xorp_rib
-----

The CPU is 100% busy during 14 minutes.

It's old hardware, in production we will use servers 2 ou 3 times  
faster. But still, I don't understand why there is so much differences  
between Xorp and the others.

Regards,

-- 
Seb



More information about the Xorp-users mailing list