CN100583888C - 一种文件安装的方法 - Google Patents

一种文件安装的方法 Download PDF

Info

Publication number
CN100583888C
CN100583888C CN200610033906.9A CN200610033906A CN100583888C CN 100583888 C CN100583888 C CN 100583888C CN 200610033906 A CN200610033906 A CN 200610033906A CN 100583888 C CN100583888 C CN 100583888C
Authority
CN
China
Prior art keywords
cpe
file
bag
order
execute
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
CN200610033906.9A
Other languages
English (en)
Other versions
CN1852321A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN200610033906.9A priority Critical patent/CN100583888C/zh
Publication of CN1852321A publication Critical patent/CN1852321A/zh
Priority to PCT/CN2007/000367 priority patent/WO2007095833A1/zh
Priority to EP07702259A priority patent/EP1981241A4/en
Priority to US12/195,205 priority patent/US20080313631A1/en
Application granted granted Critical
Publication of CN100583888C publication Critical patent/CN100583888C/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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M11/00Telephonic communication systems specially adapted for combination with other electrical systems
    • H04M11/06Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors
    • H04M11/062Simultaneous speech and data transmission, e.g. telegraphic transmission over the same conductors using different frequency bands for speech and other data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/42Systems providing special services or facilities to subscribers
    • H04M3/42136Administration or customisation of services
    • H04M3/42178Administration or customisation of services by downloading data to substation equipment

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种文件安装的方法,其特征在于,所述的方法包括如下步骤:a、用户驻地设备CPE下载有效载荷文件包;b、CPE根据所下载的有效载荷文件包中的命令列表中的命令执行指定的有效载荷文件,有效载荷文件在执行中完成其设计时定义的功能。本发明克服现有技术的不足,通过对TR 069标准进行了扩展,在命令列表中增加了Execute命令,用来完成CPE在下载了包后,用来指示CPE执行包中的指定的有效载荷文件,使得CPE能够在下载文件时对复杂情况进行判断并进行复杂操作。

Description

一种文件安装的方法
技术领域
本发明涉及DSL(Digital Subscriber Loop  数字用户环路)技术领域,具体来说,涉及DSL中CPE(Customer Premise Equipment用户驻地设备)的文件下载功能技术。
背景技术
随着DSL接入业务近年来飞速发展,不同厂商的DSL设备之间的互通性成了需要解决的问题,现有技术通常采用DSL论坛制定的TR 069标准来实现不同厂商的DSL设备之间的互通性,该标准是DSL论坛提出的DSL***中CPE广域网管理协议,用来实现ACS(Auto-Configuration Server自动配置服务器)对CPE的远程管理,包括ACS对CPE的远程控制以及ACS控制CPE进行文件的上传、下载等功能。
在CPE的文件下载功能中,现有技术通常采用DSL论坛的TR 069标准定义的一种特殊的包格式(Signed Package Format),在该包格式中,文件被封装在包中,同时还在包中附上了对该文件的一系列操作指令,用来实现CPE在下载了包后对包中的文件进行适当的操作。
TR069定义的包格式如附图1所示:
该包格式有四部分组成,分别是包头、命令列表、签名和有效载荷文件,各部分具体功能如下:
  组成部分   描述
包头   包头是一个固定长度的结构体,包含一个固定标志、版本信息和命令列表的长度和有效载荷文件的长度等信息
  组成部分   描述
命令列表   命令列表由一系列命令组成,这些命令用来指示CPE如何提取和安装下载文件中的有效载荷文件
  签名   文件的数字签名
  有效载荷文件   有效载荷文件包含一个或者多个文件,这些文件由CPE根据命令列表中的命令进行提取和安装(没有规定有效载荷文件的格式)
对有效载荷文件进行提取、添加到CPE***等操作通过命令列表进行,例如:
在ACS上有一个包,包中的命令列表中有一条添加的命令(该命令的作用是指示CPE先检查CPE自身的指定位置是否已经有与指定文件同名的文件存在,如果没有,则将包中有效载荷文件中的指定文件提取出来并添加CPE的指定位置上;如果有,则跳过该命令执行命令列表中的下一条命令),指示CPE将包中有效载荷文件config.cfg添加到CPE的“/boot/”目录下。当然config.cfg文件已经被封装在该包的有效载荷文件中。
那么在具体的操作过程中,CPE会通过下载方式将该包下载下来,然后根据包中的命令列表依次执行命令列表中的命令,当CPE执行到上面提到的添加命令时,首先会检测CPE自身的“/boot/”目录下是否已经存在config.cfg文件,如果该目录下不存在config.cfg命令,则将包中有效文件载荷中的config.cfg提取出来并添加到CPE的“/boot/”目录下;如果检测到CPE的“/boot/”目录下已经存在config.cfg文件,则CPE会跳过该添加命令,执行命令列表中的下一条命令。
现有技术在指示CPE安装有效载荷文件时(通过上述的命令列表中的命令完成),仅仅考虑了极简单的情况:有没有同名文件存在、有没有具有相同文件名不同扩展名的文件存在等,而没有提供对复杂情况判断(如没有提供检测和判断指定服务器是否在运行状态的功能)和执行复杂操作(如没有提供停止或者重启指定服务的功能)的命令。因此,现有技术在指示CPE安装有效载荷文件时无法完成对复杂情况的判断和执行复杂的操作。
发明内容
本发明的目的在于提供一种文件安装的方法,以解决有效载荷文件安装到CPE***时对复杂情况的判断和执行复杂的操作的问题。
为实现上述目的,本发明采用如下的技术方案:一种文件安装的方法,所述的方法包括如下步骤:
a、用户驻地设备CPE下载有效载荷文件包;
b、CPE依次执行所述的有效载荷文件包中的命令列表中的命令,当执行命令列表中的“Execute”命令时,CPE根据所述“Execute”命令中的参数从所述的有效载荷文件包中提取指定的有效载荷文件;所述的指定的有效载荷文件在所述“Execute”命令中的参数规定的目录下执行其设计时定义的功能。
其中所述的有效载荷文件在执行中完成其设计时定义的功能具体包括:检测和判断指定的服务是否正在运行以及停止或者重启某个具体的服务。
其中所述的CPE下载的有效载荷文件包为DSL中TR 069标准定义的Signed Package Format包。
所述的有效载荷文件为可执行文件。
本发明克服现有技术的不足,通过对TR 069标准进行了扩展,在命令列表中增加了Execute命令,用来完成CPE在下载了包后,用来指示CPE执行包中的指定的有效载荷文件,使得CPE能够在下载文件时对复杂情况进行判断并进行复杂操作。
附图说明
图1为DSL论坛的TR 069标准定义的包格式;
图2为本发明实施例的流程图。
具体实施方式
下面结合具体实施例和附图对本发明进行详细说明。
本发明的基本原理是在TR 069定义的包格式中定义的命令列表中,增加一个命令,如“Execute”命令,用来指示CPE执行下载的包中的指定的有效载荷文件。
CPE在根据下载的包中的命令列表安装有效载荷文件的过程中,如果碰到“Execute”命令,则根据命令列表中的“Execute”命令,在CPE上指定路径中执行指定的有效载荷文件。
被执行的有效载荷文件在TR 069中是没有定义具体格式的,可以是一个可执行的脚本,也可以是一个可执行文件;被执行的有效载荷文件被设计成在执行过程中不仅可以检测和判断各种条件:如检测和判断指定的服务是否正在运行等;还可以执行复杂的操作,如:停止或者重启某个具体的服务等;而这些有效载荷文件的具体功能都依赖于有效载荷文件的提供者和CPE的具体实现。
“Execute”命令的参数具体定义如下:
  参数   类型   描述
  Flags   32比特的整数   按比特位定义如下:Bit0(LSB):非安全标志.为1时指示如果这个命令执行成功,但是命令列表中的后续的命令执行失败,这个设备将处于非安全的状态,应该执行文件***的恢复功能将设备恢复成已知的安装状态。所有的其他比特位应保留并且必须设置成0,设备必须忽略这些比特位。
  Path Offset   32比特的整数   指示Path参数的偏移量(以字节为单位)
  Path Length   32比特的整数   指示Path参数的长度(以字节为单位)
  Hash Type   32比特的整数   指示Hash参数使用的哈希算法,当前只定义了:设置成1时说明使用了SHA-1哈希算法.其他值目前保留。
  Hash Offset   32比特的整数   指示Hash参数的偏移量(以字节为单位)
  Hash Length   32比特的整数   指示Hash参数的长度(以字节为单位)
  File Offset   32比特的整数   指示指定要执行的有效载荷文件在下载文件中的偏移量(以字节为单位)
 参数  类型   描述
 File Length  32比特的整数   指示指定要执行的有效载荷文件的长度(以字节为单位)
 Path  Path Length长度的字符串   指示文件执行时的路径信息
 Hash  Hash Length长度的字符串   有效载荷文件的哈希值
以下通过具体实施例进一步说明:假定服务器上有一个上述的包,包中的命令列表中有一条“Execute”的命令,指示CPE将包中有效载荷文件UpgradeLanService.run提取出来并在CPE的“DATA”目录下执行。当然UpgradeLanService.run文件已经事先被封装在该包的有效载荷文件中。UpgradeLanService.run的功能被设计成这样:在执行的时候先检测CPE的***中Lan这个服务是否正在运行,如果Lan服务正在运行则需要先停止Lan服务,然后升级Lan的配置文件,最后再重新启动Lan服务。
那么在具体的操作过程中,CPE会通过下载方式将该包下载下来,然后根据包中的命令列表依次执行命令列表中的命令,当CPE执行到上面提到的“Execute”命令时,会则将包中有效文件载荷中的UpgradeLanService.run提取出来并在CPE的“/DATA/”目录下执行。那么UpgradeLanService.run再执行过程中就会自动进行上面提供的功能:“在执行的时候先检测CPE的***中Lan这个服务是否正在运行,如果Lan服务正在运行则需要先停止Lan服务,然后升级Lan的配置文件,最后再重新启动Lan服务。”UpgradeLanService.run执行完毕以后,“Execute”命令就算执行完毕了,CPE会继续执行命令列表中的下一条命令。
在上述过程中,Execute定义的参数起了如下作用:
Flags:为1时指示如果Execute执行成功,但是命令列表中的后续的命令执行失败,这个设备将处于非安全的状态,应该执行文件***的恢复功能将设备恢复成已知的安装状态。这个参数与命令列表中命令的后续命令有关。在上述的具体实施中没有使用该参数。
Path Offset:指示path参数在包中的偏移量,以便CPE能够通过这个参数取得Path参数的内容。
Path Length:指示Path参数在包中的长度,以便CPE能够通过这个参数取得Path参数的内容。
Hash Type:指出Hash参数使用的算法,供CPE验证包的完整性
Hash Offset:指示Hash参数包中的偏移量,以便CPE能够通过这个参数取得Hash参数的内容。
Hash Length:指示Hash参数在包中的长度,以便CPE能够通过这个参数取得Hash参数的内容。
File Offset:指示Execute命令要执行的有效载荷文件在包中的偏移量,以便CPE能够通过这个参数取得有效载荷文件的内容。在上述的具体实施中即指示UpgradeLanService.run文件的存放位置。
File Length:指示Execute命令要执行的有效载荷文件在包中的长度,以便CPE能够通过这个参数取得有效载荷文件的内容。在上述的具体实施中即指示UpgradeLanService.run文件在包中存放的长度。
Path:指示CPE执行有效载荷文件的路径。在上述的具体实施中即是“/DATA/”。
Hash:Execute命令要执行的有效载荷文件的哈希值,确保文件没有被篡改。。在上述的具体实施中即是指UpgradeLanService.run文件的哈希值。
具体的流程如附图2所示:
步骤1、CPE通过下载功能下载指定的包;
步骤2、CPE检测包的内容,检测包的完整性以及包的格式是否符合要求;
步骤3、CPE提取包中命令列表的第一条命令,该命令中含有参数;
步骤4、CPE判断是否是结束命令,如果是,转步骤11,否则转步骤5;
步骤5、CPE判断是否是Execute命令,如果否,转步骤6;如果是,转步骤8;
步骤6、CPE根据该命令完成相应的功能;
步骤7、CPE取包中命令列表的下一条命令和参数,转步骤4;
步骤8、CPE根据Execute命令在指定的路径执行包中指定的有效载荷文件(该载荷文件被预先设计为在执行中完成如下的功能:在执行的时候先检测CPE的***中Lan这个服务是否正在运行,如果Lan服务正在运行则需要先停止Lan服务,然后升级Lan的配置文件,最后再重新启动Lan服务);
步骤9、有效载荷文件在执行中完成其设计时定义的特殊功能:有效载荷文件UpgradeLanService.run在执行中就会完成上述的的设计时定义的功能:先检测CPE的***中Lan这个服务是否正在运行,如果Lan服务正在运行则需要先停止Lan服务,然后升级Lan的配置文件,最后再重新启动Lan服务。”;
步骤10、有效载荷文件执行完毕且Execute命令执行完毕,转步骤7;
步骤11、结束。

Claims (3)

1、一种文件安装的方法,其特征在于,所述的方法包括如下步骤:
a、用户驻地设备CPE下载有效载荷文件包;
b、CPE依次执行所述的有效载荷文件包中的命令列表中的命令,当执行命令列表中的“Execute”命令时,CPE根据所述“Execute”命令中的参数从所述的有效载荷文件包中提取指定的有效载荷文件;
所述的指定的有效载荷文件在所述“Execute”命令中的参数规定的目录下检测和判断指定的服务是否正在运行以及停止或者重启某个具体的服务。
2、根据权利要求1所述的方法,其特征在于,所述的CPE下载的有效载荷文件包为DSL中TR 069标准定义的Signed Package Format包。
3、根据权利要求1或者2所述的方法,其特征在于,所述的有效载荷文件为可执行文件。
CN200610033906.9A 2006-02-21 2006-02-21 一种文件安装的方法 Active CN100583888C (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN200610033906.9A CN100583888C (zh) 2006-02-21 2006-02-21 一种文件安装的方法
PCT/CN2007/000367 WO2007095833A1 (fr) 2006-02-21 2007-02-02 Procédé pour l'installation d'un fichier, système de ligne d'abonné numérique et équipement de locaux d'abonné
EP07702259A EP1981241A4 (en) 2006-02-21 2007-02-02 METHOD FOR SETTING UP A FILE, DIGITAL PARTICIPANT CONNECTION SYSTEM AND PARTICIPATING DEVICE
US12/195,205 US20080313631A1 (en) 2006-02-21 2008-08-20 Method for installing files, digital subscriber loop system and customer premises equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN200610033906.9A CN100583888C (zh) 2006-02-21 2006-02-21 一种文件安装的方法

Publications (2)

Publication Number Publication Date
CN1852321A CN1852321A (zh) 2006-10-25
CN100583888C true CN100583888C (zh) 2010-01-20

Family

ID=37133789

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200610033906.9A Active CN100583888C (zh) 2006-02-21 2006-02-21 一种文件安装的方法

Country Status (4)

Country Link
US (1) US20080313631A1 (zh)
EP (1) EP1981241A4 (zh)
CN (1) CN100583888C (zh)
WO (1) WO2007095833A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101291248B (zh) * 2008-05-28 2010-12-08 华为终端有限公司 在管理***中保护重要操作的方法、装置及通信***
KR20110068098A (ko) * 2009-12-15 2011-06-22 삼성전자주식회사 가입자 댁내 장치의 소프트웨어 업그레이드 방법 및 장치
CN103067422A (zh) * 2011-10-19 2013-04-24 华为终端有限公司 一种业务发放的方法、设备及***
CN103618716B (zh) * 2013-11-28 2017-01-18 福建星网锐捷网络有限公司 一种终端广域网管理协议会话交互方法、设备和***

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493871B1 (en) * 1999-09-16 2002-12-10 Microsoft Corporation Method and system for downloading updates for software installation
US7149508B2 (en) * 2003-02-05 2006-12-12 Samsung Electronics Co., Ltd. System and method for delta-based over-the-air software upgrades for a wireless mobile station

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
CPE WAN Management Protocol. Jeff Bernstein, Tim Spets,第1,99-109页,DSLHome-Technical Working Group. 2004
CPE WAN Management Protocol. Jeff Bernstein,Tim Spets,第1,99-109页,DSLHome-Technical Working Group. 2004 *

Also Published As

Publication number Publication date
EP1981241A1 (en) 2008-10-15
CN1852321A (zh) 2006-10-25
WO2007095833A1 (fr) 2007-08-30
EP1981241A4 (en) 2011-09-07
US20080313631A1 (en) 2008-12-18

Similar Documents

Publication Publication Date Title
US7472247B2 (en) Method and system for centralized memory management in wireless terminal devices
CN103853574B (zh) 一种软件升级的方法及***
CN103841155B (zh) 一种软件下载方法和软件下载装置
US6457175B1 (en) Method and apparatus for installing a software upgrade within a memory resource associated with a computer system
CN102364891B (zh) 嵌入式以太网设备升级软件的方法及嵌入式以太网设备
US20060233126A1 (en) Managing midlet suites in OSGI environment
EP1872230B1 (en) Centralized memory management in wireless terminal devices
CN101593121A (zh) 软件在线升级的方法、装置及***
NO312269B1 (no) Fremgangsmåte for automatisering av programvareoppgradering
CN103810416A (zh) 一种软件安装或卸载方法及装置
CN105824659A (zh) 一种应用程序的更新方法及终端设备
CN101110788A (zh) 升级客户端软件的方法及***
WO2012062063A1 (zh) 软件安装包的生成、卸载方法及装置
CN105373396A (zh) 插件平台中的插件更新方法和装置
CN108874428A (zh) 一种冰箱控制器控制软件的远程升级方法
CN100583888C (zh) 一种文件安装的方法
KR101541112B1 (ko) Fota 시스템 및 그 실행 방법
CN105786538A (zh) 基于安卓***的软件升级方法和装置
CN103327108B (zh) 一种基于云的跨平台的软件管理平台及其构建方法
CN101008899A (zh) 通信设备中软件版本升级的方法及装置
CN101883139A (zh) 外设设备软件升级的方法、计算机及***
CN106874040A (zh) 基于Windows服务实现PC端软件静默升级的***及方法
CN101409709A (zh) 一种通信网管***中客户端程序的自动发布方法
CN107329738A (zh) 组件更新方法及装置
CN105468422A (zh) 操作***优化的方法及***

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant