论文部分内容阅读
随着互联网应用和用户的飞速增加,猛增的域名查询量对根服务器和CN顶级域名(TLD)服务器造成了越来越大的负载压力。从降低根服务器和CN TLD服务器的负载、提高域名解析的性能出发,本文分析和研究互联网域名系统(DNS)的若干关键技术。
本文的主要贡献可以总结为:
首先,从错误查询、重复查询和查询特征三个方面完整地比较分析与研究I根、CNTLD服务器和一个DNS递归服务器实例的DNS流量。对无效查询,定义DNS日志中出现的7类错误,并分析了其特征、出现原因和解决方案。基于对重复查询的定义,提出一种高效过滤重复查询的算法。根据过滤重复查询的目标,设计过滤重复查询的数据结构和算法。分析算法的时间空间复杂度及其实验结果。对查询特征以及查询日志中的域名、IP地址和端口号的查询量进行统计研究,分析DNS查询日流量特征及其含义。特别针对SOA查询类型,与总流量比较分析其日流量特征、来源、错误查询和缓存。
其次,通过理论分析和仿真研究BIND服务器选择算法的性能。在BIND服务器选择算法下,研究现在的CN服务器放置的性能。
再次,研究DNS报文压缩的安全问题。针对指针引起的域名无限循环,提出两种解决方案:限制域名长度和后向指针非法。针对DNS报文压缩的时间和空间效率,提出最优化的指标。根据最优化指标,提出最优压缩算法,并证明算法的正确性。
最后,研究DNS缓存对根服务器查询分布的影响。基于DNS缓存机制的模型,通过分析模型和仿真,研究DNS缓存和缓存共享对查询频率分布的影响及其大小。基于缓存模型,分析日志数据,并定量推理出域名TTL值的近似分布。