一种生成拓扑图的方法、系统及电子设备与流程

您所在的位置:网站首页 switch集群 一种生成拓扑图的方法、系统及电子设备与流程

一种生成拓扑图的方法、系统及电子设备与流程

#一种生成拓扑图的方法、系统及电子设备与流程| 来源: 网络整理| 查看: 265

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.上述第二方面至第四方面中的各个方面以及各个方面可能达到的技术效果请参照上述针对第一方面或第一方面中的各种可能方案可以达到的技术效果说明,这里不再重复赘述。附图说明51.图1为本技术提供的一种第一物理拓扑图的层级的示意图;52.图2为本技术提供的一种第二物理拓扑图的层级的示意图;53.图3为本技术提供的一种逻辑拓扑图的层级的示意图;54.图4为本技术提供的一种生成拓扑图的方法的流程图;55.图5(a)为本技术提供的一种根据第一规则计算中心位置的示意图;56.图5(b)为本技术提供的一种根据第一规则确定中心位置的示意图;57.图6(a)为本技术提供的第一种根据第二规则确定中心位置的示意图;58.图6(b)为本技术提供的第二种根据第二规则确定中心位置的示意图;59.图7为本技术提供的一种实现第一物理拓扑图分类的示意图;60.图8为本技术提供的一种绘制第一折线的示意图;61.图9为本技术提供的一种绘制第二折线的示意图;62.图10为本技术提供的一种生成的第一拓扑图的示意图;63.图11为本技术提供的一种可能的第二物理拓扑图的示意图;64.图12为本技术提供的一种生成拓扑图的系统的示意图;65.图13为本技术提供的一种电子设备的结构的示意图。具体实施方式66.为便于本领域技术人员更好地理解本技术,下面先对本技术涉及的技术用语进行简单阐述。67.1、云安全资源池:采用虚拟化技术,将安全产品的软件从硬件中分离出来并运行在池化的虚拟环境中,使得多种安全产品可以直接运行在通用的物理服务器上,并由多台设备共同构成资源池。68.2、拓扑:拓扑对应不同的网络(例如,资源池网络、租户网络)、网络层次(两层、三层、四层等)或者网络视图(物理网络视图、业务网络视图、运维视图、租户视图);拓扑主要包含节点(node)、端口(termination-point)和链接(link)三个基本对象;所有的拓扑对象都可以是嵌套、层叠的。69.3、节点:节点代表网络中的一个具有某种网络功能的物理实体(如引流路由器、宿主机)、虚拟实体(如ovs交换机、虚拟安全设备)或抽象实体(如pod、waf服务、ips服务)。70.4、链接:链接唯一标识节点之间的连接关系。链接是点对点且单向的。因此一条链接包含源节点和目的节点,及源端点和目的端点。71.5、主备灾容:通过对主机业务使用的存储建立远程复制关系,主要应用于紧急情况下的容灾需求。72.在介绍完本技术涉及的技术用语后,下面介绍在本技术实施例中提供的一种可能的应用场景,在这里根据不同预设拓扑图类型来分别表示各层级网络节点的状态以及相邻层级之间的网络节点之间的关联。73.具体来说,网络节点包括但不限于:引流节点、集群交换机节点、资源池宿主机节点、虚拟安全设备节点、所有集群交换机节点、逻辑安全服务节点。74.详细来说:75.一个引流节点可以表征一个云安全资源池。76.一个集群交换机节点可以表征一台交换机,并且集群交换机为两台或两台以上的通过一定的方式相互连接的交换机。77.一个资源池宿主机节点可以表征一台部署了虚拟环境的物理服务器。78.一个虚拟安全设备节点可以表征一个用于一台资源池宿主机的安全服务的设备,例如,用于一台资源池宿主机的防火墙等。79.一个逻辑集群交换机节点可以表征所有资源池宿主机中包含的集群交换机类型的一种集群交换机类型,例如,sff(small form factor,小型化光纤连接器件)或tap(test access point,分路器)等。80.一个逻辑安全服务节点可以表征所有资源池宿主机中包含的安全服务类型中的一种类型,例如,防火墙等。81.上述这些网络节点以及他们之间的关联共同构成预设拓扑图类型,具体类型可以分为两种:物理拓扑图以及逻辑拓扑图,其中,用户视角包括运维开发人员的视角、用户使用的视角。82.物理拓扑图可以用于帮助运维开发人员排查节点问题,提高工作效率。逻辑拓扑图可以用于帮助用户在使用过程中了解当前运行节点的安全能力状态、使用情况等,以便辅助用户做出增设虚拟安全服务设备等的抉择。83.进一步地,还可以基于网络层次对物理拓扑图进行二次分类,对应为:第一物理拓扑图以及第二物理拓扑图。第一物理拓扑图对应为三层网络结构的拓扑图,第二物理拓扑图对应为四层网络结构的拓扑图。84.举例来说:85.第一物理拓扑图的层级结构可以参考表1所示:86.层级名称节点第一层pod引流节点第二层switch集群交换机节点第三层host资源池宿主机节点87.(表1)88.如上表1所示,在第一物理拓扑图中包括有三层网络结构:第一层对应包含引流节点(pod),第二层对应包含集群交换机节点(switch),第三层对应包含资源池宿主机节点(host),并且上述每个节点都对应为物理实体的节点。89.另外,第一物理拓扑图的层级示意图可以参考图1所示,在示意图中,分为三层:第一层有三个引流节点,分别为pod1、pod2、pod3;第二层有一个集群交换机节点,为switch1;第三层有四个资源池宿主机节点,分别为host1、host2、host3、host4。并且,第一层与第二层、第二层与第三层之间的节点可以实现双向连接。90.第二物理拓扑图的层级结构可以参考表2所示:91.层级名称节点第一层pod引流节点第二层switch集群交换机节点第三层host资源池宿主机节点第四层service虚拟安全设备节点92.(表2)93.如上表2所示,在第二物理拓扑图中包括有四层网络结构:第一层对应包含引流节点(pod),第二层对应包含集群交换机节点(switch),第三层对应包含资源池宿主机节点(host),第四层对应包含虚拟安全设备节点(service),并且上述每个节点都对应为物理实体或虚拟实体的节点。94.另外,第二物理拓扑图的层级示意图可以参考图2所示,在示意图中,分为四层:第一层有三个引流节点,分别为pod1、pod2、pod3;第二层有一个集群交换机节点,为switch1;第三层有三个资源池宿主机节点,分别为host1、host2、host3;第四层有七个虚拟安全设备节点,在此分别对应第三层的三个资源池主机节点,以对应第三层中第一资源池宿主机节点(host1)的虚拟安全设备节点为例,包含有三个虚拟安全设备节点,分别为nf(符号标识)、ips(internet protocol suite,互联网协议群)、waf(web application firewal,网站应用级入侵防御系统)。并且,第一层与第二层、第二层与第三层、第三层与第四层之间的节点可以实现双向连接。95.逻辑拓扑图的层级结构可以参考表3所示:96.层级名称节点第一层pod引流节点第二层switch集群交换机节点第三层sff、tap等逻辑集群交换机节点第四层service逻辑安全服务节点97.(表3)98.如上表3所示,在第二物理拓扑图中包括有四层网络结构:第一层对应包含引流节点(pod),第二层对应包含集群交换机节点(switch),第三层对应包含逻辑集群交换机节点(sff、tap等),第四层对应包含逻辑安全服务节点(services),并且上述每个节点都对应为虚拟实体或抽象实体的节点。99.另外,逻辑拓扑图的层级示意图可以参考图3所示,在示意图中,分为四层:第一层有三个引流节点,分别为pod1、pod2、pod3;第二层有一个集群交换机节点,为switch1;第三层有两个逻辑集群交换机节点,分别为sff、tap;第四层有五个逻辑安全服务节点,在此分别对应第三层的两个逻辑集群交换机节点,以对应第三层中第一逻辑集群交换机节点(sff)的逻辑安全服务节点为例,包含有三个逻辑安全服务节点,分别为nf、ips、waf。并且,第一层与第二层、第二层与第三层、第三层与第四层之间的节点可以实现双向连接。100.基于上述一种可能的应用场景,本技术实施例提供了一种生成拓扑图的方法、系统及电子设备,用于生成云安全资源池中数据的可视化拓扑图,解决现目前缺乏基于云安全资源池中的可视化展示方式的问题。101.下面结合附图对本技术实施例所提供的方法作出进一步详细说明。102.参阅图4所示,本技术实施例提供了一种生成拓扑图的方法,具体流程如下:103.步骤401:在获取到多个网络节点时,按照预设拓扑图类型,确定所述预设拓扑图类型对应网络结构中每层网络的中心位置;104.步骤402:根据每层网络的中心位置,分别计算每层网络中每个网络节点的节点位置;105.步骤403:根据每层网络中每个网络节点的节点位置,建立每层网络节点以及相邻层网络节点之间的关联,生成所述预设拓扑图类型对应的第一拓扑图。106.首先获取到多个网络节点,在这里获取的网络节点对应云安全资源池中的数据,然后根据预设拓扑图类型,包括第一物理拓扑图、第二物理拓扑图以及逻辑拓扑图,并通过计算确定预设拓扑图类型对应的网络结构中每层网络的中心位置。107.下面将针对确定中心位置的具体计算方式作详细的介绍。108.另外需要说明的是,在本技术实施例中,水平向右为坐标轴的水平正方向,垂直向下为坐标轴的垂直正方向。109.具体来说,首先获取第一层包含的引流节点的第一中心位置,然后根据第一中心位置依次确认第二层、第三层(以及第四层等)的第二中心位置、第三中心位置(以及第四中心位置等)。110.在这里,第一中心位置、第二中心位置以及第三中心位置的确认方式遵循第一规则,第四中心位置的确认遵循第二规则。111.需要说明的是,在本技术实施例中,上述规则为一种可能的实现方式,另外还包括其他可能的实现方式,例如,第一中心位置、第二中心位置遵循第一规则,第三中心位置、第四中心位置遵循第二规则等,在此不作具体阐述。112.第一规则:113.第一规则的布局为直线布局,首先获取第一中心位置(x0,y0)、预设网络节点之间的节点间距值l、预设网络节点之间的节点倾斜角度θ,然后计算得到第二层网络节点的第二中心位置(x1,y1)以及第三层网络节点的第三中心位置(x2,y2)。并且,第一中心位置、第二中心位置以及第三中心位置处于同一直线上。114.具体来说,单层网络节点的中心位置的计算公式如下公式1所示:115.(xi,yi)=(x0-i×l×cosθ,y0-i×l×sinθ)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(公式1)116.如上式所示,其中,(xi,yi)表示第i 1层网络节点的第i 1中心位置,i表示大于等于0的正整数,x0表示第一中心位置的水平坐标,y0表示第一中心位置的垂直坐标,l表示预设网络节点之间的节点间距值,θ表示预设网络节点之间的节点倾斜角度。117.举例来说,参考图5(a)所示,第一中心位置c0的坐标为(x0,y0),第二中心位置c1的坐标为(x0-1×l×cosθ,y0-1×l×sinθ),第三中心位置c2的坐标为x0-2×l×cosθ,y0-2×l×sinθ)。并且,连续两个中心位置之间的节点间距值l相同,节点倾斜角度θ相同。118.若预设拓扑图类型对应为第二物理拓扑图,则可以参考图5(b)所示,其中,第一中心位置c0为对应引流节点的第一层(pod层)的中心位置,第二中心位置c1为对应集群交换机节点的第二层(switch层)的中心位置,第三中心位置c2为对应资源池宿主机节点的第三层(host层)的中心位置。119.需要说明的是,在本技术实施例中,只是以第二物理拓扑图为例,其他拓扑图同理可得,在此不做具体阐述。120.第二规则:121.以第二物理拓扑图为例,根据获取第三中心位置c2(x2,y2)、预设网络节点之间的节点间距值gap、预设网络节点之间的节点倾斜角度θ,确认第四中心位置。122.在这里,第四中心位置可能存在多个,所有第四中心位置位于同一直线上,并且第四中心位置的数量等同于第三层包含的资源池宿主机节点的数量。123.具体来说,若第四层存在多个第四中心位置:第四中心位置1、第四中心位置2、……、第四中心位置n,其中,n为大于等于1的整数,那么第四中心位置的布局为:第四中心位置1为第三中心位置(x2,y2),第四中心位置2为第一左节点,第四中心位置3为第一右节点,……,若n为偶数则第四中心位置n为第左节点(若n为奇数则第四中心位置n为第右节点),以(x2,y2)作为第四中心位置1的坐标,具体计算公式如下公式2所示:[0124][0125]如上式所示,其中,li表示第i左节点,ri表示第i右节点,i为大于等于1的正整数,x2表示第四中心位置1的水平坐标,y2表示第四中心位置1的垂直坐标,gap表示预设网络节点之间的节点间距值,θ表示预设网络节点之间的节点倾斜角度。[0126]举例来说,当n为奇数时,以第二物理拓扑图的第四层有三个第四中心位置为例,参见图6(a)所示,其中,第四中心位置1(第三中心位置c2)的坐标为(x2,y2),第四中心位置2(第一左节点l1)的坐标为(x2-1×gap×cosθ,y2-1×gap×sinθ),第四中心位置3(第一右节点r1)的坐标为(x2 1×gap×cosθ,y2 1×gap×sinθ)。[0127]当n为偶数时,以第二物理拓扑图的第四层有四个第四中心位置为例,参见图6(b)所示,其中,第四中心位置1的坐标为(x2,y2),第四中心位置2(第一左节点l1)的坐标为(x2-1×gap×cosθ,y2-1×gap×sinθ),第四中心位置3(第一右节点r1)的坐标为(x2 1×gap×cosθ,y2 1×gap×sinθ),第四中心位置4(第二左节点l2)的坐标为(x2-2×gap×cosθ,y2-2×gap×sinθ)。[0128]在确定预设拓扑图类型对应的网络结构中每层网络的中心位置后,还需要确定预设拓扑图类型对应的网络结构中每层网络中包含的网络节点的数量。[0129]首先获取网络节点的节点标识,然后按照分类规则对预设拓扑图类型对应的网络节点进行分类,将预设拓扑图类型对应的网络结构中每层网络。若预设拓扑图类型为第一物理拓扑图,那将对应分为三层;若为详细版拓扑图或逻辑拓扑图,那将对应分为四层。[0130]具体来说,在这里的每个网络节点都对应一个节点标识,节点标识可以具体表示为一个或多个具体的数值,根据节点标识对网络节点进行划分,将网络节点归纳到预设拓扑图类型对应网络结构中的每层网络中。需要说明的是,在这里节点标识与网络层级的对应关系可以自行设定。[0131]第一物理拓扑图的分类规则可以参考如下表4所示:[0132]层级节点节点标识第一层引流节点第一节点标识第二层集群交换机节点第二节点标识第三层资源池宿主机节点第三节点标识[0133](表4)[0134]第二物理拓扑图的分类规则可以参考如下表5所示:[0135]层级节点节点标识第一层引流节点第一节点标识第二层集群交换机节点第二节点标识第三层资源池宿主机节点第三节点标识第四层虚拟安全设备节点第四节点标识[0136](表5)[0137]逻辑拓扑图的分类规则可以参考如下表6所示:[0138]层级节点节点标识第一层引流节点第一节点标识第二层集群交换机节点第二节点标识第三层逻辑集群交换机节点第三节点标识第四层逻辑安全服务节点第四节点标识[0139](表6)[0140]举例来说,以设定的第一物理拓扑图的分类规则为例:[0141]假设:第一节点标识对应“1”、第二节点标识对应“4096-4097”、第三节点标识对应“8192-9197”。[0142]那么:若网络节点的取值为“1”,那么该网络节点为“引流节点”,对应第一物理拓扑图的第一层;[0143]若网络节点的取值为“4096-4097”,那么该网络节点为“集群交换机节点”,对应第一物理拓扑图的第二层;[0144]若网络节点的取值为“8192-9197”,那么该网络节点为“资源池宿主机节点”,对应第一物理拓扑图的第三层。[0145]在这里,上述举例说明中的第一物理拓扑图的分类规则具体实现的代码部分可以参考图7所示。[0146]在确定预设拓扑图类型对应的网络结构中每层网络中包含的网络节点的数量后,便可以前面得到的预设拓扑图类型对应网络结构中每层网络的中心位置,分别计算每层网络中每个网络节点的节点位置。[0147]第三规则的布局为椭圆布局,首先获取第四中心位置(椭圆中心位置)、椭圆长轴参数a、椭圆短轴参数b,然后通过计算确定第四层中包含的网络节点的节点位置。并且,通过一个第四位置中心确认的节点位置处于同一椭圆上。[0148]具体来说,为了使得计算的第四层中网络节点的节点位置分布效果平衡,在本技术实施例中选取从椭圆布局的左端开始绘制的方法,即获取分布起始角度sa,终止角度ea,并计算n个节点的平均角度ava,然后根据上述参数计算出第i个网络节点的圆心角θi,具体公式参见如下公式3所示:[0149][0150]如上式所示,其中,sa为分布起始角度,ea为终止角度,ava为节点的平均角度,θi为第i个网络节点的圆心角。[0151]根据第i个网络节点的圆心角,可以得到第i个网络节点的节点位置,计算公式如下公式4所示:[0152](xi,yi)=(x cosθi×a,y sinθi×b)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(公式4)[0153]如上式所示,其中,(xi,yi)为第i个网络节点的节点位置,x为椭圆中心位置的水平坐标,y为椭圆中心位置的垂直坐标,θi为第i个网络节点的圆心角,a为椭圆的长轴,b为椭圆的短轴。[0154]在得到预设拓扑图类型对应网络结构中每层网络中每个网络节点的节点位置后,便可以根据确定的每层网络中每个网络节点的节点位置,建立每层网络节点以及相邻层网络节点之间的关联,生成所述预设拓扑图类型对应的第一拓扑图。[0155]首先根据每层网络中每个网络节点的节点位置,绘制拓扑图节点,在这里,一个所述节点位置对应一个所述拓扑图节点。然后,基于预设连线规则,通过预设连线规则绘制折线建立每层拓扑图节点以及相邻层拓扑图节点之间的关联。[0156]进一步,通过计算当前入流量与宽带总数的第一比值,为所述拓扑图节点以及所述折线添加对应的特征标识:若第一比值处于第一预设范围中,则添加第一特征标识;若第一比值处于第二预设范围中,则添加第二特征标识;若第一比值处于第三预设范围中,则添加第三特征标识。[0157]最后根据上述添加了特征标识的网络节点以及折线,生成预设拓扑图类型对应的第一拓扑图。[0158]具体来说,预设连线规则包括绘制一次折线以及二次折线的方法,下面对一次折线以及二次折线的绘制方法作详细的介绍。[0159]一次折线:[0160]一次折线用于连接两个拓扑图节点(起始点、终止点),具体来说通过起始点、终止点、固定角度(例:预设拓扑图节点之间的节点倾斜角度)、固定距离(起始点到转折点的长度),计算得到一次折线的转折点的坐标,将两个节点分别与转折点连接,构成第一折线。[0161]举例来说,第一折线的示意图可以参考图8所示,在绘制第一折线前需要确定起始点、终止点以及转折点的坐标。若有起始点s的坐标为(x1,y1),终止点d的坐标为(x2,y2),那么可以根据起始点和终止点的坐标计算得到转折点l的坐标为[0162]在这里提出一种可能的计算第一折线的转折点坐标的方法:[0163]已知:起始点s的坐标(x1,y1),终止点d的坐标(x2,y2),固定角度θ,固定距离l,并且y1<y2。[0164]计算:[0165]根据起始点s和终止点d的坐标,预设转折点l(x1-l×cosθ,y1 l×sinθ);[0166]计算起始点s与转折点l之间的垂直距离k=|y2-(y1 l×sinθ)|;[0167]计算终止点d与转折点l之间的水平距离j=|x2-(x1-l×cosθ)|;[0168]以转折点l与终止点d所在直线与水平的固定角度θ,建立第一方程式[0169]求解第一方程式得到固定距离[0170]根据固定距离l,计算得到转折点l的实际坐标为[0171]采用直线连接起始点与转折点、转折点与终止点,绘制第一折线。[0172]二次折线:[0173]二次折线用于连接两个拓扑图节点(起始点、终止点),具体来说通过起始点、终止点、固定角度(例:预设拓扑图节点之间的节点倾斜角度)、固定距离(起始点到转折点的长度),计算得到二次折线的第一转折点和第二转折点的坐标,将起始点与第一转折点、第一转折点与第二转折点、第二转折点与终止点连接,构成第二折线。在这里,起始点到第一转折点的距离与终止点到第二转折点的距离相等。[0174]举例来说,第二折线的示意图可以参考图9所示,在绘制第一折线前需要确定起始点、终止点、第一转折点以及第二转折点的坐标。若有起始点s的坐标为(x1,y1),终止点d的坐标为(x2,y2),那么可以根据起始点和终止点的坐标计算得到第一转折点l1的坐标为第二转折点l2的坐标为[0175]在这里提出一种可能的计算第二折线的转折点坐标的方法:[0176]已知:起始点s的坐标(x1,y1),终止点d的坐标(x2,y2),固定角度θ,固定距离l,并且y1<y2。[0177]计算:[0178]根据起始点s和终止点d的坐标,预设第一转折点l1(x1-l×cosθ,y1 l×sinθ)、第二转折点l2(x2 l×cosθ,y2-l×sinθ);[0179]计算第一转折点l1与第二转折点l2之间的垂直距离k=|(y2-l×sinθ)-(y1 l×sinθ)|;[0180]计算第一转折点l1与第二转折点l2之间的水平距离j=|(x2 l×cosθ)-(x1-l×cosθ)|;[0181]以第一转折点l1与第二转折点l2所在直线与水平的固定角度θ,建立第一方程式[0182]求解第一方程式得到固定距离[0183]根据固定距离l,计算得到第一转折点l1的实际坐标为第二转折点l2的实际坐标为[0184]采用直线连接起始点与第一转折点、第一转折点与第二转折点、第二转折点与终止点,绘制第二折线。[0185]在绘制拓扑图节点并使用折线建立拓扑图节点之间的关联后,需要为所述拓扑图节点以及所述折线添加对应的特征标识,特征表示的添加是依据计算的第一比值所述的预设范围来确定的。[0186]在这里,预设范围的数量可以根据需求自行设定,并不局限于本方案提到的三个预设范围,并且预设范围的具体设置也可以自行设定。[0187]另外,特征标识用于表示当前处于各个节点的流量大小,具体可以为颜色标识、数据标识等,在本技术实施例中以颜色标识为例,其他标识方式不作具体阐述。[0188]举例来说,首先计算当前入流量与宽带总数的第一比值,根据第一比值进行特征匹配,按照特征匹配表示为相应的节点或者折线添加对应的特征标识:[0189]若第一比值处于第一预设范围(0~0.5)中,则添加第一特征标识(绿色),表示正常状态;[0190]若第一比值处于第二预设范围(0.5~0.8)中,则添加第二特征标识(橙色),表示警告状态;[0191]若第一比值处于第三预设范围(0.8~1)中,则添加第三特征标识(红色),表示动态告警状态。[0192]根据上述添加了特征标识的拓扑图节点以及折线,生成预设拓扑图类型对应的第一拓扑图。[0193]举例来说,以第二物理拓扑图为预设拓扑图类型,生成的第一拓扑图可以参考图10所示,其中,包括一个引流节点,对应为第一层网络;三个集群交换机节点,对应为第二层网络;五个资源池宿主机节点,对应为第三层网络;六个虚拟安全设备节点,对应为第四层网络。[0194]另外,上述例子中的拓扑图节点(网络节点)以圆形表示,还可以使用其他定制图标表示,实现基于云安全资源池中数据的2.5d的可视化展示,一种可能的第二物理拓扑图的2.5d可视化展示可以参考图11所示。[0195]进一步,为了保证生成第一拓扑图的美观性,这里还提出一种使得第一拓扑图处于画布的正中间的方法,通过计算画布中用于放置第一拓扑图的画布中心位置,以调整生成的第一拓扑图的位置。[0196]具体来说,首先根据当前不同的电脑屏幕的尺寸,动态计算画布的画布宽度w以及画布高度h。[0197]然后,获取网络节点的单个节点高度h1、网络节点的节点总数n、预设网络节点之间的节点间距值l,并计算获取的网络节点的垂直高度h,计算公式如下公式1所示:[0198]h=h1×n l×(n-1)ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ(公式5)[0199]如上式所示,其中,h表示网络节点的垂直高度,h1表示网络节点的单个节点高度,n表示网络节点的节点总数,l表示预设网络节点之间的节点间距值。[0200]接着通过比较网络节点的垂直高度与画布宽度的大小,确定画布中心位置,在这里的画布中心位置将用于调整最终生成的拓扑图在画布中的摆布位置,即处于画布的中间。[0201]在上述方法基础上,本技术实施例还提出了模式切换情况下的基于云安全资源池中数据的可视化展示方法,保证了数据可视化展示切换过程中的稳定性,具体包括:[0202]主模式与备模式切换:[0203]当接收将主模式切换为备模式的第一指令时,保存并隐藏所述主模式下的第一拓扑图,在备模式下绘制并保存第二拓扑图;[0204]当接收将备模式切换为主模式的第二指令时,隐藏所述第二拓扑图,并显示所述第一拓扑图。[0205]第一物理拓扑图与第二物理拓扑图切换:[0206]当接收将第一物理拓扑图切换为第二物理拓扑图的第一指令时,保留所述第一物理拓扑图与所述第二物理拓扑图中共有的第一公共数据,并且绘制保存不共有的第一非公共数据;[0207]当接收将所述第二物理拓扑图切换为所述第一物理拓扑图的第二指令时,保留所述第一物理拓扑图与所述第二物理拓扑图中共有的第二公共数据,并且绘制保存不共有的第二非公共数据。[0208]物理拓扑图与逻辑拓扑图切换:[0209]当接收到物理拓扑图切换为逻辑拓扑图的第一指令时,清除当前的物理拓扑图,重新绘制逻辑拓扑图;[0210]当接收到逻辑拓扑图切换为物理拓扑图的第二指令时,清除当前的逻辑拓扑图,重新绘制物理拓扑图。[0211]通过本技术实施例中提出的方法,可以生成基于云安全资源池中数据的多角度可视化拓扑图,不仅方便用户直观地监测实时情况,辅助用户做出合理的增设抉择,还方便开发运维人员实时监测排除故障,提高了开发运维人员的工作效率。[0212]另外,通过添加特征标识的方法,可以展示当前出入各网络节点的流量大小,帮助用户以及开发运维人员及时甄别出异常风险点,保证了云安全资源池中数据的安全性。[0213]进一步,还通过模式切换的方法,实现多种切换模式下的无缝切换以及数据可视化展示,提高了当前云安全资源池中数据以及用户众多情况下的稳定性。[0214]基于同一发明构思,本技术还提供了一种生成拓扑图的系统,用以生成基于云安全资源池中数据的多角度可视化拓扑图,解决现目前缺乏基于云安全资源池中的可视化展示方式的问题,不仅方便用户直观地监测实时情况,辅助用户做出合理的增设抉择,还方便开发运维人员实时监测排除故障,提高了开发运维人员的工作效率。[0215]参见图12,该系统包括:[0216]确定单元121,用于在获取到多个网络节点时,按照预设拓扑图类型,确定所述预设拓扑图类型对应网络结构中每层网络的中心位置;[0217]计算单元122,用于根据每层网络的中心位置,分别计算每层网络中每个网络节点的节点位置;[0218]生成单元123,用于根据每层网络中每个网络节点的节点位置,建立每层网络节点以及相邻层网络节点之间的关联,生成所述预设拓扑图类型对应的第一拓扑图。[0219]在一种可能的设计中,所述确定单元121,具体用于:在获取到多个网络节点时,确定坐标轴的原点位置;若所述预设拓扑图类型为第一物理拓扑图,则将所述原点位置作为第一层网络的中心位置,并根据所述第一层网络的中心位置,确定所述预设拓扑图类型对应网络结构中每层网络的中心位置,其中,每层网络的中心位置处于第一直线上,所述第一直线与水平方向呈预设夹角;若所述预设拓扑图类型为第二物理拓扑图或逻辑拓扑图,则将所述原点位置作为第一层网络的中心位置,并根据所述第一层网络的中心位置,确定所述预设拓扑图类型对应网络结构中每层网络的中心位置,其中,除最后一层以外每层网络的中心位置处于第二直线上,最后一层网络的中心位置处于第三直线上,所述第二直线、第三直线与水平方向呈预设夹角。[0220]在一种可能的设计中,在所述确定单元121后,具体还用于根据所述网络节点的节点标识,分类所述网络节点,将所述网络节点归纳到所述预设拓扑图类型对应网络结构中的每层网络中。[0221]在一种可能的设计中,所述计算单元122,具体用于若所述预设拓扑图类型为第一物理拓扑图,则根据每层网络的中心位置,并按照网络层数的升序排列,分别计算每层网络中每个网络节点的节点位置,其中,每层网络的节点位置处于同一直线上,所述同一直线与水平方向呈预设夹角;若所述预设拓扑图类型为第二物理拓扑图或逻辑拓扑图,则根据每层网络的中心位置,并按照网络层数的升序排列,分别计算每层网络中每个网络节点的节点位置,其中,除最后一层以外每层网络的节点位置处于同一直线上,所述同一直线与水平方向呈预设夹角,最后一层网络的节点位置处于以最后一层网络的中心位置为核心的椭圆上。[0222]在一种可能的设计中,所述生成单元123,具体用于根据每层网络中每个网络节点的节点位置,绘制拓扑图节点,其中,一个所述节点位置对应一个所述拓扑图节点;基于预设连线规则,通过绘制折线建立每层拓扑图节点以及相邻层拓扑图节点之间的关联,其中,所述折线包括一次折线以及二次折线;通过计算当前入流量与宽带总数的第一比值,为所述拓扑图节点以及所述折线添加对应的特征标识;若所述第一比值处于第一预设范围中,则添加第一特征标识;若所述第一比值处于第二预设范围中,则添加第二特征标识;若所述第一比值处于第三预设范围中,则添加第三特征标识;根据添加所述特征标识的所述拓扑图节点以及所述折线,生成所述预设拓扑图类型对应的第一拓扑图。[0223]在一种可能的设计中,在所述生成单元123后,具体还用于当接收将主模式切换为备模式的第一指令时,保存并隐藏所述主模式下的第一拓扑图,在备模式下绘制并保存第二拓扑图;当接收将备模式切换为主模式的第二指令时,隐藏所述第二拓扑图,并显示所述第一拓扑图。[0224]在一种可能的设计中,在所述生成单元123后,具体还用于当接收将第一物理拓扑图切换为第二物理拓扑图的第一指令时,保留所述第一物理拓扑图与所述第二物理拓扑图中共有的第一公共数据,并且绘制保存不共有的第一非公共数据;当接收将所述第二物理拓扑图切换为所述第一物理拓扑图的第二指令时,保留所述第一物理拓扑图与所述第二物理拓扑图中共有的第二公共数据,并且绘制保存不共有的第二非公共数据。[0225]基于上述系统,生成基于云安全资源池中数据的多角度可视化拓扑图,不仅方便用户直观地监测实时情况,辅助用户做出合理的增设抉择,还方便开发运维人员实时监测排除故障,提高了开发运维人员的工作效率。[0226]另外,通过添加特征标识的方法,可以展示当前出入各网络节点的流量大小,帮助用户以及开发运维人员及时甄别出异常风险点,保证了云安全资源池中数据的安全性。[0227]进一步,还通过模式切换的方法,实现多种切换模式下的无缝切换以及数据可视化展示,提高了当前云安全资源池中数据以及用户众多情况下的稳定性。[0228]基于同一发明构思,本技术实施例中还提供了一种电子设备,所述电子设备可以实现前述一种生成拓扑图的系统的功能,参考图13,所述电子设备包括:[0229]至少一个处理器131,以及与至少一个处理器131连接的存储器132,本技术实施例中不限定处理器131与存储器132之间的具体连接介质,图13中是以处理器131和存储器132之间通过总线130连接为例。总线130在图6中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。总线130可以分为地址总线、数据总线、控制总线等,为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。或者,处理器131也可以称为控制器,对于名称不做限制。[0230]在本技术实施例中,存储器132存储有可被至少一个处理器131执行的指令,至少一个处理器131通过执行存储器132存储的指令,可以执行前文论述的生成拓扑图方法。处理器131可以实现图13所示的系统中各个单元的功能。[0231]其中,处理器131是该系统的控制中心,可以利用各种接口和线路连接整个该控制设备的各个部分,通过运行或执行存储在存储器132内的指令以及调用存储在存储器132内的数据,该系统的各种功能和处理数据,从而对该系统进行整体监控。[0232]在一种可能的设计中,处理器131可包括一个或多个处理单元,处理器131可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器131中。在一些实施例中,处理器131和存储器132可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。[0233]处理器131可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的生成拓扑图方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。[0234]存储器132作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器132可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器132是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器132还可以是电路或者其它任意能够实现存储功能的系统,用于存储程序指令和/或数据。[0235]通过对处理器131进行设计编程,可以将前述实施例中介绍的生成拓扑图方法所对应的代码固化到芯片内,从而使芯片在运行时能够执行图4所示的实施例的生成拓扑图方法的步骤。如何对处理器131进行设计编程为本领域技术人员所公知的技术,这里不再赘述。[0236]基于同一发明构思,本技术实施例还提供一种存储介质,该存储介质存储有计算机指令,当该计算机指令在计算机上运行时,使得计算机执行前文论述生成拓扑图方法。[0237]在一些可能的实施方式中,本技术提供的生成拓扑图方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在装置上运行时,程序代码用于使该控制设备执行本说明书上述描述的根据本技术各种示例性实施方式的生成拓扑图方法中的步骤。[0238]本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。[0239]本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。[0240]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。[0241]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。[0242]显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3