CN111726255B - 针对网络变更的处理方法和装置 - Google Patents

针对网络变更的处理方法和装置 Download PDF

Info

Publication number
CN111726255B
CN111726255B CN202010583285.1A CN202010583285A CN111726255B CN 111726255 B CN111726255 B CN 111726255B CN 202010583285 A CN202010583285 A CN 202010583285A CN 111726255 B CN111726255 B CN 111726255B
Authority
CN
China
Prior art keywords
network
network change
change
real
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010583285.1A
Other languages
English (en)
Other versions
CN111726255A (zh
Inventor
李家炎
袁力
曹璐
冯小飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial and Commercial Bank of China Ltd ICBC
Original Assignee
Industrial and Commercial Bank of China Ltd ICBC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Industrial and Commercial Bank of China Ltd ICBC filed Critical Industrial and Commercial Bank of China Ltd ICBC
Priority to CN202010583285.1A priority Critical patent/CN111726255B/zh
Publication of CN111726255A publication Critical patent/CN111726255A/zh
Application granted granted Critical
Publication of CN111726255B publication Critical patent/CN111726255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design

Abstract

本公开提供了一种针对网络变更的处理方法,该方法包括:获取网络变更方案,其中,网络变更方案包括至少一条网络配置命令;在仿真网络环境下执行至少一条网络配置命令;在至少一条网络配置命令执行完毕后,获取对应的网络变更结果;确定对应的网络变更结果是否符合用户的网络变更意图;以及响应于确定对应的网络变更结果符合用户的网络变更意图,将网络变更方案发送至现实网络环境,以便在现实网络环境实现对应的网络变更。本公开还提供了一种针对网络变更的处理装置、一种电子设备以及一种计算机可读存储介质。

Description

针对网络变更的处理方法和装置
技术领域
本公开涉及互联网技术领域,特别是涉及一种针对网络变更的处理方法和装置。
背景技术
随着以物联网、云计算、人工智能、大数据等为代表的新兴技术的快速发展,应用对网络的需求给网络的搭建和运维带来了更多挑战。
在实现本公开发明构思的过程中,发明人发现:现如今网络变更需求越来越频繁,网络变更导致的网络事故频发,而目前网络变更都是通过多次人工检查、层层复核来保证网络变更方案的准确率,不仅效率低,而且容易出错。
发明内容
本公开的一个方面提供了一种针对网络变更的处理方法,包括:获取网络变更方案,其中,上述网络变更方案包括至少一条网络配置命令;在仿真网络环境下执行上述至少一条网络配置命令;在上述至少一条网络配置命令执行完毕后,获取对应的网络变更结果;以及确定上述对应的网络变更结果是否符合用户的网络变更意图。
可选地,还包括:响应于确定上述对应的网络变更结果符合上述用户的网络变更意图,将上述网络变更方案发送至现实网络环境,以便在上述现实网络环境实现对应的网络变更。
可选地,上述确定上述对应的网络变更结果是否符合用户的网络变更意图,包括:获取预期的网络变更结果,其中,上述预期的网络变更结果用于表征用户的网络变更意图;以及确定上述对应的网络变更结果是否符合与上述预期的网络变更结果一致。
可选地,还包括:响应于确定上述对应的网络变更结果与上述预期的网络变更结果不一致,比较两个变更结果之间的差异;以及根据比较结果,确定上述网络变更方案中存在的错误信息。
可选地,还包括:确定并输出与上述错误信息对应的更正信息。
可选地,上述错误信息包括以下至少之一:网络配置命令出现拼写和/或语法错误;网络配置命令出现静态逻辑错误。
可选地,还包括:在将上述网络变更方案发送至现实网络环境之后,验证上述现实网络环境是否发生与上述用户的网络变更意图对应的网络变更。
可选地,上述验证上述现实网络环境是否发生与上述用户的网络变更意图对应的网络变更,包括:获取第一预设列表,其中,上述第一预设列表对应于将上述网络变更方案发送至上述现实网络环境之前的现实网络的配置;在将上述网络变更方案发送至上述现实网络环境之后,获取对应的第二预设列表;确定上述第二预设列表中不同于上述第一预设列表中的指令条目;以及判断所确定指令条目中是否包含与上述用户的网络变更意图对应的指令条目。
可选地,还包括:如果上述第二预设列表相比于上述第一预设列表未发生变化,则确定上述第一预设列表中的指令条目数是否已达到限制值确定下发上述网络变更方案时是否出现CPU冲高状态。
本公开的另一个方面提供了一种针对网络变更的处理装置,包括:第一获取模块,用于获取网络变更方案,其中,上述网络变更方案包括至少一条网络配置命令;执行模块,用于在仿真网络环境下执行上述至少一条网络配置命令;第二获取模块,用于在上述至少一条网络配置命令执行完毕后,获取对应的网络变更结果;以及第一确定模块,用于确定上述对应的网络变更结果是否符合用户的网络变更意图。
可选地,还包括:发送模块,用于响应于确定上述对应的网络变更结果符合上述用户的网络变更意图,将上述网络变更方案发送至现实网络环境,以便在上述现实网络环境实现对应的网络变更。
可选地,上述第一确定模块包括:第一获取单元,用于获取预期的网络变更结果,其中,上述预期的网络变更结果用于表征用户的网络变更意图;以及第二确定单元,用于确定上述对应的网络变更结果是否符合与上述预期的网络变更结果一致。
可选地,还包括:比较模块,用于响应于确定上述对应的网络变更结果与上述预期的网络变更结果不一致,比较两个变更结果之间的差异;以及第二确定模块,用于根据比较结果,确定上述网络变更方案中存在的错误信息。
可选地,还包括:第三确定模块,用于确定并输出与上述错误信息对应的更正信息。
可选地,还包括:验证模块,用于在将上述网络变更方案发送至现实网络环境之后,验证上述现实网络环境是否发生与上述用户的网络变更意图对应的网络变更。
可选地,上述验证模块包括:第二获取单元,用于获取第一预设列表,其中,上述第一预设列表对应于将上述网络变更方案发送至上述现实网络环境之前的现实网络的配置;第三获取单元,用于在将上述网络变更方案发送至上述现实网络环境之后,获取对应的第二预设列表;第二确定单元,用于确定上述第二预设列表中不同于上述第一预设列表中的指令条目;以及判断单元,用于判断所确定指令条目中是否包含与上述用户的网络变更意图对应的指令条目。
可选地,还包括:第四确定模块,用于在上述第二预设列表相比于上述第一预设列表未发生变化的情况下,确定上述第一预设列表中的指令条目数是否已达到限制值或者确定下发上述网络变更方案时是否出现CPU冲高状态。
本公开的另一方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当上述一个或多个程序被上述一个或多个处理器执行时,使得上述一个或多个处理器实现本公开实施例的方法。
本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,上述指令在被执行时用于实现本公开实施例的方法。
本公开的另一方面提供了一种计算机程序,上述计算机程序包括计算机可执行指令,上述指令在被执行时用于实现本公开实施例的方法。
附图说明
为了更完整地理解本公开及其优势,现在将参考结合附图的以下描述,其中:
图1示意性示出了根据本公开实施例的适于针对网络变更的处理方法和装置的系统架构;
图2示意性示出了根据本公开实施例的针对网络变更的处理方法的流程图;
图3示意性示出了根据本公开另一实施例的针对网络变更的处理方法的流程图;
图4示意性示出了根据本公开又一实施例的针对网络变更的处理方法的流程图;
图5示意性示出了根据本公开又一实施例的针对网络变更的处理方法的流程图;
图6示意性示出了根据本公开实施例的针对网络变更的处理装置的框图;以及
图7示意性示出了根据本公开实施例的电子设备的框图。
具体实施方式
以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。
在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。
在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。
在使用类似于“A、B和C等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释 (例如,“具有A、B和C中至少一个的系统”应包括但不限于单独具有A、单独具有B、单独具有C、具有A和B、具有A和C、具有B和 C、和/或具有A、B、C的系统等)。
附图中示出了一些方框图和/或流程图。应理解,方框图和/或流程图中的一些方框或其组合可以由计算机程序指令来实现。这些计算机程序指令可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器,从而这些指令在由该处理器执行时可以创建用于实现这些方框图和/或流程图中所说明的功能/操作的装置。本公开的技术可以硬件和/或软件(包括固件、微代码等)的形式来实现。另外,本公开的技术可以采取存储有指令的计算机可读存储介质上的计算机程序产品的形式,该计算机程序产品可供指令执行系统使用或者结合指令执行系统使用。
本公开的实施例提供了一种针对网络变更的处理方法以及能够应用该方法的针对网络变更的处理装置。该方法包括获取网络变更方案,其中,网络变更方案包括至少一条网络配置命令;在仿真网络环境下执行至少一条网络配置命令;在至少一条网络配置命令执行完毕后,获取对应的网络变更结果;以及确定对应的网络变更结果是否符合用户的网络变更意图。进一步,响应于确定对应的网络变更结果符合用户的网络变更意图,将网络变更方案发送至现实网络环境,以便在现实网络环境实现对应的网络变更。
图1示意性示出了根据本公开实施例的适于针对网络变更的处理方法和装置的系统架构。需要注意的是,图1所示仅为可以应用本公开实施例的系统架构的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。
如图1所示,该系统架构包括:终端设备101、仿真网络102 现实网络103。其中,所述终端设备101为客户端或者服务器,本公开实施例在此不做限定。
具体地,每次网络变更,都可以通过终端设备101获取本次网络变更所需要的网络变更方案和能够表达用户的网络变更意图的意图表达信息,并通过终端设备101将该网络变更方案先下发至仿真网络102,进而通过终端设备101获取仿真网络102的网络变更结果进行验证,以确定该网络变更方案是否能够达到用户的网络变更意图。如果确定该网络变更方案在仿真网络102中的变更能够达到用户的网络变更意图,则再将该网络变更方案下发至现实网络103。为了保证将该网络变更方案在现实网络103能够生效,在将该网络变更方案下发至现实网络103后,还可以通过终端设备101获取现实网络103的配置信息、状态信息和表项信息等,以从数据层面再次验证该网络变更方案是否已在现实网络 103生效。
需要说明的是,目前网络面临如下挑战:
(1)需要管理大规模的网络诉求。随着企业的转型和发展,对网络资源供应、网络服务供应提出更多、更高的需求。网络需求越来越多,网络规模越来越大,仅靠人工管理很难满足需求。
(2)应用存在跨越异构或多云资源域的基础设施部署情况,但需提供一致的网络服务。因此,运维人员需要同时维护来自多个厂商的众多版本,运维难度增加。
(3)现如今网络变更需求越来越频繁,由网络变更引起的网络事故频发,而目前网络变更方案都是通过人工配置并手动下发的,并且网络变更方案都是通过多次人工检查、层层复核来保证准确率的。
通过本公开实施例提供的针对网络变更的处理方法和装置,可以使上述挑战迎刃而解。
以下将结合附图和具体实施例详细阐述本公开。
图2示意性示出了根据本公开实施例的针对网络变更的处理方法的流程图。
如图2所示,该方法例如可以包括操作S210~S240。
在操作S210,获取网络变更方案,其中,该网络变更方案包括至少一条网络配置命令。
在本公开实施例中,在将网络变更方案下发至现实网络前,可以先在仿真网络中验证该网络变更方案是否正确,即验证基于该网络变更方案得到的网络变更结果是否符合用户的网络变更意图。
具体地,在操作S210,可以通过API接口或者相关界面输入网络变更方案。
在操作S220,在仿真网络环境下执行该至少一条网络配置命令。
可以理解,仿真网络是用于仿真现实网络的。可以通过预设的API 接口,将现实网络的全量配置信息、拓扑信息、运行状态信息等输入意图网络模型,以搭建仿真网络环境。
具体地,还可以定义标准化API接口,使其可以兼容不同厂商、不同型号的设备,实现对厂商和型号的解耦。在操作S210后,可以对网络变更方案进行解析,得到其中包含的所有网络配置命令,并通过调用标准化API接口,将获得的所有网络配置命令,传给仿真网络,由此可以先在仿真网络环境下执行这些网络配置命令,实现相应的网络变更。
在操作S230,在该至少一条网络配置命令执行完毕后,获取对应的网络变更结果。
具体地,在操作S230,在将该网络变更方案发送至该仿真网络环境之前可以先获取该仿真网络的预设列表(其中,在本公开实施例中,预设列表可以包括数据面的各种表项,例如可以包括但不限于mac表、 arp表、邻居表项、路由表等中的至少之一),在将该网络变更方案发送至该仿真网络环境之后,并在仿真网络环境下执行完成该至少一条网络配置命令之后,再获取该仿真网络的预设列表,比较两次获取的预设列表,找出后面获取的预设列表中不同于前面获取的预设列表中的指令条目,进而将所找出的指令条目作为本次的网络变更结果。
在操作S240,确定该对应的网络变更结果是否符合用户的网络变更意图。
具体地,可以使用意图表达信息表征用户的网络变更意图。其中意图表达信息可以表达成多种形式,如语音、图标、页面、excel表格等格式。可以理解,用户的意图是多种多样的,例如可以带有时效特征,可以是永久的,可以是设备级的,可以是网络级的,等等。因此,可以将自己的意图表达成简洁易用且具有固定格式的信息,以保证意图的准确转译。在本公开实施例中,可以通过预设的API接口或者界面输入意图表达信息,输入后可以将意图表达信息翻译成对应的网络配置信息。
此外,在本公开实施例中,可以利用网络变更方案的验证步骤,解析用户的意图表达信息。并且,还可以利用机器学习技术,智能学习网络变更方案的验证步骤,从而找出与用户意图关联性较大的验证步骤,并将找出的验证步骤与对应的意图关联。
进一步,在将意图表达信息翻译成对应的网络配置信息,或者将意图表达信息解析为对应的网络变更方案的验证步骤后,可以输出意图翻译或者解析结果,让用户判断是否为本用户意图。
可以理解,在本公开实施例中,验证步骤是指对新增配置的验证步骤。举例来说,防火墙需求,网络变更方案里有新增交换机访问控制列表(ACL)的策略步骤,所以验证步骤可以是验证某个ACL有无放通某ip:display acl name Interactive|include permit ipsource 84.105.38.0 0.0.0.255。具体可以将网络变更方案的所有验证步骤输入作为用户意图的输入。
如图4所示,该方法除了包括图2所示的操作S210~S240之外,例如还可以包括操作S410。
其中,在本公开实施中,图4中的操作S210~S240与图2中的操作 S210~S240对应相同或类似,本公开实施例在此不再赘述。
在操作S410,响应于确定该对应的网络变更结果符合该用户的网络变更意图,将该网络变更方案发送至现实网络环境,以便在该现实网络环境实现对应的网络变更。
具体地,意图验证通过后,可以通过预设的API接口自动将该网络变更方案下发至现实网络中的相关网络设备,减少人工操作、提高自动化率。作为一个实施例,可以在指定时间段执行网络变更方案的自动下发操作。
通过本公开实施例,形成网络变更方案后,可以先在仿真网络中基于该网络变更方案实现网络变更,并验证仿真网络中实现的网络变更是否符合用户的变更意图。如果符合,则再在现实网络中基于该网络变更方案实现网络变更。如果不符合,则针对该网络变更方案输出对应的静态错误、逻辑错误等,并输出对应的修改意见。因此,本公开实施例提供的针对网络变更的处理方法可以有效地防止人为配置错误而导致的网络故障,提高网络变更的准确率。
并且,还可以放宽变更审核人员标准,例如审核人员无须具备丰富的网络方面经验。此外,可以提升网络变更方案的自动下发能力,减少人工成本和人为操作失误率,使得网络变更更安全、更高效。此外,还可以解决异构环境之间的网络运维管理问题,实现以意图为导向的统一管控,无需精通各个厂商的命令、熟悉各个版本的差异。此外,可以估计网络变更造成的影响,从而缩短网络基础设施交付时间。
作为一种可选的实施例,如图3所示,操作S240例如可以包括:操作S241和S242。
操作S241,获取预期的网络变更结果,其中,该预期的网络变更结果用于表征用户的网络变更意图。
例如,在网络变更方案中包含开通源地址IP1到目标地址IP2的访问权限。此时,预期的网络变更结果为源地址IP1到目标地址IP2途径的网络设备中路由都有访问IP2的路由,并且没有策略限制IP1访问IP2。
在操作S242,确定该对应的网络变更结果是否与该预期的网络变更结果一致。
可以理解,如果该对应的网络变更结果与该预期的网络变更结果一致,则表征本次网络变更符合用户意图。如果该对应的网络变更结果与该预期的网络变更结果不一致,则表征本次网络变更不符合用户意图。
进一步,作为一种可选的实施例,该方法例如还可以包括如下操作。
响应于确定该对应的网络变更结果与该预期的网络变更结果不一致,比较两个变更结果之间的差异。
根据比较结果,确定该网络变更方案中存在的错误信息。
更进一步,作为一种可选的实施例,该方法例如还可以包括确定并输出与该错误信息对应的更正信息。
作为一种可选的实施例,上述错误信息例如可以包括以下至少之一:网络配置命令出现拼写和/或语法错误;网络配置命令出现静态逻辑错误。
例如,在网络变更方案中包含开通源地址IP1到目标地址IP2的访问权限。此时,预期的网络变更结果为源地址IP1到目标地址IP2的路由接口处的访问控制列表ACL中会增加允许将来自源地址IP1的数据包转发至目标地址IP2的访问控制指令。而仿真网络环境中的网络变更结果中出现的却是源地址IP1到目标地址IP3的路由接口处的访问控制列表ACL中增加了允许将来自源地址IP1的数据包转发至目标地址IP3 的访问控制指令。显然,这种错误属于静态逻辑错误(即在配置网络变更方案时,使用了错误的网络配置策略),即用户将开通源地址IP1到目标地址IP2的访问权限的命令写成了开通源地址IP1到目标地址IP3 的访问权限的命令。
可以理解,在本公开实施例中,出现静态逻辑错误是因为制定网络变更方案时使用了错误的网络配置策略,但是所使用的网络配置命令不存在拼写和/或语法错误,因而即使出现静态逻辑错误,程序也是可以识别网络配置命令并实现网络变更的,只是这种情况下实现的网络变更并不符合用户意图而已。
或者,例如,在网络变更方案中包含开通源地址IP1到目标地址IP2 的访问权限。此时,预期的网络变更结果为源地址IP1到目标地址IP2 的路由接口处的访问控制列表ACL中会增加允许将来自源地址IP1的数据包转发至目标地址IP2的访问控制指令。而仿真网络环境中的网络变更结果显示从源地址IP1到目标地址IP2的路由接口处的访问控制列表ACL中并没有增加允许将来自源地址IP1的数据包转发至目标地址 IP2的访问控制指令。显然,这种错误属于网络配置命令的拼写和/或语法错误(即在配置网络变更方案时,将合法的网络配置命令拼错了和/ 或使用了不合法的网络配置命令,如使用了格式和/或语法错误的配置命令)。
可以理解,在本公开实施例中,出现网络配置命令的拼写和/或语法错误是因为制定网络变更方案时使用了有拼写和/或语法错误的网络配置命令,导致程序无法识别网络配置命令,因而无法实现对应的网络变更,即数据面的表项中没有出现相应的指令条目。
作为一种可选的实施例,如图5所示,该方法除了可以包括如图4 所示的操作S210~S240以及操作S410之外,还可以包括操作S510。
在操作S510,在将该网络变更方案发送至现实网络环境之后,验证该现实网络环境是否发生了与该用户的网络变更意图对应的网络变更。
具体地,在本公开实施例中,在操作S510之前,可以针对现实网络采集一次网络配置信息(本次采集的网络配置信息还可以用于作为仿真网络的配置输入),在将该网络变更方案发送至现实网络环境之后,针对现实网络再采集一次网络配置信息,通过比较两次采集的网络配置信息,确定所有的网络变更结果,在结合本网络变更方案,从所有的网络变更结果找出由本网络变更方案引起的网络变更结果。其中,如果能找到由本网络变更方案引起的网络变更结果,则认为现实网络环境发生了与该用户的网络变更意图对应的网络变更;否则,则认为现实网络环境没有发生与该用户的网络变更意图对应的网络变更。
此外,在操作S510,如果验证该现实网络环境发生了与该用户的网络变更意图对应的网络变更,即验证通过,则输出完成结果报告;如果验证该现实网络环境没有发生与该用户的网络变更意图对应的网络变更,即验证未通过,则输出未完成结果报告,并说明检验未通过的原因。其中,检验未通过的原因包括但不限于受网络设备条目限制或CPU 限制等导致网络变更方案下发却未生效的情况。
通过本公开实施例,每推演一次(批)网络变更方案,可以采集两次现实网络的配置信息,其中第一次采集的全量网络配置信息用来仿真现实网络环境,第二次采集的相关网络配置信息用来在在操作S510中做数据面校验,可以主动检查因CPU或者网络设备条目限制导致网络变更方案下发不成功的情况。
此外,信息采集的及时性和全面性是仿真网络是否准确、完整的关键,为本公开实施例的针对网络变更的处理方法提供基础保障。对此,在本公开实施例中,针对现实网络采集网络配置信息例如可以包括通过 SNMP、SSH技术或者Telemetry等信息采集技术定时采集现实网络中各网络设备的运行状态、配置信息、表项信息等,也可以通过对接网管接口来采集现实网络的配置信息。
进一步,作为一种可选的实施例,操作S510例如可以包括如下操作。
获取第一预设列表,其中,该第一预设列表对应于将该网络变更方案发送至该现实网络环境之前的现实网络的配置。
在将该网络变更方案发送至该现实网络环境之后,获取对应的第二预设列表。
确定该第二预设列表中不同于该第一预设列表中的指令条目。
判断所确定指令条目中是否包含与该用户的网络变更意图对应的指令条目。
需要说明的是,在本公开实施例中,上述操作中的第一预设列表的类型与第二预设列表的类型对应相同。并且,第一预设列表可以包括一个或者多个不同类型的列表,对应地,第二预设列表也是如此。例如,第一预设列表和第二预设列表可以包括数据面的各种表项,其中,数据面的各种表项可以包括但不限于mac表、arp表、邻居表项、路由表等中的至少之一。
例如,在网络变更方案中包含开通源地址IP1到目标地址IP2的访问权限,并且,源地址IP1访问目标地址IP2需要经由路由器A。此时,对于操作S510,将网络变更方案发送至现实网络环境之前,可以获取一次路由器A处的路由表,在将网络变更方案发送至现实网络环境之后,可以再获取一次路由器A处的路由表,然后比较两次获取的路由表,并查看后面获取的路由表相较于前面获取的路由表是否增加了允许将来自源地址IP1的数据包转发至目标地址IP2的访问控制指令。
更进一步,作为一种可选的实施例,该方法例如还可以包括如果该第二预设列表相比于该第一预设列表未发生变化,则确定该第一预设列表中的指令条目数是否已达到限制值,或者确定下发网络变更方案时是否出现CPU冲高状态(即CPU是否在下发网络变更方案时已被其他任务占满)。
由于CPU被占满或者网络设备条目限制会导致网络变更方案下发不成功,因此,如果两次获取的预设列表没有差别,则表明可能受CPU 被占满或者网络设备条目限制而导致网络变更方案下发不成功。而确定该第一预设列表中的指令条目数是否已达到限制值,或者确定下发网络变更方案时是否出现CPU被占满的情况可以确定网络变更方案下发不成功是由什么原因引起的。
例如,在网络变更方案中包含开通源地址IP1到目标地址IP2的访问权限,并且,源地址IP1访问目标地址IP2需要经由路由器A。此时,对于操作S510,将网络变更方案发送至现实网络环境之前,可以获取一次路由器A处的路由表,在将网络变更方案发送至现实网络环境之后,可以再获取一次路由器A处的路由表,比较两次获取的路由表,发现后面获取的路由表相较于前面获取的路由表中并没有增加允许将来自源地址IP1的数据包转发至目标地址IP2的访问控制指令,但这两次获取的路由表的实际指令条目数已经达到了预设限制值例如1000,由此可以确定网络变更方案下发不成功可能是由路由器A条目限制引起的,或者可能是由下发网络变更方案时CPU被其他任务占满引起的。
图6示意性示出了根据本公开实施例的针对网络变更的处理装置的框图。
如图6所示,针对网络变更的处理装置600包括第一获取模块610、执行模块620、第二获取模块630和第一确定模块640。该针对网络变更的处理装置可以执行上面参考方法实施例部分描述的方法,在此不再赘述。
具体地,第一获取模块610,用于获取网络变更方案,其中,该网络变更方案包括至少一条网络配置命令。
执行模块620,用于在仿真网络环境下执行该至少一条网络配置命令。
第二获取模块630,用于在该至少一条网络配置命令执行完毕后,获取对应的网络变更结果。
第一确定模块640,用于确定该对应的网络变更结果是否符合用户的网络变更意图。
进一步,针对网络变更的处理装置例如还可以包括发送模块。发送模块用于响应于确定该对应的网络变更结果符合该用户的网络变更意图,将该网络变更方案发送至现实网络环境,以便在该现实网络环境实现对应的网络变更。
通过本公开实施例,形成网络变更方案后,可以先在仿真网络中基于该网络变更方案实现网络变更,并验证仿真网络中实现的网络变更是否符合用户的变更意图。如果符合,则再在现实网络中基于该网络变更方案实现网络变更。如果不符合,则针对该网络变更方案输出对应的静态错误、逻辑错误等,并输出对应的修改意见。因此,本公开实施例提供的针对网络变更的处理方法可以有效地防止人为配置错误而导致的网络故障,提高网络变更的准确率。
并且,还可以放宽变更审核人员标准,例如审核人员无须具备丰富的网络方面经验。此外,可以提升网络变更方案的自动下发能力,减少人工成本和人为操作失误率,使得网络变更更安全、更高效。此外,还可以解决异构环境之间的网络运维管理问题,实现以意图为导向的统一管控,无需精通各个厂商的命令、熟悉各个版本的差异。此外,可以估计网络变更造成的影响,从而缩短网络基础设施交付时间。
作为一种可选的实施例,该第一确定模块包括:第一获取单元,用于获取预期的网络变更结果,其中,该预期的网络变更结果用于表征用户的网络变更意图;以及第二确定单元,用于确定该对应的网络变更结果是否符合与该预期的网络变更结果一致。
更进一步,作为一种可选的实施例,该装置例如还可以包括:比较模块,用于响应于确定该对应的网络变更结果与该预期的网络变更结果不一致,比较两个变更结果之间的差异;以及第二确定模块,用于根据比较结果,确定该网络变更方案中存在的错误信息。
更进一步,作为一种可选的实施例,该装置例如还可以包括:第三确定模块,用于确定并输出与该错误信息对应的更正信息。
作为一种可选的实施例,该装置例如还可以包括:验证模块,用于在将该网络变更方案发送至现实网络环境之后,验证该现实网络环境是否发生与该用户的网络变更意图对应的网络变更。
更进一步,作为一种可选的实施例,该验证模块包括:第二获取单元,用于获取第一预设列表,其中,该第一预设列表对应于将该网络变更方案发送至该现实网络环境之前的现实网络的配置;第三获取单元,用于在将该网络变更方案发送至该现实网络环境之后,获取对应的第二预设列表;第二确定单元,用于确定该第二预设列表中不同于该第一预设列表中的指令条目;以及判断单元,用于判断所确定指令条目中是否包含与该用户的网络变更意图对应的指令条目。
更进一步,作为一种可选的实施例,该装置例如还可以包括:第四确定模块,用于在该第二预设列表相比于该第一预设列表未发生变化的情况下,确定该第一预设列表中的指令条目数是否已达到限制值,或者确定下发网络变更方案时是否出现CPU冲高状态。
需要说明的是,装置部分的实施例方式与方法部分的实施例方式对应类似,并且所达到的技术效果也对应类似,在此不再赘述。
根据本公开的实施例的模块、单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
例如,第一获取模块610、执行模块620、第二获取模块630、第一确定模块640中的任意多个可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本公开的实施例,第一获取模块610、执行模块620、第二获取模块630、第一确定模块640中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以通过对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,第一获取模块610、执行模块620、第二获取模块630、第一确定模块640中的至少一个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。
图7示意性示出了根据本公开实施例的电子设备的框图。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700包括处理器710、计算机可读存储介质 720。该电子设备700可以执行根据本公开实施例的方法。
具体地,处理器710例如可以包括通用微处理器、指令集处理器和 /或相关芯片组和/或专用微处理器(例如,专用集成电路(ASIC)),等等。处理器710还可以包括用于缓存用途的板载存储器。处理器710可以是用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。
计算机可读存储介质720,例如可以是非易失性的计算机可读存储介质,具体示例包括但不限于:磁存储装置,如磁带或硬盘(HDD);光存储装置,如光盘(CD-ROM);存储器,如随机存取存储器(RAM) 或闪存;等等。
计算机可读存储介质720可以包括计算机程序721,该计算机程序 721可以包括代码/计算机可执行指令,其在由处理器710执行时使得处理器710执行根据本公开实施例的方法或其任何变形。
计算机程序721可被配置为具有例如包括计算机程序模块的计算机程序代码。例如,在示例实施例中,计算机程序721中的代码可以包括一个或多个程序模块,例如包括721A、模块721B、……。应当注意,模块的划分方式和个数并不是固定的,本领域技术人员可以根据实际情况使用合适的程序模块或程序模块组合,当这些程序模块组合被处理器 710执行时,使得处理器710可以执行根据本公开实施例的方法或其任何变形。
根据本公开的实施例,第一获取模块610、执行模块620、第二获取模块630、第一确定模块640中的至少一个可以实现为参考图7描述的计算机程序模块,其在被处理器710执行时,可以实现上面描述的相应操作。
本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
本领域技术人员可以理解,尽管已经参照本公开的特定示例性实施例示出并描述了本公开,但是本领域技术人员应该理解,在不背离所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以对本公开进行形式和细节上的多种改变。因此,本公开的范围不应该限于上述实施例,而是应该不仅由所附权利要求来进行确定,还由所附权利要求的等同物来进行限定。

Claims (11)

1.一种针对网络变更的处理方法,包括:
获取网络变更方案,其中,所述网络变更方案包括至少一条网络配置命令;
在仿真网络环境下执行所述至少一条网络配置命令;
在所述至少一条网络配置命令执行完毕后,获取对应的网络变更结果;以及
确定所述对应的网络变更结果是否符合用户的网络变更意图;
其中,所述方法还包括:
响应于确定所述对应的网络变更结果符合所述用户的网络变更意图,将所述网络变更方案发送至现实网络环境,以便在所述现实网络环境实现对应的网络变更。
2.根据权利要求1所述的方法,其中,所述确定所述对应的网络变更结果是否符合用户的网络变更意图,包括:
获取预期的网络变更结果,其中,所述预期的网络变更结果用于表征用户的网络变更意图;以及
确定所述对应的网络变更结果是否与所述预期的网络变更结果一致。
3.根据权利要求2所述的方法,还包括:
响应于确定所述对应的网络变更结果与所述预期的网络变更结果不一致,比较两个变更结果之间的差异;以及
根据比较结果,确定所述网络变更方案中存在的错误信息。
4.根据权利要求3所述的方法,还包括:
确定并输出与所述错误信息对应的更正信息。
5.根据权利要求3或4所述的方法,其中,所述错误信息包括以下至少之一:
网络配置命令出现拼写和/或语法错误;
网络配置命令出现静态逻辑错误。
6.根据权利要求1所述的方法,还包括:在将所述网络变更方案发送至现实网络环境之后,
验证所述现实网络环境是否发生与所述用户的网络变更意图对应的网络变更。
7.根据权利要求6所述的方法,其中,所述验证所述现实网络环境是否发生与所述用户的网络变更意图对应的网络变更,包括:
获取第一预设列表,其中,所述第一预设列表对应于将所述网络变更方案发送至所述现实网络环境之前的现实网络的配置;
在将所述网络变更方案发送至所述现实网络环境之后,获取对应的第二预设列表;
确定所述第二预设列表中不同于所述第一预设列表中的指令条目;以及
判断所确定指令条目中是否包含与所述用户的网络变更意图对应的指令条目。
8.根据权利要求7所述的方法,还包括:
如果所述第二预设列表相比于所述第一预设列表未发生变化,则确定所述第一预设列表中的指令条目数是否已达到限制值或者确定下发所述网络变更方案时是否出现CPU冲高状态。
9.一种针对网络变更的处理装置,包括:
第一获取模块,用于获取网络变更方案,其中,所述网络变更方案包括至少一条网络配置命令;
执行模块,用于在仿真网络环境下执行所述至少一条网络配置命令;
第二获取模块,用于在所述至少一条网络配置命令执行完毕后,获取对应的网络变更结果;
第一确定模块,用于确定所述对应的网络变更结果是否符合用户的网络变更意图;
发送模块,用于响应于确定所述对应的网络变更结果符合所述用户的网络变更意图,将所述网络变更方案发送至现实网络环境,以便在所述现实网络环境实现对应的网络变更。
10.一种电子设备,包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现权利要求1至8中任一项所述的方法。
11.一种计算机可读存储介质,存储有计算机可执行指令,所述指令在被处理器执行时用于实现权利要求1至8中任一项所述的方法。
CN202010583285.1A 2020-06-23 2020-06-23 针对网络变更的处理方法和装置 Active CN111726255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010583285.1A CN111726255B (zh) 2020-06-23 2020-06-23 针对网络变更的处理方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010583285.1A CN111726255B (zh) 2020-06-23 2020-06-23 针对网络变更的处理方法和装置

Publications (2)

Publication Number Publication Date
CN111726255A CN111726255A (zh) 2020-09-29
CN111726255B true CN111726255B (zh) 2022-10-18

Family

ID=72568486

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010583285.1A Active CN111726255B (zh) 2020-06-23 2020-06-23 针对网络变更的处理方法和装置

Country Status (1)

Country Link
CN (1) CN111726255B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112953768B (zh) * 2021-02-10 2023-02-24 中国工商银行股份有限公司 三层网络变更方案验证方法及系统
CN113259171B (zh) * 2021-06-02 2021-10-01 新华三技术有限公司 一种业务部署方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015103297A1 (en) * 2013-12-30 2015-07-09 Sonus Networks, Inc. Network communication methods and apparatus
CN106130897A (zh) * 2016-06-08 2016-11-16 成都万纬信息技术有限公司 基于路由模拟的性能优化方法
CN107147523A (zh) * 2017-05-12 2017-09-08 山东浪潮商用系统有限公司 一种基于设备图像仿真计算的资源变更自动发现方法
CN108768685A (zh) * 2018-03-29 2018-11-06 中国电力科学研究院有限公司 大规模信息通信网络实时仿真模拟系统
CN109802852A (zh) * 2018-12-13 2019-05-24 烽台科技(北京)有限公司 应用于网络靶场的网络仿真拓扑的构建方法及系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11121919B2 (en) * 2018-04-13 2021-09-14 Vmware, Inc. Methods and apparatus to determine a duration estimate and risk estimate of performing a maintenance operation in a networked computing environment

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015103297A1 (en) * 2013-12-30 2015-07-09 Sonus Networks, Inc. Network communication methods and apparatus
CN106130897A (zh) * 2016-06-08 2016-11-16 成都万纬信息技术有限公司 基于路由模拟的性能优化方法
CN107147523A (zh) * 2017-05-12 2017-09-08 山东浪潮商用系统有限公司 一种基于设备图像仿真计算的资源变更自动发现方法
CN108768685A (zh) * 2018-03-29 2018-11-06 中国电力科学研究院有限公司 大规模信息通信网络实时仿真模拟系统
CN109802852A (zh) * 2018-12-13 2019-05-24 烽台科技(北京)有限公司 应用于网络靶场的网络仿真拓扑的构建方法及系统

Also Published As

Publication number Publication date
CN111726255A (zh) 2020-09-29

Similar Documents

Publication Publication Date Title
US7631227B2 (en) Automated testing and control of networked devices
US9686162B2 (en) Identifying configuration inconsistency in edge-based software defined networks (SDN)
CN111034123B (zh) 用于执行网络保证检查的系统、方法及计算机可读介质
CN111726255B (zh) 针对网络变更的处理方法和装置
CN111684439B (zh) 网络保证数据库版本兼容性
US8700632B2 (en) Managing heterogeneous data
CN109495293B (zh) 一种交换机控制面的测试方法、系统、设备及存储介质
US20230142573A1 (en) Method, apparatus, and system for constructing knowledge graph, and computer storage medium
US20210042631A1 (en) Techniques for Cyber-Attack Event Log Fabrication
Girish et al. Mathematical tools and methods for analysis of SDN: A comprehensive survey
CN114513404B (zh) 时间敏感网络的配置方法、装置及计算机可读存储介质
CN107566513A (zh) 测试设备dos环境数据采集方法和系统
US20180123900A1 (en) Scenario driven, technology agnostic network simulation
US20180123899A1 (en) Technology agnostic network simulation
CN116681013B (zh) 网络芯片的仿真验证方法、平台、装置、设备及介质
JP2014035595A (ja) 通信システムの試験装置、通信システムの試験用プログラム及び通信システムの試験方法
Berendsen et al. Formal specification and analysis of zeroconf using uppaalS
Hussein et al. SDN verification plane for consistency establishment
US11823701B2 (en) Network operation based on domain specific language
CN110362294A (zh) 开发任务执行方法、装置、电子设备及存储介质
CN111245676B (zh) 通信协议可信性验证装置
US10936512B2 (en) Accurate can-based distributed control system simulations
Xu et al. SDN state inconsistency verification in openstack
CN111082984A (zh) 模拟登录网络设备进行命令行交互的方法和装置
CN111224985B (zh) 通信协议可信性验证方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant