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

网络的拓扑信息的生成和网络故障的定界方法、装置与流程

2022-06-01 10:35:16 来源:中国专利 TAG:


1.本技术涉及互联网技术领域,具体而言,本技术涉及一种网络的拓扑信息的生成方法、装置、电子设备及计算机可读存储介质,以及一种网络故障的定界方法、装置、电子设备及计算机可读存储介质。


背景技术:

2.传统网络都是基于ip(internet protocol,网际协议)路由进行转发控制,无法解决实际业务网络拓扑中物理网络和业务网络的边界问题。vpc(virtual private cloud,虚拟私有云)网络虽然实现私有网络按需定义,但仍然无法解决实际网络状况下物理网络和业务网络的边界问题,尤其在sdn(software defined network,软件定义网络)网络overlay(sdn的一种实现方式)场景下,网络边界在云的物理服务器终端节点内部转发成为黑盒,大大增加了分布式业务系统的全链路故障定界的难度。
3.由于当前传统网络故障定界仅聚焦在物理网络,在vpc网络成为主流网络的场景下,基于ip路由的传统网络的拓扑计算方法无法满足当前要求,尤其无法真实描述vpc网络中多节点下的业务网络拓扑信息,给网络故障定界带来了更大的困难。


技术实现要素:

4.本技术提供了一种网络故障的定界方法、装置、电子设备及计算机可读存储介质,可以解决基于ip路由的传统网络的拓扑计算方法无法满足当前要求,尤其无法真实描述vpc网络中多节点下的业务网络拓扑信息,给网络故障定界带来了更大的困难的问题。所述技术方案如下:
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.从所述软件定义网络控制器中获取虚拟扩展局域网vxlan隧道中逐跳网络节点的节点信息;所述vxlan隧道的起点为所述服务器层中的任一服务器,终点为所述服务器层中的除所述任一服务器之外的任一其它服务器,或者,为所述物理层中的虚拟私有云网关;
30.基于所述节点信息生成所述vxlan隧道的隧道拓扑,并建立所述隧道拓扑与所述网络标识的第一映射关系。
31.优选地,所述从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息,并建立所述第一配置信息与所述网络标识的第二映射关系,包括:
32.从所述至少两个代理组件中获取各自对应的服务器中的物理网卡标识和虚拟网卡标识;
33.建立所述物理网卡标识、虚拟网卡标识,以及所述网络标识相互之间的第二映射关系。
34.优选地,所述获取与所述网络进行通信的外部网络的第二配置信息,并建立所述第二配置信息与所述网络标识的第三映射关系,包括:
35.获取所述外部网络的地址信息和网络地址转换信息;
36.建立所述地址信息、所述网络地址转换信息,以及所述网络标识相互之间的第三映射关系。
37.优选地,所述从所述业务层的负载均衡系统中获取业务会话的会话标识,并建立所述会话标识与所述第一配置信息的第四映射关系,包括:
38.从所述负载均衡系统中获取所述业务层中各个业务网络节点各自对应的会话标识;
39.当所述第一配置信息中包括虚拟网卡标识时,建立所述会话标识与所述虚拟网卡
标识的第一子映射关系,并将所述第一子映射关系作为所述第四映射关系;
40.当所述第一配置信息中不包括虚拟网卡标识时,建立所述会话标识与所述物理网卡标识的第二子映射关系,并将所述第二子映射关系作为所述第四映射关系。
41.优选地,从所述负载均衡系统中获取所述负载均衡系统的第三配置信息,并建立所述第三配置信息与所述会话标识的第五映射关系,包括:
42.从所述负载均衡系统中获取所述负载均衡系统的虚拟业务地址信息;
43.建立所述虚拟业务地址信息与所述会话标识中的实际业务地址信息的第五映射关系。
44.另一方面,提供了一种网络故障的定界方法,该方法包括:
45.基于所述网络的全链路的拓扑信息对所述全链路中的各条链路进行健康检测;所述拓扑信息通过第一方面所述的网络的拓扑信息的生成方法得到;
46.当检测到至少一条目标链路为非健康状态时,获取所述至少一条目标链路各自对应的故障信息;
47.基于所述故障信息确定出所述全链路中的故障节点,并基于所述故障节点对所述拓扑信息进行更新,得到更新后的拓扑信息。
48.优选地,所述基于所述网络的全链路的拓扑信息对所述全链路中的各条链路进行健康检测,包括:
49.基于所述拓扑信息对所述全链路中的各条链路分别发送链路探测报文;
50.当在任一链路中发送探测报文成功时,判定所述任一链路为健康状态;否则,判定所述任一链路为非健康状态。
51.优选地,所述当检测到至少一条目标链路为非健康状态时,获取所述至少一条目标链路各自对应的故障信息,包括:
52.当检测到至少一条目标链路为非健康状态时,从软件定义网络控制器、代理组件、负载均衡系统中的至少一项,获取所述至少一条目标链路各自对应的故障信息。
53.优选地,所述基于所述故障信息确定出所述全链路中的故障节点,并基于所述故障节点对所述拓扑信息进行更新,得到更新后的拓扑信息,包括:
54.基于所述故障信息确定出所述全链路中的故障节点,以及与所述故障节点具有关联关系的下游节点;
55.在所述拓扑信息中对所述故障节点和所述下游节点的信息进行更新,得到更新后的拓扑信息。
56.另一方面,提供了一种网络的拓扑信息的生成装置,其特征在于,所述网络包括物理层、服务器层和业务层;所述装置包括:
57.第一处理模块,用于建立所述物理层与所述网络中虚拟私有云网络的网络标识的第一映射关系;
58.第二处理模块,用于建立所述服务器层与所述网络标识的第二映射关系;
59.第三处理模块,用于建立与所述网络进行通信的外部网络与所述网络标识的第三映射关系;
60.第四处理模块,用于建立所述业务层与所述服务器层的第四映射关系;
61.第五处理模块,用于建立访问所述业务层的业务会话与所述服务器层的第五映射
关系;
62.第六处理模块,用于基于所述第一映射关系、所述第二映射关系、所述第三映射关系、所述第四映射关系,以及所述第五映射关系生成所述网络的拓扑信息。
63.优选地,所述第一处理模块具体用于:
64.从软件定义网络控制器中获取物理层中至少两个物理网络节点的节点信息;基于至少两个物理网络节点的节点信息生成物理层网络拓扑;建立所述物理层网络拓扑与所述网络中虚拟私有云网络的网络标识的第一映射关系。
65.优选地,所述第二处理模块具体用于:
66.从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息;建立所述第一配置信息与所述网络标识的第二映射关系;所述至少两个代理组件各自部署在一一对应的服务器中。
67.优选地,所述第三处理模块具体用于:
68.获取与所述网络进行通信的外部网络的第二配置信息;建立所述第二配置信息与所述网络标识的第三映射关系。
69.优选地,所述第四处理模块具体用于:
70.从所述业务层的负载均衡系统中获取业务会话的会话标识;建立所述会话标识与所述第一配置信息的第四映射关系。
71.优选地,所述第五处理模块具体用于:
72.从所述业务层的负载均衡系统中获取所述负载均衡系统的第三配置信息;建立所述第三配置信息与所述会话标识的第五映射关系。
73.优选地,所述第一处理模块具体用于:
74.从所述软件定义网络控制器中获取虚拟扩展局域网vxlan隧道中逐跳网络节点的节点信息;所述vxlan隧道的起点为所述服务器层中的任一服务器,终点为所述服务器层中的除所述任一服务器之外的任一其它服务器,或者,为所述物理层中的虚拟私有云网关;基于所述节点信息生成所述vxlan隧道的隧道拓扑,并建立所述隧道拓扑与所述网络标识的第一映射关系。
75.优选地,所述第二处理模块具体用于:
76.从所述至少两个代理组件中获取各自对应的服务器中的物理网卡标识和虚拟网卡标识;建立所述物理网卡标识、虚拟网卡标识,以及所述网络标识相互之间的第二映射关系。
77.优选地,所述第三处理模块具体用于:
78.获取所述外部网络的地址信息和网络地址转换信息;建立所述地址信息、所述网络地址转换信息,以及所述网络标识相互之间的第三映射关系。
79.优选地,所述第四处理模块具体用于:
80.从所述负载均衡系统中获取所述业务层中各个业务网络节点各自对应的会话标识;当所述第一配置信息中包括虚拟网卡标识时,建立所述会话标识与所述虚拟网卡标识的第一子映射关系,并将所述第一子映射关系作为所述第四映射关系;当所述第一配置信息中不包括虚拟网卡标识时,建立所述会话标识与所述物理网卡标识的第二子映射关系,并将所述第二子映射关系作为所述第四映射关系。
81.优选地,所述第五处理模块具体用于:
82.从所述负载均衡系统中获取所述负载均衡系统的虚拟业务地址信息;建立所述虚拟业务地址信息与所述会话标识中的实际业务地址信息的第五映射关系。
83.另一方面,提供了一种网络故障的定界装置,该装置包括:
84.检测模块,用于基于所述网络的全链路的拓扑信息对所述全链路中的各条链路进行健康检测;所述拓扑信息通过第一方面所述的网络的拓扑信息的生成方法得到;
85.获取模块,用于当检测到至少一条目标链路为非健康状态时,获取所述至少一条目标链路各自对应的故障信息;
86.更新模块,用于基于所述故障信息确定出所述全链路中的故障节点,并基于所述故障节点对所述拓扑信息进行更新,得到更新后的拓扑信息。
87.优选地,所述检测模块,包括:
88.发送子模块,用于基于所述拓扑信息对所述全链路中的各条链路分别发送链路探测报文;
89.判定子模块,用于当在任一链路中发送探测报文成功时,判定所述任一链路为健康状态;否则,判定所述任一链路为非健康状态。
90.优选地,所述获取模块具体用于:
91.当检测到至少一条目标链路为非健康状态时,从软件定义网络控制器、代理组件、负载均衡系统中的至少一项,获取所述至少一条目标链路各自对应的故障信息。
92.优选地,所述更新模块具体用于:
93.基于所述故障信息确定出所述全链路中的故障节点,以及与所述故障节点具有关联关系的下游节点;在所述拓扑信息中对所述故障节点和所述下游节点的信息进行更新,得到更新后的拓扑信息。
94.另一方面,提供了一种电子设备,该电子设备包括:
95.处理器、存储器和总线;
96.所述总线,用于连接所述处理器和所述存储器;
97.所述存储器,用于存储操作指令;
98.所述处理器,用于通过调用所述操作指令,可执行指令使处理器执行如本技术的第一方面所示的网络的拓扑信息的生成方法对应的操作。
99.另一方面,提供了一种电子设备,该电子设备包括:
100.处理器、存储器和总线;
101.所述总线,用于连接所述处理器和所述存储器;
102.所述存储器,用于存储操作指令;
103.所述处理器,用于通过调用所述操作指令,可执行指令使处理器执行如本技术的第二方面所示的网络故障的定界方法对应的操作。
104.另一方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本技术第一方面所示的网络的拓扑信息的生成方法。
105.另一方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本技术第二方面所示的网络故障的定界方法。
106.本技术提供的技术方案带来的有益效果是:
107.在本发明实施例中,云监控建立物理层与网络中虚拟私有云网络的网络标识的第一映射关系、建立服务器层与网络标识的第二映射关系、建立与网络进行通信的外部网络与网络标识的第三映射关系、建立业务层与服务器层的第四映射关系,以及,建立访问业务层的业务会话与服务器层的第五映射关系,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成网络的拓扑信息,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
附图说明
108.为了更清楚地说明本技术实施例中的技术方案,下面将对本技术实施例描述中所需要使用的附图作简单地介绍。
109.图1为本技术一个实施例提供的一种网络故障的定界方法和一种网络的拓扑信息的生成方法的应用环境示意图;
110.图2为本技术图1的应用环境的拓扑信息示意图;
111.图3为本技术一个实施例提供的一种网络的拓扑信息的生成方法的流程示意图;
112.图4为本技术一个实施例提供的一种网络故障的定界方法的流程示意图;
113.图5为本技术中vxlan报文的具体结构示意图;
114.图6为本技术中vxlan隧道示意图;
115.图7为本技术图2调整后的拓扑信息示意图;
116.图8为本技术图2的更新后的拓扑信息示意图;
117.图9为本技术又一实施例提供的一种网络的拓扑信息的生成装置的结构示意图;
118.图10为本技术又一实施例提供的一种网络故障的定界装置的结构示意图;
119.图11为本技术又一实施例提供的一种网络的拓扑信息的生成的电子设备的结构示意图;
120.图12为本技术又一实施例提供的一种网络故障的定界的电子设备的结构示意图。
具体实施方式
121.下面详细描述本技术的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本技术,而不能解释为对本发明的限制。
122.本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本技术的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在
中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
123.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术实施方式作进一步地详细描述。
124.首先对本技术涉及的几个名词进行介绍和解释:
125.vpc:virtual private cloud,虚拟私有云,一种私有网络,泛指公有云的私有网络,本技术涵盖公有云、私有云等各种数据中心的vpc私有网络。
126.sdn:software defined network,软件定义网络,sdn是网络虚拟化的一种实现方式。其核心技术openflow通过将网络设备的控制面与数据面分离开来,从而实现了网络流量的灵活控制,使网络作为管道变得更加智能,为核心网络及应用的创新提供了良好的平台,而非传统网络基于ip(internet protocol,网际协议)、路由转发。
127.vpc网关:虚拟私有云网关,vpc网络的终结节点,在本技术中,vpc网关包括但不限于vxlan(virtual extensible local area network,虚拟扩展局域网)网关。vxlan是一种网络虚拟化技术,可以改进大型云计算在部署时的扩展问题,是对vlan(virtual local area network,虚拟局域网)的一种扩展。vxlan是一种功能强大的工具,可以穿透三层网络对二层进行扩展。它可通过封装流量并将其扩展到第三层网关,以此来解决vms(virtual memory system,虚拟内存系统)的可移植性限制,使其可以访问在外部ip子网上的服务器。
128.dpdk:data plane development kit,数据平面开发套件,一种高速网卡转发套件。dpdk主要基于linux系统运行,用于快速数据包处理的函数库与驱动集合,可以极大提高数据处理性能和吞吐量,提高数据平面应用程序的工作效率。在本技术中,dpdk应用在服务器的网卡上,可以理解为网卡的驱动程序。
129.overlay/underlay:sdn网络的两种实现方式,underlay是终结节点在物理层的实现方式,overlay相对于underlay是在物理层上叠加一层。
130.vf:virtual function,虚拟网卡,vfc网络尤其在支持dpdk的高速网卡场景下,一张物理网卡可以被虚拟成多网卡。
131.本技术提供的网络故障的定界方法、装置、电子设备和计算机可读存储介质,旨在解决现有技术的如上技术问题。
132.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
133.本发明实施例提供了一种网络故障的定界方法的应用环境,参见图1,该应用环境包括:业务层、服务器层、物理层,以及云监控。
134.业务层:包括负载均衡系统和至少两个业务网络节点。业务网络节点用于对业务会话进行基于应用层的处理,负载均衡系统用于对各个业务网络节点进行业务会话的分摊。其中,业务网络节点包括但不限于云数据库、分布式存储。
135.服务器层:包括与业务会话对应的至少两个服务器,至少两个服务器中包括至少一个源服务器和至少一个目的服务器。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云计算服务的云服务器。
136.物理层:包括至少一个物理网络节点,用于对业务会话进行基于链路层的处理。其
中,物理网络节点包括但不限于:接入交换机、汇聚交换机、vxlan网关。
137.云监控:用于对业务层、服务器层、物理层中的任一链路、端口、节点等进行监控,当检测到故障时对全网络全链路进行故障的定界。
138.为方便理解,图2示出了图1的应用环境的拓扑示意图。其中,以源服务器(虚拟网卡)为起点,以目的服务器(虚拟网卡)为终点,或者,以vpc网关为终点,起点和终点之间的部分就是vpc网络,也就是说,本技术中的网络为从业务层到物理层的、端到端的全链路网络,vpc网络为该网络中的一个部分。
139.云监控通过sdn控制器获取vpc网络中各个节点的配置信息、通过各个服务器中的代理组件获取各个服务器的配置信息,以及通过负载均衡系统获取业务会话的相关信息,然后基于各个配置信息和相关信息生成全链路的拓扑信息,具体的生成方式在后文中会进行详细说明。
140.相应地,云监控通过sdn控制器、代理组件和负载均衡系统还可以获取故障信息,然后基于故障信息进行全链路的故障的定界。具体的实施方式在后文中会进行详细说明。
141.进一步,当业务会话的终点为vpc网络中的目的服务器时,表示业务会话不需要到达外部网络。比如,某栋楼中的不同楼层部署在同一vpc网络,每个楼层都部署了服务器,那么一楼的用户a的业务会话经过一楼的服务器到达二楼的服务器,再经过二楼的服务器即可到达二楼的用户b。
142.当业务会话的终点为vpc网关时,表示业务会话需要到达外部网络。比如,接上例,用户a需要访问谷歌网站,那么用户a的业务会话经过一楼的服务器到达vpc网关,再经过vpc发送至外部网络。
143.进一步,在上述应用环境中可以执行一种网络的拓扑信息的生成方法,如图3所示,该网络包括物理层、服务器层和业务层;该方法包括:
144.步骤s301,建立所述物理层与所述网络中虚拟私有云网络的网络标识的第一映射关系;
145.步骤s302,建立所述服务器层与所述网络标识的第二映射关系;
146.步骤s303,建立与所述网络进行通信的外部网络与所述网络标识的第三映射关系;
147.步骤s304,建立所述业务层与所述服务器层的第四映射关系;
148.步骤s305,建立访问所述业务层的业务会话与所述服务器层的第五映射关系;
149.步骤s306,基于所述第一映射关系、所述第二映射关系、所述第三映射关系、所述第四映射关系,以及所述第五映射关系生成所述网络的拓扑信息。
150.在本发明实施例中,云监控建立物理层与网络中虚拟私有云网络的网络标识的第一映射关系、建立服务器层与网络标识的第二映射关系、建立与网络进行通信的外部网络与网络标识的第三映射关系、建立业务层与服务器层的第四映射关系,以及,建立访问业务层的业务会话与服务器层的第五映射关系,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成网络的拓扑信息,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓
扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
151.进一步,在上述应用环境中还可以执行一种网络故障的定界方法,如图4所示,该方法可以应用在云监控中,该方法包括:
152.步骤s401,基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测;
153.网络的全链路的拓扑信息生成完成之后,云监控可以基于拓扑信息对全链路中的各条链路进行健康检测,以确保每条链路的连通。其中,拓扑信息通过步骤s301~步骤s306所示的网络的拓扑信息的生成方法得到。
154.步骤s402,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息;
155.当云监控通过步骤s401检测到至少一条目标链路为非健康状态时,可以获取每条目标链路各自对应的故障信息,从而基于故障信息对全链路进行故障的定界。
156.步骤s403,基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。
157.云监控获取到故障信息后,可以基于故障信息确定出全链路中的故障节点,然后在拓扑信息中对故障节点对应的拓扑信息进行更新,得到更新后的拓扑信息,并将更新后的拓扑信息进行展示。
158.在本发明实施例中,云监控基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,然后基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。这样,在实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视的基础上,云监控可以基于全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到非健康状态的目标链路时,确定出目标链路中的故障节点,并基于故障节点对拓扑信息进行更新,实现了对全链路的网络故障的快速定界,不仅避免了大量的人工检测,而且也解决了分布式业务下全链路的网络故障的定界难度大的问题。
159.在本发明实施例中,对步骤s301~步骤s306中的各个步骤进行详细说明。
160.在本发明一种优选实施例中,步骤s301包括:
161.从软件定义网络控制器中获取物理层中至少两个物理网络节点的节点信息;
162.基于至少两个物理网络节点的节点信息生成物理层网络拓扑;
163.建立物理层网络拓扑与网络中虚拟私有云网络的网络标识的第一映射关系。
164.其中,物理网络节点的节点信息包括但不限于:标识信息、地址信息、下一跳信息。这样,基于节点信息即可确定出各个物理网络节点之间的连接关系,从而生成物理层网络拓扑。
165.生成物理层网络拓扑之后,即可创建一个虚拟私有云网络的网络标识,并将物理层网络拓扑与该网络标识建立第一映射关系。其中,虚拟私有云网络的网络标识可以是vpc id(identity document,身份标识号),也可以是其它形式的标识,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
166.在本发明一种优选实施例中,步骤s301包括:
167.从软件定义网络控制器中获取虚拟扩展局域网vxlan隧道中逐跳网络节点的节点信息;vxlan隧道的起点为服务器层中的任一服务器,终点为服务器层中的除任一服务器之外的任一其它服务器,或者,为物理层中的虚拟私有云网关;
168.基于节点信息生成vxlan隧道的隧道拓扑,并建立隧道拓扑与网络标识的第一映射关系。
169.在本发明实施例中,由于各个物理网络节点的节点信息已经预先配置完成,所以,在实际应用中,当各个物理网络节点连接完成后,在物理上已经实现了各个物理网络节点之间的连通,形成一条链路,这条链路就是vxlan隧道。
170.通过vxlan可以使得处于不同网络中的两台终端在“逻辑上”位于“同一个”链路层网络中,而与两台终端直接相连的节点也在逻辑上构建了一条在虚拟链路中的通道vxlan tunnel,这样的节点称之为“vxlan隧道终端”(vxlan tunnel end point,vtep)。vtep作为起点时,可以是服务器层中的任一服务器;作为终点时,可以是服务器层中除该任一服务器之外的任一其它服务器,或者,是物理层中的vpc网关。
171.进一步,sdn是vpc网络的控制面实现方式的一种,vpc网络的转发控制是基于sdn实现的(不是传统的基于每台交换机路由器来做转发控制)。所以,sdn控制器可以获取各个物理网络节点的节点信息,然后将各个节点信息上报至云监控,云监控基于各个节点信息生成拓扑信息,也就是就是vxlan隧道的拓扑信息,再创建一个vpc网络的网络标识,并将拓扑信息与该网络标识建立第一映射关系。其中,拓扑信息包括但不限于vxlan隧道的隧道标识。
172.进一步,云监控除了可以创建vpc的网络标识之外,还可以创建其它参数,vpc网络的主要参数如表1所示:
173.表1
[0174][0175][0176]
其中,vni被封装在vxlan报文中的header部分,vxlan报文的具体结构如图5所示。
[0177]
为方便理解,图6示出了vxlan隧道的示意图。其中,虚拟机监视器1包括虚拟机1、
虚拟机3,以及vtep 1;虚拟机监视器2包括虚拟机2、虚拟机4,以及vtep 2;vxlan网关包括vtep 3。vtep 1、vtep 2、vtep 3均与网络节点连接。虚拟机1、虚拟机2、vxlan网关部署在同一个vpc网络中,vpc id为vpc12345,虚拟机1与虚拟机2通过vxlan隧道1进行通信,vxlan隧道1的vni为1000;虚拟机3、虚拟机4、vxlan网关部署在另一个vpc网络中,vpc id为vpc45678,虚拟机3与vxlan网关通过vxlan隧道2进行通信,vxlan隧道2的vni为1001。
[0178]
具体映射包括:
[0179]
vpc12345和vni 1000进行一一映射;vpc45678和vni 1001进行一一映射。
[0180]
虚拟机1在报文出虚拟网卡(虚拟机1中的虚拟网卡)时进行封装,进入vtep(vni 1000的vxlan隧道1),首个报文经过vxlan网关识别后,后续报文直接转发到虚拟机2并在虚拟机2的虚拟网卡进行解封装。
[0181]
虚拟机3在报文出虚拟网卡(虚拟机3中的虚拟网卡)时进行封装,进入vtep(vni 1001的vxlan隧道2),首个报文经过vxlan网关识别后,后续报文直接转发到虚拟机4并在虚拟机4的虚拟网卡进行解封装,当虚拟机3有需要跨vpc网络转发报文,经识别目的地址不在本vpc网络,经vxlan网关进行转发。比如,剥离vxlan报文中header后直接转发到其它vpc网络,或者,剥离vxlan报文中header后经过转换再转发到其它vpc网络。
[0182]
其中,第一个报文类似广播报文,需要vxlan网关来解析并确定vxlan隧道,vxlan隧道确认后vtep就直接转发,不再经vxlan网关了。
[0183]
需要说明的是,云监控可以基于至少两个物理网络节点的节点信息生成物理层网络拓扑,以及建立物理层网络拓扑与网络中虚拟私有云网络的网络标识的第一映射关系,也可以是sdn控制器基于至少两个物理网络节点的节点信息生成物理层网络拓扑,以及建立物理层网络拓扑与网络中虚拟私有云网络的网络标识的第一映射关系,然后将第一映射关系上报至云监控,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
[0184]
在本发明一种优选实施例中,步骤s302包括:
[0185]
从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息;
[0186]
建立第一配置信息与网络标识的第二映射关系;至少两个代理组件各自部署在一一对应的服务器中。
[0187]
其中,服务器层中的每个服务器中都一一部署了代理组件,代理组件用于向云监控上报服务器的第一配置信息,第一配置信息包括但不限于服务器的物理网卡标识、虚拟网卡标识。云监控接收到各个第一配置信息后,即可建立各个第一配置信息与网络标识的第二映射关系。
[0188]
在本发明一种优选实施例中,步骤s302包括:
[0189]
从至少两个代理组件中获取各自对应的服务器中的物理网卡标识和虚拟网卡标识;
[0190]
建立物理网卡标识、虚拟网卡标识,以及网络标识相互之间的第二映射关系。
[0191]
具体而言,每个代理组件获取与其一一对应的服务器的第一配置信息,也就是物理网卡标识和虚拟网卡标识,然后将第一配置信息上报至云监控,云监控建立物理网卡标识、虚拟网卡标识、网络标识相互之间的第二映射关系。
[0192]
比如,服务器层包括服务器a、b、c,其中,服务器a中部署了代理组件a,服务器b中
部署了代理组件b,服务器c中部署了代理组件c。那么,a用于将a的第一配置信息config a上报至云监控,config a包括但不限于a的物理网卡标识和虚拟网卡标识;b用于将b的第一配置信息config b上报至云监控,config b包括但不限于b的物理网卡标识和虚拟网卡标识;c用于将c的第一配置信息config c上报至云监控,config c包括但不限于c的物理网卡标识和虚拟网卡标识。
[0193]
云监控接收到config a、config b以及config c之后,分别建立config a与网络标识的第二映射关系、建立config b与网络标识的第二映射关系以及建立config c与网络标识的第二映射关系。也就是说,网络标识同时与config a、config b以及config c具有映射关系。
[0194]
需要说明的是,在实际应用中,服务器中一定会部署物理网卡,但不一定会部署虚拟网卡,所以,当服务器中没有部署虚拟网卡时,代理组件上报服务器的物理网卡标识即可,云监控接收到物理网卡标识后,建立物理网卡标识与网络标识的第二映射关系即可。
[0195]
进一步,第一配置信息中除了可以包括物理网卡标识和虚拟网卡标识外,还可以包括物理网卡的状态信息。在实际应用中,为了防止由于物理网卡损坏导致服务器断连的情况,服务器中可能部署了不止一块物理网卡,但是在正常情况下,一块物理网卡工作即可。那么在这种情况下,代理组件还可以获取每块网卡的状态信息,状态信息可以包括工作状态和非工作状态,然后将状态信息上报至云监控,云监控对每块物理网卡和各自对应的状态信息进行记录。这样,在云监控对全链路进行监控的时候,当检测到服务器进行物理网卡切换时,云监控可以基于切换后的物理网卡对全链路的拓扑信息进行更新。
[0196]
需要说明的是,除了可以由云监控建立第二映射关系之外,还可以先由代理组件建立第二映射关系,然后代理组件将第二映射关系上报至云监控,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
[0197]
在本发明一种优选实施例中,步骤s303包括:
[0198]
获取与网络进行通信的外部网络的第二配置信息;
[0199]
建立第二配置信息与网络标识的第三映射关系。
[0200]
其中,外部网络可以是与vxlan网关连接的互联网,第二配置信息包括但不限于外部网络的地址信息和nat(network address translation,网络地址转换)信息。云监控接收到第二配置信息后,即可建立第二配置信息与网络标识的第二映射关系。
[0201]
在本发明一种优选实施例中,步骤s303包括:
[0202]
获取外部网络的地址信息和网络地址转换信息;
[0203]
建立地址信息、网络地址转换信息,以及网络标识相互之间的第三映射关系。
[0204]
具体而言,云监控从外部网络获取外部网络的地址信息和nat信息,然后建立地址信息、nat信息、网络标识相互之间的第三映射关系。
[0205]
在本发明一种优选实施例中,步骤s304包括:
[0206]
从业务层的负载均衡系统中获取业务会话的会话标识;
[0207]
建立会话标识与第一配置信息的第四映射关系。
[0208]
其中,业务会话可以是用户发起的,每个业务会话都具有会话标识。云监控接收到会话标识后,即可建立会话标识与第一配置信息的第二映射关系。
[0209]
在本发明一种优选实施例中,步骤s304包括:
[0210]
从负载均衡系统中获取业务层中各个业务网络节点各自对应的会话标识;
[0211]
当第一配置信息中包括虚拟网卡标识时,建立会话标识与虚拟网卡标识的第一子映射关系,并将第一子映射关系作为第四映射关系;
[0212]
当第一配置信息中不包括虚拟网卡标识时,建立会话标识与物理网卡标识的第二子映射关系,并将第二子映射关系作为第四映射关系。
[0213]
具体而言,负载均衡系统获取业务层中各个业务网络节点各自处理的业务会话的会话标识,然后将各个会话标识上报到云监控,云监控将各个会话标识与第一配置信息建立第四映射关系。
[0214]
进一步,当第一配置信息中包括虚拟网卡标识时,云监控建立会话标识与虚拟网卡标识的第一子映射关系,并将第一子映射关系作为第四映射关系。
[0215]
当第一配置信息中不包括虚拟网卡标识时,云监控建立会话标识与物理网卡标识的第二子映射关系,并将第二子映射关系作为第四映射关系。
[0216]
需要说明的是,第一子映射关系、第二子映射关系,以及第四映射关系仅仅只是为了方便理解的举例说明。也就是说,当第一配置信息中包括虚拟网卡标识时,第一子映射关系就是第四映射关系;当第一配置信息中不包括虚拟网卡标识时,第二子映射关系就是第四映射关系。第一子映射关系、第二子映射关系,以及第四映射关系之间并不存在等级关系等。
[0217]
需要说明的是,除了可以由云监控建立第四映射关系之外,还可以先由负载均衡系统建立第四映射关系,然后负载均衡系统将第四映射关系上报至云监控,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
[0218]
在本发明一种优选实施例中,步骤s305包括:
[0219]
从负载均衡系统中获取负载均衡系统的第三配置信息;
[0220]
建立第三配置信息与会话标识的第五映射关系。
[0221]
其中,会话标识中还可以包括实际业务地址信息;第三配置信息包括但不限于负载均衡系统的虚拟业务地址信息。实际业务地址信息可以是业务网络节点的地址信息,虚拟业务地址信息可以是负载均衡系统的地址信息。
[0222]
在本发明一种优选实施例中,步骤s305包括:
[0223]
从负载均衡系统中获取负载均衡系统的虚拟业务地址信息;
[0224]
建立虚拟业务地址信息与会话标识中的实际业务地址信息的第五映射关系。
[0225]
具体而言,云监控获取到负载均衡系统的虚拟业务地址信息和各个会话标识各自对应的实际业务地址信息后,即可建立虚拟业务地址信息和各个实际业务地址信息的第五映射关系。也就是说,一个虚拟业务地址信息可以对应多个实际业务地址信息,比如,10.100.0.2~10.100.0.5的四个实际业务ip对应一个虚拟业务ip:10.200.0.2。
[0226]
需要说明的是,除了可以由云监控建立第四映射关系之外,还可以由负载均衡系统建立第五映射关系,然后负载均衡系统将第五映射关系上报至云监控,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
[0227]
进一步,云监控获取到第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系后,即可基于各个映射关系生成全链路网络的拓扑信息,具体地,将各个映射关系进行整合、拼接,即可建立各个物理网络节点和各个业务网络节点之间的、端
到端的拓扑路径。生成的拓扑信息可以如图2所示,然后将拓扑信息进行展示即可。
[0228]
需要说明的是,网络中各个物理网络节点和各个业务网络节点的数量不同,最后得到的拓扑信息也是不同的。比如,针对图2所示的拓扑信息,当各个物理网络节点和各个业务网络节点的数量不同时,生成的拓扑信息可以如图7所示。
[0229]
进一步,本发明实施例中的网络在接收到用户发起的业务请求时,可以执行如下操作:
[0230]
1)负载均衡系统接收到业务请求(假设业务请求为访问外部网络)时,云监控获取负载均衡系统的虚拟业务地址信息,然后基于拓扑信息中的映射关系确定出与虚拟业务地址信息对应的实际业务地址信息;
[0231]
2)云监控基于实际业务地址信息确定出对应的虚拟网卡标识,或,物理网卡标识(也就是确定出服务器);
[0232]
3)云监控基于拓扑信息中的映射关系确定出与虚拟网卡标识,或,物理网卡标识对应的vpc id;
[0233]
4)云监控基于拓扑信息中的映射关系确定出与vpc id对应的vxlan隧道、外部网络的地址信息,以及nat信息;
[0234]
5)云监控基于拓扑信息中的映射关系确定出与外部网络的地址信息对应的外部网络,业务请求通过vxlan隧道发送至外部网络。
[0235]
在本发明实施例中,云监控从软件定义网络控制器中获取物理层中至少两个物理网络节点的节点信息,并基于至少两个物理网络节点的节点信息生成物理层网络拓扑,以及建立物理层网络拓扑与网络的网络标识的第一映射关系,进一步,从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息,并建立第一配置信息与网络标识的第二映射关系;至少两个代理组件各自部署在一一对应的服务器中,进一步,获取与网络进行通信的外部网络的第二配置信息,并建立第二配置信息与网络标识的第三映射关系,进一步,从业务层的负载均衡系统中获取业务会话的会话标识,并建立会话标识与第一配置信息的第四映射关系,进一步,从负载均衡系统中获取负载均衡系统的第三配置信息,并建立第三配置信息与会话标识的第五映射关系,进一步,基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
[0236]
进一步,云监控可以从负载均衡系统中获取业务层的各种信息、从代理组件中获取各个服务器各自对应的各种信息,以及从sdn控制器中获取各个物理网络节点各自对应的各种信息,从而实现了云监控对全链路中各个节点的信息的自动化运维管理,避免了大量的人工配置操作,提升了运维管理效率。
[0237]
在另一个实施例中继续对如图4所示的一种网络故障的定界方法进行详细说明。
[0238]
步骤s401,基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测;
[0239]
网络的全链路的拓扑信息生成完成之后,云监控可以基于拓扑信息对全链路中的
各条链路进行健康检测,以确保每条链路的连通。其中,拓扑信息通过步骤s301~步骤s306所示的网络的拓扑信息的生成方法得到。
[0240]
在本发明一种优选实施例中,基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,包括:
[0241]
基于拓扑信息对全链路中的各条链路分别发送链路探测报文;
[0242]
当在任一链路中发送探测报文成功时,判定任一链路为健康状态;否则,判定任一链路为非健康状态。
[0243]
具体而言,云监控可以基于拓扑信息向全链路中各条链路的起点分别发送链路探测报文,如果链路探测报文从起点能够到达终点,那么就可以判定链路是连通的,链路为健康状态;如果链路探测报文从起点不能够到达终点,那么就可以判定链路是不连通的,链路为非健康状态。其中,每条链路的起点可以是负载均衡系统,终点可以是vpc网关或者服务器。
[0244]
进一步,健康检测可以是云监控经过预设的时间间隔后发起,比如,每隔10分钟,云监控发起健康检测;也可以在接收到用户触发的检测指令时,发起健康检测;当然,还可以通过其它方式发起健康检测,在实际应用中可以根据实际需求进行设置,本发明实施例对此不作限制。
[0245]
步骤s402,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息;
[0246]
当云监控通过步骤s401检测到至少一条目标链路为非健康状态时,可以获取每条目标链路各自对应的故障信息,从而基于故障信息对全链路进行故障的定界。
[0247]
在本发明一种优选实施例中,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,包括:
[0248]
当检测到至少一条目标链路为非健康状态时,从软件定义网络控制器、代理组件、负载均衡系统中的至少一项,获取至少一条目标链路各自对应的故障信息。
[0249]
具体而言,由于每条链路的信息是通过sdn控制器、代理组件、负载均衡系统共同上报至云监控,所以,当云监控检测到至少一条非健康状态的目标链路时,可以通过sdn控制器、代理组件、负载均衡系统中的至少一项来获取每条目标链路各自对应的故障信息。
[0250]
其中,故障信息包括但不限于链路标识、节点标识、节点中的端口标识、时间信息。节点标识为出现故障的节点的标识,包括物理网络节点、服务器、业务网络节点;端口标识为出现故障的节点中出现故障的端口;时间信息为生成故障信息的时间。
[0251]
步骤s403,基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。
[0252]
云监控获取到故障信息后,可以基于故障信息确定出全链路中的故障节点,然后在拓扑信息中对故障节点对应的拓扑信息进行更新,得到更新后的拓扑信息,并将更新后的拓扑信息进行展示。
[0253]
在本发明一种优选实施例中,基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息,包括:
[0254]
基于故障信息确定出全链路中的故障节点,以及与故障节点具有关联关系的下游节点;
[0255]
在拓扑信息中对故障节点和下游节点的信息进行更新,得到更新后的拓扑信息。
[0256]
具体而言,云监控除了可以基于故障信息确定出全链路中的故障节点之后,还可以确定出与故障节点具有关联关系的下游节点,然后在拓扑信息中对故障节点和下游节点的信息进行更新,得到更新后的拓扑信息。
[0257]
比如,针对图2所示的拓扑信息,假设云监控检测到某个接入交换机为故障节点,由于与该接入交换机具有关联关系的下游节点为三台服务器,同时,每台服务器又具有关联关系的下游节点,也就是业务网络节点(负载均衡系统用于为各个业务网络节点分摊业务会话,所以负载均衡系统并不属于业务网络节点的下游节点),所以,云监控在全链路的拓扑信息中将各个业务网络节点、各台服务器、接入交换机采用不同的颜色进行标记,得到如图8所示的拓扑信息。这样,用户看到更新后的拓扑信息,可以一目了然出现故障的节点。
[0258]
进一步,本发明实施例除了可以基于故障信息对拓扑信息进行更新,还可以基于切换信息对拓扑信息进行更新。其中,切换信息为全链路中任一节点的终端设备,或者终端设备中的硬件发生切换时生成的信息。云监控可以在获取到切换信息后对拓扑信息进行更新,从而得到更新后的拓扑信息。比如,某个服务器中部署了物理网卡a和物理网卡b,当前物理网卡a为工作状态,物理网卡b为非工作状态,当前的拓扑信息中的记录为物理网卡a为工作状态。当将物理网卡a切换为非工作状态,将物理网卡b切换为工作状态时,生成切换信息,并通过该服务器中的代理组件将切换信息上报至云监控,云监控基于切换信息对当前的拓扑信息进行更新,得到更新后的拓扑信息。
[0259]
在本发明实施例中,云监控基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,然后基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。这样,在实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视的基础上,云监控可以基于全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到非健康状态的目标链路时,确定出目标链路中的故障节点,并基于故障节点对拓扑信息进行更新,实现了对全链路的网络故障的快速定界,不仅避免了大量的人工检测,而且也解决了分布式业务下全链路的网络故障的定界难度大的问题。
[0260]
图9为本技术又一实施例提供的一种网络的拓扑信息的生成装置的结构示意图,网络包括物理层、服务器层和业务层,如图9所示,本实施例的装置可以包括:
[0261]
第一处理模块901,用于建立物理层与网络中虚拟私有云网络的网络标识的第一映射关系;
[0262]
第二处理模块902,用于建立服务器层与网络标识的第二映射关系;
[0263]
第三处理模块903,用于建立与网络进行通信的外部网络与网络标识的第三映射关系;
[0264]
第四处理模块904,用于建立业务层与服务器层的第四映射关系;
[0265]
第五处理模块905,用于建立访问业务层的业务会话与服务器层的第五映射关系;
[0266]
第六处理模块906,用于基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成网络的拓扑信息。
[0267]
在本发明一种优选实施例中,第一处理模块具体用于:
[0268]
从软件定义网络控制器中获取物理层中至少两个物理网络节点的节点信息;基于至少两个物理网络节点的节点信息生成物理层网络拓扑;建立物理层网络拓扑与网络中虚拟私有云网络的网络标识的第一映射关系。
[0269]
在本发明一种优选实施例中,第二处理模块具体用于:
[0270]
从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息;建立第一配置信息与网络标识的第二映射关系;至少两个代理组件各自部署在一一对应的服务器中。
[0271]
在本发明一种优选实施例中,第三处理模块具体用于:
[0272]
获取与网络进行通信的外部网络的第二配置信息;建立第二配置信息与网络标识的第三映射关系。
[0273]
在本发明一种优选实施例中,第四处理模块具体用于:
[0274]
从业务层的负载均衡系统中获取业务会话的会话标识;建立会话标识与第一配置信息的第四映射关系。
[0275]
在本发明一种优选实施例中,第五处理模块具体用于:
[0276]
从业务层的负载均衡系统中获取负载均衡系统的第三配置信息;建立第三配置信息与会话标识的第五映射关系。
[0277]
在本发明一种优选实施例中,第一处理模块具体用于:
[0278]
从软件定义网络控制器中获取虚拟扩展局域网vxlan隧道中逐跳网络节点的节点信息;vxlan隧道的起点为服务器层中的任一服务器,终点为服务器层中的除任一服务器之外的任一其它服务器,或者,为物理层中的虚拟私有云网关;基于节点信息生成vxlan隧道的隧道拓扑,并建立隧道拓扑与网络标识的第一映射关系。
[0279]
在本发明一种优选实施例中,第二处理模块具体用于:
[0280]
从至少两个代理组件中获取各自对应的服务器中的物理网卡标识和虚拟网卡标识;建立物理网卡标识、虚拟网卡标识,以及网络标识相互之间的第二映射关系。
[0281]
在本发明一种优选实施例中,第三处理模块具体用于:
[0282]
获取外部网络的地址信息和网络地址转换信息;建立地址信息、网络地址转换信息,以及网络标识相互之间的第三映射关系。
[0283]
在本发明一种优选实施例中,第四处理模块具体用于:
[0284]
从负载均衡系统中获取业务层中各个业务网络节点各自对应的会话标识;当第一配置信息中包括虚拟网卡标识时,建立会话标识与虚拟网卡标识的第一子映射关系,并将第一子映射关系作为第四映射关系;当第一配置信息中不包括虚拟网卡标识时,建立会话标识与物理网卡标识的第二子映射关系,并将第二子映射关系作为第四映射关系。
[0285]
在本发明一种优选实施例中,第五处理模块具体用于:
[0286]
从负载均衡系统中获取负载均衡系统的虚拟业务地址信息;建立虚拟业务地址信息与会话标识中的实际业务地址信息的第五映射关系。
[0287]
在本发明实施例中,云监控从软件定义网络控制器中获取物理层中至少两个物理网络节点的节点信息,并基于至少两个物理网络节点的节点信息生成物理层网络拓扑,以及建立物理层网络拓扑与网络的网络标识的第一映射关系,进一步,从服务器层的至少两个代理组件中获取各自对应的服务器的第一配置信息,并建立第一配置信息与网络标识的
第二映射关系;至少两个代理组件各自部署在一一对应的服务器中,进一步,获取与网络进行通信的外部网络的第二配置信息,并建立第二配置信息与网络标识的第三映射关系,进一步,从业务层的负载均衡系统中获取业务会话的会话标识,并建立会话标识与第一配置信息的第四映射关系,进一步,从负载均衡系统中获取负载均衡系统的第三配置信息,并建立第三配置信息与会话标识的第五映射关系,进一步,基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
[0288]
进一步,云监控可以从负载均衡系统中获取业务层的各种信息、从代理组件中获取各个服务器各自对应的各种信息,以及从sdn控制器中获取各个物理网络节点各自对应的各种信息,从而实现了云监控对全链路中各个节点的信息的自动化运维管理,避免了大量的人工配置操作,提升了运维管理效率。
[0289]
图10为本技术又一实施例提供的一种网络故障的定界装置的结构示意图,如图10所示,本实施例的装置可以包括:
[0290]
检测模块1001,用于基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测;其中,拓扑信息通过步骤s301~步骤s306所示的网络的拓扑信息的生成方法得到;
[0291]
获取模块1002,用于当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息;
[0292]
更新模块1003,用于基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。
[0293]
在本发明一种优选实施例中,检测模块,包括:
[0294]
发送子模块,用于基于拓扑信息对全链路中的各条链路分别发送链路探测报文;
[0295]
判定子模块,用于当在任一链路中发送探测报文成功时,判定任一链路为健康状态;否则,判定任一链路为非健康状态。
[0296]
在本发明一种优选实施例中,获取模块具体用于:
[0297]
当检测到至少一条目标链路为非健康状态时,从软件定义网络控制器、代理组件、负载均衡系统中的至少一项,获取至少一条目标链路各自对应的故障信息。
[0298]
在本发明一种优选实施例中,更新模块具体用于:
[0299]
基于故障信息确定出全链路中的故障节点,以及与故障节点具有关联关系的下游节点;在拓扑信息中对故障节点和下游节点的信息进行更新,得到更新后的拓扑信息。
[0300]
本实施例的网络故障的定界装置可执行本技术第一个实施例、第三个实施例所示的网络故障的定界方法,其实现原理相类似,此处不再赘述。
[0301]
在本发明实施例中,云监控基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,然后基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。这样,在实现了底层的物理网络节点和上层的业务
网络节点之间全链路的拓扑信息的端到端可视的基础上,云监控可以基于全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到非健康状态的目标链路时,确定出目标链路中的故障节点,并基于故障节点对拓扑信息进行更新,实现了对全链路的网络故障的快速定界,不仅避免了大量的人工检测,而且也解决了分布式业务下全链路的网络故障的定界难度大的问题。
[0302]
本技术的又一实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:云监控建立物理层与网络中虚拟私有云网络的网络标识的第一映射关系、建立服务器层与网络标识的第二映射关系、建立与网络进行通信的外部网络与网络标识的第三映射关系、建立业务层与服务器层的第四映射关系,以及,建立访问业务层的业务会话与服务器层的第五映射关系,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成网络的拓扑信息,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
[0303]
在一个可选实施例中提供了一种电子设备,如图11所示,图11所示的电子设备11000包括:处理器11001和存储器11003。其中,处理器11001和存储器11003相连,如通过总线11002相连。可选地,电子设备11000还可以包括收发器11004。需要说明的是,实际应用中收发器11004不限于一个,该电子设备11000的结构并不构成对本技术实施例的限定。
[0304]
处理器11001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器11001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0305]
总线11002可包括一通路,在上述组件之间传送信息。总线11002可以是pci总线或eisa总线等。总线11002可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0306]
存储器11003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0307]
存储器11003用于存储执行本技术方案的应用程序代码,并由处理器11001来控制执行。处理器11001用于执行存储器11003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。
[0308]
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等
等的移动终端以及诸如数字tv、台式计算机等等的固定终端。
[0309]
本技术的又一实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,云监控建立物理层与网络中虚拟私有云网络的网络标识的第一映射关系、建立服务器层与网络标识的第二映射关系、建立与网络进行通信的外部网络与网络标识的第三映射关系、建立业务层与服务器层的第四映射关系,以及,建立访问业务层的业务会话与服务器层的第五映射关系,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成网络的拓扑信息,然后基于第一映射关系、第二映射关系、第三映射关系、第四映射关系,以及第五映射关系生成全链路的拓扑信息。通过上述方式建立各个映射关系,然后基于各个映射关系生成全链路的拓扑信息,不仅有效的打通了底层的物理网络节点和上层的业务网络节点之间的链路,自动生成全链路的拓扑信息。而且,对于分布式业务(如分布式存储、分布式数据库、消息中间件系统等),也有效解决了底层的物理网络节点和上层的业务网络节点的拓扑关联关系,实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视。
[0310]
本技术的又一实施例中提供了一种电子设备,该电子设备包括:存储器和处理器;至少一个程序,存储于存储器中,用于被处理器执行时,与现有技术相比可实现:在本发明实施例中,云监控基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,然后基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。这样,在实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视的基础上,云监控可以基于全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到非健康状态的目标链路时,确定出目标链路中的故障节点,并基于故障节点对拓扑信息进行更新,实现了对全链路的网络故障的快速定界,不仅避免了大量的人工检测,而且也解决了分布式业务下全链路的网络故障的定界难度大的问题。
[0311]
在一个可选实施例中提供了一种电子设备,如图12所示,图12所示的电子设备12000包括:处理器12001和存储器12003。其中,处理器12001和存储器12003相连,如通过总线12002相连。可选地,电子设备12000还可以包括收发器12004。需要说明的是,实际应用中收发器12004不限于一个,该电子设备12000的结构并不构成对本技术实施例的限定。
[0312]
处理器12001可以是cpu,通用处理器,dsp,asic,fpga或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本技术公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器12001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,dsp和微处理器的组合等。
[0313]
总线12002可包括一通路,在上述组件之间传送信息。总线12002可以是pci总线或eisa总线等。总线12002可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0314]
存储器12003可以是rom或可存储静态信息和指令的其他类型的静态存储设备,ram或者可存储信息和指令的其他类型的动态存储设备,也可以是eeprom、cd-rom或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介
质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
[0315]
存储器12003用于存储执行本技术方案的应用程序代码,并由处理器12001来控制执行。处理器12001用于执行存储器12003中存储的应用程序代码,以实现前述任一方法实施例所示的内容。
[0316]
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、pda(个人数字助理)、pad(平板电脑)、pmp(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字tv、台式计算机等等的固定终端。
[0317]
本技术的又一实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,在本发明实施例中,云监控基于网络的全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到至少一条目标链路为非健康状态时,获取至少一条目标链路各自对应的故障信息,然后基于故障信息确定出全链路中的故障节点,并基于故障节点对拓扑信息进行更新,得到更新后的拓扑信息。这样,在实现了底层的物理网络节点和上层的业务网络节点之间全链路的拓扑信息的端到端可视的基础上,云监控可以基于全链路的拓扑信息对全链路中的各条链路进行健康检测,当检测到非健康状态的目标链路时,确定出目标链路中的故障节点,并基于故障节点对拓扑信息进行更新,实现了对全链路的网络故障的快速定界,不仅避免了大量的人工检测,而且也解决了分布式业务下全链路的网络故障的定界难度大的问题。
[0318]
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
[0319]
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
再多了解一些

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

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

相关文献