Latency spikes on FreeBSD 8.2 with kernel scan function.

Alexander V. Chernikov melifaro at FreeBSD.org
Wed Nov 23 16:09:59 CET 2011


On 22.11.2011 12:43, 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
Okay. Can you shutdown your iBGP peer and check again?
> 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.
 From kernel point of view scan is exactly the same as 'netstat -rn' 
execution (and, maybe, 'ifconfig')
>
> ping -M time -i 0.01 127.0.0.1:
You can try to use larger packets (-s 1400, for example) to make sure 
that large packets triggers delay much more often.

You can disable shaper and see if the problem disappears.
You can send me your shaper configuration off-list.

>
> 76 bytes from 127.0.0.1: icmp_seq=3207 ttl=64 time=0.015 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
> 76 bytes from 127.0.0.1: icmp_seq=3208 ttl=64 time=0.016 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
> 76 bytes from 127.0.0.1: icmp_seq=3209 ttl=64 time=149.246 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
> 76 bytes from 127.0.0.1: icmp_seq=3210 ttl=64 time=169.547 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
> 76 bytes from 127.0.0.1: icmp_seq=3211 ttl=64 time=0.028 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
> 76 bytes from 127.0.0.1: icmp_seq=3212 ttl=64 time=0.022 ms tso=08:40:08 tsr=08:40:08 tst=08:40:08
>
> 76 bytes from 127.0.0.1: icmp_seq=4948 ttl=64 time=0.017 ms tso=08:40:27 tsr=08:40:27 tst=08:40:27
> 76 bytes from 127.0.0.1: icmp_seq=4949 ttl=64 time=0.016 ms tso=08:40:27 tsr=08:40:27 tst=08:40:27
> 76 bytes from 127.0.0.1: icmp_seq=4950 ttl=64 time=150.495 ms tso=08:40:27 tsr=08:40:28 tst=08:40:28
> 76 bytes from 127.0.0.1: icmp_seq=4951 ttl=64 time=0.026 ms tso=08:40:28 tsr=08:40:28 tst=08:40:28
> 76 bytes from 127.0.0.1: icmp_seq=4952 ttl=64 time=0.026 ms tso=08:40:28 tsr=08:40:28 tst=08:40:28
>
> 76 bytes from 127.0.0.1: icmp_seq=8586 ttl=64 time=0.016 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
> 76 bytes from 127.0.0.1: icmp_seq=8587 ttl=64 time=0.016 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
> 76 bytes from 127.0.0.1: icmp_seq=8588 ttl=64 time=149.361 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
> 76 bytes from 127.0.0.1: icmp_seq=8589 ttl=64 time=168.944 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
> 76 bytes from 127.0.0.1: icmp_seq=8590 ttl=64 time=0.026 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
> 76 bytes from 127.0.0.1: icmp_seq=8591 ttl=64 time=0.021 ms tso=08:41:08 tsr=08:41:08 tst=08:41:08
>
> Nov 22 09:40:08 storm bird: kernel1: Scanning routing table
> Nov 22 09:40:08 storm bird: kernel1: Pruning table master
> Nov 22 09:40:27 storm bird: kernel1: Scanning routing table
> Nov 22 09:40:28 storm bird: kernel1: Pruning table master
> Nov 22 09:40:47 storm bird: kernel1: Scanning routing table
> Nov 22 09:40:48 storm bird: kernel1: Pruning table master
> Nov 22 09:41:08 storm bird: kernel1: Scanning routing table
> Nov 22 09:41:09 storm bird: kernel1: Pruning table master
>
> bird>  show protocols
> name     proto    table    state  since       info
> kernel1  Kernel   master   up     02:52
> device1  Device   master   up     02:52
> NN_Gate  BGP      master   up     02:52       Established
> static1  Static   master   down   09:36
>
>
>


-- 
WBR, Alexander



More information about the Bird-users mailing list