论文部分内容阅读
随着互联网以及建立在互联网上的各种新业务的飞速发展,互联网的用户规模不断扩大。由此,IPv4已经不能完全满足互联网的发展要求,并且暴露出了明显的局限性,其中最大的缺陷就是IPv4地址空间的严重不足。IPv6以其强大的地址空间,更好的支持QoS服务等性能优势成为下一代互联网的中心,得到快速的发展。在高速链路发展和IPv6网络规模不断扩大的大背景下,由于现有的路由查找算法并不能直接移植到IPv6上,因此研究适合于IPv6的高速路由查找算法势在必行。
首先,文中通过对经典的IPv4路由查找算法和现有一些IPv6路由查找算法的性能优缺点进行研究分析,得出新算法可以尝试结合多种查找技术来进行IPv6路由查找,以便发挥各种技术的优点。然后,统计分析了当前IPv6骨干网路由表,总结出IPv6路由前缀的层次性特点,且不同的层次在所包含的前缀数目,前缀取值方面有不同的特点。根据IPv6路由前缀的层次性特点,借鉴了最优查找树针对查找概率不等时,查找性能良好的特点,结合使用了平衡二叉树及线性表的基本查找思想,研究了一种基于多层混合结构的IPv6路由查找算法。该算法在第一层借鉴最优查找树的优点,把所有前缀1~16比特这个位段的不同取值按其在路由表中出现的概率降序存储在线性表中,在第二、三层把前缀17~32比特的位段值和33~48比特的位段值分别都用平衡二叉树组织,在第四层把前缀49~64比特的位段值使用线性表组织。最后,用C语言开发了该算法的源代码,并在安装Windows XP操作系统,硬件配置为512M DDR333内存,Intel core i32.13GHz CPU的PC机上,结合MATLAB和已有部分算法进行了性能比较实验。理论分析和实验结果表明,该算法的查找速度快、占用内存少和动态增量更新速度快。