<Query, Answer> Packet pair Caching

Oct 30, 2012 at 11:07 PM

I would like to incorporate that feature into the DnsServer. Commercial dns servers like PowerDns has that feature together with a second level of db/file repository caching. Do cache for frequent queries at the packet or tcp/udp buffer level will save the server from doing DnsMessage serialization and deserialization. I can see that it will require modifying the code; There are no other entry point I can override right after the query request and before the ProcessQuery call. 

Also, what do you guys think of the idea of caching query and answer packet? 



Nov 4, 2012 at 1:40 PM

Nice idea. But caching the packets will cause several difficulties. First of all, the transaction id should be different on each request. On answer packets, the query section must be copied byte per byte. On stub resolvers, the ttl of records must be decreases every second. And these are only the first difficulties I imagine. Because of that, I don't think, that I will add this feature in near future.