拓扑发现与拓扑图展示是一般网管系统中的很重要的组成部分。然而拓扑发现的复杂性始终是一个坎。这个复杂性包括了拓扑发现的快速性、准确性和完整性。

电信级规模的网管我们没有做过,所以不知道它们对拓扑是如何发现和管理的。从我们做的中小型客户的单子来看,客户都希望拓扑发现要快。这在客户看来,他们的网络毕竟就那么几台设备,而且在他们看来快速、完整、准确的发现出拓扑应该是理所当然的事情,如果这都找不准,那对客户的第一印象影响是很大的。我们经常发现,我们自己的实施人员在现场碰到的第一个问题就是拓扑发现的问题。什么设备没有发现、SNMP获取不到、拓扑图发现的不对、拓扑图不完整等等。

用户想看到的拓扑图实际上是包括二层物理拓扑图和三层逻辑拓扑图(或者称为路由拓扑图)。三层逻辑拓扑图相对而言是比较容易的,因为从路由的角度而言,路由的设备之间是互相知道对方的存在的。而对于二层拓扑发现而言,它们是透传设备,互相根本不知道对方的存在,所以想要找到它们之间的连接关系并非易事。

撇开这些涉及设备本身工作原理的角度不谈,不同厂商、不同型号的设备,它们的配置又多有一些特殊配置,而这些特殊配置无疑更加增加了拓扑发现的难度。

当时我们在做拓扑发现的时候,曾经在一些conference、journal上找过很多paper,这一点对我们的工作帮助还是很大的,毕竟这是一个open question,在学术界也曾有人专门研究,所以借鉴他们的成果,对我们实际的工作还是很有帮助的。

当然从我们做的效果看,还有很多可以提升的空间,这在我们后续的工作中也是一个改进的重点。