CN114006812B - 网络设备的配置方法及装置 - Google Patents
网络设备的配置方法及装置 Download PDFInfo
- Publication number
- CN114006812B CN114006812B CN202111278114.9A CN202111278114A CN114006812B CN 114006812 B CN114006812 B CN 114006812B CN 202111278114 A CN202111278114 A CN 202111278114A CN 114006812 B CN114006812 B CN 114006812B
- Authority
- CN
- China
- Prior art keywords
- configuration
- preset
- information
- configuration information
- sub
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 90
- 230000008569 process Effects 0.000 claims description 44
- 238000004806 packaging method and process Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 11
- 230000006870 function Effects 0.000 description 33
- 238000010586 diagram Methods 0.000 description 11
- 125000000524 functional group Chemical group 0.000 description 9
- 238000012545 processing Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 3
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/084—Configuration by using pre-existing information, e.g. using templates or copying from other elements
- H04L41/0843—Configuration by using pre-existing information, e.g. using templates or copying from other elements based on generic templates
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开涉及一种网络设备的配置方法、装置、***、电子设备及计算机可读介质。该方法包括:由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库。本公开涉及的网络设备的配置方法、装置、***、电子设备及计算机可读介质,能够在客户端通过NETCONF批量下发配置时,保证网络设备的回应时间不超过客户端预定的超时时间,大大提升配置下发的效率。
Description
技术领域
本公开涉及计算机信息处理领域,具体而言,涉及一种网络设备的配置方法、装置、***、电子设备及计算机可读介质。
背景技术
各设备厂商,针对相同功能的实现,对功能实现上的细节有所差异,对于客户而言,则主要体现在配置上的差异。客户在使用不同厂商的设备时,大多数场景,是通过命令行管理设备,但各厂商的命令行实现,细节上各不相同,造成各厂商设备的命令行手册也不一致,这对客户管理各厂商设备造成极大的困扰。所以,基于NETCONF的优势,需要各厂商网络设备增加对NETCONF的支持。
NETCONF允许客户端,针对某一功能所有配置批量式的下发,即一次下发所有组,且包含每个组的子配置。对此,网络设备的处理方式是,先遍历第一个组内子配置,依次下发配置到数据库,直至所有子配置下发完成后,再遍历其他组,处理完所有组后,再反馈回应信息。但是,此操作完成需要的时间,长达到15分钟,严重影响了NETCONF客户端的正常使用。
所以,针对配置批量式的下发响应时间,亟待解决。因此,需要一种新的网络设备的配置方法、装置、***、电子设备及计算机可读介质。
在所述背景技术部分公开的上述信息仅用于加强对本公开的背景的理解,因此它可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
有鉴于此,本公开提供一种网络设备的配置方法、装置、***、电子设备及计算机可读介质,能够在客户端通过NETCONF批量下发配置时,保证网络设备的回应时间不超过客户端预定的超时时间,大大提升配置下发的效率。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一方面,提出一种网络设备的配置方法,该方法包括:由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库。
在本公开的一种示例性实施例中,由客户端获取配置信息之前,还包括:在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程。
在本公开的一种示例性实施例中,基于所述预设进程配置所述网络设备,包括:基于所述预设进程调取数据库中的配置信息;将所述配置信息下发至所述网络设备以进行配置。
在本公开的一种示例性实施例中,基于所述预设进程创建预设线程,包括:在所述网络设备配置完成后,基于所述预设进程创建用于进行轮询的预设线程。
在本公开的一种示例性实施例中,所述配置信息以功能组的子配置为单位;根据所述配置信息对作为服务端的网络设备进行配置,包括:基于所述配置信息提取预设功能组;将所述预设功能组的标志位增加1;将所述子配置应用到所述预设功能组。
在本公开的一种示例性实施例中,所述配置信息以功能组为单位;根据所述配置信息对作为服务端的网络设备进行配置,包括:基于所述配置信息逐一提取所有功能组;逐一提取所有功能组中的所有子配置;将所述配置信息应用到所述所有子配置;将所述所有子配置的标志位增加1。
在本公开的一种示例性实施例中,根据配置结果生成返回信息并发送至所述客户端,包括:根据配置结果生成组装信息;将所述组装信息封装以生成返回信息;将所述返回信息发送至所述客户端以进行响应。
在本公开的一种示例性实施例中,将所述网络设备的当前配置信息更新到数据库,包括:通过所述预设线程定时轮询所述网络设备中功能组和子配置的标志位;在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库。
在本公开的一种示例性实施例中,在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库,包括:在所述标志位和上个周期的数值不同时,根据将所述标志位对应的功能组的配置信息生成数据库语句;基于所述数据库语句将所述配置信息更新到所述数据库。
根据本公开的一方面,提出一种网络设备的配置装置,该装置包括:信息模块,用于由客户端获取配置信息;配置模块,用于根据所述配置信息对作为服务端的网络设备进行配置;返回模块,用于根据配置结果生成返回信息并发送至所述客户端;更新模块,用于将所述网络设备的当前配置信息更新到数据库。
在本公开的一种示例性实施例中,还包括:初始设置模块,用于在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程。
根据本公开的一方面,提出一种网络设备的配置***,该装置包括:客户端,用于生成配置信息;服务端,用于根据所述配置信息对网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库。
根据本公开的一方面,提出一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上文的方法。
根据本公开的一方面,提出一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行时实现如上文中的方法。
根据本公开的网络设备的配置方法、装置、***、电子设备及计算机可读介质,由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库的方式,能够在客户端通过NETCONF批量下发配置时,保证网络设备的回应时间不超过客户端预定的超时时间,大大提升配置下发的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性的,并不能限制本公开。
附图说明
通过参照附图详细描述其示例实施例,本公开的上述和其它目标、特征及优点将变得更加显而易见。下面描述的附图仅仅是本公开的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的一种网络设备的配置***的示意图。
图2是根据一示例性实施例示出的一种网络设备的配置方法的流程图。
图3是根据另一示例性实施例示出的一种网络设备的配置方法的示意图。
图4是根据另一示例性实施例示出的一种网络设备的配置方法的示意图。
图5是根据另一示例性实施例示出的一种网络设备的配置方法的流程图。
图6是根据一示例性实施例示出的一种网络设备的配置装置的框图。
图7是根据一示例性实施例示出的一种电子设备的框图。
图8是根据一示例性实施例示出的一种计算机可读介质的框图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本公开将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本公开的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本公开的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
本公开涉及的技术缩略语解释如下:
NETCONF:(Network Configuration Protocol)网络配置协议提供一套管理网络设备的机制,用户可通过此协议增加、修改、删除网络设备的配置,并用以获取设备的配置及状态信息。客户端与服务器之间基于NETCONF协议,实现通信流程,具体实现细节是协议(对应rfc标准)提供一套通用程序编程接口API,客户端、服务器可以直接使用这些API,进行通信。在实际应用场景中,客户端可以是脚本或者网管上运行的一个程序,服务器则是一个常见的网络设备。
数据库:按照数据结构组织、存储和管理数据。数据库用很多种类型,从最简单的存储到管理海量数据的数据库***,发展至今,数据库充分有效地管理信息资源。
Sqlite3:是一个软件库,实现了自给自足的、无服务器的、零配置的、事务性的SQL数据库引擎。以占用资源少、运行速度快著称,以几百kb形式的文件存储在磁盘。主要应用场景为嵌入式开发等存储数据量小的环境。
本公开的发明人发现,一个网络设备可以同时运行多个不同的功能业务,根据功能上将各业务划分为若干模块,每个模块必须包含以下流程:配置存储、配置应用、协议运行等。某一功能模块一般分为多个组,每个组又包含多个子配置。在配置的存储上,采用以组的形式存储在数据库中,并且以组的id作为数据库的主键。
NETCONF客户端对某功能进行配置操作时,一次下发的流程,支持按照多种不同单位下发配置,比如:可具体到功能组0的子配置A、也能做到按照功能组0所有的子配置、还可以是所有功能组的所有子配置。
假设数据库表名为tb_module;组id,列名为id,值为0;子配置A的列名为conf_A,下发的值为a;子配置B的列名为conf_B,下发的值为b;子配置C的列名为conf_C,下发的值为c;数据库的键值为组id。
以NETCONF客户端下发某功能的组0子配置A为例,NETCONF客户端管理网络设备的大体流程如下:
(1)NETCONF客户端发送信息至服务端网络设备;
(2)服务端进程解析信息是配置下发,且对应的具体配置为组0的子配置A;
(3)进程先下发组0子配置A的值a至数据库(数据库),执行数据库语句如下:insert or replace into tb_module(conf_A)VALUES(a)where id=0;并将配置下发至内存,被功能运用;
(4)进程根据流程(3)的执行结果,将结果组装成信息反馈至客户端。
(5)客户端根据返回结果,判断此次操作的结果,是成功还是失败。
NETCONF客户端判断服务端是否执行成功的判断机制有2种方式:
1、根据服务端回馈的消息码,来确定客户端下发的配置是否成功;
2、客户端针对每次操作都设有一个超时时间,一般为30s,即在客户端发送消息的时刻起,未在30s内回馈消息,则认定服务端执行失败。否则,以消息码为准。
NETCONF允许客户端,针对某一功能所有配置批量式的下发,即一次下发所有组,且包含每个组的子配置。对此,网络设备的处理方式是,先遍历第一个组内子配置,依次下发配置到数据库,直至所有子配置下发完成后,再遍历其他组,处理完所有组后,再反馈回应信息。但是,此操作完成需要的时间,长达到15分钟,严重影响了NETCONF客户端的正常使用。
有鉴于现有技术中的技术难题,本公开提出了种网络设备的配置方法,通过本公开中的方法,即使客户端通过NETCONF批量下发配置,也保证网络设备的回应时间不超过客户端预定的超时时间,保证客户端的政策使用。
图1是根据一示例性实施例示出的一种网络设备的配置***的示意图。
如图1所示,***架构10可以包括服务器101、102、103,网络104和客户端105。网络104用以在服务器101、102、103和客户端105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
服务器101、102、103可以是具有网络传输功能的各种网络设备,包括但不限于防火墙、路由器、智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
更具体的,客户端105可为网管服务器上运行的程序,服务器101、102、103是网络设备。
客户端105可例如,根据用户操作生成配置信息;服务器101、102、103可例如由客户端105获取配置信息;服务器101、102、103可例如根据所述配置信息对作为服务端的网络设备进行配置;服务器101、102、103可例如根据配置结果生成返回信息并发送至所述客户端;服务器101、102、103可例如将所述网络设备的当前配置信息更新到数据库。
服务器101、102、103还可例如在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程。
需要说明的是,本公开实施例所提供的网络设备的配置方法可以由服务器101、102、103执行,相应地,网络设备的配置装置可以设置于服务器101、102、103中。而提供给用户生成配置信息的操作端一般位于客户端105中。
图2是根据一示例性实施例示出的一种网络设备的配置方法的流程图。网络设备的配置方法20至少包括步骤S202至S208。
如图2所示,在S202中,由客户端获取配置信息。其中,客户端为NETCONF客户端,用户可在客户端上进行操作,以生成配置信息。
在S204中,根据所述配置信息对作为服务端的网络设备进行配置。
在一个实施例中,所述配置信息以功能组的子配置为单位;根据所述配置信息对作为服务端的网络设备进行配置,可包括:基于所述配置信息提取预设功能组;将所述预设功能组的标志位增加1;将所述子配置应用到所述预设功能组。
更具体的,如图3所示,可例如,客户端以某一功能组的子配置为单位,进行操作。更具体的,NETCONF客户端下发组0子配置A,进程接收到配置后,不再执行配置存储的流程,标记组0的标记位加1,直接进行配置应用。
在一个实施例中,所述配置信息以功能组为单位;根据所述配置信息对作为服务端的网络设备进行配置,可包括:基于所述配置信息逐一提取所有功能组;逐一提取所有功能组中的所有子配置;将所述配置信息应用到所述所有子配置;将所述所有子配置的标志位增加1。
更具体的,如图4所示,可例如,客户端以某功能所有组为单位,下发配置至网络设备,更具体的,网络设备接收到下发信息后,先遍历第一个组内的子配置,并针对每个子配置,跳过数据库配置存储,直接进行配置应用,而后,每添加一子配置,即对组内标记位加1。再继续遍历其大概保持在30s内。
在S206中,根据配置结果生成返回信息并发送至所述客户端。包括:根据配置结果生成组装信息;将所述组装信息封装以生成返回信息;将所述返回信息发送至所述客户端以进行响应。
在一个实施例中,NETCONF客户端接收到服务器的回应信息,表示本次操作完成,继续下一次的操作;
在S208中,将所述网络设备的当前配置信息更新到数据库。在一个实施例中,可通过所述预设线程定时轮询所述网络设备中功能组和子配置的标志位;在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库。
更具体的,可例如,在所述标志位和上个周期的数值不同时,根据将所述标志位对应的功能组的配置信息生成数据库语句;基于所述数据库语句将所述配置信息更新到所述数据库。
在本公开中,数据库可为sqlilte3数据库,且应用场景单一,主要为存储用户在网络设备上,操作的业务配置。通过sqlilte3数据库,能够支持一条语句同时下发本数据库内所有列表的数据,sqlilte3数据库配合本申请的数据库更新操作使用,大大提供了工作效率。
更具体的,如图3所示,可例如,客户端以某一功能组的子配置为单位,进行操作。预设线程可为轮询线程A,轮询线程A遍历所有组,读取所有组的置位标记,判断各组标记与前一秒的标记是否相同,如果标记相同,则轮询线程A这一轮执行结束,等待下次的执行到来。
如标记不相同,根据组A的现有配置,使用一条数据库语句,将组内的所有子配置,同时更新至对应的数据库中,执行的数据库语句可如下:
insert or replace into tb_module(conf_A,conf_B,conf_C)VALUES(a,b,c)where id=0;。
最后,更新组A的标记位,线程A这一轮执行结束,等待下次的执行到来。
更具体的,如图4所示,可例如,客户端以某功能所有组为单位,下发配置至网络设备,轮询线程A根据前后标记位,筛选配置发生变化的组,遍历每个发生变化的组,根据组内的现有配置,组装成数据库语句,根据组id下发至数据库。更新各个组的标记位,轮询线程A结束执行。
在一个实施例中,还可在设备重启前,在执行以便轮询线程A,制执行之后关闭数据库。此操作是防止设备重启时,轮询线程A提前结束,无法完成完整的配置存储。
根据本公开的网络设备的配置方法,由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库的方式,能够在客户端通过NETCONF批量下发配置时,保证网络设备的回应时间不超过客户端预定的超时时间,大大提升配置下发的效率。
根据本公开的网络设备的配置方法,通过数据库配置存储实现流程与数据下发至功能的流程分离,还通过使用一条数据语句实现某一功能组的数据存储等2个流程的融合,并借助变更标记的使用,将数据库的配置,与数据下发至功能的流程分离,减少数据库操作次数,实现了NETCONF客户端在下发批量配置时的快速响应。
应清楚地理解,本公开描述了如何形成和使用特定示例,但本公开的原理不限于这些示例的任何细节。相反,基于本公开公开的内容的教导,这些原理能够应用于许多其它实施例。
图5是根据另一示例性实施例示出的一种网络设备的配置方法的流程图。图5所示的流程50是对图2所示的流程的补充描述。
如图5所示,在S502中,在所述网络设备启动后,开启预设进程。
在S504中,基于所述预设进程配置所述网络设备。包括:基于所述预设进程调取数据库中的配置信息;将所述配置信息下发至所述网络设备以进行配置。
服务端网络设备正常启动后,服务端进程正常启动,预设进程打开数据库(直至设备被重启,再关闭),并提取现有相关数据库的配置,将所有配置下发至功能应用。
在S506中,基于所述预设进程创建预设线程。可例如,在所述网络设备配置完成后,基于所述预设进程创建用于进行轮询的预设线程。预设进程所有配置恢复完成后,创建一个轮询线程A,并将其以间隔一秒的时间,开始轮询运行。
本领域技术人员可以理解实现上述实施例的全部或部分步骤被实现为由CPU执行的计算机程序。在该计算机程序被CPU执行时,执行本公开提供的上述方法所限定的上述功能。所述的程序可以存储于一种计算机可读存储介质中,该存储介质可以是只读存储器,磁盘或光盘等。
此外,需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
下述为本公开装置实施例,可以用于执行本公开方法实施例。对于本公开装置实施例中未披露的细节,请参照本公开方法实施例。
图6是根据另一示例性实施例示出的一种网络设备的配置装置的框图。如图6所示,网络设备的配置装置60包括:信息模块602,配置模块604,返回模块606,更新模块608,网络设备的配置装置60还可包括:初始设置模块610。
信息模块602用于由客户端获取配置信息;
配置模块604用于根据所述配置信息对作为服务端的网络设备进行配置;
返回模块606用于根据配置结果生成返回信息并发送至所述客户端;
更新模块608用于将所述网络设备的当前配置信息更新到数据库。
初始设置模块610用于在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程。
根据本公开的网络设备的配置装置,由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库的方式,能够在客户端通过NETCONF批量下发配置时,保证网络设备的回应时间不超过客户端预定的超时时间,大大提升配置下发的效率。
图7是根据一示例性实施例示出的一种电子设备的框图。
下面参照图7来描述根据本公开的这种实施方式的电子设备700。图7显示的电子设备700仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
如图7所示,电子设备700以通用计算设备的形式表现。电子设备700的组件可以包括但不限于:至少一个处理单元710、至少一个存储单元720、连接不同***组件(包括存储单元720和处理单元710)的总线730、显示单元740等。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元710执行,使得所述处理单元710执行本说明书中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元710可以执行如图2,图5中所示的步骤。
所述存储单元720可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)7201和/或高速缓存存储单元7202,还可以进一步包括只读存储单元(ROM)7203。
所述存储单元720还可以包括具有一组(至少一个)程序模块7205的程序/实用工具7204,这样的程序模块7205包括但不限于:操作***、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线730可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、***总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备700也可以与一个或多个外部设备700’(例如键盘、指向设备、蓝牙设备等)通信,使得用户能与该电子设备700交互的设备通信,和/或该电子设备700能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口750进行。并且,电子设备700还可以通过网络适配器760与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。网络适配器760可以通过总线730与电子设备700的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备700使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID***、磁带驱动器以及数据备份存储***等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,如图8所示,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、或者网络设备等)执行根据本公开实施方式的上述方法。
所述软件产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该计算机可读介质实现如下功能:由客户端获取配置信息;根据所述配置信息对作为服务端的网络设备进行配置;根据配置结果生成返回信息并发送至所述客户端;将所述网络设备的当前配置信息更新到数据库。该计算机可读介质还可实现如下功能:在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程。
本领域技术人员可以理解上述各模块可以按照实施例的描述分布于装置中,也可以进行相应变化唯一不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
通过以上的实施例的描述,本领域的技术人员易于理解,这里描述的示例实施例可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施例的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施例的方法。
以上具体地示出和描述了本公开的示例性实施例。应可理解的是,本公开不限于这里描述的详细结构、设置方式或实现方法;相反,本公开意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (5)
1.一种网络设备的配置方法,其特征在于,包括:
在所述网络设备启动后,开启预设进程;
基于所述预设进程调取数据库中的配置信息;
将所述配置信息下发至所述网络设备以进行配置;
基于所述预设进程创建预设线程;
由客户端获取配置信息;
根据所述配置信息对作为服务端的网络设备进行配置,包括,在所述配置信息以功能组的子配置为单位时,基于所述配置信息提取预设功能组,将所述预设功能组的标志位增加1,以及将所述子配置应用到所述预设功能组;以及在所述配置信息以功能组为单位时,基于所述配置信息逐一提取所有功能组,逐一提取所有功能组中的所有子配置,将所述配置信息应用到所述所有子配置,以及将所述所有子配置的标志位增加1;
根据配置结果生成返回信息并发送至所述客户端;
将所述网络设备的当前配置信息更新到数据库,包括通过所述预设线程定时轮询所述网络设备中功能组和子配置的标志位以及在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库。
2.如权利要求1所述的配置方法,其特征在于,基于所述预设进程创建预设线程,包括:
在所述网络设备配置完成后,基于所述预设进程创建用于进行轮询的预设线程。
3.如权利要求1所述的配置方法,其特征在于,根据配置结果生成返回信息并发送至所述客户端,包括:
根据配置结果生成组装信息;
将所述组装信息封装以生成返回信息;
将所述返回信息发送至所述客户端以进行响应。
4.如权利要求1所述的配置方法,其特征在于,在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库,包括:
在所述标志位和上个周期的数值不同时,根据将所述标志位对应的功能组的配置信息生成数据库语句;
基于所述数据库语句将所述配置信息更新到所述数据库。
5.一种网络设备的配置装置,其特征在于,包括:
初始设置模块,用于在所述网络设备启动后,开启预设进程;基于所述预设进程配置所述网络设备;基于所述预设进程创建预设线程;
信息模块,用于由客户端获取配置信息;
配置模块,用于根据所述配置信息对作为服务端的网络设备进行配置,包括,在所述配置信息以功能组的子配置为单位时,基于所述配置信息提取预设功能组,将所述预设功能组的标志位增加1,以及将所述子配置应用到所述预设功能组;以及在所述配置信息以功能组为单位时,基于所述配置信息逐一提取所有功能组,逐一提取所有功能组中的所有子配置,将所述配置信息应用到所述所有子配置,以及将所述所有子配置的标志位增加1;
返回模块,用于根据配置结果生成返回信息并发送至所述客户端;
更新模块,用于将所述网络设备的当前配置信息更新到数据库,包括通过所述预设线程定时轮询所述网络设备中功能组和子配置的标志位以及在标志位不满足预设策略时,将所述标志位对应的功能组的子配置更新到所述数据库。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278114.9A CN114006812B (zh) | 2021-10-30 | 2021-10-30 | 网络设备的配置方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111278114.9A CN114006812B (zh) | 2021-10-30 | 2021-10-30 | 网络设备的配置方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114006812A CN114006812A (zh) | 2022-02-01 |
CN114006812B true CN114006812B (zh) | 2024-06-14 |
Family
ID=79925948
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111278114.9A Active CN114006812B (zh) | 2021-10-30 | 2021-10-30 | 网络设备的配置方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114006812B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101442469A (zh) * | 2007-11-22 | 2009-05-27 | ***通信集团公司 | 下发配置数据的方法、***及装置 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6286038B1 (en) * | 1998-08-03 | 2001-09-04 | Nortel Networks Limited | Method and apparatus for remotely configuring a network device |
CN101110822B (zh) * | 2007-07-06 | 2011-11-02 | 华为技术有限公司 | 基于网络配置协议的事件通知发送方法、***及设备 |
CN102148817B (zh) * | 2010-12-08 | 2014-04-16 | 华为技术有限公司 | 配置网络设备的方法、客户端、服务器端及网络*** |
CN104113443B (zh) * | 2013-04-19 | 2018-10-02 | 南京中兴新软件有限责任公司 | 一种网络设备检测方法、装置及云检测*** |
WO2015147780A1 (en) * | 2014-03-24 | 2015-10-01 | Hewlett-Packard Development Company, L.P. | Client-based port filter table |
CN105591819B (zh) * | 2015-12-24 | 2019-05-07 | 新华三技术有限公司 | 配置网络设备的方法及装置 |
CN105959148A (zh) * | 2016-06-15 | 2016-09-21 | 上海斐讯数据通信技术有限公司 | 一种网管***控制网络设备的方法 |
WO2018049677A1 (en) * | 2016-09-19 | 2018-03-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Method for network management based on netconf protocol, and associated network device |
CN110768818B (zh) * | 2018-07-27 | 2021-02-12 | 华为技术有限公司 | 一种网络管理方法和装置 |
CN111082953B (zh) * | 2018-10-19 | 2022-11-22 | 华为技术有限公司 | 一种配置方法、装置及相关设备 |
CN110995481A (zh) * | 2019-11-25 | 2020-04-10 | 深圳前海达闼云端智能科技有限公司 | 配置方法、服务器及计算机可读存储介质 |
CN113133024B (zh) * | 2019-12-31 | 2022-09-02 | 北京华为数字技术有限公司 | 一种网络资源的配置方法及装置 |
US11252025B2 (en) * | 2020-04-16 | 2022-02-15 | Juniper Networks, Inc. | Model driven configuration management for microservices |
-
2021
- 2021-10-30 CN CN202111278114.9A patent/CN114006812B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101442469A (zh) * | 2007-11-22 | 2009-05-27 | ***通信集团公司 | 下发配置数据的方法、***及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114006812A (zh) | 2022-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10735345B2 (en) | Orchestrating computing resources between different computing environments | |
KR102493449B1 (ko) | 엣지 컴퓨팅 테스트 방법, 장치, 전자 장치 및 컴퓨터 판독 가능 매체 | |
CN108961033B (zh) | 多业务***交互方法及装置、存储介质、电子终端 | |
US8640096B2 (en) | Configuration of componentized software applications | |
US20180315024A1 (en) | Systems and Methods Enabling Secure Transactions from Terminal Window | |
CN109245908B (zh) | 一种主从集群切换的方法和装置 | |
CN112764792B (zh) | 一种关联服务器版本应用升级方法、装置和电子设备 | |
CN111866099B (zh) | 镜像文件的下载方法、装置、***、设备及存储介质 | |
CN111831461A (zh) | 一种处理业务流程的方法和装置 | |
CN110609755A (zh) | 跨区块链节点的消息处理方法及装置、设备、介质 | |
CN110221910B (zh) | 用于执行mpi作业的方法和装置 | |
CN114489954A (zh) | 基于虚拟化平台的租户创建方法、租户访问方法及设备 | |
CN114661375A (zh) | 应用集成方法及装置 | |
CN107526838B (zh) | 数据库集群扩容的方法和装置 | |
WO2016078326A1 (zh) | 一种虚拟机名称展示的方法、装置及*** | |
CN112491940B (zh) | 代理服务器的请求转发方法及装置、存储介质及电子设备 | |
WO2024001240A1 (zh) | 多种技术栈的任务集成方法及装置 | |
CN112230944A (zh) | 应用安装方法、装置、电子设备和计算机可读介质 | |
CN114006812B (zh) | 网络设备的配置方法及装置 | |
CN116737662A (zh) | 业务数据处理的方法、装置、电子设备和存储介质 | |
CN113722007B (zh) | Vpn分支设备的配置方法、装置及*** | |
US10728323B2 (en) | Method and apparatus for operating infrastructure layer in cloud computing architecture | |
CN113708955B (zh) | 设备配置方法、装置及*** | |
CN115469807A (zh) | 磁盘功能配置方法、装置、设备及存储介质 | |
CN112181930B (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 |