On 23.11.2011 19:27, Ondrej Zajicek wrote:
On Tue, Nov 22, 2011 at 09:43:52AM +0100, Pawel Tyll wrote:
I do have dummynet configured, but like I said - every 20 seconds network freezes for about 0.5s. Guess what happens every 20 seconds... You got it! Protocol "kernel" scans the kernel routes. Also, after /usr/local/etc/rc.d/bird stop, problem is gone. What could be causing bird is stopped, traffic forwarding is stopped (since dynamic routes disappers) ? Perhaps your configuration shapes ALL (e.g. network AND local) traffic withing single queue? If so, when queue is full with network traffic even local traffic is delayed ? No no. And there's almost no traffic. There's one IBGP peer, this machine isn't in production yet. It was for a moment, but had to be pulled because of this. I'm 100% certain this has something to do with 'scan' facility of 'kernel' protocol.
You can verify that by disabling 'kernel' protocol.
On BSD, kernel scan is implemented by requesting a big buffer and copying several tens of MB of route data from kernel to BIRD. I am not an expert on BSD, but perhaps there may be some kernel problem on some BSD version? This looks much more like some shaper configuration problem. There are no global locks in kernel for entire routing table. And no consumer can hold lock that can be acquired by ISR for such a long time.
I've sent my previous reply in this topic yesterday but, unfortunately, mailman blocks my e-mail due to unknown From address. (So I send it now as separate letter without any CC:)
Another possible explanation is that kernel scan for some reason generates a lot of log messages that strains the disk/systen, but i would doubt that.
-- WBR, Alexander