technology > cognomen parser
  本地域名服务器先查找自己的域名库,如果找到该域名,则返回ip地址;如果未找到,则检查动作代码。如果是递归解析(recursive resolution),则分析域名,然后向相关的上级域名服务器或下级域名服务器发出申请;这样传递下去,直至有一个域名服务器找到该域名,返回其ip地址;如果没有域名服务器能识别该域名,则认为该域名不可知。如果是反复解析(iterative resolution),则产生一个错误,并在应答消息中推荐一个相关的名字服务器作为对客户程序的回答。名字解析是从左向右执行的,即从本地权限拥有者开始,这样能提供最有效的名字解析方法。为了改进性能,名字服务器提供缓存,每个名字服务器把最近解析过的名字保存在缓存中,这个缓存中同时也记录了这些名字的映射信息是来自什么地方。当一个客户机询问名字服务器时,这个服务器首先用标准过程来检查看它是否能够在本地解析这个名字。如果它不能在本地解析的话,服务器就检查它的名字缓存来看该名字是否在最近被解析过。如果找到的话,服务器就把该名字信息报告给客户,但同时也指出这个信息有可能已经过时了,而作为应答的一部分,消息中还包含了提供这个被缓存的信息名字服务器的名字和ip地址(可以用nslookup验证)。如果在缓存中没有找到这个名字,则根据客户提供的“动作代码” ,按照前面介绍的步骤进行下去。