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

一种网络命令处理方法、装置、设备及存储介质与流程

2022-11-19 08:48:56 来源:中国专利 TAG:


1.本技术实施例涉及计算机技术领域,尤其涉及一种网络命令处理方法、装置、设备及存储介质。


背景技术:

2.在传统的网络设备管理中,通常使用命令行接口对网络设备进行操作,但是这种网络设备管理方式存在容易出错,大批网络设备的处理耗费人力等问题,因此产生了用于对网络设备进行管理的网络控制器(例如opendaylight、onos等网络控制器)。
3.目前,网络控制器对接模式一般都是南向通过设定协议跟网络设备对接,北向提供应用接口供用户二次开发。在跨区域的互联网数据中心中,为了实现容灾往往采用多区域、多机房部署模式,但是网络控制器是采用集中式架构进行开发的,网络控制器容易出现网络延迟或者不可送达导致网络命令下发失败的情况,网络控制器并不适配跨数据中心业务,网络设备管理效率较低。


技术实现要素:

4.本技术实施例提供一种网络命令处理方法、装置、设备及存储介质,以解决相关技术中网络控制器不适配跨数据中心业务,网络设备管理效率较低的技术问题,提高在跨数据中心业务中的网络设备管理效率。
5.在第一方面,本技术实施例提供了一种网络命令处理方法,包括:
6.轮询当前大区的命令数据库中的命令信息,所述命令信息包括网络命令、设备标识以及代理标识,其中,各个大区的命令数据库中的命令信息由各个大区配置的分配服务端提供,并且不同大区的命令数据库之间对接收到的命令信息进行同步,所述分配服务端提供的命令信息由用户端提供;
7.基于当前大区各个代理服务端对应的代理标识,从所述命令数据库的命令信息中获取目标命令信息;
8.根据所述目标命令信息对应的代理标识,向当前大区的代理服务端发送所述目标命令信息,由所述代理服务端根据所述目标命令信息对应的设备标识,向网络设备发送所述目标命令信息。
9.在第二方面,本技术实施例提供了一种网络命令处理装置,包括:包括命令查询模块、命令获取模块和命令转发模块,其中:
10.所述命令查询模块,配置为轮询当前大区的命令数据库中的命令信息,所述命令信息包括网络命令、设备标识以及代理标识,其中,各个大区的命令数据库中的命令信息由各个大区配置的分配服务端提供,并且不同大区的命令数据库之间对接收到的命令信息进行同步,所述分配服务端提供的命令信息由用户端提供;
11.所述命令获取模块,配置为基于当前大区各个代理服务端对应的代理标识,从所述命令数据库的命令信息中获取目标命令信息;
12.所述命令转发模块,配置为根据所述目标命令信息对应的代理标识,向当前大区的代理服务端发送所述目标命令信息,由所述代理服务端根据所述目标命令信息对应的设备标识,向网络设备发送所述目标命令信息。
13.在第三方面,本技术实施例提供了一种网络命令处理设备,包括:存储器以及一个或多个处理器;
14.所述存储器,用于存储一个或多个程序;
15.当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的网络命令处理方法。
16.在第四方面,本技术实施例提供了一种存储计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的网络命令处理方法。
17.在第五方面,本技术实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在计算机可读存储介质中,设备的至少一个处理器从计算机可读存储介质读取并执行计算机程序,使得设备执行如第一方面所述的网络命令处理方法。
18.本技术实施例通过轮询当前大区的命令数据库中的命令信息,确定各个命令信息对应的网络命令、设备标识以及代理标识,并根据当前大区各个代理服务端对应的代理标识从命令数据库中提取目标命令信息,并根据提取的目标命令信息的代理标识向当前大区的代理服务端发送目标命令信息,由该代理服务端根据目标命令信息的设备标识向对应的网络设备发送目标命令信息,通过命令数据库同步各大区之间的命令信息,并根据本大区的代理服务端从命令数据库提取命令信息,由代理服务端向网络设备下发命令信息,可实现网络命令下发在跨数据中心业务的适配,提高在跨数据中心业务中的网络设备管理效率。
附图说明
19.图1是本技术实施例提供的一种网络命令处理方法的流程图;
20.图2是本技术实施例提供的另一种网络命令处理方法的流程图;
21.图3是本技术实施例提供的一种目标命令信息发送流程示意图;
22.图4是本技术实施例提供的一种网络命令处理系统的结构示意图;
23.图5是本技术实施例提供的一种网络命令处理装置的结构示意图;
24.图6是本技术实施例提供的一种网络命令处理设备的结构示意图。
具体实施方式
25.为了使本技术的目的、技术方案和优点更加清楚,下面结合附图对本技术具体实施例作进一步的详细描述。可以理解的是,此处所描述的具体实施例仅仅用于解释本技术,而非对本技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本技术相关的部分而非全部内容。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序
可以被重新安排。当其操作完成时上述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。上述处理可以对应于方法、函数、规程、子例程、子程序等等。
26.图1给出了本技术实施例提供的一种网络命令处理方法的流程图,本技术实施例提供的网络命令处理方法可以由网络命令处理装置来执行,该网络命令处理装置可以通过硬件和/或软件的方式实现,并集成在网络命令处理设备中。
27.下述以网络命令处理装置执行网络命令处理方法为例进行描述。参考图1,该网络命令处理方法包括:
28.s101:轮询当前大区的命令数据库中的命令信息,命令信息包括网络命令、设备标识以及代理标识。
29.其中,各个大区的命令数据库中的命令信息由各个大区配置的分配服务端提供,并且不同大区的命令数据库之间对接收到的命令信息进行同步,分配服务端提供的命令信息由用户端提供。
30.本方案提供的命令信息用于发送至网络设备,以控制网络设备按照命令信息中的网络命令执行相应的操作或任务。其中网络设备可以是硬件设备(例如硬件交换机、路由器等),也可以是虚拟网络设备(例如虚拟交换机open vswitch等)。
31.在相关技术中,传统的网络设备管理方式是通过网络控制器(例如opendaylight、onos等网络控制器)进行的,网络控制器南向通过设定协议(例如netconf协议)与网络设备进行对接,北向向用户端提供应用接口(例如基于http协议规范的接口restful api),供用户进行二次开发,用户端通过网络控制器向网络设备下发网络命令。但是目前网络控制器基本是采用集中式架构进行设计,这种集中式架构并不适用于跨互联网数据中心(internet data center,idc)的应用场景。对于跨互联网数据中心的应用场景,为了容灾往往采用多机房部署模式,这种跨大区跨机房的部署方式容易出现因网络问题导致网络命令无法正常下发的情况。一方面由于网络延时可能网络控制器一次跨idc下发任务失败的情况,另一方面跨idc的网络会存在无法直连的情况,会造成集中式架构的网络控制器下发配置失败的情况,网络控制器并不适配于跨数据中心业务。为了解决上述技术问题,本方案通过分配服务端与代理服务端结合的方式,由分配服务端进行网络命令的上传和分发,并通过代理服务端实现对网络设备的网络命令下发,有效解决由于网络延迟或者信息不可达导致网络下发失败问题,有效适配跨数据中心业务场景。
32.本方案在每个大区中配置至少一个分配服务端(cmdc),并且每个机房均设置至少一个代理服务端(co-agent)。其中,分配服务端可用于将命令信息或网络命令发送到与指定(co-agent ip)连接的代理服务端,可用于解决跨数据中心ip寻址场景,代理服务端可基于ssh客户端技术进行设计,可用于进行命令信息或网络命令的下发(例如将命令信息或网络命令下发至网络设备)。可选的,分配服务端可通过应用程序的方式将分配服务端配置在对应大区的机房中,代理服务端可通过应用程序的方式将代理服务端配置在机房中)。在机房总可配置一个或多个网络设备,并且该机房的代理服务端与一个或多个网络设备建立通信连接。
33.同时,在每个大区中配置至少一个命令数据库(例如myshard数据库),并且不同大区的命令数据库之间可进行数据同步。本方案提供的命令数据库可用于接收分配服务端提供的命令信息,以及在各大区的命令数据之间同步从分配服务端接收到的命令信息,从其
他大区同步过来的命令信息,可由分配服务端根据当前大区所配置的代理服务端或网络设备进行命令信息的提取及分发。
34.例如,用户在接收到用户端(web端或移动端)提供的命令信息并保存在本地后,将命令信息发送给当前地区的命令数据库,当前地区的命令数据库将命令信息同步至其他大区的命令数据库。可选的,当前大区的命令数据库在接收到分配服务端提供的命令信息后,可判断命令信息中的设备标识或代理标识对应的网络设备或代理服务端是否在当前大区,若是则不需要将该命令信息同步至其他大区的命令数据库,否则确定将该命令信息同步至其他大区的命令数据库。同时,命令数据库接收并保存其他大区的命令数据库同步过来的命令信息。
35.示例性的,本方案提供的网络命令处理装置(网络命令处理装置可以是分配服务端)定时轮询当前大区的命令数据库中的命令信息,并确定每个命令信息对应的网络命令、设备标识和代理标识。
36.本方案提供的命令信息包括网络命令、设备标识(例如网络设备的ip地址或设备序列号sn)和代理标识(例如代理服务端的ip地址),根据命令信息中的代理标识和设备标识即可确定网络命令需要发送的代理服务端和网络设备。其中,命令信息中的网络命令、设备标识以及代理标识由用户端在生成命令信息时确定。
37.s102:基于当前大区各个代理服务端对应的代理标识,从命令数据库的命令信息中获取目标命令信息。
38.示例性的,将当前大区的命令数据库中命令信息的代理标识与当前大区中各个代理服务端的代理标识进行比较,确定代理标识与代理服务端的代理标识一致的命令信息,并将从命令数据库中获取该命令信息,并将获取的命令信息确定为需要下发给同一大区的网络设备的目标命令信息。
39.可选的,在确定命令信息成功发送至对应的网络设备后,可从命令数据库中删除该命令信息,并通知各个大区的命令数据库同步删除已经完成下发的命令信息,以及通知用户端命令信息已成功下发。
40.s103:根据目标命令信息对应的代理标识,向当前大区的代理服务端发送目标命令信息,由代理服务端根据目标命令信息对应的设备标识,向网络设备发送目标命令信息。
41.示例性的,从命令数据库获取目标命令信息后,确定在当前大区中代理标识与目标命令信息对应的代理标识一致的代理服务端,并向该代理服务端发送目标命令信息。代理服务端在接收到目标命令信息后,根据目标命令信息对应的设备标识,向该设备标识对应的网络设备发送目标命令信息,完成目标命令信息的传输。
42.在一个可能的实施例中,本方案提供的分配服务端与代理服务端基于全双工通信协议进行通信,以保持分配服务端与代理服务端之间的双向连接,降低分配服务端与代理服务端之间通信的网络延时。例如分配服务端与代理服务端基于websocket协议进行通信,即分配服务端通过websocket协议将目标命令信息发送到与目标命令信息指定的代理服务端上,相比于http协议,使用websocket协议可实时保持分配服务端与代理服务端的双向连接,降低每次下发目标命令信息需要新建立连接所带来的损耗,有效降低网络延时。
43.可选的,代理服务端与网络设备之间建立ssh连接,代理服务端基于ssh协议将目标命令信息发送到目标命令信息指定设备标识对应的网络设备上。在一个可能的实施例
中,代理服务端可与对应机房的交换机连接,该交换机与对应机房中的网络设备连接,代理服务端基于ssh协议将目标命令信息发送到交换机,有交换机将目标命令信息发送到指定设备标识对应的网络设备上。
44.上述,通过轮询当前大区的命令数据库中的命令信息,确定各个命令信息对应的网络命令、设备标识以及代理标识,并根据当前大区各个代理服务端对应的代理标识从命令数据库中提取目标命令信息,并根据提取的目标命令信息的代理标识向当前大区的代理服务端发送目标命令信息,由该代理服务端根据目标命令信息的设备标识向对应的网络设备发送目标命令信息,通过命令数据库同步各大区之间的命令信息,并根据本大区的代理服务端从命令数据库提取命令信息,由代理服务端向网络设备下发命令信息,可实现网络命令下发在跨数据中心业务的适配,提高在跨数据中心业务中的网络设备管理效率。
45.在上述实施例的基础上,图2给出了本技术实施例提供的另一种网络命令处理方法的流程图,该网络命令处理方法是对上述网络命令处理方法的具体化。参考图2,该网络命令处理方法包括:
46.s201:接收用户端提供的命令信息。
47.示例性的,每个大区的分配服务端与用户端建立连接,并接收用户端发送的命令信息。其中,用户端可根据用户或管理人员发起的命令选择操作以及网络设备选择操作生成对应的命令信息名发送给连接的分配服务端。
48.基于此,本方案提供的用户端在生成命令信息时,包括:通过编排引擎层基于命令选择操作以及网络设备选择操作,生成网络命令以及设备标识;通过作业引擎层确定设备标识对应的代理标识,并基于网络命令、设备标识以及代理标识得到命令信息。
49.在用户端中提供用于生成指示不同网络设备执行不同操作或任务的命令模板,以及对不同网络设备(包括当前大区和不同大区的网络设备)的选择界面。用户或管理人员在需要对网络设备进行操作时,通过输入控制指令或选择命令模板的方式确定触发命令选择操作,以及通过输入设备标识或在网络设备界面选择网络设备的方式触发网络设备选择操作,从而向作业端发出设备操作请求。用户端在检测到命令选择操作以及网络设备选择操作时,将根据命令选择操作以及网络设备选择操作生成对应的网络命令、设备标识和代理标识,并将网络命令、设备标识和代理标识打包为命令信息发送给同一大区的分配服务端(优先选择同一机房的分配服务端)。
50.本方案提供的用户端配置有编排引擎层和作业引擎层,编排引擎层和/或作业引擎层可基于分布式架构进行搭建。其中编排引擎层用于确定命令选择操作对应的命令模板以及网络设备选择操作对应的网络设备或设备标识。作业引擎层可用于执行具体任务,处理复杂耗时逻辑,安全校验等,如果设备操作请求中存在高危的操作命令,会根据请求用户的角色(用户或管理人员的账户对应的角色)校验用户是否有执行的权限。作业引擎层可采用多实例容器化部署方式,且每个实例是无状态的,作业引擎层可以根据实例的负载情况进行扩缩容。作业引擎可根据网络设备的设备标识查询到与网络设备同个机房服务器上的代理服务端的代理标识,再将包含网络命令、设备标识以及代理标识的命令信息同下发到分配服务端。
51.示例性的,在编排引擎层中配置用于生成指示不同网络设备执行不同操作或任务的命令模板,以及对不同网络设备的选择界面。编排引擎层在接收到设备操作请求后,根据
设备操作请求对应的命令选择操作以及网络设备选择操作确定网络命令以及设备标识,并将网络命令以及设备标识下发给作业引擎层。其中,编排引擎层支持动态条件查询网络设备的设备标识,也支持直接输入网络设备的设备标识,并且编排引擎层可通过负载均衡算法(如轮训等)向作业引擎下发网络命令以及设备标识。
52.作业引擎层在接收到编排引擎层下发的网络命令以及设备标识后,根据网络命令以及设备标识对应的代理标识,并将网络命令、设备标识以及代理标识打包得到命令信息,并将命令信息下发给分配服务端。
53.在一个可能的实施例中,本方案提供的用户端在通过作业引擎层确定设备标识对应的代理标识时,包括:通过作业引擎层对网络命令进行角色权限验证;在网络命令通过角色权限验证的情况下,根据设备标识确定网络设备对应的代理服务端,并基于代理服务端确定设备标识对应的代理标识。
54.示例性的,作业引擎对接收到的网络命令进行高危操作判断,即确定网络命令对应的操作是否为设定的高危操作,若网络命令对应的操作不是设定的高危操作,则允许向分配服务端下发对应的命令信息,若网络命令对应的操作是设定的高危操作,则需要确定发出设备操作请求的用户对应的角色,并对该角色进行角色权限验证,判断该角色是否具备上述高危操作的执行权限。若具备执行权限,则确认网络命令通过角色权限验证。在网络命令通过角色权限验证时,允许向分配服务端下发对应的命令信息,否则禁止向分配服务端下发对应的命令信息。在一个可能的实施例中,可在分配服务端对接收到的命令信息进行ssl证书校验,只有通过ssl证书校验的命令信息才允许向命令数据库下发。
55.本方案采用编排引擎层和作业引擎层相分离的分布式架构,作业引擎层支持动态扩缩容,可适配解决互联网的高并发场景,并且编排引擎层可对外提供openapi给自动化脚本,可实现网络自动化,提高网络命令处理效率。
56.在一个可能的实施例中,用户端或作业引擎层发送命令信息的分配服务端在可注册中心中注册的分配服务端中确定,即分配服务端、代理服务端和用户端可通过注册中心进行服务注册以及发送可用的服务,基于服务注册及发现机制实现服务的高可用以及负载均衡。
57.其中,每个分配服务端在启动时向预先设置的注册中心发起注册,注册中心对发起注册请求的分配服务端进行记录,并在用户端或作业引擎层发起分配服务端查询请求时,向用户端或作业引擎层提供对应的在线分配服务端登记列表,用户端或作业引擎层可根据在线分配服务端登记列表选择分配服务端进行连接以及下发命令信息。
58.在一个可能的实施例中,注册中心可基于nginx设备(例如2台前置nginx设备)以及consul集群(或者是nacos集群)提供服务注册及发现机制实现服务的高可用以及负载均衡。
59.s202:向当前大区的命令数据库发送命令信息,以供当前大区的命令数据库向其他大区的命令数据库同步命令信息。
60.示例性的,在接收用户端提供的命令信息后,将命令信息发送至当前大区的命令数据库.命令数据库在接收到命令信息后,将命令信息保存在本地,并向其他大区的命令数据库同步该命令信息。同时,当前大区的命令数据库实时接收其他大区的命令数据库同步过来的命令信息(同步过来的命令信息由其他大区的用户端生成,并由其他大区的分配服
务端下发给对应的命令数据库)。
61.s203:轮询当前大区的命令数据库中的命令信息,命令信息包括网络命令、设备标识以及代理标识,其中,各个大区的命令数据库中的命令信息由各个大区配置的分配服务端提供,并且不同大区的命令数据库之间对接收到的命令信息进行同步,分配服务端提供的命令信息由用户端提供。
62.s204:基于当前大区各个代理服务端对应的代理标识,从命令数据库的命令信息中获取目标命令信息。
63.s205:根据目标命令信息对应的代理标识,向当前大区的代理服务端发送目标命令信息,由代理服务端根据目标命令信息对应的设备标识,向网络设备发送目标命令信息。
64.在一个可能的实施例中,如图3提供的一种目标命令信息发送流程示意图所示,本方案提供的网络命令处理方法在向当前大区的代理服务端发送目标命令信息时,包括:
65.s2051:根据分配服务端与当前大区的代理服务端在不同网络类型进行通信的延迟时间,确定目标网络类型。
66.s2052:基于目标网络类型向当前大区的代理服务端发送目标命令信息。
67.需要进行解释的是,本方案提供的分配服务端和代理服务端存在跨机房的情况,即分配服务端和代理服务端有可能配置在同一机房中,也有可能配置在不同机房中,分配服务端和代理服务端之间可能存在多种不同的连接方式以及不同的进行通信的网络类型,需要针对不同的网络类型的网络时延或者网络联通性确定合适的网络类型进行通信,以减少目标命令信息的传输时延,保证网络命令的准确快速送达。
68.示例性的,获取分配服务端与当前大区的各个代理服务端在不同网络类型进行通信是对应的延迟时间,根据将分配服务端与当前大区的代理服务端在不同网络类型进行通信的延迟时间进行比较,从不同网络类型中确定与代理服务端进行通信的目标网络类型。
69.示例性的,假设分配服务端与当前大区的各个代理服务端进行通信的网络类型包括内网、管理网和公网,依次获取分配服务端与代理服务端通过内网、管理网和公网进行通信对应的延迟时间,将延迟时间最小的网络类型确定为目标网络类型。或者是在延迟时间小于设定延迟阈值的网络类型中,选择优先级最高的网络类型作为目标网络类型,其中,内网、管理网和公网的优先级依次降低。
70.可选的,目标网络类型的确定可在确定需要发送目标命令信息的代理服务端后进行,即获取分配服务端与确定的代理服务端在不同网络类型下的延迟时间,将延迟时间最小的网络类型作为目标网络类型,或者是在延迟时间小于设定延迟阈值的网络类型中,选择优先级最高的网络类型作为目标网络类型。目标网络类型的确定也可以是在确定需要发送目标命令信息的代理服务端之前进行,即获取分配服务端与当前大区的各个代理服务端在不同网络类型下的延迟时间,将延迟时间最小的网络类型作为目标网络类型,或者是在延迟时间小于设定延迟阈值的网络类型中,选择优先级最高的网络类型作为目标网络类型,并确定对应的代理服务端。
71.在一个可能的实施例中,可基于以下公式从不同网络类型中确定与代理服务端进行通信的目标网络类型:
72.y=f(t1,inner_ip,t2,manager_ip,t3,public_ip)
73.其中,t1、t2、t3分别是对应网络类型的ping时间,inner_ip代表内网对应的ip地
址,manager_ip代表管理网对应的ip地址,public_ip代表公网对应的ip地址。上述公式核心逻辑为优先尝试访问内网,其次尝试访问管理网,最后尝试访问公网,以确定网络延时达到要求或最小的网络类型作为目标网络类型。
74.如图4提供的一种网络命令处理系统的结构示意图所示,该网络命令处理系统包括基于2台前置nginx设备以及consul集群搭建的注册中心、在每个大区(图中以大区1和大区2进行示例性描述)配置的命令数据库(myshard数据库)、在每个机房配置的代理服务端以及在在每个大区均配置有至少一个的分配服务端(可分别配置在一个或多个机房),分配服务端与同一大区的命令数据库建立通信,以及可通过websocket协议与同一大区的代理服务端进行通信。其中,代理服务端可基于ssh协议与同一机房的一个或多个网络设备进行通信。不同大区的命令数据库之间可进行数据同步。注册中心可提供基于服务注册及发现机制的高可用及负载均衡。代理服务端对应的进程在启动后,向注册中心发起注册,代理服务端和用户端可在注册中心中发现在线可用的代理服务端。可选的,本方案提供的网络命令处理系统可采用微服务架构(例如spring cloud k8s的微服务架构),有效解决相关技术中基于osgi架构的网络命令下发中,osgi架构复杂,学习成本高,不适用于云原生场景的问题,降低对网络命令处理的学习成本,适配网络命令下发的云原生场景。
75.基于上述网络命令处理系统,用户端在生成命令信息后,将命令信息发送到同一大区的分配服务端,分配服务端将命令信息发送给同一大区的命令数据库,由命令数据库将命令信息同步给其他大区的命令数据库。同时,分配服务端定时轮询同一大区的命令数据库,从命令数据库中获取设备标识和/或代理标识与同一大区中的网络设备和/或代理服务端的取设备标识和/或代理标识一致的命令信息作为目标命令信息(可在分配服务端中预先配置同一大区的网络设备和/或代理服务端的取设备标识和/或代理标识,或者是网络设备和/或代理服务端在启动后向注册中心发起注册,分配服务端可在注册中心获取同一大区的网络设备和/或代理服务端的取设备标识和/或代理标识),并将目标命令信息发送给代理标识对应的代理服务端,由代理服务端将目标命令信息发送给设备标识对应的网络设备。网络设备在接收到目标命令信息后,根据目标命令信息中的网络命令执行对应的操作或任务。
76.上述,通过轮询当前大区的命令数据库中的命令信息,确定各个命令信息对应的网络命令、设备标识以及代理标识,并根据当前大区各个代理服务端对应的代理标识从命令数据库中提取目标命令信息,并根据提取的目标命令信息的代理标识向当前大区的代理服务端发送目标命令信息,由该代理服务端根据目标命令信息的设备标识向对应的网络设备发送目标命令信息,通过命令数据库同步各大区之间的命令信息,并根据本大区的代理服务端从命令数据库提取命令信息,由代理服务端向网络设备下发命令信息,可实现网络命令下发在跨数据中心业务的适配,提高在跨数据中心业务中的网络设备管理效率。同时,在计算引擎层对设备控制请求进行安全校验,对于高危的操作命令,根据设备控制请求对应的用户角色,校验是否有执行的权限,只有通过校验的设备控制请求才允许下发命令信息,保证网络设备的安全。并且分配服务端基于全双工通信协议与代理服务端进行通信,降低每次下发目标命令信息需要新建立连接所带来的损耗,有效降低网络延时。
77.图5是本技术实施例提供的一种网络命令处理装置的结构示意图。参考图3,该网络命令处理装置包括命令查询模块51、命令获取模块52和命令转发模块53。
78.其中,命令查询模块51,配置为轮询当前大区的命令数据库中的命令信息,命令信息包括网络命令、设备标识以及代理标识,其中,各个大区的命令数据库中的命令信息由各个大区配置的分配服务端提供,并且不同大区的命令数据库之间对接收到的命令信息进行同步,分配服务端提供的命令信息由用户端提供;命令获取模块52,配置为基于当前大区各个代理服务端对应的代理标识,从命令数据库的命令信息中获取目标命令信息;命令转发模块53,配置为根据目标命令信息对应的代理标识,向当前大区的代理服务端发送目标命令信息,由代理服务端根据目标命令信息对应的设备标识,向网络设备发送目标命令信息。
79.上述,通过轮询当前大区的命令数据库中的命令信息,确定各个命令信息对应的网络命令、设备标识以及代理标识,并根据当前大区各个代理服务端对应的代理标识从命令数据库中提取目标命令信息,并根据提取的目标命令信息的代理标识向当前大区的代理服务端发送目标命令信息,由该代理服务端根据目标命令信息的设备标识向对应的网络设备发送目标命令信息,通过命令数据库同步各大区之间的命令信息,并根据本大区的代理服务端从命令数据库提取命令信息,由代理服务端向网络设备下发命令信息,可实现网络命令下发在跨数据中心业务的适配,提高在跨数据中心业务中的网络设备管理效率。
80.在一个可能的实施例中,网络命令处理装置还包括命令同步模块,命令同步模块配置为:
81.接收用户端提供的命令信息;
82.向当前大区的命令数据库发送命令信息,以供当前大区的命令数据库向其他大区的命令数据库同步命令信息。
83.在一个可能的实施例中,用户端在生成命令信息时,配置为:
84.通过编排引擎层基于命令选择操作以及网络设备选择操作,生成网络命令以及设备标识;
85.通过作业引擎层确定设备标识对应的代理标识,并基于网络命令、设备标识以及代理标识得到命令信息。
86.在一个可能的实施例中,用户端在通过作业引擎层确定设备标识对应的代理标识时,配置为:
87.通过作业引擎层对网络命令进行角色权限验证;
88.在网络命令通过角色权限验证的情况下,根据设备标识确定网络设备对应的代理服务端,并基于代理服务端确定设备标识对应的代理标识。
89.在一个可能的实施例中,用户端发送命令信息的分配服务端在注册中心中注册的分配服务端中确定,分配服务端在启动时向注册中心发起注册。
90.在一个可能的实施例中,命令转发模块53在向当前大区的代理服务端发送目标命令信息时,配置为:
91.根据分配服务端与当前大区的代理服务端在不同网络类型进行通信的延迟时间,确定目标网络类型;
92.基于目标网络类型向当前大区的代理服务端发送目标命令信息。
93.值得注意的是,上述网络命令处理装置的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明实施例的保护
范围。
94.本技术实施例还提供了一种网络命令处理设备,该网络命令处理设备可集成本技术实施例提供的网络命令处理装置。图6是本技术实施例提供的一种网络命令处理设备的结构示意图。参考图6,该网络命令处理设备包括:输入装置63、输出装置64、存储器62以及一个或多个处理器61;存储器62,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器61执行,使得一个或多个处理器61实现如上述实施例提供的网络命令处理方法。上述提供的网络命令处理装置、设备和计算机可用于执行上述任意实施例提供的网络命令处理方法,具备相应的功能和有益效果。
95.本技术实施例还提供一种存储计算机可执行指令的存储介质,计算机可执行指令在由计算机处理器执行时用于执行如上述实施例提供的网络命令处理方法。当然,本技术实施例所提供的一种存储计算机可执行指令的存储介质,其计算机可执行指令不限于如上提供的网络命令处理方法,还可以执行本技术任意实施例所提供的网络命令处理方法中的相关操作。上述实施例中提供的网络命令处理装置、设备及存储介质可执行本技术任意实施例所提供的网络命令处理方法,未在上述实施例中详尽描述的技术细节,可参见本技术任意实施例所提供的网络命令处理方法。
96.在一些可能的实施方式中,本公开提供的方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当上述程序产品在计算机设备上运行时,程序代码用于使上述计算机设备执行本说明书上述描述的根据本公开各种示例性实施方式的方法中的步骤,例如,计算机设备可以执行本公开实施例所记载的网络命令处理方法。其中,程序产品可以采用一个或多个可读介质的任意组合。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献