DNS & Naming

the DNS namespace

Imagine a giant upside-down family tree of every name on the Internet. At the very top sits a single, unnamed point called the root. Hanging directly off the root are the top-level domains — .com, .org, .net, country codes like .uk and .jp. Hanging off each of those are the names organizations register, like example.com, and below those hang their own subdomains. The DNS namespace is this whole tree: the complete, organized set of all possible domain names, arranged so that no two names ever collide.

The tree structure is what makes the system scalable. Each node has a short label, and a domain name is just the path from a node up to the root, joined by dots. Crucially, the right to hand out names below any point can be delegated: whoever controls .com decides who gets example.com, and whoever controls example.com decides what www.example.com or shop.example.com mean. So no central authority has to know every name in the world — it only has to know who is responsible for the level below it. This branching, delegated structure is why a single hierarchical namespace can hold hundreds of millions of names without chaos.

Why it matters: the namespace's shape directly mirrors how lookups and authority work. Because the tree branches, a query can be answered by following the branches downward, and because authority is delegated along the branches, the database can be administered by millions of independent organizations at once. A subtle point: the namespace (the logical tree of names) is a different thing from the servers that store it. The tree is divided into zones, and zones are what actual name servers are responsible for — the namespace is the map, zones and servers are how the map is physically kept.

Walk the path for shop.example.com up the tree: shop is a child of example, example is a child of com, and com is a child of the root. Each step is a delegation point — com delegates example.com to its owner, who in turn defines shop below it.

One tree, rooted at the top; every name is a path down from the root.

The root is real but has no name of its own — it is the empty label at the end of every fully qualified name. The trailing dot in www.example.com. is literally pointing at that root.

Also called
the domain name spaceDNS treeDNS 命名空間網域名稱樹