]> git.ipfire.org Git - thirdparty/pdns.git/blame - pdns/dnsdistdist/docs/reference/tuning.rst
dnsdist: Update the documentation for the new TCP stack
[thirdparty/pdns.git] / pdns / dnsdistdist / docs / reference / tuning.rst
CommitLineData
20d81666
PL
1Tuning related functions
2========================
3
4.. function:: setMaxTCPClientThreads(num)
5
0f129b3e 6 Set the maximum of TCP client threads, handling TCP connections. Before 1.4.0 a TCP thread could only handle a single incoming TCP connection at a time, while after 1.4.0 it can handle a larger number of them simultaneously.
20d81666
PL
7
8 :param int num:
9
10.. function:: setMaxTCPConnectionDuration(num)
11
12 Set the maximum duration of an incoming TCP connection, in seconds. 0 (the default) means unlimited
13
14 :param int num:
15
16.. function:: setMaxTCPConnectionsPerClient(num)
17
18 Set the maximum number of TCP connections per client. 0 (the default) means unlimited
19
20 :param int num:
21
22.. function:: setMaxTCPQueriesPerConnection(num)
23
24 Set the maximum number of queries in an incoming TCP connection. 0 (the default) means unlimited
25
26 :param int num:
27
28.. function:: setMaxTCPQueuedConnections(num)
29
30 Set the maximum number of TCP connections queued (waiting to be picked up by a client thread), defaults to 1000. 0 means unlimited
31
32 :param int num:
33
34.. function:: setMaxUDPOutstanding(num)
35
36 Set the maximum number of outstanding UDP queries to a given backend server. This can only be set at configuration time and defaults to 10240
37
38 :param int num:
39
40.. function:: setCacheCleaningDelay(num)
41
42 Set the interval in seconds between two runs of the cache cleaning algorithm, removing expired entries
43
44 :param int num:
45
46.. function:: setCacheCleaningPercentage(num)
47
48 Set the percentage of the cache that the cache cleaning algorithm will try to free by removing expired entries. By default (100), all expired entries are removed
49
50 :param int num:
51
52.. function:: setStaleCacheEntriesTTL(num)
53
54 Allows using cache entries expired for at most n seconds when no backend available to answer for a query
55
56 :param int num:
57
58.. function:: setTCPUseSinglePipe(val)
59
60 Whether the incoming TCP connections should be put into a single queue instead of using per-thread queues. Defaults to false
61
62 :param bool val:
63
64.. function:: setTCPRecvTimeout(num)
65
66 Set the read timeout on TCP connections from the client, in seconds
67
68 :param int num:
69
70.. function:: setTCPSendTimeout(num)
71
72 Set the write timeout on TCP connections from the client, in seconds
73
74 :param int num:
75
4bc167b8
RG
76.. function:: setUDPMultipleMessagesVectorSize(num)
77
87cb3110 78 .. versionadded:: 1.3.0
4bc167b8 79
87cb3110
PL
80 Set the maximum number of UDP queries messages to accept in a single ``recvmmsg()`` call. Only available if the underlying OS
81 support ``recvmmsg()`` with the ``MSG_WAITFORONE`` option. Defaults to 1, which means only query at a time is accepted, using
82 ``recvmsg()`` instead of ``recvmmsg()``.
4bc167b8 83
87cb3110 84 :param int num: maximum number of UDP queries to accept
4bc167b8 85
20d81666
PL
86.. function:: setUDPTimeout(num)
87
4bc167b8 88 Set the maximum time dnsdist will wait for a response from a backend over UDP, in seconds. Defaults to 2
20d81666
PL
89
90 :param int num: