电子科技大学硕士学位论文
的地址,这样一来我们便能获取中间路由器的信息。Traceroute就是利用这个协议特性,从T,I'L=1开始,依次向目标节点发送TTL值以1为单位依次递增的数据报,每次接收到超时报文就提取该报文的源地址(路由器的地址),最终得到的地址序列就是从探测源节点到目标节点的路径中所经过的路由器序列,也就是在网络层上得到了到达目标的路径。traceroute工具可以发现探针在某次测量中所经过的精确途径,但这种工具需要向待测子网主动发送探测报文,这些探测报文有时未必能到达目的地,也可能被中间节点过滤掉。同时,traceroute发送的探针部分占用了网络带宽,且造成一定的通信开销。尽管traceroute方法具有一些不足和缺陷,但对于规模不大的子网上的路径探测仍不失为一种有效的工具。
这类算法的另一个重要的工作就是发现待测网络中可向之发送traceroute探测报文的目标节点的地址。获取traceroute探测报文的目标节点的地址的基本方法是先得到待测网络的网络地址以及子网掩码,然后根据地址分配的连续性依次向该网络地址及其子网掩码下的所有可能地址发送ping报文,以探测这些节点是否存在从而获得待测网络内所有目标节点,以作为traceroute目标节点。由于ping对不存在的目标节点探测耗时较大的特性,这种方法运行速度较慢,很难扩展到更大规模的网络中,特别是对那些子网内活动地址分布稀疏的子网尤为如此。为此,学者们尝试了许多其他的解决方案。如:利用DNS
某个域内的某些地址,以达到加快探测速度的目的。Zonetransfer获取
2.2.2基于SNMP协议的网络拓扑识别
SNMP(SimpleNetworkManagementProtoc01)是在IP网络中最为常用的网络
EngineeringTask管理协议。SNMP首先是由Internet工程任务组织(Internet
Force)(IETF)的研究小组为了解决Internet上的路由器管理问题而提出的。SNMP被设计成与协议无关,它可以在IP,IPX,AppleTalk,OSI以及其他用到的传输协议上被使用。SNMP是一系列协议组和规范,它们提供了一种从网络上的设备中收集网络管理信息的方法。SNMP也为设备向网络管理工作站报告问题和错误提供了一种方法。设备的管理者收集这些信息并记录在管理信息库(MIB)中。这些信息报告设备的特性、数据吞吐量、通信超载和错误等。MIB有公共的格式,所以来自多个厂商的SNMP管理工具可以收集MIB信息,在管理控制台上呈现给系统管理员。
基于SNMP协议的网络拓扑识别方法【13】【14】主要是利用SNMP协议的管理信息数lO