Maintained by: NLnet Labs

[Unbound-users] Packets lost when multi threading

Kyohei Moriyama
Sun Dec 9 11:50:12 CET 2012



--  
Kyohei Moriyama


日付:2012年12月7日金曜日、時刻:22:14、差出人:Leo Baltus:

> Op 07/12/2012 om 12:38:27 +0100, schreef W.C.A. Wijngaards:
> > On 12/07/2012 12:20 PM, Leo Baltus wrote:
> > > Op 07/12/2012 om 11:50:04 +0100, schreef W.C.A. Wijngaards:
> > > > -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
> > > >  
> > > > Hi Leo,
> > > >  
> > > > On 12/07/2012 11:29 AM, Leo Baltus wrote:
> > > > > Hi,
> > > > >  
> > > > > When I run unbound multi-threaded perf keeps reporting
> > > > > 'Packets lost', but when it runs single threaded it does not.
> > > > >  
> > > > > $ perf -d 10 -a 'www.omroep.nl IN A' 2a02:458:101:31::34 qps:  
> > > > > 29262.9 qps: 31986.4 qps: 32167.5 qps: 32479.7 qps: 33064.3
> > > > > qps: 32174.4 qps: 31408.1 qps: 35887.4 qps: 37471.3 qps:
> > > > > 35364.5 overall time: 10.0001 sec Packets lost: 732
> > > > > 0(NOERROR): 331249 replies average qps: 33124.5
> > > > >  
> > > > > This is unbound-1.4.18 with openssl-1.0.0j, ldns-1.6.16 and  
> > > > > libevent-2.0.21-stable running on a linux-2.6.27.59 kernel.
> > > > >  
> > > > > It even reports this when perf is run on the host running
> > > > > unbound.
> > > > >  
> > > > > Is this a known issue?
> > > >  
> > > > No. Can you try setting so-rcvbuf higher (4m) ? It may be lost  
> > > > simply because it is out of buffers. There is nothing intrinsic
> > > > in unbound that makes it drop packets in this setup; it must be
> > > > the OS.
> > > >  
> > >  
> > >  
> > > It makes no difference.
> > >  
> > > here's the multithreading part of my unbound.conf:
> > >  
> > > num-threads: 4 outgoing-range: 8192 num-queries-per-thread: 4096  
> > > so-rcvbuf: 4m
> > >  
> > > Also 'netstat -su' does not report any increments on 'receive
> > > errors' or RcvbufErrors.
> > >  
> >  
> >  
> > Perhaps perf fails to count them? They may still be in transit, and
> > perf stops abruptly, counts them as lost? tcpdump may be able to
> > count the number of packets that transited and where those 732 packets
> > went?
> >  
>  
>  
> I think you are right.
>  
> Once perf stopped receiving, the client started to send 'ICMP dest.
> unreachable'. If I add the number of packets, they get pretty close to the
> number of packets lost reported by perf.
>  
> So maybe perf should just stop sending after $duration (or SIGHUP) and
> wait a while for the last packets to arrive?
>  
> --  
> Leo Baltus, internetbeheerder /\
> NPO ICT Internet Services /NPO/\
> Sumatralaan 45, 1217 GP Hilversum, Filmcentrum, west \ /\/
> servicedesk at omroep.nl, 035-6773555 \/
> _______________________________________________
> Unbound-users mailing list
> Unbound-users at unbound.net
> http://unbound.nlnetlabs.nl/mailman/listinfo/unbound-users
>  
>  


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://unbound.nlnetlabs.nl/pipermail/unbound-users/attachments/20121209/2cc5432b/attachment.html>