[dns-operations] On server selection algorithms in dns resolvers
roy at dnss.ec
Mon Nov 23 20:35:08 UTC 2015
> On 23 Nov 2015, at 20:21, Mark Andrews <marka at isc.org> wrote:
> In message <93C2F218-FE0A-48A8-92FF-6114FA8E813A at dnss.ec>, Roy Arends writes:
>> When resolvers select a server to query, from a pool of many, does the
>> pool consist of just addresses, a combination of name-server name and
>> address or just name-server names?
> This is entirely implementation specific.
>> To illustrate, assume a delegation for .example with the following
>> records and glue in a fictional root zone.
>> example. NS a.example.
>> example. NS b.example.
>> a.example A 10.0.0.1
>> a.example A 10.0.0.2
>> b.example A 10.0.0.2
>> When the strategy is to select from a pool of addresses or hostnames,
>> then there are two in each case, and if the distribution is equal, each
>> get 50% of queries.
>> When the strategy is to select from a pool of records, then there are
>> three (the three A records), and address 10.0.0.2 would get 66% and host
>> a.example" would get 66%, etc.
> Or it used srtt and it ends up 95% (50% + 45%) and 5%. With zero knowledge
> named initially selects randomly by address.
Perfect. If you allow me, an additional question?
When the pool is not quite filled, say there is missing glue for b.example in a previous response, will BIND first fetch the missing address(es) for b.example before it decides which of the addresses to ask?
More information about the dns-operations