天天看点

《分布式系统:概念与设计》一3.4.7 域名

第13章将详细介绍域名系统(dns)的设计与实现,在此我们只做简单的介绍,以完成本章有关互联网协议的讨论。互联网支持一种使用符号名标识主机和网络的方案,如binkley.cs.mcgill.ca或essex.ac.uk。已命名的实体被组织成一个命名层次结构。已命名的实体称为域,124而符号名称为域名。域被组织成一个层次结构,以便反映它们的组织结构。命名层次结构与构成互联网的网络物理布局完全无关。域名对于用户很方便,但它们在被用作通信标识符之前,必须翻译成互联网地址(ip地址),这是dns服务的职责。应用程序将请求发送给dns,以便将用户指定的域名转化成互联网地址。

dns实现为一个可在互联网的任意主机上运行的服务器进程。每个域至少有两台dns服务器,一般情况下会更多。每个域的服务器持有该域之下的域名树的部分视图。它们至少必须存储自己域中的所有域名和主机名,但通常包含树的更大的部分。若dns服务器接收到的请求中,需要翻译的域名在自己所保存的那部分树以外,则dns服务器通过向相关域的服务器发送请求,递归地自右向左解析名字的各个部分。翻译结果缓存在处理原始请求的服务器上,以便未来处理同一域名请求时,无须查阅其他服务器就可以解析该名字。若不广泛地使用缓存技术,dns将无法工作,因为基本上在每种情况下都会查询“根”名字服务器,从而形成一个服务访问瓶颈。

继续阅读