KR20110007378A - Software upgrade system and method - Google Patents
Software upgrade system and method Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/508—Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
- H04L41/5096—Network 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W8/00—Network data management
- H04W8/22—Processing or transfer of terminal data, e.g. status or physical capabilities
- H04W8/24—Transfer of terminal data
- H04W8/245—Transfer 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
Description
본 발명은 소프트웨어 업그레이드 시스템 및 방법에 관한 것으로서, 보다 상세하게는, 시스템의 부하 및 소프트웨어의 업그레이드 상황을 고려하여, 멀티캐스트 또는 유니캐스트 방식으로 소프트웨어 업그레이드할 수 있는 소프트웨어 업그레이드 시스템 및 방법에 관한 것이다.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
소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)로부터의 소프트웨어 업그레이드 요청에 대응하여, 업그레이드할 버전의 소프트웨어를 사용자 단말(400)로 제공한다.The software
소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)로부터 단말 ID, 소프트웨어의 종류 및 소프트웨어 버전 정보를 수신하며, 업그레이드 할 버전의 소프트웨어를 사용자 단말(400)로 멀티 캐스트 방식으로 전송할지, 유니 캐스트 방식으로 전송할지 여부를 판단한다.The software
소프트웨어 업그레이드 관리 서버(100)는 사용자 단말(400)에 설치된 소프트웨어의 버전을 주기적으로 확인하고 자동으로 소프트웨어의 업그레이드를 제공할 수도 있고, 사용자 단말(400)로부터의 요청에 대응하여, 요청받은 버전의 소프트웨어를 사용자 단말(400)로 제공할 수도 있다.The software
또한, 소프트웨어 업그레이드 관리 서버(100)는 소프트웨어의 버전 별로 다운로드 제공 방식을 각각 설정할 수 있으며, 이전 버전의 소프트웨어라고 하더라도 사용자 단말(400)로부터의 다운로드 요청이 많은 경우에는 이를 반영하여, 해당 버전의 소프트웨어를 멀티 캐스트 방식으로 사용자 단말(400)에게 제공하도록 할 수 있다.In addition, the software
또한, 소프트웨어 업그레이드 관리 서버(100)는 소프트웨어의 다운로드 완료 여부 및 정상 설치 여부를 사용자 단말(400)로부터 수신하고, 사용자 단말(400) 별로 소프트웨어의 버전을 관리하고 소프트웨어의 정상 설치 여부를 확인할 수 있다.In addition, the software
멀티 캐스트 서버(200)는 소프트웨어 업그레이드 관리 서버(100)로부터 업그레이드할 소프트웨어를 수신하고, 수신한 소프트웨어를 멀티 캐스트 방식으로 사용자 단말(400)에게 제공한다.The
멀티 캐스트 스트림에 대한 기본 정보(스트림 IP, 스트림 Port)는 소프트웨어 업그레이드 관리 서버(100)에 의해, 업그레이드할 소프트웨어 및 사용자 단말(400) 별로 미리 설정될 수 있다. 또한, 멀티 캐스트 다운로드 서버 주소 및 포트 값은, 소프트웨어 업그레이드 관리 서버(100)에 의해, 사용자 단말(400)로 미리 제공될 수 있다.Basic information (stream IP, stream port) for the multicast stream may be preset by the software
유니 캐스트 서버(300)는 소프트웨어 업그레이드 관리 서버(100)로부터 업그레이드할 소프트웨어를 수신하고, 수신한 소프트웨어를 유니 캐스트 방식으로 사용자 단말(400)에게 제공한다.The unicast
유니 캐스트 스트림에 대한 기본 정보는 소프트웨어 업그레이드 관리 서버(100)에 의해, 업그레이드할 소프트웨어 및 사용자 단말(400) 별로 미리 설정될 수 있다. 또한, 유니 캐스트 다운로드 서버 주소 및 포트 값, 유니 캐스트 다운로드 서버 로그인 ID 및 패스워드는, 소프트웨어 업그레이드 관리 서버(100)에 의해, 사용자 단말(400)로 미리 제공될 수 있다.Basic information on the unicast stream may be preset by the software
사용자 단말(400)은 소프트웨어 업그레이드 관리 서버(100)로 단말에 설치된 소프트웨어의 업그레이드를 요청하고, 상기 요청에 대응하여 멀티 캐스트 또는 유니 캐스트 방식으로 해당 버전의 소프트웨어를 전송받는다.The
사용자 단말(400)은 단말 ID, 소프트웨어의 종류 및 버전 등의 정보를 소프트웨어 업그레이드 관리 서버(100)에게 주기적으로 제공할 수 있다. 또한, 사용자 단말(400)은 전송받은 소프트웨어가 성공적으로 설치되었는지 여부에 관한 정보를 소프트웨어 업그레이드 관리 서버(100)로 제공할 수 있다.The
소프트웨어 업그레이드 관리 서버(100)로 제공된 정보는 소프트웨어 업그레이드 관리 서버(100)가 사용자 단말(400)에게 제공할 소프트웨어의 버전을 판단하고, 사용자 단말(400)의 다운로드 전송 방식을 결정하는데 이용될 수 있다.The information provided to the software
사용자 단말(400)은 WiFi, CDMA, WCDMA, WiBro, HSDPA등의 방식을 이용하여 네트워크에 접속할 수 있는 개인 휴대 단말, 네트워크에 접속이 가능한 셋톱박스 및 고정형 단말을 포함하며, 주기적으로 소프트웨어 업그레이드 관리 서버(100)에 사용자 단말(400)의 현황을 전송할 수 있는 에이전트를 탑재할 수 있다.The
네트워크(500)는 전용선, LAN, QAN, VAN, 인트라넷, 사설 전화망, 공중전화망, PSTN 망 및 이들의 상호 조합을 포함하며, 도 1에 도시된 각 네트워크 구성 주체가 서로 원활하게 통신을 할 수 있도록 하는 포괄적인 의미의 데이터 통신망이며, 유선 인터넷, 무선 인터넷 및 모바일 무선 통신망을 포함한다.The
이하, 도 2를 참조하여 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100)의 세부 구성에 대하여 설명하기로 한다.Hereinafter, a detailed configuration of the software
도 2는 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100) 의 세부 구성도이다.2 is a detailed configuration diagram of the software
도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 소프트웨어 업그레이드 관리 서버(100)는 단말 정보 수집부(110), 업그레이드 정책 결정부(120), 전송 모드 결정부(130), 업그레이드 DB(140), 제어부(150) 및 송수신부(160)를 포함한다.As shown in Figure 2, the software
단말 정보 수집부(110)는 소프트웨어의 업그레이드에 필요한 정보로서, 사용자 단말(400)과 관련된 정보를 수신한다. 단말 정보 수집부(110)는 사용자 단말(400)의 ID, 사용자 단말(400)의 종류, 사용자 단말(400)에 설치된 소프트웨어의 종류 및 버전 등의 정보를 수신할 수 있다.The terminal
업그레이드 정책 결정부(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
또한, 업그레이드 정책 결정부(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
전송 모드 결정부(130)는 사용자 단말(400)로부터 수신한 소프트웨어의 버전을 확인하고, 업그레이드할 버전의 소프트웨어를 확인할 수 있으며, 업그레이드할 버전의 소프트웨어가 멀티 캐스트 방식으로 다운로드를 제공할 경우에는 소프트웨어 업그레이드를 멀티 캐스트 방식으로 제공하고, 그렇지 않을 경우에는 유니 캐스트 방식으로 제공하도록 전송 모드를 결정할 수 있다.The transmission
또한, 전송 모드 결정부(130)는 사용자 단말(400)로부터 특정 버전의 소프트웨어 업그레이드를 요청받고, 요청받은 버전의 소프트웨어가 멀티 캐스트 방식으로 다운로드를 제공하는지 여부를 확인하고 전송 모드를 결정할 수 있다.In addition, the transmission
또한, 전송 모드 결정부(130)는 사용자 단말(400)이 멀티 캐스트 방식의 소프트웨어 업그레이드를 성공하였는지 여부(정상 설치 여부)를 확인하고, 실패한 경우에는 해당 사용자 단말(400)로 유니 캐스트 방식의 소프트웨어 업그레이드를 제공하도록 전송 모드를 결정할 수 있다.In addition, the transmission
따라서, 소프트웨어의 업그레이드를 실패한 사용자 단말(400)에 대하여는 보 다 확실하게 소프트웨어의 업그레이드를 제공할 수 있게 된다.Therefore, the
업그레이드 DB(140)는 소프트웨어의 업그레이드와 관련된 각종 정보를 저장한다.The
업그레이드 DB(140)는 사용자 단말(400)의 ID, 사용자 단말(400)의 종류, 사용자 단말(400)에 설치된 소프트웨어의 종류 및 버전 등의 사용자 단말(400) 관련 정보, 소프트웨어의 버전 별로 멀티 캐스트 방식의 다운로드를 제공하는지 여부에 관한 정보, 소프트웨어 버전 별 다운로드 수에 관한 정보 등을 저장할 수 있다.The
제어부(150) 소프트웨어 업그레이드 관리 서버(100) 전체를 제어하며, 소프트웨어 업그레이드 관리 서버(100)가 사용자 단말(400)에 제공할 소프트웨어의 버전 및 업그레이드 수 등에 기초하여, 사용자 단말(400)에 설치된 소프트웨어의 업그레이드를 어떤 전송 방식으로 제공할 지를 결정하도록 단말 정보 수집부(110), 업그레이드 정책 결정부(120), 전송 모드 결정부(130)를 제어한다.The
또한, 제어부(150)는 멀티 캐스트 서버(200) 및 유니 캐스트 서버(300)에게 업그레이드할 소프트웨어를 제공하고, 멀티 캐스트 서버(200) 및 유니 캐스트 서버(300)가 제공받은 소프트웨어를 사용자 단말(400)에게 전송하도록 할 수 있다. 제어부(150)는 멀티캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 주소 및 포트를 설정할 수 있으며, 상기 다운로드 서버 주소 및 포트는 사용자 단말(400)의 모델 및 사용자 단말(400)에게 제공되는 서비스의 종류, 소프트웨어의 종류 및 버전에 따라 각각 다르게 설정될 수 있다.In addition, the
또한, 제어부(150)는 사용자 단말(400)에 멀티 캐스트 다운로드 서버 주소 및 포트, 유니 캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 로그인 ID 및 패스워드를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드할 수 있도록 할 수 있다.In addition, the
송수신부(160)는 멀티 캐스트 서버(200), 유니 캐스트 서버(300) 및 사용자 단말(400)과 소프트웨어 업그레이드에 필요한 각종 정보를 송수신한다.The
이하, 도 3을 참조하여 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블에 대하여 설명하기로 한다.Hereinafter, the upgrade management table stored in the
도 3은 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블의 일례이다.3 is an example of an upgrade management table stored in the
도 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
소프트웨어명 필드(10) 및 버전 필드(20)에는 소프트웨어 업그레이드 서비스를 제공하는 소프트웨어명 및 버전 값이 기록되며, 멀티 캐스팅 제공 여부 필드(30) 및 멀티 캐스팅 제공 기간 필드(40)에는 소프트웨어의 버전 별로 멀티 캐스트 방식의 다운로드를 제공하는지 여부 및 그 기간이 기록된다.In the
또한, 다운로드 수 필드(50)에는 소프트웨어의 버전 별로 사용자 단말(400)가 업그레이드한 회수가 기록된다. 상기 다운로드 수는 해당 버전의 소프트웨어를 사용자 단말(400)들이 다운로드한 누적 회수로서, 기 설정된 기간(예를 들어, 멀티 캐스팅 서비스가 종료된 이후부터의 기간 또는 특정일 이후부터의 기간)동안 다운 로드한 회수일 수 있다.In addition, the number of times that the
따라서, 특정 버전에 대한 멀티 캐스팅 다운로드 서비스 기간이 경과한 이후에도, 해당 버전의 소프트웨어 다운로드 수가 증가할 경우에는 이를 반영하여, 해당 버전의 소프트웨어에 대하여 멀티 캐스팅 서비스를 제공하도록 할 수 있게 된다. 나아가, 새로운 버전의 소프트웨어에 버그 또는 오류가 있어 사용자 단말(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
예를 들어, 소프트웨어 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
이하, 도 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
이후, 각 소프트웨어가 다운로드(업그레이드)되는 회수를 버전 별로 모니터링 하며(단계 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
이후, 업그레이드를 제공할 버전의 소프트웨어에 대하여 멀티 캐스팅 방식의 전송 서비스가 제공되는지 여부를 판단한다(단계 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
소프트웨어 업그레이드 관리 서버(100)는 업그레이드를 제공할 소프트웨어에 대한 멀티캐스트 다운로드 서버 주소 및 포트 설정할 수 있으며, 사용자 단말(400)에 멀티 캐스트 다운로드 서버 주소 및 포트를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드할 수 있도록 할 수 있다.The software
이후, 사용자 단말(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
소프트웨어 업그레이드 관리 서버(100)는 업그레이드를 제공할 소프트웨어에 대한 유니캐스트 다운로드 서버 주소 및 포트 설정할 수 있으며, 사용자 단말(400)에 유니 캐스트 다운로드 서버 주소 및 포트, 유니캐스트 다운로드 서버 로그인 ID 및 패스워드를 제공하여, 사용자 단말(400)이 업그레이드할 소프트웨어를 다운로드 할 수 있도록 할 수 있다.The software
이후, 사용자 단말(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
본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체 및 통신 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 통신 매체는 전형적으로 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파와 같은 변조된 데이터 신호의 기타 데이터, 또는 기타 전송 메커니즘을 포함하며, 임의의 정보 전달 매체를 포함한다. 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
도 3은 본 발명의 일 실시예에 따른 업그레이드 DB(140)에 저장된 업그레이드 관리 테이블의 일례.3 is an example of an upgrade management table stored in an
도 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)
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)
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 |
-
2009
- 2009-07-16 KR KR1020090064875A patent/KR20110007378A/en active Search and Examination
Cited By (8)
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 |