From 55e9c2cd7b32bc9b67896fb9a4e85a8e6fd2f409 Mon Sep 17 00:00:00 2001 From: Miek Gieben Date: Wed, 24 Jun 2020 16:49:06 +0200 Subject: plugin/forward: remove exp backoff stuff (#3970) we hc every 0.5s, doing exp backoff will create a large gap in the ability to re-use an upstream. Doing a exp. backoff up to (say) 3s, isn't really exp backoff either. Remove the wording from the documentation. Signed-off-by: Miek Gieben --- plugin/forward/README.md | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) (limited to 'plugin') diff --git a/plugin/forward/README.md b/plugin/forward/README.md index 54810fbac..60d9b470c 100644 --- a/plugin/forward/README.md +++ b/plugin/forward/README.md @@ -9,14 +9,12 @@ The *forward* plugin re-uses already opened sockets to the upstreams. It supports UDP, TCP and DNS-over-TLS and uses in band health checking. -When it detects an error a health check is performed. This checks runs in a loop, starting with -a *0.5s* interval and exponentially backing off with randomized intervals up to *15s* for as long -as the upstream reports unhealthy. The exponential backoff will reset to *0.5s* after 2 minutes. -Once healthy we stop health checking (until the next error). The health checks use a recursive -DNS query (`. IN NS`) to get upstream health. Any response that is not a network error (REFUSED, -NOTIMPL, SERVFAIL, etc) is taken as a healthy upstream. The health check uses the same protocol as -specified in **TO**. If `max_fails` is set to 0, no checking is performed and upstreams will always -be considered healthy. +When it detects an error a health check is performed. This checks runs in a loop, performing each +check at a *0.5s* interval for as long as the upstream reports unhealthy. Once healthy we stop +health checking (until the next error). The health checks use a recursive DNS query (`. IN NS`) +to get upstream health. Any response that is not a network error (REFUSED, NOTIMPL, SERVFAIL, etc) +is taken as a healthy upstream. The health check uses the same protocol as specified in **TO**. If +`max_fails` is set to 0, no checking is performed and upstreams will always be considered healthy. When *all* upstreams are down it assumes health checking as a mechanism has failed and will try to connect to a random upstream (which may or may not work). -- cgit v1.2.3