[go: up one dir, main page]

KR101390013B1 - Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법 - Google Patents

Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR101390013B1
KR101390013B1 KR1020070083005A KR20070083005A KR101390013B1 KR 101390013 B1 KR101390013 B1 KR 101390013B1 KR 1020070083005 A KR1020070083005 A KR 1020070083005A KR 20070083005 A KR20070083005 A KR 20070083005A KR 101390013 B1 KR101390013 B1 KR 101390013B1
Authority
KR
South Korea
Prior art keywords
client
message
server
action
check
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
KR1020070083005A
Other languages
English (en)
Other versions
KR20090018517A (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 KR1020070083005A priority Critical patent/KR101390013B1/ko
Publication of KR20090018517A publication Critical patent/KR20090018517A/ko
Application granted granted Critical
Publication of KR101390013B1 publication Critical patent/KR101390013B1/ko
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0604Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
    • H04L41/0622Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on time
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0681Configuration of triggering conditions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적으로 관리하기 위한 시스템을 제공한다.
상기 DM 클라이언트는 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송한다. 상기 DM 서버는 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송한다.
DM 서버, DM 클라이언트

Description

DM 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법{METHOD FOR PERIODCALLY MANAGING DM CLIENTS AND SYSTEM THEREFOR}
본 발명은 디바이스 관리에 관한 것으로, 특히 디바이스 관리 서버(Device Management server)에 의해 DM 세션을 형성하는 기술에 관한 것이다.
무선 단말기의 수가 기하급수적으로 증가함에 따라 무선 기기들을 관리해주기 위한 표준화된 방법이 필요하였고, 무선 사업자 또는 서비스 제공자(Service Provider)가 무선으로 단말기들과 통신을 하며 단말기의 펌웨어(Firmware), 소프트웨어(Software), 파라미터(Parameter), 스케줄(Schedule) 등을 관리하기 위한 이동 장치 관리(Mobile Device Management) 방법이 개발되었다. 그 중 대표적인 것으로서 무선기기의 응용 표준을 만드는 Open Mobile Alliance에서 개발된 OMA DM을 들 수 있다. OMA DM은 DM 프로토콜을 이용하여 무선 단말기 내부의 펌웨어, 소프트웨어, 파라미터 등을 관리할 수 있다. 무선 단말기를 관리하는 장치는 DM 서버이며 무선 단말기와 같이 관리되는 대상은 DM 클라이언트이다.
DM 서버는 원격으로 디바이스를 관리하기 위해 OMA에서 정의하고 있는 OMA DM 프로토콜을 사용한다. OMA DM 프로토콜은 Pkg#0 ~ Pkg#4까지 총 5개의 메시지로 구성되어 있으며, DM 서버와 디바이스 간에는 DM 프로토콜을 통해 DM 세션(Session)이 형성될 수 있다. 이 때, DM 세션은 DM 서버 또는 DM 클라이언트, 즉 디바이스에 의해 개시될 수 있다.
도 1은 일반적인 DM 세션 셋업(Set up) 과정을 나타낸 도면이다.
서버에 의해 개시된 세션(Server Initiated Session)은 다음과 같다.
DM 서버(20)는 디바이스에 행할 관리 액션(Management Action)이 있는 경우, 디바이스, 즉 DM 클라이언트(10)로 Pkg#0 통지 메시지(Notification Message)를 전달하여 DM 관리 액션이 존재함을 알린다(단계 32). DM 관리 액션은 DM 클라이언트(10)를 관리하기 위해 실행되어야 하는 동작을 의미한다. Pkg#0 통지 메시지를 수신하면, DM 클라이언트(10)는 DM 서버(20)에게 Pkg#1 메시지를 보내어 세션 형성을 요청한다(단계 34). 이후, DM 서버(20)는 Pkg#2 메시지들을 통해 DM 클라이언트(10)에게 관리 명령(management command)를 전달한다(단계 36). 이후 DM 클라이언트(10)와 DM 서버(20) 간에 Pkg#3, Pkg#4 메시지들이 송수신된다(단계 38 및 40). 이 경우, Pkg#0 통지 메시지는 주로 푸시 메커니즘(Push mechanism)을 이용하여 전달되며, Pkg#1 ~ #4 메시지들은 주로 HTTP(S)와 같은 전송(Transport) 프로토콜을 통해 전달된다.
클라이언트에 의해 개시된 세션(Client Initiated Session)은 다음과 같다.
DM 클라이언트(10)가 DM 세션을 개시하는 경우는 주로 DM 클라이언트(10)가 DM 서버(20)에게 전달할 알람 메시지(Alert message)가 존재하는 경우이다. 이 경우, DM 클라이언트(10)가 Pkg#1 메시지를 DM 서버(20)에게 전달하여 DM 세션 형성을 요청한다.
이와 같이, DM 세션을 형성하기 위해서는 DM 클라이언트(10)는 Pkg#1 메시지를 DM 서버(10)에게 전달하여야 한다. Pkg#1 메시지에는 디바이스 정보가 포함되어 있다. 디바이스 정보는 MO(Management Object)의 형태를 갖는다. OMA DM은 단말 관리 대상들을 관리 객체들(Management Object: MO)로서 정의하고 있다. 즉, DM 클라이언트(10)와 DM 서버(20)가 DM 프로토콜을 이용하여 관리 객체들(이하, MO라 칭함)을 전달함으로써 단말 관리가 이루어진다. MO는 DM 서버(20)와 DM 클라이언트(10)가 접근 가능한 데이터 모델의 인터페이스(interface)이다. DM 프로토콜을 이용하여 제공하고자 하는 서비스에 따라 MO 들이 OMA 표준에서 정의되어 있다.
도 2는 Pkg#1에 포함되는 DevInfo MO를 나타낸다. 도 2를 참조하면, DevInfo MO는 Bearer/<x>/, Vendor Ext. 등을 통해 더 확장될 수 있다. DM 클라이언트(10)는 Pkg#1을 통해 DevInfo Mo의 모든 노드에 대한 URI 및 데이터를 교체 명령(Replace command)을 통해 DM 서버(20)에게 전달하고, DM 서버(20)는 이 명령을 받아 자신의 데이터베이스(databas)e에 있는 DevInfo와 비교, 변경한다.
전술한 바와 같이, DM 서버(20)는 DM 세션(DM Session)을 개시(Initiation)하는 경우, 푸시 메커니즘을 사용한다. 디바이스, 즉 DM 클라이언트(10)가 일반적인 이동 전화기(Cellular Phone)인 경우, DM 서버(20)는 WAP PUSH 또는 SMS 등을 통해 DM Pkg#0 통지 메시지를 디바이스에 전달한다.
또한 WiMAX 디바이스 등과 같이 SMS, WAP Push 등의 메커니즘을 갖지 않는 디바이스의 경우에는 UDP 푸시(Push)가 사용될 수도 있다. DM Pkg#0 통지 메시지를 디바이스에 전달하기 위해 UDP 푸시를 사용하는 경우 디바이스는 해당 UDP 포트를 항상 개방(Open)한 채로 리스닝(Listening) 상태에 있어야 한다. 그러나, 대상 디바이스(Target Device)에 개인 방화벽 (personal Firewall)이 설치되어 있다면, 이 UDP 포트는 공지 포트(Well Known port)가 아니므로, 닫혀(Close) 있을 가능성이 높다. 그러므로 DM 서버(20)로부터의 Pkg#0 메시지가 개인 방화벽에 의해 차단(Block)될 가능성이 높다.
전송 프로토콜(Transport Protocol)로 HTTP를 사용한다면, 디바이스가 HTTP 클라이언트로서 동작하고, DM 서버가 HTTP 서버로서 동작한다. 따라서, 디바이스로부터 DM 서버(20)로 전송된 HTTP Request에 응답하여 전송된 HTTP Response만이 개인 방화벽을 통과할 수 있다. 그러나 Pkg#0 DM 통지 메시지는 DM 서버(20)에 의해 개시(Initiation)되기 때문에, 디바이스로부터의 Request에 대한 응답 메시지가 아니다. 따라서 HTTP를 통해 디바이스로 전송되는 Pkg#0 DM 통지 메시지는 디바이스의 개인 방화벽에 의해 차단되어 디바이스에 의해 수신될 수 없다.
종래에는 이 문제를 해결하기 위해 주기적 폴링(Periodic Polling) 방법이 사용된다. 구체적으로, DM 클라이언트(10)가 주기적으로 DM 서버(20)에게 Pkg#1 메시지를 보내어 DM 서버(20)에 DM 관리 액션(Management Action)이 존재하는지 여부를 체크하는 방법이다. 이 경우, DM 클라이언트(10)가 Pkg#1을 DM 서버(20)에게 전달하면, DM 서버(20)가 관리 액션이 존재하는 경우에 Pkg#2 메시지에 DM 명령(command)을 넣어 DM 클라이언트(10)에게 전달한다. 반면, 관리 액션이 없는 경우에는 DM 서버(20)는 Pkg#2 메시지에 아무런 명령(command)을 넣지 않은 채 디바이스, 즉 DM 클라이언트(10)로 전달함으로써 DM 세션이 종료된다. 이와 같이, 주기적 폴링(Periodic Polling) 방법에 따르면, DM 클라이언트(10)와 DM 서버(20) 간에 주기적으로 DM 세션이 형성되었다가 해제된다.
이와 같은 주기적 폴링(Periodic Polling)은 주기적으로 DM 클라이언트(10)가 DM 서버(20)에게 메시지를 보내어 DM 세션을 형성하기 때문에 네트워크에 부하(Load)를 유발시켜 비효율적이다. 하나의 네트워크에 존재하는 디바이스가 다수이기 때문에 이들이 모두 주기적으로 DM 세션을 요청한다면 DM 서버(20) 및 네트워크에 큰 부담으로 작용할 수 있다. 특히 Pkg #1 메시지의 경우, 매번 DevInfo MO를 전송해야 하므로 더 큰 부담이 될 수 있다.
또한 네트워크의 부하를 줄이기 위하여 폴링 주기를 길게 할 경우에는 사용자의 특정 서비스 가입 등으로 인하여 Provisioning할 데이터가 발생하는 경우, 이를 즉시 실시간으로 Provisioning 해줄 수 없기 때문에 사용자가 즉시 가입 서비스를 이용할 수 없는 경우가 발생할 수 있다.
본 발명의 목적은 주기적 폴링(Periodic polling) 방법을 사용하는 경우, 위와 같은 문제점을 최소화하기 위하여 새로운 메시지를 정의하여 주기적 폴링(Periodic Polling)에 수반하는 네트워크 부하를 최소화 하고자 함에 있다. 즉, 본 발명은 기존의 DM 프로토콜을 크게 변경하지 않고 상기 주기적 폴링 메시지를 생성하여 DM 클라이언트를 관리하는 시스템 및 방법을 제공한다.
이를 위해, 본 발명은 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적 으로 관리하기 위한 방법에 있어서, DM 서버가 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하기 이전에, 상기 DM 클라이언트가 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송하는 단계와, 상기 DM 서버가 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 단계를 포함한다.
또한, 본 발명은 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적으로 관리하기 위한 시스템에 있어서, DM 서버가 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하기 이전에, 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송하는 상기 DM 클라이언트와, 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 상기 DM 서버를 포함한다.
본 발명에 따르면, 항상 클라이언트에서 요청(Request)를 서버로 보내고 서버가 응답을 보내는 형태이므로 클라이언트의 개인 방화벽(Personal Firewall)의 문제를 해결할 수 있다.
또한, 주기적 폴링을 위한 DM 액션 체크 메시지(Check_DM_Action message)는 그 크기가 작고, 그에 대한 응답으로 전송되는 Ack code도 역시 단순하기 때문에 주기적 폴링에 의한 네트워크 부담을 최소화할 수 있다.
종래에는 SMS, WAP Push 등의 메커니즘을 갖지 않는 디바이스의 경우에는 UDP 푸시(Push)를 이용하여 DM 서버에 의해 개시된 DM 세션을 형성할 수 없다. 따라서, DM 세션을 형성하기 위해서는 디바이스, 즉 DM 클라이언트는 주기적으로 디바이스 정보(DM 클라이언트 정보) 즉, DevInfo MO를 포함하는 Pkg#1 메시지를 DM 서버에게 전달해야만 했다. 그러나, DevInfo MO를 포함하는 Pkg#1 메시지는 용량이 크기 때문에, 네트워크에 부담을 줄 수 있다.
또한, DM 클라이언트를 위한 디바이스 관리 액션은 자주 발생하지 아니므로, DM 클라이언트가 주기적으로 DM 서버로 디바이스 관리를 위한 DM 세션을 형성하는 것은 낭비이다.
이를 위해 본 발명은 주기적으로 네트워크의 DM 서버에 DM 클라이언트에 대한 DM 관리 액션(Management Action)이 존재하는지 여부를 체크하기 위한 새로운 메시지를 도입한다. 본 발명에 따라, DM 클라이언트는 DM 서버에게 자신에 대한 DM 관리 액션(Management Action)이 존재하는지 여부를 체크하기 위한 체크 메시지를 주기적으로 DM 서버로 전송한다. 본 명세서에서는 이러한 메시지를 DM 액션 체크 메시지(Check_DM_Action message)라고 명명한다.
DM 서버는 DM 액션 체크 메시지를 수신하면, 해당 DM 클라이언트를 위한 관리 액션이 존재하는지 여부를 확인하고, 관리 액션이 존재한다면 Pkg#0 통지 메시지를 전송하여 DM 세션을 개시한다. 그리고, DM 서버는 관리 액션이 존재하지 않는다면 이를 나타내는 Ack 코드 형태의 응답 메시지를 DM 클라이언트로 전송한다.
이하 본 발명의 바람직한 실시 예들을 첨부한 도면을 참조하여 상세히 설명 한다. 또한 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.
도 3은 본 발명의 바람직한 실시예에 따른 DM 서버와 DM 클라이언트의 구성을 나타낸 블록도이다.
도 3을 참조하면, DM 클라이언트(100)는 주기적으로 DM 관리 액션을 체크하기 위한 주기(Period)를 측정하기 위한 타이머(110), DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 생성하는 DM 액션 체크 메시지 생성부(120) 및 DM 서버(200)에 대해 송수신되는 DM 패키지 메시지를 생성하고 처리하는 DM 패키지 생성 및 처리부(130)를 포함한다.
타이머(110)는 주기적으로 DM 관리 액션을 체크하기 위한 주기를 측정하고, 상기 주기가 도래하면 이를 DM 액션 체크 메시지 생성부(120)에 통지한다. 상기 타이머(110)로부터 주기의 도래를 통지받으면, DM 액션 체크 메시지 생성부(120)는 상기 DM 서버(200)에 상기 DM 클라이언트(100)를 위한 DM 관리 액션이 존재하는지 여부를 체크하기 위한 체크 메시지를 생성한다. DM 서버(200)로부터 상기 체크 메시지에 대한 응답으로서 DM 패키지0(Pkg#0) 통지 메시지를 수신하면, DM 패키지 생성 및 처리부(130)는 OMA DM 규격에 따른 패키지1 메시지를 생성하여 DM 서버(200)로 전송한다. DM 서버(200)로부터 상기 체크 메시지에 대한 응답으로서 상기 DM 서버(200)에 상기 DM 클라이언트(100)를 위한 DM 관리 액션이 존재하지 않음을 나타내는 코드를 포함하는 응답 메시지를 수신하면, DM 패키지 생성 및 처리부(130)는 DM 세션 형성을 위한 DM 패키지1 메시지를 DM 서버(200)로 전송하지 않는다.
그리고 DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 발생했을 때 이를 DM 액션 체크 메시지(Check_DM_Action message)를 수신할 때까지 저장하고 있는 DM 액션 스택부(210), DM 클라이언트(100)로부터의 DM 액션 체크 메시지를 처리하는 DM 액션 체크 메시지 처리부(220) 및 DM 클라이언트(100)에 대해 송수신되는 DM 패키지 메시지를 생성하고 처리하는 DM 패키지 생성 및 처리부(230)를 포함한다.
DM 클라이언트(100)에 대한 DM 액션이 발생하면, DM 액션 스택부(210)는 DM 액션 체크 메시지(Check_DM_Action message)를 수신할 때까지 상기 DM 액션을 저장한다. DM 클라이언트(100)로부터 상기 DM 클라이언트(100)를 위한 DM 관리 액션이 존재하는지 여부를 체크하기 위한 체크 메시지를 수신하면, DM 액션 체크 메시지 처리부(220)는 상기 DM 클라이언트(100)를 위한 DM 관리 액션이 존재하는지 여부를 판단하고 그 결과를 DM 패키지 생성 및 처리부(230)로 전송한다. DM 클라이언트(100)를 위한 DM 관리 액션이 존재하면, DM 패키지 생성 및 처리부(230)는 DM 세션을 형성하기 위한 통지 메시지를 생성하여 상기 DM 클라이언트(100)로 전송한다.
이하, 본 발명의 실시예들에 따른 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 설명한다.
먼저, DM 서버(200)에 DM 클라이언트(100)를 위한 DM 액션이 존재하지 않는 경우의 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 도 4를 참조하여 설명한다.
도 4를 참조하면, DM 클라이언트(100)는 타이머(110)를 이용하여 폴링 주기가 되었는지 여부를 체크한다. 폴링 주기가 되었으면(단계 400 및 단계 430), DM 클라이언트(100)는 DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 DM 서버(200)에 전송한다(단계 410).
이 DM 액션 체크 메시지는 DM 서버(200)에게 자신에게 DM 액션이 존재하는 지 여부를 문의하기 위한 메시지로서, 그 용량이 매우 작으며, 단순한 구조를 갖도록 설계된다. 즉, DM 액션 체크 메시지는 해당 클라이언트(소스)의 주소와 ID, DM 서버(목적지) 주소, DM 액션이 존재하는 지를 체크하도록 지시하는 명령 등을 포함한다. 그리고 DM 액션 체크 메시지는 DM 세션을 형성하는데 필요한 정보, 예컨대, DevInfo MO를 포함하지 않을 수 있다. 다른 실시예에서 따라 DM 액션 체크 메시지는 디바이스 인증(Device Authentication)을 위한 크레덴셜(credential) 정보를 더 포함할 수도 있다.
DM 액션 체크 메시지는 예컨대, 아래와 같은 구조를 가질 수 있다.
<SyncML xmlns='SYNCML:SYNCML1.2'>
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>DM/1.2</VerProto>
<MsgID>1</MsgID>
<Target>
<LocURI>http://www.syncml.org/mgmt-server</LocURI>
</Target>
<Source>
<LocURI>IMEI :493005100592800</LocURI>
</Source>
</SyncHdr>
<SyncBody>
<Alert>
<CmdID>1</CmdID>
<Data>1204</Data> <!-Check DM Action-->
</Alert>
<Final/>
</SyncBody>
</SyncML>
기존의 주기적 폴링(Periodic Polling) 방법에서 DM 클라이언트(100)는 DM 액션이 존재하는지 여부를 체크하기 위하여 Pkg#1을 사용하기 때문에, 불필요하게 DevInfo Mo를 전송하고 인증(Authentication) 과정도 거쳐야 했으며, 이는 비효율적이었다. 본 발명에 따르면, 전술한 바와 같이, DM 액션 체크 메시지(Check_DM_Action)이라는 새로운 단순 메시지를 정의하여 최소한 디바이스, ㅈ즈즉 DM 클라이언트(100)의 ID 정도만을 포함하는 메시지가 DM 서버(200)에게 전송되도록 한다.
DM 클라이언트(100)로부터 DM 액션 체크 메시지를 수신하면, DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 존재하는지 여부를 체크한다. DM 클라이언트(100)에 대한 DM 액션이 존재하지 않으면, DM 서버(200)는 DM 액션 체크 메시지(Check_DM_Action)에 대한 응답으로 대기 중인 DM 관리 액션이 없음을 알리는 응답 메시지를 DM 클라이언트(100)로 전송한다(단계 420).
이 응답 메시지는 해당 클라이언트(목적지)의 주소와 ID, DM 서버(소스) 주소, DM 액션이 존재하는지 여부를 나타내는 코드 등을 포함한다. 즉, 응답 메시지는 단순히 Ack code 형태로 DM 액션이 없음을 나타내는 코드를 포함한다. 이 응답 메시지는 예컨대, 아래와 같은 구조를 가질 수 있다.
<SyncML xmlns='SYNCML:SYNCML1.2'>
<SyncHdr>
<VerDTD>1.2</VerDTD>
<VerProto>DM/1.2</VerProto>
<MsgID>1</MsgID>
<Target>
<LocURI>IMEI :493005100592800</LocURI>
</Target>
<Source>
<LocURI>http://www.syncml.org/mgmt-server</LocURI>
</Source>
</SyncHdr>
<SyncBody>
<Status>
<MsgRef>1</MsgRef><CmdRef>1</CmdRef>
<CmdID>7</CmdID>
<Cmd>Alert</Cmd>
<Data>220</Data><!-NO DM Action -->
</Status>
<Final/>
</SyncBody>
</SyncML>
이어서, DM 서버(200)로부터 DM 액션이 없음을 나타내는 코드를 포함한 응답 메시지를 수신하면, DM 클라이언트(100)는 자신에 대해 실행될 DM 액션이 없음을 알 수 있다. 그에 따라, DM 클라이언트(100)는 DM 세션을 형성하기 위한 DM Pkg#1을 전송하지 않을 수 있다.
다음으로, DM 서버(200)에 DM 클라이언트(100)를 위한 DM 액션이 존재하는 경우의 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 도 5를 참조하여 설명한다.
도 5를 참조하면, DM 클라이언트(100)는 타이머(110)를 이용하여 폴링 주기가 되었는지 여부를 체크한다. 폴링 주기가 되었으면(단계 500), DM 클라이언트(100)는 DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 DM 서버(200)에 전송한다(단계 510). 이 DM 액션 체크 메시지는 전술한 바와 같이 구성될 수 있다.
DM 클라이언트(100)로부터 DM 액션 체크 메시지를 수신하면, DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 존재하는지 여부를 체크한다. DM 클라이언트(100)에 대한 DM 액션이 존재하면, DM 서버(200)는 그 응답으로 DM Pkg#0 통지 메시지(Notification message)를 DM 클라이언트(100)로 전송한다(단계 520).
즉, 해당 DM 클라이언트(100)를 위한 실행될 DM 관리 액션이 존재한다면, DM 서버(200)는 DM 액션 체크 메시지에 대한 응답으로서, DM 클라이언트(100)로 Pkg#0를 보내어 정상적인 DM Session을 형성할 수 있도록 한다. 이 때, Pkg#0 통지 메시지는 DM 클라이언트(100)가 보낸 DM 액션 체크 메시지(Check_DM_Action message)에 대한 응답이므로 DM 클라이언트(100)의 개인 방화벽을 무사히 통과하여 DM 클라이언트(100)에게까지 전달될 수 있다. 예컨대, HTTP Protocol를 이용하는 경우, DM 액션 체크 메시지(Check_DM_Action message)가 HTTP Request 형태로 DM 클라이언트(100)로부터 DM 서버(200)로 전송되고, 이에 대한 응답으로서 HTTP 응답(Response) 형태를 갖는 Pkg#0 메시지(message)가 DM 서버(200)로부터 DM 클라이언트(100)로 전달되므로, Pkg#0 메시지는 DM 클라이언트(100)의 개인 방화벽을 통과하여 DM 클라이언트(100)로 전달될 수 있다.
DM 서버(200)로부터 Pkg#0 통지 메시지를 수신하면, DM 클라이언트(100)는 기존의 OMA DM 규격에 맞게 Pkg#1 메시지를 DM 서버(200)로 전송하여 DM 세션을 형성한다(단계 530). 그에 따라, DM 서버(200)는 DM 액션을 위한 명령들을 DM Pag#2 메시지를 이용하여 DM 클라이언트(100)로 전송한다.
이어서, DM 서버(200)와 DM 클라이언트(100)에서의 구체적인 동작을 설명한다.
도 6은 본 발명에 따른 DM 클라이언트의 동작을 나타낸 도면이다.
도 6을 참조하면, 먼저 DM 클라이언트(100)는 단계 610에서 타이머(110)를 구동한다(단계 610). 이어서, DM 클라이언트(100)는 단계 620에서 타이머가 만료되었는지 여부를 판단한다. 타이머가 만료되었으면(단계 620: 예), 즉, 타이머의 값이 0이 되면, 단계 630에서 DM 액션 체크 메시지 생성부(120)를 통해 DM 액션 체크 메시지를 생성하여 DM 서버(200)로 전송한다. 이어서, DM 클라이언트(100)는 단계 640에서 DM 서버(200)로부터 응답 메시지를 수신한다.
상기와 같이 DM 서버(200)로부터 메시지를 수신하면, DM 클라이언트(100)는 단계 650에서 해당 메시지가 DM 패키지0(Pkg#0) 통지 메시지인지 여부를 판단한다.
상기 응답 메시지가 DM 패키지0 통지 메시지이면(단계 650: 예), DM 클라이언트(100)는 단계 660으로 진행하여 DM 패키지 생성 및 처리부(130)를 통해 OMA DM 규격에 따른 패키지1 메시지를 생성하여 DM 서버(200)로 전송한다.
반면에 상기 응답 메시지가 DM 패키지0 통지 메시지가 아니면(단계 650: 아니오), DM 클라이언트(100)는 단계 670에서 응답 메시지에서 DM 액션이 없음을 나타내는 코드를 확인하고, 단계 610으로 되돌아간다. 실시예에 따라 타이머가 만료되지 않았으면(단계 620: 아니오), 단계 610으로 되돌아간다.
도 7은 본 발명에 따른 DM 서버의 동작을 나타낸 도면이다.
도 7을 참조하면, DM 서버(200)는 먼저 단계 710에서 DM 액션 체크 메시지를 수신하였는지 여부를 판단한다. DM 서버(200)는, DM 액션 체크 메시지 처리부(220)를 통해 수신한 DM 액션 체크 메시지를 식별할 수 있다. DM 액션 체크 메시지를 수신하였으면(단계 710: 예), DM 서버(200)는 단계 720에서 DM 액션 체크 메시지에 포함되어 있는 Device ID에 대하여 현재 대기중인 DM 관리 액션이 있는지 여부를 판단한다. 반면에 DM 액션 체크 메시지를 수신하지 않았으면(단계 710: 아니오), 상기 DM 액션 체크 메시지를 수신할 때까지 수신 여부를 체크할 수 있다.
판단 결과 해당 DM 클라이언트(100)를 위한 DM 액션이 존재하면(단계 720: 예), DM 서버(200)는 단계 730으로 진행하여 DM 패키지0 메시지를 DM 클라이언트(100)로 전송한다. 반면에 DM 클라이언트(100)를 위한 DM 액션이 존재하지 않으면, DM 서버(200)는 단계 740에서 DM 액션이 없음을 나타내는 코드를 포함하는 응답 메시지를 DM 클라이언트(100)로 전송한다.
상기 DM 액션 체크 메시지(Check_DM_Action)와 그 응답 메시지(Ack code), 또는 Pkg#0 ~ #4 모두 HTTP 등의 프로토콜을 통해 전달된다.
도 1은 일반적인 DM 세션 셋업(Set up) 과정을 나타낸 도면,
도 2는 패키지#1 메시지에 포함되는 DevInfo MO를 나타낸 도면,
도 3은 본 발명의 바람직한 실시예에 따른 DM 서버와 클라이언트의 구성을 나타낸 블록도,
도 4는 DM 서버에 DM 클라이언트를 위한 DM 액션이 존재하지 않는 경우의 DM 서버와 DM 클라이언트간의 메시지 흐름을 나타낸 도면,
도 5는 DM 서버에 DM 클라이언트를 위한 DM 액션이 존재하는 경우의 DM 서버와 DM 클라이언트간의 메시지 흐름을 나타낸 도면,
도 6은 본 발명에 따른 DM 클라이언트의 동작을 나타낸 도면,
도 7은 본 발명에 따른 DM 서버의 동작을 나타낸 도면.

Claims (12)

  1. 디바이스 관리(DM) 서버가 DM 클라이언트를 주기적으로 관리하는 방법에 있어서,
    상기 DM 클라이언트를 위한 DM 관리 액션이 존재하는지 여부를 체크하도록 지시하는 체크 메시지를, 상기 DM 클라이언트로부터 주기적으로 수신하는 과정과,
    상기 체크 메시지에 따라 상기 DM 클라이언트를 위한 DM 관리 액션이 존재하는지 여부를 판단하는 과정과,
    상기 DM 관리 액션이 존재하면, DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 과정을 포함하는 것을 특징으로 하는 DM 클라이언트 관리 방법.
  2. 제1항에 있어서, 상기 체크 메시지는,
    상기 DM 관리 액션이 존재하는지 여부를 체크하도록 지시하는 명령, DM 서버의 주소, 상기 DM 클라이언트의 주소 및 ID를 포함하는 것을 특징으로 하는 DM 클라이언트 관리 방법.
  3. 제2항에 있어서, 상기 체크 메시지는 디바이스 인증을 위한 정보를 더 포함하는 것을 특징으로 하는 DM 클라이언트 관리 방법.
  4. 제1항에 있어서,
    상기 DM 관리 액션이 존재하지 않으면, 상기 DM 관리 액션이 없음을 나타내는 코드를 포함하는 응답 메시지를 상기 DM 클라이언트로 전송하는 과정을 더 포함하는 것을 특징으로 하는 DM 클라이언트 관리 방법.
  5. 제4항에 있어서, 상기 체크 메시지, 통지 메시지 및 응답 메시지는 HTTP 프로토콜에 기반한 것을 특징으로 하는 DM 클라이언트 관리 방법.
  6. 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적으로 관리하는 시스템에 있어서,
    DM 클라이언트를 위한 DM 관리 액션이 존재하는지 여부를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송하는 상기 DM 클라이언트와,
    상기 체크 메시지에 따라 상기 DM 클라이언트를 위한 상기 DM 관리 액션이 존재하는지 여부를 판단하고, 상기 DM 관리 액션이 존재하면, DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 상기 DM 서버를 포함하는 것을 특징으로 하는 DM 클라이언트 관리 시스템.
  7. 제6항에 있어서, 상기 체크 메시지는,
    상기 DM 관리 액션이 존재하는지 여부를 체크하도록 지시하는 명령, DM 서버의 주소, 상기 DM 클라이언트의 주소 및 ID를 포함하는 것을 특징으로 하는 DM 클라이언트 관리 시스템.
  8. 제7항에 있어서, 상기 체크 메시지는 디바이스 인증을 위한 정보를 더 포함 하는 것을 특징으로 하는 DM 클라이언트 관리 시스템.
  9. 제6항에 있어서, 상기 DM 서버는,
    상기 DM 관리 액션이 존재하지 않으면, 상기 DM 관리 액션이 없음을 나타내는 코드를 포함하는 응답 메시지를 상기 DM 클라이언트로 전송하는 것을 특징으로 하는 DM 클라이언트 관리 시스템.
  10. 제9항에 있어서, 상기 체크 메시지, 통지 메시지 및 응답 메시지는 HTTP 프로토콜에 기반한 것을 특징으로 하는 DM 클라이언트 관리 시스템.
  11. 디바이스 관리(DM) 서버에 의해 주기적으로 관리되는 DM 클라이언트에 있어서,
    주기적으로 DM 관리 액션을 체크하기 위한 주기를 측정하는 타이머와,
    상기 타이머로부터 상기 주기의 도래를 통지받으면, 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 관리 액션이 존재하는지 여부를 체크하기 위한 체크 메시지를 생성하여 상기 DM 서버에 전송하는 메시지 생성부와,
    상기 DM 서버로부터 상기 체크 메시지에 대한 응답으로서 DM 패키지0(Pkg#0) 통지 메시지를 수신하면, OMA DM 규격에 따른 패키지1 메시지를 생성하여 상기 DM 서버로 전송하는 DM 패키지 생성 및 처리부를 포함하는 것을 특징으로 하는 DM 클라이언트.
  12. 디바이스 관리(DM) 클라이언트를 주기적으로 관리하는 DM 서버에 있어서,
    상기 DM 클라이언트에 대한 DM 액션이 발생하면, 상기 DM 액션을 저장하는 DM 액션 스택부와,
    상기 DM 클라이언트로부터 상기 DM 클라이언트를 위한 DM 관리 액션이 존재하는지 여부를 체크하기 위한 체크 메시지를 수신하면, 상기 체크 메시지에 따라 상기 DM 클라이언트를 위한 상기 DM 관리 액션이 존재하는지 여부를 판단하는 체크 메시지 처리부와,
    상기 DM 관리 액션이 존재하면, DM 세션을 형성하기 위한 통지 메시지를 생성하여 상기 DM 클라이언트로 전송하는 DM 패키지 생성 및 처리부를 포함하는 것을 특징으로 하는 DM 서버.
KR1020070083005A 2007-08-17 2007-08-17 Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법 Expired - Fee Related KR101390013B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070083005A KR101390013B1 (ko) 2007-08-17 2007-08-17 Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070083005A KR101390013B1 (ko) 2007-08-17 2007-08-17 Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20090018517A KR20090018517A (ko) 2009-02-20
KR101390013B1 true KR101390013B1 (ko) 2014-04-30

Family

ID=40686780

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070083005A Expired - Fee Related KR101390013B1 (ko) 2007-08-17 2007-08-17 Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR101390013B1 (ko)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050228847A1 (en) * 2004-03-18 2005-10-13 International Business Machines Corporation Method, system and program product for using open mobile alliance (OMA) alerts to send client commands/requests to an OMA DM server
KR20060049893A (ko) * 2004-07-09 2006-05-19 엘지전자 주식회사 장치 관리 시스템 및 그 시스템에서의 장치관리 명령스케줄링 방법
KR20060128618A (ko) * 2005-06-09 2006-12-14 가부시키가이샤 히타치세이사쿠쇼 디바이스 관리 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050228847A1 (en) * 2004-03-18 2005-10-13 International Business Machines Corporation Method, system and program product for using open mobile alliance (OMA) alerts to send client commands/requests to an OMA DM server
KR20060049893A (ko) * 2004-07-09 2006-05-19 엘지전자 주식회사 장치 관리 시스템 및 그 시스템에서의 장치관리 명령스케줄링 방법
KR20060128618A (ko) * 2005-06-09 2006-12-14 가부시키가이샤 히타치세이사쿠쇼 디바이스 관리 시스템

Also Published As

Publication number Publication date
KR20090018517A (ko) 2009-02-20

Similar Documents

Publication Publication Date Title
CN101431413B (zh) 进行认证的方法、系统、服务器及终端
KR100747456B1 (ko) 홈 자동화 시스템
US20070198745A1 (en) System operator independent server alerted synchronization system and methods
US8438246B2 (en) Device management using a RESTful interface
KR102258608B1 (ko) 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법
US20130346610A1 (en) Device Management Method and Apparatus
WO2007054013A1 (fr) Méthode de traitement, terminal, serveur de gestion d’équipement et système de tâche d’abonnement dans la gestion d’équipement
CA2553209A1 (en) System and method for wirelessly provisioning a mobile communication device
KR20120063454A (ko) 장치 관리 클라이언트에 의한 비세션 보고 방법 및 장치
WO2020157450A1 (en) Device registration mechanism
US8924486B2 (en) Method and system for aggregating communications
US12075525B2 (en) Template-based registration
KR101390013B1 (ko) Dm 클라이언트를 주기적으로 관리하기 위한 시스템 및 방법
JP6971118B2 (ja) IoT機器とのデータの送受信を行うための装置、方法及びプログラム
US20150229513A1 (en) Systems and methods for efficient remote security panel configuration and management
JP6227583B2 (ja) 情報配信装置、プッシュ通知送信方法、及び、コンピュータプログラム
US20080040476A1 (en) Access Point Control System and Access Point Control Method
KR101417012B1 (ko) Dm 세션을 유지하기 위한 방법 및 장치들
KR101346077B1 (ko) 푸쉬 클라이언트 및 이를 이용한 푸쉬 서비스 방법
KR101979588B1 (ko) 세션 제어 방법, 시스템 및 장치
JP6420410B2 (ja) 情報配信装置、プッシュ通知送信方法、及び、コンピュータプログラム
US10701111B2 (en) Method and apparatus for device management
US8903388B2 (en) Compact base station device and signaling method
JP6389229B2 (ja) 端末装置、プッシュ通知受信方法、及び、コンピュータプログラム
CN105306287A (zh) 一种统计用户流量的方法及设备

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20070817

PG1501 Laying open of application
A201 Request for examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20120817

Comment text: Request for Examination of Application

Patent event code: PA02011R01I

Patent event date: 20070817

Comment text: Patent Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20130930

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20140318

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20140422

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20140422

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20170330

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20170330

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20180329

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20180329

Start annual number: 5

End annual number: 5

PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20191125

FPAY Annual fee payment

Payment date: 20191125

Year of fee payment: 6

PR0401 Registration of restoration

Patent event code: PR04011E01D

Patent event date: 20191125

Comment text: Registration of Restoration

PR1001 Payment of annual fee

Payment date: 20191125

Start annual number: 6

End annual number: 6

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20200226

Year of fee payment: 7

PR1001 Payment of annual fee

Payment date: 20200226

Start annual number: 7

End annual number: 7

PC1903 Unpaid annual fee

Termination category: Default of registration fee

Termination date: 20220203

Termination category: Default of registration fee

Termination date: 20191125