Abstract:
A remote loading system for network equipment is provided, which includes a loading server configured to send a loading command and an equipment prepared for loading connected to the loading server through a network. The loading server sends a command for validating a loaded content to the equipment prepared for loading, and the equipment prepared for loading performs an operation of validating the loaded content according to the command for validating the loaded content. A corresponding remote loading method for network equipment is also provided. A control on validating the loaded content is achieved through the command for validating a loaded content. Moreover, a way of validating the loaded content immediately and a way of validating the loaded content through a specific program are respectively adopted to realize the loading of an unconditionally resetting equipment and a conditionally resetting equipment.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application is a continuation of International Patent Application No. PCT/CN2006/003132, filed Nov. 21, 2006, which claims priority to Chinese Patent Application No. 200510101834.2, filed Nov. 24, 2005, both of which are hereby incorporated by reference in their entirety. 
     
    
     FIELD OF THE INVENTION 
       [0002]    The present invention relates to a network technology, in particular, to a remote loading system and method for network equipment. 
       BACKGROUND OF THE INVENTION 
       [0003]    Digital subscriber loop (DSL) has been widely used as a broadband access technology, and a typical networking scheme thereof is shown in  FIG. 1 . One or more customer premises equipments (CPEs) are connected to an auto-configuration server (ACS) through a DSL access multiplexer (DSLAM), a local broadband core network, and a broadband remote access server (BRAS). The ACS is connected to a service configuration manager through an ACS northbound interface. 
         [0004]    DSL brings a wide range of broadband technology application, such as, VoIP and IPTV, and so on. Various kinds of IP-based terminal equipment, i.e., IP application terminals referred to as CPE in this field, are developed based on broadband technology applications or combinations thereof. Due to the possible defects of implementation, it is usually necessary for the IP application terminals to upgrade the software running thereon or update the configurations, so as to acquire a higher level of stability, and even a higher level of security and availability. The upgrade of software or the update of configuration also aims to add new functions for the equipment so as to better serve the users. The upgrade of software or the configuration on the IP application terminal is usually realized through file loading. 
         [0005]    The above IP application terminal for the most part includes two loading methods. In one method, a command/message is transmitted from the outside of the IP application terminal to the terminal, so as to enable the terminal to load. In the other method, the IP application terminal checks itself with the relevant information periodically so as to realize the loading. 
         [0006]    Currently, a series of technical reports (TR) on the CPE with TR-069 as the core are provided to define the operation frame of equipment management and automatic configuration based on an HTTP protocol. The CPE works as an HTTP client, i.e., an equipment prepared for loading; ACS works as an HTTP server, that is, a loading server. The CPE and ACS respectively provide some methods which can be invoked by the other. The methods are responding to a message in accordance with the standard, accomplishing the function specified by the message, and returning the result to the message transmitter. The method for invoking the remote equipment is transmitting a specific message to the equipment and waiting for the result to be returned by the equipment after processing the message. The invoker and provider of the method may transmit and process the message based on the HTTP protocol. 
         [0007]    TR-069 defines that CPE provides a download method for ACS invoking remotely in order to realize the functions such as software upgrade and configuration update of the equipment, and describes the parameters included in the download method. As stipulated in TR-069, after the ACS invokes the download method of the CPE, the CPE can not be reset to accomplish the software upgrade and configuration update. The method and time for upgrading or updating configuration of the CPE depend on CPE, and the loaded content is usually validated to accomplish loading without influencing the online service. 
         [0008]    However, under some special circumstances, e.g., when a fault diagnosis is performed on the equipment or an upgrade application on the equipment for providing new services is submitted, the file fails to be loaded by the equipment due to continuous on-line service or the file is loaded but can not be reset so that the loaded content can not be validated at once. Thereby, the diagnosis can not be conducted or the new service can not be provided in a real time, and human interference (e.g., manually resetting the equipment or rebooting the power) is required to accomplish the update operation, so as to accomplish the upgrade finally. However, the user may not be present during the diagnosis or upgrade, and at this time, an enforced resetting method is usually used, which, however, may interrupt the online service and may cause a loss for the user. 
         [0009]    Moreover, during a common upgrade process, the file may fail to be loaded or fail to be validated after being loaded due to the extended time on-line service, so that the latest version can not be achieved, and the update makes no sense. 
       SUMMARY OF THE INVENTION 
       [0010]    The present invention provides a remote loading system and method for network equipment, for overcoming the defect in the prior art of forcing to interrupt the on-line service or failing to load due to the service being on line. 
         [0011]    The present invention also provides a customer premises equipment (CPE) accepting the loading service of an auto-configuration server (ACS). 
         [0012]    The present invention adopts the following technical solutions: 
         [0013]    The present invention provides a remote loading system for network equipment, which includes: 
         [0014]    a loading server, configured to send a command for validating a loaded content to an equipment prepared for loading; and 
         [0015]    an equipment prepared for loading, connected to the loading server through a network, configured to perform an operation of validating the loaded content according to the command for validating the loaded content. 
         [0016]    The present invention further provides a remote loading method for network equipment, which includes: 
         [0017]    sending, by a loading server, a command for validating a loaded content to an equipment prepared for loading through a network; and 
         [0018]    performing, by an equipment prepared for loading, an operation of validating the loaded content according to the command for validating the loaded content. 
         [0019]    The present invention further provides a customer premises equipment (CPE), which includes: 
         [0020]    a loading processing module, configured to perform an operation of validating a loaded content according to a command for validating the loaded content sent by an ACS. 
         [0021]    Based on the above technical solution, the command for validating the loaded content is generated at the loading server, and is sent to the equipment prepared for loading, so as to control the validation of the loaded content. Moreover, a way of validating the loaded content immediately and a way of validating the loaded content through a specific program are respectively adopted in the present invention to realize the loading of an unconditionally resetting equipment and a conditionally resetting equipment. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS  
         [0022]      FIG. 1  is a schematic structure diagram of a DSL; 
           [0023]      FIG. 2  is a schematic diagram of a remote loading system for network equipment according to the present invention; 
           [0024]      FIG. 3  is a flow chart of a remote loading method for network equipment according to the present invention; 
           [0025]      FIG. 4  is a flow chart of sending a command for validating the loaded content in  FIG. 3 ; 
           [0026]      FIG. 5  is a flow chart of validating the loaded content in  FIG. 3 ; 
           [0027]      FIG. 6  is a schematic diagram of an ACS according to the present invention; 
           [0028]      FIG. 7  is a schematic diagram of a CPE according to the present invention; and 
           [0029]      FIG. 8  is a schematic diagram of a CPE having a preferable structure according to the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0030]    Hereinafter the present invention is illustrated in detail with reference to the drawings and embodiments. It should be understood that, the specific embodiments in the detailed description are merely given for illustrating the present invention, instead of limiting the present invention. 
         [0031]      FIG. 2  is a schematic diagram of a remote loading system for network equipment according to an embodiment of the present invention. As shown in  FIG. 2 , in this embodiment, the remote loading system for network equipment includes a remote loading server and an equipment prepared for loading communicating with the loading server through a network. In this embodiment, the loading server is an auto-configuration server (ACS)  25 , the equipment prepared for loading is a customer premises equipment (CPE)  21 , and the network is a digital subscriber line (DSL) network. The ACS  25 , the CPE  21 , and the network all conform to the CPE wide area network (WAN) management protocol. The ACS may also be replaced with a network management server. 
         [0032]    Definitely, the system and the method in the present invention are also adapted to other networks, and hereinafter the DSL network is taken as an example for illustrating the present invention. 
         [0033]    The ACS  25  sends a downloading command/message (hereinafter referred to loading command for short) to the CPE  21 , and the loading command is generated and sent by a loading module  251 . The CPE  21  receives the loading command, downloads a content according to the loading command, and performs relevant operations. The loading command includes a plurality of parameters, such as address and size of the download file, and so on. The CPE  21  includes a loading processing module  211  configured to execute the loading command, including downloading the content, installation, or configuration of the loaded content. 
         [0034]    Moreover, in this embodiment, the loading module  251  further generates a command for validating the loaded content to control the way of validating the loaded content of the CPE  21 , including validating immediately and validating through a specific program, and so on. The way of validating the loaded content is determined mainly based on the objective of upgrade, such as service upgrade, error correction, and problem diagnosis, and so on. The way of validating the loaded content may also be determined based on the equipment type. For example, the equipment having no loss or little loss caused by the service interruption, such as IPTV, may adopt the way of validating the loaded content immediately, that is, the equipment is rebooted immediately after the loading. The equipment having a large loss caused by the service interruption, such as IP telephone, adopts the way of validating the loaded content through a specific program. 
         [0035]    In one embodiment, the command for validating the loaded content is realized based on parameters. That is, the loading command contains parameters concerning the way of validating the loaded content, and the loading processing module  211  determines the way of validating the loaded content according to the parameters. The parameters in the loading command concerning the way of validating the loaded content are given in Table 1. 
         [0000]    
       
         
               
             
               
               
               
             
           
               
                 TABLE 1 
               
             
             
               
                   
               
               
                 Table of parameters carried in the loading command 
               
             
          
           
               
                 Parameter 
                 Data Type 
                 Description 
               
               
                   
               
               
                 CommandKey 
                 String (32 bytes) 
                 A command word, replaced with Download in this 
               
               
                   
                   
                 embodiment. 
               
               
                 FileType 
                 String (64 bytes) 
                 A number followed by a space and followed by a 
               
               
                   
                   
                 description on the file type, for example: 
               
               
                   
                   
                 “1 Firmware Upgrade Image” 
               
               
                   
                   
                 “2 Web Content” 
               
               
                   
                   
                 “3 Vendor Configuration File” 
               
               
                 URL 
                 String (256 bytes) 
                 A URL for specifying the file location 
               
               
                 Username 
                 String (256 bytes) 
                 A user name of the CPE authentication file server, 
               
               
                   
                   
                 which indicates no need for authentication if being 
               
               
                   
                   
                 null 
               
               
                 Password 
                 String (256 bytes) 
                 A password of CPE authentication file server, 
               
               
                   
                   
                 which is null when no authentication is required 
               
               
                 FileSize 
                 Unsigned integer 
                 A size of the file to be downloaded (total number 
               
               
                   
                   
                 of bytes) 
               
               
                 TargetFileName 
                 String (256 bytes) 
                 A file name, which may be null. 
               
               
                 DelaySeconds 
                 Unsigned integer 
                 The seconds of delaying to download required by 
               
               
                   
                   
                 the CPE when the method is invoked (i.e., the 
               
               
                   
                   
                 message is received), if being 0, it indicates no 
               
               
                   
                   
                 delay, and if being not 0, it indicates the seconds 
               
               
                   
                   
                 to be delayed, and the file transmission should be 
               
               
                   
                   
                 executed through an additionally established 
               
               
                   
                   
                 connection (HTTP is connected based on TCP). 
               
               
                 EffectiveNow 
                 Integer (0:1) 
                 It indicates whether the file loaded at this time 
               
               
                   
                   
                 needs to be validated immediately. 
               
               
                   
                   
                 0: it indicates adopting the way of validating the 
               
               
                   
                   
                 loaded content through a specific program, 
               
               
                   
                   
                 determining when to validate the loaded content 
               
               
                   
                   
                 according to the equipment situation by the CPE, 
               
               
                   
                   
                 within a time limit, e.g., 24 hours, and selecting 
               
               
                   
                   
                 unconditional automatic validation or prompting 
               
               
                   
                   
                 the user to intervene validation when the time limit 
               
               
                   
                   
                 is exceeded. 
               
               
                   
                   
                 1: It indicates that the equipment should validate 
               
               
                   
                   
                 the loaded content immediately after the loading in 
               
               
                   
                   
                 any way. 
               
               
                 SuccessURL 
                 String (256 bytes) 
                 If the file download succeeds, the CPE makes an 
               
               
                   
                   
                 access to the URL. 
               
               
                 FailureURL 
                 String (256 bytes) 
                 If the file download fails, the CPE makes an access 
               
               
                   
                   
                 to the URL. 
               
               
                   
               
             
          
         
       
     
         [0036]    In Table 1, the parameter EffectiveNow is a parameter of the manner of validating the loaded content in the loading command. In some embodiment, the parameter EffectiveNow is Boolean type, and when the parameter EffectiveNow is 0, the way of validating through a specific program is adopted. For example, when some service is operated on the CPE  21 , the loading processing module  211  validates the loaded content after delaying some time or waits for the intervention of the user, or the equipment may actively switch the state after exceeding a time limit so as to force to validate the loaded content. When the parameter EffectiveNow is 1, the way of validating the loaded content immediately is adopted, that is to say, the loading processing module  211  validates the loaded content immediately after loading by, for example, a method such as powering down and rebooting, no matter whether the equipment has services on line or not. 
         [0037]    Definitely, the parameter EffectiveNow is not limited to Boolean type, it can be an integer parameter to define more ways for validation, for example, the way of validating the loaded content until all the services on the CPE  21  stop running, and the way of waiting for the intervention of the user after loading and validating the loaded content if no intervention of the user is provided within a predetermined time. 
         [0038]    It can be understood that, the command for validating the loaded content is not limited to the above EffectiveNow parameter way, a specific command or message independent from the loading command may also be adopted as the command for validating the loaded content, and other parameters of the loading command may be given more values for indicating the content validation. 
         [0039]    Moreover, the CPE  21  further includes an alarm module (not shown in  FIG. 2 ). Under a non-immediately validating way, the alarm module may inform the user perform manual intervention with voice/sound prompt, screen text/sign prompt, E-mail of the user, other terminals of the user having the function of short message, and other widely used communication system supported by operators, when the CPE  21  fails to download file within a period of time (e.g., 24 hours), or fails to validate the loaded content within a period of time (e.g., 24 hours) after loading due to some reasons (e.g., on-line services). The CPE  21  may send a notice directly, or inform the ACS  25  to send a notice together with the relevant management equipment. 
         [0040]      FIG. 3  is a flow chart of a remote loading method for network equipment according to the present invention. As shown in  FIG. 3 , the loading module  251  of the ACS  25  sends the command for validating the loaded content to the CPE  21  through a network (Block S 31 ); in responding to the CPE  21  receiving the command for validating the loaded content, the loading processing module  211  processes the command for validating the loaded content, so as to validate the loaded content in different ways (Block S 32 ). 
         [0041]      FIG. 4  is a flow chart of sending the command for validating the loaded content in  FIG. 3 . As shown in  FIG. 4 , according to the loading of the CPE  21 , the ACS  25  generates a parameter of the way of validating the loaded content according to the equipment type of the CPE  21 . In some embodiments, the parameter of validating the loaded content is a Boolean-type EffectiveNow parameter, when being a preset invalidation value, e.g., being 0, the way of validating the loaded content through a specific program is adopted, and when being a preset validation value, e.g., being 1, the way of validating immediately is adopted (Block S 41 ). 
         [0042]    The ACS  25  adds the EffectiveNow parameter into the loading command (Block S 42 ), and sends the loading command to the CPE  21  to be loaded (Block S 43 ). 
         [0043]      FIG. 5  is a flow chart of validating the loaded content in  FIG. 3 . 
         [0044]    Block S 501 : The CPE  21  receives the loading command from the ACS  25 , and reads every parameter in the loading command. 
         [0045]    Block S 502 : The loading processing module  211  determines whether an authentication is required or not, i.e., whether the CPE  21  is legal or not, according to an authentication parameter in the loading command. 
         [0046]    If the authentication is not required (in some embodiments, it means that the Username parameter or the Password parameter in the loading command are null), Step S 504  is executed (described hereinafter). If the authentication is required (in some embodiments, it means that the Username parameter or the Password parameter in the loading command are not null), the authentication is executed, i.e., the user name and password of the CPE authentication file server are verified, and whether to pass the authentication or not is determined (Block S 503 ). 
         [0047]    If the authentication is not passed, a loading failure process is executed, for example, a loading failure is prompted (Block S 521 ). If the authentication is passed, the loading processing module  211  determines whether to delay downloading the content or not according to the DelaySeconds parameter in the loading command (Block S 504 ). 
         [0048]    If delay is required, i.e., the value of the DelaySeconds parameter is not 0, the time specified by the DelaySeconds parameter is delayed (Block S 505 ), and files are loaded according to the URL parameter and the TargetFileName parameter in the loading command (Block S 506 ). If delay is not required, i.e., the value of the DelaySeconds parameter is 0, Block S 506  is executed directly. 
         [0049]    Then, the loading processing module  211  of the CPE  21  determines whether the loading succeeds or not according to the loading situation (Block S 507 ). 
         [0050]    If the loaded content is successfully loaded, it is determined whether to validate the loaded content immediately according to the EffectiveNow parameter (Block S 508 ); if the loaded content is not loaded successfully, Block S 515  is executed then. 
         [0051]    If the loaded content is validated immediately, i.e., the EffectiveNow parameter value is 1, the loaded content is validated immediately by means of, for example, powering down and rebooting, so as to accomplish the loading operation (Block S 513 ). If a way of validating the loaded content immediately is not adopted, but a way of delaying to validate is adopted, and the value of the EffectiveNow parameter is 0, whether the condition for validating the loaded content is satisfied or not is determined according to the service operation situation of the CPE  21  (Block S 510 ). The condition for validating the loaded content includes the equipment is idle, the user instructs to validate, or a waiting time exceeds a predetermined time. 
         [0052]    If the CPE  21  satisfies the condition for validating the loaded content (for example, no service is operated on the CPE  21 , i.e., the equipment is idle), the loaded content is validated (Block S 513 ). If the CPE  21  does not satisfy the condition for validating the loaded content, for example, if some service is operated on the CPE  21 , a predetermined time may be delayed (e.g., 24 hours), and whether the delay exceeds the predetermined time or not is judged. Judging whether the delay exceeds the predetermined time may be executed based on a predetermined period (Block S 511 ). 
         [0053]    If the delay does not exceed the predetermined time, keep waiting (Block S 509 ), and Step S 510  is executed. If the delay exceeds the predetermined time, whether to force to validate or not is determined according to the specific loading program subscribed by the system (Block S 512 ). 
         [0054]    If it is not required to force to validate, a prompt for user intervention is given through voice/sound prompt, screen text/sign prompt, E-mail of the user, other terminals of the user having the function of short message, and other widely used communication system supported by operators (Block S 514 ); if it is required to force to validate, Block S 513  is executed. 
         [0055]    It should be noted that, in some embodiment, whether immediately loading or delaying to load is not determined before the file loading. The present invention further includes determining whether immediately loading or delaying to load before the file loading, because the on-line service may be affected during the file loading, and some equipment needs to be rebooted to start loading. 
         [0056]    In some embodiments, the operation of loading file and the operation of validating the loaded content are two different operations. It should be noted that, the operation of validating the loaded content may include the operation of loading file, in other words, the operation of loading file and the operation validating the loaded content are incorporated into one operation. 
         [0057]    The present invention further discloses an ACS, providing a loading service to, for example, the equipment prepared for loading of the CPE.  FIG. 6  is a schematic diagram of the ACS according to the present invention. As shown in  FIG. 6 , the ACS includes: 
         [0058]    a loading module, configured to determine and generate a command for validating the loaded content, and send the command for validating the loaded content to the equipment prepared for loading. 
         [0059]    The loading module includes a command generating sub-module and a command sending sub-module. 
         [0060]    The command generating sub-module is configured to determine and generate the command for validating the loaded content, and transmit the command for validating the loaded content to the command sending sub-module. For example, the equipment having no loss or little loss caused by the service interruption, such as IPTV, may adopt the way of validating the loaded content immediately, i.e., the equipment is rebooted immediately after the loading. The equipment having a large loss caused by the service interruption, such as IP telephone, adopts the way of validating the loaded content through a specific program. 
         [0061]    The command sending sub-module is configured to send the command for validating the loaded content to the equipment prepared for loading. The command for validating the loaded content can be sent to the equipment prepared for loading through containing the parameters concerning the way of validating the loaded content in the loading command, and the equipment prepared for loading determines the way of validating the loaded content according to the parameters. 
         [0062]    The present invention further provides a CPE for accepting the loading service of the ACS.  FIG. 7  is a schematic diagram of the ACS according to the present invention. As shown in  FIG. 7 , the CPE includes: 
         [0063]    a loading processing module, configured to perform an operation of validating the loaded content according to the command for validating the loaded content sent by the ACS. 
         [0064]    Furthermore, the loading processing module includes a command identifying sub-module and a command processing sub-module. 
         [0065]    The command identifying sub-module is configured to receive and identify the command for validating the loaded content. As mentioned above, the command for validating the loaded content may include the way of immediately validating and the way of delaying to validate. 
         [0066]    The command processing sub-module is configured to perform the operation of validating the loaded content according to the command for validating the loaded content identified by the command identifying sub-module. For example, as for the way of immediately validating, the loaded content is validated immediately by means of, for example, powering down and rebooting, so as to accomplish the loading operation. As for the way of delaying to validate, it is determined whether the condition for validating the loaded content is satisfied or not; if satisfied, the loaded content is validated; if not satisfied, the loaded content is validated after a predetermined time.  FIG. 8  is a schematic diagram of a CPE having a preferable structure according to the present invention. As shown in  FIG. 8 , the loading processing module in the CPE not only includes the command identifying sub-module and the command processing sub-module as shown in  FIG. 7 , but also includes a condition determining sub-module. 
         [0067]    The condition determining sub-module determines if the loading condition is satisfied or not during starting, and notifies the command processing sub-module to perform the operation of validating the loaded content. 
         [0068]    When the command processing sub-module receives the command for validating the loaded content indicating a validation after delaying, the condition determining sub-module is started to determine the loading condition. 
         [0069]    The condition determining sub-module further includes a timer having a preset timeout value. 
         [0070]    If the command processing sub-module receives the command for validating the loaded content indicating a validation after delaying, the timer is started, and the operation of validating the loaded content is immediately performed when the timer indicates a timeout. 
         [0071]    Though illustration and description of the present disclosure have been given with reference to preferred embodiments thereof, it should be appreciated by persons of ordinary skill in the art that various changes in forms and details can be made without deviation from the spirit and scope of this disclosure, which are defined by the appended claims.