KR101818977B1 - Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments - Google Patents
Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments Download PDFInfo
- Publication number
- KR101818977B1 KR101818977B1 KR1020170081505A KR20170081505A KR101818977B1 KR 101818977 B1 KR101818977 B1 KR 101818977B1 KR 1020170081505 A KR1020170081505 A KR 1020170081505A KR 20170081505 A KR20170081505 A KR 20170081505A KR 101818977 B1 KR101818977 B1 KR 101818977B1
- Authority
- KR
- South Korea
- Prior art keywords
- upgrade
- identification information
- device identification
- server
- software
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
본 발명은 일반적으로 소프트웨어 체계가 상이한 다수의 이기종 방송장비들이 혼재되어 있는 환경에서 이들 이기종 방송장비에 대한 소프트웨어 업그레이드를 효과적으로 일괄 처리하는 기술에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention [0002] The present invention relates generally to a technology for efficiently batch processing software upgrades for heterogeneous broadcasting equipment in a mixed environment of a plurality of heterogeneous broadcasting equipments with different software schemes.
더욱 상세하게는, 본 발명은 소프트웨어 체계가 상이한 다수의 이기종 방송장비들이 혼재되어 있는 환경에서 업그레이드 서버가 인터넷을 통해 이들 이기종 방송장비와 직접 혹은 간접으로 연결되고 각각의 디바이스 정보를 디스커버리한 후에 해당 업그레이드 파일을 자동으로 매칭하여 일괄적으로 업그레이드를 처리하는 기술에 관한 것이다. 이때, 업그레이드 서버가 다수의 방송장비를 효율적으로 대응할 수 있도록 UDP 기반의 데이터 송수신을 수행한다.More particularly, the present invention relates to a system and method for upgrading a plurality of heterogeneous broadcasting apparatuses having different software schemes, in which an upgrade server is directly or indirectly connected to the heterogeneous broadcasting apparatuses over the Internet, discovers each device information, To a technology for automatically matching files and collectively processing upgrades. At this time, UDP-based data transmission / reception is performed so that the upgrade server can efficiently cope with a plurality of broadcasting equipments.
일반적으로 여러가지 용도로 방송장비들이 운용되고 있다. 예를 들어 기업, 관공서, 마트, 콘도, 학교 등에서는 건물 내의 사람들에게 그때그때 메세지를 전달할 목적으로 전관방송 시스템을 운영한다. 학교의 경우를 살펴보면 수업 시작과 종료, 화재훈련 알림, 듣기평가, 교장선생님 훈시, 주요 일과 공지, 긴급상황시 대피 안내 등을 위해 오디오와 보이스를 각 교실의 스피커로 출력한다.Broadcasting equipment is generally used for various purposes. For example, companies, government offices, marts, condominiums, and schools operate public hall broadcasting systems for the purpose of delivering messages to people inside the building at that time. In the case of school, audio and voice are output to the speakers of each classroom for class start and end, fire training notification, listening assessment, principal teacher training, major work announcement, emergency evacuation guidance,
방송 시스템을 납품 및 설치하는 업체의 입장에서는 이들 방송장비를 유지관리하는 것도 상당히 어려운 작업이다. 방송장비들이 전국에 걸쳐 산재되어 있다는 점도 문제이지만, 실무에서 어려움을 가중시키는 문제점은 이들 방송장비들이 완전히 다른 체계로 설계되어 있다는 점이다. 하나의 방송 시스템을 구축하려면 여러 방송장비가 사용되는데, 소프트웨어의 설계 체계가 방송장비마다 제각각이어서 각각 완전히 다른 방식으로 관리해야 하는 것이다.For companies that provide and install broadcasting systems, maintaining these broadcasting equipment is a difficult task. The problem is that broadcast equipment is scattered across the country, but the problem is that the broadcast equipment is designed in a completely different system. In order to construct a broadcasting system, various broadcasting equipments are used, and the designing system of the software is different for each broadcasting equipments, so that they have to be managed in completely different ways.
그러한 어려움은 소프트웨어 업그레이드의 경우에도 나타난다. 고객의 요구를 맞추기 위해 최근의 방송장비들은 다양한 부가 기능과 복잡한 오디오 처리 알고리즘을 수용해야 하는데, 이를 위해 고성능 프로세서(예: ARM9)에 운영체제를 탑재하고 그 위에 소프트웨어를 설치하는 체계를 갖추고 있다. 소프트웨어는 기능 개선이나 디버깅의 목적으로 가끔씩 버전 업(version up)을 하는데, 이 때에는 컴퓨터나 스마트폰에서와 마찬가지로 방송장비들도 소프트웨어 업그레이드를 해주어야 한다. 펌웨어(firmware) 업그레이드도 마찬가지인데 본 명세서에서는 소프트웨어 업그레이드라고 통칭한다.Such difficulties also occur in the case of software upgrades. To meet customer needs, modern broadcasting equipment must accommodate a variety of add-ons and complex audio processing algorithms, including a high-performance processor (eg ARM9) with an operating system and software installed on top of it. The software is sometimes upgraded for the purpose of function improvement or debugging. At this time, broadcasting equipment should be upgraded as well as computer or smart phone. The same is true for firmware upgrades, which are referred to herein as software upgrades.
그런데, 방송장비의 소프트웨어 업그레이드 환경은 일반적인 컴퓨터나 스마트폰과는 완전히 다르다. 컴퓨터나 스마트폰은 소프트웨어 설계가 윈도우즈나 안드로이드와 같이 통일되어 있기 때문에 소프트웨어 제공업체인 마이크로소프트나 구글에서 각자 자신이 제공한 소프트웨어의 업그레이드를 제공해준다. 컴퓨터나 스마트폰 제조업체는 신경쓰지 않아도 된다.However, the software upgrading environment of broadcasting equipment is completely different from general computer or smart phone. Computers and smartphones provide software upgrades for their own software providers Microsoft and Google because their software design is unified with Windows and Android. Computers and smartphone manufacturers do not have to worry.
그러나, 방송장비는 다양한 업체에서 각자 나름대로의 소프트웨어 체계로 설계하였기 때문에 상황이 완전히 상이하다. 방송장비에 사용된 소프트웨어를 제공한 업체들은 마이크로소프트나 구글과는 달리 자신들이 제공한 소프트웨어의 업그레이드를 책임지지 않는다. 결국, 방송 시스템을 납품 설치한 업체에서 방송장비의 소프트웨어 업그레이드까지 제공해야 한다. 방송 시스템 업체는 소프트웨어 체계가 상이한 다수의 이기종 방송장비들이 혼재된 환경에서 자신의 담당 직원을 파견하여 소프트웨어 업그레이드를 개별적으로 해주고 있다.However, the situation is completely different because broadcasting equipment is designed by various companies in their respective software systems. Unlike Microsoft or Google, companies that provide software used in broadcast equipment are not responsible for upgrading their software. As a result, it is necessary to provide software upgrades of broadcasting equipment from companies that have installed and installed broadcasting systems. Broadcasting system vendors send their own staff in a mixed environment of different heterogeneous broadcasting equipment with different software system to upgrade software individually.
[도 1]은 일반적인 방송장비의 배치 환경을 개념적으로 나타내는 도면이고, [도 2]는 종래기술에서 다수의 방송장비에 대해 소프트웨어 업그레이드를 달성하는 과정을 개념적으로 나타내는 도면이다.[0012] FIG. 1 conceptually illustrates a layout environment of general broadcast equipment, and FIG. 2 conceptually illustrates a process of achieving software upgrade for a plurality of broadcast equipment in the related art.
[도 1]을 참조하면, 여러 지역에 산재된 여러 건물(10 ~ 40)에 방송 시스템(11 ~ 41)이 설치되어 있는데, 각각의 방송 시스템은 여러 개의 방송장비로 이루어져 있다. 이들 방송장비들은 발주자의 요구 사양과 납품 가격을 고려하여 상이한 브랜드와 모델의 제품이 채택되는데, 그에 따라 이들의 하드웨어와 소프트웨어 체계는 서로 완전히 상이하다. 방송장비 제조업체들은 서로 설계를 공유하지 않으며 각자의 고유 방식에 따라 독자적인 체계를 고집한다.Referring to FIG. 1,
이들 방송장비에 대해 소프트웨어 업그레이드를 해야하는 상황이 되면 [도 2]에서와 같이 담당직원(12 ~ 42)을 해당 설치 지점에 파견하여 방송장비 별로 소프트웨어 업그레이드를 실행한다. 담당직원(12 ~ 42)은 자신에게 할당된 지점을 방문하여 해당 방송 시스템(11 ~ 41)을 구성하는 여러 방송장비들의 기종(모델 넘버)을 확인하고 그 기종에 맞는 업그레이드 파일을 찾아서 각각 지정된 절차에 따라 소프트웨어 업그레이드를 진행한다.When it is necessary to perform a software upgrade for these broadcast equipment, a staff member (12 ~ 42) is dispatched to the installation site as shown in FIG. 2 to execute a software upgrade for each broadcast equipment. The
방송장비의 제조업체가 독자적으로 방송장비를 설계하였고 소프트웨어의 체계가 제각각이기 때문에 방송장비 별로 개별적이고 이질적인 소프트웨어 업그레이드를 수행해야 한다. 즉, 개별 방송장비에 대해 업데이트 파일을 정확히 찾아야 하고 제조업체가 지정한 절차에 따라 업그레이드를 진행해야 한다. 다른 제품의 업그레이드 파일을 선택하거나 절차 수행에 미숙한 경우에는 방송장비가 고장날 수도 있기 때문에 담당직원(12 ~ 42)은 매우 주의를 기울여야 한다. 업그레이드 작업을 하는 동안 다른 업무를 보지못하는 것은 물론이다.Broadcast equipment manufacturers have independently designed broadcast equipment, and the system of software is different, so it is necessary to perform individual and heterogeneous software upgrade for each broadcasting equipment. In other words, the update file must be accurately searched for the individual broadcasting equipment and the upgrade should be carried out according to the procedure specified by the manufacturer. If you are unsure about choosing an upgrade file for another product or performing a procedure, your staff (12-42) should be very careful because the broadcast equipment may fail. Of course, you will not see any other work during the upgrade.
이처럼 종래기술에서는 방송장비를 업그레이드하는 것이 상당히 민감하고 번거로우며 비용이 많이 드는 작업이다. 방송 시스템이 지역적으로 산재되어 있을 뿐만 아니라 다수의 이기종 방송장비들이 혼재되어 있는 상황에서 방송장비의 소프트웨어 업그레이드를 스마트하게 처리할 수 있는 기술을 제공함으로써 상기와 같은 종래기술의 문제점을 해결할 수 있는 기술이 요망된다.As such, upgrading broadcast equipment is a very sensitive, cumbersome and costly task in the prior art. A technology capable of smartly processing software upgrades of broadcasting equipment in a situation where a broadcasting system is scattered locally and a plurality of heterogeneous broadcasting equipments are mixed, Is desired.
본 발명의 목적은 일반적으로 소프트웨어 체계가 상이한 다수의 이기종 방송장비들이 혼재되어 있는 환경에서 이들 이기종 방송장비에 대한 소프트웨어 업그레이드를 효과적으로 일괄 처리하는 기술을 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a technology for efficiently batch processing software upgrades for heterogeneous broadcasting equipment in an environment where a plurality of heterogeneous broadcasting equipments having different software schemes are mixed.
특히, 본 발명의 목적은 소프트웨어 체계가 상이한 다수의 이기종 방송장비들이 혼재되어 있는 환경에서 업그레이드 서버가 인터넷을 통해 이들 이기종 방송장비와 직접 혹은 간접으로 연결되고 각각의 디바이스 정보를 디스커버리한 후에 해당 업그레이드 파일을 자동으로 매칭하여 일괄적으로 업그레이드를 처리하는 기술을 제공하는 것이다. 이때, 업그레이드 서버가 다수의 방송장비를 효율적으로 대응할 수 있도록 UDP 기반의 데이터 송수신을 수행한다.In particular, an object of the present invention is to provide an upgrade server in which, in an environment where a plurality of heterogeneous broadcasting apparatuses having different software schemes are mixed, the upgrade server is directly or indirectly connected to the heterogeneous broadcasting apparatuses via the Internet, discovers each device information, Is automatically matched and the upgrade process is performed collectively. At this time, UDP-based data transmission / reception is performed so that the upgrade server can efficiently cope with a plurality of broadcasting equipments.
상기의 목적을 달성하기 위하여 본 발명은 다수의 이기종 방송장비에 대한 소프트웨어 업그레이드를 업그레이드 서버(100)가 인터넷을 통해 원격지에서 일괄 처리하기 위한 방법으로서, 업그레이드 서버(100)가 방송장비 소프트웨어에 대한 업데이트 파일의 존재를 브로드캐스트 전송하는 제 1 단계; 그 브로드캐스트를 수신한 하나이상의 업그레이드 클라이언트(200)가 자신에게 연결된 하나이상의 단독형 방송장비(300)의 디바이스 식별정보(device_ID)를 업그레이드 서버(100)로 전송하는 제 2 단계; 업그레이드 서버(100)가 데이터베이스를 조회하여 그 수신한 하나이상의 디바이스 식별정보에 대응하는 업그레이드 파일을 획득하는 제 3 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 해당 디바이스 식별정보를 전송한 업그레이드 클라이언트(200)로 전송하는 제 4 단계; 업그레이드 클라이언트(200)가 자신에게 연결된 하나이상의 단독형 방송장비(300)에 대해 각각의 디바이스 식별정보를 참조하여 그 대응하는 업그레이드 파일을 다운로드 설치함으로써 순차적으로 소프트웨어 업그레이드를 실행하는 제 5 단계;를 포함하여 구성된다.In order to achieve the above object, the present invention provides a method for collectively processing software upgrades for a plurality of different types of broadcasting equipment at a remote site via the Internet, wherein the upgrade server (100) A first step of broadcast transmission of the existence of the file; A second step of transmitting the device identification information (device_ID) of the one or more stand-
본 발명에 따른 소프트웨어 일괄 업그레이드 처리 방법은, 그 브로드캐스트를 수신한 하나이상의 네트워크형 방송장비(400)가 자신의 디바이스 식별정보를 업그레이드 서버(100)로 전송하는 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 해당 디바이스 식별정보를 전송한 네트워크형 방송장비(400)로 전송하는 제 6 단계; 네트워크형 방송장비(400)가 그 수신한 업그레이드 파일을 내부 설치함으로써 소프트웨어 업그레이드를 실행하는 제 7 단계;를 더 포함하여 구성될 수 있다.The method for collectively upgrading the software according to the present invention includes the steps of: transmitting at least one network-type broadcast equipment (400) receiving the broadcast to the upgrade server (100); A sixth step of the upgrade server (100) transmitting an upgrade file corresponding to the device identification information to the network-type broadcast equipment (400) that has transmitted the device identification information for each device identification information; And a seventh step of performing a software upgrade by internally installing the upgrade file received by the network-
본 발명에서 제 1 단계는, 업그레이드 서버(100)가 방송장비 소프트웨어에 대한 업데이트 파일의 존재를 UDP 패킷으로 브로드캐스트 전송하는 단계;를 포함하여 구성될 수 있다.The first step of the present invention may include configuring the
이때, 제 4 단계는, 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 세션 식별정보(session_ID)를 할당하는 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 해당 디바이스 식별정보를 전송한 업그레이드 클라이언트(200)에 대해 각각 할당된 세션 식별정보를 알리는 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 할당된 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하는 단계; 업그레이드 클라이언트(200)가 자신에게 할당된 세션 식별정보에 대응하는 복수 개의 UDP 패킷을 식별하면 그 UDP 패킷의 페이로드를 수집하여 업그레이드 파일을 획득하는 단계; 업그레이드 클라이언트(200)는 무결성 체크를 통해 UDP 패킷에 오류를 발견하는 경우에 그 발견된 오류와 관련된 세션 식별정보를 특정하면서 그 오류가 발견된 페이로드의 재전송 요구를 업그레이드 서버(100)로 전송하는 단계; 업그레이드 서버(100)는 특정 페이로드에 대한 재전송 요구를 수신하면 그 재전송 요구에 포함된 세션 식별정보의 유효성을 확인한 후에 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 그 재전송 요구된 페이로드를 UDP 패킷으로 브로드캐스트 전송하는 단계;를 포함하여 구성될 수 있다.In this case, in the fourth step, the
또한, 제 6 단계는, 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 세션 식별정보(session_ID)를 할당하는 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 해당 디바이스 식별정보를 전송한 네트워크형 방송장비(400)에 대해 각각 할당된 세션 식별정보를 알리는 단계; 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 할당된 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하는 단계; 네트워크형 방송장비(400)가 자신에게 할당된 세션 식별정보에 대응하는 복수 개의 UDP 패킷을 식별하면 그 UDP 패킷의 페이로드를 수집하여 업그레이드 파일을 획득하는 단계; 네트워크형 방송장비(400)는 무결성 체크를 통해 UDP 패킷에 오류를 발견하는 경우에 그 발견된 오류와 관련된 세션 식별정보를 특정하면서 그 오류가 발견된 페이로드의 재전송 요구를 업그레이드 서버(100)로 전송하는 단계; 업그레이드 서버(100)는 특정 페이로드에 대한 재전송 요구를 수신하면 그 재전송 요구에 포함된 세션 식별정보의 유효성을 확인한 후에 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 그 재전송 요구된 페이로드를 UDP 패킷으로 브로드캐스트 전송하는 단계;를 포함하여 구성될 수 있다.In a sixth step, the
또한, 본 발명에서 제 3 단계는, 업그레이드 서버(100)가 업그레이드 내역 데이터베이스(120)를 조회하여 디바이스 식별정보에 대응하는 설치 버전 정보를 획득하는 단계; 업그레이드 서버(100)가 디바이스 식별정보로부터 제품 모델 정보를 획득하는 단계; 업그레이드 서버(100)가 업그레이드 파일 데이터베이스(110)를 조회하여 제품 모델 정보에 대응하는 업그레이드 파일 및 업그레이드 버전 정보를 획득하는 단계; 업그레이드 서버(100)가 설치 버전 정보에 비해 업그레이드 버전 정보가 업데이트된 경우에는 업그레이드 파일을 디바이스 식별정보에 대응하는 업그레이드 파일로 설정하는 단계;를 포함하여 구성될 수 있다.In the third step, the
이때, 본 발명에 따른 소프트웨어 일괄 업그레이드 처리 방법은, 업그레이드 서버(100)는 업그레이드 클라이언트(200)로부터 소프트웨어 업그레이드의 정상 처리 결과를 제공받는 단계; 업그레이드 서버(100)는 업그레이드 내역 데이터베이스(120)에 대하여 디바이스 식별정보에 대응하는 설치 버전 정보를 업그레이드 버전 정보로 업데이트하는 단계;를 더 포함하여 구성될 수 있다.In this case, the method for collectively upgrading the software according to the present invention may include: receiving the normal processing result of the software upgrade from the
또한, 본 발명에 따른 소프트웨어 일괄 업그레이드 처리 방법은, 업그레이드 클라이언트(200)가 자신에게 연결된 하나이상의 단독형 방송장비(300)의 디바이스 식별정보(device_ID)를 저장하는 단계;를 더 포함하여 구성될 수 있다.In addition, the method for collectively upgrading the software according to the present invention may further include storing the device identification information (device_ID) of the at least one stand-
또한, 본 발명에서 업그레이드 서버(100)는 동일한 업그레이드 파일에 대응하는 디바이스 식별정보가 복수 개인 경우에 해당 복수 개의 디바이스 식별정보에 할당된 복수 개의 세션 식별정보를 UDP 패킷의 특정 필드에 모두 삽입한 상태로 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하도록 구성될 수 있다.In the present invention, when there are a plurality of device identification information corresponding to the same upgrade file, the
한편, 본 발명에 따른 컴퓨터로 판독가능한 비휘발성 기록매체는 컴퓨터에 이상과 같은 다수의 이기종 방송장비를 위한 소프트웨어 일괄 업그레이드 처리 방법을 실행시키기 위한 프로그램을 기록한 것이다.Meanwhile, a computer-readable nonvolatile recording medium according to the present invention records a program for causing a computer to execute a software bulk upgrade processing method for a plurality of different types of broadcasting equipment.
본 발명에 따르면 다수의 이기종 방송장비들에 대하여 상이한 소프트웨어 체계에 따른 개별적이고 이질적인 소프트웨어 업그레이드를 일괄 처리 방식으로 정확하게 처리할 수 있는 장점이 있다. According to the present invention, there is an advantage that individual and heterogeneous software upgrades according to different software schemes can be accurately processed in a batch processing manner for a plurality of heterogeneous broadcasting equipments.
종래기술에서는 해당 지역에 담당 직원이 방문하여 해당 방송장비의 기종을 확인하고 해당 기종에 따른 업그레이드 파일을 찾아서 각각 지정된 절차에 따라 소프트웨어 업그레이드를 진행하였으나, 본 발명에서는 방송장비를 인터넷에 연결하기만 하면 직원 개입 없이 소프트웨어 업그레이드가 자동 처리되므로 유지관리 업체의 업무 부담을 경감시킬 수 있는 장점이 있다. In the prior art, a staff member visits a local area to confirm the type of the broadcasting equipment, finds an upgrade file according to the model, and performs software upgrading according to a designated procedure. However, in the present invention, Software upgrades are automatically handled without staff intervention, which reduces maintenance workload.
[도 1]은 일반적인 방송장비의 배치 환경을 개념적으로 나타내는 도면.
[도 2]는 종래기술에서 다수의 방송장비에 대해 소프트웨어 업그레이드를 달성하는 과정을 개념적으로 나타내는 도면.
[도 3]은 본 발명이 적용되기 위한 전체 시스템 구성을 개념적으로 나타내는 도면.
[도 4]는 본 발명에서 업그레이드 서버가 관리하는 업그레이드 파일 데이터베이스와 업그레이드 내역 데이터베이스의 일 실시예를 나타내는 도면.
[도 5]는 본 발명에 따른 소프트웨어 일괄 업그레이드 처리 방법의 전체 프로세스를 나타내는 순서도.
[도 6]은 본 발명에서 업그레이드 서버가 업그레이드 파일을 다루는 과정의 일 구현예를 나타내는 순서도.
[도 7]은 본 발명에서 업그레이드 서버가 업그레이드 파일을 전송하는 과정의 일 구현예를 나타내는 순서도.1 is a view conceptually showing an arrangement environment of general broadcast equipment;
FIG. 2 conceptually illustrates a process of achieving a software upgrade for a plurality of broadcasting equipments in the prior art; FIG.
[Fig. 3] conceptually shows an overall system configuration to which the present invention is applied. [Fig.
4 is a diagram illustrating an embodiment of an upgrade file database and an upgrade history database managed by an upgrade server in the present invention.
5 is a flowchart showing an overall process of a software batch upgrade processing method according to the present invention.
FIG. 6 is a flowchart showing an example of a process of an upgrade server handling an upgrade file in the present invention. FIG.
FIG. 7 is a flowchart illustrating an exemplary process of an upgrade server transmitting an upgrade file in the present invention. FIG.
이하에서는 도면을 참조하여 본 발명을 상세하게 설명한다.Hereinafter, the present invention will be described in detail with reference to the drawings.
[도 3]은 본 발명에 따른 소프트웨어 일괄 업그레이드 처리 기술이 적용되기 위한 전체 시스템 구성을 개념적으로 나타내는 도면이다.FIG. 3 is a conceptual diagram illustrating the overall system configuration for applying the software batch upgrade processing technique according to the present invention.
방송장비들은 인터넷 접속 기능이 있는 네트워크형 방송장비(400)와 인터넷 접속 기능이 없는 단독형 방송장비(300)로 구분된다. 소프트웨어 일괄 업그레이드는 원격지에 위치한 업그레이드 서버(100)가 담당하는데, 단독형 방송장비(300)는 업그레이드 클라이언트(200)를 통해 업그레이드 서버(100)로 연결되고, 네트워크형 방송장비(400)는 직접 업그레이드 서버(100)에 연결될 수 있다.Broadcasting equipments are classified into a network
업그레이드 클라이언트(200)는 컴퓨터, 스마트 단말, 셋톱박스 등으로 이루어지는데 본 발명에 따른 방송장비 소프트웨어 업그레이드를 지원하기 위한 내장 프로그램 혹은 앱(APP)의 형태로 설치되어 있다. 업그레이드 클라이언트(200)는 각각 하나이상의 단독형 방송장비(300)와 유무선의 디지털 인터페이스(예: RS-485, RS-422, RS-232)로 연결되어 있으며, 각자 자신에게 연결된 단독형 방송장비(300)의 디바이스 식별정보(예: dev_ID_311 등)를 저장하고 있다.The
네트워크 방송장비(400)는 각자 자신의 디바이스 식별정보(예: dev_ID_410)를 저장한다. [도 3]에서 방송장비들(300, 400)은 [도 1]을 참조하여 전술한 것처럼 지리적으로 멀리 산재되어 있을 수 있다. 이때, 업그레이드 클라이언트 하나(예: 210)는 해당 지역에 배치된 단독형 방송장비들(예: 311, 312, 313)에 대한 소프트웨어 업그레이드를 담당하도록 구성될 수 있다.The
업그레이드 서버(100)는 다수의 방송장비(300, 400)에 대한 소프트웨어 일괄 업그레이드를 수행한다. 단독형 방송장비(300)는 업그레이드 클라이언트(200)를 매개로 연결되어 소프트웨어 업그레이드를 수행하고, 네트워크형 방송장비(400)는 직접 통신하여 소프트웨어 업그레이드를 수행한다. 업그레이드 서버(100)가 소프트웨어 일괄 업그레이드를 달성하는 과정에 대해서는 [도 5] 내지 [도 7]을 참조하여 구체적으로 후술한다.The
한편, 업그레이드 서버(100)는 이들 방송장비(300, 400)에 대한 소프트웨어 업그레이드를 관리하기 위해 데이터베이스(110, 120)를 운영한다. [도 4]는 본 발명에서 업그레이드 서버(100)가 관리하는 업그레이드 파일 데이터베이스(110)와 업그레이드 내역 데이터베이스(120)의 데이터 관리 포맷의 바람직한 일 실시예를 나타내는 도면이다.Meanwhile, the
업그레이드 파일 데이터베이스(110)는 방송장비(300, 400)의 제품 모델 별로 최신의 소프트웨어 버전 넘버와 해당 업그레이드 파일을 저장한다. 예를 들면, 모델 넘버 'AAA'의 제품에 대해서는 최신의 소프트웨어 버전이 1.03b03이고 해당 버전의 업그레이드 파일은 upgrade_file_aaa 이름으로 저장되어 있다. 그에 따라, 특정의 모델 넘버에 대하여 최신의 버전 넘버와 해당 업그레이드 파일을 업그레이드 파일 데이터베이스(110)로부터 얻을 수 있다.The
업그레이드 내역 데이터베이스(120)는 개별 방송장비에 대하여 기존에 어디까지 소프트웨어 업그레이드가 이루어졌는지 정보를 저장한다. 예를 들어, 디바이스 식별정보 dev_ID_311, 즉 단독형 방송장비(311)에 대해서는 기존에 1.03b02 버전까지 소프트웨어 업그레이드를 한 기록이 있는 것이다. 가령 단독형 방송장비(311)의 제품 모델이 'AAA'라면 최신 소프트웨어 버전이 1.03b03이므로 소프트웨어 업그레이드를 할 필요성이 있는 것이다.The
[도 5]는 소프트웨어 체계가 상이한 다수의 이기종 방송장비에 대한 소프트웨어 업그레이드를 업그레이드 서버(100)가 일괄 처리하기 위한 본 발명의 전체 프로세스를 나타내는 순서도이다.5 is a flowchart showing the entire process of the present invention for the
단계 (S110) : 먼저, 업그레이드 서버(100)가 방송장비 소프트웨어에 대한 업데이트 파일의 존재를 브로드캐스트 전송하며, 그에 따라 바람직하게는 업그레이드 서버(100)와 관련성이 있는 모든 업그레이드 클라이언트(200)와 네트워크형 방송장비(400)가 이를 수신한다.Step S110: First, the
단계 (S120) : 업그레이드 클라이언트(200)는 업그레이드 서버(100)가 브로드캐스트 전송한 데이터 패킷을 수신하면 자신에게 연결된 하나이상의 단독형 방송장비(300)의 디바이스 식별정보(device_ID)를 업그레이드 서버(100)로 전송한다. 예컨대 업그레이드 클라이언트(210)는 디바이스 식별정보(dev_ID_311 ~ dev_ID_313)를 업그레이드 서버(100)로 전송한다. 본 발명에서 업그레이드 클라이언트(200)는 자신에게 연결된 단독형 방송장비(300)의 디바이스 식별정보를 저장하고 있다. 디바이스 디스커버리를 통해 획득할 수도 있지만, 방송장비 설치시에 관리자에 의해 설정될 수도 있다.Step S120: When the
단계 (S130) : 마찬가지로, 네트워크형 방송장비(400)도 브로드캐스트 전송한 데이터 패킷을 수신하면 자신의 디바이스 식별정보(device_ID)를 업그레이드 서버(100)로 전송한다. 예컨대 네트워크형 방송장비(410)는 디바이스 식별정보(dev_ID_410)를 업그레이드 서버(100)로 전송한다.Step S130: Similarly, when the network-
단계 (S140) : 이상의 과정을 통하여 업그레이드 서버(100)는 자신이 소프트웨어 업그레이드를 담당하고 있는 방송장비들(300, 400)의 디바이스 식별정보를 획득한다. 또한, 단독형 방송장비(300)에 대해서는 이들을 관리하고 있는 업그레이드 클라이언트(200)가 누구인지 그리고 어떻게 통신할 수 있는지에 관한 정보(예: IP 주소)를 식별할 수 있다. 마찬가지로, 네트워크형 방송장비(400)에 대해서도 어떻게 통신할 수 있는지에 관한 정보(예: IP 주소)를 식별할 수 있다.Step S140: Through the above process, the
이어서, 업그레이드 서버(100)는 데이터베이스를 조회하여 그 수신한 디바이스 식별정보에 대응하는 업그레이드 파일을 획득한다. 업그레이드 서버(100)가 방송장비 각각에 대하여 업그레이드 파일을 획득하는 과정에 대해서는 [도 6]을 참조하면서 후술한다. Then, the
이때, 동일한 모델의 제품(예: 동일 모델의 신디사이저)이 여러 방송 시스템에서 사용되고 있을 수 있다. 이 경우에 업그레이드 서버(100)는 복수 개의 디바이스 식별정보에 대하여 동일한 업그레이드 파일을 획득한다.At this time, products of the same model (e.g., synthesizers of the same model) may be used in various broadcasting systems. In this case, the
단계 (S150) : 업그레이드 서버(100)는 방송장비(300, 400)에 대하여 소프트웨어 업그레이드를 기동시키기 위해 각각 매칭되는 업그레이드 파일을 인터넷을 통해 전송한다. 업그레이드 서버(100)는 이 과정을 디바이스 식별정보를 기준으로 관리하는데, 이는 프로세스 관리에도 유리할 뿐만 아니라 후술하는 바와 같이 UDP 패킷 포맷을 활용하기에도 적합하기 때문이다.Step S150: The
먼저, 단독형 방송장비(300)와 관련하여, 업그레이드 서버(100)는 각각의 디바이스 식별정보에 대응하는 업그레이드 파일을 앞서의 단계 (S120)에서 해당 디바이스 식별정보를 업그레이드 서버(100)로 제공하였던 업그레이드 클라이언트(200)로 전송한다. 예를 들면, 업그레이드 서버(100)는 3개의 디바이스 식별정보 dev_ID_311 내지 dev_ID_313 각각에 대응하는 업그레이드 파일 3개를 업그레이드 클라이언트(210)로 전송한다.First, regarding the stand-
또한, 네트워크형 방송장비(400)와 관련하여, 업그레이드 서버(100)는 각각의 디바이스 식별정보에 대응하는 업그레이드 파일을 앞서의 단계 (S130)에서 해당 디바이스 식별정보를 업그레이드 서버(100)로 제공하였던 네트워크형 방송장비(400)로 전송한다.In connection with the network-
이때, 동일한 모델의 제품(예: 동일 모델의 신디사이저)이 여러 방송 시스템에서 사용되고 있을 수 있다. 이 경우에 업그레이드 서버(100)는 동일한 업그레이드 파일을 개별적으로 복수 개의 디바이스 식별정보에 대해 전송할 수 있다. 그러나, 보다 바람직하게는 한번의 UDP 패킷 스트리밍으로 복수 개의 디바이스 식별정보에 대해 업그레이드 파일을 전송할 수도 있다. 이 경우에는 복수 개의 디바이스 식별정보를 UDP 패킷 스트리밍의 데스티네이션으로 삼아 전송한다.At this time, products of the same model (e.g., synthesizers of the same model) may be used in various broadcasting systems. In this case, the
단계 (S160) : 그에 따라, 업그레이드 클라이언트(200)는 자신에게 연결된 하나이상의 단독형 방송장비(300)에 대해 각각의 디바이스 식별정보를 참조하여 그 대응하는 업그레이드 파일을 다운로드 설치함으로써 순차적으로 소프트웨어 업그레이드를 실행한다. 예를 들면, 업그레이드 클라이언트(210)는 단독형 방송장비(311 ~ 313)에 대한 업그레이드 파일 3개를 업그레이드 서버(100)로부터 제공받으며, 그에 따라 각각의 업그레이드 파일을 그 대응하는 단독형 방송장비(311 ~ 313)로 다운로드 설치한다.Step S160: The
단계 (S170) : 또한, 네트워크형 방송장비(400)는 업그레이드 서버(100)로부터 제공받은 업그레이드 파일을 내부 설치함으로써 소프트웨어 업그레이드를 실행한다.Step S170: The network-
[도 6]은 본 발명에서 업그레이드 서버(100)가 디바이스 식별정보에 대해 그에 대응하는 업그레이드 파일(upgrade file data)을 다루는 과정의 일 구현예를 나타내는 순서도이다. [도 6]은 디바이스 식별정보 하나에 대해 순서도가 작성된 것인데, 디바이스 식별정보가 복수 개인 경우에는 [도 6]에 도시된 과정을 그 갯수만큼 반복하면 된다.6 is a flowchart illustrating an exemplary process of the
단계 (S210) : 먼저, 업그레이드 서버(100)는 개별 방송장비에 대하여 기존에 어디까지 소프트웨어 업그레이드가 이루어졌는지 정보를 저장하는 업그레이드 내역 데이터베이스(120)를 조회하여 디바이스 식별정보에 대응하는 설치 버전 정보를 획득한다. 예를 들어, 디바이스 식별정보가 dev_ID_311인 단독형 방송장비(311)는 기존에 1.03b02까지 소프트웨어 업그레이드가 이루어졌다는 사실을 업그레이드 서버(100)가 인식하게 된다.Step S210: First, the
단계 (S220) : 업그레이드 서버(100)는 디바이스 식별정보로부터 제품 모델 정보를 획득한다. 디바이스 식별정보에 대응하는 제품 모델 정보의 관계는 업그레이드 서버(100)에 미리 제공되어 있다고 가정한다. 예를 들어, 디바이스 식별정보 dev_ID_311의 모델 넘버는 'AAA'이다.Step S220: The
단계 (S230) : 업그레이드 서버(100)는 방송장비의 제품 모델 별로 최신의 소프트웨어 버전 넘버와 해당 업그레이드 파일을 저장하는 업그레이드 파일 데이터베이스(110)를 조회하여 단계 (S220)에서 획득한 제품 모델 정보에 대응하는 업그레이드 파일 및 업그레이드 버전 정보를 획득한다. 단독형 방송장비(311)를 예로 들면, 단계 (S220)에서 디바이스 식별정보 dev_ID_311의 모델 넘버는 'AAA'이라고 식별되었기에 업그레이드 파일은 upgrade_file_aaa 이고 그 파일의 업그레이드 버전 정보는 1.03b03 이 된다.Step S230: The
이때, 동일한 모델의 제품(예: 동일 모델의 신디사이저)이 여러 방송 시스템에서 사용되고 있을 수 있다. 이 경우에 업그레이드 서버(100)는 복수 개의 디바이스 식별정보에 대하여 동일한 업그레이드 파일 및 동일한 업그레이드 버전 정보를 획득하도록 구성될 수 있다.At this time, products of the same model (e.g., synthesizers of the same model) may be used in various broadcasting systems. In this case, the
단계 (S240) : 업그레이드 서버(100)가 설치 버전 정보에 비해 업그레이드 버전 정보가 업데이트된 경우에는 업그레이드 파일을 디바이스 식별정보에 대응하는 업그레이드 파일로 설정한다. 단독형 방송장비(311)를 예로 들면, 기존에 1.03b02까지 소프트웨어 업그레이드가 이루어졌음에 반해 최신의 업그레이드 정보는 1.03b03 이므로 upgrade_file_aaa를 디바이스 식별정보 dev_ID_311에 대응하는 업그레이드 파일로 설정한다.Step S240: If the
그에 따라, 업그레이드 서버(100)는 업그레이드 파일 upgrade_file_aaa를 업그레이드 파일 데이터베이스(110)로부터 읽어들여 인터넷을 통해 그 방송장비가 연결되어 있는 업그레이드 클라이언트(210)으로 전송한다. 한편, 네트워크형 방송장비(예: 430)에 대해서는 업그레이드 파일 upgrade_file_ccc를 업그레이드 파일 데이터베이스(110)로부터 읽어들여 인터넷을 통해 네트워크형 방송장비(예: 430)로 직접 전송한다.Accordingly, the
단계 (S250) : 업그레이드 파일을 업그레이드 서버(100)로부터 제공받으면, 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)는 방송장비 각각에 대해 그 매칭되는 업그레이드 파일을 설치하여 소프트웨어 업그레이드를 실행한다. 업그레이드 클라이언트(200)는 자신에게 연결된 하나이상의 단독형 방송장비(300)에 대해 각각의 디바이스 식별정보를 참조하여 그 대응하는 업그레이드 파일을 다운로드 설치한다. 네트워크형 방송장비(400)는 업그레이드 파일을 내부 설치하여 소프트웨어 업그레이드를 실행한다.Step S250: When the upgrade file is received from the
단계 (S260, S270) : 그리고 나서, 업그레이드 서버(100)는 업그레이드 클라이언트(200) 또는 네트워크형 방송장비(400)로부터 소프트웨어 업그레이드의 정상 처리 결과를 제공받는다.Steps S260 and S270: The
소프트웨어 업그레이드가 정상 처리됨이 확인되면 업그레이드 서버(100)는 업그레이드 내역 데이터베이스(120)에 대하여 디바이스 식별정보에 대응하는 설치 버전 정보를 업그레이드 버전 정보로 업데이트한다. 단독형 방송장비(311)의 경우, 업그레이드 내역 데이터베이스(120)에서 디바이스 식별정보 dev_ID_311에 대한 설치 버전 값이 1.03b03 으로 업데이트 된다.If it is confirmed that the software upgrade is normally performed, the
[도 7]은 본 발명에서 업그레이드 서버(100)가 세션 식별정보(session_ID) 별로 그에 대응하는 업그레이드 파일(upgrade file data)을 전송하는 과정의 일 구현예를 나타내는 순서도이다.7 is a flowchart illustrating an exemplary process of the
단계 (S310) : 먼저, 업그레이드 서버(100)가 방송장비 소프트웨어에 대한 업데이트 파일의 존재를 UDP 패킷으로 브로드캐스트 전송하며, 그에 따라 바람직하게는 업그레이드 서버(100)와 관련성이 있는 모든 업그레이드 클라이언트(200)와 네트워크형 방송장비(400)가 이를 수신한다.Step S310: First, the
본 발명에서는 업그레이드 서버(100)와 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400) 간의 데이터 송수신을 위해 TCP/IP 방식보다는 UDP/IP 방식을 채택하는 것이 바람직하다. 이는 한대의 업그레이드 서버(100)가 담당하는 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)의 갯수가 매우 많다는 전제에서 따른 것이다. 예컨대 10000 대의 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)에 대해 TCP/IP 방식으로 데이터 송수신하려면 업그레이드 서버(100)가 대단히 고성능이어야 한다.In the present invention, it is preferable to employ UDP / IP rather than TCP / IP for data exchange between the
그에 따라, 업그레이드 파일을 전송하거나 혹은 약간의 정보를 전송하는 것과 같이 그 속성상 TCP/IP 방식이 적합해보이는 데이터 송수신에 대해서도 본 발명에서는 UDP/IP 방식이 바람직하다.Accordingly, the UDP / IP scheme is preferable in the present invention for data transmission / reception in which the TCP / IP scheme is suitable for the attribute, such as transmission of an upgrade file or transmission of a small amount of information.
단계 (S320) : 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)가 방송장비(300, 400)의 디바이스 식별정보(device_ID)를 업그레이드 서버(100)로 전송한다. 업그레이드 클라이언트(200)는 자신에게 연결된 단독형 방송장비(300)의 디바이스 식별정보를 저장하고 있으며, 네트워크형 방송장비(400)는 자신의 디바이스 식별정보를 저장하고 있다.Step S320: The
단계 (S330, S340) : 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 세션 식별정보(session_ID)를 할당하고, 각각의 디바이스 식별정보에 대해 해당 디바이스 식별정보를 전송한 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)에 대해 각각 할당된 세션 식별정보를 알린다. 세션 식별정보는 현재 진행중인 하나의 데이터 송수신 채널을 특정하기 위한 정보이며, 보안을 위하여 통상적인 소프트웨어 업그레이드 소요 시간(예: 5분) 동안에만 유효한 정보로 관리되는 것이 바람직하다. 이 경우에는 세션 식별정보를 할당한 후에 해당 시간이 경과하면 타임아웃이 발생한다.Steps S330 and S340: The
한편, 본 발명에서는 업그레이드 서버(100)가 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)와 데이터 송수신을 수행할 때에 디바이스 식별정보 또는 세션 식별정보를 활용한다. 이는 UDP/IP는 일종의 스트리밍 방식으로서 프로토콜이 규정되어 있으므로 데이터 송수신의 데스티네이션 설정에 이들 정보가 효과적이기 때문이다.Meanwhile, in the present invention, the
단계 (S350, S360) : 업그레이드 서버(100)는 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송한다. 이때, 해당 디바이스 식별정보에 할당된 세션 식별정보를 UDP 패킷의 특정 필드에 삽입함으로써 그 UDP 패킷의 데스티네이션을 다른 디바이스들이 식별할 수 있도록 해준다.Steps S350 and S360: The
이때, 동일한 모델의 제품(예: 동일 모델의 신디사이저)이 여러 방송 시스템에서 사용되고 있을 수 있다. 이 경우에 업그레이드 서버(100)는 동일한 업그레이드 파일을 개별적으로 복수 개의 방송장비에 대해 전송할 수 있다. 그러나, 보다 바람직하게는 한번의 UDP 패킷 스트리밍으로 복수 개의 방송장비에 대해 업그레이드 파일을 전송할 수도 있다. 이 경우에는 복수 개의 방송장비에 할당된 복수 개의 세션 식별정보를 UDP 패킷에 모두 삽입하여 전송한다.At this time, products of the same model (e.g., synthesizers of the same model) may be used in various broadcasting systems. In this case, the
이에 상응하여, 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)는 자신에게 할당된 세션 식별정보에 대응하는 복수 개의 UDP 패킷을 식별하면 그 UDP 패킷의 페이로드를 수집하여 업그레이드 파일을 획득한다. 특정의 업그레이드 파일에 관련된 모든 UDP 패킷을 정상적으로 송수신한다면 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)는 자신에게 업그레이드 서버(100)가 전송한 업그레이드 파일을 정상 획득하게 될 것이다.In response, the
단계 (S370) : 업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)는 자신의 세션 식별정보에 대응하는 UDP 패킷을 수신하면 그 UDP 패킷에 대해 무결성 체크, 예컨대 CRC 체크를 수행한다. 인터넷(네트워크)는 송수신 오류가 자주 발생하는 전송매체이므로 UDP 패킷이 정상적으로 송수신되었는지를 확인하는 것이다.Step S370: When the
단계 (S380) : 무결성 체크에서 정상으로 판별되면 해당 UDP 패킷의 페이로드는 정상적으로 활용한다. 반대로, 무결성 체크를 통해 UDP 패킷에 오류를 발견하는 경우에는 업그레이드 서버(100)로 재전송을 요구해야 한다. TCP/IP 방식에서는 재전송 요구가 프로토콜에 포함되어 있지만, UDP/IP는 기본적으로 재전송이 불필요한 분야에서 적용되는 기술이다. 그에 따라, 본 발명에서는 나름대로 최적화된 재전송 프로토콜을 제시한다.Step S380: If the integrity check is determined to be normal, the payload of the corresponding UDP packet is utilized normally. Conversely, if an error is detected in the UDP packet through the integrity check, the
업그레이드 클라이언트(200) 및 네트워크형 방송장비(400)는 무결성 체크에서 오류가 발견된 UDP 패킷에 대해서는 그 UDP 패킷에 지정되어 있는 세션 식별정보를 특정하면서 해당 페이로드의 재전송 요구를 업그레이드 서버(100)로 전송한다. 이 재전송 요구는 바람직하게는 UDP 패킷으로 전송하며, 특정 필드에 해당 세션 식별정보를 삽입함으로써 그 요구 내역을 업그레이드 서버(100)가 파악할 수 있도록 보조한다.The
단계 (S390) : 업그레이드 서버(100)는 특정 페이로드에 대한 재전송 요구를 수신하면 그 재전송 요구에 포함된 세션 식별정보의 유효성을 확인한 후에 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 그 재전송 요구된 페이로드를 UDP 패킷으로 브로드캐스트 전송한다.Step S390: Upon receiving the retransmission request for the specific payload, the
이때, 업그레이드 서버(100)는 업그레이드 클라이언트(200) 또는 네트워크형 방송장비(400)로부터 UDP 패킷을 수신하면 그 수신한 UDP 패킷에 포함된 세션 식별정보가 자신이 기발행하고 유효한 세션 식별정보에 해당하는지 여부를 확인하고, 만일 기발행한 세션 식별정보가 아니거나 타임아웃에 의해 무효화된 세션 식별정보인 경우에는 그 수신한 UDP 패킷에 대응하는 UDP 전송을 제한하도록 구성되는 것이 바람직하다.At this time, when the
한편, 본 발명은 컴퓨터가 읽을 수 있는 비휘발성 기록매체에 컴퓨터가 읽을 수 있는 코드의 형태로 구현되는 것이 가능하다. 이러한 비휘발성 기록매체는 컴퓨터가 읽을 수 있는 데이터를 저장하는 모든 종류의 스토리지 장치를 포함하는데 예컨대 하드디스크, SSD, CD-ROM, NAS, 자기테이프, 웹디스크, 클라우드 디스크 등이 있고 네트워크로 연결된 다수의 스토리지 장치에 코드가 분산 저장되고 실행되는 형태로 구현될 수도 있다.Meanwhile, the present invention can be embodied in the form of computer readable code on a computer-readable non-volatile recording medium. Such a non-volatile recording medium includes all kinds of storage devices for storing computer-readable data such as a hard disk, an SSD, a CD-ROM, a NAS, a magnetic tape, a web disk, a cloud disk, The code may be distributed and stored in the storage device of the computer.
100 : 업그레이드 서버
110 : 업그레이드 파일 데이터베이스
120 : 업그레이드 내역 데이터베이스
200 : 업그레이드 클라이언트
300 : 단독형 방송장비
400 : 네트워크형 방송장비100: Upgrade Server
110: Upgrade file database
120: Upgrade History Database
200: Upgrade Client
300: Stand-alone broadcasting equipment
400: network type broadcast equipment
Claims (8)
상기 업그레이드 서버(100)가 상기 다수의 이기종 방송장비와 관련된 방송장비 소프트웨어에 대한 업데이트 파일의 존재를 UDP 패킷으로 인터넷에 브로드캐스트 전송하는 제 1 단계;
하나이상의 단독형 방송장비(300)가 디지털 인터페이스로 연결되어 있는 디지털 디바이스에 설치된 하나이상의 업그레이드 클라이언트(200)가 상기 브로드캐스트를 수신하면 자신에게 연결된 하나이상의 단독형 방송장비(300)의 디바이스 식별정보(device_ID)를 상기 업그레이드 서버(100)로 전송하는 제 2 단계;
복수의 네트워크형 방송장비(400)가 상기 브로드캐스트를 수신하면 각자 자신의 디바이스 식별정보(device_ID)를 인터넷을 통해 상기 업그레이드 서버(100)로 전송하는 제 A 단계;
상기 업그레이드 서버(100)가 데이터베이스를 조회하여 상기 업그레이드 클라이언트(200) 및 상기 네트워크형 방송장비(400)로부터 제공받은 복수의 디바이스 식별정보에 대응하는 업그레이드 파일을 획득하는 제 3 단계;
상기 업그레이드 서버(100)가 상기 업그레이드 클라이언트(200)로부터 제공받은 디바이스 식별정보 각각에 대하여 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 해당 디바이스 식별정보를 전송한 업그레이드 클라이언트(200)로 전송하는 제 4 단계;
상기 업그레이드 클라이언트(200)가 자신에게 연결된 하나이상의 단독형 방송장비(300)에 대해 각각의 디바이스 식별정보를 참조하여 그 대응하는 상기 업그레이드 파일을 다운로드 설치함으로써 순차적으로 소프트웨어 업그레이드를 실행하는 제 5 단계;
상기 업그레이드 서버(100)가 상기 네트워크형 방송장비(400)로부터 제공받은 디바이스 식별정보 각각에 대하여 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 해당 디바이스 식별정보를 전송한 네트워크형 방송장비(400)로 전송하는 제 6 단계;
상기 네트워크형 방송장비(400)가 그 수신한 업그레이드 파일을 내부 설치함으로써 소프트웨어 업그레이드를 실행하는 제 7 단계;
를 포함하여 구성되고,
상기 제 4 단계는,
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 세션 식별정보(session_ID)를 할당하는 단계;
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 해당 디바이스 식별정보를 전송한 업그레이드 클라이언트(200)에 대해 각각 할당된 세션 식별정보를 알리는 단계;
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 할당된 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하는 단계;
상기 업그레이드 클라이언트(200)가 자신에게 할당된 세션 식별정보에 대응하는 복수 개의 UDP 패킷을 식별하면 그 UDP 패킷의 페이로드를 수집하여 업그레이드 파일을 획득하는 단계;
상기 업그레이드 클라이언트(200)는 무결성 체크를 통해 상기 UDP 패킷에 오류를 발견하는 경우에 상기 발견된 오류와 관련된 세션 식별정보를 특정하면서 상기 오류가 발견된 페이로드의 재전송 요구를 상기 업그레이드 서버(100)로 전송하는 단계;
상기 업그레이드 서버(100)는 특정 페이로드에 대한 상기 재전송 요구를 수신하면 그 재전송 요구에 포함된 세션 식별정보의 유효성을 확인한 후에 상기 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 상기 재전송 요구된 페이로드를 UDP 패킷으로 브로드캐스트 전송하는 단계;
를 포함하여 구성되고,
상기 제 6 단계는,
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 세션 식별정보(session_ID)를 할당하는 단계;
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대해 해당 디바이스 식별정보를 전송한 네트워크형 방송장비(400)에 대해 각각 할당된 세션 식별정보를 알리는 단계;
상기 업그레이드 서버(100)가 각각의 디바이스 식별정보에 대하여 해당 디바이스 식별정보에 할당된 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 해당 디바이스 식별정보에 대응하는 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하는 단계;
상기 네트워크형 방송장비(400)가 자신에게 할당된 세션 식별정보에 대응하는 복수 개의 UDP 패킷을 식별하면 그 UDP 패킷의 페이로드를 수집하여 업그레이드 파일을 획득하는 단계;
상기 네트워크형 방송장비(400)는 무결성 체크를 통해 상기 UDP 패킷에 오류를 발견하는 경우에 상기 발견된 오류와 관련된 세션 식별정보를 특정하면서 상기 오류가 발견된 페이로드의 재전송 요구를 상기 업그레이드 서버(100)로 전송하는 단계;
상기 업그레이드 서버(100)는 특정 페이로드에 대한 상기 재전송 요구를 수신하면 그 재전송 요구에 포함된 세션 식별정보의 유효성을 확인한 후에 상기 세션 식별정보를 UDP 패킷의 특정 필드에 삽입한 상태로 상기 재전송 요구된 페이로드를 UDP 패킷으로 브로드캐스트 전송하는 단계;
를 포함하여 구성되고,
상기 업그레이드 서버(100)는 동일한 업그레이드 파일에 대응하는 디바이스 식별정보가 복수 개인 경우에 해당 복수 개의 디바이스 식별정보에 할당된 복수 개의 세션 식별정보를 UDP 패킷의 특정 필드에 모두 삽입한 상태로 상기 업그레이드 파일을 UDP 패킷으로 브로드캐스트 전송하도록 구성되는 다수의 이기종 방송장비를 위한 소프트웨어 일괄 업그레이드 처리 방법.
A plurality of network-type broadcast equipment 400 having an Internet access function and a plurality of stand-alone broadcast equipment 300 lacking an internet connection function are installed in a remote upgrade server 100, As a batch processing method,
A first step in which the upgrade server 100 broadcasts the existence of an update file for broadcasting equipment software related to the plurality of heterogeneous broadcasting devices to the Internet as a UDP packet;
When at least one upgrade client 200 installed in a digital device connected to one or more standalone broadcast equipment 300 through a digital interface receives the broadcast, device identification information of at least one standalone broadcast equipment 300 connected thereto (device_ID) to the upgrade server (100);
When a plurality of network-type broadcast equipment (400) receives the broadcast, transmitting its own device identification information (device_ID) to the upgrade server (100) via the Internet;
A third step of the upgrade server (100) inquiring a database to acquire an upgrade file corresponding to a plurality of device identification information provided from the upgrade client (200) and the network type broadcast equipment (400);
The upgrade server 100 transmits the upgrade file corresponding to the device identification information to the upgrade client 200 that has transmitted the device identification information for each device identification information provided from the upgrade client 200 ;
A fifth step of successively performing a software upgrade by downloading the corresponding upgrade file by referring to each device identification information for one or more stand-alone broadcasting equipment 300 connected to the upgrade client 200;
The upgrade server 100 transmits an upgrade file corresponding to the device identification information to each of the device identification information provided from the network type broadcast equipment 400 to the network type broadcast equipment 400 that has transmitted the device identification information ;
A seventh step of performing software upgrade by internally installing the upgrade file received by the network-type broadcast equipment 400;
And,
In the fourth step,
The upgrade server 100 allocating session identification information (session_ID) to each device identification information;
The upgrade server 100 notifying the session identification information allocated to the upgrade client 200 that has transmitted the device identification information to each device identification information;
The upgrade server 100 inserts the session identification information allocated to the device identification information into the specific field of the UDP packet for each device identification information and broadcasts the upgrade file corresponding to the device identification information as a UDP packet Transmitting;
If the upgrade client 200 identifies a plurality of UDP packets corresponding to the session identification information assigned to the upgrade client 200, acquiring an upgrade file by collecting a payload of the UDP packet;
When the upgrade client 200 detects an error in the UDP packet through the integrity check, the upgrade client 200 identifies the session identification information related to the found error and transmits a retransmission request of the payload in which the error is found to the upgrade server 100 ;
Upon receiving the retransmission request for a specific payload, the upgrade server 100 confirms the validity of the session identification information included in the retransmission request, inserts the session identification information into a specific field of the UDP packet, Broadcasting the payload to a UDP packet;
And,
In the sixth step,
The upgrade server 100 allocating session identification information (session_ID) to each device identification information;
Notifying the upgrade server 100 of the session identification information allocated to the network-type broadcast equipment 400 that has transmitted the device identification information for each device identification information;
The upgrade server 100 inserts the session identification information allocated to the device identification information into the specific field of the UDP packet for each device identification information and broadcasts the upgrade file corresponding to the device identification information as a UDP packet Transmitting;
If the network-type broadcast equipment 400 identifies a plurality of UDP packets corresponding to the session identification information allocated to the network-based broadcasting equipment 400, collecting a payload of the UDP packet to obtain an upgrade file;
When the network-type broadcast equipment 400 detects an error in the UDP packet through an integrity check, the network-type broadcast equipment 400 specifies the session identification information related to the found error, and transmits a retransmission request of the payload in which the error is found to the upgrade server 100);
Upon receiving the retransmission request for a specific payload, the upgrade server 100 confirms the validity of the session identification information included in the retransmission request, inserts the session identification information into a specific field of the UDP packet, Broadcasting the payload to a UDP packet;
And,
When the upgrade server 100 has a plurality of device identification information corresponding to the same upgrade file, the upgrade server 100 inserts a plurality of session identification information allocated to the plurality of device identification information in a specific field of a UDP packet, To a UDP packet. The method of claim 1,
상기 제 2 단계 이전에 수행되는,
상기 업그레이드 클라이언트(200)가 자신에게 연결된 하나이상의 단독형 방송장비(300)의 디바이스 식별정보(device_ID)를 저장하는 단계;
를 더 포함하여 구성되는 것을 특징으로 하는 다수의 이기종 방송장비를 위한 소프트웨어 일괄 업그레이드 처리 방법.
The method according to claim 1,
The method of claim 1,
Storing the device identification information (device_ID) of the at least one stand-alone broadcasting equipment (300) connected to the upgrade client (200);
The method of claim 1, further comprising the steps of:
상기 제 3 단계는,
상기 업그레이드 서버(100)가 업그레이드 내역 데이터베이스(120)를 조회하여 상기 디바이스 식별정보에 대응하는 설치 버전 정보를 획득하는 단계;
상기 업그레이드 서버(100)가 상기 디바이스 식별정보로부터 제품 모델 정보를 획득하는 단계;
상기 업그레이드 서버(100)가 업그레이드 파일 데이터베이스(110)를 조회하여 상기 제품 모델 정보에 대응하는 업그레이드 파일 및 업그레이드 버전 정보를 획득하는 단계;
상기 업그레이드 서버(100)가 상기 설치 버전 정보에 비해 상기 업그레이드 버전 정보가 업데이트된 경우에는 상기 업그레이드 파일을 상기 디바이스 식별정보에 대응하는 업그레이드 파일로 설정하는 단계;
를 포함하여 구성되고,
상기 제 5 단계 이후에 수행되는,
상기 업그레이드 서버(100)는 소프트웨어 업그레이드의 정상 처리 결과를 수신하면 상기 업그레이드 내역 데이터베이스(120)에 대하여 상기 디바이스 식별정보에 대응하는 설치 버전 정보를 상기 업그레이드 버전 정보로 업데이트하는 단계;
를 더 포함하여 구성되는 것을 특징으로 하는 다수의 이기종 방송장비를 위한 소프트웨어 일괄 업그레이드 처리 방법.
The method according to claim 1,
In the third step,
The upgrade server (100) inquiring the upgrade history database (120) and obtaining installation version information corresponding to the device identification information;
The upgrade server (100) acquiring product model information from the device identification information;
Retrieving the upgrade file database (110) from the upgrade server (100) and obtaining an upgrade file and upgrade version information corresponding to the product model information;
Setting the upgrade file as an upgrade file corresponding to the device identification information when the upgrade server 100 updates the upgrade version information with respect to the installed version information;
And,
The method according to claim 1,
The upgrading server 100 updates the upgrade version database 120 with the upgrade version information corresponding to the device identification information when receiving the normal processing result of the software upgrade,
The method of claim 1, further comprising the steps of:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170081505A KR101818977B1 (en) | 2017-06-27 | 2017-06-27 | Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170081505A KR101818977B1 (en) | 2017-06-27 | 2017-06-27 | Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101818977B1 true KR101818977B1 (en) | 2018-01-16 |
Family
ID=61066936
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170081505A KR101818977B1 (en) | 2017-06-27 | 2017-06-27 | Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101818977B1 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491956A (en) * | 2020-10-27 | 2021-03-12 | 深圳市广和通无线股份有限公司 | Method and device for upgrading communication module in Internet of things equipment and computer equipment |
CN112540783A (en) * | 2020-12-18 | 2021-03-23 | 航天信息软件技术有限公司 | Client upgrading method and device, storage medium and electronic equipment |
CN112799705A (en) * | 2021-02-07 | 2021-05-14 | 河南信大网御科技有限公司 | Simulation structure system upgrading method |
CN112988196A (en) * | 2021-04-07 | 2021-06-18 | 浙江三一装备有限公司 | Operating machine program upgrading device, method and system |
CN113791804A (en) * | 2021-09-14 | 2021-12-14 | 中元汇吉生物技术股份有限公司 | Method and device for parallel upgrading of multiple instruments, computer equipment and storage medium |
CN114398055A (en) * | 2021-12-31 | 2022-04-26 | 南京理控物联技术有限公司 | Single-lamp controller firmware remote batch upgrading device and upgrading method |
CN115426262A (en) * | 2022-08-23 | 2022-12-02 | 西安超越申泰信息科技有限公司 | Switch batch upgrading method and device |
CN117270917A (en) * | 2023-11-22 | 2023-12-22 | 荣耀终端有限公司 | Software upgrading method and electronic equipment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4991818B2 (en) * | 2009-10-05 | 2012-08-01 | シャープ株式会社 | Software update system, display unit, and software update method |
-
2017
- 2017-06-27 KR KR1020170081505A patent/KR101818977B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4991818B2 (en) * | 2009-10-05 | 2012-08-01 | シャープ株式会社 | Software update system, display unit, and software update method |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112491956A (en) * | 2020-10-27 | 2021-03-12 | 深圳市广和通无线股份有限公司 | Method and device for upgrading communication module in Internet of things equipment and computer equipment |
CN112491956B (en) * | 2020-10-27 | 2023-05-09 | 深圳市广和通无线股份有限公司 | Upgrading method and device of communication module in Internet of things equipment and computer equipment |
CN112540783A (en) * | 2020-12-18 | 2021-03-23 | 航天信息软件技术有限公司 | Client upgrading method and device, storage medium and electronic equipment |
CN112540783B (en) * | 2020-12-18 | 2024-05-24 | 航天信息软件技术有限公司 | Client upgrading method and device, storage medium and electronic equipment |
CN112799705A (en) * | 2021-02-07 | 2021-05-14 | 河南信大网御科技有限公司 | Simulation structure system upgrading method |
CN112988196A (en) * | 2021-04-07 | 2021-06-18 | 浙江三一装备有限公司 | Operating machine program upgrading device, method and system |
CN113791804B (en) * | 2021-09-14 | 2024-04-26 | 中元汇吉生物技术股份有限公司 | Method, device, computer equipment and storage medium for parallel upgrading of multipath instruments |
CN113791804A (en) * | 2021-09-14 | 2021-12-14 | 中元汇吉生物技术股份有限公司 | Method and device for parallel upgrading of multiple instruments, computer equipment and storage medium |
CN114398055A (en) * | 2021-12-31 | 2022-04-26 | 南京理控物联技术有限公司 | Single-lamp controller firmware remote batch upgrading device and upgrading method |
CN114398055B (en) * | 2021-12-31 | 2023-11-03 | 南京理控物联技术有限公司 | Remote batch upgrading device and upgrading method for single-lamp controller firmware |
CN115426262A (en) * | 2022-08-23 | 2022-12-02 | 西安超越申泰信息科技有限公司 | Switch batch upgrading method and device |
CN117270917B (en) * | 2023-11-22 | 2024-04-12 | 荣耀终端有限公司 | Software upgrading method and electronic equipment |
CN117270917A (en) * | 2023-11-22 | 2023-12-22 | 荣耀终端有限公司 | Software upgrading method and electronic equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101818977B1 (en) | Method of providing batch process of software upgrade for pluralities of heterogeneous broadcasting equipments | |
JP5296221B2 (en) | Method for installing application in NFC-compatible device, NFC-compatible device, server node, computer-readable medium, and computer program | |
CN107404544B (en) | Method and apparatus for IP address assignment | |
CN103152206A (en) | Method and system for updating multiple devices | |
US10848533B2 (en) | Remotely configurable wireless broadcast device | |
US7739396B2 (en) | System, method and program for field service of computers | |
US20130275956A1 (en) | Firmware upgrade method and system and terminal device using the method | |
US20150220318A1 (en) | Wireless firmware upgrades to an alarm security panel | |
CN108282546B (en) | System and method for correlating configuration data with an IP camera | |
CN106911729A (en) | A kind of operating system remote installation method suitable for domestic processor | |
CN101360127A (en) | File updating method and transmission system | |
US11558283B2 (en) | Information collecting system and information collecting method | |
CN103973474A (en) | Network terminal update configuration method | |
JP2021184308A (en) | Device and method for remotely managing apparatus, and program therefor | |
US20200014591A1 (en) | Method and system of device deployment integrating with automatic configuration and asset management | |
CN111638891A (en) | Equipment upgrading method and device, terminal equipment and storage medium | |
CN114090033A (en) | OTA (over the air) upgrading method and device, electronic equipment and readable medium | |
TWI534635B (en) | Cloud service system and method thereof | |
CN107968725B (en) | Method and device for returning and configuring configuration information of home gateway unit type terminal device | |
CN111683114A (en) | Method and device for upgrading equipment program, terminal equipment and storage medium | |
CN105071965A (en) | Management system of network equipment | |
JP4944278B2 (en) | Access control method, access control apparatus, and access control program | |
CN105808268B (en) | Information processing method, electronic equipment and system | |
CN105049259A (en) | Network equipment, and server, system and method used for network equipment | |
KR20120066395A (en) | System and method for supporting of network service |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |