KR101319890B1 - Method, apparatus and system for upgrading software - Google Patents

Method, apparatus and system for upgrading software Download PDF

Info

Publication number
KR101319890B1
KR101319890B1 KR1020070016130A KR20070016130A KR101319890B1 KR 101319890 B1 KR101319890 B1 KR 101319890B1 KR 1020070016130 A KR1020070016130 A KR 1020070016130A KR 20070016130 A KR20070016130 A KR 20070016130A KR 101319890 B1 KR101319890 B1 KR 101319890B1
Authority
KR
South Korea
Prior art keywords
software
broadcast receiver
information
communication device
host
Prior art date
Application number
KR1020070016130A
Other languages
Korean (ko)
Other versions
KR20080076337A (en
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 KR1020070016130A priority Critical patent/KR101319890B1/en
Publication of KR20080076337A publication Critical patent/KR20080076337A/en
Application granted granted Critical
Publication of KR101319890B1 publication Critical patent/KR101319890B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/458Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
    • H04N21/4586Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8166Monomedia components thereof involving executable data, e.g. software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • 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/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]

Abstract

본 발명은 소프트웨어 업그레이드(software upgrade)에 관한 것으로, 본 발명에 따라 소프트웨어 매니저(software manager)와 네트워크(network)로 연결된 방송 수신기(broadcast receiver)에 구비된 커뮤니케이션 디바이스(communication device)의 소프트웨어를 업그레이드하는 방법의 일 예는, 상기 소프트웨어 매니저에서 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 상기 네트워크를 관리할 수 있는 네트워크 관리 프로토콜에 따라 상기 방송 수신기로 요청(request)하는 단계; 상기 방송 수신기에서 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 수집하여 상기 네트워크 관리 프로토콜에 따라 상기 소프트웨어 매니저로 응답(response)하는 단계; 상기 소프트웨어 매니저에서 상기 방송 수신기의 응답에 따라 업그레이드할 소프트웨어를 상기 방송 수신기로 전송하는 단계; 상기 방송 수신기에서 상기 전송된 소프트웨어를 저장하는 단계; 및 상기 커뮤니케이션 디바이스에서 상기 방송 수신기에 저장된 소프트웨어를 읽어 와 상기 방송 수신기 재부팅(rebooting) 시에 상기 읽어 온 소프트웨어로 작동하여 업그레이드하는 단계를 포함함을 특징으로 한다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a software upgrade, which upgrades the software of a communication device provided in a broadcast receiver networked with a software manager in accordance with the present invention. An example of the method comprises: requesting, at the software manager, the information about the software of the communication device to the broadcast receiver according to a network management protocol capable of managing the network; Collecting information about the software of the communication device by the broadcast receiver and responding to the software manager according to the network management protocol; Transmitting, by the software manager, software to be upgraded according to a response of the broadcast receiver to the broadcast receiver; Storing the transmitted software at the broadcast receiver; And reading, by the communication device, software stored in the broadcast receiver and operating and upgrading the read software at the time of rebooting the broadcast receiver.

오픈 케이블, 케이블 헤드엔드, 호스트, SNMP, 케이블 모뎀 Open Cable, Cable Headend, Host, SNMP, Cable Modem

Description

소프트웨어 업그레이드 방법, 장치 및 시스템{Method, apparatus and system for upgrading software}Software upgrade method, apparatus and system {Method, apparatus and system for upgrading software}

도 1은 본 발명과 관련하여 디지털 케이블 제품이 동작하는 환경으로써 케이블 방송 네트워크에 대한 개념을 설명하기 위해 도시한 것1 is a view illustrating a concept of a cable broadcasting network as an environment in which a digital cable product operates in connection with the present invention.

도 2는 본 발명과 관련하여 eCM과 호스트의 관계를 설명하기 위해 도시한 것2 is a diagram illustrating the relationship between an eCM and a host in relation to the present invention.

도 3a는 본 발명에 따라 구성한 호스트 소프트웨어 인포메이션 테이블의 일 예를 도시한 것3A illustrates an example of a host software information table constructed in accordance with the present invention.

도 3b는 본 발명에 따라 구성한 호스트 소프트웨어 컨트롤 테이블의 일 예를 도시한 것3B illustrates an example of a host software control table constructed in accordance with the present invention.

도 3c는 본 발명에 따라 구성한 호스트 소프트웨어 로그 테이블의 일 예를 도시한 것3C illustrates an example of a host software log table constructed in accordance with the present invention.

도 3d는 본 발명에 따라 구성한 호스트 소프트웨어 트랩 테이블의 일 예를 도시한 것3D illustrates an example of a host software trap table constructed in accordance with the present invention.

도 3e는 본 발명에 따라 구성한 호스트 소프트웨어 그룹 디바이스 테이블의 일 예를 도시한 것3E illustrates an example of a host software group device table constructed in accordance with the present invention.

도 4는 본 발명에 따라 상기 HostSoftwareControlImageType 객체의 값을 도시한 것4 illustrates the value of the HostSoftwareControlImageType object in accordance with the present invention.

도 5a 내지 5b는 본 발명에 따라 구성한 형식화된 소프트웨어 컨테이너 구조를 설명하기 위해 도시한 것Figures 5A-5B illustrate the formalized software container structure constructed in accordance with the present invention.

도 6a 내지 6b는 본 발명과 관련하여 상기 SNMP 매니지먼트 스테이션과 호스트 간의 양방향 통신 방식을 설명하기 위해 도시한 것6A to 6B illustrate two-way communication between the SNMP management station and a host in relation to the present invention.

도 7은 본 발명에 따라 소프트웨어 업그레이드를 위해 구성한 장치 및 시스템의 일 예를 도시한 것7 illustrates an example of an apparatus and system configured for software upgrade according to the present invention.

도 8은 본 발명에 따른 소프트웨어 업그레이드 방법을 설명하기 위해 도시한 순서도8 is a flowchart illustrating a software upgrade method according to the present invention.

* 도면의 주요 부분에 대한 부호의 설명DESCRIPTION OF THE REFERENCE NUMERALS

710; SNMP 매니지먼트 스테이션 720; 호스트710; SNMP management station 720; Host

730; SNMP 에이전트 740; eCM730; SNMP agent 740; eCM

750; 제 1 메모리 760; 제 2 메모리750; First memory 760; Second memory

770; OSD 유닛770; OSD unit

본 발명은 소프트웨어 업그레이드(software upgrade)에 관한 것으로, 더욱 상세하게는 오픈 케이블(OpenCable) 환경에서의 소프트웨어 업그레이드에 관한 것이다.The present invention relates to software upgrades and, more particularly, to software upgrades in an OpenCable environment.

케이블 방송 시스템(cable broadcast system)은 크게 송신부와 수신부로 나 눌 수 있다. 이때, 송신부는 케이블 방송을 전송하는 케이블 방송국일 수 있으며, 수신부는 케이블 방송을 수신하는 케이블 방송 수신기일 수 있다.A cable broadcast system can be roughly divided into a transmitter and a receiver. In this case, the transmitter may be a cable broadcast station for transmitting cable broadcast, and the receiver may be a cable broadcast receiver for receiving cable broadcast.

상기 케이블 방송국은 SO 헤드엔드(system operator headend) 또는 MSO(multiple system operator) 헤드엔드라고 불린다. 이때, SO는 종합 유선 방송 사업자(즉, 지역 케이블 TV 방송 사업자)를 지칭하며, 상기 SO를 여러 개 합친 것을 MSO라고 한다.The cable station is called a system operator headend or multiple system operator (MSO) headend. In this case, the SO refers to a general cable broadcasting service provider (ie, a local cable TV broadcasting service provider), and a combination of several SOs is called an MSO.

상기 케이블 방송 수신기는 제한 수신 시스템(conditional access system)을 포함하는 POD(Point of Deployment) 모듈이 본체로부터 분리된 오픈 케이블(open cable) 방식일 수 있다.The cable broadcast receiver may be an open cable method in which a point of deployment (POD) module including a conditional access system is separated from a main body.

오픈 케이블 환경에서 전송 단의 케이블 헤드엔드와 수신 단의 케이블 방송 수신기는 서로 원하는 데이터를 주고 받을 수 있다. 이때, 상기 케이블 방송 수신기는 상기와 같이 양방향으로 데이터를 주고 받기 위해 OOB(out of band) 튜너(tuner)를 이용하여 RDC(return data channel)를 구현하거나 커뮤니케이션 디바이스를 장착하여 네트워크 통신을 지원할 수 있다.In an open cable environment, a cable headend of a transmitting end and a cable broadcasting receiver of a receiving end may exchange desired data with each other. In this case, the cable broadcast receiver may implement a return data channel (RDC) using an out of band (OOB) tuner or transmit a data in both directions as described above, or support a network communication by mounting a communication device. .

특히, 상기에서 커뮤니케이션 디바이스를 이용하는 경우에는 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 상태 등에 관해 전송 단의 케이블 헤드엔드 측에서 알 수 있도록 하거나 필요에 따라 새로운 소프트웨어를 다운로드하거나 업그레이드할 필요가 있다.In particular, in the case of using the communication device, it is necessary to make the cable headend side of the transmitting end know about the status of the communication device software or the like, or to download or upgrade new software as necessary.

이와 관련하여, 기존에는 상기 커뮤니케이션 디바이스와 관련된 소프트웨어는 상기 커뮤니케이션 디바이스에 구비된 에이전트에서 다운로드 받았다.In this regard, software related to the communication device has previously been downloaded from an agent provided in the communication device.

그러나 소프트웨어 전송과 관련된 형식화된 컨테이너는 상기 커뮤니케이션 디바이스에 관한 소프트웨어를 다른 이미지와 합쳐서 전송하였다.However, the formalized container associated with the software delivery has delivered the software for the communication device combined with other images.

또한, 상기 커뮤니케이션 디바이스에 구비된 에이전트는 상기 전송된 컨테이너에 포함된 커뮤니케이션 디바이스에 관한 소프트웨어와 이미지를 분리할 수 없어이를 케이블 방송 수신기로 전송한 후에 상기 케이블 방송 수신기에서 분리되면, 이를 다시 재전송 받는 구조였다.In addition, the agent provided in the communication device cannot separate the software and the image related to the communication device included in the transmitted container. It was.

따라서, 기존 방식에 의할 경우 상기 커뮤니케이션 디바이스의 소프트웨어를 수신하는 과정이 불필요하게 복잡하여 효율이 떨어지는 문제가 있다.Therefore, in the conventional method, the process of receiving the software of the communication device is unnecessarily complicated and there is a problem in that efficiency is low.

이에 따라 상기와 같은 문제점을 해결하기 위해, 본 발명에서는 케이블 수신기에서 장착 내지 내장된 디바이스들에 대한 소프트웨어를 상기 케이블 방송 수신기에서 직접 다운로드 받아 상기 디바이스들에 대한 소프트웨어를 업그레이드하고자 한다.Accordingly, in order to solve the above problems, the present invention intends to upgrade the software for the devices by directly downloading the software for the devices mounted or embedded in the cable receiver from the cable broadcast receiver.

따라서, 상기 목적을 달성하기 위하여, 본 발명에 따라 소프트웨어 매니저(software manager)와 네트워크(network)로 연결된 방송 수신기(broadcast receiver)에 구비된 커뮤니케이션 디바이스(communication device)의 소프트웨어를 업그레이드(upgrade)하는 방법의 일 예는, 상기 소프트웨어 매니저에서 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 상기 네트워크를 관리할 수 있는 네트워크 관리 프로토콜에 따라 상기 방송 수신기로 요청(request)하는 단계; 상기 방송 수신기에서 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 수집하여 상기 네트워크 관리 프로토콜에 따라 상기 소프트웨어 매니저로 응답(response)하는 단계; 상기 소프트웨어 매니저에서 상기 방송 수신기의 응답에 따라 업그레이드할 소프트웨어를 상기 방송 수신기로 전송하는 단계; 상기 방송 수신기에서 상기 전송된 소프트웨어를 저장하는 단계; 및 상기 커뮤니케이션 디바이스에서 상기 방송 수신기에 저장된 소프트웨어를 읽어 와 상기 방송 수신기 재부팅(rebooting) 시에 상기 읽어 온 소프트웨어로 작동하여 업그레이드하는 단계를 포함함을 특징으로 한다.Therefore, in order to achieve the above object, a method of upgrading software of a communication device provided in a broadcast receiver networked with a software manager according to the present invention. One example may include requesting, by the software manager, the information about the software of the communication device to the broadcast receiver according to a network management protocol capable of managing the network; Collecting information about the software of the communication device by the broadcast receiver and responding to the software manager according to the network management protocol; Transmitting, by the software manager, software to be upgraded according to a response of the broadcast receiver to the broadcast receiver; Storing the transmitted software at the broadcast receiver; And reading, by the communication device, software stored in the broadcast receiver and operating and upgrading the read software at the time of rebooting the broadcast receiver.

이때, 상기 네트워크 관리 프로토콜은 SNMP(simple network management protocol)일 수 있다.In this case, the network management protocol may be a simple network management protocol (SNMP).

그리고 상기 소프트웨어에 대한 정보는 상기 방송 수신기에서 소프트웨어를 다운로드(download) 하거나 재부팅 시킬 수 있는 소프트웨어 제어에 관한 정보를 포함할 수 있다.The information about the software may include information about software control that allows the broadcast receiver to download or reboot the software.

또한, 상기 소프트웨어 제어에 관한 정보는 소프트웨어 이미지 타입(software image type)에 관한 정보를 포함할 수 있다.Further, the information about the software control may include information about a software image type.

그리고 상기 소프트웨어 이미지 타입에 관한 정보는 상기 커뮤니케이션 디바이스에서 상기 네트워크를 통해 하나의 형식화된 컨테이너(container)에 포함되어 전송되는 소프트웨어 이미지의 타입에 관하여 정의한 내용을 포함할 수 있다.The information about the software image type may include content defined by the communication device regarding the type of the software image that is included and transmitted in one typed container through the network.

또한, 상기 소프트웨어의 이미지의 타입은 상기 방송 수신기의 소프트웨어만 포함하는 타입, 상기 커뮤니케이션 디바이스의 소프트웨어만을 포함하는 타입과 상 기 방송 수신기와 커뮤니케이션 디바이스의 소프트웨어가 결합된 타입 중 어느 하나일 수 있다.In addition, the type of the image of the software may be any one of a type including only the software of the broadcast receiver, a type including only the software of the communication device, and a type of combining the software of the broadcast receiver and the communication device.

그리고 상기 소프트웨어 제어에 관한 정보는 압축된 소프트웨어 이미지를 추출하기 위한 액세스 코드(access code)에 관한 정보를 더 포함하되, 상기 액세스 코드에 관한 정보는 지원하는 액세스 코드가 없으면 무시할 수 있다.The information about the software control further includes information about an access code for extracting a compressed software image, but the information about the access code can be ignored if there is no supporting access code.

또한, 상기 소프트웨어 제어에 관한 정보는 새로 다운로드 받은 소프트웨어 이미지의 파일 이름(file name)에 관한 제 1 정보, 소프트웨어 이미지가 있는 서버(server)의 주소(address) 내지 URL(uniform resource locator)에 관한 제 2 정보, 상기 서버에 들어가기 위한 패스워드(password)에 관한 제 3 정보, 다운로드 동작을 설정하도록 하는 제 4 정보, 진행 중인 상기 다운로드 동작을 위하여 스크린(screen)에 디스플레이(display)하기 위한 메시지들에 관한 제 5 정보와 상기 제 5 정보에 대한 사용자의 응답에 관한 제 6 정보 중 적어도 하나를 더 포함할 수 있다.In addition, the information on the software control is the first information about the file name (file name) of the newly downloaded software image, the information about the address (address) of the server (uniform resource locator) of the server (where the software image is located) 2 information, third information about a password to enter the server, fourth information to set up a download operation, messages about displaying on a screen for the download operation in progress The apparatus may further include at least one of fifth information and sixth information about a user's response to the fifth information.

그리고 상기 소프트웨어 매니저에서 상기 방송 수신기의 응답에 따라 상기 커뮤니케이션 디바이스의 소프트웨어의 업그레이드 여부를 판단하는 단계를 더 포함할 수 있다.And determining, by the software manager, whether to upgrade the software of the communication device according to the response of the broadcast receiver.

또한, 상기 소프트웨어 매니저에서 상기 업그레이드 여부 판단 결과 업그레이드라고 판단되면, 상기 방송 수신기로 상기 커뮤니케이션 디바이스의 소프트웨어 업그레이드 여부를 문의하는 단계를 더 포함할 수 있다.The software manager may further include inquiring whether the communication device upgrades the software, if it is determined that the upgrade results in the upgrade.

그리고 설치한 소프트웨어 이미지를 검증(verification)하는 단계를 더 포함 할 수 있다.The method may further include verifying the installed software image.

또한, 상기 검증 결과 소프트웨어 이미지 타입이 상기 방송 수신기의 소프트웨어만 포함한 타입인 경우에는 상기 커뮤니케이션 디바이스로 해당 소프트웨어가 없음을 나타내는 메시지를 전송하고, 상기 커뮤니케이션 디바이스의 소프트웨어만을 포함한 타입이거나 상기 방송 수신기와 커뮤니케이션 디바이스의 소프트웨어가 결합된 타입인 경우에는 새로운 소프트웨어가 다운로드 되었음을 나타내는 메시지를 전송할 수 있다.In addition, when the verification result shows that the software image type is a type including only the software of the broadcast receiver, a message indicating that there is no corresponding software is transmitted to the communication device, and the type includes only the software of the communication device or the broadcast receiver and the communication device. If the software is a combined type, a message indicating that new software has been downloaded may be transmitted.

그리고 상기 검증은 상기 방송 수신기에서 이루어질 수 있다.The verification may be performed in the broadcast receiver.

또한, 상기 커뮤니케이션 디바이스는 상기 방송 수신기에 내장된 케이블 모뎀(embedded cable modem; 이하 'eCM')을 포함할 수 있다.In addition, the communication device may include an embedded cable modem (hereinafter 'eCM') embedded in the broadcast receiver.

본 발명에 따라 소프트웨어 매니저와 네트워크로 연결된 방송 수신기에 구비된 커뮤니케이션 디바이스의 소프트웨어를 업그레이드하는 시스템의 일 예는, 상기 방송 수신기에 구비된 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 요청하고, 업그레이드할 새로운 소프트웨어를 전송하는 매니지먼트 스테이션; 및 상기 매니지먼트 스테이션의 요청에 따라 기 구비된 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 수집하여 상기 매니지먼트 스테이션으로 전송하고, 상기 전송되는 업그레이드할 새로운 소프트웨어를 수신하여 저장하는 방송 수신기를 포함하여 구성하는 것을 특징으로 한다.According to the present invention, an example of a system for upgrading software of a communication device provided in a broadcast receiver networked with a software manager may include requesting information about software of a communication device provided in the broadcast receiver and requesting new software to be upgraded. Transmitting management station; And a broadcast receiver that collects and transmits information on software of a communication device provided at the request of the management station to the management station, and receives and stores the new software to be upgraded. do.

이때, 상기 방송 수신기는, 수신되는 소프트웨어를 특정 영역에 저장하는 저장부; 상기 네트워크를 관리하는 네트워크 관리 프로토콜에 따라 상기 저장된 소프 트웨어에 관련된 정보를 송수신을 제어하고, 상기 특정 영역에 저장된 소프트웨어가 저장되었음을 커뮤니케이션 디바이스로 알리도록 제어하는 제어부; 및 상기 특정 영역에 저장된 소프트웨어를 읽어와 저장한 후 수신기가 재부팅되면 상기 읽어와 저장한 소프트웨어를 이용하여 작동하는 커뮤니케이션 디바이스를 포함하여 구성할 수 있다.At this time, the broadcast receiver, the storage unit for storing the received software in a specific area; A control unit for controlling transmission and reception of information related to the stored software according to a network management protocol for managing the network and for notifying a communication device that software stored in the specific area is stored; And a communication device operating by using the read and stored software when the receiver is rebooted after reading and storing the software stored in the specific area.

그리고 상기 방송 수신기는 상기 매니지먼트 스테이션으로부터 업그레이드 유무를 문의하는 신호가 수신되면, 이를 표시하는 OSD 유닛(on screen display unit)을 더 포함할 수 있다.The broadcast receiver may further include an on screen display unit (OSD) for displaying a signal for inquiring about the upgrade from the management station.

또한, 상기 제어부는 SNMP 에이전트(SNMP agent)를 구비할 수 있다.In addition, the controller may include an SNMP agent.

본 발명의 다른 목적, 특성 및 이점들은 첨부한 도면을 참조한 실시 예들의 상세한 설명을 통해 명백해질 것이다. 아울러 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적인 용어를 선택하였다. 그러나 특정한 경우는 출원인이 임의로 용어를 선정하였으며, 이 경우에는 해당되는 부분에서 상세히 그 의미를 기재하였다. 따라서, 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌 그 용어가 가지는 의미로서 파악하여야 할 것이다.Other objects, features and advantages of the present invention will become apparent from the detailed description of the embodiments with reference to the accompanying drawings. In addition, the terminology used in the present invention was selected as a general term widely used as possible now. However, in certain cases, the applicant arbitrarily selected a term, and in this case, the meaning is described in detail in the corresponding part. Therefore, the terms used in the present invention should be understood as meanings of the terms rather than simply names of the terms.

이하 본 발명에 따른 소프트웨어 업그레이드 방법, 장치 및 시스템에 대해 첨부한 도면을 참조하여 상세하게 설명한다. 이때, 본 발명과 관련하여 데이터 방송 플래폼(data broadcasting platform)은 OCAP(opencable application platform)을 예로 하여 설명한다.Hereinafter, a software upgrade method, apparatus and system according to the present invention will be described in detail with reference to the accompanying drawings. In this case, the data broadcasting platform will be described using an opencable application platform (OCA) as an example.

먼저, 본 발명과 관련하여 OCAP 환경에 대해 설명하면, 다음과 같다. 도 1은 본 발명과 관련하여 디지털 케이블 제품이 동작하는 환경으로써 케이블 방송 네트워크에 대한 개념을 설명하기 위해 도시한 것이다.First, the OCAP environment will be described with reference to the present invention. 1 is a view illustrating a concept of a cable broadcasting network as an environment in which a digital cable product operates in connection with the present invention.

케이블 헤드엔드(cable headend) 또는 플랜트(plant)는 여러 가지 통신망을 통하여 방송국 등에서 송출하는 방송 신호를 수신한다. 그리고 상기 통신망을 통하여 수신한 케이블 방송은 노드(node)를 포함하는 네트워크를 통하여 케이블 방송 수신기까지 전달된다.A cable headend or a plant receives broadcast signals transmitted from broadcasting stations and the like through various communication networks. The cable broadcast received through the communication network is delivered to the cable broadcast receiver through a network including a node.

케이블 방송 수신기는 상기 케이블 헤드엔드로부터 케이블 방송과 관련된 데이터가 포함된 방송 신호를 수신하거나 상기 케이블 헤드엔드로 특정 신호를 전송할 수 있다. 이때, 상기 송수신은 양방향으로 데이터를 전송할 수 있는 도 1과 같은 케이블 네트워크를 통하여 이루어질 수 있다. 이때, 상기 케이블 방송 수신기는 호스트(Host)라고도 하며, 디지털 텔레비전, DVD 재생기, 디지캠, 셋톱박스 등과 같은 주변 기기들과 다양한 형식의 인터페이스로 연결될 수 있다. 즉, 디지털 케이블 제품은 양방향으로 데이터를 전송할 수 있는 기능을 갖춘 케이블 네트워크를 통하여 상기 케이블 헤드엔드와 원하는 데이터를 송수신할 수 있다.The cable broadcast receiver may receive a broadcast signal including data related to cable broadcasting from the cable headend or transmit a specific signal to the cable headend. In this case, the transmission and reception may be made through a cable network as shown in FIG. 1 capable of transmitting data in both directions. In this case, the cable broadcast receiver may be referred to as a host, and may be connected to various types of interfaces with peripheral devices such as a digital television, a DVD player, a digital cam, and a set-top box. That is, the digital cable product can transmit and receive the desired data with the cable headend through a cable network having a function of transmitting data in both directions.

상술한 바와 같이, OCAP 환경에서 호스트는 양방향으로 데이터를 주고 받기 위해 OOB 튜너(out of band tuner)를 이용하여 RDC(return data channel)를 구현하여 케이블카드(CableCARD)가 직접 RDC 관련 회로를 제어하여 데이터를 전송하거나 또는 커뮤니케이션 디바이스를 내장하여 네트워크 통신을 지원할 수 있다.As described above, in the OCAP environment, the host implements a return data channel (RDC) using an OOB tuner (out of band tuner) in order to send and receive data in both directions so that the cable card directly controls the RDC related circuit. Network communications can be supported by sending data or by embedding communication devices.

이하 본 명세서에서는 특히, 호스트에서 상기 커뮤니케이션 디바이스를 이용하는 경우를 예로 하여 설명하되, 상기 커뮤니케이션 디바이스로 케이블 모뎀을 예 로 하여 설명한다.In the following description, in particular, a case where the communication device is used in a host will be described as an example, but a cable modem is used as the communication device as an example.

따라서, 호스트는 내장된 케이블 모뎀을 이용하여 마치 네트워크 인터페이스(network interface)와 같이 동작하도록 할 수 있다.Thus, the host can be operated like a network interface using a built-in cable modem.

관련하여, 상기 호스트와 eCM에 대해 먼저 살펴보면, 다음과 같다.In relation to the above, the host and the eCM will be described first.

도 2는 본 발명과 관련하여 eCM과 호스트의 관계를 설명하기 위해 도시한 것이다. 이때, 도 2는 OCAP 환경에서 eCM을 호스트에 내장한 구조이며, 상기 호스트는 내장된 셋톱박스(embedded settop box)를 예로 한다.2 is a diagram illustrating the relationship between an eCM and a host in relation to the present invention. 2 illustrates a structure in which an eCM is embedded in a host in an OCAP environment, and the host uses an embedded settop box as an example.

eCM은 RF 케이블과 연결되어 케이블 네트워크와 직접 연결되는 것으로, 연결되면 DOCSIS PHY이 링크(Link) 장치 역할을 하여 마치 LAN(local area network) 카드와 같이 동작한다. 이때, RF 케이블의 주파수는 정해진 주파수를 사용한다. 그리고 데이터 패킷은 IP, ICMP 및 ARP 레이어(layer) 까지 전달된다.The eCM is connected directly to the cable network by connecting to the RF cable. When connected, the DOCSIS PHY acts as a link device, which acts as a local area network (LAN) card. At this time, the frequency of the RF cable uses a predetermined frequency. Data packets are then delivered to the IP, ICMP and ARP layers.

또한, eCM은 상위 레이어에 DHCP, TFTP, SNMP 등의 소프트웨어 레이어(software layer)의 프로토콜을 가진다. 상기 DHCP는 자동으로 케이블 헤드엔드의 DHCP와 연결되어 케이블카드에서 정의한 프로토콜에 맞게 IP 주소(address)를 할당받고, 상기 TFTP는 호스트에서 상기 eCM의 소프트웨어를 분리해서 전송하는 경우와 eCM이 형식화된 소프트웨어 컨테이너(software container)를 수신하는 경우에 모두 사용할 수 있다.In addition, the eCM has a software layer protocol, such as DHCP, TFTP, and SNMP, on the upper layer. The DHCP is automatically connected to the DHCP of the cable headend to be assigned an IP address according to the protocol defined by the cable card, and the TFTP transmits the eCM software separately from the host and the eCM is formatted software. All can be used to receive a software container.

또한, 상기 SNMP는 후술하겠지만 DOCSIS에 따라 케이블 모뎀이 구비하여야 할 관리 정보들을 관리/처리할 수 있도록 규격화되어 있다. 브릿지(bridge)는 호스트와의 연결을 원활하게 하는 기능을 하며, 주로 USB(universal serial bus)나 이 더넷 인터페이스(ethernet interface) 등으로 연결될 수 있다. 이렇게 연결된 인터페이스는 실제 호스트와 통신할 수 있도록 네트워크 인터페이스 역할을 할 수 있다.In addition, although SNMP will be described later, it is standardized to manage / process management information that a cable modem should have according to DOCSIS. The bridge functions to facilitate the connection with the host, and may be mainly connected to a universal serial bus (USB) or an Ethernet interface. The connected interface can act as a network interface to communicate with a real host.

상술한 바와 같이 호스트는 상기 eCM을 이용함으로써, 인터넷에 연결된 것처럼 자유롭게 네트워크를 이용하여 양방향으로 데이터를 송수신할 수 있다. 이때, 상기 네트워크 역시 별도의 관리를 위한 프로토콜이 필요하며, 이하 본 명세서에서는 SNMP를 예로 하여 설명한다.As described above, by using the eCM, the host can freely transmit and receive data in both directions using a network as if connected to the Internet. At this time, the network also needs a protocol for a separate management, hereinafter will be described with an SNMP as an example.

SNMP는 원래 네트워크 트래픽(network traffic)의 과부하와 같이 네트워크상에서 발생하는 여러 가지 원인에 의해서 네트워크 장애가 발생하는 것을 미리 방지하거나 발생한 장애의 원인 규명 및 복구 작업을 효과적으로 수행하기 위한 것으로, 본 발명과 관련하여 네트워크상에 연결된 다양한 종류의 디바이스들의 상태를 원격지에서 실시간으로 모니터링(monitering)하는 경우에도 이용할 수 있다.SNMP is intended to prevent a network failure from occurring due to various causes occurring on the network, such as an overload of network traffic, or to effectively identify and recover the cause of the failure. It can also be used to monitor the status of various types of devices connected to the network in real time from a remote location.

이러한 SNMP는 TCP/IP를 사용하는 모든 종류의 네트워크 환경에서 사용될 수 있는바, 디바이스들은 여러 가지 시스템 구성 정보나 상태 정보와 관련하여 표준화된 데이터 구조체와 상기 표준화된 데이터 구조체로 표현된 여러 가지 상태 정보들을 원격지의 매니지먼트 서버(management server)로 전송할 수 있는 SNMP 에이전트(SNMP agent)를 구비하면 된다. 이때, 상기 표준화된 데이터 구조체는 MIB(management information base)라고도 하며, 구조화된 기술 언어(structure of management information)로 표현하여 관리자, 관리할 수 있는 객체의 종류와 관리되어야할 객체의 종류 등에 관한 정보를 정의할 수 있다.Such SNMP can be used in all kinds of network environments using TCP / IP. The devices are standardized data structures related to various system configuration information or status information, and various status information represented by the standardized data structures. It is necessary to have an SNMP agent (SNMP agent) that can send them to a remote management server (management server). In this case, the standardized data structure is also referred to as a management information base (MIB), and is expressed in a structured description language (structure of management information) to represent information about the manager, the types of objects that can be managed, and the types of objects to be managed. Can be defined

그러므로, 케이블 헤드엔드는 디지털 케이블 제품들에 상기 MIB와 SNMP 에이전트가 구비되어 있으면, 원격에서 상기 디지털 케이블 제품들의 각종 시스템 정보들과 연결된 디바이스들에 대한 다양한 상태 정보를 실시간으로 모니터링 할 수 있다.Therefore, if the cable headend is provided with the MIB and the SNMP agent in the digital cable products, it is possible to remotely monitor various status information about the devices connected with various system information of the digital cable products in real time.

이하에서는 본 발명과 관련하여 호스트의 MIB(HOST-MIB)에 대해 설명한다. 상기 HOST-MIB는 여러 가지 상태 정보들에 대한 세부적인 내용을 기술하는 객체를 포함하고 있다. 예를 들어, 상기 HOST-MIB에는 호스트에 내장된 eCM의 소프트웨어 업그레이드와 관련한 관리 객체를 포함할 수 있다. 그리고 상기 호스트를 운용하는 소프트웨어를 호스트 소프트웨어라고 한다.Hereinafter, the MIB (HOST-MIB) of the host will be described in relation to the present invention. The HOST-MIB includes an object for describing details of various state information. For example, the HOST-MIB may include a management object related to a software upgrade of an eCM embedded in a host. The software for operating the host is called host software.

상기 HOST-MIB에 기술된 각 객체는 의무적인 사항(mandatory)과 선택적인 사항(optional)이 있을 수 있으며, SNMP 매니저에서 해당 객체에 접근의 정도 내지 권한을 의미하는 액세스는 RO(Read-Only), RW(Read-Write) 및 N-acc(Not accessible)로 정의할 수 있다.Each object described in the HOST-MIB may have mandatory and optional options, and access, which means the degree or authority of access to the object in the SNMP manager, is RO (Read-Only). , RW (Read-Write) and N-acc (Not accessible) can be defined.

상기 HOST-MIB는 크게 오디오, 비디오, 아날로그, 사용자 정의 세팅, 전원, 프로그램 정보, 입출력 정보와 같은 그룹들로 나눌 수 있고, 상기 그룹들 안에는 여러 가지 객체들이 있을 수 있다. 이때, 각 객체들은 고유한 의미와 사용 목적이 있다.The HOST-MIB can be broadly divided into groups such as audio, video, analog, user-defined settings, power, program information, and input / output information, and there may be various objects in the groups. At this time, each object has its own meaning and purpose of use.

이하 HOST-MIB에 대해 설명하되, 상기 HOST-MIB에는 다운로드 받은 소프트웨어의 문제점을 파악할 수 있는 로그(log)를 저장할 수 있도록 정의할 수 있다.Hereinafter, the HOST-MIB will be described, and the HOST-MIB can be defined to store a log for identifying a problem of the downloaded software.

본 발명과 관련하여 호스트에 내장된 eCM에 대한 소프트웨어와 관련하여 필 요한 객체들은 HOST-MIB 내 복수 개의 그룹들 중 호스트 소프트웨어 그룹(Host Software Group)에 포함할 수 있다.In connection with the present invention, objects necessary for the software for the eCM embedded in the host may be included in a host software group among a plurality of groups in the HOST-MIB.

이하 상기 호스트 소프트웨어 그룹에 대해 설명하면, 다음과 같다. 이때, 상기 호스트 소프트웨어 그룹 내 테이블들에 포함되는 각 객체의 영문명은 그대로 사용하되, 볼드체로 표시한다. 또한, 상기 호스트 소프트웨어 그룹과 상기 그룹 내 각 객체의 명칭은 본 발명의 설명을 위해 명명한 일 예로써, 이에 한정되지 않으며, 본 명세서에 기술되는 본 발명의 기술 사상을 근거로 하여 본 발명의 권리범위를 정하여야 함을 밝힌다.Hereinafter, the host software group will be described. In this case, the English name of each object included in the tables in the host software group is used as it is, but indicated in bold. In addition, the name of the host software group and each object in the group is an example named for description of the present invention, and the present invention is not limited thereto. The present invention is based on the technical spirit of the present invention described herein. Identify the range.

호스트 소프트웨어 그룹은 크게 몇 가지의 테이블과 객체의 그룹으로 구성되며, 각 테이블은 연관성이 높은 객체들을 포함할 수 있다. 상기에서 호스트 소프트웨어 그룹은 총 4개의 테이블을 구비하여 호스트에서 다운로드 받는 소프트웨어를 관리하고 제어한다.The host software group consists of several groups of tables and objects, and each table can contain highly related objects. The host software group includes a total of four tables to manage and control the software downloaded from the host.

상기 테이블은 호스트 소프트웨어 인포메이션 테이블(Host Software Information Table), 호스트 소프트웨어 제어 테이블(Host Software Control Table), 호스트 소프트웨어 로그 테이블(Host Software Log Table)와 호스트 소프트웨어 트랩 테이블(Host Software Traps Table)을 포함한다.The table includes a host software information table, a host software control table, a host software log table, and a host software trap table.

이하 각 테이블과 상기 각 테이블에 정의되는 각 객체들에 대해 설명한다.Hereinafter, each table and each object defined in each table will be described.

도 3a는 본 발명에 따라 구성한 호스트 소프트웨어 인포메이션 테이블의 일 예를 도시한 것이다.3A illustrates an example of a host software information table constructed in accordance with the present invention.

상기 호스트 소프트웨어 인포메이션 테이블은 호스트 소프트웨어가 가지고 있는 정보와 소프트웨어가 다운로드 되어 있는 하드웨어의 물리적인 파티션(partition)에 대한 정보를 포함할 수 있다.The host software information table may include information that the host software has and information about a physical partition of hardware from which the software is downloaded.

HostSoftwareInfoIndex 객체는 해당 테이블의 인덱스(index)에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽거나 쓸 수 있다. 일반적으로 다운로드가 지원되는 시스템의 경우에는 독립적인 파티션을 구분하여 다운로드가 실패하면, 그에 대응할 수 있도록 백업(backup)을 위한 파티션을 하나 더 가질 수 있다. The HostSoftwareInfoIndex object refers to information about the index of the table. The object can be accessed or read from the SNMP manager. In general, in the case of a system that supports downloading, if an independent partition is divided and a download fails, the system may have one more partition for backup.

따라서, 상기 HostSoftwareInfoIndex 객체는 일반적으로 '0' 내지 '1'의 값을 가진다. 이는 호스트 내 부트(boot) 가능한 디바이스 파티션(device partition)이 한 개 또는 두 개 임을 의미하는 것으로, 비용 문제 등으로 인하여 일반적으로 상기 디바이스 파티션은 3개 이상은 만들지 않는다. 그러나 특수한 경우를 대비하기 위하여 상기 객체의 인덱스 값은 SMI에서 정의하는 부호를 정하지 않은 정수(unsigned integer) 값을 가질 수 있다. 이때, 각 디바이스 파티션은 부팅이 되면서 소프트웨어 버전과 소프트웨어 제조자 그리고 실행 파일의 크기 등등의 정보들이 SNMP 에이전트에 업그레이드되어야 한다.Therefore, the HostSoftwareInfoIndex object generally has a value of '0' to '1'. This means that there is only one or two bootable device partitions in the host. In general, three or more device partitions are not created due to cost. However, in order to prepare for a special case, the index value of the object may have an unsigned integer value defined in SMI. At this time, each device partition should be booted, and information such as software version, software manufacturer, and executable file size should be upgraded to the SNMP agent.

HostSoftwareBootCount 객체는 해당 디바이스에서 성공적으로 부팅한 횟수에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareManufacturer 객체는 해당 디바이스의 제조사의 이름에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareModel 객체는 해당 디바이스의 제품 모델 이름에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareSerialNumber 객체는 해당 제품 모델의 고유 번호 또는 시리얼 넘버에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareCompatibleHwVersion 객체는 해당 하드웨어의 버전에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. The HostSoftwareBootCount object is information about the number of times the device has successfully booted. The object can only be read by the SNMP manager. The HostSoftwareManufacturer object is the name of the manufacturer's name of the device. The object can only be accessed by the SNMP manager. The HostSoftwareModel object is the information about the product model name of the device. The object can only be read and accessed from the SNMP manager. The HostSoftwareSerialNumber object refers to information about the unique number or serial number of the product model. The object can only be accessed by the SNMP manager and read. The HostSoftwareCompatibleHwVersion object refers to information about the version of the hardware. The object can only be read by the SNMP manager.

HostSoftwareBootDeviceIndex 객체는 플래시 메모리(flash memory)나 비휘발성 메모리 디바이스(non volatile memory device)의 인덱스에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareDeviceCapacity 객체는 플래시 메모리나 비휘발성 메모리 디바이스의 크기(size)에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareExcutableImageSize 객체는 상기 소프트웨어의 크기에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareImageVersion 객체는 상기 소프트웨어 이미지의 버전에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareImageBuildDate 객체는 상기 소프트웨어 이미지의 제조 일자에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareImageReleaseDate 객체는 상기 소프트웨어의 발행 일자(release date)에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 단지 읽을 수 있을 뿐이다. The HostSoftwareBootDeviceIndex object refers to information about the index of flash memory or non volatile memory devices. The object can only be read by the SNMP manager. The HostSoftwareDeviceCapacity object is information about the size of the flash or nonvolatile memory device. The object can only be read by the SNMP manager. The HostSoftwareExcutableImageSize object refers to information about the size of the software, which can only be read by accessing the SNMP manager. The HostSoftwareImageVersion object refers to information about the version of the software image, which can only be read by accessing the SNMP manager. The HostSoftwareImageBuildDate object refers to information about the date of manufacture of the software image, and the object can only be read by accessing the SNMP manager. The HostSoftwareImageReleaseDate object refers to information about the release date of the software, which can only be read by the SNMP manager.

다음으로, 도 3b는 본 발명에 따라 구성한 호스트 소프트웨어 컨트롤 테이블 의 일 예를 도시한 것이다. 이때, 본 발명과 관련하여 HostSoftwareControlImageType 객체는 후술한다.Next, Figure 3b shows an example of a host software control table constructed in accordance with the present invention. In this case, the HostSoftwareControlImageType object will be described later in connection with the present invention.

상기 호스트 소프트웨어 컨트롤 테이블은 주로 호스트에 구비된 SNMP 에이전트가 소프트웨어를 다운로드하거나 상기 다운로드 완료 후에 실행시키기 위해 재부팅(rebooting)할 수 있도록 정의한 객체들을 포함할 수 있다. 이때, SNMP 매니저는 다운로드시킬 소프트웨어가 있는 서버의 URL을 설정할 수 있는 객체인 HostSoftwareControlServerURL 객체를 원격으로 설정할 수 있다.The host software control table may mainly include objects defined by an SNMP agent provided in a host to reboot the software to download or execute the software after completion of the download. At this time, the SNMP manager can remotely set the HostSoftwareControlServerURL object, which is an object that can set the URL of the server containing the software to download.

HostSoftwareControlServerURL 객체는 상기 소프트웨어 이미지의 URL, FTP(file transfer protocol) 혹은 서버 주소에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. HostSoftwareControlAccessCode 객체는 상기 압축된 소프트웨어 이미지의 압축을 풀기 위한 액세스 코드에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. HostSoftwareControlPassword 객체는 상기 소프트웨어 서버로 접속하기 위한 패스워드에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. HostSoftwareControlFilename 객체는 새로운 소프트웨어 이미지의 파일 이름에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. HostSoftwareControlMessageOnScreen 객체는 HostSoftwareControlOperation 객체에 대한 어떤 메시지들을 화면에 디스플레이하는 것에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. 이때, 상기 메시지들은 타겟(target)의 그래픽 하드웨어(graphic hardware)를 사용함으로써 디스플레이하여 야 한다. 예를 들어, SNMP 매니저는 해당 시스템의 재부팅을 원한다면, 상기 옥텟-스트링 값은 “이 시스템 재부팅(Reboot this system)"이 될 것이다. The HostSoftwareControlServerURL object refers to information about the URL, file transfer protocol (FTP) or server address of the software image. The object can be accessed and read from the SNMP manager. The HostSoftwareControlAccessCode object refers to information about an access code for decompressing the compressed software image, and the object can be accessed, read and written by the SNMP manager. The HostSoftwareControlPassword object refers to information about a password for accessing the software server, and the object can be accessed and read from the SNMP manager. The HostSoftwareControlFilename object is the information about the file name of the new software image, which can be accessed, read and written by the SNMP manager. The HostSoftwareControlMessageOnScreen object is information about displaying some messages on the screen about the HostSoftwareControlOperation object, and the object can be accessed and read and written by the SNMP manager. In this case, the messages should be displayed by using graphic hardware of a target. For example, if the SNMP manager wants to reboot the system, the octet-string value would be "Reboot this system".

HostSoftwareControlUserResponse 객체는 상기 HostSoftwareControlMessageOnScreen 객체에 의해 화면에 표시된 메시지들에 대한 사용자의 응답에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. 이때, 상기 디폴트 값(default value)이 ‘0’이면 ‘아니오(No)'를, '1'이면 '예(Yes)'를 나타낼 수 있다. HostSoftwareControlOperation 객체는 다운로드 동작을 설정함에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 읽고 쓸 수 있다. 이때, 호스트 소프트웨어를 다운로드 하기 위하여 설정해야 하는 객체들은 상기 다운로드 동작과 관련하여 패스워드를 나타내는 HostSoftwareControlPassword 객체, 액세스 코드를 나타내는 HostSoftwareControlAccessCode 객체 및 동작을 나타내는 HostSoftwareControlOperation 객체 중 적어도 하나 이상을 포함할 수 있다. The HostSoftwareControlUserResponse object refers to information about the user's response to the messages displayed on the screen by the HostSoftwareControlMessageOnScreen object, and the object can only be read by accessing the SNMP manager. In this case, when the default value is '0', 'No' may be displayed, and when '1', 'Yes' may be represented. HostSoftwareControlOperation object is information about setting download operation. The object can be accessed and read from SNMP manager. At this time, the object to be set in order to download the software, the host may include at least one of HostSoftwareControlOperation HostSoftwareControlAccessCode object representing the object and the operation indicating HostSoftwareControlPassword object, the access code indicating the password with respect to the download operation.

특히, 상기 객체들 중 HostSoftwareControlAccessCode 객체는 다운로드된 이미지의 압축 혹은 암호화를 해제할 때 필요한 암호 혹은 CAS(conditional access system) 시스템에 사용되는 키(key)가 될 수 있다. 즉, 호스트는 서비스 제공업자가 제공하는 상기 압축 혹은 암호화를 해제할 수 있는 키를 수신하여 이미지를 해제하여야 자신이 수신한 이미지가 정상적인 이미지인지 확실하게 알 수 있다.In particular, the HostSoftwareControlAccessCode object among the objects may be a password or key used in a conditional access system (CAS) system when compressing or deciphering the downloaded image. That is, the host can be sure that the received image is a normal image only by receiving the key that can release the compression or encryption provided by the service provider and decompressing the image.

여기에 부가하여 HostSoftwareControlMessageOnScreen 객체에 화면에 표시할 간단한 메시지를 텍스트로 써주면, 호스트 시스템에 있는 그래픽 프로세서(graphic processor)를 통하여 메시지를 출력하여 상황에 따라서 사용자에게 알려 줄 수 있다. 또한, 그에 대한 반응을 HostSoftwareControlUserResponse 객체로 얻어올 수 있다. OSD에 대한 반응을 얻기 위한 것이다. 그러나 SNMP 매니저는 상기와 같은 반응을 기대하지 않을 수도 있다. 이는 SNMP 매니저가 관리하여야 할 호스트가 많기 때문인데, 상기와 같은 방법이 아니라 일괄적으로 세팅하고 재부팅 할 수 있다.In addition, if a simple message to be displayed on the screen is written as text in the HostSoftwareControlMessageOnScreen object, a message can be output through a graphic processor in the host system to inform the user according to a situation. You can also get the response as a HostSoftwareControlUserResponse object. To get a response to the OSD. However, the SNMP manager may not expect such a response. This is because the SNMP manager has a lot of hosts to manage. Instead of the above method, it can be set and rebooted at once.

다음으로, 도 3c는 본 발명에 따라 구성한 호스트 소프트웨어 로그 테이블의 일 예를 도시한 것이다.Next, FIG. 3C shows an example of a host software log table constructed according to the present invention.

상기 호스트 소프트웨어 로그 테이블은 현재 동작하는 소프트웨어의 로그 메시지를 저장하는 테이블로서, 부팅이 완료되고 나서 시스템에서 알려 줄 수 있는 메시지를 다음의 몇 가지로 구분할 수 있을 것이다.The host software log table is a table that stores log messages of the currently running software. The host software log table may be classified into the following types of messages that can be notified by the system after booting is completed.

HostSoftwareLogIndex 객체는 상기 호스트 소프트웨어 로그 테이블의 인덱스에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareLogTime 객체는 해당 엔트리가 생성된 시각에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. HostSoftwareLogLevel 객체는 벤더(vendor)에 의해 정의된 메시지의 종류에 따라서 사용할 수 있는 레벨들에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. 이때, 상기 각 레벨은 하기의 표 1과 같이 정의할 수 있다. The HostSoftwareLogIndex object refers to information about the index of the host software log table, and the object can only be read and accessed from the SNMP manager. The HostSoftwareLogTime object is information about the time the entry was created, and the object can only be read by the SNMP manager. The HostSoftwareLogLevel object is information about the levels available based on the type of message defined by the vendor. The object is only accessible by the SNMP manager and can be read. In this case, each level may be defined as shown in Table 1 below.

ValueValue ObjectObject DescriptionDescription 1One emergencyemergency 응급 상황의 로그Log of emergency 22 alertalert 경고 상황의 로그Log of warning situation 33 criticalcritical 위급 상황의 로그An emergency log 44 errorerror 에러error 55 warningwarning 호스트 동작 중에 위험한 상황인 경우 발생하는 메시지Occurs when a critical situation occurs during host operation 66 noticenotice 호스트 시스템 동작 관련 메시지Host system behavior related messages 77 informationinformation 일반 정보General information 88 debugdebug 디버그가 필요한 메시지Messages that need to be debugged

상기 표 1에 정의서 보아 알 수 있듯이 각각의 레벨들은 각 벤더(vendor)가 정한 메시지의 종류에 따라서 사용할 수 있다. 상기와 같이 메시지를 구분함으로써 원격의 SNMP 매니저는 각각의 메시지를 분류해서 처리할 수 있다.As can be seen from the definition in Table 1, each level can be used according to the type of message defined by each vendor. By separating the messages as described above, the remote SNMP manager can classify and process each message.

HostSoftwareLogText 객체는 상기 로그의 메시지에 대한 정보를 말하고, 해당 객체는 SNMP 매니저에서 접근하여 단지 읽을 수 있을 뿐이다. 상술한 바와 같이 호스트 소프트웨어 로그 테이블을 정의함으로써 즉, 에러가 발생한 시간은 상기 HostsoftwareLogTime 객체에 "DateAndTime" 값으로 기록할 수 있고, 상기 시간 정보가 저장되어 있지 않은 경우에는 임의의 호스트에 설정된 시간 값을 저장할 수 있다. 또한, 메시지를 저장할 수 있도록 HostSoftwareLogText 객체를 이용하며 이때, 상기 객체는 최대 255 바이트를 저장할 수 있도록 "octet-string" 값을 설정할 수 있다. 따라서, 상기 값으로 로그 메시지를 저장할 수 있고, SNMP 매니저에서 상기 로그 메시지를 원격의 시스템에서 얻을 수 있어서 호스트를 관리하는데 매우 유용하다. The HostSoftwareLogText object refers to information about the messages in the log, which can only be accessed by the SNMP manager and read. By defining a host software log table as described above, that is, the time at which an error occurs can be recorded as a "DateAndTime" value in the HostsoftwareLogTime object, and if the time information is not stored, the time value set in any host is set. Can be stored. In addition, a HostSoftwareLogText object is used to store a message. At this time, the object may set an "octet-string" value to store a maximum of 255 bytes. Therefore, the log message can be stored with the value, and the SNMP manager can obtain the log message from a remote system, which is very useful for managing a host.

다음으로, 도 3d는 본 발명에 따라 구성한 호스트 소프트웨어 트랩 테이블의 일 예를 도시한 것이다.Next, Figure 3d shows an example of a host software trap table constructed in accordance with the present invention.

도 3d의 호스트 소프트웨어 트랩 테이블에 포함되는 각 객체는 상기 객체에 대한 정보를 정의하여 호스트에서 원격의 SNMP 매니저로 전송하기 위한 것으로, 상술한 도 3a 내지 3c와 차이가 있다.Each object included in the host software trap table of FIG. 3D defines information about the object and transmits the information to the remote SNMP manager from the host, which is different from the above-described FIGS. 3A to 3C.

상기 호스트 소프트웨어 트랩 테이블은 트랩 패킷을 종류를 소프트웨어 다운로드의 상태 그리고 호스트의 상황에 따라서 SNMP 매니저에 알릴 수 있도록 몇 가지의 종류로 구분하고 있다. 그러나 각각의 패킷들은 호스트의 IP 주소, 현재 호스트 소프트웨어 버전 정보 등의 필요한 데이터들이 함께 포함하여 보내질 수 있다. 트랩들은 일반적으로 리포트(report)를 원하지 않을 경우에는 보내지지 않을 수 있다. 이하 호스트 소프트웨어 트랩 테이블 내 각 객체는 SNMP 매니저에서 액세스하지 못한다.The host software trap table classifies trap packets into several types so that the SNMP manager can be informed according to the status of the software download and the host status. However, each packet can be sent with necessary data, such as the host's IP address and current host software version information. Traps may not generally be sent if you do not want a report. Hereinafter, each object in the host software trap table cannot be accessed by the SNMP manager.

HostSoftwareTrapsDownloadCompleted 객체는 전체 소프트웨어 이미지를 받았을 때 현재 소프트웨어를 가진 호스트 정보를 말하고, HostSoftwareTrapsDownloadFailed 객체는 전체 소프트웨어 이미지를 적절하게 받지 못하였을 때 현재 소프트웨어를 가진 호스트 정보를 말하고, HostSoftwareTrapsProgramCompleted 객체는 상기 수신한 소프트웨어 이미지를 플래시나 비휘발성 메모리 디바이스에서 성공적으로 프로그램할 때 현재 소프트웨어를 가진 호스트 정보를 말하며, HostSoftwareTrapsCannotAccessServer 객체는 호스트가 소프트웨어 공급 서버로 접속할 수 없음을 말한다. The HostSoftwareTrapsDownloadCompleted object refers to host information with the current software when it receives the full software image, the HostSoftwareTrapsDownloadFailed object refers to host information with the current software when the full software image is not properly received, and the HostSoftwareTrapsProgramCompleted object flashes the received software image. However, when successfully programming in a nonvolatile memory device, it refers to host information with current software. The HostSoftwareTrapsCannotAccessServer object indicates that the host cannot connect to the software provisioning server.

그리고 HostSoftwareTrapsBootFailed 객체는 호스트 이미지는 부팅시에 중요한(critical) 문제가 있음을 말한다.The HostSoftwareTrapsBootFailed object says that the host image has a critical problem at boot time.

마지막으로, 도 3e는 본 발명에 따라 구성한 호스트 소프트웨어 그룹 디바이스 테이블의 일 예를 도시한 것이다.Finally, Figure 3E shows an example of a host software group device table constructed in accordance with the present invention.

HostSoftwareBootDeviceId 객체는 SNMP 매니저에서 접근하여 상기 HostSoftwareBootDeviceIndex 객체에 있는 값들 중에 어느 하나를 선택하여 쓰면, 호스트에 구비된 SNMP 에이전트가 부트 디바이스를 스위치(switch)하고, 다음 부팅시에 해당 부트 디바이스 파티션으로 부팅시켜 주는 기능을 담고 있다. 상기 값은 현재 호스트가 보고한 HostSoftwareInfoIndex 객체의 최댓값을 넘을 수 없다. 상기 값이 넘을 경우에는 호스트의 SNMP 에이전트는 SNMP 매니저의 요청을 무시할 수 있다. When the HostSoftwareBootDeviceId object is accessed from the SNMP manager and selects and writes any one of the values in the HostSoftwareBootDeviceIndex object, the SNMP agent provided in the host switches the boot device and boots the boot device partition at the next boot. Contains the function. The value is the HostSoftwareInfoIndex reported by the current host. The maximum value of the object cannot be exceeded. If the value is exceeded, the SNMP agent of the host may ignore the request of the SNMP manager.

상술한 호스트 소프트웨어 제어 테이블은 주로 호스트에 구비된 SNMP 에이전트가 소프트웨어를 다운로드 하거나 재부팅을 시킬 수 있는 객체들로 구성한 것이다.The host software control table described above is mainly composed of objects that the SNMP agent provided in the host can download or reboot the software.

본 발명과 관련하여 호스트 소프트웨어를 다운로드 하기 위하여 설정해야 하는 객체들은 HostSoftwareControlPassword 객체, HostSoftwareControlAccessCode 객체와 HostSoftwareControlOperation 객체를 포함할 수 있다.Objects that need to be set in order to download host software in connection with the present invention may include a HostSoftwareControlPassword object, a HostSoftwareControlAccessCode object, and a HostSoftwareControlOperation object.

특히, HostSoftwareControlAccessCode 객체는 다운로드 된 이미지의 압축 혹은 암호화를 해제할 때 필요한 암호 혹은 CAS(conditional access system) 시스템에 사용되는 키(Key)가 될 수 있다. 이와 같은 압축 혹은 암호화를 해제할 수 있는 키를 가지고 이미지를 해제해야 정상적인 이미지를 받았는지를 안전하게 파악할 수 있다.In particular, the HostSoftwareControlAccessCode object may be a password or key used in a conditional access system (CAS) system when compressing or decrypting a downloaded image. You need to decompress the image with a key that can decompress or decrypt it so that you can safely determine if you received a normal image.

부가적으로 HostSoftwareControlMessageOnScreen 객체에 화면에 표시할 간단한 메시지를 텍스트(text)로 써주면, 호스트 시스템에 있는 그래픽 프로세서(Graphic Processor)를 통하여 메시지를 출력하여 상황에 따라 사용자에게 알려 줄 수 있다.In addition, if a simple message to be displayed on the screen is written as text in the HostSoftwareControlMessageOnScreen object, a message can be output through the graphic processor of the host system to inform the user according to the situation.

또한, HostSoftwareControlUserResponse 객체를 이용하여 그에 대한 반응을 알 수 있다. 즉, OSD(on screen display)에 대한 반응을 얻기 위한 것이다. 그러나 SNMP 매니저는 관리할 많은 호스트가 있으므로 각 호스트에 대한 반응을 요구하지 않고 일괄적으로 세팅하고 재부팅 시킬 수 있다.You can also use the HostSoftwareControlUserResponse object to find out the response. That is, to obtain a response to the OSD (on screen display). However, since the SNMP manager has many hosts to manage, it can be set and rebooted in batches without requiring a response from each host.

이하에서는 본 발명과 관련하여 HostSoftwareControlImageType 객체에 대해 설명한다. 일반적으로 eCM에 대한 소프트웨어의 업그레이드도 하나의 호스트 안에서 이루어져야 하고, 하나의 개념으로 인정한다. 그러나 기존에는 상기 eCM에 대한 소프트웨어의 다운로드는 eCM의 에이전트에서 수행하여 호스트에서 별도로 정의하지 않았다. 이에 따라 실제로 상기 eCM에 대한 소프트웨어는 독자적으로 전송되지 못하고 다른 이미지와 합쳐져서 전송되었다. 따라서, 상기 합쳐져서 전송된 다른 이미지로 인해 eCM의 에이전트에서 이를 분리할 수 없어 다시 호스트의 에이전트로 전송하여 분리된 eCM에 대한 소프트웨어를 재전송 받는 불필요한 과정을 겪었다.Hereinafter, a HostSoftwareControlImageType object will be described in relation to the present invention. In general, software upgrades to eCM should also be done within one host and are considered a concept. However, in the past, the download of the software for the eCM is performed by the agent of the eCM and not separately defined in the host. As a result, the software for the eCM was not transmitted on its own but was combined with other images. Therefore, due to the combined and transmitted images, the agent of the eCM could not be separated, so it was sent back to the agent of the host and went through an unnecessary process of retransmitting the software for the separated eCM.

이에 따라 본 발명에서는 상기와 같은 문제를 해결하고자 eCM에 대한 소프트웨어를 호스트에서 직접 다운로드 받아 상기 eCM의 에이전트로 전송하고자 한다. 이를 위해 본 발명에서는 상기 HostSoftwareControlImageType 객체를 정의한다.Accordingly, in the present invention, to solve the above problems, the software for the eCM is directly downloaded from the host and transmitted to the agent of the eCM. To this end, the present invention defines the HostSoftwareControlImageType object.

이하 첨부된 도면을 참조하여 상세하게 설명하면, 다음과 같다.Hereinafter, described in detail with reference to the accompanying drawings, as follows.

HostSoftwareControlImageType 객체는 eCM에서 FTP(file transfer protocol)로 전송받을 이미지의 형태를 정하는 것이다. 도 4는 본 발명에 따라 상기 HostSoftwareControlImageType 객체의 값을 도시한 것이고, 도 5a 내지 5b는 본 발명에 따라 구성한 형식화된 소프트웨어 컨테이너 구조를 설명하기 위해 도시한 것이다. The HostSoftwareControlImageTyp object defines the type of image that will be transferred from the eCM to a file transfer protocol (FTP). Figure 4 illustrates the value of the HostSoftwareControlImageType object in accordance with the present invention, and Figures 5A-5B illustrate the formatted software container structure constructed in accordance with the present invention.

HostSoftwareControlImageType 객체는 호스트에서 다운로드 받을 소프트웨어 이미지의 타입을 구분할 수 있도록 하며, 상기와 같이 소프트웨어 이미지의 타입을 구분함으로써 소프트웨어 이미지를 전송하는 형식화된 컨테이너도 기존의 형식화된 컨테이너에 더하여 하나의 형식화된 컨테이너에 하나의 소프트웨어 이미지만을 포함하여 전송할 수 있도록 하여 소프트웨어 이미지에 따라 전송 효율을 높이고자 한다. The HostSoftwareControlImageType object allows you to identify the type of software image to be downloaded from the host.As mentioned above, a typed container that transmits a software image by classifying the type of software image is added to one typed container in addition to the existing typed container. We want to increase the transmission efficiency according to the software image by transmitting only the software image.

예를 들어, 상기 HostSoftwareControlImageType 객체의 값이 '0'이면, 소프트웨어 이미지의 타입이 단지 호스트 소프트웨어만을 뜻하고, '1'이면 소프트웨어 이미지의 타입이 단지 eCM 소프트웨어만을 뜻하며, '2'이면 소프트웨어 이미지의 타입이 결합된 소프트웨어임을 뜻한다. 이때, 상기 결합된 소프트웨어는 상기 호스트 소프트웨어와 eCM 소프트웨어의 결합을 뜻할 수도 있다.For example, if the value of the HostSoftwareControlImageType object is '0', the type of the software image means only the host software. If the value is '1', the type of the software image means only the eCM software. This means that it is a combined software. In this case, the combined software may mean a combination of the host software and the eCM software.

상기 HostSoftwareControlImageType 객체는 SNMP 매니저에서 해당 객체를 읽거나 쓸 수 있는 객체로써, 만약 SNMP 매니저에서 어느 하나의 호스트 내 HostSoftwareControlImageType 객체를 읽었을 때, 그 값이 '0' 또는 '1'인 경우에는 해당 소프트웨어만을 형식화된 컨테이너에 포함하여 해당 호스트의 SNMP 에이전트로 전송하면 된다(도 5b).The HostSoftwareControlImageType object is an object that can read or write the object in the SNMP manager. If the HostSoftwareControlImageType object in any one host is read from the SNMP manager, the value is '0' or '1'. It can be included in the container and sent to the SNMP agent of the host (FIG. 5b).

그러나 SNMP 매니저에서 상기 HostSoftwareControlImageType 객체를 읽었을 때, 그 값이 '2'인 경우에는 결합된 소프트웨어를 도 5a와 같은 형식화된 컨테이너에 포함하여 전송하면 된다.However, when reading the HostSoftwareControlImageType object from the SNMP manager, if the value is '2', the combined software may be included in the formatted container of FIG. 5A and transmitted.

상기와 같이 HostSoftwareControlImageType 객체를 정의함으로써, 소프트웨어 이미지를 전송하는 전송단 뿐만 아니라 이를 수신하는 수신단에서도 소프트웨어 다운로드와 관련하여 불필요한 데이터 전송량을 줄이고 과정을 간소화함으로써 서로 효율을 높일 수 있다.By defining the HostSoftwareControlImageType object as described above, not only the transmitting end transmitting the software image but also the receiving end receiving the same can reduce the amount of unnecessary data transmission and simplify the process in connection with the software download, thereby increasing the efficiency of each other.

상술한 바와 같이 HostSoftwareControlImageType 객체에 소프트웨어 이미지 타입을 설정하고, 이와 함께 HostSoftwareControlFilename 객체, HostSoftwareControlServer 객체 등의 정보들을 함께 설정할 수 있다. 또한, 필요한 경우 소프트웨어가 있는 서버의 암호도 함께 설정해 줄 수 있다.Set the image type to HostSoftwareControlImageType software object as described above, and can be configured with the information, such as the same time HostSoftwareControlFilename object, HostSoftwareControlServer object. You can also set a password for the server where the software is located if necessary.

상술한 도 4의 3가지 종류의 이미지 타입에 대하여 호스트는 업그레이드에 사용해도 되는 이미지인지, 누군가가 불손한 의도로 배포한 이미지인지 확인하기 위하여 검증(verification) 절차를 수행한다.With respect to the three types of image types of FIG. 4 described above, the host performs a verification procedure to check whether the image may be used for upgrading or whether the image is distributed by an innocent person.

상기 검증을 위하여 각 벤더(Vendor)는 PKCS #7 타입의 싸인드 이미지(Signed Image)를 케이블 헤드엔드에 제출한다. 기초적인 검증은 SNMP로 시그널(signal) 시 사용한 CVC와 싸인드 이미지 안에 포함되어 있는 CVC가 동일한지 검사하고, MFG CVC의 조직 이름(Organization Name)이 예를 들어, LG Electronics Inc.와 동일한지 조사한다.For the verification, each vendor submits a PKCS # 7 type signed image to the cable headend. Basic validation checks whether the CVC used for signaling with SNMP and the CVC included in the sign image are the same, and whether the MFG CVC's Organization Name is the same as, for example, LG Electronics Inc. do.

그 후 해당 CVC의 유효성 시작 시각(Validity Start Time), 유효성 종료 시각(Validity End Time), 싸이닝 시각(Signing Time)이 적절한지 체크하고, CVC 서명 체인(Certificate Chain) 검사를 수행한다.After that, it checks whether the Validity Start Time, Validity End Time, and Signing Time of the CVC are appropriate, and checks the CVC Certificate Chain.

위의 기초적인 검증 외에도 서명에 관하여 세세한 검증은 추가로 가능하다. 다운로드 받은 싸인드 이미지에 대한 검증이 패스(pass)되면, 호스트는 오리지널 코드 이미지(Original Code Image)를 추출한다.In addition to the basic verification above, detailed verification of the signature is possible. If the verification of the downloaded signed image is passed, the host extracts the original code image.

이때, 상기 이미지 타입에 대한 검증은 호스트에서 할 수 있다. 즉, 소프트웨어 이미지 타입이 단지 eCM 소프트웨어만 있는 경우일지라도 호스트가 이를 검증한 후에 eCM으로 전달하는 구조가 될 수 있다.In this case, the verification of the image type may be performed by the host. In other words, even if the software image type has only eCM software, the host may verify and pass it to the eCM.

따라서, 호스트는 상기 SNMP를 통하여 다운로드 받은 소프트웨어 이미지 타입이 단지 호스트 소프트웨어만인 경우(Host Software Only)라면, "No eCM Software Message"를 상기 eCM으로 전송하고, 이와 달리 단지 eCM 소프트웨어만인 경우(Software Only)이거나 혹은 결합된 소프트웨어(Combined Software)에 eCM에 대한 소프트웨어가 포함된 경우에는 미리 eCM과 약속한 특정 영역에 다운로드 받거나 다운로드 받아 분리한 eCM 소프트웨어를 저장하고 상기 eCM으로 "New eCM Software Message"를 전송한다.Therefore, if the host downloads the software image type through the SNMP is only host software (Host Software Only), the host transmits a "No eCM Software Message" to the eCM, otherwise it is only eCM software (Software Only) or when the combined software includes software for eCM, save the downloaded or downloaded eCM software in a specific area agreed with the eCM and send the "New eCM Software Message" to the eCM. send.

이에 따라 eCM은 호스트로부터 "New eCM Software Message"가 수신되면, 상기 호스트와 약속한 호스트의 특정 영역을 액세스하여 eCM 소프트웨어를 다운로드받는다. 이후 eCM은 상기 호스트가 재부팅되면 상기 다운로드받은 eCM 소프트웨어를 이용하여 부팅 또는 동작하도록 함으로써 해당 소프트웨어를 업그레이드한다.Accordingly, when the eCM receives the "New eCM Software Message" from the host, the eCM accesses a specific area of the host promised with the host and downloads the eCM software. After that, when the host is rebooted, the eCM upgrades the corresponding software by booting or operating the downloaded eCM software.

따라서, 상기 본 발명에 따르면, 원격에서 각 호스트 및 상기 호스트에 내장된 각 디바이스에 설치된 소프트웨어에 대한 정보를 실시간으로 모니터링 할 수 있으며, 각 호스트에 적절한 소프트웨어 이미지 타입을 알 수 있어 해당 타입에 따라 적절한 형식화된 컨테이너를 선택하여 소프트웨어 이미지를 송수신할 수 있다.Therefore, according to the present invention, it is possible to remotely monitor the information on the software installed in each host and each device embedded in the host in real time, it is possible to know the appropriate software image type for each host is appropriate according to the type You can select a formatted container to send and receive software images.

또한, 호스트에서 내장된 각 디바이스에 대한 소프트웨어 이미지를 직접 다운로드 받아 해당 디바이스들로 전송함으로써 불필요한 과정을 줄일 수 있다.In addition, by directly downloading a software image for each device embedded in the host to transmit to the corresponding device can reduce unnecessary processes.

상술한 내용은 본 발명에 따라 호스트에 내장된 eCM의 소프트웨어를 호스트에서 직접 다운로드할 수 있도록 HOST-MIB에 정의한 것에 대해 살펴보았다.In the above description, the definition of HOST-MIB in order to directly download the software of the eCM embedded in the host according to the present invention has been described.

다음으로, 상기 정의한 HOST-MIB의 각 객체에 대해 SNMP 매니지먼트 스테이션과 호스트의 SNMP 에이전트 간의 통신 방식에 대해 설명하면, 다음과 같다. 도 6a 내지 6b는 본 발명과 관련하여 상기 SNMP 매니지먼트 스테이션과 호스트 간의 양방향 통신 방식을 설명하기 위해 도시한 것이다. Next, a description will be given of the communication method between the SNMP management station and the host's SNMP agent for each object of the HOST-MIB defined above. 6A to 6B illustrate two-way communication between the SNMP management station and a host in relation to the present invention.

도 6a를 보면, 상기 매니지먼트 스테이션은 관리 애플리케이션(Management application)과 SNMP 매니저를 구비할 수 있고, 호스트는 관리 객체들(SNMP managed objects)과 SNMP 에이전트를 구비할 수 있다.Referring to FIG. 6A, the management station may include a management application and an SNMP manager, and the host may include SNMP managed objects and an SNMP agent.

상기 SNMP 매니저와 SNMP 에이전트는 서로 패킷을 주고받으며 메시지(message)를 교환하여 정보를 수집한다. 상기 메시지는 패킷 형태로 전송되는바, 상기 메시지 교환을 위한 패킷들에 대해 설명하면, 다음과 같다.The SNMP manager and the SNMP agent exchange packets with each other and exchange messages to collect information. The message is transmitted in the form of a packet. Hereinafter, the packets for the message exchange will be described.

먼저, 상기 SNMP 매니저에서 SNMP 에이전트로 전송하는 패킷들에 대해 설명하면, GetRequest 패킷과 GetNextRequest 패킷은 호스트 내 관리 객체(SNMP managed object)에 대한 정보를 요청하는 패킷이고, SetRequest 패킷은 호스트 내 관리 객체(SNMP managed object)에 대한 설정을 통하여 어떤 동작을 시키려는 의도가 있는 패킷이다.First, the packets transmitted from the SNMP manager to the SNMP agent will be described. GetRequest and GetNextRequest packets are packets for requesting information about SNMP managed objects in a host, and SetRequest packets are managed objects in the host. A packet that is intended to perform some action through the configuration of an SNMP managed object.

다음으로, 상기 SNMP 에이전트에서 SNMP 매니저로 전송하는 패킷들에 대해 설명하면, GetResponse 패킷과 Trap 패킷이 있다. 이때, 상기 GetResponse 패킷은 상술한 GetRequest 패킷과 GetNextRequest 패킷에 대한 응답을 위한 패킷이다. 그리고 상기 Trap 패킷은 호스트에 특정 이벤트(event)가 발생한 경우에 상기 특정 이벤트에 대한 정보를 제공하기 위한 패킷으로, SNMP 매니저는 상기 Trap 패킷을 수신하여 네트워크로 연결된 각 호스트의 상태를 파악하여 그에 따른 처리를 할 수 있다. 이때, 상기 특정 이벤트라 함은 예를 들면, 관리 객체(managed object)가 MIB에 기 정의된 범위를 넘어서거나 또는 값이 특정한 값으로 변경되는 경우를 포함할 수 있다.Next, the packets transmitted from the SNMP agent to the SNMP manager are described as GetResponse packets and Trap packets. In this case, the GetResponse packet is a packet for a response to the above-described GetRequest packet and GetNextRequest packet. The trap packet is a packet for providing information on the specific event when a specific event occurs in a host, and the SNMP manager receives the trap packet to determine the state of each host connected to the network and accordingly You can do it. In this case, the specific event may include, for example, a case where a managed object exceeds a range previously defined in the MIB or a value is changed to a specific value.

도 6b는 상기 패킷들이 송수신되는 흐름을 설명하기 위해 도식화한 것으로, (1)은 요청/응답 메시지들(Request/Response Messages)에 대한 것이고, (2)는 트랩 메시지들(Trap Messages)에 대한 것이고, (3)은 인폼/응답 메시지들(Inform/Response Messages)에 대한 것이다. 이하 (1) 내지 (3)에 대해 설명하면, 다음과 같다.FIG. 6B is a diagram to illustrate the flow in which the packets are sent and received, (1) for Request / Response Messages, and (2) for Trap Messages. , (3) is for Inform / Response Messages. Hereinafter, description will be given of (1) to (3).

먼저, (1)의 요청/응답 메시지들의 흐름에 대해 설명하면, SNMP 매니저에서 GetRequest 패킷, GetNextRequest 패킷과 SetRequest 패킷을 UDP와 IP를 통하여 네트워크 또는 인터넷을 통해 SNMP 에이전트로 전송하면, SNMP 에이전트는 상기 전송되는 패킷이 어떤 종류의 메시지인지 알기 위해 상기 패킷이 GetRequest 패킷, GetNextRequest 패킷과 SetRequest 패킷인지 확인한다.First, the flow of the request / response messages of (1) will be described. When the SNMP manager transmits a GetRequest packet, a GetNextRequest packet, and a SetRequest packet to the SNMP agent through a network or the Internet through UDP and IP, the SNMP agent transmits the transmission. In order to know what kind of message the packet is, the packet is identified as a GetRequest packet, a GetNextRequest packet, and a SetRequest packet.

에이전트는 상기 확인된 패킷이 GetRequest 패킷과 GetNextRequest 패킷이면, 상기 패킷은 관리 객체(SNMP managed object)에 대한 정보를 요청하는 패킷인바, 상기 요청이 MIB에 정의된 자신이 관리하는 객체에 대한 요청인지 여부를 먼저 판단한다. 그리고 상기 판단 결과 해당 요청이 자신이 관리하는 객체에 대한 정보 요청이면, 해당 객체에 대한 정보를 수집하여 상기 수집한 값을 순서대로 정렬하여 GetResponse 패킷을 통해 전송한다.If the identified packet is a GetRequest packet and a GetNextRequest packet, the packet is a packet for requesting information about an SNMP managed object, and whether the request is a request for an object managed by the agent defined in the MIB. Judge first. In response to the determination, if the request is an information request for an object managed by the user, information about the object is collected and the collected values are arranged in order and transmitted through a GetResponse packet.

이와 달리, SNMP 에이전트는 상기 확인된 패킷이 SetRequest 패킷이면, 상기 패킷이 관리 객체(SNMP managed object)에 대한 설정을 통하여 어떤 동작을 시키려는 의도가 있는 패킷인바, 상기 패킷이 MIB에 정의된 자신이 관리하는 객체에 대한 것인지 먼저 판단한다. 그리고 상기 판단 결과 자신이 관리하는 객체에 대한 정보 요청이면, 해당 객체에 대하여 상기 패킷에 따른 설정을 한다.In contrast, if the identified packet is a SetRequest packet, the SNMP agent is a packet that is intended to perform some operation through the setting of a SNMP managed object, and the packet is managed by itself defined in the MIB. First, determine whether the object is about If it is determined that the information request is made for the object managed by the user, the object is configured according to the packet.

이때, SNMP 에이전트는 상기 SNMP 매니저의 요청이 MIB에 정의되지 않은 즉, 자신이 관리하는 객체에 대한 정보 요청인 경우에는 응답을 하지 않을 수 있다.In this case, the SNMP agent may not respond when the request of the SNMP manager is not defined in the MIB, that is, a request for information about an object managed by the SNMP manager.

다음으로, (2)의 트랩 메시지들의 흐름에 대해 설명하면, 먼저 (2)의 트랩 메시지는 상술한 (1)과 달리 SNMP 에이전트에서 SNMP 매니저로 전송하는 것이다.Next, the flow of the trap messages of (2) will be described. First, unlike the above-described (1), the trap messages of (2) are transmitted from the SNMP agent to the SNMP manager.

상술한 바와 같이, SNMP 에이전트는 자신에게 상술한 정의와 같은 특정 이벤트가 발생하면 그에 대한 정보 제공을 위해 상기 SNMP 매니저로 트랩 패킷을 전송할 수 있다.As described above, the SNMP agent may transmit a trap packet to the SNMP manager to provide information on a specific event, such as the definition described above.

요약하면, 객체들은 상기 도 6(a) 내지 6(b)의 (1)과 (2)와 같이 SNMP 데이터 통신 방식을 사용하여 원격지의 SNMP 매니저가 SNMP 에이전트를 통해서 관리 기기(Managed Device)의 각종 상태 정보를 얻어오거나(Get operation), 특정 값을 설정할 수 있으며(Set operation), 상기 관리 기기에서 특정 이벤트가 발생할 때 이를 상기 SNMP 매니저에게 통보(Trap operation)할 수 있다.In summary, the objects are configured by using SNMP data communication method as shown in (1) and (2) of FIGS. 6 (a) to 6 (b) above. The status information may be obtained (Get operation), a specific value may be set (Set operation), and a notification operation may be notified to the SNMP manager when a specific event occurs in the management device.

즉, 매니저 노드(Manager Node)가 되는 케이블 헤드엔드의 매니저 서버(Manger Server)가 MIB에 정의된 객체에 대한 정보를 요청(request)하면, 에이전트(agent)는 해당 객체가 자신이 관리하는 객체에 대한 것인지 확인한 후 그에 대한 응답(response)을 할 수 있다. 반대로 관리되고 있는 객체들 중에 중요한 이벤트나 응급 상황이 발생했을 경우에도 에이전트는 미리 지정된 매니저(manager)에게 해당 이벤트에 대한 상태를 미리 정의된 값(value)으로 알려 주어 매니저(manager)로부터 해당 이벤트에 대한 적절한 처리가 이루어질 수 있도록 할 수 있다. 상기 트랩 메시지(trap message)는 여러 매니저(manager)에게 전송할 수 있다. 그러나 매니저가 상기 트랩 메시지를 원하지 않을 경우에는 MIB에 반드시 정의할 필요는 없다.That is, when a manager server of a cable headend that becomes a manager node requests information about an object defined in the MIB, an agent may request that the object be managed by the object. After confirming that the answer is made, the response can be made. On the contrary, even when an important event or emergency occurs among the managed objects, the agent informs a predefined manager of the status of the event as a predefined value and sends it to the event from the manager. Appropriate treatment can be made. The trap message may be transmitted to various managers. However, if the manager does not want the trap message, it is not necessarily defined in the MIB.

또한, (3)의 인폼/응답 메시지들의 흐름에 대해 설명하면, 다음과 같다. 상술한 SNMP에서는 매니저 외에 인포머(informer)라는 또 다른 객체를 정의하고 있는데, 상기 인포머는 매니저에게 트랩과는 성격이 다른 특별한 정보를 알려주는 역할을 한다. 현재 SNMP에서는 구체적인 구현은 이루어지지 않고 있으나, 복잡한 네트워크 환경을 고려한 동작으로 정의되어 있다.In addition, the flow of the inform / response messages of (3) is as follows. In addition to the manager, the above-described SNMP defines another object called an informer, which informs the manager of special information that is different from a trap. Currently, no specific implementation is implemented in SNMP, but it is defined as an operation considering a complex network environment.

또한, OCAP 환경에서는 상기와 같은 각종 상태 정보들을 제너릭 다이어그너스틱 프로토콜(Generic Diagnostic Protocol)을 이용하여 원격지의 케이블 헤드엔드로 전송할 수도 있다. 그러나 상기 제너릭 다이어그너스틱 프로토콜을 이용하는 경우는 SNMP를 이용하는 경우와 달리 케이블카드가 없는 경우에는 상태 정보들을 원격지의 케이블 헤드엔드로 전송할 수 없다.In addition, in the OCAP environment, the above state information may be transmitted to a cable headend at a remote location using the Generic Diagnostic Protocol. However, unlike the case of using the generic diagnatic protocol, when there is no cable card, status information cannot be transmitted to a cable headend of a remote location.

그러나 SNMP를 이용하는 경우에는 SNMP 에이전트와 MIB를 구비한 호스트가 네트워크를 통해 원격지의 매니지먼트 서버와 연결되어 있으면, 자신이 전송하고자 하는 상태 정보를 매니지먼트 서버가 요청하는 시점에 바로 전송할 수 있다.However, in the case of using the SNMP, if the host having the SNMP agent and the MIB is connected to the remote management server through the network, the management server can immediately transmit the status information that it wants to transmit when the management server requests it.

도 7은 본 발명에 따라 소프트웨어 업그레이드를 위해 구성한 장치 및 시스템의 일 예를 도시한 것이다. SNMP 매니지먼트 스테이션(710)은 SNMP를 이용하여 호스트에 내장된 eCM의 소프트웨어를 원격에서 관리할 수 있다. 즉, SNMP 매니지먼트(710)와 호스트 내 SNMP 에이전트(730)는 네트워크 관리 프로토콜인 SNMP에 따라 데이터를 송수신할 수 있다.7 illustrates an example of an apparatus and a system configured for software upgrade according to the present invention. The SNMP management station 710 may remotely manage the software of the eCM embedded in the host using SNMP. That is, the SNMP management 710 and the SNMP agent 730 in the host may transmit and receive data according to SNMP, which is a network management protocol.

상기 eCM은 네트워크 또는 인터넷과 연결되는 네트워크 인터페이스로, 상기 eCM을 통해 SNMP 매니지먼트 스테이션(710)과 호스트(720)는 케이블로 연결되어 양방향 통신을 할 수 있다.The eCM is a network interface connected to a network or the Internet. The SNMP management station 710 and the host 720 may be connected by cables through the eCM to perform bidirectional communication.

호스트(720)는 상기 SNMP 매니지먼트 스테이션(710)으로부터 다운로드 받는 소프트웨어 이미지를 저장할 저장 매체를 구비할 수 있다. 이때, 상기 저장 매체는 도 7에 도시한 바와 같이 2개 즉, 제 1 메모리(750)와 제 2 메모리(760)를 구비할 수도 있으나, 하나의 메모리만 구비하되 상기 메모리 내에 두 개 이상의 영역으로 구분되면 족하다. 그리고 상기 저장 매체는 비휘발성 메모리일 수 있으며, 플래시 메모리나 하드 디스크일 수도 있다.The host 720 may include a storage medium for storing a software image downloaded from the SNMP management station 710. In this case, as illustrated in FIG. 7, two storage media may be provided, namely, a first memory 750 and a second memory 760. It's enough to distinguish. The storage medium may be a nonvolatile memory, or may be a flash memory or a hard disk.

또한, 호스트(720)는 OSD 유닛(On Screen Display Unit)(770)을 구비할 수 있다. 상기 OSD 유닛(770)은 그래픽 프로세서(graphic processor)와 같이 화면의 해상도와 관련 없이 화면에 메시지나 그래픽을 표현할 수 있다.In addition, the host 720 may include an On Screen Display Unit (OSD) 770. The OSD unit 770 may display a message or a graphic on a screen such as a graphic processor regardless of the resolution of the screen.

호스트 내 SNMP 에이전트(730)는 상기 호스트(720)의 CPU를 이용하여 동작할 수 있으며 SNMPv1, SNMPv2 및 SNMPv3를 만족하도록 즉, SNMP 규격에 맞게 제작되며, 미리 정해진 MIB에 포함되는 관리 객체를 포함한다.The SNMP agent 730 in the host may operate using the CPU of the host 720, and may be configured to satisfy SNMPv1, SNMPv2, and SNMPv3, that is, be manufactured according to the SNMP standard and include a management object included in a predetermined MIB. .

만약 호스트(720)에 전원이 인가되면, eCM(740)은 네트워크 또는 인터넷과 연결될 수 있고, SNMP 에이전트(730)는 네트워크 또는 인터넷과 연결을 확인한다.If power is supplied to the host 720, the eCM 740 may be connected to a network or the Internet, and the SNMP agent 730 confirms the connection to the network or the Internet.

그리고 SNMP 매니지먼트 스테이션(710)은 eCM(740)을 통해 SNMP 에이전트(730)가 연결 여부를 확인하고, 필요한 경우 SNMP 에이전트(730)에 GetRequest 패킷과 GetNextRequest 패킷을 전송하여 원하는 정보를 요청한다.The SNMP management station 710 checks whether the SNMP agent 730 is connected through the eCM 740, and transmits a GetRequest packet and a GetNextRequest packet to the SNMP agent 730 to request desired information, if necessary.

예를 들어, SNMP 매니지먼트 스테이션(710)에서 eCM(740)의 소프트웨어에 대한 정보를 상기 GetRequest 패킷을 통해 요청하면, SNMP 에이전트(730)는 상기 패킷이 자신이 관리하는 객체에 대한 요청인지 판단한다. 이때, 상술한 바와 같이 eCM에 대한 소프트웨어와 관련하여 객체를 미리 정의한바, SNMP 에이전트(730)는 상기 요청에 따라 eCM(740)에 정보 수집을 요청하여 이를 수신한 후 GetResponse 패킷을 통해 상기 SNMP 매니지먼트 스테이션(710)의 요청에 응답한다.For example, when the SNMP management station 710 requests information about the software of the eCM 740 through the GetRequest packet, the SNMP agent 730 determines whether the packet is a request for an object managed by the SNMP management station 710. In this case, as described above, the object is previously defined in relation to the software for the eCM, and the SNMP agent 730 requests the eCM 740 to collect information according to the request, receives the received information, and then receives the SNMP management through the GetResponse packet. Respond to the request of the station 710.

그리고 상기 SNMP 매니지먼트 스테이션(710)은 상기 SNMP 에이전트(730)의 응답에 근거하여 소프트웨어 업그레이드의 필요 여부를 판단한다. 상기 판단 결과 만약 업그레이드가 필요하다면, HostSoftwareControlImageType 객체에 접근하여 '1'값을 설정하고 소프트웨어를 도 5b와 같이 정의한 형식화된 컨테이너에 포함하여 전송한다. 이때, 만약 필요한 경우 HostSoftwareControlMessageOnScreen 객체에 접근하여 업그레이드 여부를 OSD 유닛(770)을 통해 문의할 수 있으며, 상기 문의 결과에 따라 사용자가 수락 내지 업그레이드하겠다는 응답이 있으면 상술한 바와 같이 전송하고, 그렇지 않고 업그레이드를 거부하면 상황을 종료할 수 있다.The SNMP management station 710 determines whether a software upgrade is necessary based on the response of the SNMP agent 730. As a result of the determination, if an upgrade is required, the HostSoftwareControlImageType object is accessed, the value '1' is set, and the software is included in the typed container defined in FIG. 5B and transmitted. In this case, if necessary, the HostSoftwareControlMessageOnScreen object may be accessed to inquire whether or not to upgrade through the OSD unit 770, and if the user responds to accept or upgrade according to the result of the inquiry, transmit as described above. If you refuse, you can end the situation.

상기와 같이 SNMP 매니지먼트 스테이션(710)에서 소프트웨어를 전송하면, SNMP 에이전트(730)는 미리 약속된 영역 예를 들어, 제 2 메모리(760)에 상기 전송되는 소프트웨어를 저장한다. 그리고 eCM(740)으로 상기 eCM에 대한 소프트웨어가 수신되었음을 알린다.When the software is transmitted from the SNMP management station 710 as described above, the SNMP agent 730 stores the transmitted software in a predetermined area, for example, the second memory 760. And informs the eCM 740 that the software for the eCM has been received.

이에 따라, eCM(740)은 상기 제 2 메모리(760)에 접근하여 해당 소프트웨어를 읽어 와 자신의 저장 공간(미도시)에 저장한다.Accordingly, the eCM 740 accesses the second memory 760, reads the corresponding software, and stores the software in its own storage space (not shown).

그리고 호스트(720)가 재부팅되면, 이와 함께 상기 eCM(740)도 재부팅되면서 상기 저장한 새로운 소프트웨어를 구동하여 시스템을 작동한다.When the host 720 is rebooted, the eCM 740 is also rebooted along with driving the stored new software to operate the system.

이때, 사용자는 상기 소프트웨어 다운로드 중에도 방송 수신기(720)를 통해 방송 시청은 가능하다.At this time, the user can watch the broadcast through the broadcast receiver 720 even during the software download.

또한, 상기 eCM(740)은 읽어 온 새로운 소프트웨어가 결함이 발생하여 상기 재부팅 시에 시스템 작동이 실패한 경우, 임의의 영역에 에러(error)를 기록하고 기존 소프트웨어를 이용하여 시스템을 작동시킨다. 이에 따라, 호스트(720)와 eCM(740)은 다운로드 받은 새로운 소프트웨어의 문제 등으로 인해 시스템의 동작이 불능인 경우에도 유연하게 대처할 수 있다.In addition, the eCM 740 records an error in an arbitrary area and operates the system by using existing software when a new software read is defective and the system operation fails at the reboot. Accordingly, the host 720 and the eCM 740 can flexibly cope with the case where the operation of the system is impossible due to the problem of new software downloaded.

상술한 바와 같이, 매니지먼트 스테이션과 호스트는 양방향 통신을 통해 소프트웨어를 업그레이드할 수 있다.As described above, the management station and the host can upgrade the software through bidirectional communication.

또한, 상술한 본 발명에 따르면, 호스트의 A/S를 위해 각 가정을 방문하지 않아도 원격지에서 소프트웨어 업그레이드 등을 통해 A/S를 하여 비용 및 고객의 불만을 최소화할 수 있다.In addition, according to the present invention described above, it is possible to minimize the cost and customer dissatisfaction by performing the A / S through a software upgrade, etc. in a remote location without visiting each home for the A / S of the host.

이하 소프트웨어 업그레이드가 되는 과정을 설명하면, 다음과 같다. 도 8은 본 발명에 따른 소프트웨어 업그레이드 방법을 설명하기 위해 도시한 순서도의 일 예이다.Hereinafter, the process of upgrading the software will be described. 8 is an example of a flowchart illustrating a software upgrade method according to the present invention.

SNMP 매니지먼트 스테이션에서 각 호스트에 내장된 eCM의 소프트웨어에 대한 정보를 요청한다(S810).The SNMP management station requests information about the software of the eCM embedded in each host (S810).

해당 호스트의 SNMP 에이전트는 상기 SNMP 매니지먼트 스테이션의 요청에 따라 eCM의 소프트웨어에 대한 정보를 수집하여, 상기 수집한 eCM의 소프트웨어에 대한 정보를 상기 SNMP 매니지먼트 스테이션으로 응답한다(S820).The SNMP agent of the host collects information on the software of the eCM according to the request of the SNMP management station, and responds to the SNMP management station with the collected information about the software of the eCM (S820).

SNMP 매니지먼트 스테이션은 상기 SNMP 에이전트의 응답에 따라 해당 호스트에 내장된 eCM의 소프트웨어에 대한 업그레이드 여부를 판단하여, 상기 판단 결과 업그레이드가 필요하면 해당 호스트의 SNMP 에이전트로 업그레이드할 새로운 소프트웨어를 전송한다(S850). 이때, 상기 SNMP 매니지먼트 스테이션은 해당 호스트의 SNMP 에이전트로 업그레이드 유무를 문의하고(S830), 해당 호스트에서의 상기 SNMP 매니지먼트 스테이션의 문의에 따라 상기 문의 내용을 OSD 유닛을 통해 사용자에게 표시하고 사용자의 업그레이드 선택에 따른 의사를 다시 SNMP 매니지먼트 스테이션으로 전송한다(S840).The SNMP management station determines whether to upgrade the software of the eCM embedded in the host according to the response of the SNMP agent, and if it is necessary to upgrade, transmit the new software to upgrade to the SNMP agent of the corresponding host (S850). . In this case, the SNMP management station inquires whether or not to upgrade the SNMP agent of the host (S830), and displays the contents of the inquiry to the user through the OSD unit according to the inquiry of the SNMP management station in the host, and selects the user's upgrade Transmitting the doctor according to the SNMP management station again (S840).

호스트의 SNMP 에이전트는 상기 전송된 새로운 소프트웨어를 eCM과 미리 약속한 특정 영역에 저장하고 상기 eCM의 에이전트에게 읽어가도록 요청한다(S860).The SNMP agent of the host stores the transmitted new software in a specific area previously agreed with the eCM and requests to read the agent of the eCM (S860).

상기 eCM의 에이전트는 상기 요청에 따라 호스트에 접근하여 저장된 새로운 소프트웨어를 읽어 와, 상기 호스트가 재부팅되면 상기 호스트에 내장된 eCM도 함께 재부팅되면서 상기 저장한 새로운 소프트웨어를 이용하여 eCM을 작동한다(S870). 이때, 만약 상기 새로운 소프트웨어의 에러 등으로 인해 eCM이 제대로 작동하지 않으면 기존 소프트웨어를 이용하여 작동할 수 있다.The agent of the eCM reads the new software stored in the host according to the request, and when the host is rebooted, the eCM embedded in the host is also rebooted to operate the eCM using the stored new software (S870). . In this case, if the eCM does not operate properly due to the error of the new software, it may operate using the existing software.

이상에서 설명한 바와 같은 본 발명에 따른 케이블 환경에서 소프트웨어 업그레이드 방법 및 장치에 의하면,According to the software upgrade method and apparatus in the cable environment according to the present invention as described above,

첫째, 송신 단에서 수신 단의 소프트웨어 상태와 업그레이드 유무를 확인할 수 있고, 수신 단에서는 새로운 소프트웨어를 다운로드 할 수 있는 효과가 있다.First, the transmitter can check the software status of the receiver and whether there is an upgrade, and the receiver can download new software.

둘째, 형식화된 소프트웨어 컨테이너의 형태에 따라 선별적으로 다운로드 하여 업그레이드할 수 있는 효과가 있다.Second, there is an effect that can be selectively downloaded and upgraded according to the type of formalized software container.

셋째, 특정 소프트웨어를 업그레이드함에 있어서, 호스트에 있는 에이전트를 직접 접근함으로써 업그레이드 과정을 단순화시킬 수 있는 효과가 있다.Third, in upgrading specific software, the upgrade process can be simplified by directly accessing the agent in the host.

넷째, 수신 단에서는 다운로드 한 새로운 소프트웨어의 버그에 의한 문제를 최소화할 수 있는 효과가 있다.Fourth, the receiving end has the effect of minimizing the problems caused by the bug of the new software downloaded.

다섯째, 원격지에서 소프트웨어 업그레이드를 할 수 있어 A/S에 따른 비용 내지 고객의 불만을 최소화할 수 있는 효과가 있다.Fifth, the software can be upgraded from a remote location, which can minimize the cost of customer service or customer complaints.

이상 설명한 내용을 통해 당업자라면 본 발명의 기술 사상을 일탈하지 아니하는 범위에서 다양한 변경 및 수정 가능함을 알 수 있을 것이다.Those skilled in the art will appreciate that various changes and modifications can be made without departing from the spirit of the present invention.

따라서, 본 발명의 기술적 범위는 실시 예에 기재된 내용으로 한정되는 것이 아니라 특허 청구의 범위에 의하여 정해져야 한다.Therefore, the technical scope of the present invention should not be limited to the contents described in the embodiments, but should be defined by the claims.

Claims (18)

소프트웨어 매니저와 네트워크로 연결된 방송 수신기에 구비된 커뮤니케이션 디바이스의 소프트웨어를 업그레이드하는 방법에 있어서,In the method of upgrading the software of the communication device provided in the broadcast receiver networked with the software manager, 상기 방송 수신기가 상기 소프트웨어 매니저로부터 상기 네트워크를 관리할 수 있는 네트워크 관리 프로토콜에 따라 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보 요청을 수신하는 단계;Receiving, by the broadcast receiver, an information request for software of the communication device according to a network management protocol capable of managing the network from the software manager; 상기 방송 수신기가 상기 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 수집하여 상기 네트워크 관리 프로토콜에 따라 상기 소프트웨어 매니저로 응답하는 단계;The broadcast receiver collecting information about the software of the communication device and responding to the software manager according to the network management protocol; 상기 방송 수신기가 상기 소프트웨어 매니저로부터 상기 방송 수신기의 응답에 대응하는 업그레이드할 소프트웨어를 수신하는 단계;Receiving, by the broadcast receiver, software to upgrade corresponding to the broadcast receiver's response from the software manager; 상기 방송 수신기가 상기 수신된 소프트웨어를 저장하는 단계; 및Storing, by the broadcast receiver, the received software; And 상기 커뮤니케이션 디바이스에서 상기 방송 수신기에 저장된 소프트웨어를 읽어 와 상기 방송 수신기 재부팅 시에 상기 읽어 온 소프트웨어로 작동하여 업그레이드하는 단계를 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.Reading the software stored in the broadcast receiver from the communication device and operating and upgrading the read software upon rebooting the broadcast receiver. 제 1항에 있어서,The method of claim 1, 상기 네트워크 관리 프로토콜은 SNMP인 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.And said network management protocol is SNMP. 제 1항에 있어서,The method of claim 1, 상기 소프트웨어에 대한 정보는 상기 방송 수신기에서 소프트웨어를 다운로드하거나 재부팅 시킬 수 있는 소프트웨어 제어에 관한 정보를 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.And the information about the software includes information about software control to download or reboot the software at the broadcast receiver. 제 3항에 있어서,The method of claim 3, 상기 소프트웨어 제어에 관한 정보는 소프트웨어 이미지 타입에 관한 정보를 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.And wherein the information about the software control comprises information about a software image type. 제 4항에 있어서,5. The method of claim 4, 상기 소프트웨어 이미지 타입에 관한 정보는 상기 커뮤니케이션 디바이스에서 상기 네트워크를 통해 하나의 형식화된 컨테이너에 포함되어 전송되는 소프트웨어 이미지의 타입에 관하여 정의한 내용을 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.The information about the software image type includes contents defined by the communication device regarding a type of a software image that is included and transmitted in one formatted container through the network. 제 4항에 있어서,5. The method of claim 4, 상기 소프트웨어 제어에 관한 정보는 압축된 소프트웨어 이미지를 추출하기 위한 액세스 코드에 관한 정보를 더 포함하되,The information about the software control further includes information about an access code for extracting the compressed software image, 상기 액세스 코드에 관한 정보는 지원하는 액세스 코드가 없으면 무시하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.Information regarding the access code is ignored if there is no supporting access code. 제 1항에 있어서,The method of claim 1, 상기 방송 수신기가 수신한 상기 업그레이드할 소프트웨어의 소프트웨어 이미지를검증하는 단계를 더 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.Verifying a software image of the software to be upgraded received by the broadcast receiver. 제 7항에 있어서,8. The method of claim 7, 상기 검증 결과 소프트웨어 이미지 타입이 상기 방송 수신기의 소프트웨어만 포함한 타입인 경우에는 상기 커뮤니케이션 디바이스로 해당 소프트웨어가 없음을 나타내는 메시지를 전송하고, 상기 커뮤니케이션 디바이스의 소프트웨어만을 포함한 타입이거나 상기 방송 수신기와 커뮤니케이션 디바이스의 소프트웨어가 결합된 타입인 경우에는 새로운 소프트웨어가 다운로드 되었음을 나타내는 메시지를 전송하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.If the verification result shows that the software image type is a type including only the software of the broadcast receiver, a message indicating that there is no corresponding software is transmitted to the communication device, and the type includes only software of the communication device or software of the broadcast receiver and the communication device. Is a combined type, the software upgrade method of the communication device transmitting a message indicating that the new software has been downloaded. 제 1항에 있어서,The method of claim 1, 상기 커뮤니케이션 디바이스는 상기 방송 수신기에 내장된 케이블 모뎀을 포함하는 커뮤니케이션 디바이스의 소프트웨어 업그레이드 방법.And the communication device comprises a cable modem embedded in the broadcast receiver. 소프트웨어 매니저를 포함하는 매니지먼트 스테이션과 네트워크로 연결되어 커뮤니케이션 디바이스의 소프트웨어를 업그레이드하는 방송 수신기에 있어서,A broadcast receiver connected to a network with a management station including a software manager to upgrade software of a communication device, the broadcast receiver comprising: 상기 방송 수신기는,The broadcast receiver, 수신되는 소프트웨어를 특정 영역에 저장하는 저장부;A storage unit for storing the received software in a specific area; 상기 네트워크를 관리하는 네트워크 관리 프로토콜에 따라 상기 저장된 소프트웨어에 관련된 정보를 송수신을 제어하고, 상기 특정 영역에 저장된 소프트웨어가 저장되었음을 커뮤니케이션 디바이스로 알리도록 제어하는 제어부; 및A control unit for controlling transmission and reception of information related to the stored software according to a network management protocol for managing the network and for notifying a communication device that software stored in the specific area is stored; And 상기 특정 영역에 저장된 소프트웨어를 읽어와 저장한 후 수신기가 재부팅되면 상기 읽어와 저장한 소프트웨어를 이용하여 작동하는 커뮤니케이션 디바이스를 포함하고, A communication device which operates by using the read and stored software when the receiver is rebooted after reading and storing the software stored in the specific region, 여기서 상기 방송 수신기는 상기 매니지먼트 스테이션의 요청에 따라 기 구비된 커뮤니케이션 디바이스의 소프트웨어에 대한 정보를 수집하여 상기 매니지먼트 스테이션으로 전송하고, 상기 매니지먼트 스테이션으로부터 전송되는 업그레이드할 새로운 소프트웨어를 수신하여 저장하는 방송 수신기.Wherein the broadcast receiver collects information about software of a communication device provided in advance at the request of the management station, transmits the information to the management station, and receives and stores new software to be upgraded from the management station. 제 10항에 있어서,The method of claim 10, 상기 방송 수신기는 상기 매니지먼트 스테이션으로부터 업그레이드 유무를 문의하는 신호가 수신되면, 이를 표시하는 OSD 유닛을 더 포함하는 방송 수신기.The broadcast receiver further includes an OSD unit for displaying a signal for inquiring about the upgrade from the management station, if it is received. 제 10항에 있어서,The method of claim 10, 상기 제어부는 SNMP 에이전트를 포함하는 방송 수신기.The control unit includes a broadcast receiver. 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete 삭제delete
KR1020070016130A 2007-02-15 2007-02-15 Method, apparatus and system for upgrading software KR101319890B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070016130A KR101319890B1 (en) 2007-02-15 2007-02-15 Method, apparatus and system for upgrading software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070016130A KR101319890B1 (en) 2007-02-15 2007-02-15 Method, apparatus and system for upgrading software

Publications (2)

Publication Number Publication Date
KR20080076337A KR20080076337A (en) 2008-08-20
KR101319890B1 true KR101319890B1 (en) 2013-10-18

Family

ID=39879612

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070016130A KR101319890B1 (en) 2007-02-15 2007-02-15 Method, apparatus and system for upgrading software

Country Status (1)

Country Link
KR (1) KR101319890B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8914790B2 (en) 2012-01-11 2014-12-16 Microsoft Corporation Contextual solicitation in a starter application

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063694A (en) * 2002-01-23 2003-07-31 주식회사 엘지이아이 Software upgrade apparatus and method for digital broadcasting receiver
KR20060000063A (en) * 2004-06-28 2006-01-06 삼성전자주식회사 Method and system for software upgrade of stb
KR20060067348A (en) * 2004-12-15 2006-06-20 엘지전자 주식회사 Method for program update in slave device
KR20060126259A (en) * 2005-06-03 2006-12-07 엘지전자 주식회사 Method and apparatus of software upgrade in digital receiver

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030063694A (en) * 2002-01-23 2003-07-31 주식회사 엘지이아이 Software upgrade apparatus and method for digital broadcasting receiver
KR20060000063A (en) * 2004-06-28 2006-01-06 삼성전자주식회사 Method and system for software upgrade of stb
KR20060067348A (en) * 2004-12-15 2006-06-20 엘지전자 주식회사 Method for program update in slave device
KR20060126259A (en) * 2005-06-03 2006-12-07 엘지전자 주식회사 Method and apparatus of software upgrade in digital receiver

Also Published As

Publication number Publication date
KR20080076337A (en) 2008-08-20

Similar Documents

Publication Publication Date Title
US10863239B2 (en) Methods and apparatus for software provisioning of a network device
US10123075B2 (en) Set top box
US20070288984A1 (en) Digital broadcast receiver and method for receiving a software
US20040054771A1 (en) Method and apparatus for the remote retrieval and viewing of diagnostic information from a set-top box
ES2764778T3 (en) Management methods of a video device and the corresponding video device
US6469742B1 (en) Consumer electronic devices with adaptable upgrade capability
US20080155245A1 (en) Network booting apparatus and method
US20110145809A1 (en) Method and apparatus for upgrading software in customer premise equipment
CN101083746A (en) Broadcast receiver and method for providing diagnostic information
US20100211629A1 (en) Expandable element management system in wireless communication network
US20080168513A1 (en) Broadcast receiver and method for transmitting reception status of the broadcast receiver
KR101319890B1 (en) Method, apparatus and system for upgrading software
CN113766041B (en) Method, device, equipment and storage medium for acquiring Media Access Control (MAC) address of first server
CN111784179A (en) Server basic information management system and method
EP2302513A1 (en) Method and system for updating a software image at a client device
US20080040769A1 (en) Broadcast receiving apparatus, application transmitting/receiving method and reception status information transmitting method
KR100795578B1 (en) Firmware management system for customer equipment and method thereof
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.2
Cisco Catalyst 3000 Release Note Version 1.1.3
Cisco Catalyst 3000 Release Note Version 1.1.3

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160923

Year of fee payment: 4