网络拓扑信息处理方法、装置、电子设备及存储介质与流程

文档序号:33634992发布日期:2023-03-29 00:16阅读:80来源:国知局
网络拓扑信息处理方法、装置、电子设备及存储介质与流程

1.本技术涉及通信领域,具体而言,涉及一种网络拓扑信息处理方法、装置、电子设备及存储介质。


背景技术:

2.网络拓扑是对各种网络关系的抽象表达,网络拓扑信息在网络故障诊断方面具有重要的地位,网络拓扑可视化作为分析利用网络拓扑信息的重要手段,主要以直观、图形化的方式将目标网络的连接状况显示出来,并体现运行特征,为网络故障诊断提供有效的数据资料。
3.现有技术中,网络故障诊断通常是通过网络诊断软件进行诊断,需要将网络诊断软件所在的计算机设备连接至工业以太网中来获取网络拓扑结构,该过程需要一直开启网络诊断软件,因此,会产生大量的拓扑扫描及诊断数据,大量占用网络资源,影响网络内的设备通讯,使用方式复杂。


技术实现要素:

4.本技术的目的在于,针对上述现有技术中的不足,提供一种网络拓扑信息处理方法、装置、电子设备及存储介质,提高网络扫描与诊断的方便性。
5.为实现上述目的,本技术实施例采用的技术方案如下:
6.第一方面,本技术实施例提供了一种网络拓扑信息处理方法,所述方法包括:
7.向所述通讯模块装置的各邻居设备发送所述通讯模块装置的设备信息,并将所述通讯模块装置作为所述工业以太网的首级设备加入至网络拓扑结构中;
8.根据所述通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至所述网络拓扑结构中;
9.针对所述通讯模块装置的各邻居设备,依次遍历各所述邻居设备的各下级邻居设备,将得到的各下级邻居设备按照所属层级依次加入所述网络拓扑结构中,得到所述工业以太网的网络拓扑结构。
10.可选的,所述针对所述通讯模块装置的各邻居设备,依次遍历所述邻居设备的各下级邻居设备,将得到的各下级邻居设备按照所属层级依次加入所述网络拓扑结构中,包括:
11.针对第一邻居设备,获取所述第一邻居设备的所有邻居设备的设备信息,若所述第一邻居设备的邻居设备中存在新的设备,则停止遍历,将所述新的设备作为所述第一邻居设备的下级设备加入所述网络拓扑结构中,并逐层获取所述新的设备的各下级邻居设备并更新所述网络拓扑结构,直至所述新的设备的各下级邻居设备中不存在新的邻居设备,则逐层返回直至到达所述第一邻居设备,在遍历之前,所述第一邻居设备为所述通讯模块装置的首个邻居设备;
12.将所述第一邻居设备之后的邻居设备作为新的第一邻居设备,循环执行,直至所
述通讯模块装置的各邻居设备均遍历完成。
13.可选的,所述向所述通讯模块装置的各邻居设备发送所述通讯模块装置的设备信息,包括:
14.接收所述各邻居设备的身份信息以及端口信息;
15.向所述各邻居设备通告所述通讯模块装置的网络地址、端口信息以及身份信息。
16.可选的,所述将各邻居设备分别作为一级邻居设备加入至所述网络拓扑结构中,包括:
17.生成所述通讯模块装置的各邻居设备对应的拓扑信息,所述拓扑信息包括:所述邻居设备的编号、网络地址、端口信息、上级设备的设备标识、上级设备的端口以及与上级设备的连接状态,其中,所述通讯模块装置的各邻居设备的上级设备为所述通讯模块装置;
18.按照所述通讯模块装置的各邻居设备的编号,将所述通讯模块装置的各邻居设备的各邻居设备的拓扑信息依次加入所述网络拓扑结构中。
19.可选的,还包括:
20.按照当前的网络拓扑结构,依次遍历加入所述网络拓扑结构中的设备,若当前遍历到的目标设备的邻居设备中不包括所述目标设备的上级设备,则确定所述目标设备与所述上级设备的连接已断开,若所述目标设备的邻居设备中不存在所述目标设备的环网端口所连接的设备,则确定所述目标设备在所述环网端口处的连接已断开。
21.可选的,还包括:
22.若所述目标设备与所述上级设备的连接恢复或者与所述目标设备的环网端口所连接的设备的连接恢复或者所述网络拓扑结构的信息变更,则以所述通讯模块装置作为首级设备,重新建立所述网络拓扑结构。
23.可选的,还包括:
24.接收上位机发送的拓扑读取请求;
25.根据所述拓扑读取请求,将所述网络拓扑结构发送给所述上位机。
26.第二方面,本技术实施例还提供了一种网络拓扑信息处理装置,所述装置包括:
27.发送模块,用于向所述通讯模块装置的各邻居设备发送所述通讯模块装置的设备信息,并将所述通讯模块装置作为所述工业以太网的首级设备加入至网络拓扑结构中;
28.加入模块,用于根据所述通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至所述网络拓扑结构中;
29.遍历模块,用于针对所述通讯模块装置的各邻居设备,依次遍历各所述邻居设备的各下级邻居设备,将得到的各下级邻居设备按照所属层级依次加入所述网络拓扑结构中,得到所述工业以太网的网络拓扑结构。
30.可选的,所述遍历模块具体用于:
31.针对第一邻居设备,获取所述第一邻居设备的所有邻居设备的设备信息,若所述第一邻居设备的邻居设备中存在新的设备,则停止遍历,将所述新的设备作为所述第一邻居设备的下级设备加入所述网络拓扑结构中,并逐层获取所述新的设备的各下级邻居设备并更新所述网络拓扑结构,直至所述新的设备的各下级邻居设备中不存在新的邻居设备,则逐层返回直至到达所述第一邻居设备,在遍历之前,所述第一邻居设备为所述通讯模块装置的首个邻居设备;
32.将所述第一邻居设备之后的邻居设备作为新的第一邻居设备,循环执行,直至所述通讯模块装置的各邻居设备均遍历完成。
33.可选的,所述发送模块具体用于:
34.接收所述各邻居设备通告的身份信息以及端口信息;
35.向所述各邻居设备通告所述通讯模块装置的网络地址、端口信息以及身份信息。
36.可选的,所述加入模块具体用于:
37.生成所述通讯模块装置的各邻居设备对应的拓扑信息,所述拓扑信息包括:所述邻居设备的编号、网络地址、端口信息、上级设备的设备标识、上级设备的端口以及与上级设备的连接状态,其中,所述通讯模块装置的各邻居设备的上级设备为所述通讯模块装置;
38.按照所述通讯模块装置的各邻居设备的编号,将所述通讯模块装置的各邻居设备的各邻居设备的拓扑信息依次加入所述网络拓扑结构中。
39.可选的,所述遍历模块还具体用于:
40.按照当前的网络拓扑结构,依次遍历加入所述网络拓扑结构中的设备,若当前遍历到的目标设备的邻居设备中不包括所述目标设备的上级设备,则确定所述目标设备与所述上级设备的连接已断开,若所述目标设备的邻居设备中不存在所述目标设备的环网端口所连接的设备,则确定所述目标设备在所述环网端口处的连接已断开。可选的,所述遍历模块还具体用于:
41.若所述目标设备与所述上级设备的连接恢复或者与所述目标设备的环网端口所连接的设备的连接恢复或者所述网络拓扑结构的信息变更,则以所述通讯模块装置作为首级设备,重新建立所述网络拓扑结构。
42.可选的,所述装置还包括:
43.接收模块,用于接收上位机发送的拓扑读取请求;
44.发送模块,用于根据所述拓扑读取请求,将所述网络拓扑结构发送给所述上位机。
45.第三方面,本技术实施例还提供了一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当应用程序运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行上述第一方面所述的网络拓扑信息处理方法的步骤。
46.第四方面,本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被读取并执行上述第一方面所述的网络拓扑信息处理方法的步骤。
47.本技术的有益效果是:
48.本技术提供的一种网络拓扑信息处理方法、装置、电子设备及存储介质,通过向通讯模块装置的各邻居设备发送通讯模块装置的设备信息,并将通讯模块装置作为工业以太网的首级设备加入至网络拓扑结构中;根据通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至网络拓扑结构中;针对通讯模块装置的各邻居设备,依次遍历各邻居设备的各下级邻居设备,将得到各下级邻居设备按照所属层级依次加入网络拓扑结构中,得到工业以太网的网络拓扑结构。通过将网络拓扑扫描功能和网络诊断的功能集成通讯模块装置中,通过通讯模块装置进行实时扫描得到的网络拓扑结构也可以通过通讯模块装置上的网络诊断进行诊断,不需要外接诊断软件,使得使用方式更方
便。
附图说明
49.为了更清楚地说明本技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本技术的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
50.图1为本技术实施例提供的一种网络拓扑信息处理方法的流程示意图;
51.图2为本技术实施例提供的一种网络拓扑结构扫描的流程示意图;
52.图3为本技术实施例提供的另一种网络拓扑结构扫描的流程示意图;
53.图4为本技术实施例提供的一种网络拓扑信息处理方法的装置示意图;
54.图5为本技术实施例提供的一种电子设备的结构框图。
具体实施方式
55.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解,本技术中附图仅起到说明和描述的目的,并不用于限定本技术的保护范围。另外,应当理解,示意性的附图并未按实物比例绘制。本技术中使用的流程图示出了根据本技术的一些实施例实现的操作。应该理解,流程图的操作可以不按顺序实现,没有逻辑的上下文关系的步骤可以反转顺序或者同时实施。此外,本领域技术人员在本技术内容的指引下,可以向流程图添加一个或多个其他操作,也可以从流程图中移除一个或多个操作。
56.另外,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
57.需要说明的是,本技术实施例中将会用到术语“包括”,用于指出其后所声明的特征的存在,但并不排除增加其它的特征。
58.目前,工业以太网的网络诊断通常是通过网络诊断工具如proneta软件等进行,计算机通过该诊断软件获取网络拓扑结构,并将其可视化,能够实现网络结构的实时监控。这种方式需要将诊断软件的网络连接至profinet网络中,该诊断软件仅支持profinet网络,对于其他的工业以太网适用性差。并且必须一直开启该诊断软件,因此,会产生大量拓扑扫描及诊断数据,大幅占用网络资源,影响工业以太网内的设备通讯。并且,诊断软件所在的计算机要连接入工业以太网,使用复杂,大大限制了网络诊断工具软件在工业以太网的应用。
59.另外,proneta软件在实时诊断网络时,需要不断得刷新网络拓扑结构,对网络故障的显示不够直观,若存在网络连通恢复问题,必须通过对比前后拓扑图才能发现问题,因此,诊断网络的过程比较复杂。
60.考虑到上述问题,本技术提供了一种网络拓扑信息处理方法,将网络拓扑扫描和
网络诊断的功能集成在工业以太网中的通讯模块装置上,并将网络拓扑扫描的数据以及网络诊断的数据存储在该通讯模块装置上,上位机可以根据需求读取该通讯模块装置上的拓扑信息以及诊断信息,从而不需要外接诊断软件即可进行高效的网络扫描和诊断。
61.图1为本技术实施例提供的一种网络拓扑信息处理方法的流程示意图,该方法应用于工业以太网中的通讯模块装置。如图1所示,该方法包括:
62.s101、向通讯模块装置的各邻居设备发送通讯模块装置的设备信息,并将通讯模块装置作为工业以太网的首级设备加入至网络拓扑结构中。
63.其中,该通讯模块装置可以包括网络拓扑扫描功能和网络诊断的功能,将网络拓扑扫描功能和网络诊断的功能均集成在工业以太网中的通讯模块装置,工业以太网中的可以存在多个通讯模块装置,上述通讯模块装置为工业以太网中的任一通讯模块装置。
64.可选的,该通讯模块装置可以向该通讯模块装置的各邻居设备发送该通讯模块装置的设备信息,其中,该通讯模块装置的各邻居设备可以为与该通讯模块装置通过网线进行有线连接和/或通过无线方式进行无线连接的各设备,也就是说,可以将与该通讯模块装置有线连接和/或无线连接的各设备作为该通讯模块的各邻居设备。
65.可选的,可以将该通信模块装置作为工业以太网的首级设备加入至网络拓扑结构中,其中,作为工业以太网的首级设备可以指示的是对该通讯模块装置分配编号为0,并将该通讯模块装置的设备信息作为首级设备的信息保存至网络拓扑结构信息中,并且,该通讯模块装置是该通讯模块的各邻居设备的上级设备。
66.s102、根据通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至网络拓扑结构中。
67.可选的,该通讯模块装置的各邻居设备接收到该通讯模块装置发送的设备信息后,可以将各邻居设备的设备信息返回至该通信模块装置中,则,该通讯模块装置可以根据接收到的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至网络拓扑结构中,其中,各邻居设备返回的设备信息可以包括各邻居设备的设备身份标识、网络地址等,也就是说,该通讯模块装置的各邻居设备的等级是一样的,并且,各邻居设备的上级设备都是该通讯模块装置。
68.s103、针对通讯模块装置的各邻居设备,依次遍历各邻居设备的各下级邻居设备,将得到各下级邻居设备按照所属层级依次加入网络拓扑结构中,得到工业以太网的网络拓扑结构。
69.可选的,对于该通讯模块装置,该通讯模块装置的各邻居设备可以为该通讯模块装置的各下级邻居设备,对于该通讯模块装置的各邻居设备的邻居设备,可以包括各邻居设备的各下级邻居设备,在遍历的过程中可以得到不同层级的各下级邻居设备,将得到的各下级邻居设备按照各下级邻居设备的层级依次加入至网络拓扑结构中。
70.示例性的,若当遍历到该通讯模块装置的邻居设备一时,可以得到三个层级的各下级邻居设备,分别为第二级邻居设备、第三级邻居设备以及第四级邻居设备,且,第二级邻居设备的上级邻居设备为该通讯模块装置的邻居设备一,第三级邻居设备的上级设备为第二级邻居设备,第四级邻居设备的上级设备为第三级邻居设备,则,可以将第二级邻居设备、第三级邻居设备以及第四级邻居设备依次加入至网络拓扑结构中。
71.本技术实施例中,通过向通讯模块装置的各邻居设备发送通讯模块装置的设备信
息,并将通讯模块装置作为工业以太网的首级设备加入至网络拓扑结构中;根据通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至网络拓扑结构中;针对通讯模块装置的各邻居设备,依次遍历各邻居设备的各下级邻居设备,将得到各下级邻居设备按照所属层级依次加入网络拓扑结构中,得到工业以太网的网络拓扑结构。通过将网络拓扑扫描功能和网络诊断的功能集成通讯模块装置中,通过通讯模块装置进行实时扫描得到的网络拓扑结构也可以通过通讯模块装置上的网络诊断进行诊断,不需要外接诊断软件,使得使用方式更方便。
72.可选的,上述步骤s103中针对通讯模块装置的各邻居设备,依次遍历各邻居设备的各下级邻居设备,将得到各下级邻居设备按照所属层级依次加入网络拓扑结构中,可以包括:
73.可选的,针对第一邻居设备,获取该第一邻居设备的所有邻居设备的设备信息,若第一邻居设备的邻居设备中存在新的设备,则停止遍历,将新的设备作为第一邻居设备的下级设备加入网络拓扑结构中,并逐层获取新的设备的各下级邻居设备并更新网络拓扑结构,直至新的设备的各下级邻居设备中不存在新的邻居设备,则逐层返回直至到达第一邻居设备,该第一邻居设备为通讯模块装置的首个邻居设备,其中,在遍历之前,该首个邻居设备为通讯模块装置中所有邻居设备中的第一个邻居设备,例如编号为1的邻居设备。
74.值得说明的是,在遍历起始时,第一邻居设备指的是通讯模块装置的首个邻居设备,在遍历过程中,随着上述过程的变化,第一邻居设备会发生变化。例如,第一次遍历时,获取的是该通讯模块装置中的首个邻居设备,将该首个邻居设备作为第一邻居设备进行遍历,当对首个邻居设备遍历直至该首个邻居设备的各下级邻居设备不再存在新的设备时,则开始遍历该首个邻居设备的下一个邻居设备,也就是第二个邻居设备,则将第二个邻居设备作为新的第一邻居设备重新进行遍历。
75.可选的,该通讯模块装置可以为获取到的该通讯模块装置的所有邻居设备按照顺序进行编号,在遍历所有的邻居设备时,可以按照编号依次遍历。
76.a:当遍历到该通讯模块装置的第一邻居设备时,可以获取该第一邻居设备的所有邻居设备的设备信息,在获取该第一邻居设备的邻居设备的设备信息时,若发现新的设备时,则停止获取该第一邻居设备的剩余的邻居设备的设备信息,并记录停止的当前第一邻居设备的编号,将发现的新的设备作为第一邻居设备的下级设备加入网络拓扑结构中,具体地,可以为新的设备分配一个新的编号,并且该新的设备的上级设备为该第一邻居设备,也就是说,若第一邻居设备为第一级设备,则该新的设备可以作为第二级设备。
77.b:逐层获取新的设备的各下级邻居设备并更新网络拓扑结构,具体地,在将新的设备作为第一邻居设备的下级设备加入至网络拓扑结构后,此时获取新的设备的各下级邻居设备,在获取新的设备的各下级邻居设备时,若还有新的设备,则停止遍历新的设备的剩下的各下级邻居设备跳转至下一个新的设备,将下一个新的设备作为上一个新的设备的下级设备,也就是说,若第一邻居设备为第一级设备,获取第一邻居设备的邻居设备时发现的新的设备为第二级设备,获取该第二级设备的邻居设备时发现的新的设备作为第三级设备,依此类推,直至获取新的设备的各下级邻居设备时不存在新的设备,将不存在新的设备时的设备作为最后一级设备,则返回最后一级设备的上一级设备,继续获取上一级设备的剩下的各下级邻居设备,若没有发现新的设备,则继续逐层返回直至返回的设备为第一邻
居设备。
78.可选的,若在获取该第一邻居设备的所有邻居设备的设备信息时,未发现新的设备,则,可以按照编号顺序将第一邻居设备之后的邻居设备作为新的第一邻居设备,循环执行上述步骤a和b,直至通讯模块装置的各邻居设备均遍历完成。
79.可选的,在上述步骤b之后,也就是在逐层返回至第一邻居设备之后,可以将第一邻居设备之后的邻居设备作为新的第一邻居设备,循环执行上述步骤a和b,直至通讯模块装置的各邻居设备均遍历完成。
80.上述步骤是本技术中对网络拓扑结构扫描的具体实施说明,为了更完整清晰地说明上述实施例,通过图2来表示上述的网络拓扑结构的整个流程,则,图2为本技术实施例提供的一种网络拓扑结构扫描的流程示意图,如图2所示:
81.s201、获取第一邻居设备的所有邻居设备的设备信息,若发现新的设备,则执行步骤s202,若未发现新的设备,则执行步骤s205。
82.s202、若发现新的设备时,停止获取第一邻居设备的剩余邻居设备,将新的设备作为第一邻居设备的下级设备加入至网络拓扑结构。
83.s203、获取新的设备的各下级邻居设备,若继续发现下一个新的设备,则执行下述步骤s204,若新的设备的各下级邻居设备不存在新的设备,则执行步骤s205。
84.s204、若继续发现下一个新的设备,将下一个新的设备作为上一个新的设备的下级设备加入至网络拓扑结构。
85.s205、若获取到的新的设备的各下级邻居设备不存在新的设备,逐层返回直至到达第一邻居设备。
86.s206、按照编号将第一邻居设备之后的邻居设备作为新的第一邻居设备,执行上述步骤s201-s206,直至通讯模块装置的各邻居设备均遍历完成。
87.值得说明的是,上述s201-s206在上述a-b步骤中已具体说明,次数不作赘述。
88.图3为本技术实施例提供的另一种网络拓扑结构扫描的流程示意图,如图3所示,该网络拓扑结构扫描指示的是对于通讯模块装置的每一个邻居设备都是根据此方法步骤进行扫描的。
89.可选的,获取通讯模块装置的各邻居设备,将该通讯模块装置的各邻居设备可以作为不同编号的第一级设备,对于每一个编号的第一级设备,均是根据下述扫描流程进行扫描。
90.s301、获取第一级设备的邻居设备的设备信息,若有发现新的设备,将新的设备作为第一级设备的第二级设备,执行步骤s302。
91.s302、停止获取上一级设备的剩余邻居设备的设备信息,获取新的设备的邻居设备的设备信息,若有发现新的设备,则重复执行s302步骤。
92.s303、获取最后一级设备的邻居设备的设备信息,最后一级设备的各下级邻居设备不存在新的设备

93.可选的,在重复执行上述s302步骤时,直至新的设备的各下级邻居设备不存在新的设备,则将该新的设备作为最后一级设备,逐层返回上级设备,直至返回的上级设备为s301中的第一级设备。
94.可选的,上述步骤s101中向通讯模块装置的各邻居设备发送通讯模块装置的设备
信息,可以包括:
95.可选的,运行网络信息请求命令,获取通讯模块装置的身份信息、端口信息以及各邻居设备的网络地址和端口信息。
96.可选的,通讯模块装置可以运行该通讯模块装置中的网络信息请求命令,具体地,可以通过链路层发现协议报文(link layer discovery protocol,简称lldp)的方式向各邻居设备发送该通讯模块装置的设备信息,其中,lldp可以将本端设备,也就是本技术中的通讯模块装置的管理地址、端口信息以及设备信息组织成不同的类型/长度/值,并封装在链路层发现协议数据单元中发送给与自己直连的邻居设备,邻居设备接收到这些信息后将这些信息以标准的管理信息库(management information base,mib)的形式保存起来,可以供查询以及判断链路的通信状况。
97.可选的,通讯模块装置可以通过get-next-request请求命令遍历mib变量lldpremmanaddifid,得到通讯模块装置的端口信息以及与该端口连接的所有邻居设备的网络地址,通过mib变量lldpremportid可以得到与该端口连接的所有邻居设备的端口信息,通过mib变量lldplocchassisid可以得到通讯模块装置的身份信息。
98.可选的,向各邻居设备通告通讯模块装置的端口信息以及身份信息。
99.可选的,通讯模块装置可以通过lldp报文的方式向各邻居设备发送该通讯模块装置的端口信息以及身份信息后,接收到通讯模块装置lldp报文的各邻居设备也可以通过lldp报文的方式向该通讯装置模块返回各邻居设备的设备信息,通讯模块装置可以通过对接收到的lldp报文进行解码得到各邻居设备的网络地址、端口信息以及身份信息等。
100.本实施例中,通过lldp报文的方式获取邻居设备可以使得该通讯模块装置支持多种协议的设备,例如可以支持lldp协议和snmp协议的设备,对设备的种类要求低,适用性广泛。
101.可选的,上述s102中将各邻居设备分别作为一级邻居设备加入至网络拓扑结构中,可以包括:
102.可选的,生成通讯模块装置的各邻居设备对应的拓扑信息,其中,该拓扑信息可以包括:各邻居设备的编号、网络地址、端口信息、上级设备的设备标识,其中上级设备的设备标识可以包括上级设备的网际协议地址(internet protocol address,简称ip地址)或者设备的编号(id号)等、上级设备的端口以及与上级设备的连接状态。其中,通讯模块装置的各邻居设备的上级设备为该通讯模块装置。
103.可选的,可以按照通讯模块装置的各邻居设备的编号,将通讯模块装置的各邻居设备的拓扑信息依次加入网络拓扑结构中,具体地,通讯模块装置可以对各邻居设备按顺序进行编号,将生成的各邻居设备的拓扑信息保存至对应的编号的邻居设备的数据结构中,同时,在各邻居设备的数据结构中保存相应的信息,也就是说,在各邻居设备中同时保存各邻居设备的上级设备的标识、上级设备的端口以及与上级设备的连接状态等。
104.指的说明的是,上述步骤将新的设备作为第一邻居设备的下级设备加入至网络拓扑结构中以及上述步骤逐层获取新的设备的各下级邻居设备并更新网络拓扑结构的具体实施步骤与本实施例中的具体实施步骤一致,则可以将上述步骤中的新的设备作为本实施例中的通讯模块装置生成新的设备的各邻居设备对应的拓扑信息,可以按照新的设备的各邻居设备的编号,将新的设备的各邻居设备的拓扑信息依次加入网络拓扑结构中。
105.本实施例中,通过将生成的各邻居设备的拓扑信息依次加入网络拓扑结构中,可以实时的扫描网络拓扑结构,并将拓扑信息存储至网络结构中,可以方便上位机通过该通讯模块装置随时读取网络结构。
106.可选的,该方法还可以包括:
107.可选的,按照当前的网络拓扑结构,依次遍历加入网络拓扑结构中的设备,若当前遍历到的目标设备的邻居设备中不包括该目标设备的上级设备,则可以确定该目标设备与该目标设备的上级设备的连接已断开,并将该诊断信息保存至该目标设备的数据结构中,其中,该目标设备可以为任一设备,具体地,可以通过mib变量lldpremmanaddrid来读取目标设备的上级设备;示例性的,若该目标设备为通讯模块装置的第一邻居设备,在第一邻居设备中的数据结构中没有通讯模块装置,例如没有通讯模块装置的端口或者身份信息等,则对于第一邻居设备,第一邻居设备与通讯模块装置的连接已断开。
108.可选的,若当前遍历到的目标设备中包括该目标设备的上级设备,则可以确定该目标设备与该目标设备的上级设备的连接正常。
109.可选的,若目标设备的邻居设备中不包括目标设备的上级设备时,则,目标设备与目标设备的上级设备断开连接,若目标设备的邻居设备中不存在与目标设备环网端口所连接的设备,则确定目标设备在环网端口处的连接已断开,并将该诊断信息保存至该目标设备的数据结构中,其中,环网端口指示的是在网络拓扑结果扫描过程中,当目标设备的下级端口连接着已经在网络拓扑结构中已存在的设备时,则目标设备与已存在的设备形成了环网结构,则目标设备以及已存在的设备可以将环网信息保存至各设备信息中,例如在目标设备以及已存在的设备中可以包括环网端口以及环网端口对应的设备信息。
110.可选的,若目标设备的环网端口的邻居设备中不存在所连接的设备时,可以确定该目标设备在环网端口处与所连接的设备断开;若目标设备的环网端口的邻居设备中存在所连接的设备时,则可以确定该目标设备在环网端口处与所连接的设备连接正常。
111.可选的,若当前遍历到的目标设备未响应请求,该请求为读取目标设备的上级设备的请求时,则,确定该目标设备处于离线状态,目标设备与该目标设备的上级设备的连接断开。
112.可选的,对各目标设备的网络连接状态进行诊断后,可以将诊断信息存储至各目标设备的数据结构中。
113.可选的,该方法还可以包括:
114.可选的,若目标设备与上级设备的连接恢复或者目标设备与目标设备的环网端口所连接的设备的连接恢复,或者网络拓扑结构的信息发生变更时,则以通讯模块装置作为首级设备,重新建立网络拓扑结构,其中,各设备之间的连接状态可以通过管理信息库变量来读取。
115.其中,连接恢复指示的是从断开连接的状态恢复到连接状态,若目标设备与目标设备的上级设备断开后又重新连接成功,则此时,清空当前的网络拓扑结构,以通讯模块装置作为首级设备,重新建立网络拓扑结构,具体的建立网络拓扑结构的过程如上述具体实施例中的说明。
116.可选的,若目标设备与目标设备的环网端口所连接的设备断开后又重新连接成功后,此时,清空当前的网络拓扑结构,以通讯模块装置作为首级设备,重新建立网络拓扑结
构,具体的建立网络拓扑结构的过程如上述具体实施例中的说明。
117.可选的,若当前的网络拓扑结构的信息变更时,例如目标设备的上级设备编号、上级设备的端口或者目标设备的环网端口发生变化时,清空当前的网络拓扑结构,以通讯模块装置作为首级设备,重新建立网络拓扑结构,具体的建立网络拓扑结构的过程如上述具体实施例中的说明。
118.本实施例中,通过在网络拓扑结构扫描过程中也可以对当前的网络拓扑结构进行实时的诊断,可以使得网络拓扑扫描和诊断更加高效,并且只读取管理信息库中的网络状态即可实现网络故障诊断,可以使得网络诊断更加高效。
119.可选的,所述方法还包括:
120.可选的,接收上位机发送的拓扑读取请求,其中,该上位机可以指示的是管理工业以太网内的各通讯模块装置的管理站,则,该上位机可以获取到一个或者多个通讯模块装置的网络拓扑结构。
121.具体地,上位机可以向某一个通讯模块装置发送拓扑读取请求,该通讯模块装置可以接收上位机发送的拓扑读取请求。
122.可选的,根据拓扑读取请求,将网络拓扑结构发送给上位机。
123.可选的,通信模块装置可以根据拓扑读取请求,将网络拓扑结构发送给上位机,其中,该拓扑读取请求包括对网络拓扑结构的拓扑信息请求以及对网络拓扑结构的诊断信息的请求;拓扑信息可以包括网络拓扑结构中各设备的设备信息、各设备的邻居设备的设备信息、各设备与上级设备的连接状态、各设备与各设备的环网端口所连接的设备的连接状态等信息;诊断信息可以包括连接断开、连接正常等诊断信息。
124.可选的,上位机接收到网络拓扑结构后,可以将网络拓扑结构图形化,若网络连接状态为正常连接,则正常连接的各设备之间可以使用绿色的线条进行连接显示;若网络连接状态为断开状态,则断开连接的各设备之间可以使用红色线条进行显示,本实施例中还可以使用其他形式对连接或者断开的状态进行显示,此处不作限制。
125.本实施例中,通过上位机获取通讯模块装置的网络拓扑结构并进行图形化显示,可以使得网络拓扑结构更直观,故障定位更准确;并且避免因为外接的诊断软件需要不断刷新网络拓扑结构,通过对比前后网络拓扑结构才能发现故障问题。
126.图4为本技术实施例提供的一种网络拓扑信息处理方法的装置示意图,如图4所示,该装置包括:
127.发送模块401,用于向所述通讯模块装置的各邻居设备发送所述通讯模块装置的设备信息,并将所述通讯模块装置作为所述工业以太网的首级设备加入至网络拓扑结构中;
128.加入模块402,用于根据所述通讯模块装置的各邻居设备返回的设备信息,将各邻居设备分别作为一级邻居设备加入至所述网络拓扑结构中;
129.遍历模块403,用于针对所述通讯模块装置的各邻居设备,依次遍历各所述邻居设备的各下级邻居设备,将得到的各下级邻居设备按照所属层级依次加入所述网络拓扑结构中,得到所述工业以太网的网络拓扑结构。
130.可选的,遍历模块403具体用于:
131.针对第一邻居设备,获取所述第一邻居设备的所有邻居设备的设备信息,若所述
第一邻居设备的邻居设备中存在新的设备,则停止遍历,将所述新的设备作为所述第一邻居设备的下级设备加入所述网络拓扑结构中,并逐层获取所述新的设备的各下级邻居设备并更新所述网络拓扑结构,直至所述新的设备的各下级邻居设备中不存在新的邻居设备,则逐层返回直至到达所述第一邻居设备,在遍历之前,所述第一邻居设备为所述通讯模块装置的首个邻居设备;
132.将所述第一邻居设备之后的邻居设备作为新的第一邻居设备,循环执行,直至所述通讯模块装置的各邻居设备均遍历完成。
133.可选的,发送模块401具体用于:
134.接收所述各邻居设备的身份信息以及端口信息;
135.向所述各邻居设备通告所述通讯模块装置的网络地址、端口信息以及身份信息。
136.可选的,加入模块402具体用于:
137.生成所述通讯模块装置的各邻居设备对应的拓扑信息,所述拓扑信息包括:所述邻居设备的编号、网络地址、端口信息、上级设备的设备标识、上级设备的端口以及与上级设备的连接状态,其中,所述通讯模块装置的各邻居设备的上级设备为所述通讯模块装置;
138.按照所述通讯模块装置的各邻居设备的编号,将所述通讯模块装置的各邻居设备的各邻居设备的拓扑信息依次加入所述网络拓扑结构中。
139.可选的,遍历模块403还具体用于:
140.按照当前的网络拓扑结构,依次遍历加入所述网络拓扑结构中的设备,若当前遍历到的目标设备的邻居设备中不包括所述目标设备的上级设备,则确定所述目标设备与所述上级设备的连接已断开,若所述目标设备的邻居设备中不存在所述目标设备的环网端口所连接的设备,则确定所述目标设备在所述环网端口处的连接已断开。
141.可选的,遍历模块403还具体用于:
142.若所述目标设备与所述上级设备的连接恢复或者与所述目标设备的环网端口所连接的设备的连接恢复或者所述网络拓扑结构的信息变更,则以所述通讯模块装置作为首级设备,重新建立所述网络拓扑结构。
143.可选的,所述装置还包括:
144.接收模块404,用于接收上位机发送的拓扑读取请求;
145.发送模块401,用于根据所述拓扑读取请求,将所述网络拓扑结构发送给所述上位机。
146.图5为本技术实施例提供的一种电子设备500的结构框图,如图5所示,该电子设备可包括:处理器501、存储器502。
147.可选的,还可以包括总线503,其中,所述存储器502用于存储有所述处理器501可执行的机器可读指令,当电子设备500运行时,所述处理器501与所述存储器502存储之间通过总线503通信,所述机器可读指令被所述处理器501执行时执行上述方法实施例中的方法步骤。
148.本技术实施例还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述网络拓扑信息处理方法实施例中的方法步骤。
149.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统
和装置的具体工作过程,可以参考方法实施例中的对应过程,本技术中不再赘述。在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
150.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者通讯模块装置等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
151.以上仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1