KR101390013B1 - Method for periodcally managing dm clients and system therefor - Google Patents
Method for periodcally managing dm clients and system therefor Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0604—Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time
- H04L41/0622—Management of faults, events, alarms or notifications using filtering, e.g. reduction of information by using priority, element types, position or time based on time
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0681—Configuration of triggering conditions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/142—Managing 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 클라이언트를 주기적으로 관리하기 위한 시스템을 제공한다. The present invention provides a system for periodically managing a DM client in a device management (DM) server.
상기 DM 클라이언트는 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송한다. 상기 DM 서버는 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송한다.The DM client periodically sends a check message to the DM server to check whether there is a DM action for the DM client. The DM server confirms the check message and, if there is a DM action for the DM client, sends a notification message for establishing the DM session to the DM client.
DM 서버, DM 클라이언트 DM server, DM client
Description
본 발명은 디바이스 관리에 관한 것으로, 특히 디바이스 관리 서버(Device Management server)에 의해 DM 세션을 형성하는 기술에 관한 것이다.The present invention relates to device management, and more particularly to a technique for establishing a DM session by a Device Management server.
무선 단말기의 수가 기하급수적으로 증가함에 따라 무선 기기들을 관리해주기 위한 표준화된 방법이 필요하였고, 무선 사업자 또는 서비스 제공자(Service Provider)가 무선으로 단말기들과 통신을 하며 단말기의 펌웨어(Firmware), 소프트웨어(Software), 파라미터(Parameter), 스케줄(Schedule) 등을 관리하기 위한 이동 장치 관리(Mobile Device Management) 방법이 개발되었다. 그 중 대표적인 것으로서 무선기기의 응용 표준을 만드는 Open Mobile Alliance에서 개발된 OMA DM을 들 수 있다. OMA DM은 DM 프로토콜을 이용하여 무선 단말기 내부의 펌웨어, 소프트웨어, 파라미터 등을 관리할 수 있다. 무선 단말기를 관리하는 장치는 DM 서버이며 무선 단말기와 같이 관리되는 대상은 DM 클라이언트이다.As the number of wireless terminals has increased exponentially, a standardized method for managing wireless devices has been needed. A wireless service provider or a service provider communicates with the terminals wirelessly. Software, Parameters, Schedules and the like have been developed for mobile device management (Mobile Device Management) method. One example is OMA DM, developed by the Open Mobile Alliance, which creates application standards for wireless devices. OMA DM can manage the firmware, software, parameters, etc. inside the wireless terminal using the DM protocol. The device managing the wireless terminal is a DM server, and the managed object is a DM client like the wireless terminal.
DM 서버는 원격으로 디바이스를 관리하기 위해 OMA에서 정의하고 있는 OMA DM 프로토콜을 사용한다. OMA DM 프로토콜은 Pkg#0 ~ Pkg#4까지 총 5개의 메시지로 구성되어 있으며, DM 서버와 디바이스 간에는 DM 프로토콜을 통해 DM 세션(Session)이 형성될 수 있다. 이 때, DM 세션은 DM 서버 또는 DM 클라이언트, 즉 디바이스에 의해 개시될 수 있다.The DM server uses the OMA DM protocol defined by OMA to manage devices remotely. The OMA DM protocol consists of five messages from
도 1은 일반적인 DM 세션 셋업(Set up) 과정을 나타낸 도면이다. 1 is a diagram illustrating a general DM session set up process.
서버에 의해 개시된 세션(Server Initiated Session)은 다음과 같다.The server initiated session (Server Initiated Session) is as follows.
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) 프로토콜을 통해 전달된다.When there is a management action to be performed on the device, the
클라이언트에 의해 개시된 세션(Client Initiated Session)은 다음과 같다.The client initiated session (Client Initiated Session) is as follows.
DM 클라이언트(10)가 DM 세션을 개시하는 경우는 주로 DM 클라이언트(10)가 DM 서버(20)에게 전달할 알람 메시지(Alert message)가 존재하는 경우이다. 이 경우, DM 클라이언트(10)가 Pkg#1 메시지를 DM 서버(20)에게 전달하여 DM 세션 형성을 요청한다.The case where the
이와 같이, 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 표준에서 정의되어 있다.As such, in order to establish a DM session, the
도 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와 비교, 변경한다.2 illustrates DevInfo MO included in
전술한 바와 같이, DM 서버(20)는 DM 세션(DM Session)을 개시(Initiation)하는 경우, 푸시 메커니즘을 사용한다. 디바이스, 즉 DM 클라이언트(10)가 일반적인 이동 전화기(Cellular Phone)인 경우, DM 서버(20)는 WAP PUSH 또는 SMS 등을 통해 DM Pkg#0 통지 메시지를 디바이스에 전달한다. As described above, the
또한 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)될 가능성이 높다. In addition, in the case of a device that does not have a mechanism such as SMS or WAP Push, such as a WiMAX device, UDP push may be used. When using UDP push to deliver a
전송 프로토콜(Transport Protocol)로 HTTP를 사용한다면, 디바이스가 HTTP 클라이언트로서 동작하고, DM 서버가 HTTP 서버로서 동작한다. 따라서, 디바이스로부터 DM 서버(20)로 전송된 HTTP Request에 응답하여 전송된 HTTP Response만이 개인 방화벽을 통과할 수 있다. 그러나 Pkg#0 DM 통지 메시지는 DM 서버(20)에 의해 개시(Initiation)되기 때문에, 디바이스로부터의 Request에 대한 응답 메시지가 아니다. 따라서 HTTP를 통해 디바이스로 전송되는 Pkg#0 DM 통지 메시지는 디바이스의 개인 방화벽에 의해 차단되어 디바이스에 의해 수신될 수 없다. If HTTP is used as the transport protocol, the device acts as an HTTP client and the DM server acts as an HTTP server. Therefore, only the HTTP response transmitted in response to the HTTP request transmitted from the device to the
종래에는 이 문제를 해결하기 위해 주기적 폴링(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 세션이 형성되었다가 해제된다.Conventionally, a periodic polling method is used to solve this problem. Specifically, the
이와 같은 주기적 폴링(Periodic Polling)은 주기적으로 DM 클라이언트(10)가 DM 서버(20)에게 메시지를 보내어 DM 세션을 형성하기 때문에 네트워크에 부하(Load)를 유발시켜 비효율적이다. 하나의 네트워크에 존재하는 디바이스가 다수이기 때문에 이들이 모두 주기적으로 DM 세션을 요청한다면 DM 서버(20) 및 네트워크에 큰 부담으로 작용할 수 있다. 특히 Pkg #1 메시지의 경우, 매번 DevInfo MO를 전송해야 하므로 더 큰 부담이 될 수 있다.Such periodic polling is inefficient by causing a load on the network because the
또한 네트워크의 부하를 줄이기 위하여 폴링 주기를 길게 할 경우에는 사용자의 특정 서비스 가입 등으로 인하여 Provisioning할 데이터가 발생하는 경우, 이를 즉시 실시간으로 Provisioning 해줄 수 없기 때문에 사용자가 즉시 가입 서비스를 이용할 수 없는 경우가 발생할 수 있다. In addition, in order to reduce the load on the network, when the polling period is extended, when the data to be provisioned occurs due to the user's specific service subscription, the user cannot use the subscription service immediately because it cannot be provisioned in real time immediately. May occur.
본 발명의 목적은 주기적 폴링(Periodic polling) 방법을 사용하는 경우, 위와 같은 문제점을 최소화하기 위하여 새로운 메시지를 정의하여 주기적 폴링(Periodic Polling)에 수반하는 네트워크 부하를 최소화 하고자 함에 있다. 즉, 본 발명은 기존의 DM 프로토콜을 크게 변경하지 않고 상기 주기적 폴링 메시지를 생성하여 DM 클라이언트를 관리하는 시스템 및 방법을 제공한다.An object of the present invention is to minimize the network load associated with periodic polling by defining a new message in order to minimize the above problems when the periodic polling method is used. That is, the present invention provides a system and method for managing a DM client by generating the periodic polling message without significantly changing the existing DM protocol.
이를 위해, 본 발명은 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적 으로 관리하기 위한 방법에 있어서, DM 서버가 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하기 이전에, 상기 DM 클라이언트가 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송하는 단계와, 상기 DM 서버가 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 단계를 포함한다.To this end, the present invention provides a method for periodically managing a DM client in a device management (DM) server, before the DM server transmits a notification message for establishing a DM session to the DM client. Periodically transmitting a check message to the DM server to check whether a DM action for the DM client exists in the DM server, the DM server confirms the check message, and the DM action for the DM client And if present, sending a notification message for establishing the DM session to the DM client.
또한, 본 발명은 디바이스 관리(DM) 서버에서 DM 클라이언트를 주기적으로 관리하기 위한 시스템에 있어서, DM 서버가 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하기 이전에, 상기 DM 서버에 상기 DM 클라이언트를 위한 DM 액션이 존재하는 지를 체크하기 위한 체크 메시지를 주기적으로 상기 DM 서버로 전송하는 상기 DM 클라이언트와, 상기 체크 메시지를 확인하고, 상기 DM 클라이언트를 위한 DM 액션이 존재하면 상기 DM 세션을 형성하기 위한 통지 메시지를 상기 DM 클라이언트로 전송하는 상기 DM 서버를 포함한다.The present invention also provides a system for periodically managing a DM client in a device management (DM) server, wherein the DM server transmits a notification message for establishing a DM session to the DM server before the DM server transmits a notification message to the DM client. The DM client periodically sending a check message to the DM server to check whether there is a DM action for a DM client, and checking the check message, and if the DM action exists for the DM client, And the DM server sending a notification message for forming to the DM client.
본 발명에 따르면, 항상 클라이언트에서 요청(Request)를 서버로 보내고 서버가 응답을 보내는 형태이므로 클라이언트의 개인 방화벽(Personal Firewall)의 문제를 해결할 수 있다.According to the present invention, since the client always sends a request to the server and the server sends a response, the problem of the personal firewall of the client can be solved.
또한, 주기적 폴링을 위한 DM 액션 체크 메시지(Check_DM_Action message)는 그 크기가 작고, 그에 대한 응답으로 전송되는 Ack code도 역시 단순하기 때문에 주기적 폴링에 의한 네트워크 부담을 최소화할 수 있다.In addition, since the DM action check message for periodic polling (Check_DM_Action message) is small in size and the Ack code transmitted in response thereto is also simple, network burden due to periodic polling can be minimized.
종래에는 SMS, WAP Push 등의 메커니즘을 갖지 않는 디바이스의 경우에는 UDP 푸시(Push)를 이용하여 DM 서버에 의해 개시된 DM 세션을 형성할 수 없다. 따라서, DM 세션을 형성하기 위해서는 디바이스, 즉 DM 클라이언트는 주기적으로 디바이스 정보(DM 클라이언트 정보) 즉, DevInfo MO를 포함하는 Pkg#1 메시지를 DM 서버에게 전달해야만 했다. 그러나, DevInfo MO를 포함하는 Pkg#1 메시지는 용량이 크기 때문에, 네트워크에 부담을 줄 수 있다. Conventionally, a device that does not have a mechanism such as SMS, WAP Push, etc. cannot establish a DM session initiated by a DM server using UDP push. Therefore, in order to establish a DM session, the device, that is, the DM client, has to periodically transmit a
또한, DM 클라이언트를 위한 디바이스 관리 액션은 자주 발생하지 아니므로, DM 클라이언트가 주기적으로 DM 서버로 디바이스 관리를 위한 DM 세션을 형성하는 것은 낭비이다. In addition, since device management actions for the DM client do not occur frequently, it is wasteful for the DM client to establish a DM session for device management with the DM server periodically.
이를 위해 본 발명은 주기적으로 네트워크의 DM 서버에 DM 클라이언트에 대한 DM 관리 액션(Management Action)이 존재하는지 여부를 체크하기 위한 새로운 메시지를 도입한다. 본 발명에 따라, DM 클라이언트는 DM 서버에게 자신에 대한 DM 관리 액션(Management Action)이 존재하는지 여부를 체크하기 위한 체크 메시지를 주기적으로 DM 서버로 전송한다. 본 명세서에서는 이러한 메시지를 DM 액션 체크 메시지(Check_DM_Action message)라고 명명한다. To this end, the present invention periodically introduces a new message for checking whether a DM management action for a DM client exists in a DM server of a network. According to the present invention, the DM client periodically sends a check message to the DM server to check whether there is a DM Management Action for the DM server. In this specification, such a message is referred to as a DM action check message (Check_DM_Action message).
DM 서버는 DM 액션 체크 메시지를 수신하면, 해당 DM 클라이언트를 위한 관리 액션이 존재하는지 여부를 확인하고, 관리 액션이 존재한다면 Pkg#0 통지 메시지를 전송하여 DM 세션을 개시한다. 그리고, DM 서버는 관리 액션이 존재하지 않는다면 이를 나타내는 Ack 코드 형태의 응답 메시지를 DM 클라이언트로 전송한다.When the DM server receives the DM action check message, the DM server checks whether there is a management action for the corresponding DM client, and if the management action exists, transmits a
이하 본 발명의 바람직한 실시 예들을 첨부한 도면을 참조하여 상세히 설명 한다. 또한 본 발명의 요지를 불필요하게 흐릴 수 있는 공지 기능 및 구성에 대한 상세한 설명은 생략한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. In the following description, well-known functions or constructions are not described in detail since they would obscure the invention in unnecessary detail.
도 3은 본 발명의 바람직한 실시예에 따른 DM 서버와 DM 클라이언트의 구성을 나타낸 블록도이다.3 is a block diagram showing the configuration of a DM server and a DM client according to an embodiment of the present invention.
도 3을 참조하면, DM 클라이언트(100)는 주기적으로 DM 관리 액션을 체크하기 위한 주기(Period)를 측정하기 위한 타이머(110), DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 생성하는 DM 액션 체크 메시지 생성부(120) 및 DM 서버(200)에 대해 송수신되는 DM 패키지 메시지를 생성하고 처리하는 DM 패키지 생성 및 처리부(130)를 포함한다.Referring to FIG. 3, the
타이머(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)로 전송하지 않는다.The
그리고 DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 발생했을 때 이를 DM 액션 체크 메시지(Check_DM_Action message)를 수신할 때까지 저장하고 있는 DM 액션 스택부(210), DM 클라이언트(100)로부터의 DM 액션 체크 메시지를 처리하는 DM 액션 체크 메시지 처리부(220) 및 DM 클라이언트(100)에 대해 송수신되는 DM 패키지 메시지를 생성하고 처리하는 DM 패키지 생성 및 처리부(230)를 포함한다.In addition, the
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)로 전송한다.When a DM action for the
이하, 본 발명의 실시예들에 따른 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 설명한다.Hereinafter, a message flow between the
먼저, DM 서버(200)에 DM 클라이언트(100)를 위한 DM 액션이 존재하지 않는 경우의 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 도 4를 참조하여 설명한다.First, a message flow between the
도 4를 참조하면, DM 클라이언트(100)는 타이머(110)를 이용하여 폴링 주기가 되었는지 여부를 체크한다. 폴링 주기가 되었으면(단계 400 및 단계 430), DM 클라이언트(100)는 DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 DM 서버(200)에 전송한다(단계 410).Referring to FIG. 4, the
이 DM 액션 체크 메시지는 DM 서버(200)에게 자신에게 DM 액션이 존재하는 지 여부를 문의하기 위한 메시지로서, 그 용량이 매우 작으며, 단순한 구조를 갖도록 설계된다. 즉, DM 액션 체크 메시지는 해당 클라이언트(소스)의 주소와 ID, DM 서버(목적지) 주소, DM 액션이 존재하는 지를 체크하도록 지시하는 명령 등을 포함한다. 그리고 DM 액션 체크 메시지는 DM 세션을 형성하는데 필요한 정보, 예컨대, DevInfo MO를 포함하지 않을 수 있다. 다른 실시예에서 따라 DM 액션 체크 메시지는 디바이스 인증(Device Authentication)을 위한 크레덴셜(credential) 정보를 더 포함할 수도 있다.This DM action check message is a message for inquiring the
DM 액션 체크 메시지는 예컨대, 아래와 같은 구조를 가질 수 있다.The DM action check message may have the following structure, for example.
<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><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)에게 전송되도록 한다.In the conventional periodic polling method, since the
DM 클라이언트(100)로부터 DM 액션 체크 메시지를 수신하면, DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 존재하는지 여부를 체크한다. DM 클라이언트(100)에 대한 DM 액션이 존재하지 않으면, DM 서버(200)는 DM 액션 체크 메시지(Check_DM_Action)에 대한 응답으로 대기 중인 DM 관리 액션이 없음을 알리는 응답 메시지를 DM 클라이언트(100)로 전송한다(단계 420). Upon receiving the DM action check message from the
이 응답 메시지는 해당 클라이언트(목적지)의 주소와 ID, DM 서버(소스) 주소, DM 액션이 존재하는지 여부를 나타내는 코드 등을 포함한다. 즉, 응답 메시지는 단순히 Ack code 형태로 DM 액션이 없음을 나타내는 코드를 포함한다. 이 응답 메시지는 예컨대, 아래와 같은 구조를 가질 수 있다.This response message contains the address and ID of the client (destination), the DM server (source) address, and a code indicating whether the DM action exists. That is, the response message simply includes a code indicating that there is no DM action in the form of Ack code. This response message may have the following structure, for example.
<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><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을 전송하지 않을 수 있다. Subsequently, upon receiving a response message including a code indicating that there is no DM action from the
다음으로, DM 서버(200)에 DM 클라이언트(100)를 위한 DM 액션이 존재하는 경우의 DM 서버(200)와 DM 클라이언트(100) 간의 메시지 흐름을 도 5를 참조하여 설명한다.Next, a message flow between the
도 5를 참조하면, DM 클라이언트(100)는 타이머(110)를 이용하여 폴링 주기가 되었는지 여부를 체크한다. 폴링 주기가 되었으면(단계 500), DM 클라이언트(100)는 DM 서버(200)에 실행될 DM 액션이 존재하는지 여부를 체크하기 위한 DM 액션 체크 메시지(Check_DM_Action message)를 DM 서버(200)에 전송한다(단계 510). 이 DM 액션 체크 메시지는 전술한 바와 같이 구성될 수 있다.Referring to FIG. 5, the
DM 클라이언트(100)로부터 DM 액션 체크 메시지를 수신하면, DM 서버(200)는 DM 클라이언트(100)에 대한 DM 액션이 존재하는지 여부를 체크한다. DM 클라이언트(100)에 대한 DM 액션이 존재하면, DM 서버(200)는 그 응답으로 DM Pkg#0 통지 메시지(Notification message)를 DM 클라이언트(100)로 전송한다(단계 520). Upon receiving the DM action check message from the
즉, 해당 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)로 전달될 수 있다.That is, if there is a DM management action to be executed for the
DM 서버(200)로부터 Pkg#0 통지 메시지를 수신하면, DM 클라이언트(100)는 기존의 OMA DM 규격에 맞게 Pkg#1 메시지를 DM 서버(200)로 전송하여 DM 세션을 형성한다(단계 530). 그에 따라, DM 서버(200)는 DM 액션을 위한 명령들을 DM Pag#2 메시지를 이용하여 DM 클라이언트(100)로 전송한다.Upon receiving the
이어서, DM 서버(200)와 DM 클라이언트(100)에서의 구체적인 동작을 설명한다.Next, specific operations in the
도 6은 본 발명에 따른 DM 클라이언트의 동작을 나타낸 도면이다.6 is a diagram illustrating an operation of a DM client according to the present invention.
도 6을 참조하면, 먼저 DM 클라이언트(100)는 단계 610에서 타이머(110)를 구동한다(단계 610). 이어서, DM 클라이언트(100)는 단계 620에서 타이머가 만료되었는지 여부를 판단한다. 타이머가 만료되었으면(단계 620: 예), 즉, 타이머의 값이 0이 되면, 단계 630에서 DM 액션 체크 메시지 생성부(120)를 통해 DM 액션 체크 메시지를 생성하여 DM 서버(200)로 전송한다. 이어서, DM 클라이언트(100)는 단계 640에서 DM 서버(200)로부터 응답 메시지를 수신한다.Referring to FIG. 6, first, the
상기와 같이 DM 서버(200)로부터 메시지를 수신하면, DM 클라이언트(100)는 단계 650에서 해당 메시지가 DM 패키지0(Pkg#0) 통지 메시지인지 여부를 판단한다.Upon receiving the message from the
상기 응답 메시지가 DM 패키지0 통지 메시지이면(단계 650: 예), DM 클라이언트(100)는 단계 660으로 진행하여 DM 패키지 생성 및 처리부(130)를 통해 OMA DM 규격에 따른 패키지1 메시지를 생성하여 DM 서버(200)로 전송한다.If the response message is a
반면에 상기 응답 메시지가 DM 패키지0 통지 메시지가 아니면(단계 650: 아니오), DM 클라이언트(100)는 단계 670에서 응답 메시지에서 DM 액션이 없음을 나타내는 코드를 확인하고, 단계 610으로 되돌아간다. 실시예에 따라 타이머가 만료되지 않았으면(단계 620: 아니오), 단계 610으로 되돌아간다.On the other hand, if the response message is not the
도 7은 본 발명에 따른 DM 서버의 동작을 나타낸 도면이다.7 is a view showing the operation of the DM server according to the present invention.
도 7을 참조하면, DM 서버(200)는 먼저 단계 710에서 DM 액션 체크 메시지를 수신하였는지 여부를 판단한다. DM 서버(200)는, DM 액션 체크 메시지 처리부(220)를 통해 수신한 DM 액션 체크 메시지를 식별할 수 있다. DM 액션 체크 메시지를 수신하였으면(단계 710: 예), DM 서버(200)는 단계 720에서 DM 액션 체크 메시지에 포함되어 있는 Device ID에 대하여 현재 대기중인 DM 관리 액션이 있는지 여부를 판단한다. 반면에 DM 액션 체크 메시지를 수신하지 않았으면(단계 710: 아니오), 상기 DM 액션 체크 메시지를 수신할 때까지 수신 여부를 체크할 수 있다.Referring to FIG. 7, the
판단 결과 해당 DM 클라이언트(100)를 위한 DM 액션이 존재하면(단계 720: 예), DM 서버(200)는 단계 730으로 진행하여 DM 패키지0 메시지를 DM 클라이언트(100)로 전송한다. 반면에 DM 클라이언트(100)를 위한 DM 액션이 존재하지 않으면, DM 서버(200)는 단계 740에서 DM 액션이 없음을 나타내는 코드를 포함하는 응답 메시지를 DM 클라이언트(100)로 전송한다.If it is determined that there is a DM action for the corresponding DM client 100 (step 720: YES), the
상기 DM 액션 체크 메시지(Check_DM_Action)와 그 응답 메시지(Ack code), 또는 Pkg#0 ~ #4 모두 HTTP 등의 프로토콜을 통해 전달된다. The DM action check message (Check_DM_Action) and its response message (Ack code), or
도 1은 일반적인 DM 세션 셋업(Set up) 과정을 나타낸 도면,1 is a diagram illustrating a general DM session set up process;
도 2는 패키지#1 메시지에 포함되는 DevInfo MO를 나타낸 도면,2 is a view showing DevInfo MO included in a
도 3은 본 발명의 바람직한 실시예에 따른 DM 서버와 클라이언트의 구성을 나타낸 블록도,3 is a block diagram showing the configuration of a DM server and a client according to an embodiment of the present invention;
도 4는 DM 서버에 DM 클라이언트를 위한 DM 액션이 존재하지 않는 경우의 DM 서버와 DM 클라이언트간의 메시지 흐름을 나타낸 도면,4 is a diagram illustrating a message flow between a DM server and a DM client when there is no DM action for the DM client in the DM server;
도 5는 DM 서버에 DM 클라이언트를 위한 DM 액션이 존재하는 경우의 DM 서버와 DM 클라이언트간의 메시지 흐름을 나타낸 도면,5 is a diagram illustrating a message flow between a DM server and a DM client when a DM action for a DM client exists in the DM server;
도 6은 본 발명에 따른 DM 클라이언트의 동작을 나타낸 도면,6 is a view showing the operation of a DM client according to the present invention;
도 7은 본 발명에 따른 DM 서버의 동작을 나타낸 도면.7 is a view showing the operation of a DM server according to the present invention.
Claims (12)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070083005A KR101390013B1 (en) | 2007-08-17 | 2007-08-17 | Method for periodcally managing dm clients and system therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020070083005A KR101390013B1 (en) | 2007-08-17 | 2007-08-17 | Method for periodcally managing dm clients and system therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20090018517A KR20090018517A (en) | 2009-02-20 |
KR101390013B1 true KR101390013B1 (en) | 2014-04-30 |
Family
ID=40686780
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020070083005A KR101390013B1 (en) | 2007-08-17 | 2007-08-17 | Method for periodcally managing dm clients and system therefor |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101390013B1 (en) |
Citations (3)
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 (en) * | 2004-07-09 | 2006-05-19 | 엘지전자 주식회사 | Device management system and device management command scheduling method thereof |
KR20060128618A (en) * | 2005-06-09 | 2006-12-14 | 가부시키가이샤 히타치세이사쿠쇼 | Device management system |
-
2007
- 2007-08-17 KR KR1020070083005A patent/KR101390013B1/en active IP Right Grant
Patent Citations (3)
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 (en) * | 2004-07-09 | 2006-05-19 | 엘지전자 주식회사 | Device management system and device management command scheduling method thereof |
KR20060128618A (en) * | 2005-06-09 | 2006-12-14 | 가부시키가이샤 히타치세이사쿠쇼 | Device management system |
Also Published As
Publication number | Publication date |
---|---|
KR20090018517A (en) | 2009-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100508489C (en) | System and method for dynamic interface management | |
US20070198745A1 (en) | System operator independent server alerted synchronization system and methods | |
KR102312994B1 (en) | Apparatus for providing home network service and method thereof | |
KR20070037260A (en) | Home automation system | |
CN102333100A (en) | Authentication method and terminal | |
US8438246B2 (en) | Device management using a RESTful interface | |
EP2654242A1 (en) | Device management method and apparatus | |
WO2007054013A1 (en) | A processing method, terminal, equipment management server and system for subscribing task in the equipment management | |
CN102055608A (en) | CPE (customer premise equipment) updating method, device and system | |
US8924486B2 (en) | Method and system for aggregating communications | |
US20220109980A1 (en) | Template-based registration | |
KR101390013B1 (en) | Method for periodcally managing dm clients and system therefor | |
US20080040476A1 (en) | Access Point Control System and Access Point Control Method | |
WO2020157450A1 (en) | Device registration mechanism | |
CN107425994A (en) | A kind of method, terminal and server for realizing parameters remote management | |
US20150229513A1 (en) | Systems and methods for efficient remote security panel configuration and management | |
JP6971118B2 (en) | Devices, methods and programs for sending and receiving data to and from IoT devices | |
KR101417012B1 (en) | Method and apparatuses for holding Device Management(DM) session | |
KR101979588B1 (en) | Method, System and Apparatus for Controlling Session | |
US10701111B2 (en) | Method and apparatus for device management | |
JP6420410B2 (en) | Information distribution apparatus, push notification transmission method, and computer program | |
JP6227583B2 (en) | Information distribution apparatus, push notification transmission method, and computer program | |
JP6389229B2 (en) | Terminal device, push notification receiving method, and computer program | |
US8903388B2 (en) | Compact base station device and signaling method | |
KR101346077B1 (en) | Push client and method for pushing sevice using the same |
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: 20170330 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20180329 Year of fee payment: 5 |
|
FPAY | Annual fee payment |
Payment date: 20191125 Year of fee payment: 6 |
|
R401 | Registration of restoration | ||
FPAY | Annual fee payment |
Payment date: 20200226 Year of fee payment: 7 |