配置脚本快速收集方法及网络通信设备的制作方法

文档序号:6332820阅读:127来源:国知局
专利名称:配置脚本快速收集方法及网络通信设备的制作方法
技术领域
本发明涉及网络通信领域,尤其涉及网络通信设备中脚本收集的方法。
背景技术
网络通信设备如路由器或者交换机等,在执行向用户显示配置文件命令或者写启动配置文件等等操作时都需要执行配置脚本收集过程。目前,在每一次需要使用配置信息时,网络通信设备都会执行配置脚本的收集过程。现有配置脚本的收集过程是通过收集函数创建一个临时文件,再调用需要更新配置的各个模块的脚本更新函数更新脚本块,最后将更新的各个脚本块内容写到创建的临时文件中形成完整的脚本配置文件,并将其在终端显示出来或写到启动配置文件中。现有脚本收集方法存在的问题1)在每一次需要使用脚本的时候都会执行完整的脚本收集过程,如每次执行显示配置文件或写启动配置文件时,都需要执行脚本所在的各模块对应的脚本块更新与收集, 尽管很多模块的配置没有变化,甚至整个配置都没有发生变化,在收集时也需要完整的执行脚本更新函数来更新脚本内容,浪费资源。2)当其他模块正在运行时,由于每次进行脚本收集过程都需要调用各个模块的脚本更新函数来更新自己模块的脚本块内容,并且脚本收集任务的优先级较高,容易影响其他模块的正常运行。3)由于脚本的变化一般是通过脚本收集后才能感知的到,对于热拔插或同步等需要进行脚本收集的过程,收集脚本需要消耗很大的资源,导致热拔插或同步过程进行了很多不必要的开销。在高端网络通信设备如高端路由器或者高端交换机中由于还存在脚本配置文件的冗余备份,因此上述问题表现更为严重。

发明内容
本发明所要解决的技术问题是,提供一种效率更高的配置脚本收集方法。本发明为解决上述技术问题所采用的技术方案是,配置脚本快速收集方法,包括步骤将需要生成配置的各个模块的脚本组织为至少一个脚本块节点;并将每一个脚本块节点中的脚本块对应保存至独立的存储空间;当配置命令发生改变时,触发更新与所述变化相关的脚本块节点对应存储空间中的脚本块;当进行脚本收集时,遍历各脚本块节点,将各脚本块节点对应的脚本块拷贝至脚本配置文件中。本发明将脚本块节点的更新与脚本块节点对应的脚本块的拷贝放在不同的时刻进行。预更新并单独保存各个模块对应的脚本块节点,此后,仅当各个模块的配置命令发生改变时,才单独更新并修改发生变化的脚本块节点所对应的配置脚本内容,占用系统资源少。在进行配置脚本收集时,各个模块对应的脚本块的更新已经完成,整个脚本收集过程只是简单地将各个脚本块配置内容集中起来,省去了临时调用脚本更新函数更新脚本的时间,显著提高了脚本收集速度,也不会在脚本收集时影响其它模块正常运行,提高了系统效率。为了尽可能少地占用系统资源。将需要生成配置的各个模块的脚本可组织成2个以上的脚本块节点,不限于一个模块仅对应一个脚本块节点。根据模块的实际情况,将一个模块的脚本组织成多个脚本块节点,使得当该模块的配置命令发生改变时,需要重新更新的脚本块的配置内容更少,占用该模块的运行时间更短。进一步的,在组织脚本块节点的同时,为每一个脚本块节点分配唯一的优先级;当进行脚本收集时,根据脚本块节点的优先级遍历各脚本块节点。具体的,对于配置内容不会随收集脚本的用途不同而变化的脚本块节点,会将其对应的脚本块保存为默认脚本块配置。进一步的,有少数模块的脚本块存在因收集脚本的用途不同而脚本块保存的配置内容也不相同的情形;因此,对于配置内容会随收集脚本的用途不同而不同的脚本块节点, 会根据脚本的用途的不同将不同的脚本块分别对应保存至独立的存储空间;当进行脚本收集时,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。同时,提供一种实现上述脚本收集方法的网络通信设备,包括脚本块节点组织单元、脚本块更新单元、脚本收集单元;脚本块节点组织单元用于,将需要生成配置的各个模块的脚本组织成脚本块节占.
^ \\\ 脚本块更新单元用于,将每一个脚本块节点中的脚本块对应保存至独立的存储空间;当配置命令发生改变时,触发更新与所述变化相关的脚本块节点对应存储空间中的脚本块;脚本收集单元用于,当进行脚本收集时,遍历各脚本块节点,将各脚本块节点对应存储空间的的脚本块拷贝至脚本配置文件中。进一步的,脚本块节点组织单元还用于,在组织脚本块节点的同时,为每一个脚本块节点分配唯一的优先级;脚本收集单元还用于,根据脚本块节点的优先级遍历各脚本块节点。具体的,所述脚本块更新单元还用于,对于配置内容不会随收集脚本的用途不同而变化的脚本块节点,会将其对应的脚本块保存为默认脚本块配置;所述脚本收集单元还用于,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。进一步的,脚本块更新单元还用于,对于配置内容会随收集脚本的用途不同而不同的脚本块节点,会根据脚本的用途的不同将不同的脚本块分别对应保存至独立的存储空间;脚本收集单元还用于,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。本发明的有益效果是,提高脚本收集效率与系统效率,减小脚本收集与各个模块的耦合,提供系统稳定性。


图1为实施本发明方法的网络通信设备示意图。图2为实施例中,配置变化时脚本块配置内容的保存流程。图3为实施例中,收集脚本时的流程。
具体实施例方式如图1所示的网络通信设备,包括脚本块节点组织单元、脚本块更新单元、脚本收集单元。脚本块节点组织单元将各个模块的脚本组织为一到多个小的脚本块节点,并通过分配的优先级常数对每个脚本块节点赋予唯一的优先级。将脚本块节点对应的配置脚本内容单独保存,使得能够在配置命令发生变化时单独修改这部分内容。因此需要根据模块的实际情况使用一个或多个脚本块节点。如图2所示,当配置命令发生的改变时,脚本块更新单元通过通知触发各模块的脚本块处理函数更新对应的脚本块节点的配置内容,保存到对应的独立的存储空间。独立的存储空间区别于现有技术将所有的脚本块的配置内容保存在一个临时文件中,使得单独更新某个脚本块节点的配置内容成为可能。收集的脚本可以用于执行显示配置命令如Show run,以及执行写启动配置文件(startup文件),同步等用途,由于大部分脚本块的内容是一致的,只有少数模块的脚本块节点存在因收集脚本的用途的不同而脚本块保存的配置内容也不相同的情形,因此对于脚本块节点保存的配置内容会随收集脚本的用途不同而,而分别保存一份脚本块配置内容,对于脚本块节点的配置内容不随用途变化而发生变化的脚本块保存为默认脚本块配置。对于没有进行配置的脚本块节点则不对该脚本块保存配置内容。如图3所示,对脚本进行收集时,根据脚本的用途和脚本块节点的优先级遍历所有的脚本块节点,如果脚本块节点存在有配置内容,则进一步根据用途查找是否存在其用途的配置内容,存在则将该用途的脚本块节点的配置内容拷贝到收集的脚本文件中,不存在区分用途的脚本块节点,则将默认的配置拷贝到收集的脚本文件中,并继续处理下一优先级脚本块节点;脚本块节点不存在配置内容的则跳过本节点并继续处理下一优先级脚本块节点。具体步骤如下a、根据用途收集脚本,从最高优先级的脚本块节点开始;b、判断当前脚本块节点对应的脚本块的配置内容是否存在,如是,进入步骤c ;如否,进入步骤f;C、当前脚本块是否存在该用途的配置内容,如是,进入步骤d;如否,进入步骤e ;d、将该用途的脚本块的配置内容拷贝至脚本文件中,进入步骤f ;e、将默认脚本块的配置内容拷贝到脚本文件中,进入步骤f ;所有脚本块节点遍历是否完成,如是,脚本收集完成;如否,进入下一优先级脚本块节点的处理,返回步骤b;
权利要求
1.配置脚本快速收集方法,其特征在于,包括步骤将需要生成配置的各个模块的脚本组织为至少一个脚本块节点;并将每一个脚本块节点中的脚本块对应保存至独立的存储空间;当配置命令发生改变时,触发更新所述变化相关的脚本块节点对应存储空间中的脚本块;当进行脚本收集时,遍历各脚本块节点,将各脚本块节点对应的脚本块拷贝至脚本配置文件中。
2.如权利要求1所述配置脚本快速收集方法,其特征在于,在组织脚本块节点的同时, 为每一个脚本块节点分配唯一的优先级;当进行脚本收集时,根据脚本块节点的优先级遍历各脚本块节点。
3.如权利要求1所述配置脚本快速收集方法,其特征在于,对于没有进行配置的脚本块节点,则其不保存对应的脚本块。
4.如权利要求1所述配置脚本快速收集方法,其特征在于,对于配置内容不会随收集脚本的用途不同而变化的脚本块节点,将其对应的脚本块保存为默认脚本块配置。
5.如权利要求1-4任一项所述配置脚本快速收集方法,其特征在于,对于配置内容会随收集脚本的用途不同而不同的脚本块节点,则根据脚本的用途将不同的脚本块分别对应保存至独立的存储空间;当进行脚本收集时,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。
6.网络通信设备,其特征在于,包括脚本块节点组织单元、脚本块更新单元、脚本收集单元;脚本块节点组织单元用于,将需要生成配置的各个模块的脚本组织成脚本块节点;脚本块更新单元用于,将每一个脚本块节点中的脚本块对应保存至独立的存储空间; 当配置命令发生改变时,触发更新与所述变化相关的脚本块节点对应存储空间中的脚本块;脚本收集单元用于,当进行脚本收集时,遍历各脚本块节点,将各脚本块节点对应存储空间中的脚本块拷贝至脚本配置文件中。
7.如权利要求6所述网络通信设备,其特征在于,所述脚本块节点组织单元还用于,在组织脚本块节点的同时,为每一个脚本块节点分配唯一的优先级;所述脚本收集单元还用于,根据脚本块节点的优先级遍历各脚本块节点。
8.如权利要求6或7所述网络通信设备,其特征在于,所述脚本块更新单元还用于,对于配置内容不会随收集脚本的用途不同而变化的脚本块节点,会将其对应的脚本块保存为默认脚本块配置;所述脚本收集单元还用于,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。
9.如权利要求6或7所述网络通信设备,其特征在于,所述脚本块更新单元还用于,对于配置内容会随收集脚本的用途不同而不同的脚本块节点,会根据脚本的用途不同将不同的脚本块分别对应保存至独立的存储空间;所述脚本收集单元还用于,根据脚本用途将脚本块节点对应的脚本块拷贝至脚本配置文件中。
全文摘要
本发明将脚本块节点的更新与脚本块节点对应的脚本块的拷贝放在不同的时刻进行。预更新并单独保存各个模块对应的脚本块节点,此后,仅当各个模块的配置命令发生改变时,才单独更新并修改发生变化的脚本块节点所对应的配置脚本内容,占用系统资源少。在进行配置脚本收集时,各个模块对应的脚本块的更新已经完成,整个脚本收集过程只是简单地将各个脚本块配置内容集中起来,省去了临时调用脚本更新函数更新脚本的时间,显著提高了脚本收集速度,也不会在脚本收集时影响其它模块正常运行,提高了系统效率。
文档编号G06F17/30GK102419751SQ20101029478
公开日2012年4月18日 申请日期2010年9月28日 优先权日2010年9月28日
发明者叶学东, 梁晖, 胡祖松 申请人:迈普通信技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1