基于文本解析的网络设备配置统一管理方法、终端及介质与流程

文档序号:17725673发布日期:2019-05-22 02:29阅读:371来源:国知局
基于文本解析的网络设备配置统一管理方法、终端及介质与流程

本发明涉及网络设备配置管理技术领域,更具体地说,涉及一种基于文本解析的网络设备配置统一管理方法、终端及介质。



背景技术:

网络设备的配置是保障网络设备正常运行的基础,其配置的合理性直接影响到网络设备运行;

目前,大都是通过基于文本解析的配置分析工具batfish将网络设备配置导出,并使用该工具分析出配置数据的错误和潜在风险,然而该方式功能及其有限,仅支持离线配置分析,也不能对各个厂商的配置进行统一建模。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于文本解析的网络设备配置统一管理方法;

还提供了一种终端及一种计算机可读存储介质。

本发明解决其技术问题所采用的技术方案是:

构造一种基于文本解析的网络设备配置统一管理方法,其实现方法如下:

第一步:通过ssh协议连接网络设备,在网络设备上执行获取配置命令获得配置文本;

第二步:编写解析规则,生成指定编程语言的文本解析代码;对不同厂商的设备配置文本进行建模,编写用于表达解析后的文本对象代码;

第三步:用生成的文本解析代码解析配置,并生成对象实例,存储在数据库中;

第四步:挖掘不同厂商配置文件之间的共性,建立一套统一模型,用于表达各个不同厂商的解析后的文本;在统一模型的基础上编写业务逻辑。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述第二步中,通过编写antlr4grammar文件,用antlr4的命令行工具或者ide插件来根据grammar文件生成解析配置文本的指定编程语言的代码。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述第四步中,编写业务逻辑包括:编写策略搜索api、编写策略开通api和编写对象托管api。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述编写策略搜索api包括方法:通过所述数据库接口获取到所述对象实例,将所述对象实例转换成统一模型实例,遍历所述统一模型实例中的防火墙策略列表,和api接口输入内容进行比对并过滤,得到搜索结果并返回。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述编写策略开通api包括方法:通过数据库接口获取到设备配置对象实例,将设备配置对象实例转换成统一模型实例,进行策略分析,分析结果下发。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述策略分析包括方法:遍历统一模型实例中防火墙策略列表,和api接口输入的内容进行比对,分析列表中的策略和输入内容之间的关系,将关系展示给用户,用户根据关系选择是否下发api输入的策略以及策略所在的位置,根据用户的输入信息和分析结果生成下发到设备的操作命令,并将命令存在数据库中。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述分析结果下发包括方法:取出存在数据库中的命令,通过ssh协议连接设备,执行该命令。

本发明所述的基于文本解析的网络设备配置统一管理方法,其中,所述编写对象托管api包括方法:用户通过api以统一模型的方式输入配置数据,后台将数据存入数据库。统一模型中包含标记这份数据的uuid,用户在使用策略开通和策略搜索api时,可以输入uuid,系统根据uuid拿到上一步骤中录入数据库的数据模型实例,并使用。

一种终端,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述计算机程序时实现如上述方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其中,所述计算机程序被处理器执行时实现如上述方法的步骤。

本发明的有益效果在于:可在线获取不同厂商的设备配置,依靠ssh协议使得对各个厂商的设备配置均有较好的网络连接兼容性,利用文本解析代码解析设备配置文件,并生成对象实例,依据多个对象实例进行建模,并依据该套建模编写业务逻辑,实现统一管理操作,兼容性好,对不同设备识别率高,且管理更加灵活方便,显著降低网络运维人员的工作负担以及系统使用者的心智负担。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将结合附图及实施例对本发明作进一步说明,下面描述中的附图仅仅是本发明的部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图:

图1是本发明较佳实施例的基于文本解析的网络设备配置统一管理方法流程图。

具体实施方式

为了使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明的部分实施例,而不是全部实施例。基于本发明的实施例,本领域普通技术人员在没有付出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。

本发明较佳实施例的基于文本解析的网络设备配置统一管理方法,如图1所示,其实现方法如下:

s01:通过ssh协议连接网络设备,在网络设备上执行获取配置命令获得配置文本;(如ciscoasav设备可以使用”showconfiguration”);

s02:编写解析规则,生成指定编程语言的文本解析代码;对不同厂商的设备配置文本进行建模,编写用于表达解析后的文本对象代码;对象代码为结构体或类;

s03:用生成的文本解析代码解析配置,并生成对象实例,存储在数据库中;

s04:挖掘不同厂商配置文件之间的共性,建立一套统一模型,用于表达各个不同厂商的解析后的文本;在统一模型的基础上编写业务逻辑;

可在线获取不同厂商(juniper,cisco等)的设备配置,依靠ssh协议使得对各个厂商的设备配置均有较好的网络连接兼容性,利用解析文本文本解析代码解析设备配置文件,并生成对象实例,依据多个对象实例进行建模,并依据该套建模编写业务逻辑,实现统一管理操作,兼容性好,对不同设备识别率高,且管理更加灵活方便,显著降低网络运维人员的工作负担以及系统使用者的心智负担。

优选的,第二步中,通过编写antlr4grammar文件,用antlr4的命令行工具或者ide插件来根据grammar文件生成解析配置文本的指定编程语言的代码;此处也可选用其他具有类似功能的文件来生成代码。

优选的,第四步中,编写业务逻辑包括:编写策略搜索api、编写策略开通api和编写对象托管api;提供策略开通和策略搜索功能,显著降低网络运维人员的工作负担。

编写策略搜索api包括方法:通过数据库接口获取到对象实例,将对象实例转换成统一模型实例,遍历统一模型实例中的防火墙策略列表,和api接口输入内容进行比对并过滤,得到搜索结果并返回;

编写策略开通api包括方法:通过数据库接口获取到设备配置对象实例,将设备配置对象实例转换成统一模型实例,进行策略分析,分析结果下发;

策略分析包括方法:遍历统一模型实例中防火墙策略列表,和api接口输入的内容(五元组)进行比对,分析列表中的策略和输入内容之间的关系,将关系展示给用户,用户根据关系选择是否下发api输入的策略以及策略所在的位置,根据用户的输入信息和分析结果生成下发到设备的操作命令,并将命令存在数据库中;

分析结果下发包括方法:取出存在数据库中的命令,通过ssh协议连接设备,执行该命令;

编写对象托管api包括方法:用户通过api以统一模型的方式输入配置数据,后台将数据存入数据库。统一模型中包含标记这份数据的uuid,用户在使用策略开通和策略搜索api时,可以输入uuid,系统根据uuid拿到上一步骤中录入数据库的数据模型实例,并使用;

一种终端,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,其中,处理器执行计算机程序时实现如上述方法的步骤。

一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,其中,计算机程序被处理器执行时实现如上述方法的步骤。

应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1