从1.5.8升级到1.6.7后,绑定速度降低50%

时间:2018-06-20 10:26:18

标签: linux dns ubuntu-18.04

我最近进行了OS升级,随之而来的是从1.5.8升级到1.6.7,以进行未绑定。

查看升级前后的未绑定统计信息,我发现平均递归处理时间增加了50%。

之前:

Jun 13 10:39:43 proxy-1 unbound: [26309:0] info: average recursion processing time 0.105584 sec
Jun 13 11:39:43 proxy-1 unbound: [26309:0] info: average recursion processing time 0.116293 sec
Jun 13 12:39:43 proxy-1 unbound: [26309:0] info: average recursion processing time 0.109271 sec
Jun 13 13:39:43 proxy-1 unbound: [26309:0] info: average recursion processing time 0.145702 sec

之后(高峰时段中午的可比较时间):

 Jun 15 10:02:41 proxy-1 unbound: [30571:0] info: average recursion processing time 0.170653 sec
 Jun 15 11:02:41 proxy-1 unbound: [30571:0] info: average recursion processing time 0.186744 sec
 Jun 15 12:02:41 proxy-1 unbound: [30571:0] info: average recursion processing time 0.181295 sec
 Jun 15 13:02:41 proxy-1 unbound: [30571:0] info: average recursion processing time 0.183084 sec
 Jun 15 14:02:41 proxy-1 unbound: [30571:0] info: average recursion processing time 0.179574 sec

1.5到1.6之间的变化是否会严重影响性能?

2 个答案:

答案 0 :(得分:1)

对不起,这并没有真正回答,但确实提供了一些调查详细信息


我还注意到,从Ubuntu 16.04升级到18.04时,DNS解析速度有所下降,这将Unbound从1.5.8升级到1.6.7,速度降低了约20%: Chart showing 20% increase in DNS resolution time

我已经拥有大多数这些优化标志,并且我并没有很大的并发性,这是我使用的配置:

server:
  access-control: 127.0.0.1 allow_snoop
  access-control: ::1 allow_snoop
  val-log-level: 1
  so-rcvbuf: 4m
  so-sndbuf: 4m
  key-cache-size: 128m
  msg-cache-size: 128m
  rrset-cache-size: 256m
  prefetch: yes
  prefetch-key: yes

我尝试添加大多数有关线程的内容,但没有帮助。在重启后查看日志后,尽管我注意到了以下警告:

so-sndbuf 4194304 was not granted. Got 425984. To fix: start with root permissions(linux) or sysctl bigger net.core.wmem_max(linux) or kern.ipc.maxsockbuf(bsd) values.
so-rcvbuf 4194304 was not granted. Got 425984. To fix: start with root permissions(linux) or sysctl bigger net.core.rmem_max(linux) or kern.ipc.maxsockbuf(bsd) values.

在升级之前不存在,所以我尝试增加这些值:

echo "net.core.rmem_max = 16777216" | sudo tee -a /etc/sysctl.conf
echo "net.core.wmem_max = 16777216" | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
sudo systemctl restart unbound

此后没有更多警告,但性能仍然不变,比1.5.8慢20%。我仍然没有找到原因。

答案 1 :(得分:0)

事实证明,庞大的查询量导致unbound的速度变慢(没有优化)。 然后,我实现了https://www.unbound.net/documentation/howto_optimise.html中概述的优化 并且查询时间大大减少。