CN1287307C - 通过分阶段多次发现方法进行拓扑结构发现的方法和系统 - Google Patents

通过分阶段多次发现方法进行拓扑结构发现的方法和系统 Download PDF

Info

Publication number
CN1287307C
CN1287307C CNB028173880A CN02817388A CN1287307C CN 1287307 C CN1287307 C CN 1287307C CN B028173880 A CNB028173880 A CN B028173880A CN 02817388 A CN02817388 A CN 02817388A CN 1287307 C CN1287307 C CN 1287307C
Authority
CN
China
Prior art keywords
router
group
network
interface
contact
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB028173880A
Other languages
English (en)
Other versions
CN1552030A (zh
Inventor
克里斯托弗·高林奇
阿列克斯·M·克鲁姆-海勒
詹姆斯·D·施鲁德尔
姆内勃·敏哈祖丁
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avaya Technology LLC
Original Assignee
Avaya Technology LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avaya Technology LLC filed Critical Avaya Technology LLC
Publication of CN1552030A publication Critical patent/CN1552030A/zh
Application granted granted Critical
Publication of CN1287307C publication Critical patent/CN1287307C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/04Interdomain routing, e.g. hierarchical routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/03Topology update or discovery by updating link state protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/033Topology update or discovery by updating distance vector protocols

Abstract

本发明公开了通过分阶段多次发现方法进行拓扑结构发现。一种用于发现一个分布式处理网络的拓扑结构的系统,包括:第一拓扑结构管理信息库发现代理308,用于接触第一组路由器以获得一个存储在第一组路由器中的各个路由器内的第一类信息;一个第二拓扑结构开放式最短路径优先发现代理312和/或316,用于接触第二组路由器以获得一个存储在第二组路由器中的各个路由器内的第二类信息;一个阶段控制器304,用于在第一(308)和第二(312)和/或316拓扑结构发现代理之间进行选择。第一组与第二组路由器是不相同的,第一类与第二类信息也是不相同的。在一种配置中,第一类信息由一个网络管理协议定义,而第二类信息则由一个路由选择协议定义。

Description

通过分阶段多次发现方法进行拓扑结构发现的方法和系统
技术领域
本发明总体上涉及网络,具体而言,本发明涉及确定网络或路由选择拓扑结构的方法。
背景技术
分布式处理网络在我们以信息为基础的社会中变得越来越重要。图1描述了一个简单数据网络的网络拓扑结构。网络100包含多个路由器104a-g、一个转接网络108和一个桩基网络112,全部通过链路116a-i互相联接。正如后面所要说到的,路由器是一种连接两个或两个以上网络的装置,它为输入的数据确定传输路径或分组传输到适当的网络或节点;转接网是一种不仅仅包含路由器的网络;桩基网络是一种没有被配置为通过网络从一个路由器向另一个路由器传送分组报文的网络;而链路则是两个或两个以上节点之间的通信信道。每个路由器一般都通过一个或几个接口,例如接口120a-n,与一条链路连接。图1的简单网络被一条虚线124划分为两个协议区,使该线成为两区的边界线。路由器104c处于边界线124上,所以称作区域边界路由器,而其它路由器104a-b和104d-g则不是边界路由器。一个或几个协议区域常常是自治系统。自治系统是受一个行政管理机构控制的网络群。
在一个报文分组交换网络中,通过互联网络传送分组报文的方法取决于路由选择协议。大部分协议都属于距离向量算法和链路状态算法之中的一类。距离向量算法通过计算一份分组报文从源网络传送到目的网络所要经过的路由器跳点数量来确定源节点与目的节点之间的距离。而链路状态算法则利用链路状态通告,即LSA(包含一个路由器邻居的名称和各种到达的成本尺度),使路由器始终了解网络链路的情况。链路状态算法不像距离向量算法那样存储实际路径分类,而是存储所需信息,以产生这样的路径。利用距离向量算法的路由器协议例子包括RIP和RIP-2,利用链路状态算法的路由器协议例子包括开放式最短路径优先协议(即OSPF)、开放系统互联(OSI)的中间系统对中间系统协议(IS-IS)、增强的内部网关路由选择协议(EIGRP)以及NetWare链路服务协议(NLSP)。
路由器和其它网络组成部分一般利用网络管理系统进行管理。网络管理系统进行网络维护,识别网络内可能出现的安全问题,确定设备、模块、部件以及插件板的故障部位,确定电路断线部位,监控性能级别(例如误码率,即BER,和同步损失等)并允许快速和精确地判定网络的使用和通信量级别。用于执行以上任务的网络管理系统的例子包括惠普公司的OpenViewTM、IBM公司的NetviewTM和数字设备公司的企业管理体系结构,即EMATM
为使网络管理系统的运行达到最佳,一般需要精确、详细的网络布局图或OSI的网络层拓扑结构图。这些图不仅方便了网络管理系统的运行,而且也可使新连接的主机可以处在对于网络来说正确的位置上并正确配置(以避免影响网络的性能),并使现有主机处在对于新连接主机来说正确的位置上。通常的情况下,网络管理人员不能利用整幅或部分的详细网络拓扑结构图。其原因是不良的记录保持、某些网络规模庞大而复杂,以及缺乏网络的中心管理,例如当网络包含一些自治系统或企业的情况时。
简单网络管理协议,即用于自动发现网络层拓扑结构的SNMP算法在许多网络管理工具中得到使用。SNMP算法可采用多种方法。在一种称作“逐跳法”的方法中,该算法在逐跳的基础上访问标准的路由SNMP-管理信息库或每个路由器内的MIB信息。如此处所用,一个“跳点”被视作没有中间节点的一段路由,而MIB(管理信息库)则是一组可以按SNMP的规定进行管理的一组被管理对象或变量。MIB中的对象或变量一般由被称作管理信息结构,即SMI,的一组规则来定义。如后面所述,MIB信息存储在任何SNMP路由器的存储器内。另一种方法是,利用销售商专有算法来产生拓扑结构。这种解决方案的实例有Cisco System公司的CDPTM。这种专有算法一般依靠销售商对标准的SNMP管理信息库所作的特别扩充,该管理信息库一般不能在多销售商网络中使用。
当一个网络中的路由器支持不同的路由选择协议,而且(或)不可接触,则SNMP网络拓扑结构发现算法一般不能查清网络层的拓扑结构。一个路由器不可接触有各种原因,包括使用了不正确的凭证、接触界面的不良状态以及在路由器中不可访问或不存在的SNMP代理等。图2对这一问题做出了说明。在图2中,路由器200支持路由信息协议(RIP)并且是SNMP可接触式,路由器204、208和212支持开放式最短路径优先(OSPF)协议并且是SNMP可接触式,路由器216支持OSPF协议但不是SNMP可接触式,而路由器220支持OSPF和RIP,是SNMP可接触式。如果拓扑结构发现算法最初接触的是路由器200,它将能用逐跳法发现路由器200、220和216。当算法接触到不是SNMP可接触式的路由器216时,算法将不能发现路由器204、208和212。这是因为算法将不能访问路由器216中的管理信息库(MIB)信息,所以无法了解这些路由器是否存在。
发明内容
通过本发明的各种实施例和附图将解决这些和那些需要。一般说来本发明的体系结构使用多种拓扑结构发现方法来发现网络拓扑结构。不同的发现方法可以是网络管理协议和/或路由选择协议专用的。使用网络管理协议专用的发现算法可以使算法发现变得不可知(即不敏感)。
依据本发明的一个方面,提供了一种用于发现一个分布式处理网络的拓扑结构的方法,该方法包括:(a)接触第一组路由器中的每个路由器,该第一组路由器是公共自治系统的一部分;(b)从第一组路由器中的每个接触的路由器中检索存储在第一组路由器中的每个路由器内的第一类信息,该第一类信息包括由网络管理协议定义的第一组管理对象和/或变量,该第一组管理对象和/或变量包括含有如下信息的清单:与所接触的路由器相对应的接口地址、每个接口地址如何连接到另一个路由器中的下一跳点接口、以及用于识别在所接触的路由器的接口和相应的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;(c)对于第一组路由器中的每个接触的路由器,处理第一组管理对象和/或变量,以识别每个下一跳点接口,并且对于每个下一跳点接口,识别所接触路由器的相应接口如何连接到选定的下一跳点接口、以及用于识别在所接触路由器的相应接口和选定的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;(d)基于第一组管理对象和/或变量,使用第一内部网关路由选择协议确定第二组路由器,该第二组路由器处于所述自治系统中;(e)接触第二组路由器中的每个路由器;(f)从第二组路由器中的每个接触的路由器中检索存储在第二组路由器中的每个路由器内的第二类信息,其中第一和第二组路由器的成员关系不同,并且第一类和第二类信息也不同,第二类信息包括由第一内部网关路由选择协议定义的第二组管理对象和/或变量,该第二组管理对象和/或变量包括与第二组路由器的成员相对应的接口、链路和/或网络地址的清单;以及(g)处理第一和第二组对象和/或变量,以提供一个网络拓扑结构模型。
依据本发明的另一个方面,还提供了一种用于发现一个分布式处理网络的拓扑结构的系统,包括:(a)第一装置,用于从第一组路由器中检索出存储在第一组路由器中的每个路由器内的第一类信息,该第一装置可操作用于:(i)接触第一组路由器中的每个路由器,该第一组路由器是一个自治系统的一部分;(ii)对于第一组路由器中的每个接触的路由器,访问第一类信息,该第一类信息包括由网络管理协议定义的第一组管理对象和/或变量,该第一组管理对象和/或变量包括含有如下信息的清单:与所接触的路由器相对应的接口地址、每个接口地址如何连接到另一个路由器中的下一跳点接口、以及用于识别在所接触的路由器的接口和相应的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;(iii)对于第一组路由器中的每个接触的路由器,处理第一组管理对象和/或变量,以识别每个下一跳点接口,并且对于每个下一跳点接口,识别所接触路由器的相应接口如何连接到选定的下一跳点接口、以及用于识别在所接触路由器的相应接口和选定的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;(b)第二装置,用于从第二组路由器中检索出存储在第二组路由器中的每个路由器内的第二类信息,该第二装置可操作用于:(i)使用第一内部网关路由选择协议确定第二组路由器,该第二组路由器是所述自治系统的一部分;(ii)接触第二组路由器中的每个路由器;(iii)对于第二组路由器中的每个接触的路由器,访问第二类信息,该第二类信息包括由第一内部网关路由选择协议定义的第二组管理对象和/或变量,该第二组管理对象和/或变量包括与第二组路由器的成员相对应的接口、链路和/或网络地址的清单;以及(c)阶段控制器,可操作用于:(i)基于第一组管理对象和/或变量,在第一和第二装置之间进行选择,以实现拓扑结构发现;以及(ii)处理第一和第二组对象和/或变量,以提供一个网络拓扑结构模型,其中第一组和第二组路由器的成员关系是不同的,而且第一和第二类信息也不同。
在一个对企业网或自治系统极为有用的实施例中,一种逐跳发现算法,例如SNMP拓扑结构发现法,与一种或多种其它发现算法(例如OSPF发现算法、基于专有标准的发现算法以及销售商专有拓扑结构发现算法)相结合,以进行拓扑结构探测。拓扑结构发现法一般设计成对路由选择协议不敏感。这可以通过逐跳发现法成为可能,这时每个路由器都被接触,以发现被接触路由器所了解的网络中其它实体。每个路由器依次被接触,以建立与各个网络实体及其拓扑结构连接有关的数据库。
无论何时,用逐跳法发现了一个路由器,就向其发出询问以查明是使用了哪些协议来确定其路由表的。如果这些协议有与其相关的专有发现算法,相应的发现算法即运行。任何被发现的其它数据都加入一个网络模型,任何被发现的路由器都可被逐跳算法利用以进行进一步的探测。利用替代发现算法发现的路由器可用来“跳过”不可接触的路由器,例如图2中的路由器216。如图2所示,在使用SNMP发现算法时又使用OSPF拓扑结构发现算法,将会在路由器204、208、212和216中的任何一个上显露出OSPF区域信息。区域信息将鉴别不可接触路由器216的存在,但没有其它信息可被推导出来。
在另一个实施例中,体系结构使用了一些发现代理以发现执行各种不同路由选择协议的异构网络。每个发现代理与由一个或多个路由选择协议确定的路由器信息互动。各个发现代理可以在不连续的阶段运行、并行运行或逐个路由器运行。
本发明的体系结构有多种优点。例如,使用不同的发现方法,即便是在网络的组成部分支持不同的协议时也可确定网络组成部分的位置。这种优点可以参照使用了MIB和OSPF发现方法的体系结构配置来说明。在此处,MIB被视作各种版本的管理信息库,SNMP被视作各种版本的简单网络管理协议,而OSPF则为各种版本的OSPF协议。MIB发现法的优点是无论存在何种路由选择协议,它都将发现IP网络的拓扑结构。该方法的缺点是,MIB发现代理必需访问网络内的每个路由器以发现整个网络。如果一个路由器不能通过SNMP接触,正如前面参照图2所述,MIB代理将只能发现一个网络子集。若仅使用OSPF,将只能发现网络执行OSPF路由选择协议的部分。然而,OSPF发现方法仅接触少量路由器(例如区域边界路由器)就可以查明一个网络的广大区域的情况,所以不受不可接触的路由器影响。这样,OSPF发现方法可以发现MIB发现法不能发现的路由器,因为OSPF无须访问每一个路由器就可以确定一个网络的拓扑结构。特别是,OSPF可以发现因不可接触的路由器阻塞MIB而无法到达的网络部分,正如前面参照图2所述。将两种发现方法一起使用,可以使MIB发现法发现网络中所有可接触的和不可接触的路由器而不管网络中存在的是什么路由选择协议。不可接触的网络部分常常可以通过使用OSPF发现法“跳过”一个不可接触的路由器而随后被MIB发现法发现。
这些优点和其它优点将随着本发明的公开而显示出来。
上述实施例和结构并不完全也不彻底,正如后面所述,本发明的其它实施例可能会在后面单独或综合地运用上面提到的一个或多个细节,或加以详细阐述。
附图简要说明
图1描述了依据现有技术的简单网络拓扑结构;
图2描述了依据现有技术的另一个简单网络拓扑结构;
图3是一幅框图,描述了依据本发明一个实施例的计算体系结构;
图4是一幅流程图,描述了阶段控制器的操作;
图5是一幅流程图,描述了MIB发现代理的操作;
图6是描述了MIB发现代理操作的另一幅流程图;
图7是一幅流程图,描述了OSPF发现代理的操作;
图8是一个路由器表,由MIB发现代理输出;
图9是一个接口表,由MIB发现代理输出;
图10是一个网络接口表,由MIB发现代理输出;
图11是一个初始网关清单,由阶段控制器维护;
图12是一个未完成清单,由阶段控制器维护;
图13是一个已完成表清单,由阶段控制器维护;
图14是一个路由器清单,由OSPF发现代理输出;
图15是一个的链路清单,由OSPF发现代理输出;
图16是一个网络清单,由OSPF发现代理输出;
图17是一个接口清单,由OSPF发现代理输出的;
图18是一个典型的ipAddrTable(IP地址表)表;
图19是一个典型的ipRouteEntry(IP路由条目)表;
图20是一个典型的ipAddr(IP地址)表;
图21是一个典型的ipRoute(IP路由)表;
图22是一个依据图18、19和21的ipAddrTable、ipRouteEntry和ipRoute表中所选择的条目而形成的网络拓扑结构;
图23是一幅流程图,描述了依据本发明另一个实施例的多路由选择协议体系结构;
图24描述了ipAddrEntry与ipRouteEntry表之间的关系。
具体实施方式
为发现一个存在多种路由选择协议的网络的拓扑结构,使用了一种分阶段的发现方法。需要有三个主要阶段来发现一个网络的拓扑结构。在初始网关发现阶段,体系结构接触一个种子路由器以启动发现过程。在MIB或MIB2发现阶段,体系结构接触企业网中的所有路由器,以下载所选择的路由器中的MIB信息。在OSPF发现阶段,体系结构接触支持OSPF的路由器,以下载OSPF路由器中的链路状态通告数据库所发出的链路状态信息。
在开始讨论数据收集和分析代理208的操作之前,了解许多路由选择协议的某些特点是很重要的。在使用某些协议的情况下,可以依据唯一的路由器标识符来识别一个路由器,而且路由器亦与唯一的区域标识符相关。一般一个路由器本身并没有IP地址。接口是一个属于主机,例如路由器,的逻辑装置而不只是一条链路的连接点。一般说来一个接口有1或零作为IP地址,而且属于一个网络。接口一般将拥有一个IP地址和一个网络掩码。一条链路包括源接口的两个或两个以上绑定以及一个尺度,即成本。它被尺度表示法模板化,该尺度专用于路由选择协议,并代表一个分组报文离开接口的成本。一条链路一般与一个成本尺度和一个路由选择协议标识符有关。一个网络对象代表一个数据网或子网。它有一个地址和一个掩码并代表一个容纳一组主机的地址空间。网络对象可以从其成员接口驱动其地址和/或掩码。
                网络拓扑结构发现系统
考虑到这一点,依据本发明的一个实施例,图3涉及的是网络拓扑结构发现系统300。系统300配置成与一个计算机网络,例如桩基网络112,的接入点连接,以便向主机,一般是路由器,发送信息或从主机接收信息。系统300包括:一个阶段控制器304,用于按适当的顺序监控3个阶段中的每一个阶段的执行,并确定发现过程何时完成;一个MIB发现代理308,用于在MIB发现阶段访问每个可接触路由器中的MIB信息并产生一个描述一部分网络拓扑结构的MIB输出;一个OSPF发现代理310,该发现代理包括一个OSPF数据收集代理312,配置在OSPF发现阶段,通过在各个需要的路由区有选择地接触路由器而有选择地收集与网络拓扑结构有关的信息,还包括一个OSPF数据分析代理316,用于在OSPF阶段对OSPF数据收集代理312所收集的信息进行分析并产生一个描述部分网络拓扑结构的输出。
在拓扑结构发现过程中,系统300保持一些列表,包括未完成清单、已完成清单、初始网关清单、区域边界路由器表(未标出)和一个链路状态通告表(未标出)等,以避免重复计算。未完成清单320(图12)列出了还未连接的候选主机(接口)地址1200。在MIB和OSPF发现阶段,随着新的路由接口地址被发现,它们即被添加到未完成地址清单320上。MIB发现阶段一般将第一个地址从未完成清单中去掉,并探测接口地址所连接的路由器。已完成清单324(图13)列出了主机(接口)地址1300已经连接,不必再接触。在未完成地址清单上的一个路由器接口被处理后,相应的路由器接口地址就从未完成清单转移到已完成清单。初始网关清单328(图11)列出了OSPF路由器1100(依据下面所要讨论的路由器表中指向相关路由器条目的指针识别)和相应的接口1104(依据下面所要讨论的接口表中指向相关接口条目的指针来识别)在MIB发现代理308操作期间被发现。这些路由器都在OSPF发现阶段被搜索。区域边界路由器清单列出了在OSPF发现代理310操作期间被发现的OSPF区域边界路由器,并包括一个用于每一个路由器条目的表示路由器是否连接的指示信号,如果已连接,则包括结果。最后,链路状态通告表由OSPF数据收集代理312输出,而且是一个链路状态通告的列表,即LSA,从接触的OSPF路由器中的链路状态数据库获得。正如后面所述,链路状态数据库,按照OSPF协议的定义,是一个链路列表,每条链路用端点和与链路相关的成本尺度来定义。每个处于一个路由区内的区域边界路由器都有一个它所在边界的所有区域(即与边界路由器有关的区域)的完整数据库副本。然而,在一个路由区内的非边界路由器则一般只有一个它所在区域的完整数据库副本,并且不与不同路由区中的路由器拥有相同的链路状态数据库。
系统300提供一些输出表,分别是:路由器输出表332、网络接口输出表336和接口表340,由MIB发现代理308在结束了MIB发现阶段后输出;路由器清单344、链路清单348、网络清单352和接口清单356,由OSPF发现代理310在结束了OSPF发现阶段后输出。现在来看图8。对于每个被发现的路由器800来说,路由器表332包括相应的协议标识符804和一个或多个相应地被连接的接口808(一般备依据指向接口表340中相应条目的指针来识别)。现在来看图9。对于每个接口900来说,接口表340包括一个相应的IP地址904,一个或多个相应的属性908(例如接口是否可接触、速度、接口类型、成本尺度、上行/下行状态等),拥有接口的对应的路由器912(该接口一般由一个指向路由器表332中相应条目的指针识别)。现在来看图10。网络接口表336为每个网络地址1000(或其它类型的网络标识符)列出了一个或多个与网络连接的相应的接口1004(一般由一个指向接口表340中相应条目的指针识别)。现在来看图14。路由器清单344包括企业网或自治系统中指定的和连接的路由器1400的综合列表。在接口清单内,路由器依据路由器标识符1404(和/或路由器的IP地址之一,此处未标出)、相关的区域标识符1408、和/或一个或多个指示相关接口的指针1412来识别。正如后面所述,一个区域边界路由器将拥有多个区域标识符,而非区域边界路由器则只有一个标识符,而且一个路由器可以有一个或多个相关的接口。现在来看图15。链路清单348列出了被发现的链路。链路1500可以有两个路由器或一个路由器和一个网络(桩基网络或转接网)作为端点1504。路由器可以依据路由器标识符和/或接口的IP地址来识别,网络依据掩码和/或一个或多个IP地址识别。现在来看图16。网络清单352是一个网络1600(桩基网络或转接网)的列表。网络1600是依据一个网络地址和掩码和/或一个或多个与网络连接的IP地址被识别的。每个网络有一组相关的路由器接口1604(一般由一个指向接口清单内一个相应路由器接口的指针来指示),以及一个相关的指定路由器1608(一般由一个指向路由器清单内相应路由器的指针来指示)。最后,看图17。接口清单356列出了依据IP地址、接口编号和/或网络掩码识别的接口1700。每个接口1700都与一个路由器1704相关。相关路由器1704一般由一个指向路由器清单344内相应路由器的指针来指示。
这些表格一起提供了网络路由拓扑结构和处于其中的网络成分的属性。正如后面所述,“路由拓扑结构”是由一个特定路由选择协议所描述的逻辑网络拓扑结构。在路由器、接口和网络接口表以及路由器、链路、网络和接口清单的基础上,可以自动或手动产生路由拓扑结构模型或拓扑结构图。如果使用了一个以上的路由选择协议,可能会有一个以上互不相同的路由拓扑结构。正如下面所述,路由拓扑结构可以与物理网络拓扑结构有很大的不同。
                     阶段控制器的操作
现在,参照图4对阶段控制器304加以说明。
在步骤400上创建了阶段控制器304后,阶段控制器304即在步骤404上进行初始网关探测。阶段控制器一般使用一个或多个种子IP地址以接触一个主机路由器。最初被阶段控制器304接触的路由器一般被称作网关路由器。在一个优选实施例中,只使用一个种子IP地址。如果用户没有配置阶段控制器以便将一个特定路由器作为初始网关使用,则种子IP地址可以自动确定。确定该地址的方法与平台有关。对于所有的平台来说,网关从具有有效网关领域的第一个路由表条目取得。用于接触网关路由器的简单网络管理协议(SNMP)方法可以成为路由选择协议专用方法。例如,RFC1850提供了利用OSPF协议接触一个路由器的规定。阶段控制器304试图在步骤408上接触初始网关路由器。
在判定框412内,阶段控制器304确定,是否用SNMP方法成功接触了网关路由器。如果接触尝试未获成功,则在步骤416上的阶段控制器结束操作并将错误通知用户,并请求一个新的种子地址。当接触尝试获得了成功,则在步骤420上的阶段控制器访问初始网关路由器内的MIB信息,并在步骤424上初始化未完成和已完成清单,并将网关路由器的可接触接口的接口地址添加到未完成清单内,以便在后面MIB发现阶段使用。
然后,在步骤428上的阶段控制器调用MIB发现代理308,以导致该代理进行MIB发现阶段的操作。下面将参照图5和图6对MIB发现代理的操作加以阐述。
当MIB发现阶段结束后,在步骤423上的阶段控制器调用OSPF发现代理310(或直接首先调用OSPF数据收集代理312,然后调用OSPF数据分析代理316)进行OSPF发现阶段的操作。下面将参照图7对这些代理的操作进行阐述。阶段控制器可使用一种观察器模式来监控MIB发现代理和OSPF发现代理的操作进展情况(或直接调用OSPF数据收集代理和OSPF数据分析代理)。
当OSPF发现阶段结束后,阶段控制器在判定框436中确定未完成清单320是否已经清空。如果候选条目1200仍然在未完成清单320内,阶段控制器即重复步骤428和432。如果没有候选条目1200在未完成清单320内,阶段控制器即进行步骤440并结束操作。
                  MIB发现代理的操作
现在,参照图5和图6阐述MIB发现代理308的操作。一般来说,MIB发现代理308重复地从未完成清单320内取得下一个接口地址,接触与接口地址相对应的路由器,处理路由器的路由表并将接口地址从未完成清单320转移到已完成清单324。为了避免不必要的网络通信量和通信资源的浪费,MIB发现代理308进行了优选配置,从而在路由器的一个接口被成功接触时,这个路由器的其它接口随后就不会被MIB发现代理接触。
MIB发现代理308在步骤500上建立。在判定框504内,MIB发现代理308确定未完成清单320是否已经清空。如果未完成清单320已经空了,发现代理308即停止操作,阶段控制器则建立OSPF数据收集代理312。如果未完成清单320没有清空,  发现代理308即进行步骤508,并从未完成清单320上获得下一个接口地址。
在步骤512上,发现代理308接触接口地址,并在判定框516内确定地址是否可接触。如果地址是不可接触的,该代理即进行步骤520,将接口地址从未完成清单320转移到已完成清单324,并返回到判定框504以进入循环的下一轮。如果地址被成功接触,在步骤524的代理308即按下面参照图6进一步阐述的方法对路由器进行处理。
现在,参照图6描述MIB发现代理处理路由器的过程。
在步骤600上,发现代理308设置了一个旗标,该旗标与表示地址被成功接触的接口地址相关联。该旗标可以包含在未完成清单内。
在步骤604上,代理308检索与路由器(对应于被接触接口地址)连接的接口地址清单。该信息包含在路由器的SNMP表内。由该代理检索的SNMP表是由因特网工程任务组(IETF)的RFC1213标准所定义的ipAddr表、ipAddrTable表、ipRouteTable表以及ipRouteEntry表(“表”)。正如后面所述,ipAddr表列出了路由器接口的IP地址。ipRouteTable表可用于确定当前路由器上的每一个接口如何与网络内另一个路由器的一个接口(亦称作下一跳点接口)连接。该表也描述存在于两个路由器接口之间链路上的路由选择协议,例如OSPF。
在步骤608上,该代理检索对应于路由器(正被处理中)的下一个接口地址以便进行处理。在对该地址进行处理之前,代理在判定框612内确定被检索地址是否处在未完成清单320上。若被检索地址是处在未完成清单320上,则该地址在步骤616上被从未完成清单320转移到已完成清单324。然后,或者当被检索地址未处于未完成清单320上时,代理308即进行步骤620的操作。
在步骤620上,代理308检索与被处理路由器的当前接口连接的下一跳点接口的地址。根据与下一跳点接口相关的信息,一个或多个条目被添加到网络接口表336、接口表340和/或路由表332中。如果这些表预先未准备好,则在添加条目之前先进行这些表的初始化。
用于在步骤624上处理这些表内下一跳点接口的地址的方法将为本专业熟悉SNMP的技术人员所了解。如下所述,ipAddrTable∷ipAdEntIfIndex起到ipAddrTable表内接口地址规范键码的作用。如图24所示,ipRouteEntry表与ipAddrTable表相结合,将ipRouteEntry∷ipRouteIfIndex作为外键码使用(在ipRouteEntry∷Instance上)。这种关系代表了在ipAddrTable与ipRouteEntry表之间一对多的关系。对于每一个ipAddrEntry来说,有0或更多的ipRouteEntry来说明一个接口连接的是哪个网络以及哪个接口被用来触及该网络(利用ipRouteEntry∷ipRouteNextHop)。如果没有ipRouteEntry,则接口不被使用。
这些表可用于把运输网络与桩基网络区分开。若分组报文可以直接从接触的接口传递到网络(或接口直接连接到网络(这由IP路由类型的域标志“直接”确认)),则该网络被假定为桩基网络。若分组报文必须从接触的接口通过一个网络到达另一个网络(即接口间接地连接到列在ipAddrTable表内的端点网络(这由IP路由类型的域标志“间接”确认)),中间的网络即是运输网络。
对未编号的接口也必须加以考虑。对于一个未编号的接口来说,它必须满足以下条件:出现在ipTable内而不是ipAddrTable内;在ipTable内有一个“Up”状态;不是以太网接口。未编号接口将利用点对链路的方法始终与另一个路由器连接,并与下一个路由器上的未编号接口连接。在这种情况下,当前路由器上的ipRouteTable将有一个用于未编号接口的下一跳点地址,作为下一个路由器上的一个任意(编号的)接口地址。
图18~21说明了ipAddrTable、ipRouteEntry和ipRouteTable表。图18是一个ipAddrTable表,在每个1800实例(instance)中包括ipAdEntAddr(IDX)1804、ipAdEntIfIndex 1806以及ipAdEntNetMask 1808。如后面所述,一个“实例”(“instance”)就是接口IP地址的一次出现。图19是ipRouteEntry表,在每个1900实例中包括ipRouteDest(IDX)1904、ipRouteIfIndex 1908、ipRouteNextHop1912、ipRouteType 1916、ipRouteProto 1920(即由对象接口与下一跳点地址1920之间的连接所支持的路由选择协议)以及ipRouteMask1924。图20是ipAddrTable表,在每个实例2000中所包含的是与图18ipAddrTable表中相同的变量。最后,图21是ipRouteTable表,每个实例2100所包含的是与ipRouteTable表相同的变量。
为了说明以上表格的使用,现在将依据图18~21的表格进行阐述。接口地址192.168.34.1,即ipAddrEntry表的实例1812(图18),有一个索引4和三个在ipRouteEntry表(图19)内的联接条目1902、1928和1929。请看条目1928,网络192.168.34.0可以从接口192.168.34.1到达。这是合乎逻辑的,因为接口地址是以34.1结尾的C级地址,并被ipRouteType域值“直接(3)”所确认。因此该接口被直接连接到192.168.34.0网络,并且无进一步的信息假设该网络是一个桩基网络。第三个条目1929表明网络192.168.35.0可以通过接口192.168.34.2到达,但是如条目1916所示,只能按ipRouteType域值“间接(4)”的规定进行间接连接。作为向该网络跳跃第一站的路由器可以按ipRouteNextHop域值的规定通过下一跳点接口192.168.34.2到达。为了到达网络192.168.35.0,分组报文必须通过络网192.168.34.0,络网192.168.34.0即被定义为运输网络。由于34.0网络以前被假定为桩基网络,所以现在需要将其更新为运输网络。根据对带有接口192.168.34.2的路由器上的ipAddrEntry(见图20)和ipRouteEntry(见图21)表的检查,可以看到路由器通过接口192.168.35.1(见图21最后一个条目)连接到网络192.168.35.0。这种连接由ipAddrEntry中的接口192.168.35.1(图20的条目2002)和ipRouteEntry中的相应行(ipRouteIndex=7)(图21中的条目1908)来确定。ipRouteType域值1916规定这种连接是“直接(3)”,说明该接口直接连接到35.0网络。192.168.17.2路由器表(图21)也表明该路由器通过接口192.168.34.2直接连接到了网络17.0(见图21从上面数第三个条目)。
现在返回到图18。还有其它三个接口可以搜索。它们是接口192.168.16.100(原始网关接口)、192.168.19.2和192.168.29.2。用于这些接口的图19中的联接ipRouteEntry表条目表明,该路由器也有如下连接:(1)通过接口192.168.16.100直接连接网络192.168.16.0;(2)通过接口192.168.19.2直接连接网络192.168.19.0;(3)通过接口192.168.19.2间接连接网络192.168.18.0(下一跳点接口是新发现的路由器上的192.168.19.1);(4)通过接口192.168.29.2直接连接网络192.168.29.0。
根据前面对图18~21的分析所得出的网络拓扑结构如图22所示。
再回到图6。代理308在步骤628上确定当前接口与下一跳点地址的连接是否使用OSPF。这要根据图19和/或21中的条目ipRouteProto1920来确定。若这种连接支持OSPF,则一个OSPF协议标识符在步骤629上被添加到路由器表332内,而且接口地址在步骤630上被添加到初始网关清单328内以便在以后的OSPF发现阶段使用。无论是哪种情况,代理308都要进行下一步判定框632的操作。
在判定框632,代理308确定下一跳点地址是在未完成清单320内还是在已完成清单324内。两种清单内都没有下一跳点地址,就在步骤636上将下一跳点地址添加到未完成清单320内。无论是哪种情况,代理308都要进行判定框640的操作。
在判定框640,代理308确定是否有另一个接口地址与被接触的路由器连接,而该路由尚未被考虑。如果另一个接口地址还未被考虑,则代理308返回步骤608并为该地址重复上述步骤。如果没有地址需要考虑,则代理308进行图5所示的步骤520。
           OSPF数据收集和数据分析代理的操作
现在将参照图7阐述OSPF数据收集和数据分析代理312和316的操作。一般说来,初始网关清单328种的各个接口地址都被用OSPF数据收集代理308在OSPF发现阶段用作初始网关起始点。曾在上一轮OSPF探测中被发现的OSPF路由器不需要在数据收集代理312的下一轮运行中被用作初始网关起始点。
现在来看图7。步骤700上的阶段控制器304检索初始网关清单328并于步骤704在清单328内查到下一个路由器(即与路由器连接的第一个接口地址)以便按OSPF发现法处理。阶段控制器便在步骤708将OSPF发现初始网关设置在第一个接口地址上,在步骤712建立OSPF数据收集代理312并在步骤716建立OSPF数据分析代理316。数据收集代理312和数据分析代理316的操作在与本申请同时申请的、序列号为No.10/127,967、由Goringe等人申请、名为“利用链路状态信息发现IP网络拓扑结构”(“USING LINGK STATUS INFORMATIONTO DISCOVERER IP NETWORK TOPOLOGY”)的美国专利申请中进行了描述,也在由Goringe等人于2001年9月6日递交的序列号为No.60/317,719的同名美国临时申请中进行了描述。所有这些都包含在本处供参考。
正如以上申请文件所描述,数据收集代理312使用一个种子接口IP地址,以便在所选择的区域接触一个路由器,在被接触主机路由器的链路数据库内下载ospfLsdb(OSPF链路状态数据库)表,废除关心区域之外的任何链路状态通告,将各个与区域边界路由器相关的接口的IP地址添加到区域边界路由器表内,并将任何关心区域的LSA(链路状态通告)添加到链路状态通告表内。这些步骤为各个区域边界路由器重复进行。
数据分析代理316穿过链路状态通告表,废除1类和2类之外的所有链路状态通告,并利用1类和2类链路状态通告形成路由器清单344(图14,该表包括所有在关心区域被发现的OSPF路由器)、链路清单348(图15)、网络清单352(图16)和/或接口清单356(图17)。
数据收集和数据分析代理312和316的操作完成后,阶段控制器304在步骤720上将所有被发现的OSPF路由器从从初始网关清单328上清除。如下所述,数据收集代理312可以为每个被发现OSPF路由器设置一个旗标。
在步骤724上,阶段控制器对所有被数据收集和分析代理312和316发现的路由器接口地址进行检索,以判定是否还需要进行MIB发现阶段操作。做出这种判定是为了保证MIB发现代理308所考虑的是在OSPF发现阶段,而不是MIB发现阶段,所发现的任何路由器接口地址。为达到这一目的,阶段控制器304在步骤728上得到下一个被检索到的接口地址,并在步骤732上确定该检索到的接口地址是在未完成清单320上还是在已完成清单324上。如果该地址不在未完成清单320或已完成清单324上,阶段控制器即在步骤736上将该地址添加到未完成清单内。在判定框740中,阶段控制器304即确定是否还有需要考虑的其它接口地址。如果有,控制器即返回步骤728并重复前面所述步骤。如果没有,则控制器进行判定框744的操作并确定在初始网关清单328中还有其它OSPF路由器。如果在清单328中还有其它OSPF路由器,则控制器返回步骤704以进一步进行OSPF发现阶段的操作。当在清单328中没有其它的路由器时,控制器即进行图4中的步骤436的操作。
各种输出表和清单可以多种方式合并,以形成一个统一的网络拓扑结构模型。在一种“任你行”的方法中,网络模型是一个知识储藏库。发现算法用一种命题法来处理模型,即算法将它所发现的现象通知模型,并让模型自行决定如何应对。若信息接收自一个协议,该信息表明以前所得到的有关网络和路由器等的信息是不完全的,更多的信息即被添加到模型中。所有信息都有标记说明是哪个协议提供的,以帮助识别冲突信息。若来自两个不同协议的信息发生冲突,则优选来自MIB2路由表的信息。信息被标记为受到有关路由选择协议的冲突而且路由选择协议信息被保留。
可以使用一些对本发明的变动和修改方案,在提供本发明的一些特点时不提供其它特点的情况也是合理的。
例如在一个供选择实施例中,算法被用于不同于OSPF的协议,诸如属于非SNMP网络管理协议的公共管理信息协议(CMIP)以及(或)不依靠对MIB信息访问的发现方法。算法可用于发现支持任何距离向量和链路状态路由选择协议的任何路由器。
在另一个供选择实施例中,算法被同时用于多个路由选择协议。图23对该实施例做出了说明。在步骤2400上(当网关路由器被接触时),系统300对在目标网络上使用的路由选择协议进行探测。在某些配置中,网关路由器可以使用多于一个的路由选择协议。在步骤2404、2408和2412上,进行拓扑结构探测时,对各个被发现的路由选择协议使用了不同的算法。在图23中,各个OSPF、RIP、和EIGRP路由选择协议都使用了不同的算法。用于RIP和EIGRP的算法是从前面所阐述的算法修改而来,这些修改对本领域的技术人员是显而易见的。如果使用了一个以上的路由选择协议,就可能有一个以上的路由拓扑结构。本发明的网络模型可以不将不同的路由拓扑结构合并为一个通用模型。在这种情况下,每一种路由拓扑结构都同时体现在单一的数据结构中。
在另一个供选择实施例中,根据路由器所支持的路由选择协议,在逐个路由的基础上调用各种发现代理。例如,在拓扑结构探测期间,一个OSPF可以发现首个OSPF路由器,然后RIP代理的被调用去探测下一个支持RIP而不是OSPF的路由器。
在另一个供选择的实施例中,MIB和OSPF发现阶段可以按相反的顺序进行,即OSPF发现可以在MIB发现之前完成。
在另一个供选择的实施例中,MIB和OSPF发现阶段并行地,即同时地进行。
在另一个实施例中,前面所阐述的任何软件模块都可以作为一个应用程序专用集成电路或任何其它类型的逻辑电路,部分地或整个地应用。
本发明在各种实施例中,正如此处所作的实质性说明和描述,包含了关于网络成份、方法、过程、系统和/或设备的描述,从而也包含了它们的各种实施例、子组合和子集。本专业的技术人员在理解了现在所公开的内容后将懂得如何实现和利用本发明。本发明,在各个实施例中,包括了在没有使用在此处或各种实施例中未曾介绍和/或已经介绍项目的情况下提供设备和方法的内容,这些项目包括在以前的装置或方法中使用过的许多项目,目的是,例如改善性能、提高实现的简易性和/或降低实现成本。
以上对本发明阐述的目的是对其进行描述和说明。前面的介绍无意将本发明局限于此处所公开的形式。虽然本发明的说明包括了对一个或多个实施例以及某些变更和修改的说明,但其它变更和修改也都属于本发明的范围,例如,在本专业技术人员理解了本发明公开的内容之后,有许多变更和修改都是在他们的技能和知识范围之内的。我们所想要的是获得在允许的程度上向已经提出权利要求的项目添加供选择实施例的权利,其中包括供选择的、可互换的和/或等效的结构、功能、范围或步骤,无论这些供选择的、可互换的和/或等效的结构、功能、范围或步骤是否已在此处公布,而且也无须公开任何可申请专利的主题。

Claims (15)

1.一种用于发现一个分布式处理网络的拓扑结构的方法,该方法包括:
(a)接触第一组路由器中的每个路由器,该第一组路由器是公共自治系统的一部分;
(b)从第一组路由器中的每个接触的路由器中检索存储在第一组路由器中的每个路由器内的第一类信息,该第一类信息包括由网络管理协议定义的第一组管理对象和/或变量,该第一组管理对象和/或变量包括含有如下信息的清单:与所接触的路由器相对应的接口地址、每个接口地址如何连接到另一个路由器中的下一跳点接口、以及用于识别在所接触的路由器的接口和相应的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;
(c)对于第一组路由器中的每个接触的路由器,处理第一组管理对象和/或变量,以识别每个下一跳点接口,并且对于每个下一跳点接口,识别所接触路由器的相应接口如何连接到选定的下一跳点接口、以及用于识别在所接触路由器的相应接口和选定的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;
(d)基于第一组管理对象和/或变量,使用第一内部网关路由选择协议确定第二组路由器,该第二组路由器处于所述自治系统中;
(e)接触第二组路由器中的每个路由器;
(f)从第二组路由器中的每个接触的路由器中检索存储在第二组路由器中的每个路由器内的第二类信息,其中第一和第二组路由器的成员关系不同,并且第一类和第二类信息也不同,第二类信息包括由第一内部网关路由选择协议定义的第二组管理对象和/或变量,该第二组管理对象和/或变量包括与第二组路由器的成员相对应的接口、链路和/或网络地址的清单;以及
(g)处理第一和第二组对象和/或变量,以提供一个网络拓扑结构模型。
2.根据权利要求1的方法,还包括:
识别在企业网中使用的至少一个路由选择协议;
在步骤(b)和(e)中的至少一个步骤中,根据所识别的路由选择协议,在多个数据收集代理中选择一个数据收集代理来收集网络拓扑结构信息,其中多个数据收集代理中的每一个都被配置成支持一种不同的路由选择协议。
3.根据权利要求1的方法,其中第二组路由器位于第一协议区中,其中第一协议区使用第一内部网关路由选择协议。
4.根据权利要求1的方法,还包括:
(h)基于第一组管理对象和/或变量,使用不同于第一内部网关路由选择协议的第二内部网关路由选择协议确定第三组路由器,该第三组路由器处于所述自治系统中;
(i)接触第三组路由器中的每个路由器;以及
(j)对于第三组路由器中的每个接触的路由器,访问由第二内部网关路由选择协议定义的第三组管理对象和/或变量,该第三组对象和/或变量包括与第三组路由器的成员相对应的接口、链路和/或网络地址的清单,其中,在步骤(g)中,处理第一、第二和第三组对象和/或变量以提供网络拓扑结构模型。
5.根据权利要求1的方法,还包括:
在接触步骤(b)和(e)期间维护一个未接触路由器和/或未接触路由器接口的未完成清单;
在接触步骤(b)和(e)期间维护一个被接触路由器和/或被接触路由器接口的已完成清单;
在接触步骤(b)期间维护一个初始网关清单,以便在接触步骤(e)中使用。
6.根据权利要求1的方法,其中网络管理协议是简单网络管理协议、Cisco Systems的CDPTM和公共管理信息协议中的一种协议,而第一内部网关路由选择协议是开放式最短路径优先协议、RIP、RIP-2、OSI的IS-IS、EIGRP以及NetWare链路服务协议中的一种协议。
7.根据权利要求1的方法,其中第一和第二内部网关路由选择协议是从包括开放式最短路径优先协议、RIP、RIP-2、OSI的IS-IS、EIGRP以及NetWare链路服务协议的组中选择的。
8.根据权利要求4的方法,其中第二组路由器位于第一协议区中,其中第一协议区使用第一内部网关路由选择协议,而第三组路由器处于第二协议区中,其中第二协议区使用第二内部网关路由选择协议。
9.一种用于发现一个分布式处理网络的拓扑结构的系统,包括:
(a)第一装置,用于从第一组路由器中检索出存储在第一组路由器中的每个路由器内的第一类信息,该第一装置可操作用于:
(i)接触第一组路由器中的每个路由器,该第一组路由器是一个自治系统的一部分;
(ii)对于第一组路由器中的每个接触的路由器,访问第一类信息,该第一类信息包括由网络管理协议定义的第一组管理对象和/或变量,该第一组管理对象和/或变量包括含有如下信息的清单:与所接触的路由器相对应的接口地址、每个接口地址如何连接到另一个路由器中的下一跳点接口、以及用于识别在所接触的路由器的接口和相应的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;
(iii)对于第一组路由器中的每个接触的路由器,处理第一组管理对象和/或变量,以识别每个下一跳点接口,并且对于每个下一跳点接口,识别所接触路由器的相应接口如何连接到选定的下一跳点接口、以及用于识别在所接触路由器的相应接口和选定的下一跳点接口之间的每条链路上存在的内部网关路由选择协议的内部网关路由选择协议标识符;
(b)第二装置,用于从第二组路由器中检索出存储在第二组路由器中的每个路由器内的第二类信息,该第二装置可操作用于:
(i)使用第一内部网关路由选择协议确定第二组路由器,该第二组路由器是所述自治系统的一部分;
(ii)接触第二组路由器中的每个路由器;
(iii)对于第二组路由器中的每个接触的路由器,访问第二类信息,该第二类信息包括由第一内部网关路由选择协议定义的第二组管理对象和/或变量,该第二组管理对象和/或变量包括与第二组路由器的成员相对应的接口、链路和/或网络地址的清单;以及
(c)阶段控制器,可操作用于:
(i)基于第一组管理对象和/或变量,在第一和第二装置之间进行选择,以实现拓扑结构发现;以及
(ii)处理第一和第二组对象和/或变量,以提供一个网络拓扑结构模型,其中第一组和第二组路由器的成员关系是不同的,而且第一和第二类信息也不同。
10.根据权利要求9的系统,还包括:
第三装置,用于在第一和第二装置进行接触操作期间维护一份未接触路由器和/或未接触路由器接口的未完成清单;
第四装置,用于在第一和第二装置进行接触操作期间维护一份已接触路由器和/或已接触路由器接口的已完成清单;
第五装置,用于在第一和第二装置进行接触操作期间维护一份初始网关清单。
11.根据权利要求9的系统,还包括:
第三装置,用于在子部分(b)中标出的操作(i)、(ii)和(iii)中的至少一个操作中,依据所识别的路由选择协议,从多个数据收集代理中选择一个数据收集代理,以收集网络拓扑结构信息,其中多个数据收集代理中的每一个都被配置成支持一种不同的路由选择协议;
第四装置,用于将第一类信息形成到第一网络模型中,将第二类信息形成到与第一网络模型不同的第二网络模型中;以及
第五装置,用于将第一和第二网络模型合并成单个网络模型。
12.根据权利要求9的系统,其中子部分(a)中的访问操作(ii)包括:
访问包含在ipAddr表、ipAddrTable表、ipRouteTable表和ipRouteEntry表中的第一组管理对象和/或变量。
13.根据权利要求9的系统,其中,在子部分(a)中的处理操作中,当一个分组可以直接从接触的路由器接口到达网络时,该网络为桩基网络,而当一个分组必须从接触的路由器接口经过一个网络到达另一个网络时,中间的网络为运输网络。
14.根据权利要求9的系统,其中第二装置还执行以下操作:
(iv)基于第一组管理对象和/或变量,使用不同于第一内部网关路由选择协议的第二内部网关路由选择协议确定第三组路由器,该第三组路由器处于所述自治系统中;
(v)接触第三组路由器中的每个路由器;以及
(vi)对于第三组路由器中的每个接触的路由器,访问由第二内部网关路由选择协议定义的第三组对象和/或变量,该第三组对象和/或变量包括与第三组路由器的成员相对应的接口、链路和/或网络地址的清单,其中,处理第一、第二和第三组对象和/或变量以提供网络拓扑结构模型。
15.根据权利要求9的系统,其中网络管理协议是简单网络管理协议、Cisco Systems的CDPTM和公共管理信息协议中的一种协议,并且第一和第二内部网关路由选择协议是从包括开放式最短路径优先协议、RIP、RIP-2、OSI的IS-IS、EIGRP以及NetWare链路服务协议的组中选择的协议。
CNB028173880A 2001-09-06 2002-09-06 通过分阶段多次发现方法进行拓扑结构发现的方法和系统 Expired - Fee Related CN1287307C (zh)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US31771901P 2001-09-06 2001-09-06
US60/317,719 2001-09-06
US34705002P 2002-01-08 2002-01-08
US60/347,050 2002-01-08
US10/127,888 US7069343B2 (en) 2001-09-06 2002-04-22 Topology discovery by partitioning multiple discovery techniques
US10/127,888 2002-04-22

Publications (2)

Publication Number Publication Date
CN1552030A CN1552030A (zh) 2004-12-01
CN1287307C true CN1287307C (zh) 2006-11-29

Family

ID=27383629

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028173880A Expired - Fee Related CN1287307C (zh) 2001-09-06 2002-09-06 通过分阶段多次发现方法进行拓扑结构发现的方法和系统

Country Status (9)

Country Link
US (1) US7069343B2 (zh)
EP (1) EP1446726A4 (zh)
JP (1) JP3996577B2 (zh)
KR (1) KR100878109B1 (zh)
CN (1) CN1287307C (zh)
AU (1) AU2002362252A1 (zh)
CA (1) CA2457928C (zh)
MX (1) MXPA04002121A (zh)
WO (1) WO2003023638A2 (zh)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7962605B2 (en) * 2001-11-20 2011-06-14 Microsoft Corporation Distributed device discovery framework for a network
US7571239B2 (en) * 2002-01-08 2009-08-04 Avaya Inc. Credential management and network querying
US7334048B1 (en) * 2002-06-04 2008-02-19 Extreme Networks, Inc. Method and apparatus for fast route table update
CN1192564C (zh) * 2002-06-06 2005-03-09 华为技术有限公司 开放最短路径优先协议第五类链路状态通告分组刷新的方法
US20030235157A1 (en) * 2002-06-21 2003-12-25 International Business Machines Corporation Method and structure for an autoconfiguration topology calculation
US7580370B2 (en) * 2002-06-21 2009-08-25 International Business Machines Corporation Method and structure for autoconfiguration of network destinations
US7769839B2 (en) * 2002-06-21 2010-08-03 International Business Machines Corporation Method and structure for autoconfiguration of overlay networks by automatic selection of a network designated router
US7634230B2 (en) 2002-11-25 2009-12-15 Fujitsu Limited Methods and apparatus for secure, portable, wireless and multi-hop data networking
US20040215781A1 (en) * 2003-03-27 2004-10-28 Pulsipher Eric A. Techniques for determining device connectivity in a network using protocol-specific connectivity information
US20040196865A1 (en) * 2003-03-27 2004-10-07 Srikanth Natarajan Method and system for discovering a topology of a portion of a computer network
EP1467527A3 (en) * 2003-04-07 2007-04-04 Nokia Corporation Resource determination in IP-based networks
US7768946B2 (en) * 2003-04-07 2010-08-03 Nokia Corporation Resource determination in IP-based networks
US7827308B2 (en) * 2003-05-23 2010-11-02 Alcatel-Lucent Canada Inc. Optical wavekey network and a method for distributing management information therein
US7426577B2 (en) * 2003-06-19 2008-09-16 Avaya Technology Corp. Detection of load balanced links in internet protocol netwoks
US7864700B2 (en) * 2003-06-23 2011-01-04 Computer Associates Think, Inc. Discovering and merging network information
US7606887B1 (en) 2003-09-11 2009-10-20 Juniper Networks, Inc. Automatic establishment of network performance monitoring communities using routing protocols
US7756958B2 (en) * 2003-09-20 2010-07-13 International Business Machines Corporation Intelligent discovery of network information from multiple information gathering agents
JP4578917B2 (ja) * 2003-10-03 2010-11-10 富士通株式会社 自己組織化マルチホップ無線アクセスネットワーク用の装置、方法及び媒体
US7748703B2 (en) * 2004-02-28 2010-07-06 Siemens Aktiengesellschaft Device for stacking flat, flexible postal items in a stacking compartment
JP4474207B2 (ja) * 2004-06-10 2010-06-02 富士通株式会社 ネットワーク管理システム、ネットワーク管理方法
US7646729B2 (en) * 2004-06-17 2010-01-12 Alcatel-Lucent Usa Inc. Method and apparatus for determination of network topology
US9537731B2 (en) * 2004-07-07 2017-01-03 Sciencelogic, Inc. Management techniques for non-traditional network and information system topologies
US7715382B2 (en) * 2004-11-01 2010-05-11 Alcatel-Lucent Usa Inc. Softrouter
US8953432B2 (en) * 2004-11-01 2015-02-10 Alcatel Lucent Softrouter dynamic binding protocol
US9014181B2 (en) * 2004-11-01 2015-04-21 Alcatel Lucent Softrouter separate control network
US8068408B2 (en) 2004-11-01 2011-11-29 Alcatel Lucent Softrouter protocol disaggregation
US8996722B2 (en) * 2004-11-01 2015-03-31 Alcatel Lucent Softrouter feature server
US9100266B2 (en) * 2004-11-01 2015-08-04 Alcatel Lucent SoftRouter protocol failovers
KR100674086B1 (ko) * 2004-12-16 2007-01-24 한국전자통신연구원 이더넷 망에서의 토폴로지 발견 방법
US8051148B2 (en) * 2005-01-13 2011-11-01 National Instruments Corporation Determining differences between configuration diagrams
US7987445B2 (en) * 2005-01-13 2011-07-26 National Instruments Corporation Comparing a configuration diagram to an actual system
US7703027B2 (en) * 2005-01-13 2010-04-20 National Instruments Corporation Merging graphical programs
US7987444B2 (en) * 2005-01-13 2011-07-26 National Instruments Corporation Determining and merging differences between configuration diagrams
US20060256814A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Ad hoc computer network
US20060256717A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Electronic packet control system
US20060256770A1 (en) * 2005-05-13 2006-11-16 Lockheed Martin Corporation Interface for configuring ad hoc network packet control
US7599289B2 (en) * 2005-05-13 2009-10-06 Lockheed Martin Corporation Electronic communication control
US7898981B1 (en) * 2006-03-31 2011-03-01 Cisco Technology, Inc. System and method for improving network performance by controlling stub-routing behavior
US20070242607A1 (en) * 2006-04-13 2007-10-18 Tellabs Operations, Inc. Method and system for controlling distribution of network topology information
US8811224B2 (en) * 2006-05-30 2014-08-19 McAfee Ireland Holdings, Limited Method and system for determining physical connectivity in a dynamic network
US20090185507A1 (en) * 2006-05-30 2009-07-23 Insightix Ltd. Method and system for determining topology of a dynamic network
US8233491B2 (en) * 2006-09-28 2012-07-31 Burns Jr James M Embedded media terminal adapter (EMTA) endpoint redirect mode
US9330230B2 (en) * 2007-04-19 2016-05-03 International Business Machines Corporation Validating a cabling topology in a distributed computing system
US8223667B2 (en) 2007-06-11 2012-07-17 International Business Machines Corporation Inferred discovery of a data communications device
US8805982B1 (en) * 2007-06-29 2014-08-12 Ciena Corporation Progressively determining a network topology and using neighbor information to determine network topology
US20090187652A1 (en) * 2008-01-21 2009-07-23 International Business Machines Corporation Inferred Discovery Of Devices Of A Data Communications Network
US20090210523A1 (en) * 2008-02-14 2009-08-20 Matthew Edward Duggan Network management method and system
US7835307B2 (en) * 2008-03-14 2010-11-16 International Business Machines Corporation Network discovery tool
EP2301199A2 (en) 2008-07-11 2011-03-30 Raghavendra Uppalli Inferring connectivity in the presence of conflicting network data
CN101657040B (zh) * 2008-08-21 2012-07-04 华为技术有限公司 一种无线网络拓扑发现方法、装置及系统
KR100959077B1 (ko) * 2008-09-19 2010-05-20 한국전자통신연구원 이더넷 네트워크에서 토폴로지 탐색을 위한 갭 분석 방법
FR2938992B1 (fr) * 2008-11-24 2012-12-28 Centre Nat Detudes Spatiales Cnes Procede et dispositif de decouverte de la topologie de niveau 3 d'un reseau internet ip d'entreprise
US8521904B1 (en) 2008-12-16 2013-08-27 At&T Intellectual Property I, L.P. Devices, systems, and/or methods for determining internet topology
US7944857B2 (en) * 2009-01-12 2011-05-17 Hewlett-Packard Development Company, L.P. Method and system for deriving tunnel path information in MPLS networks
US8565119B2 (en) * 2009-04-14 2013-10-22 Schweitzer Engineering Laboratories Inc Network discovery and data transfer using SNMP in an electric power transmission or distribution system
CN101552694B (zh) * 2009-05-12 2011-07-20 成都市华为赛门铁克科技有限公司 一种网络拓扑加载方法、装置及网络管理系统
US8261357B2 (en) * 2009-10-14 2012-09-04 Schweitzer Engineering Laboratories, Inc. Systems and methods for license entitlement key distribution
US8509101B2 (en) * 2009-10-14 2013-08-13 Schweitzer Engineering Laboratories Inc Systems and methods for a configurable communication device
CN101795227B (zh) * 2010-01-25 2013-06-05 杭州华三通信技术有限公司 一种路由器的快速发现方法和设备
US8656011B2 (en) * 2010-11-17 2014-02-18 Hitachi, Ltd. Method and management apparatus for detecting communication apparatus coupled to communication network
CN103368758B (zh) * 2012-03-31 2017-05-31 中兴通讯股份有限公司 检测并展示设备间三层交换关系的方法及系统
CN102904753B (zh) * 2012-09-26 2015-08-05 迈普通信技术股份有限公司 一种快速创建网络拓扑的方法及系统
US9571348B1 (en) 2013-07-03 2017-02-14 Dell Software Inc. System and method for inferring and adapting a network topology
CN104579978B (zh) * 2014-12-30 2018-01-09 国家电网公司 一种动态网络链路层拓扑发现方法
US10079730B2 (en) * 2015-09-30 2018-09-18 Amazon Technologies, Inc. Network based resource configuration discovery service
US9967135B2 (en) 2016-03-29 2018-05-08 Schweitzer Engineering Laboratories, Inc. Communication link monitoring and failover

Family Cites Families (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4556972A (en) * 1983-12-27 1985-12-03 At&T Bell Laboratories Arrangement for routing data packets through a circuit switch
US4644532A (en) 1985-06-10 1987-02-17 International Business Machines Corporation Automatic update of topology in a hybrid network
CA2017974C (en) 1989-08-07 1998-06-16 Richard Alan Becker Dynamic graphical analysis of network data
CA2017969C (en) 1989-08-07 1999-04-20 Richard Alan Becker Dynamic graphics arrangement for displaying spatial-time-series data
US5185860A (en) 1990-05-03 1993-02-09 Hewlett-Packard Company Automatic discovery of network elements
US5226120A (en) 1990-05-21 1993-07-06 Synoptics Communications, Inc. Apparatus and method of monitoring the status of a local area network
US5557745A (en) 1990-09-04 1996-09-17 Digital Equipment Corporation Method for supporting foreign protocols across backbone network by combining and transmitting list of destinations that support second protocol in first and second areas to the third area
WO1992006547A1 (en) 1990-09-28 1992-04-16 Hewlett-Packard Company Method of ascertaining topology features of a network
US5644692A (en) 1991-12-06 1997-07-01 Lucent Technologies Inc. Information display apparatus and methods
US5734824A (en) 1993-02-10 1998-03-31 Bay Networks, Inc. Apparatus and method for discovering a topology for local area networks connected via transparent bridges
US6269398B1 (en) * 1993-08-20 2001-07-31 Nortel Networks Limited Method and system for monitoring remote routers in networks for available protocols and providing a graphical representation of information received from the routers
CA2127764A1 (en) 1993-08-24 1995-02-25 Stephen Gregory Eick Displaying query results
US5581797A (en) 1993-10-22 1996-12-03 Lucent Technologies Inc. Method and apparatus for displaying hierarchical information of a large software system
US5596703A (en) 1993-10-22 1997-01-21 Lucent Technologies Inc. Graphical display of relationships
US5564048A (en) 1994-06-15 1996-10-08 Lucent Technologies Inc. Object-oriented functionality class library for use in graphics programming
US5572650A (en) 1994-06-30 1996-11-05 Lucent Technologies Inc. Method and apparatus for displaying structures and relationships of a relational database
US5737526A (en) * 1994-12-30 1998-04-07 Cisco Systems Network having at least two routers, each having conditional filter so one of two transmits given frame and each transmits different frames, providing connection to a subnetwork
US6456306B1 (en) 1995-06-08 2002-09-24 Nortel Networks Limited Method and apparatus for displaying health status of network devices
US5751971A (en) * 1995-07-12 1998-05-12 Cabletron Systems, Inc. Internet protocol (IP) work group routing
US5805593A (en) 1995-09-26 1998-09-08 At&T Corp Routing method for setting up a service between an origination node and a destination node in a connection-communications network
JP2728051B2 (ja) 1995-10-18 1998-03-18 日本電気株式会社 Atm網構成管理方法
US5850397A (en) 1996-04-10 1998-12-15 Bay Networks, Inc. Method for determining the topology of a mixed-media network
US5881246A (en) * 1996-06-12 1999-03-09 Bay Networks, Inc. System for generating explicit routing advertisements to specify a selected path through a connectionless network to a destination by a specific router
US6088451A (en) 1996-06-28 2000-07-11 Mci Communications Corporation Security system and method for network element access
US6252856B1 (en) 1996-12-03 2001-06-26 Nortel Networks Limited Method and apparatus for minimizing calculations required to construct multicast trees
US6275492B1 (en) * 1996-12-03 2001-08-14 Nortel Networks Limited Method and apparatus for routing data using router identification information
US6256675B1 (en) 1997-05-06 2001-07-03 At&T Corp. System and method for allocating requests for objects and managing replicas of objects on a network
US5926463A (en) * 1997-10-06 1999-07-20 3Com Corporation Method and apparatus for viewing and managing a configuration of a computer network
US6263446B1 (en) 1997-12-23 2001-07-17 Arcot Systems, Inc. Method and apparatus for secure distribution of authentication credentials to roaming users
US6122639A (en) * 1997-12-23 2000-09-19 Cisco Technology, Inc. Network device information collection and change detection
US6131117A (en) 1997-12-29 2000-10-10 Cisco Technology, Inc. Technique for correlating logical names with IP addresses on internetworking platforms
US6119171A (en) * 1998-01-29 2000-09-12 Ip Dynamics, Inc. Domain name routing
JP3604898B2 (ja) 1998-03-31 2004-12-22 キヤノン株式会社 ネットワークデバイスの管理装置及びその方法、記録媒体
US6442144B1 (en) * 1998-06-15 2002-08-27 Compaq Computer Corporation Method and apparatus for discovering network devices using internet protocol and producing a corresponding graphical network map
US6360255B1 (en) 1998-06-25 2002-03-19 Cisco Technology, Inc. Automatically integrating an external network with a network management system
US6418476B1 (en) * 1998-06-29 2002-07-09 Nortel Networks, Limited Method for synchronizing network address translator (NAT) tables using the open shortest path first opaque link state advertisement option protocol
US6269400B1 (en) * 1998-07-22 2001-07-31 International Business Machines Corporation Method for discovering and registering agents in a distributed network
US6252865B1 (en) * 1998-10-02 2001-06-26 Qualcomm, Inc. Methods and apparatuses for fast power control of signals transmitted on a multiple access channel
US5943317A (en) 1998-10-15 1999-08-24 International Business Machines Corp. Sub-network route optimization over a shared access transport facility
US6108702A (en) 1998-12-02 2000-08-22 Micromuse, Inc. Method and apparatus for determining accurate topology features of a network
US6377987B1 (en) * 1999-04-30 2002-04-23 Cisco Technology, Inc. Mechanism for determining actual physical topology of network based on gathered configuration information representing true neighboring devices
US6895436B1 (en) 1999-07-01 2005-05-17 International Business Machines Corporation Method and system for evaluating network security
US6859878B1 (en) 1999-10-28 2005-02-22 International Business Machines Corporation Universal userid and password management for internet connected devices
US20020161591A1 (en) 1999-11-23 2002-10-31 Gunner D. Danneels Method of securely passing a value token between web sites
GB2362970B (en) 2000-05-31 2004-12-29 Hewlett Packard Co Improvements relating to information storage
US7272662B2 (en) 2000-11-30 2007-09-18 Nms Communications Corporation Systems and methods for routing messages to communications devices over a communications network
US20020141593A1 (en) 2000-12-11 2002-10-03 Kurn David Michael Multiple cryptographic key linking scheme on a computer system
US20020128885A1 (en) 2001-01-06 2002-09-12 Evans Robert E. Method and system for characterization and matching of attributes and requirements
US7210167B2 (en) 2001-01-08 2007-04-24 Microsoft Corporation Credential management
GB2372360B (en) 2001-02-15 2005-01-19 Hewlett Packard Co Improvements in and relating to credential transfer methods
GB2372412A (en) 2001-02-20 2002-08-21 Hewlett Packard Co Digital credential monitoring
US7085925B2 (en) 2001-04-03 2006-08-01 Sun Microsystems, Inc. Trust ratings in group credentials
US6744739B2 (en) * 2001-05-18 2004-06-01 Micromuse Inc. Method and system for determining network characteristics using routing protocols
JP2002366454A (ja) 2001-06-11 2002-12-20 Fujitsu Ltd ネットワーク管理方法及びその装置
US7904326B2 (en) 2001-06-29 2011-03-08 Versata Development Group, Inc. Method and apparatus for performing collective validation of credential information
EP1421464A4 (en) 2001-08-06 2009-12-23 Certco Inc Loew S Corp SYSTEM AND METHOD FOR CONFIDENCE CLIMATE FOR COMPUTER ENVIRONMENTS
US20030065626A1 (en) 2001-09-28 2003-04-03 Allen Karl H. User verification for conducting health-related transactions

Also Published As

Publication number Publication date
US20030046427A1 (en) 2003-03-06
WO2003023638A3 (en) 2003-07-24
CA2457928C (en) 2008-05-20
JP3996577B2 (ja) 2007-10-24
CN1552030A (zh) 2004-12-01
MXPA04002121A (es) 2004-07-08
KR20040034703A (ko) 2004-04-28
US7069343B2 (en) 2006-06-27
KR100878109B1 (ko) 2009-01-14
EP1446726A2 (en) 2004-08-18
JP2005525716A (ja) 2005-08-25
WO2003023638A2 (en) 2003-03-20
CA2457928A1 (en) 2003-03-20
EP1446726A4 (en) 2008-12-10
AU2002362252A1 (en) 2003-03-24

Similar Documents

Publication Publication Date Title
CN1287307C (zh) 通过分阶段多次发现方法进行拓扑结构发现的方法和系统
CN1306752C (zh) 利用链路状态信息发现ip网络拓扑结构
KR100793530B1 (ko) 분산형 프로세싱 네트워크 관련 토폴로지 결정 방법 및시스템
EP1560379B1 (en) Methods and systems for unnumbered network link discovery
US7525920B2 (en) Method and system for path identification in packet networks
US8526325B2 (en) Detecting and identifying connectivity in a network
US20070127502A1 (en) Method of multi-port virtual local area network (vlan) supported by multi-protocol label switch (mpls)_
US20030005092A1 (en) Method for locating and recovering devices which are connected to the internet or to an internet-connected network
US20070171844A1 (en) Determining network paths
CN100493003C (zh) 可扩展的互联网测量服务器自动发现与管理方法
CN1663176A (zh) 标识网络路由器和路径
EP2451125B1 (en) Method and system for realizing network topology discovery
CN108206792B (zh) 交换机的拓扑结构发现方法及装置
CN1898902A (zh) 在基于因特网协议(ip)的网络中集中式配置链路范围类型的被管理对象
US7050404B1 (en) Method and system for determining network topology
Lin et al. Automatic topology discovery of IP networks
JPWO2005020525A1 (ja) プロトコル高速化装置
US7039696B1 (en) Method and system for processing data for network connections
US20220345370A1 (en) Ordering possible device locations on the network by port-of-entry likelihood
Spring Efficient discovery of network topology and routing policy in the Internet
KR100232495B1 (ko) 인터넷 프로토콜 망내에서의 비동기 전송 모드 장비 검출 및 망위상 형성 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20061129

Termination date: 20210906