[quagga-dev 3210] Re: [PATCH] non-blocking I/O from client daemons tozebra

Simon Talbot simont at nse.co.uk
Thu Apr 14 09:13:40 BST 2005


The test was run at about 11.30pm last night, this dump is from 9am the
morning after. Quagga had been restarted (with the new codebase) shortly
before the tests.

If it is of any relevance, 75% of the peering connections on this router
use MD5 passwords.

he-gw1-bgpd# show thread cpu
 Runtime(ms)    Invoked Avg uSecs   Max uSecs  Type Thread
     120.000      47661         2       10000   T   bgp_keepalive_timer
       0.000          1         0           0    E  zclient_connect
      70.000      90869         0       10000   T   bgp_routeadv_timer
   83550.000         61   1369672    83480000 R     vtysh_read
    4390.000     142191        30      170000  W    bgp_write
       0.000          1         0           0    E  zlookup_connect
   76290.000     185854       410     1560000    E  bgp_event
       0.000          1         0           0 R     vty_accept
       0.000         22         0           0  W    vty_flush
       0.000         61         0           0 R     zclient_read
       0.000         21         0           0 R     vty_read
       0.000          5         0           0 R     vtysh_accept
      10.000        126        79       10000   T   bgp_start_timer
  331200.000     185686      1783      550000 R     bgp_read
 1090540.000        568   1919964     2060000   T   bgp_scan_timer
      90.000        363       247       10000 R     bgp_accept
      50.000       1399        35       10000   T   bgp_connect_timer
       0.000       2273         0           0   T   bgp_import
    8220.000         34    241764      290000   T   bgp_holdtime_timer
       0.000          1         0           0    E  smux_connect
 1594530.000     657198      2426    83480000 RWTEX TOTAL 

Simon

Simon Talbot MEng, ACGI
(Chief Engineer)
Tel: 0845 6440972
Fax: 0845 6440971


-----Original Message-----
From: Paul Jakma [mailto:paul at clubi.ie] 
Sent: 14 April 2005 04:11
To: Andrew J. Schorr
Cc: Simon Talbot; Quagga Dev
Subject: Re: [quagga-dev 3198] Re: [PATCH] non-blocking I/O from client
daemons tozebra

On Wed, 13 Apr 2005, Andrew J. Schorr wrote:

> Just curious: why doesn't it solve that problem?  Is it blocking on 
> the zlookup stuff in bgpd/bgp_nexthop.c?

I think it does way way too much work inside bgp_event(). See bgp_event
calling bgp_stop calling bgp_clear_route_all(peer).

All in one unbroken thread - no other IO gets a look in. That inner loop
needs to be broken up into bite-size chunks i think.

Simon, can you post 'show thread cpu' from the bgpd vty after you've had
this problem and bgpd has become responsive again?

regards,
-- 
Paul Jakma	paul at clubi.ie	paul at jakma.org	Key ID: 64A2FF6A
Fortune:
"I'm willing to sacrifice anything for this cause, even other people's
lives."




More information about the Quagga-dev mailing list