KR20110007378A - Software upgrade system and method - Google Patents

Software upgrade system and method Download PDF

Info

Publication number
KR20110007378A
KR20110007378A KR1020090064875A KR20090064875A KR20110007378A KR 20110007378 A KR20110007378 A KR 20110007378A KR 1020090064875 A KR1020090064875 A KR 1020090064875A KR 20090064875 A KR20090064875 A KR 20090064875A KR 20110007378 A KR20110007378 A KR 20110007378A
Authority
KR
South Korea
Prior art keywords
software
user terminal
upgrade
version
multicast
Prior art date
Application number
KR1020090064875A
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 KR1020090064875A priority Critical patent/KR20110007378A/en
Publication of KR20110007378A publication Critical patent/KR20110007378A/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W8/00Network data management
    • H04W8/22Processing or transfer of terminal data, e.g. status or physical capabilities
    • H04W8/24Transfer of terminal data
    • H04W8/245Transfer of terminal data from a network towards a terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

PURPOSE: A software upgrade system and a method thereof are provided to minimize a network load by for determining the provision and provision period of a multicast service for each software version when updating the software of a user terminal. CONSTITUTION: A terminal information collection unit(110) periodically receives from an agent installed at a user terminal the information on the software installed in the user terminal. Based on the collected information, an upgrade policy determiner(120) determines the provision and provision period of a download service according to the kinds and the version of a software for which an upgrade service is provided. A transmission mode determiner(130) determines the provision of the download service of multicast type or unicast type.

Description

소프트웨어 업그레이드 시스템 및 방법{SOFTWARE UPGRADE SYSTEM AND METHOD}Software upgrade system and method {SOFTWARE UPGRADE SYSTEM AND METHOD}

본 발명은 소프트웨어 업그레이드 시스템 및 방법에 관한 것으로서, 보다 상세하게는, 시스템의 부하 및 소프트웨어의 업그레이드 상황을 고려하여, 멀티캐스트 또는 유니캐스트 방식으로 소프트웨어 업그레이드할 수 있는 소프트웨어 업그레이드 시스템 및 방법에 관한 것이다.The present invention relates to a software upgrade system and method, and more particularly, to a software upgrade system and method capable of software upgrade in a multicast or unicast manner in consideration of the load of the system and the upgrade situation of the software.

통신 및 그에 따른 서비스의 발달로 많은 사람들이 다양한 서비스 단말을 사용하고 있으며, 서비스의 필요에 따라 단말의 교체없이 내부의 소프트웨어를 갱신함으로써 다양한 서비스를 사용하고자 하는 요구가 생겨났다.Many people are using various service terminals due to the development of communication and services, and according to the needs of the service, there is a demand to use various services by updating the internal software without replacing the terminals.

뿐만 아니라, 단말의 복잡도가 증가하였으며, 하드웨어적인 기능보다는 소프트웨어에 의해 구동되는 기능들이 많아지면서, 펌웨어 또는 설정 정보와 같은 소프트웨어의 중요성이 날로 커지고 있다.In addition, the complexity of the terminal has increased, and as more functions driven by software than hardware functions have increased, the importance of software such as firmware or configuration information is increasing day by day.

특히, 대규모 사업자들의 경우 다양한 단말을 가지고 있으며, 추가 비용의 투입 없이 효율적으로 서비스를 제공하기 위해서는 각 단말 별로 소프트웨어를 관리해야 할 필요가 있었다. 특히, 펌웨어의 경우 그 중요도에 따라 얼마나 단시간 에 업그레이드를 하느냐가 서비스의 성패를 좌우할 만큼 중요한 문제가 되고 있다. 하지만, 사용자 단말에 설치된 소프트웨어의 업그레이드를 제공할 경우에, 분포된 단말 수와 업그레이드 정책에 따라, 업그레이드 시스템에 많은 부하를 줄 수 있는 문제가 있었다. In particular, large operators have a variety of terminals, it was necessary to manage the software for each terminal in order to efficiently provide services without adding additional costs. In particular, in the case of firmware, how quickly to upgrade according to the importance of the firmware is an important problem that determines the success or failure of the service. However, when providing an upgrade of the software installed in the user terminal, there is a problem that can put a lot of load on the upgrade system, depending on the number of terminals and the upgrade policy.

일반적으로 소프트웨어의 업그레이드에는 멀티 캐스팅 방식과 유니 캐스팅 방식의 데이터 전송 방식이 이용된다. 멀티캐스트 전송 방식은 하나 이상의 송신자들이 특정한 하나 이상의 수신자들에게 데이터를 전송하는 방식이고, 유니캐스트 전송 방식은 하나의 송신자가 다른 하나의 수신자로 데이터를 전송하는 방식이며, 일반적인 인터넷 응용프로그램은 주로 유니캐스트 방식을 사용하고 있다.In general, multicasting and unicasting data transmission methods are used to upgrade software. Multicast transmission is a method in which one or more senders transmit data to a specific one or more receivers. Unicast transmission is a method in which one sender transmits data to another receiver. The cast method is used.

그러나, 그룹 통신을 위하여 다중 수신자들에게 동일한 데이터를 전송하고자 할 경우 유니캐스트 전송 방식을 이용한다면, 전송하고자 하는 데이터 패킷을 다수의 수신자에게 각각 여러 번 전송해야 하며, 이러한 동일한 패킷의 중복전송으로 인해 네트워크의 효율이 저하되는 문제가 있었다. 또한 수신자 수가 증가할 경우 이러한 문제점은 더 커지게 되었다.However, if the unicast transmission method is used to transmit the same data to multiple receivers for group communication, the data packet to be transmitted must be transmitted to multiple recipients each time several times. There was a problem that the efficiency of the network is reduced. Also, as the number of recipients increases, this problem becomes bigger.

한편, 멀티캐스트 전송이 지원되면 송신자는 여러 수신자에게 한 번에 메시지가 전송되도록 하여, 데이터의 중복전송으로 인한 네트워크 자원의 낭비를 줄일 수는 있었지만, 다양한 종류 및 버전의 소프트웨어에 대하여 모두 멀티 캐스트 전송 방식으로 모든 단말에게 업그레이드를 제공할 수는 없었다.On the other hand, if multicast transmission is supported, the sender can send a message to multiple receivers at once, thereby reducing the waste of network resources due to duplicate transmission of data, but multicast transmission for all kinds and versions of software. The upgrade could not be provided to all terminals in a manner.

따라서, 멀티 캐스트 전송 방식과 유니 캐스트 전송 방식을 혼용하여, 보다 효율적으로 단말에게 소프트웨어의 업그레이드를 제공하는 기술이 강하게 요구되고 있다.Therefore, there is a strong demand for a technique that uses a multicast transmission method and a unicast transmission method to provide a more efficient software upgrade to the terminal.

본 발명의 일부 실시예는 소프트웨어의 버전 별로 멀티 캐스팅 서비스의 제공 여부 및 제공 기간을 결정할 수 있는 소프트웨어 업그레이드 시스템 및 방법을 제공한다.Some embodiments of the present invention provide a software upgrade system and method for determining whether to provide a multicasting service and a providing period for each software version.

또한, 본 발명의 일 실시예는 소프트웨어 업그레이드의 성공 여부를 반영하여 소프트웨어의 업그레이드 제공 방식을 결정할 수 있는 소프트웨어 업그레이드 시스템 및 방법을 제공한다.In addition, an embodiment of the present invention provides a software upgrade system and method that can determine the upgrade providing method of the software reflecting the success of the software upgrade.

또한, 본 발명의 일 실시예는 사용자 단말의 소프트웨어 업그레이드 회수 정보에 기초하여, 다양한 버전의 소프트웨어를 효율적으로 제공할 수 있는 소프트웨어 업그레이드 시스템 및 방법을 제공한다.In addition, an embodiment of the present invention provides a software upgrade system and method that can efficiently provide various versions of software based on the number of software upgrades of a user terminal.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면은 다수의 사용자 단말에 설치된 에이전트에 의해 상기 사용자 단말 및 상기 사용자 단말에 설치된 소프트웨어에 관한 정보를 주기적으로 수신하는 단말 정보 수집부, 상기 수집된 정보에 기초하여, 업그레이드 서비스가 제공되는 소프트웨어의 버전 및 종류 별로, 멀티 캐스트 방식의 다운로드 서비스 제공 여부 및 제공 기간을 결정하는 업그레이드 정책 결정부, 상기 업그레이드 정책부의 결정에 기초하여 결정된 버전의 소프트웨어를 상기 사용자 단말에게 상기 결정된 제공 기간에 멀티 캐스트 방식으로 제공하는 것을 결정하고, 상기 멀티 캐스트 방식의 전송 결과 및 상기 수집된 정보에 기초하여, 유니 캐스트 방식으로 상기 결정된 버전의 소프트웨어를 제공하는 것을 결정하는 전송 모드 결정부 및 상기 결정된 전송 방식에 따라, 상기 결정된 버전의 소프트웨어를 상기 사용자 단말로 제공하는 제어부를 포함하는 소프트웨어 업그레이드 시스템을 제공할 수 있다.As a technical means for achieving the above-described technical problem, a first aspect of the present invention is a terminal information collection unit for periodically receiving information about the user terminal and the software installed on the user terminal by an agent installed in a plurality of user terminals An upgrade policy determination unit that determines whether or not to provide a multicast download service based on the collected information and the version and type of software provided with the upgrade service, and a version determined based on the determination of the upgrade policy unit. Determining to provide the user terminal with the multicast method to the user terminal in the determined provision period, and providing the determined version of the software in a unicast manner based on the transmission result of the multicast method and the collected information. Thing According to the transmission mode determination unit for determining and the determined transmission scheme, it may provide a software upgrade system including a control unit for providing the determined version of the software to the user terminal.

또한, 본 발명의 제 2 측면은 다수의 사용자 단말에 설치된 에이전트에 의해 상기 사용자 단말 및 사용자 단말에 설치된 소프트웨어에 관한 정보를 주기적으로 수신하는 단계, 상기 수신한 정보에 기초하여, 업그레이드 서비스가 제공되는 소프트웨어의 버전 및 종류 별로, 멀티 캐스트 방식의 다운로드 서비스 제공 여부 및 제공 기간을 결정하는 단계, 상기 결정에 기초하여, 상기 사용자 단말에게 제공할 소프트웨어의 버전을 판단하고, 상기 판단된 버전의 소프트웨어를 상기 사용자 단말에게 제공할 소프트웨어 전송 방식을 결정하는 단계, 상기 결정된 전송 방식으로 상기 판단된 버전의 소프트웨어를 상기 사용자 단말에게 제공하는 단계, 상기 사용자 단말이 상기 소프트웨어의 업그레이드를 성공하였는지 여부를 판단하는 단계 및 상기 사용자 단말이 상기 소프트웨어의 업그레이드를 실패한 경우에 유니 캐스트 전송 방식으로 상기 사용자 단말에게 상기 소프트웨어를 제공하는 단계를 포함하는 소프트웨어 업그레이드 방법을 제공할 수 있다.In addition, the second aspect of the present invention is the step of periodically receiving information about the user terminal and the software installed on the user terminal by the agent installed in a plurality of user terminals, based on the received information, the upgrade service is provided Determining whether or not to provide a multicast download service and providing period for each version and type of software, Based on the determination, determine the version of the software to be provided to the user terminal, and the software of the determined version Determining a software transmission method to be provided to a user terminal, providing the determined version of the software to the user terminal in the determined transmission method, determining whether the user terminal has successfully upgraded the software; The user end In this case, the upgrade is not successful unicast transmission scheme of the software may provide a software upgrade method comprising the step of providing the software to the user terminal.

전술한 본 발명의 과제 해결 수단에 의하면, 소프트웨어의 버전 별로 멀티 캐스팅 서비스의 제공 여부 및 기간을 결정함으로써, 사용자 단말에게 소프트웨어의 업그레이드 제공 시, 네트워크의 부하 낭비를 최소화한다.According to the above-described problem solving means of the present invention, by determining whether or not to provide a multi-casting service for each version of the software, minimize the waste of the network when providing the upgrade of the software to the user terminal.

또한, 전술한 본 발명의 과제 해결 수단에 의하면, 사용자 단말이 소프트웨어 업그레이드를 실패할 경우에, 보다 효과적으로 사용자 단말에게 소프트웨어의 업그레이드를 다시 제공한다.In addition, according to the above-described problem solving means of the present invention, when the user terminal fails to upgrade the software, it provides the upgrade of the software to the user terminal more effectively.

또한, 본 발명의 다른 과제 해결 수단 중 하나에 의하면, 최신 버전의 소프트웨어에 버그 또는 오류가 있는 경우에는, 이전 버전의 소프트웨어를 신속하게 사용자 단말에게 제공한다.In addition, according to one of the other problem solving means of the present invention, when there is a bug or an error in the latest version of the software, the previous version of the software is quickly provided to the user terminal.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. DETAILED DESCRIPTION Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those skilled in the art may easily implement the present invention. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and like reference numerals designate like parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Throughout the specification, when a part is "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element in between. . In addition, when a part is said to "include" a certain component, which means that it may further include other components, except to exclude other components unless otherwise stated.

이하 첨부된 도면을 참고하여 본 발명을 상세히 설명하기로 한다.Hereinafter, the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 시스템의 전체 구성도이다.1 is an overall configuration diagram of a software upgrade system according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 시스템은 소프트웨어 업그레이드 관리 서버(100), 멀티 캐스트 서버(200), 유니 캐스트 서버(300), 사용자 단말(400) 및 네트워크(500)를 포함한다.As shown in FIG. 1, the software upgrade system according to an embodiment of the present invention includes a software upgrade management server 100, a multicast server 200, a unicast server 300, a user terminal 400, and a network ( 500).

소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)로부터의 소프트웨어 업그레이드 요청에 대응하여, 업그레이드할 버전의 소프트웨어를 사용자 단말(400)로 제공한다.The software upgrade management server 100 provides the user terminal 400 with a version of software to be upgraded in response to a software upgrade request from the user terminal 400.

소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)로부터 단말 ID, 소프트웨어의 종류 및 소프트웨어 버전 정보를 수신하며, 업그레이드 할 버전의 소프트웨어를 사용자 단말(400)로 멀티 캐스트 방식으로 전송할지, 유니 캐스트 방식으로 전송할지 여부를 판단한다.The software upgrade management server 100 receives the terminal ID, the type of software and the software version information from the user terminal 400, and transmits the version of the software to be upgraded to the user terminal 400 in a multicast manner, unicast method Determine whether or not to transmit.

소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)에 설치된 소프트웨어의 버전을 주기적으로 확인하고 자동으로 소프트웨어의 업그레이드를 제공할 수도 있고, 사용자 단말(400)로부터의 요청에 대응하여, 요청받은 버전의 소프트웨어를 사용자 단말(400)로 제공할 수도 있다.The software upgrade management server 100 may periodically check the version of the software installed in the user terminal 400 and automatically provide an upgrade of the software, or in response to a request from the user terminal 400, Software may be provided to the user terminal 400.

또한, 소프트웨어 업그레이드 관리 서버(100)는 소프트웨어의 버전 별로 다운로드 제공 방식을 각각 설정할 수 있으며, 이전 버전의 소프트웨어라고 하더라도 사용자 단말(400)로부터의 다운로드 요청이 많은 경우에는 이를 반영하여, 해당 버전의 소프트웨어를 멀티 캐스트 방식으로 사용자 단말(400)에게 제공하도록 할 수 있다.In addition, the software upgrade management server 100 may set a download providing method for each version of the software, and even if the previous version of the software, if there are many download requests from the user terminal 400, the corresponding version of the software Can be provided to the user terminal 400 in a multicast manner.

또한, 소프트웨어 업그레이드 관리 서버(100)는 소프트웨어의 다운로드 완료 여부 및 정상 설치 여부를 사용자 단말(400)로부터 수신하고, 사용자 단말(400) 별로 소프트웨어의 버전을 관리하고 소프트웨어의 정상 설치 여부를 확인할 수 있다.In addition, the software upgrade management server 100 may receive from the user terminal 400 whether the download of the software is complete and whether it is normally installed, and may manage the version of the software for each user terminal 400 and check whether the software is normally installed. .

멀티 캐스트 서버(200)는 소프트웨어 업그레이드 관리 서버(100)로부터 업그레이드할 소프트웨어를 수신하고, 수신한 소프트웨어를 멀티 캐스트 방식으로 사용자 단말(400)에게 제공한다.The multicast server 200 receives software to be upgraded from the software upgrade management server 100 and provides the received software to the user terminal 400 in a multicast manner.

멀티 캐스트 스트림에 대한 기본 정보(스트림 IP, 스트림 Port)는 소프트웨어 업그레이드 관리 서버(100)에 의해, 업그레이드할 소프트웨어 및 사용자 단말(400) 별로 미리 설정될 수 있다. 또한, 멀티 캐스트 다운로드 서버 주소 및 포트 값은, 소프트웨어 업그레이드 관리 서버(100)에 의해, 사용자 단말(400)로 미리 제공될 수 있다.Basic information (stream IP, stream port) for the multicast stream may be preset by the software upgrade management server 100 for each software and user terminal 400 to be upgraded. In addition, the multicast download server address and port value may be provided to the user terminal 400 by the software upgrade management server 100 in advance.

유니 캐스트 서버(300)는 소프트웨어 업그레이드 관리 서버(100)로부터 업그레이드할 소프트웨어를 수신하고, 수신한 소프트웨어를 유니 캐스트 방식으로 사용자 단말(400)에게 제공한다.The unicast server 300 receives the software to be upgraded from the software upgrade management server 100 and provides the received software to the user terminal 400 in a unicast manner.

유니 캐스트 스트림에 대한 기본 정보는 소프트웨어 업그레이드 관리 서버(100)에 의해, 업그레이드할 소프트웨어 및 사용자 단말(400) 별로 미리 설정될 수 있다. 또한, 유니 캐스트 다운로드 서버 주소 및 포트 값, 유니 캐스트 다운로드 서버 로그인 ID 및 패스워드는, 소프트웨어 업그레이드 관리 서버(100)에 의해, 사용자 단말(400)로 미리 제공될 수 있다.Basic information on the unicast stream may be preset by the software upgrade management server 100 for each software and user terminal 400 to be upgraded. In addition, the unicast download server address and port value, the unicast download server login ID and password may be provided to the user terminal 400 in advance by the software upgrade management server 100.

사용자 단말(400)은 소프트웨어 업그레이드 관리 서버(100)로 단말에 설치된 소프트웨어의 업그레이드를 요청하고, 상기 요청에 대응하여 멀티 캐스트 또는 유니 캐스트 방식으로 해당 버전의 소프트웨어를 전송받는다.The user terminal 400 requests the software upgrade management server 100 to upgrade the software installed in the terminal, and receives the corresponding version of the software in a multicast or unicast manner in response to the request.

사용자 단말(400)은 단말 ID, 소프트웨어의 종류 및 버전 등의 정보를 소프트웨어 업그레이드 관리 서버(100)에게 주기적으로 제공할 수 있다. 또한, 사용자 단말(400)은 전송받은 소프트웨어가 성공적으로 설치되었는지 여부에 관한 정보를 소프트웨어 업그레이드 관리 서버(100)로 제공할 수 있다.The user terminal 400 may periodically provide information, such as a terminal ID, a type and version of software, to the software upgrade management server 100. In addition, the user terminal 400 may provide the software upgrade management server 100 with information regarding whether the received software has been successfully installed.

소프트웨어 업그레이드 관리 서버(100)로 제공된 정보는 소프트웨어 업그레이드 관리 서버(100)가 사용자 단말(400)에게 제공할 소프트웨어의 버전을 판단하고, 사용자 단말(400)의 다운로드 전송 방식을 결정하는데 이용될 수 있다.The information provided to the software upgrade management server 100 may be used by the software upgrade management server 100 to determine a version of software to be provided to the user terminal 400 and to determine a download transmission method of the user terminal 400. .

사용자 단말(400)은 WiFi, CDMA, WCDMA, WiBro, HSDPA등의 방식을 이용하여 네트워크에 접속할 수 있는 개인 휴대 단말, 네트워크에 접속이 가능한 셋톱박스 및 고정형 단말을 포함하며, 주기적으로 소프트웨어 업그레이드 관리 서버(100)에 사용자 단말(400)의 현황을 전송할 수 있는 에이전트를 탑재할 수 있다.The user terminal 400 includes a personal portable terminal that can be connected to the network using a method such as WiFi, CDMA, WCDMA, WiBro, HSDPA, a set-top box and a fixed terminal that can be connected to the network, and the software upgrade management server periodically. An agent capable of transmitting the current status of the user terminal 400 may be mounted in the 100.

네트워크(500)는 전용선, LAN, QAN, VAN, 인트라넷, 사설 전화망, 공중전화망, PSTN 망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함한다.The network 500 includes a dedicated line, a LAN, a QAN, a VAN, an intranet, a private telephone network, a public telephone network, a PSTN network, and a combination thereof, so that each network component shown in FIG. 1 can communicate with each other smoothly. It is a comprehensive data communication network, and includes wired internet, wireless internet and mobile wireless communication network.

이하, 도 2를 참조하여 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100)의 세부 구성에 대하여 설명하기로 한다.Hereinafter, a detailed configuration of the software upgrade management server 100 according to an embodiment of the present invention will be described with reference to FIG. 2.

도 2는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100) 의 세부 구성도이다.2 is a detailed configuration diagram of the software upgrade management server 100 according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100)는 단말 정보 수집부(110), 업그레이드 정책 결정부(120), 전송 모드 결정부(130), 업그레이드 DB(140), 제어부(150) 및 송수신부(160)를 포함한다.As shown in Figure 2, the software upgrade management server 100 according to an embodiment of the present invention is a terminal information collecting unit 110, upgrade policy determination unit 120, transmission mode determination unit 130, upgrade DB 140, a controller 150, and a transceiver 160.

단말 정보 수집부(110)는 소프트웨어의 업그레이드에 필요한 정보로서, 사용자 단말(400)과 관련된 정보를 수신한다. 단말 정보 수집부(110)는 사용자 단말(400)의 ID, 사용자 단말(400)의 종류, 사용자 단말(400)에 설치된 소프트웨어의 종류 및 버전 등의 정보를 수신할 수 있다.The terminal information collecting unit 110 receives information related to the user terminal 400 as information necessary for upgrading the software. The terminal information collection unit 110 may receive information such as an ID of the user terminal 400, a type of the user terminal 400, a type and version of software installed in the user terminal 400, and the like.

업그레이드 정책 결정부(120)는 소프트웨어의 버전 별로 멀티 캐스팅 다운로드 서비스를 제공할지 여부를 결정한다.The upgrade policy determination unit 120 determines whether to provide a multicast download service for each version of the software.

업그레이드 정책 결정부(120)는 소프트웨어의 버전 정보 및 다운로드 수에 기초하여 해당 버전의 소프트웨어를 멀티 캐스트 방식으로 제공할지 여부를 결정할 수 있다.The upgrade policy determiner 120 may determine whether to provide the version of the software in a multicast manner based on the version information and the number of downloads of the software.

업그레이드 정책 결정부(120)는, 가장 최신 버전의 소프트웨어를 멀티 캐스트 방식으로 제공하도록 결정하거나, 최신 버전의 소프트웨어가 아니더라도 사용자의 다운로드 수가 많은 소프트웨어를 멀티 캐스트 방식으로 제공하도록 결정할 수 있다.The upgrade policy determination unit 120 may determine to provide the most recent version of the software in a multicast manner, or may decide to provide the software having a large number of downloads by the user in a multicast manner even if the latest version of the software is not.

따라서, 최신 버전의 소프트웨어에 버그 또는 오류가 있어, 최신 버전으로 소프트웨어를 업그레이드한 사용자 단말(400)들이 한꺼번에 이전 버전의 소프트웨 어를 다운로드하는 경우에, 다운로드 수가 증가한 이전 버전의 소프트웨어에 대하여 사용자 단말(400)가 멀티 캐스트 방식으로 다운로드를 할 수 있도록 결정할 수 있다.Therefore, when the user terminal 400 upgrades the software to the latest version because there is a bug or an error in the latest version of the software, and the user terminal 400 downloads the previous version of the software at a time, the user terminal ( 400 may determine to download in a multicast manner.

또한, 업그레이드 정책 결정부(120)는, 특정 버전의 소프트웨어에 대해 멀티 캐스트 방식으로 다운로드를 제공할 기간을 결정할 수도 있다.In addition, the upgrade policy determination unit 120 may determine a period for providing a download in a multicast manner for a specific version of software.

전송 모드 결정부(130)는 사용자 단말(400)에게 소프트웨어의 업그레이드를 멀티 캐스트 방식으로 제공할지, 유니 캐스트 방식으로 제공할지 여부를 결정한다.The transmission mode determination unit 130 determines whether to provide the user terminal 400 with software upgrade in a multicast or unicast manner.

전송 모드 결정부(130)는 사용자 단말(400)로부터 수신한 소프트웨어의 버전을 확인하고, 업그레이드할 버전의 소프트웨어를 확인할 수 있으며, 업그레이드할 버전의 소프트웨어가 멀티 캐스트 방식으로 다운로드를 제공할 경우에는 소프트웨어 업그레이드를 멀티 캐스트 방식으로 제공하고, 그렇지 않을 경우에는 유니 캐스트 방식으로 제공하도록 전송 모드를 결정할 수 있다.The transmission mode determination unit 130 may check the version of the software received from the user terminal 400 and may check the version of the software to be upgraded. When the version of the software to be upgraded provides a download in a multicast manner, the software may be used. The transmission mode may be determined to provide the upgrade in a multicast manner, otherwise, in a unicast manner.

또한, 전송 모드 결정부(130)는 사용자 단말(400)로부터 특정 버전의 소프트웨어 업그레이드를 요청받고, 요청받은 버전의 소프트웨어가 멀티 캐스트 방식으로 다운로드를 제공하는지 여부를 확인하고 전송 모드를 결정할 수 있다.In addition, the transmission mode determination unit 130 may be requested to upgrade the specific version of the software from the user terminal 400, check whether the requested version of the software provides a download in a multicast manner and determine the transmission mode.

또한, 전송 모드 결정부(130)는 사용자 단말(400)이 멀티 캐스트 방식의 소프트웨어 업그레이드를 성공하였는지 여부(정상 설치 여부)를 확인하고, 실패한 경우에는 해당 사용자 단말(400)로 유니 캐스트 방식의 소프트웨어 업그레이드를 제공하도록 전송 모드를 결정할 수 있다.In addition, the transmission mode determination unit 130 checks whether the user terminal 400 has succeeded in multicast software upgrade (normal installation or not), and in case of failure, transmits the unicast software to the user terminal 400. The transmission mode can be determined to provide an upgrade.

따라서, 소프트웨어의 업그레이드를 실패한 사용자 단말(400)에 대하여는 보 다 확실하게 소프트웨어의 업그레이드를 제공할 수 있게 된다.Therefore, the user terminal 400 that fails to upgrade the software can be more surely provided with the software upgrade.

업그레이드 DB(140)는 소프트웨어의 업그레이드와 관련된 각종 정보를 저장한다.The upgrade DB 140 stores various information related to the upgrade of the software.

업그레이드 DB(140)는 사용자 단말(400)의 ID, 사용자 단말(400)의 종류, 사용자 단말(400)에 설치된 소프트웨어의 종류 및 버전 등의 사용자 단말(400) 관련 정보, 소프트웨어의 버전 별로 멀티 캐스트 방식의 다운로드를 제공하는지 여부에 관한 정보, 소프트웨어 버전 별 다운로드 수에 관한 정보 등을 저장할 수 있다.The upgrade DB 140 multicasts the user terminal 400 related information such as the ID of the user terminal 400, the type of the user terminal 400, the type and version of the software installed in the user terminal 400, and the software version. Information on whether or not to provide a download method, information about the number of downloads by software version, and the like can be stored.

제어부(150) 소프트웨어 업그레이드 관리 서버(100) 전체를 제어하며, 소프트웨어 업그레이드 관리 서버(100)가 사용자 단말(400)에 제공할 소프트웨어의 버전 및 업그레이드 수 등에 기초하여, 사용자 단말(400)에 설치된 소프트웨어의 업그레이드를 어떤 전송 방식으로 제공할 지를 결정하도록 단말 정보 수집부(110), 업그레이드 정책 결정부(120), 전송 모드 결정부(130)를 제어한다.The controller 150 controls the entire software upgrade management server 100, and is installed on the user terminal 400 based on the version and the number of upgrades of the software to be provided to the user terminal 400 by the software upgrade management server 100. The terminal information collecting unit 110, the upgrade policy determination unit 120, and the transmission mode determination unit 130 are controlled to determine in which transmission method the upgrade is provided.

또한, 제어부(150)는 멀티 캐스트 서버(200) 및 유니 캐스트 서버(300)에게 업그레이드할 소프트웨어를 제공하고, 멀티 캐스트 서버(200) 및 유니 캐스트 서버(300)가 제공받은 소프트웨어를 사용자 단말(400)에게 전송하도록 할 수 있다. 제어부(150)는 멀티캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 주소 및 포트를 설정할 수 있으며, 상기 다운로드 서버 주소 및 포트는 사용자 단말(400)의 모델 및 사용자 단말(400)에게 제공되는 서비스의 종류, 소프트웨어의 종류 및 버전에 따라 각각 다르게 설정될 수 있다.In addition, the controller 150 provides the multicast server 200 and the unicast server 300 with software to upgrade, and the user terminal 400 provides the software provided by the multicast server 200 and the unicast server 300. ) Can be sent. The controller 150 may set a multicast download server address and port, a unicast download server address, and a port, and the download server address and port may correspond to a model of the user terminal 400 and a service provided to the user terminal 400. Each may be set differently according to the type, software type and version.

또한, 제어부(150)는 사용자 단말(400)에 멀티 캐스트 다운로드 서버 주소 및 포트, 유니 캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 로그인 ID 및 패스워드를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드할 수 있도록 할 수 있다.In addition, the controller 150 provides the user terminal 400 with a multicast download server address and port, a unicast download server address and port, a unicast download server login ID and password, and the software to be upgraded by the user terminal 400. You can make it available for download.

송수신부(160)는 멀티 캐스트 서버(200), 유니 캐스트 서버(300) 및 사용자 단말(400)과 소프트웨어 업그레이드에 필요한 각종 정보를 송수신한다.The transceiver 160 transmits and receives various information necessary for software upgrade with the multicast server 200, the unicast server 300, and the user terminal 400.

이하, 도 3을 참조하여 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블에 대하여 설명하기로 한다.Hereinafter, the upgrade management table stored in the upgrade DB 140 according to an embodiment of the present invention will be described with reference to FIG. 3.

도 3은 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블의 일례이다.3 is an example of an upgrade management table stored in the upgrade DB 140 according to an embodiment of the present invention.

도 3에 도시된 바와 같이, 본 발명의 일 실시예에 따른 업그레이드 관리 테이블은 소프트웨어명 필드(10), 버전 필드(20), 멀티 캐스팅 제공 여부 필드(30), 멀티 캐스팅 제공 기간 필드(40) 및 다운로드 수 필드(50)를 포함한다.As shown in FIG. 3, the upgrade management table according to an embodiment of the present invention includes a software name field 10, a version field 20, a multicasting availability field 30, and a multicasting providing period field 40. And a download count field 50.

소프트웨어명 필드(10) 및 버전 필드(20)에는 소프트웨어 업그레이드 서비스를 제공하는 소프트웨어명 및 버전 값이 기록되며, 멀티 캐스팅 제공 여부 필드(30) 및 멀티 캐스팅 제공 기간 필드(40)에는 소프트웨어의 버전 별로 멀티 캐스트 방식의 다운로드를 제공하는지 여부 및 그 기간이 기록된다.In the software name field 10 and the version field 20, a software name and a version value for providing a software upgrade service are recorded. The multicasting availability field 30 and the multicasting duration field 40 are provided for each software version. Whether and how long the multicast download is provided is recorded.

또한, 다운로드 수 필드(50)에는 소프트웨어의 버전 별로 사용자 단말(400)가 업그레이드한 회수가 기록된다. 상기 다운로드 수는 해당 버전의 소프트웨어를 사용자 단말(400)들이 다운로드한 누적 회수로서, 기 설정된 기간(예를 들어, 멀티 캐스팅 서비스가 종료된 이후부터의 기간 또는 특정일 이후부터의 기간)동안 다운 로드한 회수일 수 있다.In addition, the number of times that the user terminal 400 is upgraded is recorded in the download count field 50 for each software version. The number of downloads is a cumulative number of times that the user terminal 400 has downloaded the corresponding version of the software, and is downloaded for a predetermined period (for example, a period after the multicasting service is terminated or a period after a specific date). It may be one recovery.

따라서, 특정 버전에 대한 멀티 캐스팅 다운로드 서비스 기간이 경과한 이후에도, 해당 버전의 소프트웨어 다운로드 수가 증가할 경우에는 이를 반영하여, 해당 버전의 소프트웨어에 대하여 멀티 캐스팅 서비스를 제공하도록 할 수 있게 된다. 나아가, 새로운 버전의 소프트웨어에 버그 또는 오류가 있어 사용자 단말(400)들이 이전 버전의 소프트웨어를 다운로드하는 회수가 증가할 경우, 이를 실시간으로 확인하여, 이전 버전의 소프트웨어를 멀티 캐스팅 방식으로 사용자 단말(400)에게 제공할 수 있다.Therefore, even after the multicast download service period for a specific version has elapsed, if the number of software downloads of the corresponding version increases, the multicasting service may be provided for the corresponding version of the software. Furthermore, when the number of times that the user terminal 400 downloads the previous version of the software increases due to a bug or an error in the new version of the software, the user terminal 400 is checked in real time and the previous version of the software is multicasted. ) Can be provided.

예를 들어, 소프트웨어 SW #2에 대하여, 3.00 버전의 소프트웨어의 업그레이드가 2009. 5. 1.부터 2009. 5. 30.까지 멀티캐스팅 방식으로 제공하기로 결정되었는데, 업그레이드 도중에 3.00 버전의 소프트웨어에 버그 등의 문제가 있음이 밝혀져, 사용자 단말(400)이 2.00버전의 소프트웨어를 다운로드하는 회수가 증가하였다고 하면(52), 업그레이드 정책 결정부(120)는 이를 반영하여 버전 2.00의 소프트웨어에 대하여 2009.5.15.부터 2009.6.15까지 멀티 캐스트 방식으로 다운로드를 제공할 것을 결정할 수가 있다(32, 42).For example, for software SW # 2, an upgrade of version 3.00 of the software was decided to provide multicasting from May 1, 2009 through May 30, 2009. When the number of times that the user terminal 400 downloads the 2.00 version of the software has been increased (52), the upgrade policy decision unit 120 reflects this, and the software of the version 2.00 has been applied for 2009.5.15. It is possible to decide to provide downloads in a multicast fashion from 2009.6.15 (32, 42).

이하, 도 4를 참조하여 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 전송 방식을 결정하는 방법에 대하여 설명하기로 한다.Hereinafter, a method of determining a software upgrade transmission method according to an embodiment of the present invention will be described with reference to FIG. 4.

도 4는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 전송 방식을 결정하는 방법의 세부 흐름도이다.4 is a detailed flowchart of a method of determining a software upgrade transmission method according to an embodiment of the present invention.

먼저, 사용자 단말(400)로 업그레이드가 제공되는 소프트웨어를 버전 별로 확인하고(단계 S400), 각 버전 별로 멀티 캐스팅 서비스의 지원 여부를 결정한다(단계 S400). 소프트웨어 업그레이드 관리 서버(100)는 신규로 등록되는 최신 버전의 소프트웨어에 관한 정보를 반영하여 멀티 캐스팅 서비스 지원 여부를 결정할 수 있으며, 멀티 캐스팅 서비스를 지원하는 기간을 결정할 수 있다. 소프트웨어 업그레이드 관리 서버(100)는 최신 버전의 소프트웨어가 등록될 경우에, 해당 버전의 소프트웨어의 업그레이드를 소정 기간동안 멀티 캐스트 방식으로 제공하도록 설정할 수 있으며, 소프트웨어 버전 별 멀티 캐스팅 지원 여부 및 기간은 네트워크에 걸리는 부하 및 서비스 정책 등에 기초하여 다양한 알고리즘으로 설정될 수 있다.First, the software provided with the upgrade to the user terminal 400 is checked for each version (step S400), and it is determined whether to support the multicasting service for each version (step S400). The software upgrade management server 100 may determine whether to support the multicasting service by reflecting information about the latest version of the newly registered software, and determine a period of time during which the multicasting service is supported. When the latest version of the software is registered, the software upgrade management server 100 may be configured to provide an upgrade of the corresponding version of the software in a multicast manner for a predetermined period. Various algorithms may be set based on load and service policy required.

이후, 각 소프트웨어가 다운로드(업그레이드)되는 회수를 버전 별로 모니터링 하며(단계 S404), 소프트웨어 다운로드 회수가 기 설정된 회수 이상으로 증가하는 버전이 있는지 판단한다(단계 S406).Thereafter, the number of times each software is downloaded (upgraded) is monitored for each version (step S404), and it is determined whether there is a version in which the number of software downloads increases more than a preset number (step S406).

상기 판단 결과(단계 S406), 다운로드 회수가 증가한 버전이 존재하는 경우에는 해당 버전의 소프트웨어 업그레이드를 멀티 캐스트 방식으로 제공하도록 설정한다(단계 S402).As a result of the determination (step S406), if a version having an increased download count exists, the software upgrade of the version is set to be provided in a multicast manner (step S402).

이하, 도 5를 참조하여 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 제공 방법에 대하여 설명하기로 한다.Hereinafter, a method for providing a software upgrade according to an embodiment of the present invention will be described with reference to FIG. 5.

도 5는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 제공 방법의 세부 흐름도이다.5 is a detailed flowchart of a software upgrade providing method according to an embodiment of the present invention.

먼저, 업그레이드를 제공할 소프트웨어의 버전을 판단한다(단계 S500). 소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)에 설치된 소프트웨어의 버 전을 확인하고, 사용자 단말(400)에게 어떤 버전의 소프트웨어를 제공할 지를 판단할 수 있다. 또한, 소프트웨어 업그레이드 관리 서버(100)는 업그레이드 할 소프트웨어 버전을 사용자 단말(400)로부터 요청받고 요청받은 버전의 소프트웨어를 사용자 단말(400)로 제공할 수도 있다.First, it is determined the version of the software to provide the upgrade (step S500). The software upgrade management server 100 may check the version of the software installed in the user terminal 400 and determine which version of the software to provide to the user terminal 400. In addition, the software upgrade management server 100 may receive a request for the software version to be upgraded from the user terminal 400 and provide the requested version of the software to the user terminal 400.

이후, 업그레이드를 제공할 버전의 소프트웨어에 대하여 멀티 캐스팅 방식의 전송 서비스가 제공되는지 여부를 판단한다(단계 S502).Thereafter, it is determined whether a multicasting transmission service is provided for the version of software to be upgraded (step S502).

상기 판단 결과(단계 S502), 해당 버전의 소프트웨어에 대하여 멀티 캐스팅 방식의 전송 서비스가 제공되는 경우에는 해당 버전의 소프트웨어를 멀티 캐스팅 방식으로 사용자 단말(400)로 제공한다(단계 S504). As a result of the determination (step S502), when the multicasting transmission service is provided for the corresponding version of the software, the corresponding version of the software is provided to the user terminal 400 by the multicasting method (step S504).

소프트웨어 업그레이드 관리 서버(100)는 업그레이드를 제공할 소프트웨어에 대한 멀티캐스트 다운로드 서버 주소 및 포트 설정할 수 있으며, 사용자 단말(400)에 멀티 캐스트 다운로드 서버 주소 및 포트를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드할 수 있도록 할 수 있다.The software upgrade management server 100 may set the multicast download server address and port for the software to provide the upgrade, and provide the multicast download server address and the port to the user terminal 400 to upgrade the user terminal 400. You can make the software available for download.

이후, 사용자 단말(400)로부터 소프트웨어의 업그레이드를 성공하였는지 여부를 수신하고(단계 S506), 업그레이드를 실패한 경우에는 해당 버전의 소프트웨어를 유니 캐스팅 방식으로 사용자 단말(400)에게 제공한다(단계 S508).Thereafter, whether or not the upgrade of the software is successfully received from the user terminal 400 (step S506), and if the upgrade fails, the corresponding version of the software is provided to the user terminal 400 in a unicasting method (step S508).

소프트웨어 업그레이드 관리 서버(100)는 업그레이드를 제공할 소프트웨어에 대한 유니캐스트 다운로드 서버 주소 및 포트 설정할 수 있으며, 사용자 단말(400)에 유니 캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 로그인 ID 및 패스워드를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드 할 수 있도록 할 수 있다.The software upgrade management server 100 may set the unicast download server address and port for the software to provide the upgrade, and provide the user terminal 400 with the unicast download server address and port, the unicast download server login ID, and the password. In this case, the user terminal 400 may download the software to be upgraded.

이후, 사용자 단말(400)로부터 소프트웨어 업그레이드 성공 여부를 수신하고(단계 S510), 업그레이드에 실패한 경우에는 해당 버전의 소프트웨어를 유니 캐스팅 방식으로 사용자 단말(400)에게 다시 제공한다(단계 S508).Thereafter, whether or not a successful software upgrade is received from the user terminal 400 (step S510). If the upgrade fails, the corresponding version of the software is provided back to the user terminal 400 in a unicasting method (step S508).

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. One embodiment of the present invention can also be implemented in the form of a recording medium containing instructions executable by a computer, such as a program module executed by the computer. Computer readable media can be any available media that can be accessed by a computer and includes both volatile and nonvolatile media, removable and non-removable media. In addition, computer readable media may include both computer storage media and communication media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Communication media typically includes computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave, or other transmission mechanism, and includes any information delivery media.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The foregoing description of the present invention is intended for illustration, and it will be understood by those skilled in the art that the present invention may be easily modified in other specific forms without changing the technical spirit or essential features of the present invention. will be. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as distributed may be implemented in a combined form.

본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.The scope of the present invention is shown by the following claims rather than the above description, and all changes or modifications derived from the meaning and scope of the claims and their equivalents should be construed as being included in the scope of the present invention. do.

도 1은 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 시스템의 전체 구성도.1 is an overall configuration diagram of a software upgrade system according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100)의 세부 구성도.2 is a detailed configuration diagram of the software upgrade management server 100 according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블의 일례.3 is an example of an upgrade management table stored in an upgrade DB 140 according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 전송 방식을 결정하는 방법의 세부 흐름도.4 is a detailed flowchart of a method of determining a software upgrade transmission method according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 제공 방법의 세부 흐름도.5 is a detailed flowchart of a software upgrade providing method according to an embodiment of the present invention.

*도면의 주요 부분에 대한 부호 설명* Explanation of symbols on the main parts of the drawings

100: 소프트웨어 업그레이드 관리 서버 110: 단말 정보 수집부100: software upgrade management server 110: terminal information collection unit

120: 업그레이드 정채 결정부 130: 전송 모드 결정부120: upgrade policy determination unit 130: transmission mode determination unit

140: 업그레이드 DB 150: 제어부140: upgrade DB 150: control unit

160: 송수신부 200: 멀티 캐스트 서버160: transceiver 200: multicast server

300: 유니 캐스트 서버 400: 사용자 단말기300: unicast server 400: user terminal

500: 네트워크500: network

Claims (10)

소프트웨어 업그레이드 시스템에 있어서,In a software upgrade system, 다수의 사용자 단말에 설치된 에이전트에 의해 상기 사용자 단말 및 상기 사용자 단말에 설치된 소프트웨어에 관한 정보를 주기적으로 수신하는 단말 정보 수집부,A terminal information collection unit periodically receiving information about the user terminal and software installed on the user terminal by agents installed in a plurality of user terminals; 상기 수집된 정보에 기초하여, 업그레이드 서비스가 제공되는 소프트웨어의 버전 및 종류 별로, 멀티 캐스트 방식의 다운로드 서비스 제공 여부 및 제공 기간을 결정하는 업그레이드 정책 결정부 및An upgrade policy determination unit that determines whether to provide a multicast download service and a provision period for each version and type of software provided with an upgrade service, based on the collected information; 상기 업그레이드 정책부의 결정에 기초하여 결정된 버전의 소프트웨어를 상기 사용자 단말에게 상기 결정된 제공 기간에 멀티 캐스트 방식으로 제공하는 것을 결정하고, 상기 멀티 캐스트 방식의 전송 결과 및 상기 수집된 정보에 기초하여, 유니 캐스트 방식으로 상기 결정된 버전의 소프트웨어를 제공하는 것을 결정하는 전송 모드 결정부Determine to provide the user terminal with the version of the software determined on the basis of the upgrade policy unit in a multicast manner in the determined provision period, and based on the transmission result of the multicast scheme and the collected information, unicast Transmission mode determining unit for determining to provide the determined version of the software 를 포함하는 소프트웨어 업그레이드 시스템.Software upgrade system comprising a. 제 1 항에 있어서,The method of claim 1, 상기 업그레이드 정책 결정부는 상기 소프트웨어의 버전 정보 및 상기 소프트웨어의 다운로드 수의 증가량에 기초하여, 상기 소프트웨어의 멀티 캐스트 방식 의 다운로드 서비스 제공 여부를 결정하는 것인 소프트웨어 업그레이드 시스템.And the upgrade policy determination unit determines whether to provide a multicast download service of the software based on the version information of the software and the increase in the number of downloads of the software. 제 2 항에 있어서,The method of claim 2, 상기 업그레이드 정책 결정부는 기 설정된 값 이상으로 다운로드 수가 증가한 소프트웨어를 멀티 캐스트 방식으로 제공하도록 결정하는 것인 소프트웨어 업그레이드 시스템.And the upgrade policy determination unit determines to provide a software in which the number of downloads increased by more than a predetermined value in a multicast manner. 제 1 항에 있어서,The method of claim 1, 상기 단말 정보 수집부는 상기 사용자 단말의 ID, 상기 사용자 단말의 종류, 상기 사용자 단말에 설치된 소프트웨어의 종류 및 버전에 관한 정보를 수신하는 것인 소프트웨어 업그레이드 시스템.The terminal information collecting unit receives the information on the ID of the user terminal, the type of the user terminal, the type and version of the software installed in the user terminal. 제 1 항에 있어서,The method of claim 1, 상기 전송 모드 결정부는 상기 사용자 단말에서 상기 소프트웨어의 업그레이드가 성공되었는지 여부를 확인하고, 상기 소프트웨어의 업그레이드가 실패된 경우에 유니 캐스트 전송 방식으로 상기 사용자 단말에게 상기 소프트웨어를 다시 제공하도록 결정하는 것인 소프트웨어 업그레이드 시스템.The transmission mode determination unit checks whether the upgrade of the software in the user terminal is successful, and if the upgrade of the software fails to determine to provide the software to the user terminal again in the unicast transmission method Upgrade system. 제 1 항에 있어서,The method of claim 1, 상기 제어부는 멀티 캐스트 서버 및 유니 캐스트 서버에게 업그레이드할 소프트웨어를 제공하고, 상기 제공한 소프트웨어 별로 멀티캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 주소 및 포트를 설정하는 것인 소프트웨어 업그레이드 시스템.The control unit provides software to be upgraded to the multicast server and the unicast server, and sets the multicast download server address and port, the unicast download server address and port for each of the provided software. 제 6 항에 있어서,The method of claim 6, 상기 제어부는 상기 설정된 멀티 캐스트 다운로드 서버 주소 및 포트, 상기 유니 캐스트 다운로드 서버 주소 및 포트, 상기 유니캐스트 다운로드 서버 로그인 아이디 및 패스워드를 상기 사용자 단말로 제공하는 것인 소프트웨어 업그레이드 시스템.And the control unit provides the set multicast download server address and port, the unicast download server address and port, and the unicast download server login ID and password to the user terminal. 소프트웨어 업그레이드 방법에 있어서,In the software upgrade method, 다수의 사용자 단말에 설치된 에이전트에 의해 상기 사용자 단말 및 사용자 단말에 설치된 소프트웨어에 관한 정보를 주기적으로 수신하는 단계,Periodically receiving information about the user terminal and software installed on the user terminal by an agent installed in a plurality of user terminals; 상기 수신한 정보에 기초하여, 업그레이드 서비스가 제공되는 소프트웨어의 버전 및 종류 별로, 멀티 캐스트 방식의 다운로드 서비스 제공 여부 및 제공 기간을 결정하는 단계,Determining, based on the received information, whether or not to provide a multicast download service for each version and type of software for which an upgrade service is provided; 상기 결정에 기초하여, 상기 사용자 단말에게 제공할 소프트웨어의 버전을 판단하고, 상기 판단된 버전의 소프트웨어를 상기 사용자 단말에게 제공할 소프트웨어 전송 방식을 결정하는 단계,Determining a version of software to be provided to the user terminal based on the determination, and determining a software transmission scheme to provide the determined version of software to the user terminal, 상기 결정된 전송 방식으로 상기 판단된 버전의 소프트웨어를 상기 사용자 단말에게 제공하는 단계,Providing the determined version of the software to the user terminal in the determined transmission scheme, 상기 사용자 단말이 상기 소프트웨어의 업그레이드를 성공하였는지 여부를 판단하는 단계 및Determining whether the user terminal has successfully upgraded the software; and 상기 사용자 단말이 상기 소프트웨어의 업그레이드를 실패한 경우에 유니 캐스트 전송 방식으로 상기 사용자 단말에게 상기 소프트웨어를 제공하는 단계Providing the software to the user terminal in a unicast transmission method when the user terminal fails to upgrade the software. 를 포함하는 소프트웨어 업그레이드 방법.Software upgrade method comprising a. 제 8 항에 있어서,The method of claim 8, 상기 멀티 캐스트 방식의 다운로드 서비스를 제공할지 여부를 결정하는 단계는 상기 소프트웨어의 버전 정보 및 상기 소프트웨어의 다운로드 수의 증가량에 기초하여, 상기 멀티 캐스트 방식의 다운로드 서비스 제공 여부를 결정하는 것인 소프트웨어 업그레이드 방법.The determining of whether to provide the download service of the multicast method comprises determining whether to provide the download service of the multicast method based on the version information of the software and the increase in the number of downloads of the software. . 제 8 항에 있어서,The method of claim 8, 상기 소프트웨어의 버전 별로 상기 사용자 단말이 상기 소프트웨어를 다운로드한 회수를 계수하는 단계Counting the number of times the user terminal has downloaded the software for each version of the software 를 더 포함하며,More, 상기 멀티 캐스트 방식의 다운로드 서비스를 제공할지 여부를 결정하는 단계는 기 설정된 값 이상으로 상기 계수된 다운로드 회수가 증가한 버전의 소프트웨어를 멀티 캐스트 방식으로 제공하도록 결정하는 것인 소프트웨어 업그레이드 방법.The determining of whether to provide the download service of the multicast method comprises determining to provide a multicast method of a version of the software whose number of downloads increased by more than a predetermined value.
KR1020090064875A 2009-07-16 2009-07-16 Software upgrade system and method KR20110007378A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090064875A KR20110007378A (en) 2009-07-16 2009-07-16 Software upgrade system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090064875A KR20110007378A (en) 2009-07-16 2009-07-16 Software upgrade system and method

Publications (1)

Publication Number Publication Date
KR20110007378A true KR20110007378A (en) 2011-01-24

Family

ID=43613837

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090064875A KR20110007378A (en) 2009-07-16 2009-07-16 Software upgrade system and method

Country Status (1)

Country Link
KR (1) KR20110007378A (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
CN108040172A (en) * 2017-11-29 2018-05-15 努比亚技术有限公司 Information updating method, terminal and the computer-readable storage medium of application software
CN110764807A (en) * 2019-10-29 2020-02-07 京东方科技集团股份有限公司 Upgrading method, system, server and terminal equipment
CN112328274A (en) * 2020-09-28 2021-02-05 宜通世纪物联网研究院(广州)有限公司 Software upgrading control method and system, server and intelligent terminal equipment
CN116954643A (en) * 2023-06-02 2023-10-27 深圳市华芯控股有限公司 On-demand and multicast firmware upgrading method based on CAN bus ad hoc network system

Cited By (8)

* 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
CN108040172A (en) * 2017-11-29 2018-05-15 努比亚技术有限公司 Information updating method, terminal and the computer-readable storage medium of application software
CN110764807A (en) * 2019-10-29 2020-02-07 京东方科技集团股份有限公司 Upgrading method, system, server and terminal equipment
US11907700B2 (en) 2019-10-29 2024-02-20 Boe Technology Group Co., Ltd. Upgrading method and system, server, and terminal device
CN112328274A (en) * 2020-09-28 2021-02-05 宜通世纪物联网研究院(广州)有限公司 Software upgrading control method and system, server and intelligent terminal equipment
CN116954643A (en) * 2023-06-02 2023-10-27 深圳市华芯控股有限公司 On-demand and multicast firmware upgrading method based on CAN bus ad hoc network system
CN116954643B (en) * 2023-06-02 2024-04-05 深圳市华芯控股有限公司 On-demand and multicast firmware upgrading method based on CAN bus ad hoc network system

Similar Documents

Publication Publication Date Title
US7925247B2 (en) Managing mobile devices based on roaming status
US7844964B2 (en) Network for mass distribution of configuration, firmware and software updates
CN101222519B (en) Remote activation of home devices
KR100932996B1 (en) Method and apparatus for approving data in one-to-many transmission system
KR101133596B1 (en) Apparatus and methods for providing configurable task management on a wireless device
KR101595527B1 (en) System for configurating dynamic service network based on netstore and method thereof
WO2011006328A1 (en) System and method for updating device firmware, device management server and mobile terminal
US10715965B2 (en) Report-based control of repeated multicast data transmission
KR100741943B1 (en) Content delivery in hybrid networks
CN101895873B (en) The update method of the Java application of mobile terminal, server and mobile terminal
WO2009003385A1 (en) Methods, apparatus and systems for updating equipment
CN107547245B (en) Version upgrading method and device
US8667114B2 (en) Program update management server and program update management method
KR20080007237A (en) Conveying a content delivery schedule to mobile terminals
CN105095022A (en) Data backup method and device
WO2009039098A2 (en) Automated over-the-air firmware update for a wireless phone
KR20100031309A (en) A method for management device in a communication network and a system thereof
KR20110007378A (en) Software upgrade system and method
KR20080024480A (en) A processing method, terminal, equipment management server and system for subscribing task in the equipment management
JP5595503B2 (en) Adapting content transmission in mobile networks
CN110691398A (en) Network interaction method, system, equipment and storage medium of intelligent equipment
EP1953957B1 (en) A remote load system of network device and method thereof
WO2012142790A1 (en) Method, apparatus and system for downloading application based on multicast mode
KR101993614B1 (en) Method for providing push service, service server, and user terminal
CN116208486A (en) Gateway backup and replacement method and system

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment