hi, Aki tnuomi,  
Thank you for  suggestion. I found pdns always get the fastest one from the 
front of result returned by function "SyncRes::shuffleInSpeedOrder”. If a slow 
one at the back has no opportunity to be choosed, how pdns know it become fast. 
I can not find the source code make pdns query the slow one.  

on the other hand, I found there is a houseKeeping thread which will erase the 
stale speed value of a dns server . If a slow dns at the back of 
t_sstorage->nsSpeeds map, it will be erased because of rarely to be queried, 
and only fast dns server will have its speed updated by this code "  
t_sstorage->nsSpeeds[*tns].submit(*remoteIP, lwr.d_usec, &d_now);” at 
syncres.cc:1003.
. And then, only dns servers which are mostly queried will stay in 
t_sstorage->nsSpeeds map. It make me puzzled.

--  
jacky


On Friday, December 27, 2013 at 3:08 PM, Aki Tuomi wrote:

> On Thu, Dec 26, 2013 at 10:34:23PM +0800, jacky wrote:
> > hi, all,  
> > I think may be it is a question more suitable to dev maillist, so I submit 
> > it here. If I made a mistake , please let me know. Thanks.
> >  
> > I'am reading the source code of pdns-recursor-3.5.3. There is question I 
> > can not understand.
> > When a authoritative dns server become slow because of overload, 
> > pdns-recursor will move it backwards in the  
> > t_sstorage->nsSpeeds map, and then a faster dns server will be used 
> > preferred. But when the dns server recoverd  
> > from overload and become fast again, what will pdns-recursor do about it ? 
> > Will pdns-recursor move it forward  
> > in speed map? I can't find relevant source code. Any suggestion?
> >  
> > --  
> > jacky
> >  
>  
>  
> Hi!
>  
> It works by moving the fastest one on top.  
>  
> > _______________________________________________
> > Pdns-dev mailing list
> > [email protected] (mailto:[email protected])
> > http://mailman.powerdns.com/mailman/listinfo/pdns-dev
> >  
>  
>  
>  


_______________________________________________
Pdns-dev mailing list
[email protected]
http://mailman.powerdns.com/mailman/listinfo/pdns-dev

Reply via email to