[bind10-dev] performance issue about view
xinpu wang
xiaoyaobilang at gmail.com
Mon Jul 20 08:05:45 UTC 2009
Hi all,
I'm not sure whether this mail is proper here, so put my apology first.
I have been using BIND as a CDN DNS server for a while, and found that the
performance would be significantly affected if the numbers of views and ACL
rules of each view are large.
In bind-9.3.4, to find the match view for a client IP, two lists are need to
be searched, one list for views and each view has a list of ACL rules. Under
this condition, the performance is extremely poor when I tested.
IN bind-9.6.0 I used, the list of ACL rules is replaced by a tree, so the
number of ACL rules impacts the performance little. But views are still
stored in a list, and if there are many views, it also needs much time to
search every view from head to tail.
I made a little change, simple and ugly, using an array to store the mapping
relationship between IP and the view it can access. This can increase the
performance from 17%to 100%(the number of views from 10 to 100).
I'm wondering whether this issue deserved a more completely consideration
and an elegant design, while I aware that the aim of BIND maybe is just a
general function DNS server and adding ten views with tens of thousands ACL
rules sounds not a common situation.
Thank you for your time.
Best regards
Sid
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.isc.org/pipermail/bind10-dev/attachments/20090720/8900c6a6/attachment.html>
More information about the bind10-dev
mailing list