Our 2021 Knot DNSRTT was developed by Pithayuth Charnsethikul, as part of a CSCI651 research project, advised by John Heidemann, in Fall 2020.
The template of DNSRTT is derived from the Knot RRL module.
DNSRTT provides the feature to enable TCbit whenever a DNS server needs extra tcp connections for measuring RTT.
Install Knot DNS following the instructions in Knot DNS documentation.
Generated a configuration file from LocalRoot.
Enable DNSRTT by setting the mod-dnsrtt module globally or per zone.
An example of enabling DNSRTT in knot.conf
mod-dnsrtt: - id: default tcp-need: 5 slip: 2 interval: 1800 experiment: on template: - id: default global-module: mod-dnsrtt/default
id: STR A module identifier tcp-need: INT (Required) Number of TCP connections for each client network (IPv4/24, IPv6/56) that a DNS server expects for each interval slip: INT, table-size: INT, whitelist: ADDR[/INT] | ADDR-ADDR ... refer to https://www.knot-dns.cz/docs/2.4/html/reference.html#mod-rrl interval: INT interval in seconds Default: 3600 experiment: BOOL if enabled, DNSRTT disables TCbit---doesn't send an actual TC bit--- but keep increasing the counter like it does. Otherwise, an actual TC bit is sent to a client. Default: on