论文部分内容阅读
传统的网络拓扑识别方法主要是基于各种协议的协作和中间节点反馈的信息来推测网络的拓扑,但是随着对网络安全性的要求越来越高,得到协议的协作和中间节点反馈的信息变得越来越困难。基于层析成像技术的网络拓扑识别可以在不借助路由协议或者中间节点协作的条件下,完成网络拓扑识别,但需要发送大量的探测包以计算链路的统计特性,计算过程也过于复杂。我们认为:传统网络拓扑识别方法要求大量的中间路由器配合,这在实际的大型网络中往往是难以办到的;基于网络层析成像的拓扑识别方法假设所有中间路由器均不协作,增大了测量工作的难度。在实际的网络中必然存在一些不协作节点,也必然存在一些可协作节点。因此本文提出了一类传统测量和层析成像结合的网络拓扑识别方法,能够根据待测网络中协作的中间节点反馈的拓扑信息,加快识别速度和减少发包量;对于不协作的部分,也能够动态的利用层析成像技术进行拓扑识别。本文研究了基于协作的传统拓扑识别方法以及基于层析成像的网络拓扑识别方法,做了三个方面的研究工作:(1)在拓扑识别的算法方面,改进并提出了一套新的基于层析成像的拓扑识别方法。该方法利用“三明治”包作为探测手段,通过测量“三明治”包中两个小包到达目的节点的时间差作为节点对的相似度以推测共享路径长度。该方法包括基于最小相似度的分层聚类算法以及叶节点的划分算法,叶节点的划分算法又根据所测拓扑的类型不同分为一般朴树的叶节点划分算法和二叉拓扑树的叶节点划分算法。该方法使得拓扑识别的计算复杂度大为降低,精确度也有所提升。(2)在拓扑识别的测量方法方面,针对拓扑识别中普通“三明治”包测量方法存在的问题,提出了TTL可变的“三明治”包测量方法。普通“三明治”包测量方法只能得到节点对的相似度,然后再利用这些相似度数据去推测节点对的共享路径长度,这样测得的共享路径长度的精度会受到相似度误差的影响。TTL可变的“三明治”包测量方法基于对同一拓扑树发送不同TTL值的“三明治”包所得相似度的比较,能够直接获得节点对共享路径准确的长度。该方法使得发包量减少到只有原来的10%,拓扑识别精确度也得到了很大的提高。(3)结合算法和测量方法的改进,提出一个综合的解决方案,即传统traceroute探测方法和层析成像结合的网络拓扑识别方法。该方法利用traceroute从被测网络的协作节点得到网络的部分拓扑信息,并利用初始拓扑构造算法得到不完整的初始拓扑,然后结合相应的层析成像方法,利用匿名节点处理算法对初始拓扑中不正确或不完整的部分进行识别,以得到最终拓扑。该方法不仅可以识别包含不协作节点的网络拓扑,而且进一步减少了发包量,拓扑识别的准确度也进一步提高。本文通过NS2的仿真证明了这种结合传统测量的拓扑识别方法不仅在算法的复杂度有所降低,而且发送探测包的数量大大降低,拓扑识别的准确度也有较大的提升。