一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

为网络系统生成网络拓扑图的方法及相关设备与流程

2022-05-11 10:19:42 来源:中国专利 TAG:


1.本技术涉及通信领域,更具体地,涉及一种为网络系统生成网络拓扑图的方法及相关设备。


背景技术:

2.zigbee网络系统中包括协调器节点、路由节点和终端节点。现有技术中,为了获得zigbee网络系统的网络拓扑图,需要通过抓包工具来抓取报文,然后由工程师对所抓取到的报文进行人工分析来梳理zigbee网络系统中设备之间的关系,再根据对报文的人工分析结果来绘制网络拓扑图。由于需要人工分析报文来绘制得到zigbee网络系统的网络拓扑图,费时费力,生成网络拓扑图的效率极低。


技术实现要素:

3.鉴于上述问题,本技术实施例提出了一种为网络系统生成网络拓扑图的方法及相关设备,以改善上述问题。
4.第一方面,本技术实施例提供了一种为网络系统生成网络拓扑图的方法,所述网络系统包括边界路由节点、转发节点和终端节点;所述方法包括:获取所述边界路由节点的第一邻居表信息、获取所述转发节点的第二邻居表信息和获取所述终端节点的第一心跳报文,所述第一心跳报文包含所述终端节点的下一跳地址信息;根据所述第一邻居表信息、所述第二邻居表信息和所述下一跳地址信息,生成所述网络系统的所述网络拓扑图。
5.第二方面,本技术实施例提供了一种为网络系统生成网络拓扑图的装置,包括:获取模块,用于获取所述边界路由节点的第一邻居表信息、获取所述转发节点的第二邻居表信息和获取所述终端节点的第一心跳报文,所述第一心跳报文包含所述终端节点的下一跳地址信息;生成模块,用于根据所述第一邻居表信息、所述第二邻居表信息和所述下一跳地址信息,生成所述网络系统的所述网络拓扑图。
6.在本技术的一些实施例中,生成模块还包括:第一获取单元,用于从所述第一邻居表信息获取所述边界路由节点所对应邻居设备的第一地址信息;第一生成单元,用于根据所述边界路由节点的设备标识和所述第一地址信息,生成第一拓扑关系图;第二获取单元,用于从所述转发节点的第二邻居表信息获取所述转发节点所对应邻居设备的第二地址信息;第二生成单元,用于根据所述转发节点的设备标识和所述第二地址信息,生成第二拓扑关系图;第三生成单元,用于根据所述终端节点的设备标识和所述下一跳地址信息,生成第三拓扑关系图;第四生成单元,用于根据将所述第一拓扑关系图、所述第二拓扑关系图和所述第三拓扑关系图进行组合,生成所述网络系统的网络拓扑图。
7.在本技术的一些实施例中,第一生成单元包括:第一获取子单元,用于根据所述第一地址信息,获取所述边界路由节点所对应邻居设备的设备标识;第一生成子单元,用于按照所述边界路由节点与所述边界路由节点所对应邻居设备之间的邻居关系,添加由所述边界路由节点所对应邻居设备的设备标识指向所述边界路由节点的设备标识的有向线段,生
成所述第一拓扑关系图。
8.在本技术的一些实施例中,第二生成单元包括:第二获取子单元,用于根据所述第二地址信息,获取所述转发节点所对应邻居设备的设备标识;第二生成子单元,用于按照所述转发节点与所述转发节点所对应邻居设备之间的邻居关系,添加由所述转发节点所对应邻居设备的设备标识指向所述转发节点的设备标识的有向线段,生成所述第二拓扑关系图。
9.在本技术的一些实施例中,第三生成单元包括:第三获取子单元,用于根据所述下一跳地址信息,获取所述终端节点所对应下一跳设备的设备标识;第三生成子单元,用于按照所述终端节点与所述终端节点的下一跳设备之间的关系,添加由所述终端节点的设备标识指向所述终端节点所对应下一跳设备的设备标识的有向线段,生成第三关系拓扑图。
10.在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:第一标注模块,用于根据所述第一心跳报文,在所述网络拓扑图上标注所述终端节点与所述终端节点所对应下一跳设备之间的数据传输方向。
11.在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:第二心跳报文获取模块,用于获取所述转发节点的第二心跳报文,所述第二心跳报文包含所述转发节点的下一跳地址信息;第二标注模块,用于根据所述第二心跳报文在所述网络拓扑图上标注所述转发节点与所述转发节点所对应下一跳设备之间的数据传输方向。
12.在本技术的一些实施例中,所述第一邻居表信息还包含所述边界路由节点与所述边界路由节点所对应邻居设备之间的通信链路上的信号质量值;所述第二邻居表信息还包含所述转发节点与所述转发节点所对应邻居设备之间的通信链路上的信号质量值;所述第一心跳报文包含所述终端节点与所述终端节点所对应下一跳设备之间的通信链路上的信号质量值;在本实施例中,为网络系统生成网络拓扑图的装置还包括:信号质量标注模块,用于根据所述边界路由节点与所述边界路由节点所对应邻居设备之间的通信链路上的信号质量值、所述转发节点与所述转发节点所对应邻居设备之间的通信链路上的信号质量值和所述终端节点与所述终端节点所对应下一跳设备之间的通信链路上的信号质量值,在所述网络拓扑图上进行信号质量标注。
13.在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:网络拓扑图发送模块,用于发送所述网络拓扑图发送至显示设备上,以在所述显示设备上显示所述网络拓扑图。
14.第三方面,本技术实施例提供了一种电子设备,包括:处理器;存储器,所述存储器上存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,实现如上所述为网络系统生成网络拓扑图的方法。
15.第四方面,本技术实施例提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被处理器执行时,实现如上所述为网络系统生成网络拓扑图的方法。
16.在本方案中,根据边界路由节点的第一邻居表信息、转发节点的第二邻居表信息和终端节点的第一心跳报文,第一心跳报文包含终端节点的下一跳地址信息来自动生成网络系统的网络拓扑图,而不需要利用抓包工具抓取报文,然后人工分析报文来绘制网络拓扑图,提高了生成网络拓扑图效率,而且避免了额外部署抓包工具的花费,节约了生成网络
拓扑图的成本。
17.应当理解的是,以上的一般描述和后文细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
18.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
19.图1是根据本技术一实施例示出的应用场景的示意图。
20.图2是根据本技术一实施例示出的为网络系统生成网络拓扑图的方法的流程图。
21.图3是根据本技术一实施例示出的步骤220的具体流程图。
22.图4是根据本技术另一实施例示出的为网络系统生成网络拓扑图的方法的流程图。
23.图5是根据本技术一实施例示出的显示网络系统的网络拓扑图中某一设备当前所在的数据传输路径和数据传输方向的方法的流程图。
24.图6是根据本技术一实施例示出的为zigbee网络系统生成网络拓扑图的方法流程图。
25.图7是根据本技术一实施例所生成网络拓扑图的示意图。
26.图8是根据本技术一示例性实施例示出的一种为网络系统生成网络拓扑图装置的框图。
27.图9是根据本技术一示例性实施例示出的电子设备的硬件结构图。
28.通过上述附图,已示出本发明明确的实施例,后文中将有更详细的描述,这些附图和文字描述并不是为了通过任何方式限值本发明构思的范围,而是通过特定实施例为本领域计算书人员说明本发明的概念。
具体实施方式
29.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本技术将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
30.此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本技术的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本技术的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本技术的各方面。
31.需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆
盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
32.zigbee作为一种短距离、低功耗、低数据传输速率的无线网络技术,它是介于无线标记技术和蓝牙之间的技术方案,在传感器网络等领域应用非常广泛,这得益于它强大的组网能力。zigbee网络系统包含一个协调器节点(coordinator)、一系列的路由节点(router)和一系列的终端节点(end device)。
33.图1是根据本技术一实施例示出的应用场景的示意图,如图1所示,该应用场景包括zigbee网络系统110和与zigbee网络系统110通信连接的信息收集平台120。其中,信息收集平台120可以通过有线或者无线网络与zigbee网络系统110通信连接。
34.在zigbee网络系统110中,包括一个协调器节点111、一系列的路由节点112和一系列的终端节点113。协调器节点111是zigbee网络系统中各节点的汇聚点,是zigbee网络系统的核心节点,负责组建、维护和管理zigbee网络。路由节点112负责转发数据资料包,进行数据的路由路径寻找和路由维护,允许节点加入网络并辅助其子节点通信;路由节点112是终端节点113和协调器节点111的中继。终端节点113可以直接与协调器节点111通信连接,也可以通过路由器节点112与协调器节点111通信连接。
35.其中,作为协调器节点111的设备可以是网关,或者说,网关中集成了协调器,可以理解的是,协调器节点所创建的zigbee网络是局域网,该zigbee网络系统中,协调器节点的子设备(路由节点、终端节点)均是通过该协调器节点111与广域网中的设备进行通信,因此,zigbee网络系统110的路由节点112和终端节点113可以通过网关与该zigbee网络系统外的其他设备通信,例如路由节点的第二邻居表信息、终端节点的第一心跳报文都先上报给网关,然后由网关将路由节点的第二邻居表信息、终端节点的第一心跳报文上报到信息收集平台。
36.作为路由节点112的设备可以是插座、零火开关等控制器设备。作为终端节点113的设备可以是电脑、手机、智能打印机、智能传真机、智能摄像机、智能空调、智能门锁、配置了通信模块(例如zigbee模块、wi-fi模块、蓝牙模块等)的人体传感器、门窗传感器、温湿度传感器、水浸传感器、天然气报警器、烟雾报警器、墙壁开关、墙壁插座、无线开关无线墙贴开关、魔方控制器、窗帘电机等设备,在此不进行限定。
37.信息收集平台120可以包括服务端121,该服务端121可以是云服务器、物理服务器或者服务器集群,在此不进行具体限定。该服务端121可以用于收集zigbee网络系统中各节点的信息,例如协调器节点的第一邻居表信息、路由节点的第二邻居表信息、终端节点的第一心跳报文等,然后由服务端121执行本技术的方法,为zigbee网络系统生成网络拓扑图。
38.进一步的,信息收集平台120中还可以包括终端设备122,该终端设备122与服务端121通信连接,终端设备122可以是具有显示屏的电子设备,例如智能手机、平板电脑、笔记本电脑、台式电脑、电视等,从而,服务端121可以将生成的网络拓扑图下发到终端设备122进行显示,进而,用户还可以基于终端设备122的用户界面对所显示的网络拓扑图进行操作,例如选中其中一个节点等。值得一提的是,图1中仅示例性示出了一个终端设备122,在其他实施例中,终端设备122还可以是多个,在此不进行具体限定。
39.下面通过具体实施例对本技术实施例提供的一种为网络系统生成网络拓扑图的
方法及相关设备进行详细说明。
40.图2是根据本技术一实施例示出的为网络系统生成网络拓扑图的方法的流程图,其中网络系统包括边界路由节点、转发节点和终端节点,边界路由节点也称为edge router,是在一个或多个局域网络和主干网络之间对数据包进行路由的设备节点;转发节点是具有与边界路由节点进行通信能力的节点,并带有转发功能,用于实现无线网络中各节点之间的数据包转发功能;终端节点是指一些低功耗、且不带有转发功能的设备。本技术方案可应用于zigbee网络系统中,在zigbee网络系统110中,协调器节点111为本技术中的边界路由节点,路由节点112为本技术中的转发节点,终端节点113为本技术中的终端节点。转发节点和终端节点的数量不限,可以是一个,也可以是多个,在网络系统中,边界路由节点为一个。
41.如图2所示,该方法包括:
42.步骤210,获取边界路由节点的第一邻居表信息、获取转发节点的第二邻居表信息和获取终端节点的第一心跳报文,第一心跳报文包含终端节点的下一跳地址信息。
43.在zigbee网络系统中,边界路由节点和转发节点均会维护自身对应的邻居表信息,该邻居表信息包括该节点的邻居设备的信息。在zigbee网络系统中,若两节点在一跳范围内可以直接进行通信,则可以将其中一个节点称为另一个节点的邻居设备。一节点的邻居表信息可以包括该节点的邻居设备的数量、各个邻居设备的短地址、邻居设备的设备类型、该节点与邻居设备之间的通信链路的链路质量指标(link quality indicator,lqi)。链路质量指标表示接收数据帧的能量与质量。由于该链路质量指标反映的是所接收到数据帧的能量与质量,因此,该链路质量指标可以反映所对应通信链路上的信号质量。
44.在本技术中,为便于区分,将边界路由节点的邻居表信息称为第一邻居表信息,将转发节点的邻居表信息称为第二邻居表信息。
45.在一些实施例中,第一邻居表信息所包括的内容可以如下表1所示,第二邻居表信息所包括的内容可以如下表2所示:
46.表1
[0047][0048]
表2
[0049][0050]
在本技术的方案中,由于终端节点可能不会上报邻居表信息,例如传感器设备,因此,为了保证网络拓扑图的完整性,终端节点的邻居设备的信息通过心跳报文进行上报,即将终端节点的下一跳设备的信息添加到心跳报文中。终端节点的下一跳设备的信息可以包括下一跳设备的地址信息,即下一跳地址信息,终端节点的下一跳设备是指终端所发送的数据下一次所要达到的设备。在本技术中,将终端节点的心跳报文称为第一心跳报文。可以理解的是,若一设备是终端节点的下一跳设备,则表明该设备与该终端节点相邻,且可相互通信。
[0051]
进一步的,终端节点的心跳报文中还可以包括终端节点与下一跳设备之间所对应的通信链路上的lqi值。在一些实施中,心跳报文的格式可以是tlv格式,tlv格式是一种可变格式,其中,t为tag,用于标识标签;l为length,用于定义数值的长度;v为value,用于表示实际的数值。其中,t和l的长度固定,一般是2或4个字节,v的长度由length指定。具体的,心跳报文可以如下表3所示:
[0052]
表3
[0053][0054]
在表3中,idex字段表示标签,datatype字段表示数据类型,value字段表示数值;具体的,如表3所示,针对下一跳设备地址这一参数设定的标签为0x0a,其数据类型为“0x28
(int8)”0x28表示十六进制,int8则表示该数据占一个字节且该数据为整型,对应的value字段的值为下一跳设备地址。针对下一跳设备的lqi值这一参数的标签为“0x0b”,其数据类型为“0x28(int8)”,对应的,value字段的值为lqi值。
[0055]
步骤220,根据第一邻居表信息、第二邻居表信息和下一跳地址信息,生成网络系统的网络拓扑图。
[0056]
在网络系统,将该网络系统中的各个设备节点抽象成点,把连接设备节点的通信线路抽象成线,然后以图的形式来表示这些点与线之间的关系,即得到该网络系统的网络拓扑图。
[0057]
如上所描述,由于第一邻居表信息体现了边界路由节点与边界路由节点的邻居设备之间的连接关系、第二邻居表信息体现了转发节点与该转发节点的邻居设备之间的连接关系、终端节点的下一跳地址信息指示该终端节点的下一跳设备,因此,可以根据边界路由节点的第一邻居表信息、转发节点的第二邻居表信息和终端节点的下一跳地址信息,生成zigbee网络系统的网络拓扑图。
[0058]
可以理解的是,为zigbee网络系统所生成的网络拓扑图是取决于zigbee网络系统的网络拓扑结构。具体的,zigbee网络系统的网络拓扑结构包括星型拓扑结构、树形拓扑结构和网状(mesh)拓扑结构。若zigbee网络系统为网状(mesh)拓扑结构,则对应为该zigbee网络系统所生成的网络拓扑图为网状网络拓扑图。
[0059]
对于网状拓扑结构的zigbee网络系统而言,其具有更加灵活的信息路由规则,在某些可能的情况下,路由节点之间可以直接的通讯,这种路由机制使得信息的通讯变得更有效率。
[0060]
在本技术的方案中,根据网络系统中边界路由节点的第一邻居表信息、转发节点的第二邻居表信息、以及终端节点的第一心跳报文来生成该网络系统的网络拓扑图。边界路由节点的第一邻居表信息由边界路由节点生成并上报,转发节点的第二邻居表信息由转发节点自身生成并上报,终端节点的第一心跳报文由终端节点自身生成并上报,因此,不需要借助于抓包工具来抓取无线报文并通过人工分析无线报文来生成网络系统的网络拓扑图,而直接根据边界路由节点的第一邻居表信息、转发节点的第二邻居表信息、以及终端节点的第一心跳报文来自动生成网络拓扑图。
[0061]
由于本技术的方案不需要依赖于抓包工具进行无线报文抓取,对应的,也不需要在网络系统中部署抓包工具,而抓包工具的成本较高,因此,本技术的方案实现了低成本生成网络系统的网络拓扑图。而且,该过程中不需要人工进行无线报文分析来生成网络拓扑图,提高了网络拓扑图的生成效率。
[0062]
在本技术的一些实施例中,如图3所示,步骤220包括:
[0063]
步骤311,从第一邻居表信息获取边界路由节点所对应邻居设备的第一地址信息。
[0064]
步骤312,根据边界路由节点的设备标识和第一地址信息,生成第一拓扑关系图。
[0065]
如上表1所示,第一邻居表信息中包括协调器节点所对应邻居设备的第一地址信息,该第一地址信息可以是短地址,也可以是长地址(又称为扩展地址)。因此,可以对应从第一邻居表信息中获取协调器节点所对应邻居设备的长地址或者短地址。
[0066]
在一些实施例中,步骤312进一步包括:根据第一地址信息,获取边界路由节点所对应邻居设备的设备标识;按照边界路由节点与边界路由节点所对应邻居设备之间的邻居
关系,添加由边界路由节点所对应邻居设备的设备标识指向边界路由节点的设备标识的有向线段,得到第一拓扑关系图。
[0067]
在zigbee网络系统中,边界路由节点维护了该zigbee网络系统中的子设备列表,该子设备列表中包含加入到边界路由节点所创建zigbee网络中的终端节点的信息和转发节点的信息,其中,子设备列表中终端节点的信息包括终端节点的地址信息和终端节点的设备标识,子设备列表中转发节点的信息包括转发节点的地址信息和转发节点的设备标识。在此基础上,可以根据子设备列表和边界路由节点所对应邻居设备的地址信息,确定该边界路由节点所对应邻居设备的设备标识;同样的,从子设备列表也可以获取到边界路由节点的设备标识。
[0068]
在网络拓扑图中,各个节点设备可以通过图例来表示的,在一些实施例中,为了便于区分,可将边界路由节点所对应设备标识的图例称为第一图例,可将边界路由节点所对应邻居设备的设备标识的图例称为第二图例。在具体实施例中,一节点设备的设备标识的图例可以是该节点设备的缩略图,例如,若一节点设备是一个转发节点,则该节点设备的设备标识的图例为转发节点的缩略图。
[0069]
在另一些实施例中,各个节点设备还可以通过文字标识来表示,各个节点的设备的设备标识可根据实际需要来设定,在此不进行具体限定。在本技术的方案中,将设备标识以图例的方式进行详细说明。
[0070]
在一些实施例中,为了便于用户根据图例直观确定所表示的设备,可在边界路由节点所对应的第一图例上标注该边界路由节点的设备名称;可在边界路由节点所对应邻居设备的第二图例上标注该邻居设备的设备名称。
[0071]
对于边界路由节点而言,若一节点设备是该边界路由节点的邻居设备,同时也表明该节点设备是该边界路由节点的子设备,因此,在确定边界路由节点的设备标识和边界路由节点所对应邻居设备的设备标识后,按照边界路由节点与所对应邻居设备之间的邻居关系,添加由边界路由节点所对应邻居设备的设备标识指向边界路由节点的设备标识的有向线段,该有向线段对应指示了边界路由节点与所对应邻居设备之间的父子关系。所得到包括边界路由节点所对应的设备标识、边界路由节点所对应邻居设备的设备标识、二者之间的有向线段的关系图即为第一拓扑关系图。
[0072]
请继续参阅图3,步骤321,从第二邻居表信息获取转发节点所对应邻居设备的第二地址信息。
[0073]
步骤322,根据转发节点的设备标识和第二地址信息,生成第二拓扑关系图。
[0074]
在一些实施例中,步骤322进一步包括:根据第二地址信息,获取转发节点所对应邻居设备的设备标识;按照转发节点与转发节点所对应邻居设备之间的邻居关系,添加由转发节点所对应邻居设备的设备标识指向转发节点的设备标识的有向线段,生成第二拓扑关系图。所得到包括转发节点所对应的设备标识、转发节点所对应邻居设备的设备标识、二者之间的有向线段的关系图即为第二拓扑关系图。
[0075]
同理,可以根据zigbee网络系统中的子设备列表中所存储设备的设备标识和设备的地址信息,以及转发节点所对应邻居设备的地址信息,从子设备列表中获取转发节点所对应邻居设备的设备标识。
[0076]
同理,对于转发节点而言,若一节点设备是该转发节点的邻居设备,同时也表明该
节点设备是该转发节点的子设备,因此,在确定转发节点所对应的设备标识和转发节点所对应邻居设备的设备标识后,按照转发节点与所对应邻居设备之间的邻居关系,添加由转发节点所对应邻居设备的设备标识指向转发节点所对应的设备标识的有向线段,该有向线段即指示了转发节点与该转发节点所对应邻居设备之间的父子关系。通过上述过程,实现了根据转发节点的第二邻居表信息生成第一拓扑关系图。
[0077]
步骤331,根据终端节点的设备标识和下一跳地址信息,生成第三拓扑关系图。
[0078]
在一些实施例中,步骤331进一步包括:根据下一跳地址信息,获取终端节点所对应下一跳设备的设备标识;按照终端节点与终端节点的下一跳设备之间的关系,添加由终端节点的设备标识指向终端节点所对应下一跳设备的设备标识的有向线段,生成第三关系拓扑图。
[0079]
可以理解的是,若一设备(假设设备b)是另一设备(假设是设备a)的下一跳设备,一方面表明该设备a当前需要向设备b传输数据,另一方面表明设备a与设备b之间可以直接通信。因此,根据终端节点的下一跳地址信息可以确定该终端节点的下一跳地址,进而确定该终端节点所对应下一跳设备的设备标识。之后,按照终端节点与终端节点的下一跳设备之间的关系,添加由终端节点对应的设备标识指向终端节点所对应下一跳设备的设备标识的有向线段,对应得到第三拓扑关系图。
[0080]
步骤340,将第一拓扑关系图、第二拓扑关系图和第三拓扑关系图进行组合,生成网络系统的网络拓扑图。
[0081]
可以理解的是,边界路由节点的邻居设备、转发节点的邻居设备、以及终端节点的下一跳设备任意两者之间,可能存在共同的设备,从而,在得到第一拓扑关系图、第二拓扑关系图和第三拓扑关系图之后,将任意两个拓扑关系图中共同的设备对应的图例进行重合,按照该过程将第一拓扑关系图、第二拓扑关系图和第三拓扑关系图进行组合,对应得到网络系统的网络拓扑图。
[0082]
在本技术的一些实施例中,在步骤220之后,该方法还包括:发送网络拓扑图至显示设备上,以在显示设备上显示网络拓扑图,从而用户可以直观了解到网络系统中的设备情况。
[0083]
本技术利用了边界路由节点可上报自身的第一邻居信息表、转发节点可上报自身的第二邻居信息表以及终端节点可上报自身的第一心跳报文的特性,从而根据边界路由节点的第一邻居信息表、转发节点的第二邻居信息表和终端节点的第一心跳报文来生成网络系统的网络拓扑图。无需像现有技术中利用高费用的抓包工具抓取无线报文,然后由工程师分析无线报文来生成网络拓扑图。本技术所提供的方法可以便捷快速、低成本地生成网络拓扑图。
[0084]
在本技术的一些实施例中,步骤210之后,该方法还包括:根据第一心跳报文,在网络拓扑图上标注终端节点与终端节点所对应下一跳设备之间的数据传输方向。
[0085]
如上所描述,若一设备(假设设备b)是另一设备(假设是设备a)的下一跳设备,表明该设备a当前需要向设备b传输数据,进而,表明当前设备a与设备b之间的数据传输方向为由设备a指向设备b的方向。因此,为了便于用户直观了解到两节点设备当前的数据传输方向,在网络拓扑图上标注终端节点与终端节点所对应下一跳设备之间的数据传输方向。
[0086]
在一些实施例中,可以通过指定显示形式的有向线段来表示两设备之间的数据传
输方向,指定显示形式可以是指定颜色、指定线型(例如实线、虚线、双实线、点划线等)、指定线宽等,在此不进行具体限定。进一步的,为了便于用户直观区分两设备之间当前是否在进行数据传输,以及当前进行数据传输的数据传输方向,表示两设备之间当前的数据传输方向的有向线段所对应的显示形式与表示两设备之间的邻居关系(父子关系)的有向线段的显示形式可以不一样,例如,表示两设备之间的邻居关系的有向线段可以是红色,而表示两设备之间当前的数据传输方向的有向线段的颜色可以是蓝色。
[0087]
在本技术的一些实施例中,如图4所示,该方法还包括:
[0088]
步骤410,获取转发节点的第二心跳报文,第二心跳报文包含转发节点的下一跳地址信息。
[0089]
步骤420,根据第二心跳报文,在网络拓扑图上标注转发节点与转发节点所对应下一跳设备之间的数据传输方向。
[0090]
在本技术的方案中,为便于区分,将转发节点的心跳报文称为第二心跳报文。同第一心跳报文,该第二心跳报文中的内容也可以如表3所示。
[0091]
同理,可以通过指定显示形式的有向线段来表示转发节点和转发节点的下一跳设备之间的数据传输方向。
[0092]
可以理解的是,在不同的时刻,两设备之间的数据传输方向可能发生变化,因此,需要根据终端节点的新的第一心跳报文和/或路由节点的新的第二心跳报文,对在网络拓扑图中标注的数据传输方向进行更新,以保证网络拓扑图中所标注的数据传输方向与网络系统中当前实际的数据传输方向一致。
[0093]
在本技术的一些实施例中,将网络系统的网络拓扑图发送到显示设备上,以在显示设备上显示网络拓扑图。在一显示设备中,显示该网络系统的网络拓扑图中某一设备当前所在的数据传输路径和当前所在的数据传输路径上的数据传输方向的方法如图5所示,该方法包括:
[0094]
步骤510,检测在所显示的网络拓扑图中触发的设备选择操作。
[0095]
在一些实施例中,显示设备可以台式电脑、电视、智能手机、平板电脑等具有显示功能的设备,在此不进行具体限定。
[0096]
步骤520,根据标注的数据传输方向显示目标设备当前所在的数据传输路径和当前所在的数据传输路径上的数据传输方向,目标设备为设备选择操作选择的设备。
[0097]
在网络系统中,同一时刻可能存在多组设备之间均在进行数据传输,因此,如果在网络拓扑图中同时显示多组设备之间的数据传输方向,会对用户造成干扰,不便于用户快速定位所关注设备当前的数据传输方向。因此,在网络拓扑图中所标注的数据传输方向可以根据用户的触发操作进行显示。也就是说,在用户不需要关注一设备的当前的数据传输方向时,将在网络拓扑图中为该设备所标注的数据传输方向进行隐藏,而仅在用户需要关注该设备的当前的数据传输方向时才显示所标注的数据传输方向。
[0098]
在其他实施例中,为了方便用户区分需要关注的设备的数据传输方向与其他不需要关注的设备的数据传输方向,将设备标注的数据传输方向设置为带有颜色的有向线段,当用户触发了选择显示的网络拓扑图的一设备的操作后,被选中的设备当前的数据传输方向的有向线段与其他数据传输方向的有向线段显示的颜色不同,或被选中的设备当前的数据传输方向的有向线段与其他数据传输方向的有向线段显示的颜色深浅不同,可以理解的
是,仅当用户关注一设备的数据传输方向时,将在网络拓扑图中为该设备标注的数据传输方向的有向线段进行深色加粗或改变颜色显示。
[0099]
在本技术的一些实施例中,在网络拓扑图中所触发的设备选择操作可以是针对网络拓扑图中的图例所触发的设备选择操作,该设备选择操作可以是用户将光标移动到所显示网络拓扑图中一图例的位置处,对应的,光标所在位置处的图例所对应的设备即为设备选择操作所选择的目标设备。在另一实施例中,设备选择操作还可以是针对网络拓扑图中的图例触发的点击、触摸、双击、滑动等操作,对应的,所触发的图例所指示的设备即为设备选择操作所选择的目标设备。
[0100]
在本实施例的方案中,根据用户的触发选择的目标设备,才在所显示的网络拓扑图中显示该目标设备当前所在的数据传输路径和对应的数据传输方向,从而可以避免同时显示全部所标注的数据传输方向对用户造成干扰。
[0101]
在本技术的一些实施例中,第一邻居表信息还包含边界路由节点与边界路由节点所对应邻居设备之间的通信链路上的信号质量值;第二邻居表信息还包含转发节点与转发节点所对应邻居设备之间的通信链路上的信号质量值;第一心跳报文包含终端节点与终端节点所对应下一跳设备之间的通信链路上的信号质量值;在本实施例中,步骤220之后,该方法还包括:根据边界路由节点与边界路由节点所对应邻居设备之间的通信链路上的信号质量值、转发节点与转发节点所对应邻居设备之间的通信链路上的信号质量值和终端节点与终端节点所对应下一跳设备之间的通信链路上的信号质量值,在网络拓扑图上进行信号质量标注。
[0102]
其中,信号质量值可以是上文中的lqi值。在具体实施例中,在网络拓扑图上进行信号质量标注可以是标注信号质量值对应的等级,或者标注信号质量值,也可以同时标注信号质量值和该信号质量值对应的等级。具体的,信号质量值和/或信号质量值对应的等级可标注在两图例之间的有向线段旁边,以便于查看。
[0103]
在一具体实施例中,可按照表4所示对信号质量值进行等级划分。
[0104]
表4
[0105][0106]
在本技术的一些实施例中,对于所标注的信号质量值、以及数据传输路径,可以对用户所关注的设备所在的数据传输路径进行突出显示。具体的,当检测到用户选中所显示网络拓扑图中一图例时,则对表示该图例所对应设备当前所在的数据传输路径的线段进行突出显示。具体的,所进行的突出显示可以是按照指定的显示模式显示表示该图例所对应设备当前所在的数据传输路径的线段。其中,指定的显示模式可以是指定颜色、指定线型等,在此不进行限定。通过按照指定的显示模式进行显示,从而,便于用户快速定位到所关
注的设备的数据传输路径、以及所标注的信号质量值等。可以理解的是,该指定的显示模式区别于其他用户所未选中的图例所在线段的显示模式,由此可避免开发工程师在进行查看网络拓扑图时混乱实际数据传输路径和设备与设备之间的关系。
[0107]
由于所生成的网络拓扑图清楚反映了网络系统中各个设备之间的关系,以及两设备之间的数据交互需要经过哪些设备,因此,该网络拓扑图可以供工程师或者服务商来定位网络问题。如果在网络系统中出现设备联动有延迟或者控制失败,或是设备的报文无法成功上报的情况,可以通过查看此网络拓扑图,基于网络拓扑图中所显示设备之间的传输路径、以及信号质量值等来确定网络系统中的异常设备,进而对异常设备进行调整,优化网络系统,使得整个网络系统中设备间数据传输达到稳定且高效的效果。
[0108]
图6是根据本技术一实施例示出的为zigbee网络系统生成网络拓扑图的方法流程图。图6对应的实施例应用于zigbee网络系统中,zigbee网络系统中作为边界路由节点的设备为网关,从而,边界路由节点的子设备中,转发节点将自身的第二邻居表信息上报到网关,终端节点将自身的第一心跳报文上报到网关,网关可以通过串口从边界路由中获取第一邻居表信息,然后由网关将第一邻居表信息、第二邻居表信息和第一心跳报文上报到云端,由云端生成zigbee网络系统的网络拓扑图。具体的,如图6所示,该方法包括:
[0109]
步骤611,检测边界路由节点是否达到上报时间阈值;若为是,则执行步骤620。
[0110]
步骤612,转发节点检测是否达到上报时间阈值;若为是,则执行步骤630。
[0111]
步骤613,终端节点检测是否达到上报时间阈值;若是,则执行步骤640。
[0112]
步骤620,网关通过串口获取边界路由节点的第一邻居表信息。
[0113]
在具体实施例中,用户可以在网关中设定上报触发条件,当满足该上报触发条件时,则确认达到上报时间阈值,对应的,该网关通过串口来获取边界路由节点的第一邻居表信息,并将第一邻居表信息上报到云端。
[0114]
该上报触发条件可根据实际需要来设定,举例来说,该触发条件可以为某一设定时间段中的随机时间点,该设定时间段可以为每天的凌晨3点到凌晨4点之间。
[0115]
在一实施例中,该上报触发条件还可以是距离zigbee网络系统中的设备发生变化的时长达到第一时长,其中,zigbee网络系统中的设备发生变化可以是有新设备加入zigbee网络系统,还可以是之前在zigbee网络系统中的设备被删除,该第一时长可根据实际需要进行设定,例如为半个小时。
[0116]
在一实施例中,该上报触发条件还可以是距离网关中的代理进程重启后的时长达到第二时长,该第二时长可根据实际需要设定,例如第二时长为20分钟,半个小时等。
[0117]
步骤630,转发节点通过zigbee无线报文的方式将自身的第二邻居表信息上报到网关。
[0118]
步骤640,终端节点将自身的第一心跳报文上报到网关。
[0119]
在一些实施例中,转发节点和终端节点可以按照设定的上报周期来向网关上报,当达到对应的上报周期时,可以视为达到对应的上报时间阈值。进一步的,网关也可以按照为边界路由节点设定的上报周期获取第一邻居表信息。
[0120]
该上报周期可以根据实际需要进行设定,为转发节点和为终端节点所设定的上报周期可以相同也可以不同,在此不进行具体限定。
[0121]
可以理解的是,由于zigbee网络系统中会有新设备加入,也可能会有设备被删除,
当zigbee网络系统中的设备发生变化时,对应需要对该zigbee网络系统的网络拓扑图进行更新,而网络拓扑图的更新频率取决于节点上报信息的上报周期,因此,用户可根据实际需要来设定各个节点上报信息的上报周期。在具体实施例中,对于比较稳定的zigbee网络系统,可以将该上报周期的值可以设定为较大的值,从而减少zigbee网络系统中的无效报文,防止网络报文阻塞;对于不稳定的zigbee网络系统,可以将该上报周期的值可以设定为较小的值,从而便于进行网络拓扑图的及时更新。
[0122]
步骤650,云端获取第一邻居表信息、第二邻居表信息和第一心跳报文,并生成网络拓扑图。
[0123]
具体的,网关可以按照设定的网关上报周期将第一邻居表信息、第二邻居表信息和第一心跳报文上报到云端,从而,云端可以按照本技术的方法来生成网络拓扑图。
[0124]
图7是根据本技术一示例性实施例的方法所生成的网络拓扑图的示意图,如图7所示,当用户触发页面中的“网络拓扑图”这一控件,可以在界面中显示网络拓扑图。在显示网络拓扑图的页面中可以在查询输入框中输出所要查询目标设备的设备标识(设备名称、设备型号等),从而,可以在所显示的网络拓扑图中定位到目标设备所对应图例所在的位置。该查询输入框中还可以显示当前的时间。
[0125]
如图7所示,通过虚线的有向线段来表示设备之间的邻居关系(例如父子关系)在该虚线的有向线段上标注了对应的信号质量值和对应的信号质量等级(优、良、中、差),例如,在设备2与设备5之间的通信链路上的信号质量值为67,所对应的信号质量等级为中。
[0126]
该网络拓扑图中,通过实线的有向线段表示设备当前所在的数据传输链路,在图7中,设备9当前所在的数据传输链路为设备6指向设备9的数据链路和由设备9指向设备13的数据链路。
[0127]
进一步的,在该网络拓扑图中,还可以按照第一设定显示模式显示网络系统中的离线的设备对应的图例,以及按照第二设定显示模式显示无效的设备对应的图例,第一设定显示模式与第二设定显示模式不同,第一设定显示模式可以是图例的显示颜色为第一颜色,第二设定显示模式可以是图例的显示颜色为第二颜色,第二颜色与第一颜色不同。当然,在其他实施例中,第一设定显示模式与第二设定显示模式还可以是其他模式,在此不进行具体限定。
[0128]
进一步的,如图7所示,界面中还提供了“设备列表”控件,若用户触发该“设备列表”控件,可以跳转显示网络系统中的设备列表的页面中。当然,图7仅仅是示例性举例,不能认为是对本技术使用范围的限制。
[0129]
图8是根据本技术一实施例示出的一种为网络系统生成网络拓扑图的装置的框图,如图8所示,该为网络系统生成网络拓扑图的装置800包括:获取模块810和生成模块820。
[0130]
获取模块810,用于获取边界路由节点的第一邻居表信息、获取转发节点的第二邻居表信息和获取终端节点的第一心跳报文,第一心跳报文包含终端节点的下一跳地址信息;生成模块820,用于根据第一邻居表信息、第二邻居表信息和下一跳地址信息,生成网络系统的网络拓扑图。
[0131]
在本技术的一些实施例中,生成模块820还包括:第一获取单元、第一生成单元、第二获取单元、第二生成单元、第三生成单元和第四生成单元。
[0132]
第一获取单元,用于从第一邻居表信息获取边界路由节点所对应邻居设备的第一地址信息;第一生成单元,用于根据边界路由节点的设备标识和第一地址信息,生成第一拓扑关系图;第二获取单元,用于从转发节点的第二邻居表信息获取转发节点所对应邻居设备的第二地址信息;第二生成单元,用于根据转发节点的设备标识和第二地址信息,生成第二拓扑关系图;第三生成单元,用于根据终端节点的设备标识和下一跳地址信息,生成第三拓扑关系图;第四生成单元,用于根据将第一拓扑关系图、第二拓扑关系图和第三拓扑关系图进行组合,得到网络系统的网络拓扑图。
[0133]
在本技术的一些实施例中,第一生成单元包括:第一获取子单元和第一生成子单元。第一获取子单元,用于根据第一地址信息,获取边界路由节点所对应邻居设备的设备标识;第一生成子单元,用于按照边界路由节点与边界路由节点所对应邻居设备之间的邻居关系,添加由边界路由节点所对应邻居设备的设备标识指向边界路由节点的设备标识的有向线段,生成第一拓扑关系图。
[0134]
在本技术的一些实施例中,第二生成单元包括:第二获取子单元和第二生成子单元。第二获取子单元,用于根据第二地址信息,获取转发节点所对应邻居设备的设备标识;第二生成子单元,用于按照转发节点与转发节点所对应邻居设备之间的邻居关系,添加由转发节点所对应邻居设备的设备标识指向转发节点的设备标识的有向线段,生成第二拓扑关系图。
[0135]
在本技术的一些实施例中,第三生成单元包括:第三获取子单元和第三生成子单元。第三获取子单元,用于根据下一跳地址信息,获取终端节点所对应下一跳设备的设备标识;第三生成子单元,用于按照终端节点与终端节点的下一跳设备之间的关系,添加由终端节点的设备标识指向终端节点所对应下一跳设备的设备标识的有向线段,生成第三关系拓扑图。
[0136]
在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:第一标注模块,用于根据第一心跳报文在网络拓扑图上标注终端节点与终端节点所对应下一跳设备之间的数据传输方向。
[0137]
在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:第二心跳报文获取模块和第二标注模块。
[0138]
第二心跳报文获取模块,用于获取转发节点的第二心跳报文,第二心跳报文包含转发节点的下一跳地址信息;第二标注模块,用于根据第二心跳报文在网络拓扑图上标注转发节点与转发节点所对应下一跳设备之间的数据传输方向。
[0139]
在本技术的一些实施例中,第一邻居表信息还包含边界路由节点与边界路由节点所对应邻居设备之间的通信链路上的信号质量值;第二邻居表信息还包含转发节点与转发节点所对应邻居设备之间的通信链路上的信号质量值;第一心跳报文包含终端节点与终端节点所对应下一跳设备之间的通信链路上的信号质量值;在本实施例中,为网络系统生成网络拓扑图的装置还包括:
[0140]
信号质量标注模块,用于根据边界路由节点与边界路由节点所对应邻居设备之间的通信链路上的信号质量值、转发节点与转发节点所对应邻居设备之间的通信链路上的信号质量值和终端节点与终端节点所对应下一跳设备之间的通信链路上的信号质量值,在网络拓扑图上进行信号质量标注。
[0141]
在本技术的一些实施例中,为网络系统生成网络拓扑图的装置还包括:网络拓扑图显示模块,用于发送网络拓扑图至显示设备上,以在显示设备上显示网络拓扑图。
[0142]
本技术实施例还提供了一种电子设备,如图9所示,该电子设备900包括处理器910以及一个或多个存储器920,一个或多个存储器920用于存储被处理器910执行的程序指令,处理器910执行程序指令时实施上述的为网络系统生成网络拓扑图的方法。该电子设备可以是网关等。
[0143]
进一步地,处理器910可以包括一个或者多个处理核。处理器910运行或执行存储在存储器920内的指令、程序、代码集或指令集,以及调用存储在存储器920内的数据。可选地,处理器910可以采用数字信号处理(digital signal processing,dsp)、现场可编程门阵列(field-programmable gate array,fpga)、可编程逻辑阵列(programmable logic array,pla)中的至少一种硬件形式来实现。处理器910可集成中央处理器(central processing unit,cpu)、图像处理器(graphics processing unit,gpu)和调制解调器等中的一种或几种的组合。其中,cpu主要处理操作系统、用户界面和应用程序等;gpu用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器中,单独通过一块通信芯片进行实现。
[0144]
本技术实施例中一种计算机可读存储介质,其上存储有计算机可读指令,当计算机可读指令被处理器执行时,实现如上所述的为网络系统生成网络拓扑图的方法及相关设备。
[0145]
计算机可读存储介质可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。可选地,计算机可读存储介质包括非易失性计算机可读介质(non-transitory computer-readable storage medium)。计算机可读存储介质具有执行上述方法中的任何方法步骤的程序代码的存储空间。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。程序代码可以例如以适当形式进行压缩。
[0146]
上述内容,仅为本发明的较佳示例性实施例,并非用于限制本发明的实施方案,本领域普通技术人员根据本发明的主要构思和精神,可以十分方便地进行相应的变通或修改,故本发明的保护范围应以权利要求书的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献