KR101862353B1 - 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법 - Google Patents

업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법 Download PDF

Info

Publication number
KR101862353B1
KR101862353B1 KR1020110100035A KR20110100035A KR101862353B1 KR 101862353 B1 KR101862353 B1 KR 101862353B1 KR 1020110100035 A KR1020110100035 A KR 1020110100035A KR 20110100035 A KR20110100035 A KR 20110100035A KR 101862353 B1 KR101862353 B1 KR 101862353B1
Authority
KR
South Korea
Prior art keywords
information
upgrade
ticket
server
client
Prior art date
Application number
KR1020110100035A
Other languages
English (en)
Other versions
KR20130035622A (ko
Inventor
손영수
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020110100035A priority Critical patent/KR101862353B1/ko
Priority to US13/474,171 priority patent/US9158527B2/en
Publication of KR20130035622A publication Critical patent/KR20130035622A/ko
Application granted granted Critical
Publication of KR101862353B1 publication Critical patent/KR101862353B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/55Push-based network services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법이 제공된다. 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템은 업그레이드 방식이 적응적으로 변경될 수 있는 서버, 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트 및 티켓 제어 장치를 포함할 수 있다. 업그레이드 방식이 적응적으로 변경될 수 있는 서버는, 티켓을 포함하는 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 수신하기 위한 서버 인터페이스부; 업그레이드 대상이 되는 적어도 하나의 클라이언트들이 등록되는 푸싱부; 및 티켓 제어 장치와 접속되고, 서버 인터페이스부로부터 업그레이드에 관련되는 정보를 수신받고, 수신되는 업그레이드에 관련되는 정보에 기초하여 푸싱부에 의한 적어도 하나의 클라이언트들로의 업그레이드를 스케줄링하는 푸싱 스케줄링부를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.

Description

업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법{Upgrade system and method having adaptive changable upgrade process}
본 발명은 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법에 관한 것으로, 더욱 특정하게는, 별개의 시스템을 구축하지 않더라도 상황에 따라 푸시(Push), 폴링(Polling), 하프-푸시(Half-Push)/하프-폴링(Half-Polling) 형태의 업그레이드 방식으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방식에 관한 것이다.
최근 들어, 클라이언트/서버 모델은 네트워크 컴퓨팅의 주요 개념이 되었다. 오늘날 만들어지고 있는 대부분의 업무용 프로그램들은 클라이언트/서버 모델을 적용하고 있으며, 인터넷의 주요 프로그램인 TCP/IP 또한 마찬가지다. 예를 들어, 인터넷의 경우, 웹 브라우저는 인터넷상의 어딘가에 위치한 웹 서버에게 웹 페이지나 파일의 전송을 요구하는 클라이언트 프로그램의 일종이라 할 수 있다. 일반적인 클라이언트/서버 모델에서는 보통 데몬(daemon)이라 불리는 서버 프로그램이 먼저 활성화된 상태에서 클라이언트의 요구사항을 기다리는데, 대체로 다수의 클라이언트 프로그램이 하나의 서버 프로그램을 공유한다.
이와 같은 클라이언트/서버 모델에서의 일반적인 데이터의 전송 방식에는 폴링(Polling) 방식과 푸시(Push) 방식, 하프-푸시(Half-Push)/하프-폴링(Half-Polling) 방식이 있다.
폴링 방식은 예를 들어, 클라이언트들이 주기적으로 서버 상의 모듈의 버젼 등을 체크하여 서버 상의 모듈의 버젼 등이 업데이트되어 있을 경우 클라이언트가 서버로부터 모듈을 업그레이드하기 위한 업그레이드 파일을 다운로드받는 형식으로 구성되어 있다.
푸시 방식은 서버에서 관리하고 있는 클라이언트의 정보를 기반으로 서버가 클라이언트의 IP주소를 찾아가 클라이언트가 설정해 놓은 옵션에 따라 데이터를 직접 전송하는 방식으로 구성되어 있다. 즉, 서버에서 클라이언트 상의 모듈의 버젼등을 관리하고, 업그레이드할 클라이언트 상의 모듈을 선정해서, 업그레이드 대상이 될 클라이언트에 통지(notification)하는 방식으로 구성될 수 있다.
폴링 방식 또는 푸시 방식의 단점을 보완하기 위하여 푸시와 폴링을 적절히 섞어서 사용하는 하프-푸시/하프-폴링 방식이 존재하기도 한다. 이를 테면, 하프-푸시/하프-폴링 방식은 서버의 업데이트 시간 배분과 스케줄링 기법을 이용하여 클라이언트에게 적합한 업그레이드가 가능하도록 푸시와 폴링 방식을 적절히 조합하여 클라이언트의 업그레이드를 지원하는 방식을 포함할 수 있다.
본 발명의 일 실시예로서, 업그레이드 방식이 적응적으로 변경될 수 있는 서버가 제공된다. 업그레이드 방식이 적응적으로 변경될 수 있는 서버는 티켓을 포함하는 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 수신하기 위한 서버 인터페이스부; 업그레이드 대상이 되는 적어도 하나의 클라이언트들이 등록되는 푸싱부; 및 티켓 제어 장치와 접속되고, 서버 인터페이스부로부터 업그레이드에 관련되는 정보를 수신받고, 수신되는 업그레이드에 관련되는 정보에 기초하여 푸싱부에 의한 적어도 하나의 클라이언트들로의 업그레이드를 스케줄링하는 푸싱 스케줄링부를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 다른 실시예로서, 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트가 제공된다. 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트는 서버로의 접속을 제어하기 위한 클라이언트 어댑터; 서버로부터 모듈을 다운로드 받기 위한 폴링부; 및 티켓을 포함하는 티켓 제어 장치와 접속되고, 티켓 제어 장치로부터 제공되는 업그레이드에 관련되는 정보를 수신하며, 수신되는 업그레이드에 관련되는 정보에 기초하여 폴링부에 의한 클라이언트의 업그레이드를 스케줄링하는 폴링 스케줄링부를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 또 다른 실시예로서, 업그레이드 방식을 적응적으로 변경시키기 위하여 서버와 클라이언트 사이에서 이용되는 티켓 제어 장치가 제공된다. 업그레이드 방식을 적응적으로 변경시키기 위하여 서버와 클라이언트 사이에서 이용되는 티켓 제어 장치는 티켓에 대한 정보를 포함하고 있는 티켓을 저장하기 위한 티켓 저장부; 티켓 저장부에 저장된 티켓에 대한 정보를 분석하고, 분석된 정보에 기초하여 서버와 클라이언트 사이에 채널을 형성하기 위한 티켓 관리부를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 또 다른 실시예로서, 업그레이드 방식을 적응적으로 변경시키기 위한 방법이 제공된다. 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 티켓을 포함하는 티켓 제어 장치와 서버가 접속되는 단계; 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 서버의 서버 인터페이스에서 수신하는 단계; 업그레이드 대상이 되는 적어도 하나의 클라이언트들이 서버에 등록되는 단계; 서버의 서버 인터페이스로부터 수신된 업그레이드에 관련되는 정보가 서버의 푸싱 스케줄링부로 통지되고, 서버의 푸싱 스케줄링부에서 적어도 하나의 클라이언트들에 대한 업그레이드를 스케줄링하는 단계를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 또 다른 실시예로서, 업그레이드 방식을 적응적으로 변경시키기 위한 방법이 제공된다. 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 서버와 클라이언트가 접속되는 단계; 클라이언트와 티켓을 포함하는 티켓 제어 장치가 접속되는 단계; 티켓 제어 장치로부터의 업그레이드에 관련되는 정보를 클라이언트의 폴링 스케줄링부에서 수신하는 단계; 수신된 업그레이드에 관련되는 정보에 기초하여 클라이언트의 폴링 스케줄링부에서 클라이언트의 업그레이드 스케줄을 생성하는 스케줄링 단계를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 또 다른 실시예로서, 업그레이드 방식을 적응적으로 변경시키기 위한 방법이 제공된다. 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 서버 및 클라이언트 중 적어도 하나와 티켓을 포함하는 티켓 제어 장치가 접속되는 단계; 티켓 제어 장치에서 티켓에 대한 정보를 분석하고, 분석된 정보에 기초하여 서버와 클라이언트 사이에 채널을 생성하는 단계를 포함할 수 있다. 티켓은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다.
본 발명의 또 다른 실시예로서, 전술한 방법들을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체가 제공된다.
도 1은 본 발명에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템을 도시한다.
도 2는 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버를 도시한다.
도 3은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트를 도시한다.
도 4는 본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위하여 서버와 클라이언트 사이에서 이용되는 티켓 제어 장치를 도시한다.
도 5는 본 발명의 일 실시예에 따른 티켓 제어 장치의 티켓 저장부에 저장되는 티켓을 도시한다.
도 6은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버, 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트 및 티켓 제어 장치의 동작을 도시한다.
도 7은 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
도 8은 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
도 9는 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
도 10은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버, 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트 및 티켓 제어 장치의 동작을 도시한다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
본 발명의 실시 예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시 예에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
클라이언트와 서버 사이의 일반적인 데이터의 전송 방식에는 폴링(Polling) 방식과 푸시(Push) 방식, 하프-푸시(Half-Push)/하프-폴링(Half-Polling) 방식이 있다. 종래의 많은 업그레이드 시스템은 자사의 상황에 따라, 폴링, 푸시, 하프-푸시/하프-폴링 방식의 형태로 업그레이드 시스템을 구축해왔다. 즉, 종전의 많은 시스템들은 푸시, 폴링, 하프-푸시/하프-폴링 형태로 업그레이드하기 위하여 각각 별개의 시스템을 구축해왔다. 하지만 최근 디바이스들의 다양한 성격에 따라, 어떠한 모듈(예를 들어, 보안 연관 모듈)을 긴급하게 푸시 형태로 긴급하게 서버로부터 클라이언트로 전송할 수 있어야 하며, 어떤 모듈은 클라이언트들이 취사 선택하여 다운로드 받을 수 있는 폴링 형태로 제공되어야 한다. 또한 빌딩 관리 시스템(BEMS) 같은 경우, 보안/방범에 관련된 모듈의 변경 사항들은 푸시 형태로 빠르게 변경 사항이 전달되어야 하지만, 사무실의 프린터 드라이버 업데이트는 긴급함을 요구하지 않는다.
특히 폴링 방식은 클라이언트들이 주기적으로 서버 상의 모듈의 버젼 등을 체크함으로써 서버와 클라이언트 모두에 과부하가 발생할 수 있다는 문제점이 있으며, 모든 클라이언트들이 동일한 버젼을 유지해야한다는 문제점이 있다.
또한, 푸시 방식은 업그레이드 시 전원이 꺼져 있거나 업그레이드 중 클라이언트가 종료되면 클라이언트 업그레이드가 불가능해진다는 문제점이 있었다. 또한, 서버가 모든 클라이언트를 관리해야 하며, 특정 클라이언트를 주기적으로 체크해 줘야 한다는 단점이 있었다. 또한, 클라이언트의 IP주소가 고정된 경우에만 적용될 수 있는 단점이 있었다.
본 발명은 상황에 따라, 푸시, 폴링, 하프-푸시/하프-폴링 형태의 업그레이드 방식을 유연하게 변경할 수 있는 구조를 가진 업그레이드 시스템 및 업그레이드 방법을 제공한다. 또한, 푸시, 폴링, 하프-푸시/하프-폴링 형태의 세 가지 업그레이드 방식 이외에, 추후에 발생할 여러 가지 업그레이드 방식도 쉽게 지원할 수 있는 구조를 가지고 있다.
다만 본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 본 발명이 속하는 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
이하에서는 도면을 참조하여 본 발명의 실시예들을 상세히 설명한다.
도 1은 본 발명에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템(100)을 도시한다. 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템(100)은 업그레이드 방식이 적응적으로 변경될 수 있는 서버(110), 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트(120) 및 티켓 제어 장치(130)를 포함할 수 있다. 티켓 제어 장치(130)는 서버(110) 또는 클라이언트(120)의 일부일 수도 있고, 별개의 독립 장치일 수 있다.
도 2는 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버를 도시한다.
업그레이드 방식이 적응적으로 변경될 수 있는 서버(110)는, 서버 인터페이스부(210), 푸싱부(220) 및 푸싱 스케줄링부(230)를 포함할 수 있다. 서버 인터페이스부(210)는 티켓(420)을 포함하는 티켓 제어 장치(130)로부터 클라이언트의 업그레이드에 관련되는 정보를 수신할 수 있다. 푸싱부(220)는 업그레이드 대상이 되는 적어도 하나의 클라이언트(120)들이 등록될 수 있다. 푸싱 스케줄링부(230)는 티켓 제어 장치(130)와 접속되고, 서버 인터페이스부(210)로부터 업그레이드에 관련되는 정보를 수신받고, 수신되는 업그레이드에 관련되는 정보에 기초하여 푸싱부(220)에 의한 적어도 하나의 클라이언트(120)들로의 업그레이드를 스케줄링할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다. 티켓(420)은 서버(110)와 클라이언트(120) 상의 파일의 정보와 사용자의 설정 정보를 관리하는데 유용하다. 티켓(420)을 이용하여 시스템 환경 및 상황에 따라 배포 방식 및 배포 전략을 달리하여 클라이언트(120)의 업그레이드를 수행함으로써, 서버의 과부하를 방지하고 적은 비용으로도 클라이언트(120)의 업그레이드를 수행할 수 있다.
업그레이드에 관련되는 정보는 티켓 제어 장치(130)에 의하여 결정된 배포 전략에 대한 정보, 티켓 제어 장치(130)에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다. 배포 전략은 동시에 모든 클라이언트(120)에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드(staged) 방식 및 예약 시간을 설정하고 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 등을 포함할 수 있다. 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 등을 포함하는 모듈 배포 방식을 포함할 수 있다.
서버 인터페이스부(210)는, 업그레이드에 관련되는 정보를 적어도 하나의 클라이언트(120)들로 통지할 수 있다.
또한, 결정된 배포 전략에 대한 정보는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 중 티켓 제어 장치(130)에 의하여 선택된 어느 하나에 대한 정보를 포함할 수 있다. 결정된 업그레이드 유형 정보는 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 배포 방식 중 티켓 제어 장치(130)에 의하여 선택된 어느 하나에 대한 정보를 포함할 수 있다. 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함할 수 있다.
서버(110)의 푸싱부(220)는 티켓 제어 장치(130)에 의하여 서버(110)와 적어도 하나의 클라이언트(120)들 사이에 생성된 채널을 통하여, 푸싱 스케줄링부(230)의 업그레이드 스케줄에 기초하여 적어도 하나의 클라이언트(120)들에게 적어도 하나의 모듈을 배포할 수 있다. 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다. 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈에는 업그레이드될 모듈과 업그레이드될 모듈을 제외한 나머지 모듈이 포함될 수 있다.
서버(110)의 푸싱 스케줄링부(230)는 티켓 제어 장치(130)에 의하여 제공되는 업그레이드에 관련되는 정보를 서버 인터페이스부(210)로부터 수신할 수 있다. 또한, 푸싱 스케줄링부(230)는 수신되는 업그레이드에 관련되는 정보에 기초하여 푸싱부(220)에 의해 수행되는 적어도 하나의 클라이언트(120)들로의 업그레이드를 위해 업그레이드 스케줄을 생성할 수 있다.
도 3은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트(120)를 도시한다.
업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트(120)는, 클라이언트 어댑터(310), 폴링부(320) 및 폴링 스케줄링부(330)를 포함할 수 있다. 클라이언트 어댑터(310)는 서버(110)로의 접속을 제어할 수 있다. 폴링부(320)는 서버(110)로부터 모듈을 다운로드 받을 수 있다. 폴링 스케줄링부(330)는 티켓(420)을 포함하는 티켓 제어 장치(130)와 접속되고, 티켓 제어 장치(130)로부터 제공되는 업그레이드에 관련되는 정보를 수신할 수 있다. 또한, 폴링 스케줄링부(330)는 수신되는 업그레이드에 관련되는 정보에 기초하여 폴링부(320)에 의한 클라이언트(120)의 업그레이드를 스케줄링할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다.
클라이언트 어댑터(310)는 서버(110)에 접속하여 서버(110)의 푸싱부(220)에 클라이언트(120)에 관한 정보를 등록할 수 있다. 클라이언트(120)에 관한 정보는 서버(110)로의 접근 정보와 클리아인트(120)에 포함된 모듈의 버전 정보 등을 포함할 수 있다. 서버(110)와 클라이언트(120)의 연결은 일대일로 관리되고, 푸싱부(220)에는 모든 클라이언트(120)들이 등록되어 있을 수 있다.
전술한 바와 같이, 업그레이드에 관련되는 정보는 티켓 제어 장치(130)에 의하여 결정된 배포 전략에 대한 정보, 티켓 제어 장치(130)에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다. 배포 전략은 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 등을 포함할 수 있다. 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 등을 포함하는 모듈 배포 방식을 포함할 수 있다.
또한, 결정된 배포 전략에 대한 정보, 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
폴링부(320)는 서버(110)의 서버 인터페이스부(210)로부터 업그레이드에 관련되는 정보를 통지받을 수 있다. 또한, 폴링부(320)는 티켓 제어 장치(130)에 의하여 서버(110)와 클라이언트(120) 사이에 생성된 채널을 통하여, 폴링 스케줄링부(330)의 업그레이드 스케줄에 기초하여 서버(110)의 푸싱부(220)로부터 적어도 하나의 모듈을 다운로드 받을 수 있다. 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다.
폴링 스케줄링부(330)는 수신되는 업그레이드에 관련되는 정보에 기초하여 폴링부(320)에 의해 수행되는 클라이언트(120)로의 업그레이드를 위해 업그레이드 스케줄을 생성할 수 있다.
도 4는 본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위하여 서버(110)와 클라이언트(120) 사이에서 이용되는 티켓 제어 장치(130)를 도시한다.
업그레이드 방식을 적응적으로 변경시키기 위하여 서버(110)와 클라이언트(120) 사이에서 이용되는 티켓 제어 장치(130)는, 티켓 저장부(410) 및 티켓 관리부(430)를 포함할 수 있다. 티켓 저장부(410)는 티켓에 대한 정보를 포함하는 티켓(420)을 저장할 수 있다. 티켓 관리부(430)는 티켓 저장부(410)에 저장된 티켓(420)에 대한 정보를 분석하고, 분석된 정보에 기초하여 서버(110)와 클라이언트(120) 사이에 채널을 형성할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다. 즉, 티켓에 대한 정보는 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보 각각을 지칭할 수 있다.
배포 전략, 업그레이드 유형 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
티켓 관리부(430)는 티켓 파싱부(440) 및 티켓 분배부(450)를 포함할 수 있다. 티켓 파싱부(440)는 티켓(420)에 대한 정보를 분석할 수 있다. 티켓 분배부(450)는 분석된 티켓(420)에 대한 정보에 기초하여 업그레이드에 관련되는 정보를 결정하고, 결정된 업그레이드에 관련되는 정보에 기초하여 서버(110)와 클라이언트(120) 사이에서 채널을 생성할 수 있다.
분석된 티켓(420)에 대한 정보에 기초하여 업그레이드에 관련되는 정보를 결정하는 것은 배포 전략 중 어느 하나를 선택하고 업그레이드 유형 중 어느 하나를 선택하는 것을 포함할 수 있다.
도 5는 본 발명의 일 실시예에 따른 티켓 제어 장치(130)의 티켓 저장부(410)에 저장되는 티켓(420)을 도시한다.
티켓(420)은, 배포 전략에 대한 정보와 업그레이드 유형 정보를 포함하는 배치 티켓(510) 및 배포할 모듈 자체에 대한 정보를 포함하는 애플리케이션 티켓(520)으로 구성될 수 있다.
배포 전략, 업그레이드 유형 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
도 6은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버(110), 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트(120) 및 티켓 제어 장치(130)의 동작을 도시한다.
서버(110)의 푸싱 스케줄링부(230) 또는 클라이언트(120)의 폴링 스케줄링부(330)로부터 티켓 제어 장치(130)로 채널이 생성되고, 티켓(420)에 대한 정보의 업데이트 내역 확인 요청을 전송한다(620). 티켓 제어 장치(130)의 티켓 파싱부(440)에서는 티켓(420)의 정보를 분석한다(630). 분석된 티켓의 정보는 티켓 제어 장치(130)의 티켓 분배부(450)로 제공된다(640). 티켓 분배부(450)에서 배포 방식이 결정(650)되고, 배포 전략이 결정된다(660). 결정된 배포 방식 및 결정된 배포 전략을 기초로 서버(110)와 클라이언트(120) 사이에서 채널이 생성된다(670). 티켓 분배부(450)에서 결정된 배포 방식에 대한 정보 및 결정된 배포 전략에 대한 정보를 포함하는 업그레이드에 관련되는 정보는 서버(110) 또는 클라이언트(120)로 전송된다(680). 이와 관련하여는 도 7 내지 도 10을 참조하여 이하에서 더욱 상세하게 설명될 것이다.
도 7은 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
본 발명의 일 실시예에 따른, 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 티켓(420)을 포함하는 티켓 제어 장치(130)와 서버(110)가 접속되는 단계(710), 티켓 제어 장치(130)로부터 업그레이드에 관련되는 정보를 서버(110)의 서버 인터페이스(210)에서 수신하는 단계(720)를 포함할 수 있다. 또한, 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 업그레이드 대상이 되는 적어도 하나의 클라이언트(120)들이 서버(110)에 등록되는 단계(730)를 포함할 수 있다. 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 서버(110)의 서버 인터페이스부(210)로부터 수신된 업그레이드에 관련되는 정보가 서버(110)의 푸싱 스케줄링부(230)로 통지되고, 서버(110)의 푸싱 스케줄링부(230)에서 적어도 하나의 클라이언트(120)들에 대한 업그레이드를 스케줄링하는 단계(740)를 포함할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다.
배포 전략, 업그레이드 유형 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
티켓(420)을 포함하는 티켓 제어 장치(130)와 서버(110)가 접속되는 단계(710)는, 서버(110)에서 티켓 제어 장치(130)로 채널을 생성하고, 채널을 통하여 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 단계(711)를 포함할 수 있다. 또한, 티켓(420)을 포함하는 티켓 제어 장치(130)와 서버(110)가 접속되는 단계(710)는 티켓 제어 장치(130)로부터 티켓(420)이 업데이트 되었는지 여부를 확인받고, 티켓이 업데이트되지 않았다면 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 것을 반복하는 단계(713)를 포함할 수 있다.
업그레이드에 관련되는 정보는 티켓 제어 장치(130)에 의하여 결정된 배포 전략에 대한 정보, 티켓 제어 장치(130)에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다. 결정된 배포 전략에 대한 정보, 결정된 업그레이드 유형 정보는 전술한 바와 같다.
또한, 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 티켓 제어 장치(130)에 의하여 서버(110)와 적어도 하나의 클라이언트(120)들 사이에 생성된 채널을 통하여, 푸싱 스케줄링부(230)의 업그레이드 스케줄에 기초하여 서버(110)의 푸싱부(220)로부터 클라이언트(120)의 폴링부(320)로 적어도 하나의 모듈을 배포하는 단계(750)를 더 포함할 수 있다. 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다.
도 8은 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 서버(110)와 클라이언트(120)가 접속되는 단계(810), 클라이언트(120)와 티켓(420)을 포함하는 티켓 제어 장치(130)가 접속되는 단계(820)를 포함할 수 있다. 또한, 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 티켓 제어 장치(130)로부터의 업그레이드에 관련되는 정보를 클라이언트(120)의 폴링 스케줄링부(330)에서 수신하는 단계(830)를 포함할 수 있다. 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법은 수신된 업그레이드에 관련되는 정보에 기초하여 클라이언트(120)의 폴링 스케줄링부(330)에서 클라이언트(120)의 업그레이드 스케줄을 생성하는 스케줄링 단계(840)를 포함할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다. 배포 전략, 업그레이드 유형 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
서버(110)와 클라이언트(120)가 접속되는 단계(810)는, 클라이언트(120)의 클라이언트 어댑터(310)에 의하여 서버(110)에 접속하여 서버(110)의 푸싱부(220)에 클라이언트(120)에 관한 정보를 등록하는 것을 포함할 수 있다.
클라이언트(120)와 티켓 제어 장치(130)가 접속되는 단계는, 클라이언트(120)의 폴링 스케줄링부(330)에 의하여 티켓 제어 장치(130)로 채널을 생성하고, 채널을 통하여 티켓(420)에 대한 정보의 업데이트 내역 확인 요청을 전송하는 단계(821)를 포함할 수 있다. 또한, 클라이언트(120)와 티켓 제어 장치(130)가 접속되는 단계는 티켓 제어 장치(130)로부터 티켓(420)이 업데이트 되었는지 여부를 확인받고, 티켓(420)이 업데이트되지 않았다면, 티켓(420)에 대한 정보의 업데이트 내역 확인 요청을 전송하는 것을 반복하는 단계(823)를 포함할 수 있다.
업그레이드에 관련되는 정보는 티켓 제어 장치(130)에 의하여 결정된 배포 전략에 대한 정보, 티켓 제어 장치(130)에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있다. 결정된 배포 전략에 대한 정보, 결정된 업그레이드 유형 정보는 전술한 바와 같다.
또한, 본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 티켓 제어 장치(130)에 의하여 서버(110)와 클라이언트 (120)사이에 생성된 채널을 통하여, 클라이언트(120)의 폴링 스케줄링부(330)의 스케줄에 기초하여 클라이언트(120)의 폴링부(320)에서 서버(110)로부터 적어도 하나의 모듈을 다운로드 받는 단계(850)를 더 포함할 수 있다. 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다.
도 9는 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법을 나타내는 플로우차트이다.
본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 서버(110) 및 클라이언트(120) 중 적어도 하나와 티켓(420)을 포함하는 티켓 제어 장치(130)가 접속되는 단계(910), 티켓 제어 장치(130)에서 티켓(420)에 대한 정보를 분석하고, 분석된 정보에 기초하여 서버(110)와 클라이언트(120) 사이에 채널을 생성하는 단계(920)를 포함할 수 있다. 티켓(420)은, 배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함할 수 있는 함수 목록 또는 파일 목록을 지칭할 수 있다. 또한, 티켓(420)은 배포 전략에 대한 정보와 업그레이드 유형 정보를 포함하는 배치 티켓, 배포할 모듈 자체에 대한 정보를 포함하는 애플리케이션 티켓으로 구성될 수 있다.
배포 전략, 업그레이드 유형 및 배포할 모듈 자체에 대한 정보는 전술한 바와 같다.
서버(110) 및 클라이언트(120) 중 적어도 하나와 티켓(420)을 포함하는 티켓 제어 장치(130)가 접속되는 단계(910)는, 티켓 제어 장치(130)의 티켓 파싱부(440)에서 서버(110) 및 클라이언트(120) 중 적어도 하나로부터 티켓(420)에 대한 정보의 업데이트 내역 확인 요청을 수신하는 것을 더 포함할 수 있다.
단계 920은, 티켓 제어 장치(130)의 티켓 파싱부(440)에 의하여 티켓(420)에 대한 정보를 분석하고 분석된 티켓(420)에 대한 정보를 티켓 제공 장치(130)의 티켓 분배부(450)로 제공하는 단계(921), 티켓 제어 장치(130)의 티켓 분배부(450)에서 분석된 정보에 기초하여 업그레이드에 관련되는 정보를 결정하는 단계(923) 및 티켓 제어 장치(130)에 의하여 서버(110)와 클라이언트(120) 사이에서 채널을 생성하는 단계(925)를 포함할 수 있다.
업그레이드에 관련되는 정보를 결정하는 단계(923)는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식을 포함하는 배포 전략 중 어느 하나를 선택하고, 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 업그레이드 유형 중 어느 하나를 선택하는 단계를 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 업그레이드 방식을 적응적으로 변경시키기 위한 방법은, 티켓 제어 장치(130)의 티켓 분배부(450)로부터 업그레이드에 관련되는 정보가 서버(110) 및 클라이언트(120) 중 적어도 하나로 전송되는 단계를 더 포함할 수 있다(930).
도 10은 본 발명의 일 실시예에 따른 업그레이드 방식이 적응적으로 변경될 수 있는 서버(110), 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트(120) 및 티켓 제어 장치(130)의 동작을 도시한다.
도 10의 동작은 도 7 내지 도 9에 도시된 본 발명의 일 실시예에 따라 업그레이드 방식을 적응적으로 변경시키기 위한 방법과 함께 설명될 수 있다.
푸시(push) 방식에 의한 업그레이드는 다음과 같은 동작을 통하여 달성될 수 있다.
서버(110)의 푸싱 스케줄링부(230)는 티켓 제어 장치(130)의 티켓 관리부(430)로 티켓의 업데이트 여부 확인 요청을 전송한다(711). 티켓(420)의 업데이트 여부 확인 요청은 티켓에 대한 정보(예컨대, 배포 전략에 대한 정보, 업그레이드 유형에 대한 정보 및 배포할 프로그램 자체에 대한 정보 등)의 업데이트 내역을 확인하기 위한 요청을 포함할 수 있다. 즉, 서버(110)의 푸싱 스케줄링부(230)는 티켓(420)이 업데이트 되었는지 여부를 확인하기 위한 요청을 전송한다. 폴링(polling) 방식에 의한 업그레이드의 경우, 이와 유사하게 클라이언트(120)의 폴링 스케줄링부(330)도 티켓 제어 장치(130)의 티켓 관리부(430)로 티켓의 업데이트 여부 확인 요청을 전송한다(821).
티켓의 업데이트 여부 확인 요청을 받은 티켓 관리부(430)의 티켓 파싱부(440)는 티켓 저장부(410)에 저장된 배치 티켓(510) 및 애플리케이션 티켓(520)을 각각 페치한다. 여기서 '페치'라 함은, 기억 장치에 저장되어 있는 명령이나 자료를 수행시키기 위하여 중앙 처리 장치(CPU) 등의 프로세서가 명령이나 자료를 기억 장치로부터 가져오는 일련의 동작 등을 지칭하고, 티켓 파싱부(440)는 페치한 티켓(420)에 대한 정보를 분석하고, 티켓에 대한 정보의 업데이트 여부 확인에 대한 응답을 서버(110)의 푸싱 스케줄링부(230) 또는 클라이언트(120)의 폴링 스케줄링부(330)로 전송한다. 티켓 파싱부(440)는 분석된 티켓 정보를 티켓 관리부(430)의 티켓 분배부(450)으로 제공한다(921). 티켓 분배부(450)는 제공된 정보에 기초하여 업그레이드에 관련되는 정보를 결정하고, 결정에 기초하여 서버(110)와 클라이언트(120) 사이에서 채널을 생성한다(925).
서버(110)의 서버 인터페이스부(210)는 티켓 분배부(450)로부터 업그레이드에 관련되는 정보를 전송 받고(720), 전송받은 정보를 서버(110)의 푸싱 스케줄링부(230) 및 클라이언트(120)의 폴링부(320)로 통지한다(720). 적어도 하나의 클라이언트(120)들이 서버(110)에 등록된다(730). 이는 폴링 방식에 의한 경우도 같다. 서버(110)의 푸싱 스케줄링부(230)는 통지된 정보에 기초하여 푸싱부(220)에 의한 클라이언트(120)의 업그레이드를 스케줄링한다(740). 즉, 푸싱 스케줄링부(230)에서는 푸싱부(220)로부터 모듈이 배포되어 클라이언트(120)가 업그레이드되도록 하는 업그레이드 스케줄을 생성한다.
서버(110)와 클라이언트(120) 사이에서 생성된 채널을 통하여, 푸싱 스케줄링부(230)의 업그레이드 스케줄에 기초하여 서버(110)의 푸싱부(220)로부터 클라이언트(120)의 폴링부(320)로 적어도 하나의 모듈이 배포되어 클라이언트(120)의 업그레이드가 달성된다(750). 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다.
한편, 폴링(polling) 방식에 의한 업그레이드의 경우 위와 유사하게 진행된다. 전술한 바와 같이 클라이언트(120)의 폴링 스케줄링부(330)로부터 티켓 관리부(430)로 티켓의 업데이트 여부 확인 요청을 전송하고(821), 티켓 분배부(450)는 티켓 파싱부(440)로부터 분석되어 제공된 티켓 정보에 기초하여 업그레이드에 관련되는 정보를 결정하고, 결정에 기초하여 서버(110)와 클라이언트(120) 사이에서 채널을 생성한다(925). 클라이언트(120)의 폴링 스케줄링부(330)는 티켓 분배부(450)로부터 업그레이드에 관련되는 정보를 전송받고, 전송받은 정보를 기초로 폴링부(320)에 의한 클라이언트(120)의 업그레이드를 스케줄링한다(840). 즉, 폴링 스케줄링부(330)에서는 폴링부(320)에서 서버(110)의 푸싱부(220)로부터 모듈을 다운로드하여 클라이언트(120)를 업그레이드시키도록 하는 업그레이드 스케줄을 생성한다.
서버(110)와 클라이언트(120) 사이에서 생성된 채널을 통하여, 폴링 스케줄링부(330)의 업그레이드 스케줄에 기초하여 서버(110)의 푸싱부(220)로부터 클라이언트(120)의 폴링부(320)로 적어도 하나의 모듈을 다운로드 받아 클라이언트(120)의 업그레이드가 달성된다(850). 적어도 하나의 모듈은 업그레이드될 모듈뿐만 아니라 서버(110)로부터 클라이언트(120)로 배포되는 전체의 모듈 중 업그레이드될 모듈을 제외한 나머지 모듈을 또한 포함할 수 있다.
한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다.
상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등), 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.
이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.

Claims (43)

  1. 업그레이드 방식이 적응적으로 변경될 수 있는 서버로서,
    티켓을 포함하는 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 수신하기 위한 서버 인터페이스부;
    업그레이드 대상이 되는 적어도 하나의 클라이언트들이 등록되는 푸싱부; 및
    상기 티켓 제어 장치와 접속되고, 상기 서버 인터페이스부로부터 상기 업그레이드에 관련되는 정보를 수신받고, 상기 수신되는 업그레이드에 관련되는 정보에 기초하여 상기 푸싱부에 의한 상기 적어도 하나의 클라이언트들로의 업그레이드를 스케줄링하는 푸싱 스케줄링부를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하며,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함하고,
    상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  2. 제 1 항에 있어서,
    상기 업그레이드에 관련되는 정보는 상기 티켓 제어 장치에 의하여 결정된 배포 전략에 대한 정보, 상기 티켓 제어 장치에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 서버 인터페이스부는, 상기 업그레이드에 관련되는 정보를 상기 적어도 하나의 클라이언트들로 통지하는 것을 더 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  3. 삭제
  4. 제 2 항에 있어서,
    상기 결정된 배포 전략에 대한 정보는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하고,
    상기 결정된 업그레이드 유형 정보는 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 배포 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하며,
    상기 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  5. 제 1 항에 있어서,
    상기 푸싱부는, 상기 티켓 제어 장치에 의하여 상기 서버와 상기 적어도 하나의 클라이언트들 사이에 생성된 채널을 통하여, 상기 푸싱 스케줄링부의 스케줄에 기초하여 상기 적어도 하나의 클라이언트들에게 적어도 하나의 모듈을 배포하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  6. 제 5 항에 있어서,
    상기 적어도 하나의 모듈은 업그레이드될 모듈 및 상기 서버로부터 상기 적어도 하나의 클라이언트들에게 배포될 전체 모듈 중 적어도 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  7. 제 1 항에 있어서,
    상기 푸싱 스케줄링부는 상기 티켓 제어 장치에 의하여 제공되는 상기 업그레이드에 관련되는 정보를 상기 서버 인터페이스부로부터 수신하고, 상기 수신되는 업그레이드에 관련되는 정보에 기초하여 상기 푸싱부에 의한 상기 적어도 하나의 클라이언트들로의 업그레이드 스케줄을 생성하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 서버.
  8. 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트로서,
    서버로의 접속을 제어하기 위한 클라이언트 어댑터;
    상기 서버로부터 모듈을 다운로드 받기 위한 폴링부; 및
    티켓을 포함하는 티켓 제어 장치와 접속되고, 상기 티켓 제어 장치로부터 제공되는 업그레이드에 관련되는 정보를 수신하며, 상기 수신되는 업그레이드에 관련되는 정보에 기초하여 상기 폴링부에 의한 상기 클라이언트의 업그레이드를 스케줄링하는 폴링 스케줄링부를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하며,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함 하고,
    상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  9. 제 8 항에 있어서,
    상기 클라이언트 어댑터는 상기 서버에 접속하여 상기 서버의 푸싱부에 상기 클라이언트에 관한 정보를 등록하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  10. 제 8 항에 있어서,
    상기 업그레이드에 관련되는 정보는 상기 티켓 제어 장치에 의하여 결정된 배포 전략에 대한 정보, 상기 티켓 제어 장치에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 폴링부는, 상기 서버의 서버 인터페이스부로부터 상기 업그레이드에 관련되는 정보를 통지받고, 상기 티켓 제어 장치에 의하여 상기 서버와 상기 클라이언트 사이에 생성된 채널을 통하여 상기 서버의 푸싱부로부터 적어도 하나의 모듈을 다운로드 받는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  11. 삭제
  12. 제 10 항에 있어서,
    상기 결정된 배포 전략에 대한 정보는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하고,
    상기 결정된 업그레이드 유형 정보는 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 배포 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하며,
    상기 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  13. 제 10 항에 있어서,
    상기 적어도 하나의 모듈은 업그레이드될 모듈 및 상기 서버로부터 상기 클라이언트에게 배포될 전체 모듈 중 적어도 하나를 포함하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  14. 제 8 항에 있어서,
    상기 폴링 스케줄링부는, 상기 수신되는 업그레이드에 관련되는 정보에 기초하여 상기 폴링부에 의한 상기 클라이언트의 업그레이드 스케줄을 생성하는 것을 특징으로 하는 업그레이드 방식이 적응적으로 변경될 수 있는 클라이언트.
  15. 업그레이드 방식을 적응적으로 변경시키기 위하여 서버와 클라이언트 사이에서 이용되는 티켓 제어 장치로서,
    티켓에 대한 정보를 포함하고 있는 티켓을 저장하기 위한 티켓 저장부;
    상기 티켓 저장부에 저장된 상기 티켓에 대한 정보를 분석하고, 상기 분석된 정보에 기초하여 상기 서버와 상기 클라이언트 사이에 채널을 형성하기 위한 티켓 관리부를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함하고,
    상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 티켓 제어 장치.
  16. 제 15 항에 있어서,
    상기 티켓은,
    상기 배포 전략에 대한 정보와 상기 업그레이드 유형 정보를 포함하는 배치 티켓; 및
    상기 배포할 모듈 자체에 대한 정보를 포함하는 애플리케이션 티켓으로 구성되는 것을 특징으로 하는 티켓 제어 장치.
  17. 삭제
  18. 제 15 항에 있어서,
    상기 티켓 관리부는,
    상기 티켓에 대한 정보를 분석하는 티켓 파싱부;
    상기 분석된 티켓에 대한 정보에 기초하여 업그레이드에 관련되는 정보를 결정하고, 상기 결정된 업그레이드에 관련되는 정보에 기초하여 서버와 클라이언트 사이에 채널을 생성하는 티켓 분배부를 포함하는 것을 특징으로 하는 티켓 제어 장치.
  19. 제 18 항에 있어서,
    상기 분석된 티켓에 대한 정보에 기초하여 업그레이드에 관련되는 정보를 결정하는 것은,
    상기 배포 전략 중 어느 하나를 선택하고, 상기 업그레이드 유형 중 어느 하나를 선택하며,
    상기 배포 전략은 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식을 포함하고, 상기 업그레이드 유형은 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 것을 특징으로 하는 티켓 제어 장치.
  20. 서버에서 업그레이드 방식을 적응적으로 변경시키기 위한 방법으로서,
    티켓을 포함하는 티켓 제어 장치와 접속하는 단계;
    상기 접속된 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 수신하는 단계;
    업그레이드 대상이 되는 적어도 하나의 클라이언트들을 등록하는 단계;
    상기 수신된 업그레이드에 관련되는 정보에 기초하여 상기 등록된 클라이언트들에 대한 업그레이드를 스케줄링하는 단계를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함하고, 상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 방법.
  21. 제 20 항에 있어서,
    상기 티켓을 포함하는 티켓 제어 장치와 접속하는 단계는,
    상기 서버에서 상기 티켓 제어 장치로 채널을 생성하고, 상기 채널을 통하여 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 단계;
    상기 티켓 제어 장치로부터 상기 티켓이 업데이트 되었는지 여부를 확인받는 단계를 포함하고, 상기 티켓이 업데이트되지 않았다면 상기 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 것을 반복하는 것을 특징으로 하는 방법.
  22. 제 20 항에 있어서,
    상기 업그레이드에 관련되는 정보는 상기 티켓 제어 장치에 의하여 결정된 배포 전략에 대한 정보, 상기 티켓 제어 장치에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 서버의 서버 인터페이스부로부터 상기 수신된 업그레이드에 관련되는 정보가 상기 서버의 푸싱 스케줄링부와 상기 적어도 하나의 클라이언트들로 통지되는 것을 특징으로 하는 방법.
  23. 삭제
  24. 제 22 항에 있어서,
    상기 결정된 배포 전략에 대한 정보는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하고,
    상기 결정된 업그레이드 유형 정보는 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 배포 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하며,
    상기 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  25. 제 20 항에 있어서,
    상기 업그레이드 방식을 적응적으로 변경시키기 위한 방법은,
    상기 티켓 제어 장치에 의하여 상기 서버와 상기 적어도 하나의 클라이언트들 사이에 생성된 채널을 통하여, 상기 서버의 푸싱 스케줄링부의 스케줄에 기초하여 상기 서버로부터 상기 클라이언트로 적어도 하나의 모듈을 배포하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  26. 제 25 항에 있어서,
    상기 적어도 하나의 모듈은 업그레이드될 모듈 및 상기 서버로부터 상기 적어도 하나의 클라이언트들에게 배포될 전체 모듈 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  27. 클라이언트에서 업그레이드 방식을 적응적으로 변경시키기 위한 방법으로서,
    서버와 접속하는 단계;
    티켓을 포함하는 티켓 제어 장치와 접속하는 단계;
    상기 티켓 제어 장치로부터 업그레이드에 관련되는 정보를 수신하는 단계;
    상기 수신된 업그레이드에 관련되는 정보에 기초하여 업그레이드 스케줄을 생성하는 스케줄링 단계를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함하고,
    상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 방법.
  28. 제 27 항에 있어서,
    상기 서버와 접속하는 단계는,
    상기 서버에 상기 클라이언트에 관한 정보를 등록하는 단계를 포함하는 방법.
  29. 제 27 항에 있어서,
    상기 티켓 제어 장치와 접속하는 단계는,
    상기 클라이언트에서 상기 티켓 제어 장치로 채널을 생성하고, 상기 채널을 통하여 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 단계;
    상기 티켓 제어 장치로부터 티켓이 업데이트 되었는지 여부를 확인받는 단계를 포함하고, 상기 티켓이 업데이트되지 않았다면, 상기 티켓에 대한 정보의 업데이트 내역 확인 요청을 전송하는 것을 반복하는 것을 특징으로 하는 방법.
  30. 제 27 항에 있어서,
    상기 업그레이드에 관련되는 정보는 상기 티켓 제어 장치에 의하여 결정된 배포 전략에 대한 정보, 상기 티켓 제어 장치에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하는 것을 특징으로 하는 방법.
  31. 삭제
  32. 제 30 항에 있어서,
    상기 결정된 배포 전략에 대한 정보는 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하고,
    상기 결정된 업그레이드 유형 정보는 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 배포 방식 중 상기 티켓 제어 장치에 의하여 선택된 어느 하나에 대한 정보를 포함하며,
    상기 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  33. 제 27 항에 있어서,
    상기 클라이언트에서 업그레이드 방식을 적응적으로 변경시키기 위한 방법은,
    상기 클라이언트의 업그레이드 스케줄에 기초하여 상기 클라이언트에서 상기 서버로부터 적어도 하나의 모듈을 다운로드받는 단계를 더 포함하는 것을 특징으로 하는 방법.
  34. 제 33 항에 있어서,
    상기 적어도 하나의 모듈은 업그레이드될 모듈 및 상기 서버로부터 상기 클라이언트에게 배포될 전체 모듈 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  35. 티켓을 포함하는 티켓 제어 장치에서 업그레이드 방식을 적응적으로 변경시키기 위한 방법으로서,
    서버 및 클라이언트 중 적어도 하나와 접속하는 단계;
    티켓에 대한 정보를 분석하고, 상기 분석된 정보에 기초하여 상기 서버와 상기 클라이언트 사이에 채널을 생성하는 단계를 포함하고,
    상기 티켓은,
    배포 전략에 대한 정보, 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 배포 전략은, 동시에 모든 클라이언트에게 모듈을 배포하는 브로드캐스팅 방식, 클라이언트 그룹별로 모듈을 배포하는 스테이지드 방식 및 예약 시간을 설정하고 상기 설정된 예약 시간에 모듈을 배포하는 시간 예약 방식 중 하나를 포함하고,
    상기 업그레이드 유형은, 푸시, 폴링, 하프-푸시/하프-폴링 중 하나를 포함하는 것을 특징으로 하는 방법.
  36. 제 35 항에 있어서,
    상기 서버 및 클라이언트 중 적어도 하나와 접속하는 단계는,
    상기 티켓 제어 장치에서 상기 서버 및 클라이언트 중 적어도 하나로부터 티켓에 대한 정보의 업데이트 내역 확인 요청을 수신하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  37. 제 35 항에 있어서,
    상기 티켓은,
    상기 배포 전략에 대한 정보와 상기 업그레이드 유형 정보를 포함하는 배치 티켓; 및
    상기 배포할 모듈 자체에 대한 정보를 포함하는 애플리케이션 티켓으로 구성되는 것을 특징으로 하는 방법.
  38. 삭제
  39. 제 35 항에 있어서,
    상기 티켓 제어 장치에서 티켓에 대한 정보를 분석하는 것은,
    상기 티켓 제어 장치의 티켓 파싱부에 의하여 상기 티켓에 대한 정보를 분석하고, 상기 분석된 티켓에 대한 정보를 상기 티켓 제어 장치의 티켓 분배부로 제공하는 것을 더 포함하는 것을 특징으로 하는 방법.
  40. 제 39 항에 있어서,
    상기 분석된 정보에 기초하여 상기 서버와 상기 클라이언트 사이에 채널을 생성하는 것은,
    상기 티켓 제어 장치의 티켓 분배부에서 상기 분석된 정보에 기초하여 업그레이드에 관련되는 정보를 결정하는 단계를 더 포함하는 것을 특징으로 하는 방법.
  41. 제 40 항에 있어서,
    상기 업그레이드에 관련되는 정보를 결정하는 단계는,
    상기 배포 전략 중 어느 하나를 선택하고, 상기 업그레이드 유형 중 어느 하나를 선택하는 단계를 포함하고,
    상기 배포 전략은 브로드캐스팅 방식, 스테이지드 방식 및 시간 예약 방식을 포함하고, 상기 업그레이드 유형은 푸시, 폴링, 하프-푸시/하프-폴링을 포함하는 것을 특징으로 하는 방법.
  42. 제 41 항에 있어서,
    상기 업그레이드 방식을 적응적으로 변경시키기 위한 방법은,
    상기 티켓 제어 장치로부터 상기 업그레이드에 관련되는 정보를 상기 서버 및 상기 클라이언트 중 적어도 하나로 전송하는 단계를 더 포함하고,
    상기 업그레이드에 관련되는 정보는 상기 티켓 제어 장치에 의하여 결정된 배포 전략에 대한 정보, 상기 티켓 제어 장치에 의하여 결정된 업그레이드 유형 정보 및 배포할 모듈 자체에 대한 정보를 포함하고,
    상기 배포할 모듈 자체에 대한 정보는 어셈블리, 응용 프로그램을 구성하는 종속성과 파일, 권한 정보 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
  43. 제20항 내지 제22항, 제24항 내지 제30항, 제32항 내지 제37항, 제39항 내지 제42항 중 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020110100035A 2011-09-30 2011-09-30 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법 KR101862353B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020110100035A KR101862353B1 (ko) 2011-09-30 2011-09-30 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법
US13/474,171 US9158527B2 (en) 2011-09-30 2012-05-17 Upgrade system and method having adaptive changeable upgrade process

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110100035A KR101862353B1 (ko) 2011-09-30 2011-09-30 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법

Publications (2)

Publication Number Publication Date
KR20130035622A KR20130035622A (ko) 2013-04-09
KR101862353B1 true KR101862353B1 (ko) 2018-07-05

Family

ID=47993721

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110100035A KR101862353B1 (ko) 2011-09-30 2011-09-30 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법

Country Status (2)

Country Link
US (1) US9158527B2 (ko)
KR (1) KR101862353B1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9245249B2 (en) 2013-03-12 2016-01-26 Labtech Llc General, flexible, resilent ticketing interface between a device management system and ticketing systems
US11119745B2 (en) 2014-11-10 2021-09-14 Amazon Technologies, Inc. Automated deployment of applications
US10459709B1 (en) * 2014-11-10 2019-10-29 Amazon Technologies, Inc. Automated deployment of applications
CN105630539A (zh) * 2015-12-18 2016-06-01 北京奇虎科技有限公司 灰度升级的方法和装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6976062B1 (en) * 1999-09-22 2005-12-13 Intermec Ip Corp. Automated software upgrade utility
US8255422B2 (en) * 2004-05-28 2012-08-28 Microsoft Corporation Highly reliable and scalable architecture for data centers
US8065712B1 (en) * 2005-02-16 2011-11-22 Cisco Technology, Inc. Methods and devices for qualifying a client machine to access a network
US8286002B2 (en) * 2005-12-02 2012-10-09 Alcatel Lucent Method and apparatus for providing secure remote access to enterprise networks
KR20080060927A (ko) 2006-12-27 2008-07-02 삼성전자주식회사 서버, 클라이언트 및 그 업데이트 방법
US8347303B2 (en) * 2008-11-14 2013-01-01 Bally Gaming, Inc. Apparatus, method, and system to provide a multi-core processor for an electronic gaming machine (EGM)
TWI531254B (zh) * 2009-03-05 2016-04-21 內數位專利控股公司 H(e)NB完整性驗證及認證方法及裝置
JP5509754B2 (ja) * 2009-09-15 2014-06-04 株式会社リコー ソフトウェア管理装置、ソフトウェア配信システム、インストール方法およびプログラム
GB201013130D0 (en) * 2009-09-24 2010-09-22 Barloworld Handling Ltd Energy management system
WO2011098993A1 (en) * 2010-02-15 2011-08-18 Telefonaktiebolaget Lm Ericsson (Publ) M2m group based addressing using cell broadcast service
US8447783B2 (en) * 2010-05-28 2013-05-21 Laborie Medical Technologies Canada Ulc Intelligent agent and manager system
US8549527B2 (en) * 2010-08-25 2013-10-01 International Business Machines Corporation Work plan prioritization for application development and maintenance using pooled resources in a factory

Also Published As

Publication number Publication date
US9158527B2 (en) 2015-10-13
US20130086231A1 (en) 2013-04-04
KR20130035622A (ko) 2013-04-09

Similar Documents

Publication Publication Date Title
US9383993B2 (en) Enterprise wide software version recommendation
CN101493773B (zh) 信息处理装置、***及方法
US9672027B2 (en) Information processing apparatus and information processing system
US20050125525A1 (en) Method, system, and storage medium for providing intelligent distribution of software and files
US7940407B2 (en) Image forming apparatus, terminal apparatus and management apparatus
US9658843B2 (en) Distribution system and its control method
CN101346714B (zh) 在计算机***中用于保证内容映像的执行的方法
US20070266390A1 (en) Automated management of application-specific tasks from the Internet via distributed task manager agents in a local area network
US20120062944A1 (en) Image forming apparatus, network system, control method, and storage medium
US9635207B2 (en) Management system and information processing apparatus managing installation and settings of an application
CN101727340A (zh) 打印机升级机制
US8667104B2 (en) Firmware/software upgrade alert method and apparatus
WO2007062294A2 (en) Managing software configuration of a wireless device
KR101862353B1 (ko) 업그레이드 방식이 적응적으로 변경될 수 있는 업그레이드 시스템 및 업그레이드 방법
US8285756B2 (en) Operation support program
KR20120117504A (ko) 통신 시스템 및 그 통신 시스템에서 소프트웨어 업데이트 방법
JP6622577B2 (ja) 配信システム、及び配信システムの制御方法
CN100356324C (zh) 信息处理装置、安装方法和信息处理***
US10298719B2 (en) Network system, and control method for network system
JP6195352B2 (ja) 配信制御装置、配信制御方法、プログラム、並びに、配信制御システム及びその制御方法
JP6244054B1 (ja) 配信制御装置、配信制御方法、並びにプログラム
JP2005208935A (ja) ソフトウェア管理装置及びソフトウェア管理プログラム
JP5303988B2 (ja) 暗号機能を搭載可能な装置及び暗号機能利用制限方法
JP5526663B2 (ja) 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法
JP2015079372A (ja) 配信システム、配信方法

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant