CN105591825B - 在家庭网关升级时修改配置的方法 - Google Patents
在家庭网关升级时修改配置的方法 Download PDFInfo
- Publication number
- CN105591825B CN105591825B CN201610039825.3A CN201610039825A CN105591825B CN 105591825 B CN105591825 B CN 105591825B CN 201610039825 A CN201610039825 A CN 201610039825A CN 105591825 B CN105591825 B CN 105591825B
- Authority
- CN
- China
- Prior art keywords
- configuration file
- specified
- configuration
- tree
- home gateway
- 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
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
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/082—Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/66—Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种在家庭网关升级时修改配置的方法,包括以下步骤:家庭网关开始升级;生成一个写有需要修改配置参数的指定配置文件,并将该指定配置文件放入家庭网关代码的指定目录中;将所述指定配置文件编译进升级镜像的指定可读写分区目录中,烧写升级镜像;生成默认配置树;从指定可读写分区目录中读取指定配置文件,并将指定配置文件与家庭网关默认配置树合并;根据家庭网关硬件状态生成其他配置;家庭网关升级结束。本发明通过编译升级镜像时指定不同的配置文件实现了在家庭网关升级同时修改配置,不仅减少了多次重启对用户体验的影响和家庭网关原有配置失效的风险;同时还为生产商节约了人工成本,提高了工作效率。
Description
技术领域
本发明涉及家庭网关技术领域,具体涉及在家庭网关升级时修改配置的方法。
背景技术
随着宽带网络的普及,家庭网关已经大规模的进入到普通家庭,据统计,目前约有几千万台家庭网关在网运行,而随着网络技术的发展,迫切需要对这些在网运行的数量庞大的家庭网关进行升级。
对于家庭网关的升级,运营商除了希望保留这些家庭网关未升级前正常运行的配置外,有的时候还需要改变家庭网关的部分配置。而目前各厂商提供的家庭网关均是镜像和配置分离的,这就导致了在进行家庭网关升级时仅能升级镜像,而不能达到同时修改家庭网关原有配置的目的,需要在升级镜像后再升级一次配置文件,这对数量庞大的家庭网关升级操作来说是一个巨大的风险和挑战,因为每次升级都需要重启家庭网关,不仅严重影响了用户体验,而且增加了家庭网关原有配置失效的风险。
而对于家庭网关的生产厂商来说,以目前的方法对家庭网关升级同样存在问题,比如已升级为A省配置的设备需要发往B省或者发现准备供货的设备版本有缺陷需要进行家庭网关升级,这时生产厂商不可能通过运营商网管一次性对成千上万台设备一起升级,它往往是通过人工手动升级,而按照目前的升级步骤,需要先升级一次镜像文件,重新启动后再升级一次配置文件,再重新启动,才能完成全部升级,所消耗的人工成本极其巨大。
综上所述,在进行家庭网关升级时,做到升级镜像同时能够修改家庭网关中指定配置是解决上述各种问题的必要方法。
发明内容
本发明所要解决的技术问题是在进行家庭网关升级时,升级镜像同时能够修改家庭网关中指定配置的问题。
为了解决上述技术问题,本发明所采用的技术方案是提供一种在家庭网关升级时修改配置的方法,包括以下步骤:
步骤S10、家庭网关开始升级;
步骤S20、生成一个写有需要修改配置参数的指定配置文件,并将该指定配置文件放入家庭网关代码的指定目录中;
步骤S30、将所述指定配置文件编译进升级镜像的指定可读写分区目录中,烧写升级镜像;
步骤S40、生成默认配置树;
步骤S50、从指定可读写分区目录中读取指定配置文,并将指定配置文件与家庭网关默认配置树合并;
步骤S60、根据家庭网关硬件状态生成其他配置;
步骤S70、家庭网关升级结束。
在上述方法中,步骤S30具体包括以下步骤:
步骤S31、开始烧写镜像;
步骤S32、判断升级镜像中是否含有指定的配置文件,如果有该指定的配置文件,则执行步骤S33;否则执行步骤S34;
步骤S33、将指定配置文件拷贝到镜像的可读写分区目录中;
步骤S34、生成升级镜像。
在上述方法中,步骤S50具体包括以下步骤:
步骤S51、生成原始默认配置字符串;
步骤S52、生成指定配置文件字符串;
步骤S53、根据默认配置字符串和指定配置文件字符串分别生成默认配置文件和指定配置文件的树形结构体对象;
步骤S54、再根据指定配置文件的树形结构体对象生成指定配置文件的参数列表;
步骤S55、根据所述参数列表内容将修改或添加的参数插入原始树形结构体,形成新树形结构体;
步骤S56、将新树形结构体转换成字符串;
步骤S57、将字符串转换成内存配置树。
本发明通过编译升级镜像时指定不同的配置文件能够灵活的在升级时修改相关的配置信息,从而实现了在家庭网关升级同时修改配置,并且对原有家庭网关镜像代码改动很小,对于在网运行的早期设备能够实现平滑升级,而没有任何其他的条件,不仅减少了多次重启对用户体验的影响和家庭网关原有配置失效的风险;同时还为生产商节约了人工成本,提高了工作效率。
附图说明
图1为一个家庭网关正常运行时内存中的配置信息树形图;
图2为家庭网关需要修改的一个指定配置文件树形图;
图3为本发明提供的在家庭网关升级时修改配置的方法流程图;
图4为本发明中烧写升级镜像流程图;
图5为本发明中指定配置文件与家庭网关默认配置树合并流程图。
具体实施方式
下面结合说明书附图和具体实施例对本发明做出详细的说明。
图1为一个家庭网关正常运行时内存中的配置信息树形图,从此图可以看出,该家庭网关中所有的配置信息生成了一颗配置树,该配置树根节点为InternetGatewayDevice,家庭网关中的每项配置都是一个叶子节点,例如SoftwareVersion和HardwareVersion叶子节点,根据他们的值可知该家庭网关的软件版本号和硬件版本号分别为G00L1.00和V2.0;从另一个值为1的X_CT-COM_ServerType叶子节点可知该家庭网关的语音协议为SIP(在该节点的取值范围中,1代表SIP协议,2代表H248协议)。所以,如果要改变家庭网关的指定配置,只需要改变家庭网关配置树中相应叶子节点的值,例如,将与图1对应的家庭网关的语音协议从SIP切换到H248,只需要将图1中叶子节点X_CT-COM_ServerType的值从1改成2(这里能够修改配置树中的值有几种方式,如从远程网管平台改或者从本地网关页面改等等,这里就不赘述)。
图2为家庭网关需要修改的一个指定配置文件树形图,它是文件名为patch.cfg的配置文件树,这个指定配置文件树也是一个以InternetGatewayDevice为根节点的参数树,但是这个仅仅是图1中所示配置树的一个子集,而我们升级的目的就是需要将图2中所示的这个指定配置文件的内容合并到图1所示的网关配置树中,达到修改配置的目的,下面以此为实施例,对本发明提供的在家庭网关升级时修改配置的方法进行具体说明。
如图3所示,本发明提供的在家庭网关升级时修改配置的方法包括以下步骤:
步骤S10、家庭网关开始升级。
在本步骤中的所述的家庭网关升级包括从ITMS(终端综合管理系统IntegratedTerminal Management System)或者OLT EMS(光线路终端网元管理系统)的网管进行远程升级,以及通过家庭网关管理页面等方式进行本地升级。
步骤S20、生成一个写有需要修改配置参数的配置文件patch.cfg(如图2所示的配置文件),并将该配置文件放入家庭网关代码的指定目录中。
步骤S30、将所述配置文件patch.cfg编译进升级镜像的指定可读写分区目录etc中,烧写升级镜像;这样烧写的镜像中就包含了需要修改指定配置的文件。
步骤S40、生成默认配置树。
家庭网关在正常运行时各种配置一般都是保留在家庭网关的flash中,该flash的内容不会因为家庭网关断电而丢失,在升级重启后,家庭网关将这部分flash的内容读出,并在内存中生成一个图1所示的xml树的配置树,这个配置树保存了家庭网关运行时的各种配置信息。
步骤S50、从etc目录中读取指定配置文件patch.cfg,并将指定配置文件与家庭网关默认配置树合并。
在家庭网关生成默认配置树(如图1所示)后,会从etc目录中读取指定配置文件patch.cfg的内容,将该内容解析后,合并到家庭网关内存的配置树中,这样就可以按照patch.cfg中的内容修改家庭网关默认配置树,即将图2中X_CT-COM_ServerType值为2这个修改信息并入图1合并。
步骤S60、根据家庭网关硬件状态生成其他配置。
在家庭网关合并了指定配置后,还需要根据它的一些硬件状态再更新家庭网关内存中的配置树,比如更新wifi的状态等等。
这时家庭网关已经在内存中生成了一个完整的配置树,在这个配置树中既包含了家庭网关原有的配置信息(如图1所示),同时也合并了指定修改的配置信息(如图2所示),然后家庭网关再根据这个配置树来使能网关的各种业务配置。
步骤S70、家庭网关升级结束。
如图4所示,步骤S30烧写升级镜像具体包括以下步骤:
步骤S31、开始烧写镜像。
步骤S32、判断升级镜像中(该镜像就是烧到网关中的升级镜像)是否含有指定的配置文件(因为如果需要修改原来网关中的配置,则需要生成一个待修改配置的配置文件patch.cfg放入指定目录中,编译后该镜像就包含了准备合并的配置文件),如果有该指定的配置文件,则执行步骤S33;没有该指定的配置文件,则执行步骤S34,表明编译出的升级镜像是不带指定修改配置文件的镜像,通过该镜像升级,家庭网关还是保留未升级前的配置。
步骤S33、将指定配置文件拷贝到镜像的可读写分区目录etc中。
步骤S34、生成升级镜像。
如图5所示,步骤S50中将指定配置文件与家庭网关默认配置树合并具体包括以下步骤:
步骤S51、生成原始默认配置字符串。
在家庭网关启动后会从flash中生成类似于图1的一个这样的配置树,但是这个配置树是不方便合并操作的,所以需要将这个配置树转换成一个字符串,供后续合并处理。
步骤S52、生成指定配置文件字符串。
同上,从家庭网关指定目录下取出升级的指定配置文件patch.cfg,将该指定配置文件的内容也转换成一个字符串。
步骤S53、生成默认配置文件和指定配置文件的树形结构体对象。
由于生成的字符串也是不方便查找、替换、合并操作的,所以我们定义了一个树形结构体对象,将各自的字符串生成相应的树形结构体对象。
步骤S54、生成指定配置文件的参数列表。
将需升级的指定配置文件生成的树形结构体对象进行转换,生成一个需合并的参数列表,这个列表中的内容就是配置文件中需要修改或添加的配置内容信息。
步骤S55、根据参数列表内容将修改或添加的参数插入原始树形结构体,形成新树形结构体。
其中,如果该参数列表是原始树形结构体中有的,则改变该参数的值,如果没有,则将该参数列表插入到树形结构体中。
步骤S56、将新树形结构体转换成字符串。
合并生成的新树形结构体对象是不能在家庭网关中生效的,为了生成家庭网关内存中的配置树,需要先将该结构体对象转换成字符串。
步骤S57、将字符串转换成内存配置树。
将步骤S56中转换的字符串通过系统提供的函数转换成内存配置树,这样网关正常启动后,内存中的配置已经被指定的配置文件中的内容所改变。
以上所述实施方式仅为本发明的一种较佳实施实例,并不用于限制本发明,凡在本发明精神和原则之内所做的任何修改、等同替换和改进等,均含于本发明的保护范围之内。
Claims (2)
1.在家庭网关升级时修改配置的方法,其特征在于,包括以下步骤:
步骤S10、家庭网关开始升级;
步骤S20、生成一个写有需要修改配置参数的指定配置文件,并将该指定配置文件放入家庭网关代码的指定目录中;
步骤S30、将所述指定配置文件编译进升级镜像的指定可读写分区目录中,烧写升级镜像;
步骤S40、生成默认配置树;
步骤S50、从指定可读写分区目录中读取指定配置文件,并将指定配置文件与家庭网关默认配置树合并;
步骤S60、根据家庭网关硬件状态生成其他配置;
步骤S70、家庭网关升级结束;
其中,步骤S50具体包括以下步骤:
步骤S51、生成原始默认配置字符串;
步骤S52、生成指定配置文件字符串;
步骤S53、根据默认配置字符串和指定配置文件字符串分别生成默认配置文件和指定配置文件的树形结构体对象;
步骤S54、再根据指定配置文件的树形结构体对象生成指定配置文件的参数列表;
步骤S55、根据所述参数列表内容将修改或添加的参数插入原始树形结构体,形成新树形结构体;
步骤S56、将新树形结构体转换成字符串;
步骤S57、将字符串转换成内存配置树。
2.如权利要求1所述的方法,其特征在于,步骤S30具体包括以下步骤:
步骤S31、开始烧写镜像;
步骤S32、判断升级镜像中是否含有指定的配置文件,如果有该指定的配置文件,则执行步骤S33;否则执行步骤S34;
步骤S33、将指定配置文件拷贝到镜像的可读写分区目录中;
步骤S34、生成升级镜像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610039825.3A CN105591825B (zh) | 2016-01-21 | 2016-01-21 | 在家庭网关升级时修改配置的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610039825.3A CN105591825B (zh) | 2016-01-21 | 2016-01-21 | 在家庭网关升级时修改配置的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105591825A CN105591825A (zh) | 2016-05-18 |
CN105591825B true CN105591825B (zh) | 2018-08-31 |
Family
ID=55931084
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610039825.3A Active CN105591825B (zh) | 2016-01-21 | 2016-01-21 | 在家庭网关升级时修改配置的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105591825B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106775859B (zh) * | 2016-12-08 | 2018-02-02 | 上海壹账通金融科技有限公司 | 灰度发布方法和系统 |
CN106789309A (zh) * | 2016-12-30 | 2017-05-31 | 武汉长光科技有限公司 | 一种基于olt设备的业务配置文件迁移方法 |
CN108683740A (zh) * | 2018-05-18 | 2018-10-19 | 烽火通信科技股份有限公司 | 一种基于uci的提升配置访问速度的方法及系统 |
CN110166293A (zh) * | 2019-05-21 | 2019-08-23 | 上海市共进通信技术有限公司 | 实现模块化升级调试开发功能的家庭网关及其升级调试处理方法 |
CN112114880A (zh) * | 2020-08-07 | 2020-12-22 | 深圳市鼎盛光电有限公司 | 一种智能电视的配置方法、装置、智能电视和存储介质 |
CN115334358B (zh) * | 2022-08-18 | 2023-08-22 | 烽火通信科技股份有限公司 | 融合网关自动化软件改制方法与存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662884A (zh) * | 2012-04-16 | 2012-09-12 | 湖北盛天网络技术股份有限公司 | 一种基于网络的设备驱动程序配置方法 |
CN102736932A (zh) * | 2012-05-16 | 2012-10-17 | 上海斐讯数据通信技术有限公司 | 镜像文件、镜像文件的制作方法及多系统的启动引导方法 |
CN103281373A (zh) * | 2013-05-30 | 2013-09-04 | 烽火通信科技股份有限公司 | 家庭网关智能升级装置及升级方法 |
CN104731602A (zh) * | 2015-03-31 | 2015-06-24 | 上海盈方微电子有限公司 | 一种分离安卓镜像烧录流程的方法 |
-
2016
- 2016-01-21 CN CN201610039825.3A patent/CN105591825B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102662884A (zh) * | 2012-04-16 | 2012-09-12 | 湖北盛天网络技术股份有限公司 | 一种基于网络的设备驱动程序配置方法 |
CN102736932A (zh) * | 2012-05-16 | 2012-10-17 | 上海斐讯数据通信技术有限公司 | 镜像文件、镜像文件的制作方法及多系统的启动引导方法 |
CN103281373A (zh) * | 2013-05-30 | 2013-09-04 | 烽火通信科技股份有限公司 | 家庭网关智能升级装置及升级方法 |
CN104731602A (zh) * | 2015-03-31 | 2015-06-24 | 上海盈方微电子有限公司 | 一种分离安卓镜像烧录流程的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105591825A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105591825B (zh) | 在家庭网关升级时修改配置的方法 | |
CN107301058B (zh) | 基于版本号分段控制实施电视系统ota升级的方法 | |
CN109951315B (zh) | 一种实现yang模型到内部模型映射的方法及系统 | |
CN102622241B (zh) | 一种软件升级方法及装置 | |
CN102006334B (zh) | 安装软件组件的方法、系统及装置 | |
CN104615466B (zh) | 一种云平台部署方法和系统 | |
US11558252B2 (en) | Learning by inference from previous deployments | |
CN110389832B (zh) | ZooKeeper容器集群部署方法、系统、设备及存储介质 | |
JP2008510252A (ja) | 汎用アップグレードアーキテクチャ | |
CN107943499B (zh) | 一种系统升级方法、装置、终端及存储介质 | |
CN110389766B (zh) | HBase容器集群部署方法、系统、设备及计算机可读存储介质 | |
CN106371881B (zh) | 一种用于服务器内程序版本更新的方法和系统 | |
CN108282363B (zh) | Cpe和acs的远程配置方法、装置以及系统 | |
CN109474456A (zh) | 配置数据处理方法、装置、计算机设备和存储介质 | |
CN108170459B (zh) | 软件升级方法、智能终端及具有存储功能的装置 | |
CN113535225B (zh) | 应用软件的环境配置文件处理方法、装置、设备和介质 | |
CN112398683B (zh) | 一种支持yang协议的多设备混合组网的配置方法和装置 | |
CN105897467A (zh) | 一种端口扩展设备的控制方法和装置 | |
GB2454583A (en) | Remote management of mobile devices | |
CN111857953A (zh) | 一种容器集群管理方法、装置、设备及可读存储介质 | |
CN113268232A (zh) | 一种页面皮肤生成方法、装置和计算机可读存储介质 | |
CN108829443B (zh) | 一种终端设备配置数据的设计方法、加载方法及其应用 | |
CN113839992B (zh) | 设备控制方法及装置 | |
CN101931545A (zh) | 一种防火墙重复生产或重复升级的方法和装置 | |
Kovše et al. | Eclipse plug-in for spin and st2msc tools-tool presentation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |