CN101945043A - 基于IPv6的下一代互联网拓扑发现系统及实现方法 - Google Patents

基于IPv6的下一代互联网拓扑发现系统及实现方法 Download PDF

Info

Publication number
CN101945043A
CN101945043A CN201010275867XA CN201010275867A CN101945043A CN 101945043 A CN101945043 A CN 101945043A CN 201010275867X A CN201010275867X A CN 201010275867XA CN 201010275867 A CN201010275867 A CN 201010275867A CN 101945043 A CN101945043 A CN 101945043A
Authority
CN
China
Prior art keywords
router
module
equipment
node
subnet
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.)
Granted
Application number
CN201010275867XA
Other languages
English (en)
Other versions
CN101945043B (zh
Inventor
董守玲
张凌
董守斌
许勇
邓剑峰
陈启愉
李佳
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.)
Count Network Co Ltd Of Park In Guangzhou
South China University of Technology SCUT
Original Assignee
Count Network Co Ltd Of Park In Guangzhou
South China University of Technology SCUT
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 Count Network Co Ltd Of Park In Guangzhou, South China University of Technology SCUT filed Critical Count Network Co Ltd Of Park In Guangzhou
Priority to CN201010275867XA priority Critical patent/CN101945043B/zh
Publication of CN101945043A publication Critical patent/CN101945043A/zh
Application granted granted Critical
Publication of CN101945043B publication Critical patent/CN101945043B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于IPv6的下一代互联网拓扑发现系统,包括探测列表输入模块、设备及相连关系发现模块、设备及子网拓扑发现模块、分析整合模块、拓扑结构信息存储模块、数据库和拓扑结构信息显示模块。本发明还公开上述系统的实现方法,包括以下步骤:S1、探测列表输入模块形成探测节点列表;S2、设备及相连关系发现模块发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系;设备及子网拓扑发现模块与网络上的路由器交换网络拓扑信息,得到网络拓扑信息;S3、分析整合模块进行分析形成完整的拓扑结构图。本发明具有稳定性加强、性能更好、消除别名,以及有效提升拓扑发现的准确性和完整性等优点。

Description

基于IPv6的下一代互联网拓扑发现系统及实现方法
技术领域
本发明属于计算机网络管理技术领域,特别涉及一种基于IPv6的下一代互联网拓扑发现系统及其实现方法。
背景技术
过去的20多年里,IPv4作为互联网的标准取得了辉煌的业绩。但随着Internet的飞速发展,IPv4网络的缺陷已变得愈加明显。如地址空间的不足,端到端通信质量得不到保障,网络配置管理困难以及与移动网络难以互通等。相比于IPv4,IPv6具有如下优越性:良好的可扩展性、可靠的安全性、多样化的服务质量、易管理性、移动性,另外,还能很好地支持多播业务,提高网络的整体吞吐量。使用IPv6后,大量非计算机终端将有机会独立连接到互联网上,人们将生活在一个真正的网络世界中。
IPv6协议作为下一代网络协议,正在得到越来越多的国家和研究单位的关注。中国、日本、韩国和欧洲以及美国都在IPv6研发中投入了巨大的精力和时间。2008年12月3日,历时五年的CNGI(China Next Generation Internet,中国下一代互联网)项目取得阶段性的成果,在下一代互联网基础设施建设、技术研发及产业化、技术试验与应用示范等方面取得了一系列重大成果,建成并稳定运行全球第一个、也是规模最大的纯IPv6互联网主干网。中国下一代互联网研究与产业化获得重大突破,现已建成包括6个核心网络、22个城市59个节点以及北京和上海两个国际交换中心、273个驻地网的IPv6示范网络。据不完全统计,截至目前国家发展改革委累计安排投资超过11亿元,带动社会投资约40亿元。从2003年至今,CNGI先后支持建设了骨干网、驻地网,103个研究开发、产业化及应用示范项目以及教育网IPv6技术升级项目,全国超过100所高校和100家研究单位、几十家企业的上万名科研生产一线工作者参加了项目建设。
以此为基础,国家发改委、科技部等部委在2008年年底组织实施了的下一代互联网业务试商用及设备产业化专项,在不久的将来,基于IPv6的下一代互联网必将大规模在国内乃至世界范围内得到广泛应用。
网络管理是网络的重要支撑系统,当新一代网络实施成功时,下一代网络管理也要应时而生,否则网络的运营、业务的管理会受到极大的负面拖动。而网络拓扑发现是自动发现网络中的各种设备及网络设备之间的连接关系,是网络管理的基础。由于IPv6协议和IPv4协议不兼容,以往适用于IPv4网络的拓扑发现工具、方法不能直接移植到IPv6的网络,同时IPv6协议的许多新特征,如地址结构的变化以及IPv6 over IPv4隧道的存在,也对IPv6下的拓扑发现提出了全新的挑战。
目前,IPv6拓扑自动发现主要存在以下三个困难:第一,目前探测子网内部设备的活动性方法几乎用的都是Ping穷举方法,对于IPv6的子网来说,穷举法探测主机需要264个(约2千亿亿个)ICMP(Internet Control Message Protocol,互联网控制报文协议)回射请求。这对于任何网络都是不可接受的。比较而言,对一个IPv4的C类子网256位地址的探测,如果采用异步方式只需要几秒钟,因而不会给网络带来太大负担。所以IPv4的局域网拓扑探测方法显然不适用于IPv6。第二,在IPv6中地址按照范围被划分为全球地址,本地站点地址和本地链路地址三类。目前有许多路由协议使用本地的链路地址来定义路由表中的ipv6RouteNextHop对象,而不是用全球地址定义,因此IPv4中的基于SNMP(Simple Network Management Protocol,简单网络管理协议)搜索算法的拓扑发现机制在IPv6情况下无法直接使用。第三,标准化组织虽然已经定义了IPv6管理相关的MIB(Management Information Base,管理信息库),但目前大部分网络设备对这些MIB标准不支持或者不完全支持,SNMP协议还无法在IPv6拓扑发现中发挥作用。以上这些问题都给目前的IPv6的网络进行拓扑发现造成了极大的困难,迫切需要进行深入的研究。
由于基于通用协议的探测方法独立于IP的特性,目前许多研究组织往往采用Traceroute探测方法对IPv6的骨干网路由器级的拓扑进行研究,但利用Traceroute进行探测,虽然具有适用性好、容易实现等优点,但是存在路由别名的问题,如图1(a)和图1(b)所示,其中图1(a)为实际的网络连接,图1(b)为通过Traceroute探测得到的拓扑网络,在Traceroute探测过程中,除了目标节点是探测报文的真正目的地,其它发送ICMP消息的都是中间节点,在收到的所有ICMP响应消息中,除了目标节点发送的消息外,其它消息的源IP地址只代表路由器的一个接口,并不代表路由节点。由于探测点可能会收到来自同一节点的不同接口发来的ICMP响应,所以在构造拓扑时,若把所有地址视为节点对待,将会和实际拓扑相差很大。从路由器B发现路由器D的过程中,获得了路由器D的接口1的IP地址,从路由器C发现路由器D的过程中,获得了路由器D的的接口2的IP地址,如果不能分辨出接口1和接口2是同一个路由器的两个接口,就会得到错误的拓扑图,见图1(b),这就是路由别名的问题。此外,Traceroute探测方法不能发现网段信息,而且发现的信息不完整,即节点和链路的覆盖率不高。而覆盖率依赖于探测节点的数目,若增加探测节点来提升覆盖率,则会增加探测时间以及会出现更多的路由别名问题。
发明内容
本发明的目的之一在于克服上述现有技术的缺点和不足,提供一种基于IPv6的下一代互联网拓扑发现系统,其可以实现IPv6下一代互联网网络层拓扑自动发现,具有稳定性加强、性能更好、消除别名,以及有效提升拓扑发现的准确性和完整性等优点。
本发明的目的之二在于克服上述现有技术的缺点和不足,提供一种基于IPv6的下一代互联网拓扑发现系统的实现方法。
本发明的目的之一是通过下述技术方案实现的:一种基于IPv6的下一代互联网拓扑发现系统,包括
探测列表输入模块,用于接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块;
设备及相连关系发现模块,用于接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块,用于将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送分析整合模块;
分析整合模块,用于接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块;
拓扑结构信息存储模块,用于将完整的拓扑结构图存入数据库;
数据库,用于存储拓扑结构信息;
拓扑结构信息显示模块,用于显示数据库中完整的拓扑结构图。
为更好的实现本发明,所述系统采用对象的形式来组织数据结构,对于系统中涉及到的每一种拓扑对象均定义了一个类,具体包括设备类、子网类、连接类、接口类和路由器直连子网类。
优选的,所述系统采用链表的形式来组织拓扑对象,具体包括
用于保存所发现路由器的路由器列表1、路由器列表2和设备表;
用于保存所发现子网的子网列表;
用于保存所发现路由器之间连接关系的连接列表1、连接列表2和连接列表;
用于保存所发现路由器与子网连接关系的路由器直连子网列表;
和用于保存路由别名的别名列表和接口表。
本发明的目的之二是通过下述技术方案实现的:一种基于IPv6的下一代互联网拓扑发现系统的实现方法,包括以下步骤:
S1、探测列表输入模块接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块,进入步骤S2;
S2、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送至分析整合模块,进入步骤S3;
S3、分析整合模块接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块,进入S4;
S4、拓扑结构信息存储模块将完整的拓扑结构图存入数据库,进入步骤S5;
S5、拓扑结构信息显示模块显示数据库中完整的拓扑结构图。
为更好的实现本发明,所述步骤S2中设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块,具体包括以下步骤:
S2.1、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并进入下一步骤;
S2.2、设备及相连关系发现模块判断探测节点列表中的地址是否都进行了普通路由探测,若是,则跳转至S2.4;若不是,则在探测节点列表中选择一个没有进行普通路由探测的地址进行普通路由探测,即设备及相连关系发现模块以选择的地址为目标地址发送路由路径探测包,等待并接收路由路径探测包的返回结果,进入下一步骤;
S2.3、设备及相连关系发现模块分析路由路径探测包的返回结果,依次获取设备的IPv6地址、该设备的跳数、设备间连接信息,并将设备IPv6地址和该设备的跳数保存到路由器列表1,把设备间连接信息保存到连接列表1中;若路由路径探测包的返回结果中最后一跳的地址和探测的目标地址不一样,那么这两个地址是路由别名,把路由别名保存到别名列表中,返回步骤S2.2;
S2.4、设备及相连关系发现模块发送一个路由路径探测包到一个可以到达的地址,根据探测包返回结果中第一跳的地址来获取网关地址,进入下一步骤;
S2.5、设备及相连关系发现模块以网关地址为目标地址,路由器列表1中没有进行过源路由测试的的路由器为中间节点,进行源路由测试,将支持源路由探测的节点放到源路由器列表中;
S2.6、设备及相连关系发现模块以路由器列表1中的节点为目标节点,源路由器列表中节点为中间节点,进行源路由探测,并进入一下步骤;
S2.7、设备及相连关系发现模块分析步骤S2.6中源路由探测的结果,将新发现的连接信息存入连接列表1;若在源路由测试和源路由探测中,发现一些新的节点,则把这些新的节点写入路由器列表1;
设备及相连关系发现模块进行别名判断,即当对同一地址进行源路由探测时,若返回报文的源地址与探测的地址不同,则返回报文的源地址与探测地址是路由别名,把路由别名保存到别名列表,进入下一步骤;
S2.8、设备及相连关系发现模块判断在进行步骤S2.5的源路由测试及步骤S2.6的源路由探测时,是否发现一些新的节点,若有,则返回至步骤S2.5;若否,则把路由器列表1、连接列表1和别名列表传送给分析整合模块,结束操作。
优选的,在步骤S2.5中,下述节点无需进行源路由测试:
(1)设备及相连关系发现模块之前已经对该节点进行过源路由测试;
(2)该节点位于网关上;
(3)设备及相连关系发现模块之前已经对该节点所在路由器上的其他地址进行过源路由测试。
优选的,在步骤S2.6中,下述节点无需进行源路由探测:
(1)设备及相连关系发现模块之前已经对此节点进行过源路由探测;
(2)目标地址位于网关上;
(3)中间节点位于网关上;
(4)中间节点和目标地址是路由别名;
(5)设备及相连关系发现模块曾经把目标地址作为中间节点探测过,而且探测包不能到达目标地址。
优选的,所述步骤S2设备及子网拓扑发现模块将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的拓扑结构信息,并把拓扑结构信息发送至分析整合模块,具体包括以下步骤:
Q2.1、设备及子网拓扑发现模块通过计算机系统,创建一个套接字到一个端口上进行监听,若收到客户端的结束命令时,则设备及子网拓扑发现模块结束操作;若收到客户端的开始命令时,则进入下一步骤;
Q2.2、设备及子网拓扑发现模块获取自己计算机的网卡地址,然后进入下一步骤;
Q2.3、设备及子网拓扑发现模块初始化组播包,然后进入下一步骤;
Q2.4、设备及子网拓扑发现模块将步骤Q2.3中构建的组播包发送到网络中,进入下一步骤;
Q2.5、设备及子网拓扑发现模块判断是否收到对端路由器对组播包的回应包,若是,则设备及子网拓扑发现模块分析对端路由器的回应包,获取对端路由器的本地链路地址,并进入下一步骤;若不是,则跳转至步骤Q2.7;
Q2.6、设备及子网拓扑发现模块发送一个请求数据库描述包给对端路由器,并进入下一步骤;
Q2.7、设备及子网拓扑发现模块判断是否收到对端路由器对请求数据库描述包的回应包,若是,则设备及子网拓扑发现模块再发一次请求数据库描述包给对端路由器,以完成与对端路由器的协商,进入下一步骤;若不是,则跳转至步骤Q2.9;
Q2.8、设备及子网拓扑发现模块发送链路状态请求报文,向对端路由器申请获取链路状态数据,进入下一步骤;
Q2.9、设备及子网拓扑发现模块判断是否收到对端路由器回应的链路状态数据包,若是,则将链路状态数据保存在缓存中,进入下一步骤;若不是,则返回至步骤Q2.5;
Q2.10、设备及子网拓扑发现模块判断是否与对端路由器交换完所有链路状态数据,若是,则进入下一步骤;若否,则返回至步骤Q2.8;
Q2.11、设备及子网拓扑发现模块分析获取的链路状态数据信息,形成网络拓扑信息,包括以路由器编号标识的路由器列表2、连接列表2、子网列表以及路由器直连子网列表,最后将网络拓扑信息发送至分析整合模块。
优选的,所述步骤Q2.3中设备及子网拓扑发现模块初始化组播包,具体是指设备及子网拓扑发现模块在组播包中填充自己的地址、组播地址、校验码,以及组播包的类型与长度;其中组播包的类型用于说明这是一个与邻居打招呼的包,主要是用来发现邻居的,以便获取邻近路由器的本地链路地址,所述校验码用于标记组播包在传递时有无误码。
优选的,所述步骤S3具体包括以下步骤:
S3.1、分析整合模块计算以路由器编号标识的路由器列表2中的每个节点的跳数,进入下一步骤;
S3.2、分析整合模块从具有IPv6地址的路由器列表1中读出一个还没有进行分析的节点信息,包括该路由器的IPv6地址和跳数信息,进入下一步骤;
S3.3、设该节点表示为IPA,计算IPA的IP地址前缀,进入下一步骤;
S3.4、分析整合模块判断IPA的IP地址前缀是否等于子网列表中的某个子网,若是,则IPA属于该子网,进入下一步骤;若否,则IPA属于域外设备节点,跳转至S3.14;
S3.5、分析整合模块读出路由器列表2中属于IPA所在的子网的节点R1的跳数,进入下一步骤;
S3.6、分析整合模块在以路由器编号标识的路由器列表2中查找IPA所属的子网是否还有节点R2,如果有,分析整合模块读出路由器列表2中属于该子网的节点R2的跳数,进入下一步骤;如果没有,则跳转至S3.9;
S3.7、分析整合模块判断IPA的跳数是否等于节点R1的跳数且不等于节点R2的跳数,若IPA的跳数等于节点R1的跳数且IPA的跳数不等于节点R2的跳数,则IPA属于R1节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.8、分析整合模块判断IPA的跳数是否等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,若IPA的跳数等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,则IPA属于R2节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.9、分析整合模块判断IPA是否存在已经进行分析的别名IPB,若有,并且IPB属于路由器R,则IPA也属于路由器R,将IPA的IPv6地址存入接口表,跳转至步骤S3.14;若没有,则进入下一步骤;
S3.10、分析整合模块判断IPA是否存在没有进行分析的别名,若有,则读取该别名节点信息,返回至步骤S3.3;若没有,则进入下一步骤;
S3.11、分析整合模块判断IPA所属子网是否存在其他已经进行过分析的节点IPC,若没有,则跳转至步骤S3.13;若有,则进入下一步骤;
S3.12、分析整合模块判断,若节点IPC属于路由器R1,则IPA属于路由器R1的同网段路由器R2;若节点IPC属于路由器R2,则IPA属于路由器R2的同网段路由器R1;分析整合模块将IPA的地址存入接口表,跳转至步骤S3.14;
S3.13、分析整合模块判断IPA所属子网是否存在其他没有进行分析的节点,若存在,则读取该节点信息,包括该路由器的IPv6地址和跳数信息,返回至步骤S3.3;若不存在,则进入下一步骤;
S3.14、分析整合模块判断具有IPv6地址的路由器列表1所有节点是否已完成分析,若不是,则返回至步骤S3.2;若是,则进入下一步骤;
S3.15、分析整合模块将分析出的节点IPv6地址保存在接口表中,如果一台路由器有多个IP,将最小的IPv6地址保存到新整理的设备表中,将域外设备节点的IPv6地址保存在设备表中,将路由器之间连接关系保存在连接列表,路由器与子网连接关系保存在路由器直连子网列表,子网信息保存在子网列表,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块。
本发明与现有技术相比,具有如下优点和有益效果:
第一、系统更加稳定:函数放在线程里运行,给线程定义一个超时时间,每100毫秒判断1次,超过超时时间则强制停止线程后重启,提高了程序的稳定性。
第二、性能更好:通过分析节点和相关接口的测试历史,避免对同一节点的多次重复探测,有效提高了系统的性能。
第三、本发明系统发现的拓扑结构更加完整,并且可以得到子网信息。通过将计算机模拟成路由器,与路由器交换网络拓扑信息,可以得到完整和正确的拓扑结构信息,这个拓扑信息可以包含路由器信息(以路由器编号RouterID标识)、路由器之间的连接信息、子网信息和路由器与子网之间的连接信息。
第四、有效消除路由别名,获取IPv6路由器接口信息,有效提高拓扑发现的准确性。分析整合模块通过综合分析设备及子网拓扑发现模块和设备及相连关系发现模块的结果,将以IPv6地址标识的路由器和以路由器标识符标识的路由器进行对应,可以有效消除路由别名而且可以发现大量的子网信息和IPv6路由器接口信息,有效提高拓扑发现的准确性。
附图说明
图1(a)是实际的网络连接示意图;
图1(b)是通过Traceroute探测得到的拓扑网络示意图;
图2是实施例一中基于IPv6的下一代互联网拓扑发现系统的结构示意图;
图3是图2中设备及相连关系发现模块的工作流程图;
图4是图2中设备及子网拓扑发现模块的工作流程图;
图5是图2中分析整合模块的工作流程图;
图6是实施例一中进行IPv6拓扑自动发现得到的拓扑结构示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步地详细说明,但本发明的实施方式不限于此。
实施例
如图2所示,一种基于IPv6的下一代互联网拓扑发现系统,包括探测列表输入模块、设备及子网拓扑发现模块、设备及相连关系发现模块、分析整合模块、拓扑结构信息存储模块、数据库和拓扑结构信息显示模块,其中
探测列表输入模块,用于通过客户端的用户界面接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块;
设备及相连关系发现模块,用于接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块,用于将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送分析整合模块;
分析整合模块接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块;
拓扑结构信息存储模块,用于将完整的拓扑结构图存入数据库;
数据库,用于存储拓扑结构信息;
拓扑结构信息显示模块,用于显示数据库中完整的拓扑结构图。
一种基于IPv6的下一代互联网拓扑发现系统的实现方法,包括以下步骤:
S1、探测列表输入模块通过客户端的用户界面接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块,进入步骤S2;
S2、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送至分析整合模块,进入步骤S3;
S3、分析整合模块接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块,进入S4;
S4、拓扑结构信息存储模块将完整的拓扑结构图存入数据库,进入步骤S5;
S5、拓扑结构信息显示模块显示数据库中完整的拓扑结构图。
所述拓扑结构信息存储模块将分析得到的完整的拓扑结构信息存入数据库。系统中采用了面向对象的思想来组织数据结构,对于系统中涉及到的每一种拓扑对象均定义了一个类,其中包括设备类(Device)、子网类(Subnet)、连接类(Connection)、接口类(Interface)、路由器直连子网类(RouterSubnet)等。每一种类都定义了相关的属性和操作,比如路由器类定义了设备类型,设备名称、设备描述、设备标识IP等属性;子网类定义了子网IP地址、子网掩码等属性。
系统采用链表的形式来组织拓扑对象,具体包括
用于保存所发现路由器的路由器列表1、路由器列表2和设备表;
用于保存所发现子网的子网列表;
用于保存所发现路由器之间连接关系的连接列表1、连接列表2和连接列表;
用于保存所发现路由器与子网连接关系的路由器直连子网列表;
和用于保存路由别名的别名列表和接口表。
在拓扑发现中系统每发现一个拓扑对象均生成相应类的一个对象,并将该对象插入到对应的列表中。发现结束后所得到的拓扑结构信息就完全保存在这几个链表结构中。
所述设备及相连关系发现模块,接收探测节点列表,并对列表中的所有探测节点进行网络路径的探测,把探测得到的节点存入路由器列表1,路由器之间连接信息存入连接列表1;对路由器列表1中的所有节点进行源路由测试,目的是测试哪些节点支持源路由探测,然后将支持源路由探测的节点存入源路由器列表(SourceRouteList)中;把源路由器列表中的节点作为中间节点,把路由器列表1中的节点作为目标节点进行源路由探测,将新发现的路由器之间连接信息存入连接列表1;若在源路由探测中,发现一些新的节点,则把这些新的节点写入路由器列表1中并进行源路由探测;若设备及相连关系发现模块在探测过程中发现路由别名,则把路由别名保存到别名列表中。
设备及相连关系发现模块的工作流程,如图3所示,具体包括以下步骤:
S2.1、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并进入下一步骤;
S2.2、设备及相连关系发现模块判断探测节点列表中的地址是否都进行了普通路由探测,若是,则跳转至S2.4;若不是,则在探测节点列表中选择一个没有进行普通路由探测的地址进行普通路由探测,即设备及相连关系发现模块以选择的地址为目标地址发送路由路径探测包,等待并接收路由路径探测包的返回结果,进入下一步骤;
S2.3、设备及相连关系发现模块分析路由路径探测包的返回结果,依次获取设备的IPv6地址、该设备的跳数、设备间连接信息,并将设备IPv6地址和该设备的跳数保存到路由器列表1,把设备间连接信息保存到连接列表1中;若路由路径探测包的返回结果中最后一跳的地址和探测的目标地址不一样,那么这两个地址是路由别名,把路由别名保存到别名列表中,返回步骤S2.2;
S2.4、设备及相连关系发现模块发送一个路由路径探测包到一个可以到达的地址,根据探测包返回结果中第一跳的地址来获取网关地址,进入下一步骤;
S2.5、设备及相连关系发现模块以网关地址为目标地址,路由器列表1中没有进行过源路由测试的的路由器为中间节点,进行源路由测试,将支持源路由探测的节点放到源路由器列表中;
S2.6、设备及相连关系发现模块以路由器列表1中的节点为目标节点,源路由器列表中节点为中间节点,进行源路由探测,并进入一下步骤;
S2.7、设备及相连关系发现模块分析步骤S2.6中源路由探测的结果,将新发现的路由器之间的连接信息存入连接列表1;若在源路由测试和源路由探测中,发现一些新的节点,则把这些新的节点写入路由器列表1;
设备及相连关系发现模块进行别名判断,即当对同一地址进行源路由探测时,若返回报文的源地址与探测的地址不同,则返回报文的源地址与探测地址是路由别名,把路由别名保存到别名列表,进入下一步骤;
S2.8、设备及相连关系发现模块判断在进行步骤S2.5的源路由测试及步骤S2.6的源路由探测时,是否发现一些新的节点,若有,则返回至步骤S2.5;若否,则把路由器列表1、连接列表1和别名列表传送给分析整合模块,结束操作。
所述S2.5中,设备及相连关系发现模块在进行源路由测试前,判断某节点是否需要进行源路由测试,有几种情况无需进行源路由测试:
1.设备及相连关系发现模块之前已经对此地址进行过源路由测试;
2.此地址位于网关上;
3.之前设备及相连关系发现模块已经对此地址所在路由器上的其他地址进行过源路由测试。
所述步骤S2.6、设备及相连关系发现模块在进行源路由探测前,判断某节点是否需要进行源路由探测,有几种情况无需测试:
1.设备及相连关系发现模块之前已经对此地址进行过源路由探测;
2.目标地址位于网关上;
3.中间节点位于网关上;
4.中间节点和目标地址是路由别名;
5.设备及相连关系发现模块曾经把目标地址作为中间节点探测过,而且探测包不能到达目标地址。
所述设备及子网拓扑发现模块发送一个组播包,计算机的对端路由器收到该组播包后发一个回应包,设备及子网拓扑发现模块分析对端路由器的回应包,得到对端路由器的本地链路地址;然后设备及子网拓扑发现模块向对端路由器发一个请求数据库描述包,得到对端路由器返回的回应包,设备及子网拓扑发现模块再次向对端路由器发一个请求数据库描述包,完成与对端路由器的协商;然后设备及子网拓扑发现模块通过发送链路状态请求报文向对端路由器申请获取链路状态数据,对端路由器收到请求后就会回应若干个链路状态数据包,设备及子网拓扑发现模块获得链路状态数据包中的链路状态数据,分析整理链路状态数据形成网络拓扑信息,包括以路由器编号(RouterID)标识的路由器信息、路由器之间的连接信息、子网信息以及路由器与子网之间的连接信息等,最后将网络拓扑信息发送至分析整合模块。
设备及子网拓扑发现模块的工作流程,如图4所示,具体包括以下步骤:
Q2.1、设备及子网拓扑发现模块通过计算机系统,创建一个套接字到一个端口(本实施例中端口默认为1234,用户可以修改)上进行监听,若收到客户端的结束命令时,则设备及子网拓扑发现模块结束操作;若收到客户端的开始命令时,则进入下一步骤;
Q2.2、设备及子网拓扑发现模块获取自己计算机的网卡地址,然后进入下一步骤;
Q2.3、设备及子网拓扑发现模块初始化组播包,在组播包中填充自己的地址、组播地址、校验码,以及组播包的类型与长度;其中组播包的类型用于说明这是一个与邻居打招呼的包,主要是用来发现邻居的,以便获取邻近路由器(或称为对端路由器)的本地链路地址,所述校验码用于标记组播包在传递时有无误码,然后进入下一步骤;
Q2.4、设备及子网拓扑发现模块将步骤Q2.3中构建的组播包发送到网络中,进入下一步骤;
Q2.5、设备及子网拓扑发现模块判断是否收到对端路由器对组播包的回应包,若是,则设备及子网拓扑发现模块分析对端路由器的回应包,获取对端路由器的本地链路地址,并进入下一步骤;若不是,则跳转至步骤Q2.7;
Q2.6、设备及子网拓扑发现模块发送一个请求数据库描述包给对端路由器,并进入下一步骤;
Q2.7、设备及子网拓扑发现模块判断是否收到对端路由器对请求数据库描述包的回应包,若是,则设备及子网拓扑发现模块再发一次请求数据库描述包给对端路由器,以完成与对端路由器的协商,同时进入拓扑信息交换阶段,即进入下一步骤;若不是,则跳转至步骤Q2.9;
Q2.8、设备及子网拓扑发现模块发送链路状态请求报文,向对端路由器申请获取链路状态数据,进入下一步骤;
Q2.9、设备及子网拓扑发现模块判断是否收到对端路由器回应的链路状态数据包,若是,则将链路状态数据保存在缓存中,进入下一步骤;若不是,则返回至步骤Q2.5;
Q2.10、设备及子网拓扑发现模块判断是否与对端路由器交换完所有链路状态数据,若是,则进入下一步骤;若否,则返回至步骤Q2.8;
Q2.11、设备及子网拓扑发现模块分析获取的链路状态数据信息,形成网络拓扑信息,包括以路由器编号标识的路由器列表2、连接列表2、子网列表以及路由器直连子网列表,最后将网络拓扑信息发送至分析整合模块。
所述分析整合模块是利用跳数来将设备及子网拓扑发现模块和设备及相连关系发现模块的信息有机结合。所述设备及子网拓扑发现模块发送的网络拓扑信息是用路由器编号(RouterID)来标识路由器的,而在设备及相连关系发现模块输出的拓扑相关信息(包括路由器列表1、连接列表1和别名列表)是用IPv6地址来标识路由器的。首先利用设备及子网拓扑发现中发现的子网信息确定设备及相连关系发现的IPv6地址是在哪个网段中,然后利用到同一路由器的不同地址跳数相等的原理,计算网段内的路由器的跳数,然后将网段内的路由器的跳数和IPv6地址标识的路由器的跳数进行比较,若相等,则确定了对应关系。
分析整合模块的工作流程,如图5所示,具体包括以下步骤:
S3.1、分析整合模块计算以路由器编号标识的路由器列表2中的每个节点的跳数,进入下一步骤;
S3.2、分析整合模块从具有IPv6地址的路由器列表1中读出一个还没有进行分析的节点信息,包括该路由器的IPv6地址和跳数信息,进入下一步骤;
S3.3、设该节点表示为IPA,计算IPA的IP地址前缀,进入下一步骤;
S3.4、分析整合模块判断IPA的IP地址前缀是否等于子网列表中的某个子网,若是,则IPA属于该子网,进入下一步骤;若否,则IPA属于域外设备节点,跳转至S3.14;
S3.5、分析整合模块读出路由器列表2中属于IPA所在的子网的节点R1的跳数,进入下一步骤;
S3.6、分析整合模块在以路由器编号标识的路由器列表2中查找IPA所属的子网是否还有节点R2,如果有,分析整合模块读出路由器列表2中属于该子网的节点R2的跳数,进入下一步骤;如果没有,则跳转至S3.9;
S3.7、分析整合模块判断IPA的跳数是否等于节点R1的跳数且不等于节点R2的跳数,若IPA的跳数等于节点R1的跳数且IPA的跳数不等于节点R2的跳数,则IPA属于R1节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.8、分析整合模块判断IPA的跳数是否等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,若IPA的跳数等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,则IPA属于R2节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.9、分析整合模块判断IPA是否存在已经进行分析的别名IPB,若有,并且IPB属于路由器R,则IPA也属于路由器R,将IPA的IPv6地址存入接口表(接口表中含有接口所属的路由器R信息),跳转至步骤S3.14;若没有,则进入下一步骤;
S3.10、分析整合模块判断IPA是否存在没有进行分析的别名,若有,则读取该别名节点信息(包括该路由器的IPv6地址和跳数信息),返回至步骤S3.3;若没有,则进入下一步骤;
S3.11、分析整合模块判断IPA所属子网是否存在其他已经进行过分析的节点IPC,若没有,则跳转至步骤S3.13;若有,则进入下一步骤;
S3.12、分析整合模块判断,若节点IPC属于路由器R1,则IPA属于路由器R1的同网段路由器R2;若节点IPC属于路由器R2,则IPA属于路由器R2的同网段路由器R1;分析整合模块将IPA的地址存入接口表(接口表中含有接口所属的路由器R2或R1信息),跳转至步骤S3.14;
S3.13、分析整合模块判断IPA所属子网是否存在其他没有进行分析的节点,若存在,则读取该节点信息,包括该路由器的IPv6地址和跳数信息,返回至步骤S3.3;若不存在,则进入下一步骤;
S3.14、分析整合模块判断具有IPv6地址的路由器列表1所有节点是否已完成分析,若不是,则返回至步骤S3.2;若是,则进入下一步骤;
S3.15、分析整合模块将分析出的节点IPv6地址保存在接口表中,如果一台路由器有多个IP,将最小的IPv6地址保存到新整理的设备表中,将域外设备节点的IPv6地址保存在设备表中,将路由器之间的连接关系保存在连接列表,路由器与子网连接关系保存在路由器直连子网列表,子网信息保存在子网列表,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块。
图6是应用本系统在华南理工大学的网络进行IPv6拓扑自动发现的拓扑结构示意图,出于安全的考虑,这里隐藏了详细的IPv6地址信息,其中以Router1、Router2,……,Router18表示路由器。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受所述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。

Claims (10)

1.一种基于IPv6的下一代互联网拓扑发现系统,其特征在于,包括
探测列表输入模块,用于接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块;
设备及相连关系发现模块,用于接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块,用于将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送给分析整合模块;
分析整合模块,用于接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块;
拓扑结构信息存储模块,用于将完整的拓扑结构图存入数据库;
数据库,用于存储拓扑结构信息;
拓扑结构信息显示模块,用于显示数据库中完整的拓扑结构图。
2.根据权利要求1所述基于IPv6的下一代互联网拓扑发现系统,其特征在于,所述系统采用对象的形式来组织数据结构,对于系统中涉及到的每一种拓扑对象均定义了一个类,具体包括设备类、子网类、连接类、接口类和路由器直连子网类。
3.根据权利要求1所述基于IPv6的下一代互联网拓扑发现系统,其特征在于,所述系统采用链表的形式来组织拓扑对象,具体包括
用于保存所发现路由器的路由器列表1、路由器列表2和设备表;
用于保存所发现子网的子网列表;
用于保存所发现路由器之间连接关系的连接列表1、连接列表2和连接列表;
用于保存所发现路由器与子网连接关系的路由器直连子网列表;
和用于保存路由别名的别名列表和接口表。
4.一种基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,包括以下步骤:
S1、探测列表输入模块接收用户输入的探测节点信息,形成探测节点列表并发送到设备及相连关系发现模块,进入步骤S2;
S2、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块;
设备及子网拓扑发现模块将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的网络拓扑信息,并把网络拓扑信息发送至分析整合模块,进入步骤S3;
S3、分析整合模块接收设备及子网拓扑发现模块和设备及相连关系发现模块的信息并进行分析,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块,进入S4;
S4、拓扑结构信息存储模块将完整的拓扑结构图存入数据库,进入步骤S5;
S5、拓扑结构信息显示模块显示数据库中完整的拓扑结构图。
5.根据权利要求4所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,所述步骤S2设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并根据探测节点列表中的每个地址发送网络路径探测包,获取以IPv6地址标识的路由器及其相连关系,并把获取的信息发送至分析整合模块,具体包括以下步骤:
S2.1、设备及相连关系发现模块接收探测列表输入模块的探测节点列表,并进入下一步骤;
S2.2、设备及相连关系发现模块判断探测节点列表中的地址是否都进行了普通路由测试,若是,则跳转至S2.4;若不是,则在探测节点列表中选择一个没有进行普通路由探测的地址进行普通路由探测,即设备及相连关系发现模块以选择的地址为目标地址发送路由路径探测包,等待并接收路由路径探测包的返回结果,进入下一步骤;
S2.3、设备及相连关系发现模块分析路由路径探测包的返回结果,依次获取设备的IPv6地址、该设备的跳数、设备间连接信息,并将设备IPv6地址和该设备的跳数保存到路由器列表1,把设备间连接信息保存到连接列表1中;若路由路径探测包的返回结果中最后一跳的地址和探测的目标地址不一样,那么这两个地址是路由别名,把路由别名保存到别名列表中,返回步骤S2.2;
S2.4、设备及相连关系发现模块发送一个路由路径探测包到一个可以到达的地址,根据探测包返回结果中第一跳的地址来获取网关地址,进入下一步骤;
S2.5、设备及相连关系发现模块以网关地址为目标地址,路由器列表1中没有进行过源路由测试的路由器为中间节点,进行源路由测试,将支持源路由探测的节点放到源路由器列表中;
S2.6、设备及相连关系发现模块以路由器列表1中的节点为目标节点,源路由器列表中节点为中间节点,进行源路由探测,并进入一下步骤;
S2.7、设备及相连关系发现模块分析步骤S2.6中源路由探测的结果,将新发现的连接信息存入连接列表1;若在源路由测试和源路由探测中,发现一些新的节点,则把这些新的节点写入路由器列表1;
设备及相连关系发现模块进行别名判断,即当对同一地址进行源路由探测时,若返回报文的源地址与探测的地址不同,则返回报文的源地址与探测地址是路由别名,把路由别名保存到别名列表,进入下一步骤;
S2.8、设备及相连关系发现模块判断在进行步骤S2.5的源路由测试及步骤S2.6的源路由探测时,是否发现一些新的节点,若有,则返回至步骤S2.5;若否,则把路由器列表1、连接列表1和别名列表传送给分析整合模块,结束操作。
6.根据权利要求5所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,在步骤S2.5中,下述节点无需进行源路由测试:
(1)设备及相连关系发现模块之前已经对该节点进行过源路由测试;
(2)该节点位于网关上;
(3)设备及相连关系发现模块之前已经对该节点所在路由器上的其他地址进行过源路由测试。
7.根据权利要求5所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,在步骤S2.6中,下述节点无需进行源路由探测:
(1)设备及相连关系发现模块之前已经对此节点进行过源路由探测;
(2)目标地址位于网关上;
(3)中间节点位于网关上;
(4)中间节点和目标地址是路由别名;
(5)设备及相连关系发现模块曾经把目标地址作为中间节点探测过,而且探测包不能到达目标地址。
8.根据权利要求5所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,所述步骤S2设备及子网拓扑发现模块将计算机模拟成路由器,与网络上的路由器交换网络拓扑信息,得到完整的拓扑结构信息,并把拓扑结构信息发送至分析整合模块,具体包括以下步骤:
Q2.1、设备及子网拓扑发现模块通过计算机系统,创建一个套接字到一个端口上进行监听,若收到客户端的结束命令时,则设备及子网拓扑发现模块结束操作;若收到客户端的开始命令时,则进入下一步骤;
Q2.2、设备及子网拓扑发现模块获取自己计算机的网卡地址,然后进入下一步骤;
Q2.3、设备及子网拓扑发现模块初始化组播包,然后进入下一步骤;
Q2.4、设备及子网拓扑发现模块将步骤Q2.3中构建的组播包发送到网络中,进入下一步骤;
Q2.5、设备及子网拓扑发现模块判断是否收到对端路由器对组播包的回应包,若是,则设备及子网拓扑发现模块分析对端路由器的回应包,获取对端路由器的本地链路地址,并进入下一步骤;若不是,则跳转至步骤Q2.7;
Q2.6、设备及子网拓扑发现模块发送一个请求数据库描述包给对端路由器,并进入下一步骤;
Q2.7、设备及子网拓扑发现模块判断是否收到对端路由器对请求数据库描述包的回应包,若是,则设备及子网拓扑发现模块再发一次请求数据库描述包给对端路由器,以完成与对端路由器的协商,进入下一步骤;若不是,则跳转至步骤Q2.9;
Q2.8、设备及子网拓扑发现模块发送链路状态请求报文,向对端路由器申请获取链路状态数据,进入下一步骤;
Q2.9、设备及子网拓扑发现模块判断是否收到对端路由器回应的链路状态数据包,若是,则将链路状态数据保存在缓存中,进入下一步骤;若不是,则返回至步骤Q2.5;
Q2.10、设备及子网拓扑发现模块判断是否与对端路由器交换完所有链路状态数据,若是,则进入下一步骤;若否,则返回至步骤Q2.8;
Q2.11、设备及子网拓扑发现模块分析获取的链路状态数据信息,形成网络拓扑信息,包括以路由器编号标识的路由器列表2、连接列表2、子网列表以及路由器直连子网列表,最后将网络拓扑信息发送至分析整合模块。
9.根据权利要求8所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,所述步骤Q2.3中设备及子网拓扑发现模块初始化组播包,具体是指设备及子网拓扑发现模块在组播包中填充自己的地址、组播地址、校验码,以及组播包的类型与长度;其中组播包的类型用于说明这是一个与邻居打招呼的包,主要是用来发现邻居的,以便获取邻近路由器的本地链路地址,所述校验码用于标记组播包在传递时有无误码。
10.根据权利要求8所述基于IPv6的下一代互联网拓扑发现系统的实现方法,其特征在于,所述步骤S3具体包括以下步骤:
S3.1、分析整合模块计算以路由器编号标识的路由器列表2中的每个节点的跳数,进入下一步骤;
S3.2、分析整合模块从具有IPv6地址的路由器列表1中读出一个还没有进行分析的节点信息,包括该路由器的IPv6地址和跳数信息,进入下一步骤;
S3.3、设该节点表示为IPA,计算IPA的IP地址前缀,进入下一步骤;
S3.4、分析整合模块判断IPA的IP地址前缀是否等于子网列表中的某个子网,若是,则IPA属于该子网,进入下一步骤;若否,则IPA属于域外设备节点,跳转至S3.14;
S3.5、分析整合模块读出路由器列表2中属于IPA所在的子网的节点R1的跳数,进入下一步骤;
S3.6、分析整合模块在以路由器编号标识的路由器列表2中查找IPA所属的子网是否还有节点R2,如果有,分析整合模块读出路由器列表2中属于该子网的节点R2的跳数,进入下一步骤;如果没有,则跳转至S3.9;
S3.7、分析整合模块判断IPA的跳数是否等于节点R1的跳数且不等于节点R2的跳数,若IPA的跳数等于节点R1的跳数且IPA的跳数不等于节点R2的跳数,则IPA属于R1节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.8、分析整合模块判断IPA的跳数是否等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,若IPA的跳数等于节点R2的跳数且IPA的跳数不等于节点R1的跳数,则IPA属于R2节点,跳转至步骤S3.14;若不是,则进入下一步骤;
S3.9、分析整合模块判断IPA是否存在已经进行分析的别名IPB,若有,并且IPB属于路由器R,则IPA也属于路由器R,将IPA的IPv6地址存入接口表,跳转至步骤S3.14;若没有,则进入下一步骤;
S3.10、分析整合模块判断IPA是否存在没有进行分析的别名,若有,则读取该别名节点信息,返回至步骤S3.3;若没有,则进入下一步骤;
S3.11、分析整合模块判断IPA所属子网是否存在其他已经进行过分析的节点IPC,若没有,则跳转至步骤S3.13;若有,则进入下一步骤;
S3.12、分析整合模块判断,若节点IPC属于路由器R1,则IPA属于路由器R1的同网段路由器R2;若节点IPC属于路由器R2,则IPA属于路由器R2的同网段路由器R1;分析整合模块将IPA的地址存入接口表,跳转至步骤S3.14;
S3.13、分析整合模块判断IPA所属子网是否存在其他没有进行分析的节点,若存在,则读取该节点信息,包括该路由器的IPv6地址和跳数信息,返回至步骤S3.3;若不存在,则进入下一步骤;
S3.14、分析整合模块判断具有IPv6地址的路由器列表1所有节点是否已完成分析,若不是,则返回至步骤S3.2;若是,则进入下一步骤;
S3.15、分析整合模块将分析出的节点IPv6地址保存在接口表中,如果一台路由器有多个IP,将最小的IPv6地址保存到新整理的设备表中,将域外设备节点的IPv6地址保存在设备表中,将路由器之间的连接关系保存在连接列表,路由器与子网连接关系保存在路由器直连子网列表,子网信息保存在子网列表,形成完整的拓扑结构图,并发送至拓扑结构信息存储模块。
CN201010275867XA 2010-09-06 2010-09-06 基于IPv6的下一代互联网拓扑发现系统及实现方法 Expired - Fee Related CN101945043B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010275867XA CN101945043B (zh) 2010-09-06 2010-09-06 基于IPv6的下一代互联网拓扑发现系统及实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010275867XA CN101945043B (zh) 2010-09-06 2010-09-06 基于IPv6的下一代互联网拓扑发现系统及实现方法

Publications (2)

Publication Number Publication Date
CN101945043A true CN101945043A (zh) 2011-01-12
CN101945043B CN101945043B (zh) 2012-03-28

Family

ID=43436825

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010275867XA Expired - Fee Related CN101945043B (zh) 2010-09-06 2010-09-06 基于IPv6的下一代互联网拓扑发现系统及实现方法

Country Status (1)

Country Link
CN (1) CN101945043B (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104335538A (zh) * 2012-04-26 2015-02-04 惠普发展公司,有限责任合伙企业 多播路由器拓扑发现
CN104579978A (zh) * 2014-12-30 2015-04-29 国网安徽省电力公司芜湖供电公司 一种动态网络链路层拓扑发现方法
CN104683135A (zh) * 2013-12-02 2015-06-03 英业达科技有限公司 网络系统及网络拓扑的整合方法
CN105517035A (zh) * 2015-12-04 2016-04-20 上海斐讯数据通信技术有限公司 无线路由管理应用的测试方法及系统
CN107104845A (zh) * 2017-05-31 2017-08-29 浙江远望信息股份有限公司 网络拓扑发现方法和系统
CN107809382A (zh) * 2016-09-09 2018-03-16 太阳风环球有限责任公司 使用边完成比的路径探测
CN108173692A (zh) * 2017-12-28 2018-06-15 山东华软金盾软件股份有限公司 一种基于主动和被动相结合的全网设备感知系统和感知方法
CN109309583A (zh) * 2018-08-30 2019-02-05 百度在线网络技术(北京)有限公司 基于分布式系统的信息获取方法、装置、电子设备和介质
CN110557286A (zh) * 2019-09-02 2019-12-10 南京航空航天大学 一种有效测量并构建IPv6网络拓扑的方法
CN110719178A (zh) * 2018-07-11 2020-01-21 富士通株式会社 网络拓扑获取方法及其装置
CN110971433A (zh) * 2018-09-29 2020-04-07 华为技术有限公司 获取SRv6隧道信息的方法、设备和系统
CN111600737A (zh) * 2019-02-21 2020-08-28 华为技术有限公司 一种拓扑信息收集方法及网络设备
CN111901201A (zh) * 2020-07-30 2020-11-06 中国电子信息产业集团有限公司第六研究所 一种IPv6网络拓扑测量目标选取方法
CN113778938A (zh) * 2021-08-31 2021-12-10 上海阵量智能科技有限公司 片上网络拓扑结构的确定方法、装置及芯片
CN114070743A (zh) * 2021-11-18 2022-02-18 上海观安信息技术股份有限公司 网络拓扑路径的绘制方法、装置、计算机设备及存储介质
CN114584506A (zh) * 2022-05-05 2022-06-03 远江盛邦(北京)网络安全科技股份有限公司 卫星网络拓扑测量方法、装置、电子设备及存储介质
CN114630361A (zh) * 2022-03-14 2022-06-14 浙江瑞瀛物联科技有限公司 基于图形化的Zigbee无线通信分析系统
CN115378912A (zh) * 2022-07-21 2022-11-22 北京华顺信安科技有限公司 一种活跃IPv6地址的扫描方法及系统
CN115396335A (zh) * 2022-08-11 2022-11-25 重庆邮电大学 基于微服务的工业无线网络设备接入IPv6测试系统及方法
CN115550215A (zh) * 2022-09-19 2022-12-30 中国工商银行股份有限公司 网络检测方法、检测端、埋点服务器和系统
CN116319684A (zh) * 2023-02-15 2023-06-23 中国人民解放军战略支援部队信息工程大学 基于LLMNR查询的双栈Windows节点IPv6地址快速探测方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1558615A (zh) * 2004-01-14 2004-12-29 中国科学院计算技术研究所 一种物理网络拓扑发现系统及其方法
CN1588884A (zh) * 2004-07-06 2005-03-02 北京航空航天大学 IPv6因特网网络拓扑自动发现方法
US20090116404A1 (en) * 2007-11-01 2009-05-07 Telefonaktiebolaget Lm Ericsson (Publ) Topology discovery in heterogeneous networks
CN101621414A (zh) * 2009-08-21 2010-01-06 杭州华三通信技术有限公司 一种网络资源及拓扑的发现方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1558615A (zh) * 2004-01-14 2004-12-29 中国科学院计算技术研究所 一种物理网络拓扑发现系统及其方法
CN1588884A (zh) * 2004-07-06 2005-03-02 北京航空航天大学 IPv6因特网网络拓扑自动发现方法
US20090116404A1 (en) * 2007-11-01 2009-05-07 Telefonaktiebolaget Lm Ericsson (Publ) Topology discovery in heterogeneous networks
CN101621414A (zh) * 2009-08-21 2010-01-06 杭州华三通信技术有限公司 一种网络资源及拓扑的发现方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《自动化技术与应用》 20091231 柴炜 基于IPv6网络拓扑发现方法技术的探讨 第132-134页 1-10 第28卷, 第6期 2 *

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9537750B2 (en) 2012-04-26 2017-01-03 Hewlett Packard Enterprise Development Lp Multicast router topology discovery
CN104335538A (zh) * 2012-04-26 2015-02-04 惠普发展公司,有限责任合伙企业 多播路由器拓扑发现
CN104335538B (zh) * 2012-04-26 2017-12-12 慧与发展有限责任合伙企业 多播路由器拓扑发现
CN104683135A (zh) * 2013-12-02 2015-06-03 英业达科技有限公司 网络系统及网络拓扑的整合方法
CN104579978A (zh) * 2014-12-30 2015-04-29 国网安徽省电力公司芜湖供电公司 一种动态网络链路层拓扑发现方法
CN104579978B (zh) * 2014-12-30 2018-01-09 国家电网公司 一种动态网络链路层拓扑发现方法
CN105517035B (zh) * 2015-12-04 2019-07-19 上海斐讯数据通信技术有限公司 无线路由管理应用的测试方法及系统
CN105517035A (zh) * 2015-12-04 2016-04-20 上海斐讯数据通信技术有限公司 无线路由管理应用的测试方法及系统
CN107809382A (zh) * 2016-09-09 2018-03-16 太阳风环球有限责任公司 使用边完成比的路径探测
CN107809382B (zh) * 2016-09-09 2022-02-08 太阳风环球有限责任公司 使用边完成比的路径探测的方法、装置和计算机可读介质
CN107104845B (zh) * 2017-05-31 2020-08-11 浙江远望信息股份有限公司 网络拓扑发现方法和系统
CN107104845A (zh) * 2017-05-31 2017-08-29 浙江远望信息股份有限公司 网络拓扑发现方法和系统
CN108173692A (zh) * 2017-12-28 2018-06-15 山东华软金盾软件股份有限公司 一种基于主动和被动相结合的全网设备感知系统和感知方法
CN110719178A (zh) * 2018-07-11 2020-01-21 富士通株式会社 网络拓扑获取方法及其装置
CN109309583A (zh) * 2018-08-30 2019-02-05 百度在线网络技术(北京)有限公司 基于分布式系统的信息获取方法、装置、电子设备和介质
CN109309583B (zh) * 2018-08-30 2021-11-23 百度在线网络技术(北京)有限公司 基于分布式系统的信息获取方法、装置、电子设备和介质
US11558341B2 (en) 2018-09-29 2023-01-17 Huawei Technologies Co., Ltd. Method, device, and system for obtaining SRv6 tunnel information
CN110971433A (zh) * 2018-09-29 2020-04-07 华为技术有限公司 获取SRv6隧道信息的方法、设备和系统
CN111600737A (zh) * 2019-02-21 2020-08-28 华为技术有限公司 一种拓扑信息收集方法及网络设备
CN111600737B (zh) * 2019-02-21 2021-12-24 华为技术有限公司 一种拓扑信息收集方法及网络设备
CN110557286A (zh) * 2019-09-02 2019-12-10 南京航空航天大学 一种有效测量并构建IPv6网络拓扑的方法
CN111901201A (zh) * 2020-07-30 2020-11-06 中国电子信息产业集团有限公司第六研究所 一种IPv6网络拓扑测量目标选取方法
CN113778938B (zh) * 2021-08-31 2024-03-12 上海阵量智能科技有限公司 片上网络拓扑结构的确定方法、装置及芯片
CN113778938A (zh) * 2021-08-31 2021-12-10 上海阵量智能科技有限公司 片上网络拓扑结构的确定方法、装置及芯片
CN114070743A (zh) * 2021-11-18 2022-02-18 上海观安信息技术股份有限公司 网络拓扑路径的绘制方法、装置、计算机设备及存储介质
CN114630361A (zh) * 2022-03-14 2022-06-14 浙江瑞瀛物联科技有限公司 基于图形化的Zigbee无线通信分析系统
CN114584506B (zh) * 2022-05-05 2022-07-29 远江盛邦(北京)网络安全科技股份有限公司 卫星网络拓扑测量方法、装置、电子设备及存储介质
CN114584506A (zh) * 2022-05-05 2022-06-03 远江盛邦(北京)网络安全科技股份有限公司 卫星网络拓扑测量方法、装置、电子设备及存储介质
CN115378912A (zh) * 2022-07-21 2022-11-22 北京华顺信安科技有限公司 一种活跃IPv6地址的扫描方法及系统
CN115378912B (zh) * 2022-07-21 2023-06-09 北京华顺信安科技有限公司 一种活跃IPv6地址的扫描方法及系统
CN115396335A (zh) * 2022-08-11 2022-11-25 重庆邮电大学 基于微服务的工业无线网络设备接入IPv6测试系统及方法
CN115396335B (zh) * 2022-08-11 2023-05-16 重庆邮电大学 基于微服务的工业无线网络设备接入IPv6测试系统及方法
CN115550215A (zh) * 2022-09-19 2022-12-30 中国工商银行股份有限公司 网络检测方法、检测端、埋点服务器和系统
CN116319684A (zh) * 2023-02-15 2023-06-23 中国人民解放军战略支援部队信息工程大学 基于LLMNR查询的双栈Windows节点IPv6地址快速探测方法及系统

Also Published As

Publication number Publication date
CN101945043B (zh) 2012-03-28

Similar Documents

Publication Publication Date Title
CN101945043B (zh) 基于IPv6的下一代互联网拓扑发现系统及实现方法
Afanasyev et al. ndnSIM: NDN simulator for NS-3
Haddadi et al. Network topologies: inference, modeling, and generation
CN101621414B (zh) 一种网络资源及拓扑的发现方法及装置
CN108011746B (zh) 基于Traceroute及SNMP协议的IP级全球互联网拓扑测绘方法
CN100493003C (zh) 可扩展的互联网测量服务器自动发现与管理方法
CN111314107B (zh) 基于互联网业务的自动组网系统及自动组网方法
CN101330466B (zh) 一种组播报文的转发方法及装置
CN107947994B (zh) 网络拓扑自发现方法、装置、网络设备及计算机存储介质
AU2020103213A4 (en) AIPB- Routing Protocol Verification: Ad Hoc Routing Protocol Intelligent Verification Process Based on Beagle Bone Black kit
CN105847023A (zh) 业务系统网络拓扑关系获取方法及装置
CN100425024C (zh) IPv6因特网网络拓扑自动发现方法
CN109728962A (zh) 一种发送报文的方法和设备
CN110855464A (zh) 一种网络拓扑结构调整方法和装置
CN104579978B (zh) 一种动态网络链路层拓扑发现方法
CN105207909B (zh) 一种发送信息的方法和网络装置
Gunes et al. Importance of IP alias resolution in sampling Internet topologies
CN104521211A (zh) 一种会话连接建立的方法、装置和系统
CN107786497A (zh) 生成acl表的方法和装置
CN115314392A (zh) 基于网络设备资源发现算法的自动生成网络拓扑系统及方法
CN113162816B (zh) 一种交换机OSPFv3协议测试方法及测试系统
CN113612646B (zh) 一种基于邻居发现的园区网络拓扑可视化方法
CN104125310B (zh) 基于半永久地址的消息发送方法
CN103701626B (zh) 带宽信息的获得方法以及获得带宽信息的设备
CN116455448A (zh) 一种适用于空间路由算法研究的轻量级软件仿真系统

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: 20120328

Termination date: 20190906