big performance loss in 9.16 compared to version 9.11
Summary
I was doing some test before upgrading from bind 9.11 to 9.16 and I encounter a big perfomance loss between those verions. I have a loss of 75% ! I was at 400k query per second in bind 9.11 and in bind 9.16 i was only at 100k query per second
BIND version used
BIND 9.16.6 (Stable Release) id:25846cf
BIND 9.11.22 (Extended Support Version) id:6a05a96
Steps to reproduce
Use the following named.conf file :
options {
listen-on-v6 { any; };
version "";
max-cache-size 100M;
max-journal-size 10M;
check-names master ignore;
check-integrity no;
check-sibling no;
dnssec-secure-to-insecure yes;
directory "/etc/namedb";
recursion no;
server-id "bind-auth";
};
controls {
inet 127.0.0.1 port 953 allow {
127.0.0.1/32;
} ;
};
acl "admin" {
"any";
};
zone "incache" {
type master;
file "incache";
allow-update { any; };
};
And for the incache zone use the following zone file :
$ORIGIN @
$TTL 86400 ; 1 day
@ IN SOA bench. root. (
6293 ; serial
21600 ; refresh (6 hours)
3600 ; retry (1 hour)
604800 ; expire (1 week)
600 ; minimum (10 minutes)
)
NS bench
bench A 10.0.22.24
$TTL 86400 ; 1 day
* A 1.1.1.1
* AAAA 8888::1111
Then run a dnsperf (using the file in atachement ):
dnsperf -c 2 -l -d file.dnsperf -s $DNS_IP
What is the current bug behavior?
In the Curent Stable 9.16 on FreeBSD 11-Stable I have 100k query per second And in the 9.11 on same hardware and same os I have 400k query per second
On a FreeBSD-12 it is better but i still have a performance drop. On current : 9.16 200k query per second : 9.11 100k query per second
What is the expected correct behavior?
I was expecting at least to have the same performance on both versions.
Relevant logs and/or screenshots
DNSPERF on 9.16 : `
[Status] Testing complete (time limit)
Statistics:
Queries sent: 966633
Queries completed: 966633 (100.00%)
Queries lost: 0 (0.00%)
Response codes: NOERROR 966633 (100.00%)
Average packet size: request 29, response 45
Run time (s): 10.000892
Queries per second: 96654.678403
Average Latency (s): 0.001024 (min 0.000047, max 0.001866)
Latency StdDev (s): 0.000074
DNSPERF on 9.11 :
[Status] Testing complete (time limit)
Statistics:
Queries sent: 4144501
Queries completed: 4144501 (100.00%)
Queries lost: 0 (0.00%)
Response codes: NOERROR 4144501 (100.00%)
Average packet size: request 29, response 81
Run time (s): 10.000196
Queries per second: 414441.976937
Average Latency (s): 0.000225 (min 0.000035, max 0.013790)
Latency StdDev (s): 0.000053