[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR20120117504A - Communication system and method for updating software thereof - Google Patents

Communication system and method for updating software thereof Download PDF

Info

Publication number
KR20120117504A
KR20120117504A KR1020110035296A KR20110035296A KR20120117504A KR 20120117504 A KR20120117504 A KR 20120117504A KR 1020110035296 A KR1020110035296 A KR 1020110035296A KR 20110035296 A KR20110035296 A KR 20110035296A KR 20120117504 A KR20120117504 A KR 20120117504A
Authority
KR
South Korea
Prior art keywords
update
version
file
terminal
version file
Prior art date
Application number
KR1020110035296A
Other languages
Korean (ko)
Inventor
염창선
김성규
Original Assignee
삼성전자주식회사
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 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110035296A priority Critical patent/KR20120117504A/en
Publication of KR20120117504A publication Critical patent/KR20120117504A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: A communication system and a software updating method in the communication system are provided to control a cycle which a terminal connects to a version update server, thereby allowing the terminal to confirm whether or not update by using a received version file. CONSTITUTION: An update managing server(120) disperses an update file for updating software, version information for explaining the update file, and a version file including cycle setting information in a dispersion update server(130). A terminal(140) receives the version file from the dispersion update server in an update determining cycle for determining whether or not update. The terminal determines a next update determining cycle by using the cycle setting information included in the version file. The terminal updates the corresponding software. [Reference numerals] (120) Update managing server; (123) DM server; (125) DL server; (130) Distribution update server; (140) Terminal; (210) Update determining period; (215,225) Version file request; (220,230) Version file transmission; (235) Version file check; (240) Determining the update determining period according to a version file; (245) Checking whether or not of update; (250) Update request; (255) Transmitting information for a update file to be updated; (260) Update file request; (265) Update file transmission; (270) Update; (275) Update result transmission

Description

통신 시스템 및 그 통신 시스템에서 소프트웨어 업데이트 방법{COMMUNICATION SYSTEM AND METHOD FOR UPDATING SOFTWARE THEREOF}COMMUNICATION SYSTEM AND METHOD FOR UPDATING SOFTWARE THEREOF}

본 발명은 통신 시스템 및 그 통신 시스템에서 소프트웨어를 업데이트하는 방법에 관한 것이다. 특히 분산 서버를 이용하여 단말기는 업데이트 여부를 판단하고, 판단 결과에 따라 해당 업데이트 파일을 수신하여 소프트웨어를 업데이트하는 방법 및 그를 수행하는 통신 시스템에 관한 것이다.The present invention relates to a communication system and a method for updating software in the communication system. In particular, a terminal using a distributed server determines whether to update, and receives a corresponding update file according to the determination result and relates to a method for updating software and a communication system for performing the same.

펌웨어(firmware)는 하드웨어를 제어하고 관리하는 프로그램을 의미한다. 펌웨어는 프로그램이라는 점에서 하드웨어와 구분되지만, 하드웨어를 제어하고 관리한다는 점에서 일반 응용 프로그램과 구분되는 특수한 프로그램이다. 즉 펌웨어는 소프트웨어와 하드웨어의 특성을 모두 갖고 있다고 할 수 있다. 일반적으로 펌웨어는 롬(ROM), 즉 플래시 메모리에 저장된다.Firmware refers to a program that controls and manages hardware. Firmware is distinct from hardware in that it is a program, but it is a special program that distinguishes itself from general applications in that it controls and manages hardware. In other words, firmware has both software and hardware characteristics. Firmware is typically stored in ROM, or flash memory.

통상적으로 다양한 기능을 수행할 수 있는 단말기는 해당 기능을 수행하기 위한 펌웨어를 내장한다. 이때 펌웨어는 운영 체제(Operating system)와 같은 대규모의 프로그램을 사용하기보다는 소규모의 단일 프로그램을 탑재하기 위해 많이 사용된다. 이와 같은 펌웨어는 소규모의 프로그램이기 때문에 펌웨어 자체의 오류 개선이나 시스템의 성능 향상, 기능 추가 등의 목적으로 수시로 갱신된다.Typically, a terminal capable of performing various functions has built-in firmware for performing the corresponding function. The firmware is often used to mount a single small program rather than using a large program such as an operating system. Since such a firmware is a small program, it is frequently updated for the purpose of improving the error of the firmware itself, improving the performance of the system, or adding a function.

그러기 위해 단말기는 업데이트 관리 서버에 펌웨어 업데이트 버전이 있는지 주기적으로 확인한다. 그러나 단말기를 사용하는 사용자들이 증가함에 따라, 단말기의 개수도 증가한다. 즉 펌웨어 업데이트 버전이 있는지 확인하는 단말기의 개수가 증가하게 된다. 따라서 업데이트 관리 서버의 부하도 증가하게 된다. To this end, the terminal periodically checks whether there is a firmware update version in the update management server. However, as the number of users using terminals increases, the number of terminals also increases. That is, the number of terminals checking whether there is a firmware update version is increased. Therefore, the load on the update management server increases.

따라서 본 발명은 업데이트 파일을 여러 개의 서버에 분산시키고, 단말기는 분산된 서버를 통해 데이터를 업데이트하는 방법을 제안한다. Therefore, the present invention distributes the update file to a plurality of servers, the terminal proposes a method for updating data through the distributed server.

상기와 같은 문제점을 해결하기 위해 본 발명의 통신 시스템에서 데이터 업데이트 방법은 업데이트 관리 서버는 소프트웨어를 업데이트하기 위한 업데이트 파일 및 상기 업데이트 파일을 설명하기 위한 버전 정보 및 주기 설정 정보를 포함하는 버전 파일을 분산 업데이트 서버로 분산하는 과정과, 단말기는 업데이트 여부를 판단하기 위한 업데이트 판단 주기에 상기 분산 업데이트 서버로부터 상기 버전 파일을 수신하는 과정과, 상기 단말기는 상기 버전 파일에 포함된 상기 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 결정하고, 해당 소프트웨어를 업데이트하는 과정을 포함하는 것을 특징한다.In order to solve the above problems, in the communication system of the present invention, in the data update method, the update management server distributes an update file for updating software and a version file including version information and period setting information for describing the update file. Distributing to an update server, receiving a version file from the distributed update server in an update determination cycle for determining whether to update, and using the period setting information included in the version file Determining a next update determination cycle and updating the corresponding software.

또한 상기와 같은 문제점을 해결하기 위해 본 발명의 단말기에서 데이터 업데이트 방법은 업데이트 여부를 판단하기 위해 설정된 업데이트 판단 주기에 버전 파일을 수신하는 과정과, 상기 수신된 버전 파일의 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 설정하는 과정과, 상기 버전 파일의 버전 정보를 이용하여 해당 소프트웨어를 업데이트하는 과정을 포함하는 것을 특징으로 한다. In addition, in order to solve the above problems, the data update method in the terminal of the present invention comprises the steps of receiving a version file in the update determination cycle is set to determine whether the update, and using the cycle setting information of the received version file And a step of setting an update determination cycle and updating the corresponding software using the version information of the version file.

그리고 상기와 같은 문제점을 해결하기 위해 본 발명의 데이터 업데이트 단말기는 업데이트 여부를 판단하기 위해 설정된 업데이트 판단 주기에 버전 파일을 수신하는 통신부와, 상기 통신부를 통해 수신된 상기 버전 파일의 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 설정하고, 상기 버전 파일의 버전 정보를 이용하여 해당 소프트웨어를 업데이트하는 제어부와, 상기 업데이트된 소프트웨어를 저장하는 저장부를 포함하는 것을 특징으로 한다.In order to solve the above problems, the data update terminal of the present invention uses a communication unit which receives a version file at an update determination cycle set to determine whether to update, and the period setting information of the version file received through the communication unit. And setting a next update determination period, and including a control unit for updating the corresponding software using the version information of the version file, and a storage unit for storing the updated software.

본 발명에 따르면, 단말기에서 업데이트가 필요하지 않은 경우에도 업데이트 관리 서버에 발생될 수 있는 부하가 줄어든다. 또한 단말기는 수신된 버전 파일을 이용하여 업데이트 여부를 확인하기 위해 버전 업데이트 서버에 접속하는 주기를 조절할 수 있다. According to the present invention, even if an update is not required in the terminal, a load that may be generated on the update management server is reduced. In addition, the terminal may adjust the period of access to the version update server to check whether the update using the received version file.

도 1은 본 발명의 실시예에 따른 업데이트 수행 통신 시스템의 구성을 도시한 도면.
도 2는 본 발명의 실시예에 따른 통신 시스템 간 업데이트를 수행하기 위한 신호 흐름을 도시한 도면.
도 3은 본 발명의 실시예에 따른 관리자 단말기의 업데이트 파일을 전송하는 방법을 도시한 도면.
도 4는 본 발명의 실시예에 따른 버전 파일의 주기 설정 정보를 도시한 도면.
도 5는 본 발명의 실시예에 따른 단말기의 구성을 도시한 도면.
도 6은 본 발명의 실시예에 따른 단말기의 데이터 업데이트 방법을 도시한 도면.
1 is a diagram illustrating a configuration of an update performing communication system according to an embodiment of the present invention.
2 illustrates a signal flow for performing an update between communication systems according to an embodiment of the present invention.
3 is a diagram illustrating a method of transmitting an update file of an administrator terminal according to an embodiment of the present invention.
4 is a diagram illustrating period setting information of a version file according to an embodiment of the present invention;
5 is a diagram illustrating a configuration of a terminal according to an embodiment of the present invention.
6 is a diagram illustrating a data update method of a terminal according to an embodiment of the present invention.

'관리자 단말기'는 통신 사업자 또는 단말기 제조사에 의해 공급되는 소프트웨어인 펌웨어를 단말기에 제공한다. 그리고 관리자 단말기는 소프트웨어를 업데이트하여 단말기에 제공할 수 있다. 그러기 위해 관리자 단말기는 통신 사업자 또는 단말기 제조사에의 의해 소프트웨어가 업데이트되면, 이에 해당하는 업데이트 파일을 업데이트 관리 서버로 전달한다. 또한 관리자 단말기는 업데이트된 소프트웨어를 설명하기 위한 버전 파일을 구성한다. The manager terminal provides the terminal with firmware, which is software supplied by a carrier or a terminal manufacturer. The manager terminal may update the software and provide the same to the terminal. To this end, the manager terminal transmits the corresponding update file to the update management server when the software is updated by the carrier or the terminal manufacturer. The manager terminal also configures a version file for describing the updated software.

'업데이트 파일'은 단말기에 설치된 소프트웨어를 업데이트하기 위한 파일이다. 좀 더 상세히 설명하면, 업데이트 파일은 원본 소프트웨어에서 업데이트로 인해 추가 또는 변경된 데이터를 포함하고 있으며, 이를 델타 값이라고 칭한다. 따라서 소프트웨어 업데이트는 델타 값을 소프트웨어에 반영하는 것을 의미한다. 그리고 '버전 파일'은 최근 업데이트된 소프트웨어의 버전에 대한 버전 정보 및 단말기에서 업데이트 여부를 확인하는 주기를 산출하기 위한 주기 설정 정보를 포함한다. 여기서 버전 정보는 소프트웨어 업데이트시 필요한 버전 값, 전체 소프트웨어의 대표 버전 값, 소프트웨어를 구성하는 각 부분의 버전 값, 해당 소프트웨어를 탑재할 단말기의 모델 정보 및 거래선 코드와 같은 메타 정보로 표현된다. The update file is a file for updating software installed in the terminal. More specifically, the update file contains data added or changed due to the update in the original software, which is called the delta value. Therefore, software update means to reflect the delta value to the software. The 'version file' includes version information on a version of the recently updated software and period setting information for calculating a period for checking whether the terminal is updated. Here, the version information is expressed as meta information such as a version value required for software update, a representative version value of the entire software, a version value of each part constituting the software, a model information of a terminal on which the software is to be installed, and a customer code.

'업데이트 관리 서버'는 관리자 단말기로부터 전송된 업데이트 파일 및 버전 파일의 원본을 저장한다. 그리고 업데이트 관리 서버는 단말기와 업데이트 통신을 수행하여 소프트웨어 업데이트를 관리한다. 또한 업데이트 관리 서버는 관리자 단말기로부터 전송된 업데이트 파일 및 버전 파일을 분산 업데이트 서버에 분산시킬 수 있다. 이에 다수 개의 단말기가 주기적으로 업데이트를 체크할 때 업데이트 관리 서버에서 걸리던 부하가 분산될 수 있다. The update management server stores the original of the update file and the version file transmitted from the administrator terminal. The update management server manages software updates by performing update communication with the terminal. In addition, the update management server may distribute the update file and the version file transmitted from the administrator terminal to the distributed update server. Accordingly, when a plurality of terminals periodically check for updates, the load of the update management server may be distributed.

'분산 업데이트 서버'는 업데이트 관리 서버로부터 분산된 버전 파일 및 업데이트 파일을 저장한다. 또한 분산 업데이트 서버는 단말기로부터 업데이트 파일이 요청되면, 요청된 업데이트 파일을 해당 단말기로 전달할 수 있다. The distributed update server stores the version file and the update file distributed from the update management server. In addition, when the update file is requested from the terminal, the distributed update server may deliver the requested update file to the terminal.

'단말기'는 외부로부터 송수신되는 데이터를 처리할 수 있는 정보 처리 장치를 의미한다. 그리고 단말기는 펌웨어와 같은 특정 소프트웨어 업데이트를 수행할 수 있는 모든 정보 처리 장치를 포함한다. 여기서 단말기는 라우터, 억세스 포인트(AP;Access Point), 휴대 단말기 등이 포함될 수 있으며, 휴대 단말기로 가정하여 설명한다. The term 'terminal' refers to an information processing apparatus capable of processing data transmitted and received from the outside. And the terminal includes all information processing apparatus capable of performing a specific software update, such as firmware. Herein, the terminal may include a router, an access point (AP), a portable terminal, and the like.

이하 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, the operation principle of the present invention will be described in detail with reference to the accompanying drawings. In the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear. The following terms are defined in consideration of the functions of the present invention, and may be changed according to the intentions or customs of the user, the operator, and the like. Therefore, the definition should be based on the contents throughout this specification.

도 1은 본 발명의 실시예에 따른 업데이트 수행 통신 시스템의 구성을 도시한 도면이다.1 is a diagram illustrating a configuration of an update performing communication system according to an embodiment of the present invention.

도 1을 참조하면, 통신 시스템은 관리자 단말기(110), 업데이트 관리 서버(120), 분산 업데이트 서버(130), 단말기(140)로 구성된다. 관리자 단말기(110)는 업데이트된 소프트웨어를 단말기(140)에 제공할 수 있다. 그러기 위해 관리자 단말기(110)는 150단계에서 업데이트 관리 서버(120)에 업데이트된 소프트웨어에 대한 업데이트 파일 및 버전 파일을 전송한다. 그러면 업데이트 관리 서버(120)는 160단계에서 업데이트 파일 및 버전 파일을 분산 업데이트 서버(130)에 분산시켜 저장한다. Referring to FIG. 1, the communication system includes a manager terminal 110, an update management server 120, a distributed update server 130, and a terminal 140. The manager terminal 110 may provide the updated software to the terminal 140. To this end, the manager terminal 110 transmits the update file and the version file for the updated software to the update management server 120 in step 150. Then, the update management server 120 distributes and stores the update file and the version file in the distributed update server 130 in step 160.

단말기(140)는 170단계에서 주기적으로 분산 업데이트 서버(130)에 저장된 버전 파일을 통해 업데이트 여부를 확인한다. 만약 소프트웨어를 업데이트해야 한다면, 단말기(140)는 180단계에서 업데이트 관리 서버(120)와 업데이트를 위한 연결을 수행한다. 그리고 업데이트 관리 서버(120)로부터 어떠한 버전의 업데이트 파일로 업데이트를 수행해야하는지에 대한 정보가 수신되면, 단말기(140)는 해당 업데이트 파일을 요청하는 메시지를 분산 업데이트 서버(130)로 전송한다. 그러면 분산 업데이트 서버(130)는 190단계에서 해당 업데이트 파일을 단말기(140)에 전송한다. 이에 단말기(140)는 수신된 업데이트 파일을 이용하여 소프트웨어를 업데이트할 수 있다. In step 170, the terminal 140 periodically checks whether an update is made through the version file stored in the distributed update server 130. If the software needs to be updated, the terminal 140 performs a connection for update with the update management server 120 in step 180. When receiving information on which version of the update file is to be updated from the update management server 120, the terminal 140 transmits a message requesting the update file to the distributed update server 130. In operation 190, the distributed update server 130 transmits the corresponding update file to the terminal 140. Accordingly, the terminal 140 may update the software by using the received update file.

본 발명에 따르면, 관리자 단말기(110)는 변경된 소프트웨어에 대한 업데이트 파일 및 그에 해당하는 버전 파일을 업데이트 관리 서버(120)로 전달한다. 그리고 업데이트 관리 서버(120)는 업데이트 파일 및 버전 파일을 분산 업데이트 서버(130)로 분산시킨다. 그러면 단말기(140)는 업데이트 여부를 판단하기 위한 업데이트 판단 주기에 분산 업데이트 서버(130)로부터 버전 파일을 수신한다. 그리고 단말기(140)는 수신된 버전 파일을 이용하여 다음 업데이트 여부를 판단하기 위한 업데이트 판단 주기를 설정한다. According to the present invention, the manager terminal 110 transmits the update file for the changed software and the corresponding version file to the update management server 120. The update management server 120 distributes the update file and the version file to the distributed update server 130. Then, the terminal 140 receives a version file from the distributed update server 130 in an update determination cycle for determining whether to update. The terminal 140 sets an update determination cycle for determining whether to update the next update using the received version file.

다음으로 단말기(140)는 버전 파일의 버전 정보와 현재 저장된 소프트웨어의 버전 정보가 동일한지 판단한다. 만약 버전 정보가 동일하면, 단말기(140)는 업데이트를 수행하지 않고, 다음 업데이트 판단 주기까지 대기한다. 그러나 버전 정보가 동일하지 않으면, 단말기(140)는 분산 업데이트 서버(130)로부터 해당 업데이트 파일을 다운로드하여 업데이트를 수행한다. 따라서 단말기별로 업데이트 여부를 판단하기 위해 분산 업데이트 서버에 접속하는 업데이트 판단 주기가 달라진다. 그리고 업데이트 여부를 판단하기 위해 다수 개의 단말기들이 업데이트 관리 서버(120)에 접속하는 것이 방지될 수 있다. Next, the terminal 140 determines whether the version information of the version file and the version information of the currently stored software are the same. If the version information is the same, the terminal 140 does not perform the update and waits until the next update determination cycle. However, if the version information is not the same, the terminal 140 downloads the update file from the distributed update server 130 and performs the update. Therefore, the update determination cycle for accessing the distributed update server for determining whether to update each terminal varies. In addition, a plurality of terminals may be prevented from accessing the update management server 120 to determine whether to update.

도 2는 본 발명의 실시예에 따른 통신 시스템 간 업데이트를 수행하기 위한 신호 흐름을 도시한 도면이다.2 is a diagram illustrating a signal flow for performing an update between communication systems according to an embodiment of the present invention.

도 2를 참조하면, 업데이트 관리 서버(120), 분산 업데이트 서버(130) 및 단말기(140) 간의 데이터 업데이트를 위한 신호 흐름에 대하여 설명한다. 업데이트 관리 서버(120)는 DM(Device Management) 서버(123) 및 DL(Download) 서버(125)로 구성될 수 있다. 여기서 DM 서버(123)는 단말기(140)를 관리하는 기능을 수행할 수 있다. 대표적으로 DM 서버(123)는 단말기(140)의 소프트웨어 업데이트 요청을 받고, 단말기(140)의 소프트웨어 업데이트 결과를 전송받아 단말기(140)의 버전 정보를 관리하는 기능을 수행한다. DL 서버(125)는 업데이트 파일과 버전 파일을 저장하고 있어, 필요에 따라 업데이트 파일과 버전 파일을 단말기(140)에 전달하는 기능을 수행한다.Referring to FIG. 2, a signal flow for updating data between the update management server 120, the distributed update server 130, and the terminal 140 will be described. The update management server 120 may be composed of a device management (DM) server 123 and a download server (DL) 125. Here, the DM server 123 may perform a function of managing the terminal 140. Typically, the DM server 123 receives a software update request from the terminal 140, receives a software update result of the terminal 140, and performs a function of managing version information of the terminal 140. The DL server 125 stores the update file and the version file, and performs a function of transferring the update file and the version file to the terminal 140 as necessary.

단말기(140)는 210단계에서 설정된 업데이트 판단 주기가 되면, 215단계에서 분산 업데이트 서버(130)로 버전 파일을 요청하는 메시지를 전달한다. 그러면 분산 업데이트 서버(130)는 220단계에서 요청된 버전 파일을 단말기(140)로 전달한다. 이때 단말기(140)는 분산 업데이트 서버(130)로부터 버전 파일이 전송되지 않은 경우, 225단계에서와 같이 업데이트 관리 서버(120)에 버전 파일을 요청한다. 그러면 업데이트 관리 서버(120)는 230단계에서 요청된 버전 파일을 단말기(140)로 전송한다. 225단계 내지 230단계는 분산 업데이트 서버(130)로부터 버전 파일이 성공적으로 수신되는 경우, 수행되지 않을 수 있다.When the update determination cycle is set in step 210, the terminal 140 transmits a message requesting a version file to the distributed update server 130 in step 215. The distributed update server 130 then delivers the requested version file to the terminal 140 in step 220. In this case, if the version file is not transmitted from the distributed update server 130, the terminal 140 requests the version file from the update management server 120 as in step 225. The update management server 120 then transmits the requested version file to the terminal 140 in step 230. Steps 225 to 230 may not be performed when the version file is successfully received from the distributed update server 130.

단말기(140)는 235단계에서 수신된 버전 파일을 확인한다. 그리고 단말기(140)는 240단계에서 확인된 버전 파일을 이용하여 다음 업데이트 판단 주기를 결정한다. 좀 더 상세히 설명하면, 단말기(140)는 버전 파일에 포함된 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 선택한다. The terminal 140 checks the version file received in step 235. In addition, the terminal 140 determines the next update determination cycle using the version file identified in step 240. In more detail, the terminal 140 selects a next update determination cycle using the period setting information included in the version file.

다음으로 단말기(140)는 245단계에서 버전 파일에 포함된 버전 정보를 확인하여 소프트웨어 업데이트 여부를 확인한다. 다시 말해 단말기(140)는 현재 소프트웨어에 해당하는 버전과 버전 파일을 통해 수신된 버전이 동일한지 판단한다. Next, the terminal 140 checks the version information included in the version file in step 245 to confirm whether or not the software is updated. In other words, the terminal 140 determines whether the version corresponding to the current software and the version received through the version file are the same.

만약 저장된 버전과 수신된 버전이 달라 소프트웨어 업데이트를 수행해야한다면, 단말기(140)는 250단계에서 업데이트 관리 서버(120)로 소프트웨어 업데이트를 요청하는 메시지를 전달한다. 그러면 업데이트 관리 서버(120)는 해당 단말기(140)에서 업데이트에 필요한 업데이트 파일을 확인한다. 그리고 업데이트 관리 서버(120)는 255단계에서 다운로드할 업데이트 파일에 대한 정보를 단말기(140)에 전송한다. 다시 말해 업데이트 관리 서버(120)는 단말기(140)에서 업데이트 시 필요한 델타 값이 무엇인지에 대한 정보를 전달한다. If the stored version is different from the received version, the terminal 140 transmits a message requesting the software update to the update management server 120 in step 250. Then, the update management server 120 checks the update file required for the update in the terminal 140. In operation 255, the update management server 120 transmits information on the update file to be downloaded to the terminal 140. In other words, the update management server 120 transmits information on what is a delta value required for updating in the terminal 140.

단말기(140)는 260단계에서 업데이트 관리 서버(120)로부터 수신된 정보를 기반으로 분산 업데이트 서버(130)로 업데이트 파일을 요청한다. 그러면 분산 업데이트 서버(130)는 265단계에서 해당 업데이트 파일을 단말기(140)에 전달한다. 이후 단말기(140)는 270단계에서 수신된 업데이트 파일을 이용하여 소프트웨어를 업데이트한다. 그리고 단말기(140)는 275단계에서 업데이트 결과에 대한 메시지를 업데이트 관리 서버(120)로 전달한다. 이때, 업데이트 결과는 업데이트의 성공 여부 및 현재 업데이트된 소프트웨어의 버전에 대한 내용을 포함한다. In step 260, the terminal 140 requests the update file to the distributed update server 130 based on the information received from the update management server 120. In operation 265, the distributed update server 130 transmits the corresponding update file to the terminal 140. Thereafter, the terminal 140 updates the software using the update file received in step 270. In operation 275, the terminal 140 transmits a message about the update result to the update management server 120. At this time, the update result includes information on whether the update is successful and the version of the currently updated software.

도 3은 본 발명의 실시예에 따른 관리자 단말기의 업데이트 파일을 전송하는 방법을 도시한 도면이다.3 is a diagram illustrating a method of transmitting an update file of an administrator terminal according to an exemplary embodiment of the present invention.

도 3을 참조하면, 관리자 단말기(110)는 310단계에서 단말기 제조사 또는 통신 사업자에 의해 소프트웨어가 변경되면, 변경된 소프트웨어에 해당하는 최근 업데이트 파일을 저장한다. 그리고 관리자 단말기(110)는 이에 해당하는 업데이트 정보를 변경한다. 다음으로 관리자 단말기(110)는 320단계에서 변경된 업데이트 정보와 함께 주기 설정 정보가 포함된 버전 파일을 재구성한다. 이때 관리자 단말기(110)는 현재 업데이트된 파일의 버전에 해당하는 버전 정보 및 단말기(140)에서 업데이트 판단 주기 산출을 위한 주기 설정 정보를 버전 파일로 업데이트한다. 다음으로 관리자 단말기(110)는 330단계에서 업데이트 관리 서버(120)로 버전 파일과 업데이트 파일을 전달한다. 그러면 업데이트 관리 서버(120)는 버전 파일 및 업데이트 파일을 분산 업데이트 서버(130)에 분산시킨다. Referring to FIG. 3, when the software is changed by the terminal manufacturer or the communication service provider in step 310, the manager terminal 110 stores a recent update file corresponding to the changed software. In addition, the manager terminal 110 changes the corresponding update information. Next, the manager terminal 110 reconstructs the version file including the cycle setting information together with the update information changed in step 320. In this case, the manager terminal 110 updates the version information corresponding to the version of the currently updated file and the period setting information for calculating the update determination cycle in the terminal 140 with the version file. Next, the manager terminal 110 transmits the version file and the update file to the update management server 120 in step 330. The update management server 120 then distributes the version file and the update file to the distributed update server 130.

도 4는 본 발명의 실시예에 따른 버전 파일의 주기 설정 정보를 도시한 도면이다.4 is a diagram illustrating period setting information of a version file according to an embodiment of the present invention.

도 4를 참조하면, 버전 파일은 xml(extensible markup language) 형태로 구성될 수 있다. 그리고 버전 파일은 버전 정보(Versioninfo)(410) 및 주기 설정 정보(polling)(450)로 구성될 수 있다. 이때 버전 정보(410)는 URL(Uniform Resource Locator)(420), 펌웨어(firmware)(430) 및 최근 업데이트 버전(Last version)(440)과 관련된 정보들을 포함한다. 그리고 주기 설정 정보(450)는 주기(Period)(453), 시간(time)(455), 시간 범위(range)(457)에 대한 정보를 포함한다. Referring to FIG. 4, the version file may be configured in the form of extensible markup language (xml). The version file may be composed of version information (Versioninfo) 410 and period setting information (polling) 450. In this case, the version information 410 includes information related to the Uniform Resource Locator (URL) 420, the firmware 430, and the last updated version 440. The period setting information 450 includes information on a period 453, a time 455, and a time range 457.

버전 정보(410) 중 URL(430)은 버전 파일을 저장하고 있는 업데이트 관리 서버(120) 또는 분산 업데이트 서버(130)의 주소에 해당하는 정보이다. 즉 URL(420)은 버전 파일을 저장하고 있는 서버의 주소가 변경되었을 때를 대비하여 전달되는 정보이다. The URL 430 of the version information 410 is information corresponding to the address of the update management server 120 or the distributed update server 130 that stores the version file. That is, the URL 420 is information delivered in case the address of the server storing the version file is changed.

단말기(140)는 업데이트 파일이 위치한 서버에 해당하는 URL(420)을 저장한다. 그리고 업데이트 여부를 판단할 때, 단말기(140)는 저장된 URL에 해당하는 서버로 접속한다. 따라서 URL(420)이 변경된 경우, 관리자 단말기(110)는 변경된 URL(420)에 대한 정보가 업데이트된 버전 파일을 업데이트 관리 서버(120)로 전달한다. 그러면 업데이트 관리 서버(120)는 URL(420)이 변경된 버전 파일을 각 분산 업데이트 서버(130)로 분산시킨다. 그리고 단말기(140)는 업데이트 판단 주기에 분산 업데이트 서버(130)로부터 버전 파일이 수신되면, 버전 정보(410)의 URL(420)을 확인한다. 다음으로 단말기(140)는 확인된 URL(420)과 저장된 URL을 비교한다. 만약 URL(420)이 변경되었으면, 단말기(140)는 변경된 URL(420)에 해당하는 분산 업데이트 서버(130)에 접속하여 버전 파일을 다시 수신할 수 있다. The terminal 140 stores the URL 420 corresponding to the server where the update file is located. When determining whether to update, the terminal 140 accesses a server corresponding to the stored URL. Therefore, when the URL 420 is changed, the manager terminal 110 transmits a version file in which the information about the changed URL 420 is updated, to the update management server 120. The update management server 120 then distributes the version file whose URL 420 has been changed to each distributed update server 130. When the version file is received from the distributed update server 130 in the update determination cycle, the terminal 140 checks the URL 420 of the version information 410. Next, the terminal 140 compares the checked URL 420 with the stored URL. If the URL 420 is changed, the terminal 140 may access the distributed update server 130 corresponding to the changed URL 420 and receive the version file again.

버전 정보(410) 중 펌웨어(430)은 업데이트될 소프트웨어가 무엇인지를 알리는 정보이다.The firmware 430 of the version information 410 is information indicating what software is to be updated.

버전 정보(410) 중 최근 업데이트 버전(440)은 업데이트 파일의 최종 버전 정보이다. 단말기(140)는 저장된 소프트웨어의 버전과 다운로드한 버전 파일의 최근 업데이트 버전(440)을 비교하여 업데이트 여부를 판단할 수 있다. The latest updated version 440 of the version information 410 is the last version information of the update file. The terminal 140 may determine whether to update by comparing the version of the stored software with the latest update version 440 of the downloaded version file.

주기 설정 정보(450) 중 주기(453)는 날짜 단위로 구성되며, 단말기(140)에서 다음 업데이트 여부를 판단하기 위해 분산 업데이트 서버(130)에 접속하는 날짜를 선택하는데 사용한다. 예를 들어 주기(453)로 7이 설정되었다고 가정한다. 다운로드된 버전 파일의 주기(453)가 7로 설정되어 있으므로, 단말기(140)는 현재 날짜로부터 7일 안의 날짜 중에서 랜덤하게 하루를 선택한다. 그리고 단말기(140)는 선택된 날짜에 분산 업데이트 서버(130)에 접속하여 버전 파일을 수신하고, 수신된 버전 파일을 이용하여 업데이트 여부를 판단한다.The period 453 of the period setting information 450 is configured on a date basis and is used by the terminal 140 to select a date for accessing the distributed update server 130 to determine whether to update the next. For example, assume that 7 is set as the period 453. Since the period 453 of the downloaded version file is set to 7, the terminal 140 randomly selects one day from seven days within the current date. In addition, the terminal 140 accesses the distributed update server 130 at the selected date, receives a version file, and determines whether to update using the received version file.

주기 설정 정보(450) 중 시간(455)은 24시간을 기준으로, 다음 업데이트 여부를 판단하기 위해 분산 업데이트 서버(130)에 접속할 시간(455)을 산출하는데 사용된다. 이때 시간(455)은 단말기(140)가 위치한 지역의 시간을 기준으로 한다. 예를 들어 시간(455)이 15로 설정되어 있고, 단말기(140)가 한국에 위치한다고 가정한다. 다운로드된 버전 파일의 시간(455)이 15로 설정되어있으므로, 단말기(140)는 한국 시간 오후 3시에 분산 업데이트 서버(130)에 접속하여 버전 파일을 수신하고, 수신된 버전 파일을 이용하여 업데이트 여부를 판단한다. The time 455 of the period setting information 450 is used to calculate the time 455 to access the distributed update server 130 to determine whether to update the next time, based on a 24 hour period. In this case, the time 455 is based on the time of the region where the terminal 140 is located. For example, assume that the time 455 is set to 15 and the terminal 140 is located in Korea. Since the time 455 of the downloaded version file is set to 15, the terminal 140 connects to the distributed update server 130 at 3 pm Korea time, receives the version file, and updates using the received version file. Determine whether or not.

주기 설정 정보(450) 중 시간 범위(457)는 주기 설정 정보(450) 중 시간(455)을 기준으로 설정되는 범위로, 지정된 시간(455)에 단말기(140)들이 동시에 접속하는 것을 방지하기 위해 설정된다. 예를 들이 시간 범위(457)가 3시간으로 설정되어 있다고 가정한다. 다운로드된 버전 파일의 시간 범위(457)가 3시간으로 설정되어 있으므로, 단말기(140)는 주기 설정 정보(450) 중 시간(455)을 기준으로 3시간 범위 내에서 임의의 시점을 선택하여 업데이트 여부를 판단할 수 있다. The time range 457 of the period setting information 450 is a range set based on the time 455 of the period setting information 450 to prevent the terminals 140 from simultaneously accessing the designated time 455. Is set. For example, assume that time range 457 is set to three hours. Since the time range 457 of the downloaded version file is set to 3 hours, the terminal 140 selects and updates an arbitrary time point within a 3 hour range based on the time 455 of the period setting information 450. Can be determined.

관리자 단말기(110)는 버전 정보(410) 및 주기 설정 정보(450)가 포함된 버전 파일을 구성하여 업데이트 관리 서버(120)로 전달한다. 그리고 업데이트 관리 서버(120)는 해당 버전 파일을 각 분산 업데이트 서버(130)로 분산시켜 전달한다. 그러면 단말기(140)는 업데이트 판단 주기에 분산 업데이트 서버(130)와 연결하여 버전 파일을 수신한다. 다음으로 단말기(140)는 버전 파일에 포함된 주기 설정 정보(450)를 이용하여 다음 업데이트 여부를 판단하기 위한 업데이트 판단 주기를 산출한다. 좀 더 상세히 설명하면, 단말기(140)는 수신된 버전 파일을 분석한다. 그리고 단말기(140)는 버전 파일의 주기(453)와 저장된 주기를 비교한다. 만약 주기(453)가 변경되었으면, 단말기(140)는 다음 업데이트 여부를 판단하는 날짜를 현재 날짜를 기준으로 변경된 주기(453) 내에 임의의 날짜를 선택한다. 반면에 주기가 변경되지 않았으면, 단말기(140)는 다음 업데이트 여부를 판단하는 날짜를 현재 날짜를 기준으로 저장된 주기만큼 지난 날짜로 선택한다. 이에 따라 단말기(140)들이 업데이트 여부를 판단하기 위해 분산 업데이트 서버(130)에 접속하는 날짜가 분산될 수 있다. The manager terminal 110 constructs a version file including the version information 410 and the period setting information 450, and transmits the version file to the update management server 120. The update management server 120 distributes the corresponding version file to each distributed update server 130 and delivers it. Then, the terminal 140 receives a version file in connection with the distributed update server 130 in the update determination cycle. Next, the terminal 140 calculates an update determination period for determining whether the next update is performed using the period setting information 450 included in the version file. In more detail, the terminal 140 analyzes the received version file. The terminal 140 compares the period 453 of the version file with the stored period. If the period 453 is changed, the terminal 140 selects an arbitrary date within the changed period 453 based on the current date as a date for determining whether to update the next. On the other hand, if the period has not changed, the terminal 140 selects a date for determining whether to update the next date as much as the stored period based on the current date. Accordingly, dates for accessing the distributed update server 130 to the terminals 140 may be distributed.

다음 업데이트 여부를 판단할 날짜가 선택되면, 단말기(140)는 분산 업데이트 서버(130)로부터 버전 파일을 수신할 시간(455)을 선택한다. 이때 단말기(140)는 버전 파일의 시간(455) 및 시간 범위(457)를 확인하여, 버전 파일의 시간(455)을 기준으로 설정된 시간 범위(457) 내에서 임의의 시간을 선택한다. 이에 따라 단말기(140)들이 업데이트 여부를 판단하기 위해 분산 업데이트 서버(130)에 접속하는 시간이 분산될 수 있다. If a date to determine whether to update next is selected, the terminal 140 selects a time 455 to receive a version file from the distributed update server 130. At this time, the terminal 140 checks the time 455 and the time range 457 of the version file, and selects an arbitrary time within the time range 457 set based on the time 455 of the version file. Accordingly, time for accessing the distributed update server 130 by the terminals 140 may be distributed.

단말기(140)는 이와 같은 과정들을 통해 선택된 날짜 및 시간을 다음 업데이트 판단 주기로 설정한다. 그리고 설정된 업데이트 판단 주기가 도래하면, 단말기(140)는 분산 업데이트 서버(130)로부터 버전 파일을 수신하여 업데이트 판단 주기를 다시 설정하고, 업데이트를 수행할 수 있다. 즉 단말기(140)에서 업데이트를 판단하는 시점이 계속 변경될 수 있다. The terminal 140 sets the selected date and time as the next update determination cycle through these processes. When the set update determination cycle arrives, the terminal 140 may receive a version file from the distributed update server 130, set the update determination cycle again, and perform an update. That is, the timing at which the terminal 140 determines the update may continue to change.

도 5는 본 발명의 실시예에 따른 단말기의 구성을 도시한 도면이다.5 is a diagram illustrating a configuration of a terminal according to an embodiment of the present invention.

도 5를 참조하면, 단말기(140)는 통신부(510), 제어부(520), 저장부(530)로 구성된다.Referring to FIG. 5, the terminal 140 includes a communication unit 510, a control unit 520, and a storage unit 530.

통신부(510)는 제어부(520)의 제어하에 업데이트 관리 서버와 업데이트를 위한 통신을 수행하거나, 분산 업데이트 서버와 접속할 수 있다. 그리고 통신부(510)는 제어부(520)의 제어하에 분산 업데이트 서버로부터 버전 파일 또는 업데이트 파일을 수신할 수 있다.The communication unit 510 may perform communication for update with the update management server under the control of the controller 520, or may be connected to the distributed update server. The communication unit 510 may receive a version file or an update file from the distributed update server under the control of the controller 520.

제어부(520)는 단말기(140)를 구성하는 구성들의 전반적인 동작 및 상태를 제어한다. 본 발명에 따르면, 소프트웨어 업데이트 여부를 판단하기 위한 업데이트 판단 주기가 도래하면, 제어부(520)는 통신부(510)를 제어하여 분산 업데이트 서버에 버전 파일을 요청한다. 그리고 버전 파일이 수신되면, 제어부(520)는 버전 파일을 확인하여 다음 업데이트 판단 주기를 설정하고, 소프트웨어 업데이트를 수행할 수 있다. The controller 520 controls the overall operation and status of the components constituting the terminal 140. According to the present invention, when an update determination cycle for determining whether to update the software arrives, the controller 520 controls the communication unit 510 to request a version file from the distributed update server. When the version file is received, the controller 520 may check the version file, set a next update determination cycle, and perform a software update.

업데이트 판단 주기를 설정하기 위해 제어부(520)는 업데이트 판단 주기 확인부(525)를 포함한다. 업데이트 판단 주기 확인부(525)는 버전 파일에 포함된 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 선택할 수 있다.In order to set the update determination cycle, the controller 520 includes an update determination cycle checker 525. The update determination cycle checker 525 may select the next update determination cycle using cycle setting information included in the version file.

우선 업데이트 판단 주기 확인부(525)는 주기 설정 정보에서 주기에 대한 내용을 확인한다. 그리고 업데이트 판단 주기 확인부(525)는 확인된 주기와 미리 저장되었던 주기가 동일한지 판단한다. 만약 주기가 변경되었으면, 업데이트 판단 주기 확인부(525)는 현재 날짜를 기준으로 변경된 주기 안의 날짜 중에서 업데이트 여부를 확인할 날짜를 랜덤하게 선택한다. First, the update determination period checking unit 525 checks the contents of the period in the period setting information. The update determination period checking unit 525 determines whether the checked period and the previously stored period are the same. If the period is changed, the update determination period checker 525 randomly selects a date to check whether to update from among the dates in the changed period based on the current date.

업데이트 판단 주기 확인부(525)는 선택된 날짜에서 분산 업데이트 서버에 접속할 시간을 기준으로 시간 범위를 랜덤하게 선택한다. 그리고 업데이트 판단 주기 확인부(525)는 선택된 날짜, 시간 및 시간 범위를 통해 다음 업데이트 판단 주기를 확인하고, 확인된 업데이트 판단 주기를 저장한다.The update determination cycle checker 525 randomly selects a time range based on the time to access the distributed update server on the selected date. The update determination period checking unit 525 checks the next update determination cycle through the selected date, time, and time range, and stores the checked update determination cycle.

업데이트 판단 주기 확인부(525)를 통해 다음 업데이트 판단 주기가 설정되면, 제어부(520)는 소프트웨어 업데이트 여부를 판단한다. 그리고 판단 결과에 따라 제어부(520)는 해당 업데이트 파일을 수신하고, 수신된 업데이트 파일을 이용하여 해당 소프트웨어를 업데이트한다. When the next update determination cycle is set through the update determination cycle checker 525, the controller 520 determines whether to update the software. According to the determination result, the controller 520 receives the corresponding update file and updates the corresponding software using the received update file.

저장부(530)는 제어부(520)의 제어 하에 단말기(140)를 구성하는 구성들의 동작에 필요한 소프트웨어 및 발생되는 데이터를 저장한다. 여기서 저장부(530)는 버전 파일이 위치한 URL 및 업데이트를 위해 분산 업데이트 서버에 접속하는 주기에 대한 주기 설정 정보를 저장한다. 여기서 주기 설정 정보는 단말기(140)가 분산 업데이트 서버에 접속하는 주기, 날짜, 시간을 포함한다. 그리고 저장부(530)는 제어부(520)의 제어하에 업데이트된 소프트웨어를 저장한다. The storage unit 530 stores software and data generated for the operation of the components constituting the terminal 140 under the control of the controller 520. Here, the storage unit 530 stores period setting information regarding a URL where the version file is located and a period for accessing the distributed update server for updating. Here, the period setting information includes a period, date, and time for the terminal 140 to access the distributed update server. The storage unit 530 stores the updated software under the control of the control unit 520.

이와 같은 구성을 구비한 단말기(140)는 새로운 버전의 소프트웨어가 있는지 확인하기 위해 설정된 주기에 분산 업데이트 서버로부터 버전 파일을 수신한다. 그리고 단말기(140)는 수신된 버전 파일에 포함된 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 설정한다. 다음으로 단말기(140)는 버전 파일의 버전 정보를 확인하여 새로운 버전의 소프트웨어가 있는지 판단한다. 만약 새로운 버전의 소프트웨어가 없으면, 단말기(140)는 업데이트 판단 주기까지 대기한다. 그러나 새로운 버전의 소프트웨어가 존재하는 경우, 단말기(140)는 업데이트 관리 서버와 소프트웨어 업데이트를 위한 통신을 수행한다. 업데이트 관리 서버로부터 업데이트할 파일이 어떠한 버전인지에 대한 정보가 수신되면, 단말기(140)는 분산 업데이트 서버로부터 해당 버전의 업데이트 파일을 다운로드한다. 그리고 단말기(140)는 다운로드한 업데이트 파일을 해당 소프트웨어에 반영하여 업데이트를 수행한다. The terminal 140 having such a configuration receives a version file from the distributed update server at a set cycle to check whether there is a new version of software. In addition, the terminal 140 sets the next update determination cycle using the period setting information included in the received version file. Next, the terminal 140 checks the version information of the version file to determine whether there is a new version of the software. If there is no new version of the software, the terminal 140 waits until the update determination cycle. However, if a new version of the software exists, the terminal 140 communicates with the update management server for software update. When the information on the version of the file to be updated is received from the update management server, the terminal 140 downloads the update file of the version from the distributed update server. The terminal 140 updates the downloaded update file to the corresponding software.

도 6은 본 발명의 실시예에 따른 단말기의 데이터 업데이트 방법을 도시한 도면이다. 6 is a diagram illustrating a data update method of a terminal according to an embodiment of the present invention.

도 6을 참조하면, 단말기(140)는 610단계에서 펌웨어 업데이트 모드를 수행한다. 펌웨어 업데이트 모드는 사용자에 의해 주기적으로 단말기 업그레이드를 수행하는 모드가 선택되거나, 대기 상태를 수행하는 모드를 의미한다. 다음으로 단말기(140)는 615단계에서 현재 시간이 업데이트 판단 주기에 해당하는지 판단한다.Referring to FIG. 6, the terminal 140 performs a firmware update mode in step 610. The firmware update mode refers to a mode in which a mode in which a terminal is periodically upgraded by a user is selected or a standby state is performed. Next, the terminal 140 determines whether the current time corresponds to the update determination cycle in step 615.

만약 업데이트 판단 주기에 해당하면, 단말기(140)는 620단계에서 분산 업데이트 서버에 버전 파일을 요청한다. 그리고 단말기(140)는 630단계에서 버전 파일이 수신되는지 판단한다. 만약 버전 파일이 수신되지 않으면, 단말기(140)는 635단계에서 업데이트 관리 서버로 버전 파일을 요청한다. 그리고 단말기(140)는 업데이트 관리 서버로부터 버전 파일을 수신한다. If the update determination cycle corresponds, the terminal 140 requests a version file from the distributed update server in step 620. In operation 630, the terminal 140 determines whether a version file is received. If the version file is not received, the terminal 140 requests the version file to the update management server in step 635. The terminal 140 receives a version file from the update management server.

버전 파일이 수신되면, 단말기(140)는 640단계에서 수신된 버전 파일의 버전 정보 및 버전 정보를 확인한다. 그리고 단말기(140)는 645단계에서 버전 정보 중 URL이 변경되었는지 판단한다. 즉 단말기(140)는 저장된 URL과 확인된 주기 설정 정보의 URL이 동일한지 판단한다. 만약 URL이 변경되었으면, 단말기(140)는 620단계로 돌아가 변경된 URL에 해당하는 분산 업데이트 서버로 버전 파일을 요청한다.When the version file is received, the terminal 140 checks the version information and the version information of the version file received in step 640. In operation 645, the terminal 140 determines whether the URL of the version information is changed. That is, the terminal 140 determines whether the stored URL and the URL of the checked period setting information are the same. If the URL is changed, the terminal 140 returns to step 620 and requests a version file from the distributed update server corresponding to the changed URL.

반면에 URL이 변경되지 않았으면, 단말기(140)는 650단계에서 주기 설정 정보 중에서 주기에 대한 내용을 확인한다. 그리고 단말기(140)는 655단계에서 확인된 주기가 변경되었는지 판단한다. 이때 단말기(140)는 확인된 주기와 미리 저장되었던 주기가 동일한지 판단한다. 만약 주기가 변경되었으면, 단말기(140)는 660단계에서 현재 날짜를 기준으로 변경된 주기의 날짜 중에서 업데이트 여부를 확인할 날짜를 랜덤하게 선택한다. On the other hand, if the URL has not changed, the terminal 140 checks the contents of the cycle from the cycle setting information in step 650. In addition, the terminal 140 determines whether the cycle checked in step 655 is changed. At this time, the terminal 140 determines whether the checked period and the previously stored period are the same. If the period is changed, the terminal 140 randomly selects a date to check whether to update from among the dates of the changed period based on the current date in step 660.

업데이트 여부를 확인할 날짜가 선택되었거나, 655단계에서 주기가 변경되지 않았으면, 단말기(140)는 665단계에서 업데이트 여부를 확인할 날짜에서 단말기(140) 아이디를 기준으로 설정된 시간을 기준으로 한 시간 범위 내에서 분산 업데이트 서버에 접속할 시간을 랜덤하게 선택한다. 그리고 단말기(140)는 670단계에서 선택된 날짜, 시간 및 시간 범위에 따른 다음 업데이트 판단 주기를 확인하고, 확인된 업데이트 판단 주기를 저장한다.If the date to check whether the update is selected or the period is not changed in step 655, the terminal 140 is within the time range based on the time set based on the terminal 140 ID from the date to check whether the update in step 665. Randomly selects a time to connect to the distributed update server. In operation 670, the terminal 140 checks the next update determination cycle according to the selected date, time, and time range, and stores the checked update determination cycle.

다음으로 단말기(140)는 675단계에서 버전 파일에 포함된 버전 및 현재 소프트웨어의 버전을 비교하여 업데이트가 수행되어야하는지 판단한다. 만약 업데이트가 수행되어야한다면, 단말기(140)는 680단계에서 해당 업데이트 파일을 수신하고, 수신된 업데이트 파일을 이용하여 해당 소프트웨어를 업데이트한다. 그리고 단말기(140)는 업데이트된 소프트웨어를 저장한다. 이때 단말기(140)는 업데이트 관리 서버로 업데이트를 위한 통신을 수행한다. 그리고 업데이트 관리 서버로부터 어떤 버전의 업데이트 파일을 다운로드해야하는지에 대한 메시지가 수신되면, 단말기(140)는 해당 버전의 업데이트 파일을 분산 업데이트 서버에 요청한다. 그리고 분산 업데이트 서버로부터 업데이트 파일이 다운로드되면, 단말기(140)는 다운로드된 업데이트 파일을 이용하여 소프트웨어를 업데이트할 수 있다. Next, the terminal 140 determines whether the update should be performed by comparing the version included in the version file with the version of the current software in step 675. If the update is to be performed, the terminal 140 receives the update file in step 680 and updates the software using the received update file. The terminal 140 stores the updated software. At this time, the terminal 140 communicates with the update management server for the update. When a message regarding which version of the update file should be downloaded from the update management server is received, the terminal 140 requests the distributed update server for the version of the update file. When the update file is downloaded from the distributed update server, the terminal 140 may update the software by using the downloaded update file.

한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되지 않으며, 후술되는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다. While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments, but is capable of various modifications within the scope of the invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be determined by the scope of the appended claims, and equivalents thereof.

Claims (12)

통신 시스템의 데이터 업데이트 방법에 있어서,
업데이트 관리 서버는 소프트웨어를 업데이트하기 위한 업데이트 파일 및 상기 업데이트 파일을 설명하기 위한 버전 정보 및 주기 설정 정보를 포함하는 버전 파일을 분산 업데이트 서버로 분산하는 과정과,
단말기는 업데이트 여부를 판단하기 위한 업데이트 판단 주기에 상기 분산 업데이트 서버로부터 상기 버전 파일을 수신하는 과정과,
상기 단말기는 상기 버전 파일에 포함된 상기 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 결정하고, 해당 소프트웨어를 업데이트하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
In the data update method of the communication system,
The update management server distributes an update file for updating the software, a version file including version information and cycle setting information for describing the update file, to a distributed update server,
Receiving, by the terminal, the version file from the distributed update server in an update determination cycle for determining whether to update;
And determining, by the terminal, a next update determination cycle using the period setting information included in the version file, and updating the corresponding software.
제1항에 있어서, 상기 주기 설정 정보는
주기, 시간, 시간 범위 중 적어도 하나를 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
The method of claim 1, wherein the period setting information is
And at least one of a period, a time, and a time range.
제1항에 있어서, 상기 버전 파일을 수신하는 과정은
상기 수신된 버전 파일의 URL(Uniform Resource Locator)을 확인하는 과정과,
상기 URL과 저장된 URL이 동일하지 않으면, 상기 업데이트 관리 서버로 상기 버전 파일을 요청하는 과정과,
상기 업데이트 관리 서버로부터 상기 버전 파일을 수신하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
The method of claim 1, wherein the receiving of the version file comprises:
Checking a URL (Uniform Resource Locator) of the received version file;
Requesting the version file from the update management server if the URL and the stored URL are not the same;
Receiving the version file from the update management server.
제1항에 있어서, 상기 소프트웨어를 업데이트하는 과정은
상기 버전 정보와 저장된 버전 정보를 비교하는 과정과,
상기 버전 정보가 상기 저장된 버전 정보와 동일하지 않으면, 해당 소프트웨어의 업데이트를 수행하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
The method of claim 1, wherein the updating of the software is
Comparing the version information with the stored version information;
And if the version information is not the same as the stored version information, updating the corresponding software.
단말기의 데이터 업데이트 방법에 있어서,
업데이트 여부를 판단하기 위해 설정된 업데이트 판단 주기에 버전 파일을 수신하는 과정과,
상기 수신된 버전 파일의 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 설정하는 과정과,
상기 버전 파일의 버전 정보를 이용하여 해당 소프트웨어를 업데이트하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
In the data update method of the terminal,
Receiving a version file at an update determination cycle set to determine whether to update;
Setting a next update determination cycle using cycle setting information of the received version file;
And updating the corresponding software using the version information of the version file.
제5항에 있어서, 상기 주기 설정 정보는
주기, 시간, 시간 범위 중 적어도 하나를 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
The method of claim 5, wherein the period setting information is
And at least one of a period, a time, and a time range.
제5항에 있어서, 상기 버전 파일을 수신하는 과정은
상기 수신된 버전 파일의 URL(Uniform Resource Locator)을 확인하는 과정과,
상기 URL과 저장된 URL이 동일하지 않으면, 업데이트 관리 서버로 상기 버전 파일을 요청하는 과정과,
상기 업데이트 관리 서버로부터 상기 버전 파일을 수신하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
The method of claim 5, wherein the receiving of the version file comprises:
Checking a URL (Uniform Resource Locator) of the received version file;
If the URL and the stored URL are not the same, requesting the version file from an update management server;
Receiving the version file from the update management server.
제5항에 있어서, 상기 소프트웨어를 업데이트하는 과정은
상기 버전 정보와 저장된 버전 정보를 비교하는 과정과,
상기 버전 정보가 상기 저장된 버전 정보와 동일하지 않으면, 해당 소프트웨어의 업데이트를 수행하는 과정을 포함하는 것을 특징으로 하는 데이터 업데이트 방법.
6. The process of claim 5, wherein updating the software is
Comparing the version information with the stored version information;
And if the version information is not the same as the stored version information, updating the corresponding software.
업데이트 여부를 판단하기 위해 설정된 업데이트 판단 주기에 버전 파일을 수신하는 통신부와,
상기 통신부를 통해 수신된 상기 버전 파일의 주기 설정 정보를 이용하여 다음 업데이트 판단 주기를 설정하고, 상기 버전 파일의 버전 정보를 이용하여 해당 소프트웨어를 업데이트하는 제어부와,
상기 업데이트된 소프트웨어를 저장하는 저장부를 포함하는 것을 특징으로 하는 데이터 업데이트 단말기.
A communication unit which receives a version file at an update determination cycle set to determine whether to update;
A control unit for setting a next update determination cycle using period setting information of the version file received through the communication unit, and updating the corresponding software using version information of the version file;
And a storage unit for storing the updated software.
제9항에 있어서, 상기 주기 설정 정보는
주기, 시간, 시간 범위 중 적어도 하나를 포함하는 것을 특징으로 하는 데이터 업데이트 단말기.
The method of claim 9, wherein the period setting information is
And at least one of a period, a time, and a time range.
제9항에 있어서, 상기 제어부는
상기 수신된 버전 파일의 URL(Uniform Resource Locator)을 확인하고, 상기 URL과 저장된 URL이 동일하지 않으면, 상기 통신부를 제어하여 업데이트 관리 서버로 상기 버전 파일을 요청하여, 상기 업데이트 관리 서버로부터 상기 버전 파일을 수신하는 것을 특징으로 하는 데이터 업데이트 단말기.
10. The apparatus of claim 9, wherein the control unit
Check the Uniform Resource Locator (URL) of the received version file, and if the URL and the stored URL are not the same, control the communication unit to request the version file from the update management server, and the version file from the update management server. And a data update terminal.
제9항에 있어서, 상기 제어부는
상기 버전 정보와 저장된 버전 정보를 비교하고, 상기 버전 정보가 상기 저장된 버전 정보와 동일하지 않으면, 해당 소프트웨어의 업데이트를 수행하는 것을 특징으로 하는 데이터 업데이트 단말기.
10. The apparatus of claim 9, wherein the control unit
Comparing the version information with the stored version information, and if the version information is not the same as the stored version information, updating the corresponding software.
KR1020110035296A 2011-04-15 2011-04-15 Communication system and method for updating software thereof KR20120117504A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110035296A KR20120117504A (en) 2011-04-15 2011-04-15 Communication system and method for updating software thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110035296A KR20120117504A (en) 2011-04-15 2011-04-15 Communication system and method for updating software thereof

Publications (1)

Publication Number Publication Date
KR20120117504A true KR20120117504A (en) 2012-10-24

Family

ID=47285450

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110035296A KR20120117504A (en) 2011-04-15 2011-04-15 Communication system and method for updating software thereof

Country Status (1)

Country Link
KR (1) KR20120117504A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014073835A1 (en) * 2012-11-06 2014-05-15 주식회사 씨제이헬로비전 Method and system for providing application update service
WO2015100112A1 (en) * 2013-12-23 2015-07-02 Google Inc. Providing a software update to computing devices on the same network
KR20180080916A (en) * 2017-01-05 2018-07-13 주식회사 쏠리드 Data management apparatus and method of a distributed antenna system
KR102068121B1 (en) * 2019-03-11 2020-01-20 (주)케이디티콘트롤 A Method Of Firmware Management Using Simulation within Remote Device
WO2020085557A1 (en) * 2018-10-23 2020-04-30 주식회사 시옷 Firmware updating method using low-power wireless network

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014073835A1 (en) * 2012-11-06 2014-05-15 주식회사 씨제이헬로비전 Method and system for providing application update service
KR101446319B1 (en) * 2012-11-06 2014-10-01 주식회사 씨제이헬로비전 Application Update Service Method and System
WO2015100112A1 (en) * 2013-12-23 2015-07-02 Google Inc. Providing a software update to computing devices on the same network
US9830141B2 (en) 2013-12-23 2017-11-28 Google Llc Providing a software update to computing devices on the same network
KR20180080916A (en) * 2017-01-05 2018-07-13 주식회사 쏠리드 Data management apparatus and method of a distributed antenna system
WO2020085557A1 (en) * 2018-10-23 2020-04-30 주식회사 시옷 Firmware updating method using low-power wireless network
KR102068121B1 (en) * 2019-03-11 2020-01-20 (주)케이디티콘트롤 A Method Of Firmware Management Using Simulation within Remote Device

Similar Documents

Publication Publication Date Title
US9485134B2 (en) Managing configurations of system management agents in a distributed environment
CN106897086B (en) Method, device and system for upgrading robot operating system
CN107104814B (en) Software upgrading method and system
US20040098421A1 (en) Scheduling updates of electronic files
US8594653B2 (en) System and methods for remotely upgrading software applications
EP2876865B1 (en) Communication apparatus, communication system, communication method and recording medium
US20040098361A1 (en) Managing electronic file updates on client devices
CN103019757A (en) Method, device and system for synchronizing software among multiple clients
CN102081536A (en) Method for updating increment, and server
CN109905256A (en) A kind of firmware update and device
WO2007062294A2 (en) Managing software configuration of a wireless device
US20170085633A1 (en) Method and apparatus for saving cloud service traffic using peer-to-peer connection
US20220229654A1 (en) Enabling upgrading firmware of a target device
KR20120117504A (en) Communication system and method for updating software thereof
US8001095B2 (en) Method of updating a version of an application program
CN114489711A (en) Terminal upgrading method and device and storage medium
US20050289534A1 (en) Method for upgrading software version of mobile terminal using integrated difference files
KR20120101609A (en) Server, system and method for offering distributed service
US10567545B2 (en) Method and apparatus for sharing data quota
KR20180050001A (en) Firmware upgrade system and method for IoT
US9158527B2 (en) Upgrade system and method having adaptive changeable upgrade process
WO2016202047A1 (en) Application recommendation method, apparatus, server, and terminal
US20090037493A1 (en) Method and device for updating an object with copyright attribute
US7296084B2 (en) Data management system and method
CN113434233B (en) Interface jump method and device, storage medium and electronic device

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid