The Domain Name System (DNS) is the naming service that lets the Internet be navigated by name rather than by address, and its design begins from one structural decision: the domain name space is a tree structure, in which each node and leaf corresponds to a resource set that may be empty.[1]
That tree is deliberately not held in any single place. The system's designers reasoned that the sheer size of the database and the frequency of its updates meant it had to be maintained in a distributed manner, with local caching to improve performance.[1] Distribution and caching are therefore not later optimisations bolted onto DNS but premises of the original design.
Two kinds of program make the distributed tree usable. Name servers are the server programs which hold information about the domain tree's structure and set information.[1] Resolvers are the programs that extract information from name servers in response to client requests; a resolver must be able to reach at least one name server, and must either answer a query directly from that server's information or pursue the query using referrals to other name servers.[1]
The division matters because it locates the complexity. A resolver is not merely a client that asks a single question and waits: following referrals down the tree is its ordinary mode of operation, which is what allows any one name server to remain ignorant of most of the name space.[1]
The syntax of a name is bounded rather than open-ended. Labels must be 63 characters or less.[2] A later clarification restated the bounds in octets rather than characters, and added the limit on the whole name: the length of any one label is limited to between 1 and 63 octets, and a full domain name is limited to 255 octets including the separators.[3]
Restating the limit in octets is not pedantry. A character and an octet coincide only while names are ASCII, and the octet form is the one an implementation can enforce without knowing how a name will be rendered.
Resolution ultimately terminates at a small, well-known set of servers at the top of the tree. The authoritative servers for the root zone are configured in the DNS root zone as 13 named authorities.[4]
That number is often misread as a count of machines, which would make the Internet's naming system implausibly fragile. The 13 authorities are in fact a network of hundreds of servers in many countries around the world.[4] The distinction is between named authorities in the root zone and the physical infrastructure that answers for them, and it is the reason the root has survived load and attack that thirteen individual hosts could not.