用于实况设备上配置验证的系统和方法技术方案

技术编号:24455467 阅读:18 留言:0更新日期:2020-06-10 15:25
本公开涉及用于实况设备上配置验证的系统和方法。本公开的实施例提供用于在线执行网络设备配置验证的系统和方法。命令过程(影子解译器)的第二实例可以运行在网络上活动的网络设备上的隔离的验证环境内。网络设备上的配置数据库的副本与隔离的验证环境相关联。验证处理程序擦除配置数据库的验证副本内的当前运行的配置命令,并且通过影子解译器输入每个新配置命令,以验证网络设备上的新配置命令而不影响网络设备的当前运行。在所有新配置命令被输入之后,验证报告生成标识针对每个命令的验证状态的报告。

System and method for configuration verification on live device

【技术实现步骤摘要】
用于实况设备上配置验证的系统和方法
技术介绍
计算机网络(诸如广域网(WAN)、存储区域网络(SAN)和企业网络等)可以包括被配置为传递信息的网络设备的集合。这样的联网设备可以包括路由器、交换机、集线器、调制解调器和其他设备。每个联网设备被配置为在网络内操作。用于联网设备的配置可能是复杂的。为了确保适当的功能,用于联网设备的配置通常是经验证的。配置验证是冗长的过程,这要求每条命令通常逐行验证。附图说明根据一个或多个各种实施例,参考以下附图详细描述本公开。附图仅出于图示的目的而提供并且仅描绘典型或者示例实施例。图1图示了根据本文所公开的技术的实施例的示例网络。图2图示了根据本文所公开的技术的实施例的示例网络设备。图3A图示了根据本文所公开的技术的实施例的网络设备上的设备配置简档的在线验证的示例架构。图3B图示了根据本文所公开的技术的实施例的网络设备上的设备配置简档的在线验证的另一示例架构。图4图示了根据本文所公开的技术的各种实施例的执行实况设备上验证的示例方法。图5图示了根据本文所公开的技术的各种实施例的具有机器可读指令的示例网络设备。图6是可以用于实现本公开中所描述的实施例的各种特征的示例计算组件。附图不是详尽的并且不将本公开限于所公开的精确形式。具体实施方式网络设备可以以两种方式之一进行配置。一种方法是通过网络设备的命令行接口本地输入配置命令。另一方法是通过简单网络管理协议(SMNP)向网络设备发送配置命令。在这两种方法下,配置命令直接影响网络设备的操作,包括设备的各种数据结构和特征集。一旦命令由网络设备输入和/或接收,则与配置命令相关联的网络设备的配置方面立即被改变。因此,如果错误存在于配置命令内,使得新配置不与网络设备的能力、错误配置结果兼容。错误配置可能引起计算机网络内的服务的昂贵中断。因此,网络管理员想要在将配置简档移植到网络设备之前验证配置简档(配置的命令集)以尽可能避免错误配置。验证配置简档的当前方法是昂贵的并且易于潜在错误和错误配置。当其在线时执行网络设备上的验证并且在计算机网络中的操作通常避免,因为任何错误引起计算机网络中的直接错误配置,这导致相同昂贵中断验证被认为避免。因此,当前方法要求验证离线执行。离线验证的一个方法涉及开发并且建立复制网络设备将操作的计算机环境的测试网络环境。测试环境可以运行以在将配置移植到目标网络设备之前验证配置简档。传统地,测试环境要求类似于运行计算机网络的复制测试网络和对应的软件以操作测试网络。复制测试硬件对于设立测试网络以及代替目标网络设备也是必要的。这是昂贵的努力,这要求相当于复杂的计算机网络,其包括这样的环境的设计和建立。而且,测试环境的分离的操作软件和/或物理组件是特定设备类型的。如果网络设备是底架设备或者支持以太网供电(POE)的设备或者如果网络设备是网桥或者路由器,则可能需要组件的分离集合。离线验证配置简档的另一传统方法涉及开发目标网络设备的模拟版本。目标网络设备的虚拟版本被写入并且被设计为仿真(尽可能近地)设备特性。这些设备特性可以包括目标网络设备的硬件细节或者特性。验证程序可以在模拟网络设备上运行,并且如果被验证,则配置简档可以被存储在目标网络设备上。然而,类似于测试环境方法,使用模拟器是相当复杂的,通常要求整个虚拟网络开发以测试配置简档。虚拟环境的不同版本将需要针对每种类型的网络设备进行开发。该添加的复杂性还增加了验证的成本。而且,模拟软件将需要更新以用于对网络设备做出的任何(一个或多个)固件更新。验证的两种方法存在另一不足,通常,两种方法都不验证其写入的实际硬件上的配置简档。利用模拟方法,利用网络设备的硬件的虚拟表示来完成验证。给定虚拟环境中的差异,某些命令可以如何执行中的差异可以存在于软件定义的版本。这些改变可以指示测试期间的有效命令,其一旦实现则可能与网络设备不相容。通过不使用实际硬件验证配置简档,对于错误配置的潜在性增加,并且实际上,错误配置是相当常见的。在测试环境中,类似于目标网络设备,可以使用复制网络设备。虽然可以采取一些步骤以使目标网络设备与复制网络设备之间的硬件差异最小化,但是,复制网络设备不实现/不包括预期配置简档的相同硬件。在一些情况下,一个网络设备上的有效命令可能不与类似的另一网络设备相容,但是关于类型和硬件细节仍然不相同。克服该硬件差异的一种方式是使用测试环境中的目标网络设备,但是这样的方法将要求替代网络设备在操作(非测试)网络中配置和实现。该方法还要求替代网络设备保持操作,同时新配置简档在目标网络设备上验证,自身添加成本和复杂性。本技术的实施例实现网络设备上的配置简档的在线验证,避免与当前方法相关联的许多问题。如此处所讨论的,本技术的实施例创建网络设备上的隔离的验证环境,在隔离的验证环境的,可以验证配置简档,同时网络设备在计算机网络中保持操作。该“影子(shadow)”过程可以与网络设备的正常操作并行运行,使用设备自身的实际硬件和软件执行验证。数据库结构可以用于将配置和设备细节存储在网络设备上。当新配置简档需要验证时,激活隔离的验证环境的命令可以用于开始验证过程,并且可以请求数据库结构的副本。任何新配置命令可以然后鉴于实际/目标网络设备细节(例如,存储器分配、端口分配、处理能力等)而被验证以确保新配置与网络设备相容。由于隔离的验证环境不直接影响网络设备的当前操作,因而任何错误可以被标记并且被标识,这允许修改做出而不引起错误配置。一旦验证,则包括新配置简档的新数据库结构被存储以用于稍后使用。在任何未来点处,验证结果(新配置简档)可以被部署到利用新配置简档替换运行的配置简档的网络设备。图1图示了根据本文所公开的本技术的实施例的示例计算机网络100。如所图示的,计算机网络100包括提供终端104之间的通信的各种网络设备。客户端可以具有各种终端104(诸如服务器),其需要基于客户要求以各种不同方式通信。在各种实施例中,计算机网络100可以是局域网(LAN)、广域网(WAN)、存储区域网络(SAN)、企业网络或者其他类型的网络配置。为了便于讨论,简化计算机网络100,但是本领域普通技术人员将理解到,本文所公开的技术适用于任何网络配置。计算机网络100的终端104可以通过各种不同网络设备相连接。网络设备(例如,基于客户要求或者操作偏好)提供网络100内的不同终端104之间的连接性。网络设备的非限制性示例包括调制解调器106、路由器108、交换机110和桥接器112。在各种实施例中,附加网络设备可以存在于计算机网络100内。当前,配置命令被输入并且维持在网络设备内的方式是特定实现的并且通常专用于网络设备的制造商。通常,命令行接口(CLI)用于输入配置命令。CLI与在设备上运行的过程和处理器直接通信,并且立即地利用相关联的处理或处理器实现新配置命令。当每个配置命令单独输入时,配置命令通过CLI格式化并且嵌入在联网设备的相关硬件组件的固件(例如,专用集成电路(ASIC))中。因此,配置命令直接影响网络设备的运行,冒本文档来自技高网...

【技术保护点】
1.一种方法,包括:/n由网络设备接收验证开始命令;/n由所述网络设备的验证处理程序生成隔离的验证环境,当配置命令被执行时,所述隔离的验证环境不能影响所述网络设备的实时操作,生成所述隔离的验证环境包括:/n生成存储多个数据表的、所述网络设备的数据库的验证副本;/n发起包括主命令解译器过程的新实例的影子解译器过程;/n由所述验证处理程序输入在所述验证开始命令中接收到的一个或多个配置命令;以及/n由所述验证处理程序生成反映输入所述一个或多个配置命令的结果的验证报告。/n

【技术特征摘要】
20181130 US 16/207,0521.一种方法,包括:
由网络设备接收验证开始命令;
由所述网络设备的验证处理程序生成隔离的验证环境,当配置命令被执行时,所述隔离的验证环境不能影响所述网络设备的实时操作,生成所述隔离的验证环境包括:
生成存储多个数据表的、所述网络设备的数据库的验证副本;
发起包括主命令解译器过程的新实例的影子解译器过程;
由所述验证处理程序输入在所述验证开始命令中接收到的一个或多个配置命令;以及
由所述验证处理程序生成反映输入所述一个或多个配置命令的结果的验证报告。


2.根据权利要求1所述的方法,其中所述验证副本的所述多个数据表包含与所述网络设备的一个或多个功能组件相关联的多个数据。


3.根据权利要求2所述的方法,其中所述一个或多个功能组件包括所述网络设备的硬件组件和/或功能。


4.根据权利要求1所述的方法,生成所述验证副本包括:
由所述网络设备拷贝所述配置数据库;以及
删除被分类为配置数据项的、所述验证副本的所述多个数据表中的一个或多个数据项。


5.根据权利要求1所述的方法,其中所述验证开始命令通过网络连接被接收。


6.根据权利要求1所述的方法,其中所述验证开始命令通过所述网络设备的用户接口被接收。


7.根据权利要求1所述的方法,其中所述验证报告被发送到管理员,所述方法还包括:
标识所述验证报告中的一个或多个错误;
生成修改的配置简档,包括修改的配置命令;以及
将所述修改的配置命令在新验证开始命令中发送到所述网络设备。


8.根据权利要求1所述的方法,还包括由所述验证处理程序破坏所述隔离的验证环境。


9.根据权利要求8所述的方法,其中破坏所述隔离的验证环境包括停止所述影子解译器的操作。


10.根据权利要求1所述的方法,还包括:在所述验证处理程序输入所述配置命令中的所有之后,由所述验证处理程序存储所述验证副本。


11.根据权利要求1所述的方法,其中管理员将包括配置命令的验证开始命令发送到网络内的多个网络设备,所述多个网络设备配置为执行根据权利要求1所述的方法。


12.一种网络设备,包括:
处理器;
网络对接组件,其包括一个或多个接口;
存储器;
配置数据库;所述配置数据库被配置为维持包括多个配置命令的多个数据表;
所述处理器被配置为通过以下执行验证程序:
由网络设备接收验证开始命令...

【专利技术属性】
技术研发人员:F·伍德S·A·格兰德
申请(专利权)人:慧与发展有限责任合伙企业
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1