WO2014030905A1 - 무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 - Google Patents
무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 Download PDFInfo
- Publication number
- WO2014030905A1 WO2014030905A1 PCT/KR2013/007455 KR2013007455W WO2014030905A1 WO 2014030905 A1 WO2014030905 A1 WO 2014030905A1 KR 2013007455 W KR2013007455 W KR 2013007455W WO 2014030905 A1 WO2014030905 A1 WO 2014030905A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- command
- server
- answer
- timeout
- identifier
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/18—Service support devices; Network management devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3228—Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
-
- 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/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/04—Processing captured monitoring data, e.g. for logfile generation
-
- 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/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W24/00—Supervisory, monitoring or testing arrangements
- H04W24/08—Testing, supervising or monitoring using real traffic
Definitions
- the present invention relates to a method for integrating a schedule in a wireless communication system and an apparatus therefor.
- the DMCXDM client informs the DMS (DM server) of the execution of a command through Synchronous or Asynchronous Unanswered (or Reported) mode when executing an Exec command. It is up to the DMC to choose between the two modes.
- the identifier of the command In order for the DMC to respond asynchronously, the identifier of the command must be transmitted when the DMS sends a command. Otherwise, the DMC cannot perform an asynchronous response to the command. That is, in DM 1.3, DMC can be informed by including the above identifier that a specific execution command can answer asynchronously, but the DMC sets the criteria for which of the two answering modes to choose. It is not possible to present it in the DMC itself.
- the present invention proposes a method for efficiently transmitting a male answer to a command from a server in a wireless communication system.
- a method for transmitting a response to a command from a server in a wireless communication system comprising: receiving a command from the server; And performing the command until the timeout expires, and performing the command until the timeout expires. If this is not done, the method further comprises: sending a first answer to the server including an identifier for the command; And after the execution of the command is completed, transmitting a second voice answer including a result of the command and the identifier.
- the timeout may be a preset value or a value transmitted from the server.
- the time out may be determined to a preset value.
- the timeout may be determined as a preset value.
- the method may further comprise generating an identifier for the command.
- the identifier for the command may be a valid value between the transmission time of the first response and the second response.
- a method for transmitting a response to a command from a server in a wireless communication system wherein the method is performed by a terminal and includes a plurality of command stones from the server.
- the timeout may be a preset value or a value transmitted from the server.
- the timeout may be determined to a preset value.
- the timeout when a timeout having a specific value is received from the server, the timeout may be determined as a preset value.
- the method may further comprise generating an identifier for the command.
- the identifier for the command may be a valid value between the transmission time of the first response and the second response.
- a method for transmitting a male answer to a command from a server in a wireless communication system wherein the method is performed by a terminal and includes a plurality of commands from the server.
- a terminal configured to transmit a response to a command from a server in a wireless communication system according to an embodiment of the present invention, the terminal comprising: a radio frequency (RF) unit; And a processor configured to control the RF unit, wherein the processor is configured to receive a command from the server and to perform the command until a time-out expires, until the timeout expires. If the action is not completed, the processor: sends a first answer to the server that includes an identifier for the command. After the execution of the command is completed, it may be configured to transmit a second answer including the result and the identifier for the command.
- RF radio frequency
- a terminal configured to transmit a response to a command from a server in a wireless communication system according to an embodiment of the present invention, the terminal comprising: a radio frequency (RF) unit; And a processor configured to control the RF unit, wherein the processor is configured to receive an instruction package comprising a plurality of instructions from the server, and to execute instructions in the instruction package until the time-to-expiration expires; If the execution of all instructions in the instruction package is not completed until a timeout expires, the processor: completes execution of the instructions in the instruction package.
- RF radio frequency
- a terminal configured to transmit a response to a command from a server in a wireless communication system according to an embodiment of the present invention, comprising: a radio frequency (RF) unit; And a processor configured to control the RF unit, the processor receiving an instruction package comprising a plurality of instructions from the server. ⁇ sequentially for each of the plurality of instructions, when the timeout expires. To execute a command in the command package until a command is completed before expiration of the timeout, and to include a result of the command in a reply; If the command is not completed before the timeout expires, the command may include an identifier for the command in the answer, and if there is no command to start execution in the command package, send the answer to the server. .
- RF radio frequency
- a response to a command from a server can be efficiently transmitted in a wireless communication system.
- Figure 1 illustrates a procedure related to a command package according to the prior art.
- Figure 2 shows a response procedure for responding to the command according to an embodiment of the present invention.
- Figure 3 shows a response procedure for the response of the response to the response according to an embodiment of the present invention.
- FIG. 5 illustrates an answering procedure for transmitting O 0 according to an embodiment of the present invention.
- Figure 6 shows a response procedure for sending a message 0 3 ⁇ 4 o according to an embodiment of the present invention.
- Figure 7 shows a flow chart of a response procedure 0 0 large-according to an embodiment of the present invention.
- Figure 8 shows a block diagram of an apparatus for implementing embodiment (s) of the present invention.
- a device for device-to-device communication may be fixed or mobile, and may communicate with a server for device-to-device communication, that is, a ⁇ 2 ⁇ server to transmit and receive user data and / or various control information.
- the devices belong to this.
- the ⁇ 2 ⁇ device may include a terminal equipment, a mobile station (MS), a mobile terminal (MT), a user terminal (UT), an SSCsubscribe station, a wireless device, a personal digital assistant (PDA), and a wireless modem ( wireless It may be called a modem, a handheld device, or the like.
- M2M server generally refers to a fixed stat ion communicating with M2M devices and / or other M2M servers, and communicates with M2M devices and / or other M2M servers to Exchange data and control information.
- Device Management refers to managing device configuration and other managed objects of devices in terms of various Management authorities.
- Device management includes sequential updates of constantly persistent information in devices, retrieval of management information from devices, and processing of events and alarms generated by devices, but setting initial configuration information in devices.
- Device Management includes, but is not restricted to setting initial configuration information in Devices, subsequent updates of persistent information in Devices, retrieval of management information from Devices and processing events and alarms generated by Devices.
- the management tree allows management servers to interact with DM clients. For example, by storing values in or retrieving values from the management tree and by manipulating the attributes of the management tree, an interface is an access control list (ACL), for example.
- ACL access control list
- a management tree is a device management tree or DM tree. And may be referred to interchangeably.
- a management object is a subtree of a management tree that is intended to be a set of nodes (or even a single node) that are related in some way to each other.
- a ./Devlnfo node and its child nodes may form a managed object.
- a Management Object is a subtree of the Management Tree which is intended to be a (possibly singleton) col lect ion of Nodes which are related in some way.
- the ./ Devlnfo Nodes form a Management Object .
- a simple Management Object may consist of one single Node.
- a DM server or DMS may be a conceptual software component in a device management infrastructure that follows the 0MA Device Management Enabler static conformance requirements specified for the DM server or the DMS. have.
- the DM server or the DMS can serve as a DM client-server protocol and a DM server—an end-point of a server interface.
- DM server an abstract software component in a de loyed Device Management infrastructure that conforms to the 0MA Device Management Enabler static conformance requirements specified for DM Servers .It serves as an end-point of the DM CI ient -Server Protocols and DM Server ⁇ Server Interface).
- the DM server or the DMS may be provided mounted in an apparatus, a device, a computer, or the like having communication modules, processor modules, and the like, and thus may be implemented as one device.
- a DM client or DMC is a conceptual component in device implementation that follows specific 0MA device management enabler static conformance requirements for the DM client or the DMC. It may be a software component.
- the DM client or the DMC may serve as an end-point of a DM client and server protocol. (An abstract software component in a Device im lement at ion that conforms to the 0MA Device Management Enabler static conformance requirements specified for DM Clients. serves as an end-point of the DM CI ient-Server Protocols.
- the DM client or the DMC may be provided mounted in a device targeted for the DM having communication modules, processor modules, and the like, and thus may be implemented as one device.
- access control lists ACLs
- An ACL refers to a list of DM server identifiers and access rights associated with each DM server identifier for a particular node in the management tree (A list of identifiers and access rights associated with each identifier).
- a node is a single element in the management tree. There can be two types of nodes in the management tree: interior nodes and leaf nodes.
- the format attribute of a node provides information as to whether the node is a leaf node or an interior node.
- the Format property of a Node provides information about whether a Node is a leaf or an Interior Node.
- An interior node can have child nodes, whereas the value assigned to the node, i. You can't have a node value. A Node that may have child Nodes, but cannot store any value.
- the Format property of an Interior Node is node.
- a leaf node may not have child nodes but may have node values instead.
- the Format property of a Leaf Node is not node.
- a persistent node is a node whose DDF attribute scope is set to Permanent. If the node is not a permanent node, it is a dynamic node. A Node is permanent if the DDF property Scope is set to Permanent .If a Node is not permanent, it is dynamic.A permanent Node can never be deleted by the server .)
- a dynamic node is a node whose DDF property scope is set to dynamic or whose DDF property scope is not specified (A Node is dynamic if the DDF property Scope is set to Dynamic, or if the Scope property is unspecified).
- the server identifier refers to the OMA DM internal name for the DM server.
- a DM Server is associated with an existing Server Identifier in a device through OMA DM account.
- All terminals managed by the device management (DM) protocol have one DM tree starting with the root node, and the DM protocol operates management commands to the terminals by manipulating each node of the DM tree. Do this. For example, in order to install the downloaded software on the terminal, if a node called install that matches the software is executed, the corresponding software can be installed.
- Each node can represent simple information such as numbers, or it can represent complex data, such as picture data or log data.
- a node can also represent a command, such as run, download, etc.
- Each node has a property that provides meta information related to the node.
- One of these attributes is the runtime attribute, which is the attribute that can be used until the node is created and destroyed in the DM tree.
- runtime attributes include ACL, Format, Name, Size, Title, TStamp, Type, and VerNo.
- Access Control List is an essential function that both the terminal and the server must implement in the DM 1.3 protocol.
- ACL specifies DM commands that a specific DM server can execute on a specific node. Unless specified, DM commands cannot be executed. In other words, ACL means the permissions that a particular DM server is granted to a particular node.
- ACLs are assigned to the server identifier of the DM server, not URIs, IP addresses, or DM server certificates. This server identifier is used as an identifier to authenticate the DM server in the DM protocol.
- such an ACL may be provided as an ACL property and an ACL value assigned to the ACL property.
- the ACL value is ACL information or ACL information may be referred to interchangeably.
- DM 1.3 was defined in the protocol, all nodes have the ACL property, every node has an ACL attribute is defined to have a blank (empty) ACL value or a non-empty (non ⁇ empty) ACL value.
- ACL has unique properties that differ from other run-time properties, and this unique representative property is ACL inheritance.
- ACL inheritance is the concept that when a node in the DM tree does not have an ACL value, the ACL value for that node is taken from the ACL value of the parent node. If the parent node also does not have an ACL value, the ACL is taken from the parent node of that parent node. Since the DM protocol specifies that the root node, which is the top node of the DM tree, must have an ACL value, the ACL value must be inherited. Since this ACL inheritance is not performed for individual DM commands, but for the entire ACL value, the ACL inheritance from the parent node is made only when the ACL value is empty. In other words, if a node's ACL value specifies only the Add permission, then the Unspecified Get permission is not inherited.
- the DM server uses the Get command to get the ACL value.
- Replace permission means permission to replace ACL values of all child nodes.
- the authority to replace the ACL value of the node may be controlled by the ACL value of the parent node. If you have Replace permission on an interior node, this means that you can replace the ACL values of all the child nodes, as well as the interior node. Thus, if you have Replace permission on the root node, that means you can have any permission on any node in the DM tree. However, having the Replace permission on a parent node does not imply a specific permission such as Get on the child node, and the right such as Get must be specified directly on the child node. Therefore, the ACL value must be modified before the command is executed.
- the ACL value for all nodes on the way to the node to be modified is modified to finally modify the child node and ACL value. Because this is inconvenient. In the DM protocol, if the parent or ancestor node has Replace permission, the ACL value of the node is directly allowed without modifying the ACL value of the intermediate node.
- the created node When the DM server creates a new node through the Add command, the created node generally does not have an ACL value and all permissions are inherited from the parent. However, if the created node is an interior node and the parent node does not have Replace permission, it is necessary to have sufficient authority to manage the node by setting the ACL value at the same time.
- DMS1 and DMS2 are the server identifiers of the DM Server, and Get. Replace and Delete are DM commands. Therefore, DMS1 can perform Get and Replace commands and DMS2 can delete commands for the node.
- An ACL value is a collection of individual ACL-entries, and each node's ACL value may contain at least one ACL entry.
- DDF Device Description Framework
- a DDF is a description of how to describe the management syntax and semantics for a particular device type.
- the DDF provides information on the MO, management function, and DM tree structure of the terminal.
- DM 1.3 authentication is performed based on the ACL. DM authentication is done separately for each DM command. If the DM server sends a plurality of DM commands, the DM client (client, DMC) performs authentication before executing individual commands, and as a result, only authorized DM commands are executed.
- the DM protocol consists of two parts: the setup phase and the management phase.
- the management step can be repeated as much as the DM server desires.
- One set of setup and management phases is called a management session, which can be started with package # 0 (tricker).
- the trigger is transmitted through out-of-band, which is a transport layer other than the transport layer where the DM protocol is transmitted.
- a short message service SMS may be used.
- the management step consists of a plurality of protocol iterations.
- the package content sent from the DM server to the DM client determines whether the session continues. If the DM server sends management operations in the package that require ques- tions (status or results) from the DM client, then the management phase sends the DM client's responses to the management operations from the DM client to the DM server.
- the session continues by sending a new package containing it.
- the response package from the DM client can start a new protocol iteration.
- the DM server may send a new management operation package and thus initiate new protocol iterations as desired.
- the DM client may request the DM server.
- the protocol terminates without sending a response package for the package received from.
- the DM server should send the answer packages for all client packages.
- Packages are sent to the DM server or DM client via a message belonging to the management session.
- the message has a unique identifier (MsglD) that is valid in the session, and the management commands in the message are unique and valid in the message. It has an identifier (CmdID).
- management commands are sequenced (processing management commands in sequence) or atomic (Atomic-management commands), if all of the management commands are successful, they are not executed at all.
- the DM client and the DM server can freely select the order of execution of the management commands sent in the package, unless included by the parent management command. However, if the order of execution is required by a parent management command (e.g., Sequence), the commands must be executed in the order in which they are sent.
- a parent management command e.g., Sequence
- the DM client MUST NOT send any commands other than Replace commands, results, and alerts, including Devlnfo, to the DM server.
- the DM protocol defines a general notification message for alerts generated by a DM client that may have a relationship with a Management Object (MO). If it is related to a managed object, the LocURI element in Source must identify the address of the managed object.
- MO Management Object
- the DM client may send a general notification message to the DM server.
- General notification messages can only be sent from the DM client to the DM server.
- the DM server After the DM server receives the general notification message, the DM server must reply with a status as to how the DM server will handle all general notifications.
- the DM client may transmit "general notifications” through a plurality of notifications, or may transmit various types of "general notifications” through a plurality of Item elements in the "general notifications” as a single notification.
- the data in the general notification message is the DM protocol
- the DM protocol only specifies how the DM client will tell the DM server what type and format the data is.
- the DM server must support the general notification format, but not all types of notification data.
- the DM server MUST respond with status 415 "Unsupported media Type or Format" if Type and Format are not supported by the DM server. If the DM client does not support Large Objects, the notification message must not exceed the size of one message.
- the optional parameter Mark MUST contain the critical level. If the Mark parameter is omitted, a default critical level is assumed.
- the DM server should respond with status 200 "0" or 202 "Accepted for processing” if the DM server has received the notification without any error and is capable of processing data within the notification. In other cases, the DM server should use one of the following error status codes 401, 406, 407, 412, 415 or 500.
- CmdlD Information for identifying a command. All commands must always have this value.
- the Data element MUST use the value 1226 [DMREPPR0] to indicate to the DM server that this is a general alarm.
- Item The Item element shall be repeated for each general notification when the device sends several types of general alarms together in the same notification message.
- LocURI in Source Corresponds to an optional parameter. If an alarm is generated from a managed object and the definition of that managed object specifies that a LocURI must be included, it must be included in the generic alarm message.
- Meta The Meta element must be specified for the type and format of notification data.
- Type element The Type element must be specified, which specifies the media type of the content information in the Data element in the Meta element.
- the Format element must be specified.
- the Format element specifies the Format of the Data element that follows.
- Mark Mark elements can be specified.
- the Mark element will define the critical level of the notification message. The following levels are allowed in general notifications: "fatal”, “critical”, “minor”, “warning”, “informational”, “harmless”, and “indeterminate”. Their order indicates the level of importance, where “fatal” is the most important and “indeterminate” is the least important. If the Mark element is omitted, the default important level "informational” is assumed.
- Correlator is an optional element and is used when the notification is an asynchronous answer to an Exec command. This represents the identifier of the command and may also be referred to as the global identifier.
- the correlator field in the notification echoes the correlator value of the run command, and all other instances are omitted from the notification.
- the correlator value must be unique for each DM client, regardless of the messages in the package or management session, until the DM server receives the response to the command. In the M0 definition, the generic notification must specify how the correlator is used.
- the general notification is used to notify the server when an M0 related event occurs in the client.
- general notifications are also used for asynchronous replies of execution instructions.
- the correlator in the general notification must be the same as the correlator in the execution command previously sent from the server.
- the synchronous response is a method of transmitting a response to the reception of the command and a result of performing the command to the server as a single response.
- Asynchronous response is different from a response to the reception of the command and a result of the execution of the command. This is the way to send a response to the server.
- the asynchronous voice answer is a method requiring a correlator.
- Purpose It is used to execute a process of a node by transferring the command to a node capable of executing commands in the DM Tree in the DM Client.
- the required GndID element type specifies a unique identifier within the message belonging to the management session for the command.
- the Cred element MUST NOT be used in an execution instruction.
- Correlator elements should be used when the server expects an asynchronous response to an execution command.
- the optional Meta element type describes meta-information to be used for the command. For example, a common media type or format for all items may be specified. The scope of meta-information is limited to commands.
- Item element specifies the data to be used as an argument to the process to be executed.
- Execution commands must be specified in the Sequence or SyncBody element type, and the Target specified in the Item element of the execution command must be the full device URI that points to the executable node.
- the command returns a valid status code, the status codes being, for example:
- the content model is as follows and may not exist as an option for elements containing "?".
- a correlator may exist for an execution command. That is, the DM server determines whether to insert the correlator and transmits it to the client. just If the correlator does not exist, the client responds unconditionally to the command. The client decides whether to send a synchronous voice response or an asynchronous response on its own decision in the presence of the correlator. If the client decides to send in synchronous response, the status is sent to package # 3 as shown below.
- SC0M0 Software Component Management Object
- the DM client decides to send an asynchronous voice answer, it sends the status to package # 3 as follows.
- 202 of the Data element means Accepted for processing.
- the client After the execution of the execution command is completed, the client transmits the execution result through a general notification.
- the following table illustrates the ResLiltCode element of the general notification example of the SCOMO.
- the DM server transmitting the command preferably receives a response to the command stably from the client (terminal).
- DM The client can choose either synchronous or asynchronous response, so it is impossible for the DM server to predict when a response to the command will be received. If the client does not receive a response from the DM client, it will not be able to send a new package. As a synchronous answer, a problem arises in that the DM client cannot immediately transfer a command necessary for the decision to the DM client.
- the server generates and transmits a command, but the execution of the command is performed by the client.
- the server cannot predict how long the command will take, which causes it to send a correlator with the command (or send it with a correlator) but generate the correlator for every command.
- the correlator is generated and the transmission load is generated.
- a clear criterion for selecting a synchronous / asynchronous response mode is proposed. More specifically, the present invention proposes to use a time length indicated by timeout as a selection criterion of the synchronous / asynchronous answer mode.
- the server when transmitting a command to a terminal (or client), the server may transmit a timeout parameter for determining or selecting the synchronous / asynchronous answering mode.
- the server and the terminal may share a timeout in advance, and this specification is referred to as a default timeout.
- the terminal when the server transmits a command to the terminal without a specific or explicit timeout, the terminal performs the default timeout. It can be recognized that it is necessary to determine the synchronous / asynchronous answer mode.
- the terminal when the server-transmitted timeout parameter value is a specific value (eg, any negative integer), the terminal It can be recognized that the default timeout should be used to determine the synchronous / non-synchronous voice answer mode.
- a specific value eg, any negative integer
- 2 to 4 illustrate examples of command transmission of a server and a male and female answering response thereof according to an embodiment of the present invention.
- 2 illustrates an example in which an asynchronous response mode is not allowed.
- the terminal must perform a response to the command of the server only through the synchronous response mode.
- the server 1 can send a command to the terminal 2 (S21).
- the terminal performs the command (S22), and the terminal may transmit a command answer including a result of the execution of the command to the server (S23).
- the time required to execute the command is long, it takes a long time until the server receives a response to the command sent by the server from the terminal, so that the server Only to wait for the response without transmitting to the terminal.
- 3 and 4 show that when the asynchronous / synchronous ques- tion mode is allowed and the parameter for determining the asynchronous / synchronous ques- tion mode, that is, the aforementioned timeout parameter, is explicitly transmitted from the server to the terminal.
- the server 1 and the terminal 2 can determine the asynchronous / synchronous answering mode using the default timeout previously agreed upon.
- 3 illustrates a case in which the terminal completes execution of a command from the server within a time period indicated by the default timeout
- FIG. 4 illustrates an example in which the terminal does not.
- the server 1 may transmit a command to the terminal 2 (S31).
- the terminal can confirm that an explicit timeout parameter is not received together. Accordingly, the terminal can confirm that the time indicated by the default timeout is a criterion for determining the synchronous / asynchronous answering mode. Can be. Then, the terminal may perform the command (S32). If the execution of the command is completed within the time indicated by the default timeout. The terminal may transmit a command response including a result of the command to the server (S33).
- FIG. Turning to the 4, S41 and S42 of Figure 4 be omitted to avoid the "duplication of description is the same brute with S31 and S32 of Fig. 3 eu the MS while to perform the command, and at the same time a timer It can be operated.
- the timer is used to determine whether the time indicated by the default time-array has been exceeded. If the execution of the command is not completed despite the time indicated by the default time-out, the server is determined.
- a command response including the correlator may be transmitted.
- the correlator may be generated by the terminal.
- the command answer sent in step S43 may perform a function of a kind of acknowledgment answer.
- the terminal may transmit a command response including the correlator to the server.
- the terminal may continue to perform the command (S44).
- the terminal may transmit a command answer including the correlator and the execution result of the command to the server (S45).
- the server does not transmit the timeout parameter to the terminal, but the server explicitly transmits the timeout parameter in transmitting the command to the terminal.
- the server does not transmit the timeout parameter to the terminal, but the server explicitly transmits the timeout parameter in transmitting the command to the terminal.
- An example would be possible.
- the server does not transmit the correlator with the command to the terminal.
- the server may send a correlator with the command. Therefore, embodiments of the present invention will be described according to whether the correlator is transmitted to the terminal together with the command.
- Example 1 A Correlator Is Not Received from a Server
- the terminal may generate a correlator and include it in a command response for the command to transmit to the server.
- the command from the server is a package that is a set of commands rather than a single command.
- the server 1 may transmit a package and a timeout parameter to the terminal 2 (S51). Accordingly, the terminal may perform commands in the package (S52). Alternatively or additionally, the terminal may start a timer. The timer is the time It can be used to determine whether the time indicated by the out has been exceeded. Although the execution of the command is completed, since the time indicated by the timeout parameter has not exceeded, the terminal may transmit a command response including the processing result of the command to the server (S53).
- S61 and S62 are the same as S51 and S52 of FIG. 5. In order to avoid duplication of explanation, description thereof will be omitted.
- the terminal is in phase 7!
- a result of the commands that have been performed and a correlator for each of the commands that are not completed may be generated and transmitted to the server (S63).
- the correlator is transmitted again later when it transmits the result of the commands that are not completed to the server, so that the server knows that the result of the command.
- the terminal may continue to perform .commands (hereinafter, simply referred to as "remaining commands") in which the execution is not completed (S64).
- the terminal may transmit a result of performing each heading ⁇ command and each correlator to the server (S65).
- the execution result of each command and each correlator can be sent as a message belonging to one management session, a message belonging to several management sessions, or a message belonging to another management session.
- the terminal transmits a synchronous voice response to the server for commands that have been executed within the time indicated by the timeout among the commands in the package, and the timeout is indicated. For commands that have not been completed within a certain time, an asynchronous voice answer may be sent to the server.
- the server may designate a correlator for each command and transmit it to the terminal. Therefore, the terminal may transmit the correlator to the server by including the correlator in an asynchronous response to commands that have not been completed within the period indicated by the timeout parameter transmitted with the command. Of course, the correlator is not transmitted as a response thereto for commands that have been performed within the period indicated by the timeout parameter. 7 is a flowchart for explaining in detail the embodiments of the present invention described above.
- the terminal can receive a package including command (s) from the server.
- the package is a collection of command (s).
- the package also includes a case that includes a single command.
- the terminal may determine whether to answer the command in the synchronous response mode or the asynchronous answer mode. More specifically, as in the example of FIG. 2, it may be determined whether an asynchronous response mode is not allowed as a response to the command.
- the terminal may determine a timeout to be used to determine the asynchronous answer mode or the synchronous response mode. That is, as described above, when an explicit timeout parameter is received from the server, the terminal may use time information designated by the timeout parameter.
- the terminal may determine which timeout is used as a time (ie, a determination time) for determining a response mode in the manner described above. According to the above example, the terminal may optionally use the default timeout or timeout received from the server for the determination.
- a timeout may be set individually for each command.
- the terminal may execute the command (s) in the package until the determination time.
- the terminal may sequentially execute the command (s) in the package. Therefore, after executing one command during the determination time, the next command may be executed when the command is completed.
- the terminal may perform the command (s) in the package, if the asynchronous voice answer mode is not allowed.
- the server unconditionally wants to obtain the result of the command through the synchronous answer, that is, when the asynchronous answer is not used, the terminal may continue to perform the command (s) in the package until the execution of all command (s) is completed. Can be.
- the terminal may determine whether the execution of the heading-command within the determination time is completed.
- the server that receives the command may know whether the execution result of the command is the result of a command sent by the correlator. Make sure In the case of a synchronous response, the identifier of the command in the session or a sequential i ' al response tells you what the result of the command is, whereas in the case of an asynchronous response, the session that received the command may have ended. Even if the previous session is maintained, the sequential question does not tell which command the result is.
- the server can determine which command the asynchronous response is the result. Therefore, the coator can be a value unique to each terminal (client), which is valid between the time point at which the synchronous answer and the asynchronous answer are transmitted (or between the time point received at the server).
- the terminal may include the execution result of the command in the synchronization response.
- the terminal may include the correlator in the synchronization response including a result of some of the commands in which the execution is completed. Even though it is determined to transmit the command execution result through the asynchronous answer, the terminal needs to inform the server through the synchronous answer that the asynchronous response is made because the command execution is not completed within the timeout period.
- the synchronous question should include a correlator, indicating that the command is still being executed.
- S710 The terminal can determine whether there is a command (s) for which execution is not started (or started) in the package received in S701.
- the timeout parameter may be set for each package (ie, package-level) but may be set for each instruction in the package (ie, command-level).
- S702 to S709 described above may be performed for each command in the package. That is, the determination time for determining the answer mode is determined by the timeout parameter set for each command, and the execution of the command is performed within the time corresponding to each timeout parameter (hereinafter, simply referred to as the "determination time"). You can determine if it is complete.
- the answer may include a question answer (eg, a correlator) for a command whose execution is not completed.
- step S711 the terminal transmits a synchronous response to the plurality of commands and the correlator included therein to the server as a single answer.
- the terminal If there is a command that does not start execution in the package, the terminal returns to S702 and repeats S702 to S709.
- the terminal may continue to execute the instructions that have not been completed and transmit the result of the execution to the server in asynchronous manner.
- FIG. 8 shows a block diagram of a device configured to perform embodiment (s) of the present invention.
- the transmitter 10 and the receiver 20 carry information and / or data, signals, messages, and the like.
- Radio frequency (RF) units 13 and 23 capable of transmitting or receiving a radio signal
- memories 12 and 22 for storing various kinds of information related to communication in a wireless communication system
- the RF units 13 and 23 And operatively connected with components of the memory (12, 22) column.
- a processor (11, 21) configured to control the memory component (12, 22) and / or the RF unit (13, 23) such that the device is controlled so that the apparatus performs at least one of the above-described embodiments of the present invention.
- the memory 12 and 22 may store a program for processing and controlling the processors 11 and 21 and may temporarily store input / output information.
- Memory 12, 22 can be utilized as a buffer.
- the processors 11 and 21 typically control the overall operation of the various models in the transmitter or receiver. In particular, the processors 11 and 21 may perform various control functions for carrying out the present invention. Processors 11 and 21 may also be referred to as controllers, microcontrollers, microprocessors, microcomputers, and the like. The processors 11 and 21 may be implemented by hardware or firmware, software, or a combination thereof. In the case of implementing the present invention using hardware, applic icat ion specific integrated circuits (ASICs) or digital signal processing devices (DSPs), digital signal processing devices (DSPs), and programmable logic (PLDs) configured to carry out the present invention.
- ASICs application-lic icat ion specific integrated circuits
- DSPs digital signal processing devices
- DSPs digital signal processing devices
- PLDs programmable logic
- firmware or software may be configured to include modules, procedures, or functions for performing the functions or operations of the present invention, and to carry out the present invention.
- the configured firmware or software may be provided in the processors 11 and 21 or stored in the memory 12 and 22 to be driven by the processors 11 and 21.
- the terminal or the device and the server, or the DMC and the DMS may operate as the transmitting device 10 or the receiving device 20, respectively.
- the present invention is a terminal of a wireless mobile communication system. It can be used for base stations, servers or other equipment.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Environmental & Geological Engineering (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mobile Radio Communication Systems (AREA)
- Computer And Data Communications (AREA)
Abstract
본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며, 상기 방법은 상기 서버로부터 명령을 수신하는 단계; 및 타임아웃이 만료할 때까지 상기 명령을 수행하는 단계를 포함하고, 상기 타임아웃이 만료할 때까지 상기 명령의 수행이 완료되지 않으면, 상기 방법은: 상기 명령에 대한 식별자를 포함하는 제1응답을 상기 서버로 전송하는 단계; 및 상기 명령의 수행이 완료된 이후, 상기 명령에 대한 결과 및 상기 식별자를 포함하는 제 2 응답을 전송하는 단계를 포함할 수 있다.
Description
【명세서】
【발명의 명칭】
무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 【기술분야】
[1] 본 발명은 무선 통신 시스템에서 스케줄을 통합하기 위한 방법 및 이를 위 한 장치에 관한 것이다.
【배경기술】
[2] DM 1.3 에서는 DMCXDM client)가 실행 (Exec) 명령을 수행함에 있어 동기 (Synchronous) 또는 비동기 (Asynchronous) 웅답 (또는 보고) 모드를 통해 명령 수 행의 결과를 DMS(DM server)에게 알려준다. 두 가지 모드 중 하나를 선택하는 것 은 DMC 의 선택에 맡겨져 있다. DMC 가 비동기 응답을 하기 위해서는 DMS 가 명령 을 전송 시 상기 명령의 식별자를 전송해야 하며, 전송하지 않을 시에는 DMC 는 해당 명령에 대해 비동기 웅답을 수행할 수 없다. 즉, DM 1.3 에서는 DMC 에게 특 정 실행 명령이 비동기 웅답을 통해 웅답을 할 수 있음을 상기 식별자를 포함시킴 으로써 알려줄 수 있지만, DMC 에게 두 개의 웅답 모드 중 어떤 것을 선택해야 하 는지에 대한 기준을 DMC 에 제시할 수는 없으며 , DMC 자체적으로 동기 또는 비동 기 웅답 모드를 선택하여 웅답한다.
【발명의 상세한 설명】
【기술적 과제】
[3] 본 발명은 무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 효율적 으로 전송하기 위한 방안을 제안하고자 한다.
[4] 본 발명이 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들 로 제한되지 않으며 , 언급되지 않은 또 다른 기술적 과제들은 이하의 발명의 상세 한 설명으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확 하게 이해될 수 있을 것이다.
【기술적 해결방법】
[5] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며, 상기 서버로부터 명령을 수신하는 단계; 및 타임아웃이 만료할 때까지 상기 명령 을 수행하는 단계를 포함하고, 상기 타임아웃이 만료할 때까지 상기 명령의 수행
이 완료되지 않으면, 상기 방법은: 상기 명령에 대한 식별자를 포함하는 제 1웅답 을 상기 서버로 전송하는 단계; 및 상기 명령의 수행이 완료된 이후, 상기 명령에 대한 결과 및 상기 식별자를 포함하는 제 2 웅답을 전송하는 단계를 포함할 수 있 다.
[6] 바람직하게는, 상기 타임아웃은 미리 설정된 값이거나, 상기 서버로부터 전송된 값일 수 있다.
[7] 바람직하게는, 상기 서버로부터 명시적으로 타임아옷이 수신되지 않는 경 우, 상기 타임아웃은 미리 설정된 값으로 결정될 수 있다.
[8] 바람직하게는 상기 서버로부터 명시적으로 특정 값을 갖는 타임아웃이 수 신되는 경우, 상기 타임아웃은 미리 설정된 값으로 결정될 수 있다.
[9] 바람직하게는, 상기 방법은 상기 명령에 대한 식별자를 생성하는 단계를 더 포함할 수 있다.
[10] 바람직하게는, 상기 명령에 대한 식별자는 상기 제 1응답과 상기 제 2웅답 의 전송 시점 사이에서 유효한 값일 수 있다.
[11] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며, 상기 서버로부터 복수의 명령돌을 포함하는 명령 패키지를 수신하는 단계; 및 타 임아옷이 만료할 때까지 상기 명령 패키지 내 명령들을 수행하는 단계를 포함하고, 상기 타임아웃이 만료할 때까지 상기 명령 패키지 내 모든 명령들의 수행이 완료 되지 않으면, 상기 방법은: 상기 명령 패키지 내 명령들 중 수행이 완료된 명령 (들)에 대한 결과 및 수행이 완료되지 않은 나머지 명령 (들)에 대한 식별자를 포 함하는 제 1 응답을 상기 서버로 전송하는 단계; 및 상기 나머지 명령 (들)의 수행 이 완료된 이후, 상기 나머지 명령 (들)에 대한 결과 및 상기 식별자를 포함하는 제 2 응답을 전송하는 단계를 포함할 수 있다.
[12] 바람직하게는, 상기 타임아웃은 미리 설정된 값이거나, 상기 서버로부터 전송된 값일 수 있다.
[13] 바람직하게는, 상기 서버로부터 명시적으로 타임아웃이 수신되지 않는 경 우, 상기 타임아웃은 미리 설정된 값으로 결정될 수 있다.
[14] 바람직하게는, 상기 서버로부터 명시적으로 특정 값을 갖는 타임아웃이 수 신되는 경우, 상기 타임아웃은 미리 설정된 값으로 결정될 수 있다.
[15] 바람직하게는, 상기 방법은 상기 명령에 대한 식별자를 생성하는 단계를 더 포함할 수 있다.
[16] 바람직하게는, 상기 명령에 대한 식별자는 상기 제 1응답과 상기 제 2웅답 의 전송 시점 사이에서 유효한 값일 수 있다.
[17] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며,상 기 서버로부터 복수의 명령들을 포함하는 명령 패키지를 수신하는 단계 ; 및 상기 복수의 명령들 각각에 대하여 순차적으로, 타임아웃이 만료할 때까지 상기 명령 패키지 내 명령을 수행하고, 상기 타임아웃의 만료 전에 명령이 수행 완료되면, 상기 명령에 대한 결과를 제 1 웅답에 포함시키고; 상기 타임아웃의 만료 전에 명 령이 수행 완료되지 않으면, 상기 명령에 대한 식별자를 상기 제 1 응답에 포함시 키는 단계를 포함하고, 상기 명령 패키지 내 더 이상 수행을 개시할 명령이 없으 면, 상기 웅답을 서버로 전송하는 단계; 및 상기 수행 완료되지 않은 나머지 명령 (들)의 수행이 완료된 이후, 상기 나머지 명령 (들)에 대한 결과 및 상기 나머지 명령 (들)에 대한 식별자를 포함하는 제 2응답을 전송하는 단계를 포함할 수 있다.
[18] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하도록 구성된 단말에 있어서, 상기 단말은 무선 주파수 (radio frequency, RF) 유닛; 및 상기 RF 유닛을 제어하도록 구성된 프로세서를 포함하되, 상기 프로세서는 상기 서버로부터 명령을 수신하고 타임아옷이 만료할 때까지 상 기 명령을 수행하도록 구성되며, 상기 타임아웃이 만료할 때까지 상기 명령의 수 행이 완료되지 않으면 , 상기 프로세서는: 상기 명령에 대한 식별자를 포함하는 제 1 웅답을 상기 서버로 전송하고. 상기 명령의 수행이 완료된 이후, 상기 명령에 대한 결과 및 상기 식별자를 포함하는 제 2 웅답을 전송하도록 구성될 수 있다.
[19] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하도록 구성된 단말에 있어서, 상기 단말은 무선 주파수 (radio frequency. RF) 유닛; 및 상기 RF 유닛을 제어하도록 구성된 프로세서를 포함하되, 상기 프로세서는 상기 서버로부터 복수의 명령들을 포함하는 명령 패키지를 수신 하고, 타임아옷이 만료할 때까지 상기 명령 패키지 내 명령들을 수행하도록 구성 되고, 상기 타임아웃이 만료할 때까지 상기 명령 패키지 내 모든 명령들의 수행이 완료되지 않으면, 상기 프로세서는: 상기 명령 패키지 내 명령들 중 수행이 완료
된 명령 (들)에 대한 결과 및 수행이 완료되지 않은 나머지 명령 (들)에 대한 식별 자를 포함하는 제 1웅답을 상기 서버로 전송하고, 상기 나머지 명령 (들)의 수행이 완료된 이후, 상기 나머지 명령 (들)에 대한 결과 및 상기 식별자를 포함하는 제 2 웅답을 전송하도록 구성될 수 있다.
[20] 본 발명의 일 실시예에 따른 무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하도록 구성된 단말에 있어서, 무선 주파수 (radio frequency, RF) 유닛; 및 상기 RF 유닛을 제어하도록 구성된 프로세서를 포함하되, 상기 프로 세서는 상기 서버로부터 복수의 명령들을 포함하는 명령 패키지를 수신하고.ᅳ상기 복수의 명령들 각각에 대하여 순차적으로, 타임아웃이 만료할 때까지 상기 명령 패키지 내 명령을 수행하고, 상기 타임아웃의 만료 전에 명령이 수행 완료되면, 상기 명령에 대한 결과를 웅답에 포함시키고; 상기 타임아웃의 만료 전에 명령이 수행 완료되지 않으면, 상기 명령에 대한 식별자를 상기 웅답에 포함시키고, 상기 명령 패키지 내 더 이상 수행을 개시할 명령이 없으면, 상기 웅답을 서버로 전송 하도록 구성될 수 있다.
[21] 상기 과제 해결방법들은 본 발명의 실시예들 중 일부에 불과하며, 본 발명 의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
【유리한 효과】
[22] 본 발명의 일 실시예에 따르면, 무선 통신 시스템에서 서버로부터의 명령 에 대한 웅답을 효율적으로 전송할 수 있다.
[23] 본 발명에 따른 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급 되지 않은 또 다른 효과는 이하의 발명의 상세한 설명으로부터 본 발명아 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
【도면의 간단한 설명】
[24] 본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
[25] 도 1은 종래 기술에 따른 명령 패키지와 관련된 절차를 도시한다.
[26] 도 2 는 본 발명의 일 실시예에 따른 명 o¾ᄋ 처^ 그에 대한 응답 절차를 도시한다.
[27] 도 3 은 본 발명의 일 실시예에 따른 명ᄋ ¾ᄋ 처^ rrl 그에 대한 웅답 절차를 도시한다 .
[28] 도 4 는 nl
본 발명의 ᄅ 실시예에 따른 o ᄋ 전송 大 그에 대한 웅답 절차를 도시한다.
[29] 도 5 는 본 발명의 ᄅ 실시예에 따른 O 0 전송 그에 대한 웅답 절차를 도人 1한다.
[30] 도 6 은 본 발명의 일 실시예에 따른 명 0 ¾ᄋ 전송 그에 대한 웅답 절차를 도시한다.
[31] 도 7 은 본 발명의 실시예에 따른 0 ᄋ 전송 大 그에 대한 응답 절차의 순서도를 도시한다.
[32] 도 8 은 본 발명의 실시예 (들)를 구현하기 위한 장치의 블록도를 도시한다
【발명의 실시를 위한 형태】
[33] 이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세 하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시 적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시 형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이 해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.
[34] 몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으 로 도시될 수 있다ᅳ 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일 한 도면 부호를 사용하여 설명한다.
[35] 본 발명에 있어서, 기기간 통신을 위한 디바이스 즉, Μ2Μ 디바이스는 고정 되거나 이동성을 가질 수 있으며, 기기간 통신을 위한 서버 즉, Μ2Μ 서버와 통신 하여 사용자데이터 및 /또는 각종 제어정보를 송수신하는 각종 기기들이 이에 속한 다. 상기 Μ2Μ 디바이스는 단말 (Terminal Equi ment), MS(Mobile Station), MT(Mobile Terminal), UT(User Terminal), SSCSubscribe Station), 무선기기 (wireless device) , PDA(Personal Digital Assistant), 무선 모뎀 (wireless
modem), 휴대기기 (handheld device) 등으로 불릴 수 있다. 또한, 본 발명에 있어 서, M2M 서버는 일반적으로 M2M 디바이스들 및 /또는 다른 M2M서버와 통신하는 고 정된 지점 (fixed stat ion)을 말하며, M2M 디바이스들 및 /또는 다른 M2M 서버와 통 신하여 각종 데이터 및 제어정보를 교환한다.
[36] 이하에서는 본 발명과 관련된 배경기술에 대해 설명한다.
[37] 장치 관리 (Device Management)
[38] 장치 관리 (DM; Device Management)는 다양한 관리 당국 (Management Authorities)들의 관점에서 장치 구성 및 장치들의 다른 관리된 객체를 관리하는 것을 지칭한다. 장치 관리는 장치들 내의 끊임없이 지속되는 정보의 순차적인 업 데이트들, 장치들로부터 관리 정보의 검색, 및 장치들에 의해 생성된 이벤트들과 알람들의 처리를 포함하나, 장치들 내의 초기 구성 정보를 설정하는 것에 한정되 지 않는다 (Management of the Device configuration and other managed objects of Devices from the point of view of the various Management Authorities. Device Management includes, but is not restricted to setting initial configuration information in Devices , subsequent updates of persistent information in Devices , retrieval of management information from Devices and processing events and alarms generated by Devices . )
[39] 관리 트리 (Management Tree)
[40] 관리 트리는 관리 서버가 DM 클라이언트와 상호작용. 예컨대 관리 트리에 값들을 저장하거나 관리 트리로부터 값들을 검색함으로써 그리고 관리 트리의 속 성들을 조작함으로써, 하기 위한 인터페이스이고, 예컨대 관리 트리의 한 속성으 로 ACL(access control list)가 있다. (The interface by which the management server interacts with the client, e.g. by storing and retrieving values from it and by manipulating the properties of it, for exam le the access control lists.) 본 명세서에서는, 관리 트리는 장치 관리 트리 또는 DM 트리와 상호호환 가능하게 지칭될 수 있다.
[41] M0 (관리 객체; Management Object)
[42] 관리 객체는 서로 몇몇 방식으로 관련된 노드들의 집합 (하나의 노드 단독 으로도 가능)이 될 것이 의도된 관리 트리의 서브 트리이다. 예컨대, ./Devlnfo 노드와 그 자식 노드들은 관리 객체를 형성할 수 있다. 간단한 관리 객체는 하나
의 단독 (single) 노드로 구성될 수 있다 (A Management Object is a subtree of the Management Tree which is intended to be a (possibly singleton) col lect ion of Nodes which are related in some way. For example, the . /Devlnfo Nodes form a Management Object . A simple Management Object may consist of one single Node.)
[43] DM Server 또는 DMS (Device Management Server)
[44] DM 서버 또는 DMS는 상기 DM 서버 또는 상기 DMS에 대해 특정된 0MA 장치 관리 인에이블러 (Enabler) 고정 적합 (static conformance) 요구사항들을 따르는 장치 관리 인프라스트릭쳐에 있는 개념적안소프트웨어 컴포넌트일 수 있다. 상기 DM 서버 또는 상기 DMS 는 DM 클라이언트ᅳ서버 프로토콜 및 DM 서버—서버 인터페 이스의 엔드—포인트로서 서비스할 수 있다 (An abstract software component in a de loyed Device Management infrastructure that conforms to the 0MA Device Management Enabler static conformance requirements specified for DM Servers . It serves as an end-point of the DM CI ient -Server Protocols and DM Server一 Server Interface) .
[45] 또한, 본 명세서에서 DM 서버 또는 DMS 는 통신모들, 프로세서모들 등을 구비하는 장치, 디바이스, 컴퓨터 등 내에 탑재된 채로 제공될 수 있으며, 따라서 하나의 장치로서 구현될 수 있다.
[46] . DM Client 또는 DMC(Device Management Client)
[47] DM 클라이언트 또는 DMC 는 상기 DM 클라이언트 또는 상기 DMC 에 대해 특 정된 0MA 장치 관리 인에이블러 (Enabler) 고정 적합 (static conformance) 요구사 항들을 따르는 장치 임플리멘테이션 (implementation)에 있는 개념적인 소프트웨어 컴포넌트일 수 있다. 상기 DM 클라이언트 또는 상기 DMC 는 DM 클라이언트ᅳ서버 프로토콜의 엔드 -포인트로서 서비스할 수 있다 (An abstract software component in a Device im lement at ion that conforms to the 0MA Device Management Enabler static conformance requirements specified for DM Clients. It serves as an end-point of the DM CI ient -Server Protocols . ) .
[48] 또한, 본 명세서에서 DM 클라이언트 또는 DMC 는 통신모들, 프로세서모들 등을 구비하는 상기 DM 의 대상이 되는 장치 내에 탑재된 채로 제공될 수 있으며, 따라서 하나의 장치로서 구현될 수 있다.
[49] ACL(Access Control List)
[50] ACL 은 관리 트리 내의 특정 노드에 대한 DM 서버 식별자들 및 각각의 DM 서버 식별자와 연관된 접근 권한 (access right)들의 리스트를 지칭한다 (A list of identifiers and access rights associated with each identifier).
[51] 노드 (Node)
[52] 노드는 관리 트리에 있는 단독 엘리먼트이다. 관리 트리 내에서 노드는 두 종류: 인테리어 노드 및 리프 노드가 있을 수 있다. 노드의 포맷 속성은 노드가 리프 노드인지 인테리어 노드인지 여부에 관한 정보를 제공한다 (A Node is a single element in a Management Tree. There can be two kinds of Nodes in a Management Tree: Interior Nodes and Leaf Nodes . The Format property of a Node provides information about whether a Node is a leaf or an Interior Node . ) .
[53] 인테리어 노드 (Interior Node)
[54] 인테리어 노드는 자식 노드를 가질 수 있는 반면, 노드에 할당된 값 즉. 노드 값 (node value)은 가질 수 없다. 인테리어 노드의 포맷 속성은 "node"이다 (A Node that may have child Nodes , but cannot store any value. The Format property of an Interior Node is node) .
[55] 리프 노드 (Leaf Node)
[56] 리프 노드는 자식 노드를 가질 수 없고 대신 노드 값을 가질 수 있다. 리 프 노드의 포맷 속성은 "node"가 아니다 (A Node that can store a value, but cannot have child Nodes . The Format property of a Leaf Node is not node.).
[57] 따라서 모든 부모 (parent) 노드는 인테리어 노드가 되어야만 한다.
[58] 영구 노드 (Permanent Node)
[59] 영구 노드는 DDF 속성 스코프가 퍼머년트 (Permanent)로 설정되있는 노드이 다. 노드가 영구 노드가 아니면, 동적 노드에 해당한다. 영구 노드는 서버에 의해 동적으로 생성되거나 삭제될 수 없다 (A Node is permanent if the DDF property Scope is set to Permanent . If a Node is not permanent , it is dynamic. A permanent Node can never be deleted by the server . )
[60] 동적 노드 (Dynamic Node)
[61] 동적 노드는 DDF 속성 스코프 (Scope)가 다이내믹 (Dynamic)으로 설정되있거 나, 상기 DDF 속성 스코프가 특정되지 않은 노드이다 (A Node is dynamic if the DDF property Scope is set to Dynamic , or if the Scope property is unspecified).
[62] 서버 식별자 (Sever Identifier)
[63] 서버 식별자는 DM 서버에 대한 OMA DM 내부 이름을 지칭한다. DM 서버는 OMA DM 계정을 통해 장치에 존재하는 서버 식별자와 연관된다 (The OMA DM internal name for a DM Server . A DM Server is associated with an existing Server Identifier in a device through OMA DM account.).
[64] ACL 속성 및 ACL 값
[65] DM(device management ) 프로토콜로 관리되는 모든 단말은 루트 노드 (root node)로 시작되는 하나의 DM 트리 (tree)를 갖게 되고 , DM 프로토콜은 DM 트리의 각 노드를 조작함으로써 단말에 관리 명령을 수행한다. 예로, 단말에 다운로드 된 소프트웨어를 설치하기 위해서는 그 소프트웨어와 매칭되어 있는 인스를 (install) 이라는 노드를 실행 (Exec)하면, 해당 소프트웨어를 설치할 수가 있다. 각각의 노 드는 숫자와 같은 단순한 정보를 나타낼 수도 있고, 그림 데이터나 로그 데이터처 럼 복잡한 데이터를 나타낼 수도 있다. 또한 노드는 실행, 다운로드 등과 같아 하 나의 명령을 나타낼 수도 있다.
[66] 각각의 노드는 노드와 관련된 메타 정보를 제공해 주는 속성 (property)을 갖는다. 이 속성 중에 런타임 (runtime) 속성이 있는데, 이 속성은 노드가 DM 트리 안에 생성이 되어 소멸될 때까지 사용 가능한 속성을 뜻한다. 이러한 런타임 속성 에는 ACL, Format , Name, Size, Title, TStamp, Type, VerNo가 있다.
[67] ACL(Access Control List)는 DM 1.3 프로토콜에서는 단말과 서버가 모두 구현해야 하는 필수 기능이다. ACL 은 특정 DM 서버가 특정 노드에 수행 가능한 DM 명령 (command)들을 명시하며, 명시되지 않는 DM 명령은 수행될 수 없다. 다시 말하면, ACL 은 특정 DM 서버가 특정 노드에 대해 허용된 권한을 의미한다. DM 프 로토콜에서 ACL 은 DM 서버의 서버 식별자에 부여되며, URI, IP 주소, DM 서버 자 격 (certificate)에 부여되지 않는다. 이 서버 식별자는 DM 프로토콜에서 DM 서버 를 인증하는 식별자로써 사용된다. 또한, 이러한 ACL 은 ACL 속성 (property)과 상 기 ACL 속성에 부여된 ACL 값으로 제공될 수 있다. 한편, 본 명세서에서 ACL 값은
ACL 정보 (ACL information) 또는 ACL 에 관한 정보로 상호호환 가능하게 지칭될 수 있다. DM 1.3 프로토콜에서는 모든 노드가 ACL 속성을 갖도록 정의되었으며, ACL 속성을 갖는 모든 노드는 비어있는 (empty) ACL 값 또는 비어있지 않은 (non¬ empty) ACL 값을 갖도록 정의된다.
[68] ACL 은 다른 런타임 속성과 다른 독특한 성질을 갖는데, 이러한 독특한 대 표적인 성질로서 ACL 상속 (ACL inheritance)이 있다. ACL 상속은 DM 트리안의 어 떤 노드가 ACL 값을 가지고 있지 않을 때, 그 노드에 대한 ACL 값을 부모 노드의 ACL 값에서 가져오는 개념이다. 만약 부모 노드 역시 ACL 값을 가지고 있지 않다 면, 그 부모 노드의 부모 노드에서 ACL 값을 가져오게 된다. DM 프로토콜에서는 DM 트리의 최상위 노드인 루트 노드가 반드시 ACL 값을 갖도록 명시하고 있기 때 문에, ACL 값은 반드시 상속되게 된다. 이러한 ACL 상속은 개별 DM 명령별로 이루 어지지 않고, 전체 ACL 값에 대해 수행되기 때문에, ACL 값이 비어 있어야만, 부 모 노드로부터 ACL 상속이 이루어지게 된다. 즉, 어떤 노드의 ACL 값이 Add 권한 만을 명시하고 있다면, 명시되어 있지 않는 Get (가져오기) 권한 등은 상속되지 않 는다.
[69] DM 프로토볼에서는 루트 노드는 ACL 에 대한 기본 값으로 "Add=*&Get=*"을 갖게 되며, 여기서 '는 와일드 카드 (wild card)로써, 임의의 DM 서버를 뜻한다. DM 서버가 ACL 값을 얻기 위해서는 Get 명령을 이용하면 되며, "./NodeA/NoderpropzACL1'에 대한 Get 명령은 . /NodeA/Nodel 의 ACL 값을 가져오 게 된다. 또한 ACL 값을 바꾸기 위해서는 교체 (Replace) 명령을 이용하면 되며, "./NodeA/Nodel propzACL1'에 Replace 명령을 수행하여
"Add=DMSl&Delete=DMSl&Get=DMSl"로 값을 바꾸게 되면 ACL 값이 바뀌게 된다. DM 프로토콜에서는 개별 ACL 엔트리 (acl entry)를 바꿀 수가 없고, 전체 ACL 값을 바 꿀 수 있도록 정의되어 있다, ACL 값을 얻어 오고 수정하는 권한 역시 ACL 에 기 반하여 정의되는데, 인터리어 노드와 리프 노드에 대한 권한이 조금 다르게 정의 되어 있다.
[70] - 인테리어 노드
해당 노드에 Get 과 Replace 권한을 가지고 있다면, 해당 노 드의 ACL 값을 각각 가져오고 교체할 수 있는 권한이 있다. 또한 Replace 권한은 모든 자식 노드의 ACL 값을 교체할 수 있는 권한을 의미한다.
[71] - 리프 노드
해당 노드의 부모 노드에 Replace 권한을 가지고 있다면, 그 노드의 ACL 값을 교체할 수 있는 권한이 있다. 해당 노드의 ACL 을 가져오기 위해 서는 부모 노드에 Get 권한을 가지고 있어야 한다. 마찬가지로, 해당 노드에 Replace 권한을 가지고 있다면, 그 노드의 값을 교체할 수 있는 권한을 뜻하며, ACL을 교체하기 위해서는 부모 노드에 Replace 권한을 가지고 있어야 한다.
[72] 인테리어 노드이건 리프 노드이건 상관없이 해당 노드의 ACL 값을 교체하 는 권한은 부모 노드의 ACL 값에 의해 제어될 수 있다. 인테리어 노드에 Replace 권한을 가지고 있다면, 해당 인테리어 노드는 물론, 모든 자식 노드의 ACL 값을 교체할 수 있는 권한을 뜻한다. 따라서, 루트 노드에 Replace 권한을 가지고 있다 면, DM 트리 내의 모든 노드에 어떤 권한이든지 가질 수 있다는 뜻이 된다. 하지 만 부모 노드에 Replace 권한을 갖고 있다는 것이 곧바로, 자식 노드에 Get 과 같 은 특정 권한을 내포하지는 않으며 , 해당 자식 노드에 직접적으로 Get 과 같은 권 한이 명시되어 있어야만 한다. 따라서 명령 수행 전에 ACL 값을 수정해 줘야만 하 며, 수정하려는 노드로 가는 길에 있는 모든 노드에 대한 ACL 값의 수정을 통해 최종적으로 해당 자식 노드와 ACL 값을 수정하게 된다. 이는 불편하기 때문에 . DM 프로토콜에서는 부모 혹은 선조 노드 (ancestor node)에 Replace 권한을 가지고 있 을 경우, 중간 노드의 ACL 값 수정 없이 바로 해당 노드의 ACL 값의 수정을 허용 하고 있다.
[73] DM 서버가 새로운 노드를 추가 (Add) 명령을 통해 생성한 경우, 생성된 노 드는 일반적으로 ACL 값을 갖지 않게 되어, 모든 권한을 부모에게서 상속받게 된 다. 하지만 생성한 노드가 인테리어 노드이고, 부모 노드에 Replace 권한을 가지 고 있지 않을 경우, 생성과 동시에 ACL 값을 설정하여 해당 노드를 관리하기 위한 층분한 권한을 갖는 것이 필요하다.
[74] ACL 값을 나타내기 위한 문법은 [DM— TND]에 정의되어 있으며, ACL 값의 한 예는 "Get=DMSl&Replace=DMSl&Delete^MS2"를 들 수 있다. 여기서 DMS1과 DMS2는 DM Server 의 서버 식별자이며, Get. Replace, Delete 는 DM 명령이다. 따라서 해 당 노드에 대해 DMS1은 Get과 Replace 명령을 수행할 수가 있고, DMS2는 Delete 명령을 수행할 수 있다. 여기서 Get=DMSl, Replace=DMSl, Delete=DMS2 는 각각이 ACL-엔트리 (acl— entry)이며, DM 서버의 개별 명령 권한을 나타낸다. 다시말하면 ,
ACL 값은 개별 ACL-엔트리 (acl— entry)의 집합이며, 각 노드의 ACL 값은 적어도 하 나의 ACL 엔트리를 포함할 수 있다.
[75] DDF(Device Description Framework)
[76] DDF 는 특정 디바이스 타입에 대한 관리 신택스와 시멘틱을 기술하는 방법 에 관한 설명이다 (A specification for how to describe the management syntax and semantics for a particular device type) . DDF 는 단말의 MO, 관리 기능 및 DM 트리 구조에 대한 정보를 제공한다.
[77] DM 1.3 인증
[78] DM 1.3 에서는 ACL 에 기반하여 인증을 수행한다. DM 인증은 각각의 DM 명 령에 대해 별도로 이루어진다. 만약 DM 서버가 다수의 DM 명령을 전송했으면, DM 클라이언트 (client, 이하 DMC)는 개별 명령을 수행하기 전에 인증을 수행하고, 그 결과로 허가된 DM 명령만 수행하게 된다.
[79] DM프로토콜 패키지 (Packages)
[80] DM 프로토콜은 2 개의 부분으로 구성된다: 셋업 단계 (phase)와 관리 단계 . 관리 단계는 DM 서버가 원하는 만큼 반복될 수 있다. 셋업 단계와 관리 단계의 하 나의 세트를 관리 세션이라 부르는데, 관리 세션들은 패키지 #0(트리커)로 시작할 수 있다. 트리거는 DM Protocol 이 전송되는 전송 (Trasnport ) 계층이 아닌 다른 전송 계층인 아웃—오브 -밴드 (out— of-band)를 통해 전송되며 이러한 예로 SMS( Short Message Service)가 대표적으로 사용될 수 있다.
[81] 도 1은 상기 2개의 단계를 도시한다.
[82] 상기 관리 단계는 복수의 프로토콜 반복들로 구성된다. DM 서버로부터 DM 클라이언트로 전송된 패키지 콘텐츠는 세션이 계속될지 여부를 결정한다. 만약 DM 서버가 DM 클라이언트로부터의 웅답들 (상태 또는 결과)을 요구하는 관리 동작 (operation)들을 패키지에서 전송하면, 관리 단계는 DM 클라이언트로부터 DM 서버 로의, 그 관리 동작들에 대한 DM 클라이언트의 응답들을 포함하는 새로운 패키지 를 전송함으로써 세션은 계속된다. DM 클라이언트로부터의 응답 패키지는 새로운 프로토콜 반복을 시작할 수 있다. DM 서버는 새로운 관리 동작 패키지를 전송할 수 있고 따라서 자신이 원하는 만큼 새로운 프로토콜 반복을 개시할 수 있다.
[83] 관리 단계 동안, DM 서버로부터 DM 클라이언트로의 패키지가 관리 동작들 또는 ¾린지 (challenge)를 포함하고 있지 않으면, DM 클라이언트는 상기 DM 서버
로부터 수신된 패ᅳ기지에 대한 웅답 패키지를 전송하지 않고 프로토콜은 종료한다.
DM서버는 모든 클라이언트 패키지들에 대한 웅답 패키지들을 전송해야 한다.
[84] 패키지들의 프로세싱은 예측할 수 없는 양의 시간을 소비할 수 있다. 따라 서, DM 프로토콜은 패키지들 간의 타임아웃을 특정하지 않는다.
[85] 패지지들은 관리 세션에 속한 메시지를 통해 DM 서버 또는 DM 클라이언트 로 전송 된다.상기 메시지는 세션에서 유효한 고유한 식별자 (MsglD)를 가지며, 상 기 메시지 안의 관리 명령들은 상기 메시지에서 유효한 고유한 식별자 (CmdID)를 가진다.
[86] 만약 관리 명령들이 시뭔스 (Sequence ― 관리 명령들을 순서대로 처리 ) 또 는 아토믹 (Atomic - 관리 명령들 모두 성공적으로 수행 시 전체 수행 , 관리 명령 들 중 어느 하나라도 실패할 경우 전체 수행하지 않음)의 부모 관리 명령에 의해 포함되지 않으면, DM 클라이언트 및 DM 서버는 패키지에서 전송된 관리 명령들의 실행 순서를 자유롭게 선택할 수 있다. 그러나, 실행 순서가 부모 (parent) 관리 명령 (e.g., Sequence)에 의해 요구되면, 명령들은 그들이 전송된 순서에 따라 실 행되어야 한다.
[87] DM 클라이언트는 Devlnfo 를 포함한 Replace 명령, 결과들 (Results) 및 알 림 (Alert) 외의 어떠한 명령도 DM 서버로 전송해서는 안된다.
[88] 일반적 알림 (Generic Alert)
[89] DM 프로토콜은 관리 객체 (MO; Management Object)와 관계를 가질 수 있는 DM 클라이언트에 의해 생성된 알림 (alert)들을 위한 일반적 알림 메시지를 정의한 다. 관리 객체와 관계가 있는 경우, Source 내 LocURI 엘리먼트는 관리 객체에 대 한 주소 (address)를 식별해야만 한다.
[90] 클라이언트 또는 서버 개시된 (initiated) 관리 알림 (Alert) 이후에 , DM 클 라이언트는 DM 서버로 일반적 알림 메시지를 전송할 수 있다. 일반적 알림 메시지 는 오직 DM 클라이언트로부터 DM 서버로만 전송될 수 있다. DM 서버가 일반적 알 림 메시지를 수신한 이후, DM 서버는 어떻게 DM 서버가 모든 일반적 알림들을 다 를지에 대한 상태로서 웅답해야 한다.
[91] DM 클라이언트는 복수의 알림을 통해 "일반적 알림" 을 전송할 수 있거나, 하나의 알림으로 "일반적 알림" 내 복수의 Item 엘리먼트를 통해 여러 타입의 "일반적 알림" 을 전송할 수 있다. 일반적 알림 메시지의 데이터는 DM 프로토콜
에서 명시하지 않으며, DM 프로토콜은 어떻게 DM 클라이언트가 DM 서버에게 데이 터가 무슨 Type 및 Format 인지를 알릴 것인지만을 명시한다. DM 서버는 일반적 알림 포맷을 지원해야하나 모든 타입들의 알림 데이터를 지원해야하는 것은 아니 다. DM서버는 만약 Type 및 Format 이 DM서버에 의해 지원되지 않으면 상태 415 "Unsupported media Type or Format" 으로 웅답해야 한다. 만약 DM 클라이언트가 Large Object 를 지원하지 않으면, 알림 메시지는 메시지 하나의 사이즈를 초과해 서는 안된다.
[92] 선택적 파라미터 Mark 는 중요 레벨을 포함해야한다. 만약 상기 Mark 파라 미터가 생략되면, 디폴트 중요 레벨이 가정된다.
[93] DM 서버는 만약 DM 서버가 어떠한 에러 없이 알림을 수신했고 상기 알림 내에 데이터를 프로세싱할 능력이 있으면, 상태 200 "0 " 또는 202 "Accepted for processing" 으로 웅답해야 한다. 다른 경우들에서, DM 서버는 다음의 에러 상태 코드들 401, 406, 407, 412, 415 또는 500 중 하나를 사용해야 한다.
[94] ᅳ 메시지 구조
[95] 다음은 일반적 알림 메시지의 기본적인 디자인이다.
<Alert>
<CmdID>2</CmdID>
<Data>1226</Data> <!— Generic Alert ——>
<Correlator>abcl23</Correlator>
<Item>
<Source><LocURI> . /SyncML/Samp 1 e</LocURI></Source>
<Meta>
<Type xmlns=' syncml '-met inf ' >
Reve r sed-Doma i nᅳ Name: org. doma in. s am lealert
</Type>
<Format xmlns=' syncml: met inf >xml</Format>
<Mark xmlns=' syncml : met inf' >critical</Mark> <ι— - Optional - > </Meta>
<Data>
<!— Client Alert Data Goes Here ᅳ-〉
</Data>
</Item>
</Alert>
[96] 위의 알림 메시지에는 CmdlD, Data, Correlator, Item, LocURI , Meta, Type, Format , Mark 등의 엘리먼트가 존재함을 알 수 있다. 이들 각각을 아래에서 설명하도록 한다.
[97] CmdlD: 명령올 식별하기 위한 정보로서, 모든 명령들은 항상 본 값을 가져 야 한다.
[98] Data: Data 엘리먼트는 일반적 알람임을 DM 서버에 알리기 위해 값 1226 [DMREPPR0]를 사용하여야 한다.
[99] Item: Item 엘리먼트는 디바이스가 동일한 알림 메시지 내에 함께 여러 타 입의 일반적 알람들을 전송할 경우, 각각의 일반적 알림들에 대해 반복되어야 한 다.
[100] Source 내 LocURI: 선택사항인 파라미터에 해당한다. 만약 알람이 관리 객 체로부터 생성되고 그 관리 객체의 정의에서 LocURI 를 반드시 포함하여야 한다고 명시되어 있으면, 반드시 일반적 알람 메시지 내에 포함되어야 한다.
[101] Meta: Meta 엘리먼트는 알림 데이터의 Type 및 Format 을 위해 명시되어야 한다.
[102] Type: Type 엘리먼트는 명시되어야 하고, 이는 Meta 엘리먼트 내 Data 엘 리먼트에 있는 콘텐츠 정보의 미디어 타입을 특정한다ᅳ
[103] Format: Format 엘리먼트는 반드시 명시되어야 한다. Format 앨리먼트는 뒤에 따라오는 Data 엘리먼트의 Format 을 특정한다. Mark: Mark 앨리먼트는 특정 될 수 있다. Mark 엘리먼트는 알림 메시지의 중요 레벨을 정의할 것이다. 다음의 레벨이 일반적 알림에서 허용된다: "fatal" , "critical" , "minor" , "warning" , "informational" , "harmless" 및 "indeterminate" . 그들의 순 서는 중요 레벨을 지시하며, "fatal" 은 가장 중요한 것이고 "indeterminate" 는 가장 중요하지 않은 것이다. 만약 Mark 엘리먼트가 생략되면, 디폴트 중요 레 벨인 "informational" 이 가정된다.
[104] Data (<Item> 내): Data 엘리먼트는 반드시 특정되어야 한다. Data 엘리먼 트는 Meta 태그 에서 Format 및 Type을 사용해야 한다.
[105] Correlator: Correlator (코릴레이터)는 선택사항 엘리먼트이고, 알림이 실 행 (Exec) 명령에 대한 비동기 웅답일 때 사용된다. 이는 명령의 식별자를 나타내 며, 글로벌 식별자로도 지칭될 수 있다. 일반적으로, 알림 내의 코릴레이터 필드 는 실행 명령의 코릴레이터 값을 반복 (echo)하며, 모든 다른 인스턴스 (instance) 들은 알림에서 생략된다. 해당 코릴레이터 값은 상기 실행 명령의 응답을 DM 서버 가 받기 전까지는 패키지 또는 관리 세션에 속한 메시지에 무관하게 DM 클라이언 트마다 고유한 (Unique) 값이어야 한다. M0 정의에서는 일반적 알림을 통해 어떻게 코릴레이터가 사용되는지를 특정해야 한다.
[106] 일반적 알림은 클라이언트에서 M0 관련 이벤트가 발생했을 경우, 이를 서 버에 알리는 목적으로 사용된다. 따라서, 실행 명령의 비동기 옹답에서도 일반적 알림을 사용한다. 또한, 일반적 알림 내의 코릴레이터는 사전에 서버로부터 전송 된 실행 명령 내의 코릴레이터와 동일해야 한다.
[107] 동기 (Synchronization) 웅답 또는 비동기 (Asynchronization) 웅답
[108] 상기 일반적 알림을 통해 서버로부터의 명령에 대한 응답을 하는 방법으로 서 동기 웅답과 비동기 웅답이 있다. 동기 응답은 상기 명령의 수신에 대한 웅답 과 상기 명령에 대한 수행 결과를 하나의 웅답으로 서버로 전송하는 방법이며, 비 동기 웅답은 상기 명령의 수신에 대한 응답과 상기 명령에 대한 수행 결과를 서로 다른 웅답으로 서버로 전송하는 방법이다.
[109] 상기 비동기 웅답은 앞서 설명한 것처럼 코릴레이터가 필요한 방법이다.
[110] 실행 (Exec) 명령
[111] 용도: DM Client 내 DM Tree 안의 실행 명령이 가능한 노드에 해당 명령을 전달함으로써, 해당 노드의 프로세스를 실행하기 위해 사용한다.
[112] 부모 엘리먼트들: SyncBody, Atomic, Sequence
[113] 제한: 실행 명령이 가능한 노드에 대한 구현들은 실행 명령에 대한 리턴 값을 동기로 전달해야 한다. 실행 명령이 가능한 노드 중 실행 결과에 대한 리턴 값을 동기로 보내기 힘든 긴 -수행 프로세스를 위해서는, 리턴 값으로 상기 프로세 스가 성공적으로 개시 (launch)되었는지를 지시하는 상태 (status) 코드, 그리고 상 기 실행 명령의 로컬 식별자를 리턴하도록 구현되어야 한다.
[114] 필수적인 GndID 엘리먼트 타입은 상기 명령에 대한 관리 세션에 속한 메시 지 안에서 고유한 식별자를 특정한다.
[115] Cred 엘리먼트는 실행 명령에서 사용되어서는 안된다.
[116] 코릴레이터 엘리먼트는 서버가 실행 명령에 대한 비동기 응답을 기대하는 경우에 사용되어야 한다ᅳ
[117] 선택사항 Meta 엘리먼트 타입은 상기 명령에 대해 사용될 메타-정보를 기 술한다. 예를 들어, 공통 미디어 타입 또는 모든 아이템들에 대한 포맷이 명시될 수 있다. 메타-정보의 범위는 명령으로 제한된다.
[118] 정확히 하나의 Item 엘리먼트가 반드시 명시되어야 한다. Item 엘리먼트는 실행될 프로세스에 대한 아규먼트 (argument)로서 사용될 데이터를 명시한다. 실행 명령은 Sequence 또는 SyncBody 엘리먼트 타입 내에서 명시되어야 하고, 실행 명 령에 있는 Item 엘리먼트 내 명시된 Target 은 실행 가능한 노드를 가리키는 전체 디바이스 URI이어야 한다.
[119] 실행 가능한 노드와 연계된 프로세스가 어떻게 상기 아규먼트들을 해석하 는지 및 어떻게 값들을 리턴하는지는 타깃이 된 실행 가능한 노드의 디스크립션
(description)에 따론다.
[120] 명령은 유효한 상태 코드를 리턴하고, 상태 코드들은 예컨대 다음과 같다:
[121] 【표 1】
[122] 콘텐츠 모델은 아래와 같으며 "?" 가 포함된 엘리먼트의 경우 선택사항으 로 존재하지 않을 수 있다.
[123] (CmdlD, NoResp?, Cred?, Met a?, Correlator?, Item)
[124] Exec 명령 예
[125] <Exec>
<CmdID>3</CmdID>
<Correlator>correlatorl</Correlator>
<Item>
<Target>
<LocURI> . /SCM/ I nventory/De 1 oyed/Component 789/Operat i ons/Act ivate</LocURI>
</Targetx/Item>
</Exec>
[126] 현재 DM 에서는 실행 명령에 대해서 코릴레이터가 존재할 수 있다. 즉, DM 서버에서 상기 코릴레이터 삽입 여부를 결정하고 이를 클라이언트에 전송한다. 만
약 상기 코릴레이터가 존재하지 않을 경우 클라이언트는 상기 명령에 대해 무조건 동기 웅답으로 웅답한다. 상기 클라이언트는 상기 코릴레이터 존재 시 자체 판단 하에 동기 웅답을 전송할지, 비동기 응답을 전송할지 결정한다. 클라이언트가 동 기 응답으로 전송하겠다고 판단한 경우는 아래와 같이 상태를 패키지 #3 에 실어 보낸다. 아래의 예는 SC0M0(Software Component Management Object)의 예로써, SC00 의 정의에 따르면 , Data 엘리먼트의 1200 은 명령이 잘 완료되었음 (Co瞧 and com leted successfully)을 의미한다.
[127] <Status>
<MsgRef>K/MsgRef>
<CmdRef>3</CmdRef>
<Cmd>Exec</Cmd>
<Data>1200</Data> <!— SCOMO. Result Code — >
<Item>
<Source>
<LocURI>. /SCM/Inventory/Deployed/Component789/0perat ions/Act iv ate</LoclIRI> </Source></Item>
</Status>
[128] 상기 DM 클라이언트가 비동기 웅답을 전송하겠다고 결정한 경우, 아래와 같이 상태를 패키지 #3에 실어 보낸다. Data 엘리먼트의 202은 실행 명령에 대해 처리 중에 있음 (Accepted for processing)을 의미한다.
[129] <Status>
<CmdID>K/CmdID>
<MsgRef>K/MsgRef>
<CmdRef>3</CmdRef>
<Cmd>Exec</Cmd>
<Data>202</Data>
</Status>
[130] 이후, 상기 클라이언트는 상기 실행 명령의 수행이 완료된 이후, 일반적 알림을 통해 실행 결과를 전송한다.
[131] <Alert>
<CmdID>2</CmdID>
<Data>1226</Data> <!— Generic Alert ―〉
<Correlator>correlatorl</Correlator>
<I t emxSour ce><LocURI> . I SCM/ I nvent ory/De 1 oyed/Component 789/Operat i ons/Ac t i v ate</LocURI></Source>
<Meta>
<Type xmlns= "syncml : met inf" >
urn: oma: at : scomo :1.0: Operat i onCom lete
</Type>
<Format xmlns= "syncml: met inf " >xml</Format>
<Mark xmlns= "syncml: met inf" >warning</Mark>
</Meta>
<Data> Result Cod
</Data>
</Item>
</Alert>
[132] 다음의 표는 상기 SCOMO 의 일반적 알림 예의 ResLiltCode 엘리먼트의 예시 한다.
[133] 【표 2】
[134] 앞서 설명한 일반적 알림을 통한 기존의 비동기 응답의 경우 몇몇 문제점 이 존재한다. 일 예로. 명령을 전송하는 DM 서버는 클라이언트 (단말)로부터 안정 적으로 상기 명령에 대한 웅답을 수신하는 것이 바람직하다. 그러나, 기존에는 DM
클라이언트가 동기 또는 비동기 웅답을 선택할 수 있고, 따라서 DM서버 입장에서 는 명령에 대한 응답이 언제 수신될지 예측이 불가능하여, DM 클라이언트로부터 웅답을 받지 못하면 새로운 패키지를 전송하지 못하는 특성 상 오래 걸리는 명령 에 대해 동기 웅답으로 DM 클라이언트가 결정 시 필요한 명령을 DM 클라이언트로 바로 전달하지 못하는 문제가 발생한다.
[135] 또한, 서버가 명령을 생성하고 전송하지만, 상기 명령의 수행은 클라이언 트에서 이루어진다. 따라서, 서버는 상기 명령의 수행이 얼마나 오래 걸릴지 예측 이 불가능하며, 이로 인해 명령과 함께 코릴레이터를 전송 (또는 명령에 코릴레이 터를 포함시켜 전송)하지만 모든 명령에 대해 상기 코릴레이터를 생성하여 전송하 기에는 코릴레이터 생성 및 전송 부하가 발생한다.
[136] 본 명세서는 동기 /비동기 응답 모드를 선택하기 위한 명확한 기준을 제안 하고자 한다. 좀더 상세하게는, 본 발명은 동기 /비동기 웅답 모드의 선택 기준으 로서 타임아웃 (timeout)이 지시하는 시간 길이를 이용함을 제안한다.
[137] 본 발명의 일 실시예에 따라, 서버는 단말 (또는 클라이언트)로 명령을 전 송할 때, 상기 동기 /비동기 웅답 모드를 결정 또는 선택할 수 있는 타임아웃 파라 미터를 함께 전송할 수 있다.
[138] 본 발명의 다른 일 실시예에 따라, 서버와 단말은 사전에 타임아웃을 공유 할 수 있으며, 본 명세서에서 이를 디폴트 (default) 타임아웃으로 지칭하도록 한 다.
[139] 본 발명의 다른 일 실시예에 따라, 상기 디폴트 타임아웃을 이용하는 일 예로써, 상기 서버가 상기 단말로 특정 또는 명시적인 타임아웃 없이 명령을 전송 하는 경우, 상기 단말은 상기 디폴트 타임아웃을 이용하여 상기 동기 /비동기 웅답 모드를 결정해야하는 것으로 인식할 수 있다.
[140] 본 발명의 다른 일 실시예에 따라, 상기 디폴트 타임아웃을 이용하는 일 예로써, 상기 서버기- 전송하는 타임아웃 파라미터 값이 특정 값 (예컨대, 임의의 음의 정수)인 경우, 상기 단말은 상기 디폴트 타임아웃을 이용하여 상기 동기 /비 동기 웅답 모드를 결정해야하는 것으로 인식할 수 있다.
[141] 도 2 내지 도 4 는 본 발명의 일 실시예에 따른 서버의 명령 전송과 그에 대웅한 단말의 웅답의 예를 도시한다.
[142] 도 2 는 비동기 응답 모드가 허용되지 않는 예를 도시한다. 이 경우, 단말 은 동기 웅답 모드만을 통해 서버의 명령에 대한 웅답을 수행해야 한다. 서버 (1) 는 단말 (2)로 명령을 전송할 수 있다 (S21). 상기 단말은 상기 명령을 수행하고 (S22), 상기 단말은 상기 명령의 수행 결과를 포함하는 명령 웅답을 상기 서버로 전송할 수 있다 (S23). 한편, 이 경우에는 앞서 설명한 것처럼, 상기 명령의 수행 하는데 소요되는 시간이 길다면, 상기 서버가 자신이 전송한 명령에 대한 웅답을 상기 단말로부터 수신할 때까지도 시간이 많이 소요되며 따라서 상기 서버는 다른 명령을 상기 단말로 전송하지 못한 채 상기 응답만을 기다릴 수 밖에 없다.
[143] 도 3 및 도 4 는 비동기 /동기 웅답 모드가 허용되는 경우 그리고 상기 비 동기 /동기 웅답 모드의 결정을 위한 파라미터, 즉 앞서 언급한 타임아웃 파라미터 가 명시적으로 상기 서버로부터 상기 단말로 전송되지 않는 경우의 예이다. 따라 서, 서버 (1)와 단말 (2)은 사전에 약속된 디폴트 타임아웃을 이용하여 상기 비동기 /동기 웅답 모드를 결정할 수 있다. 도 3 은 상기 단말이 상기 디폴트 타임아웃이 지시하는 시간 내에 상기 서버로부터의 명령의 수행을 완료한 경우이고, 도 4 는 그렇지 않은 경우의 예를 도시한다.
[144] 도 3 을 먼저 설명하도록 한다. 서버 (1)는 단말 (2)로 명령을 전송할 수 있 다 (S31). 상기 명령이 수신되면, 상기 단말은 명시적인 타임아웃 파라미터가 함께 수신되지 않음을 확인할 수 있고, 이에 따라 상기 단말은 디폴트 타임아웃이 지시 하는 시간이 상기 동기 /비동기 웅답 모드를 결정하기 위한 기준임을 확인할 수 있 다. 그러고나서, 상기 단말은 상기 명령을 수행할 수 있다 (S32). 상기 명령의 수 행이 상기 디폴트 타임아웃이 지시하는 시간 내에 완료되면. 상기 단말은 상기 명 령의 수행 결과를 포함하는 명령 응답을 상기 서버로 전송할 수 있다 (S33).
[145] 도 4를 설명하면, 도 4 의 S41 및 S42는 도 3 의 S31 및 S32 와 동일하므 로 설명의'중복을 피하기 위해 생략하도록 한다ᅳ 상기 단말은 상기 명령을 수행하 면서, 동시에 타이머를 동작시킬 수 있다. 이 타이머는 상기 디폴트 타임아옷이 지시하는 시간이 초과되었는지 여부를 판단하기 위한 것으로, 상기 단말은 상기 디폴트 타임아웃이 지시하는 시간이 초과되었음에도 불구하고, 상기 명령의 수행 이 완료되지 않았으면, 상기 서버로 코릴레이터를 '포함하는 명령 웅답을 전송할 수 있다 (S43). 상기 코릴레이터는 상기 단말에 의해 생성될 수 있다.
[146] S43 단계에서 전송되는 명령 웅답은 일종의 수신 확인 웅답의 기능을 수행 할 수 있다. 앞서 설명한 것처럼, 상기 서버가 상기 단말로부터 어떠한 웅답도 수 신하지 못한다면, 상기 서버는 새로운 명령을 상기 단말로 전송할 수 없고, 이는 상기 서버와 상기 단말의 데이터 처리 효율성을 떨어뜨린다. 따라서, 상기 디폴트 타임 아웃이 지시하는 시간이 초과되었음에도 상기 명령의 수행이 완료되지 못한 경우엔, 상기 단말은 상기 코릴레이터를 포함한 명령 응답을 상기 서버로 전송하 도록 함이 바람직하다.
[147] 그리고나서, 상기 단말은 계속하여 상기 명령을 수행할 수 있다 (S44). 상 기 명령의 수행이 완료되면, 상기 단말은 상기 서버로 상기 코릴레이터 및 상기 명령의 수행 결과를 포함한 명령 웅답을 상기 서버로 전송할 수 있다 (S45).
[148] 앞서 설명한 도 2 내지 도 4 의 예에서 상기 서버는 타임아웃 파라미터를 상기 단말로 전송하지 않았으나, 상기 서버가 상기 명령을 상기 단말로 전송함에 있어서 상기 타임아웃 파라미터를 명시적으로 전송하는 실시예도 가능할 것이다.
[149] 한편, 앞서 설명한 도 2 내지 도 4 의 예에서는 서버는 코릴레이터를 명령 과 함께 단말로 전송하지 않았다. 그러나, 상기 서버가 코릴레이터를 상기 명령과 함께 전송할 수도 있을 것이다. 따라서, 본 발명의 실시예들을 상기 코릴레이터가 상기 명령과 함깨 단말로 전송되었는지 여부에 따라 설명하도록 한다.
[150] 제 1예: 서버로부터 코릴레이터가 수신되지 않은 경우
[151] 이는 도 2 내지 4를 참조하여 설명한 예와 같으며, 특히 도 4에서처럼 코 릴레이터를 상기 단말이 생성하여 상기 명령에 대한 명령 웅답에 포함시켜 상기 서버로 전송할 수 있다. 한편, 상기 서버로부터의 명령이 단일 (single) 명령이 아 니라 명령의 집합인 패키지인 경우에 대해 설명하도록 한다.
[152] 상기 서버로부터 상기 단말로 상기 패키지가 전송되는 경우, 타임아웃이 지시하는 시간 내에 상기 패키지 내 모든 명령들이 수행 완료되는 경우와 그렇지 않은 경우로 나누어 설명하도록 한다. 도 5 는 상기 타임아웃이 지시하는 시간 내 에 상기 패키지 내 모든 명령들이 수행 완료되는 경우의 예이고, 도 6 은 그렇지 않은 경우의 예이다.
[153] 서버 (1)는 단말 (2)로 패키지 및 타임아웃 파라미터를 전송할 수 있다 (S51) 이에 , 상기 단말은 상기 패키지 내 명령들을 수행할 수 있다 (S52). 선택적으로 또 는 추가적으로, 상기 단말은 타이머를 개시할 수 있다. 상기 타이머는 상기 타임
아웃이 지시하는 시간이 초과했는지 여부를 판단하는데 사용될 수 있다. 상기 명 령의 수행이 완료되었음에도 불구하고 , 상기 타임아웃 파라미터가 지시하는 시간 은 초과하지 않았으므로, 상기 단말은 상기 명령의 처리 결과를 포함하는 명령 웅 답을 상기 서버로 전송할 수 있다 (S53).
[154] 도 6을 참조하면, S61 및 S62는 도 5의 S51 및 S52와 동일하다. 설명의 중복을 피하기 위해 그에 대한 설명은 생략하도록 한다. 상기 타임아웃이 지시하 는 시간이 초과했음에도 불구하고, 상기 패키지 내 일부 명령들은 수행이 완료되 었고 나머지 명령들은 수행이 완료되지 않은 경우에 대한 예이다. 따라서, 상기 단말은 상 7! 타임아웃이 지시하는 시간이 만료된 시점에서, 수행이 완료된 명령들 에 대한 결과와 수행이 완료되지 않은 명령들 각각에 대한 코릴레이터를 생성하여 상기 서버로 전송할 수 있다 (S63). 상기 코릴레이터는 추후에 상기 수행이 완료되 지 않은 명령들에 대한 결과를 상기 서버로 전송할 때 또다시 전송되어, 상기 서 버가 해당 명령에 대한 결과임을 알 수 있도록 한다.
[155] 그리고 나서, 상기 단말은 상기 수행이 완료되지 않은 .명령들 (이하 간단히, "나머지 명령들" 이라 칭함)을 수행을 계속할 수 있다 (S64). 상기 나머지 명령들 증 수행이 완료된 명령 (들)에 대해서, 상기 단말은 해딩ᅵ 명령 각각의 수행 결과와 각각의 코릴레이터를 상기 서버로 전송할 수 있다 (S65). 해당 명령 각각의 수행 결과와 각각의 코릴레이터는 하나의 관리 세션에 속한 메시지, 몇몇의 관리 세션 에 속한 메시지 또는 모두 다른 관리 세션에 속한 메시지로 전송 가능하다.
[156] 즉, 도 6 과 관련된 실시예에서는, 상기 단말은 상기 패키지 내의 명령들 중 상기 타임아웃이 지시하는 시간 내에 수행이 완료된 명령들에 대해서는 동기식 웅답을 상기 서버로 전송하몌 상기 타임아웃이 지시하는 시간 내에 수행이 완료 되지 않은 명령들에 대해서는 비동기식 웅답을 상기 서버로 전송할 수 있다.
[157] 제 2예: 서버로부터 코릴레이터가 수신되는 경우
[158] 서버는 각 명령에 대한 코릴레이터를 지정하여 단말로 전송할 수 있다. 그 로 인해, 상기 단말은 명령과 함께 전송되는 타임아웃 파라미터가 지시하는 기간 내에 수행이 완료되지 않은 명령들에 대한 비동기식 응답에 상기 코릴레이터를 포 함시켜 상기 서버로 전송할 수 있다. 물론, 상기 타임아웃 파라미터가 지시하는 기간 내에 수행이 완료된 명령들에 대해서는 그를 위한 응답으로서 상기 코릴레이 터를 전송하지 않는다.
[159] 도 7 은 앞서 설명한 본 발명의 실시예들을 좀더 상세하게 설명하기 위한 순서도이다.
[160] S701: 단말은 서버로부터 명령 (들)을 포함한 패키지를 수신할 수 있다. 상 기 패키지는 명령 (들)의 모음 집단이다. 여기서, 상기 패키지는 하나의 명령을 포 함하는 경우도 포함되는 것으로 가정하도록 한다.
[161] S702: 상기 단말은 상기 명령에 대한 웅답을 동기 응답 모드로 수행할지 비동기 웅답 모드로 수행할지를 결정할 수 있다. 좀더 상세하게는, 도 2 의 예처 럼, 상기 명령에 대한 응답으로서 비동기 응답 모드가 허용되지 않는지 여부를 판 단할 수 있다.
[162] 한편, 비동기 웅답 모드가 허용되면, 상기 단말은 비동기 웅답 모드 또는 동기 응답 모드를 판별하는데 사용할 타임아웃을 결정할 수 있다. 즉, 앞서 설명 한 예처럼, 상기 서버로부터 명시적인 타임아웃 파라미터가 수신되면, 상기 단말 은 상기 타임아웃 파라미터가 지정하는 시간 정보를 사용할 수 있다.
[163] 한편, 어떠한 타임아웃을 사용할지 또한 어떤 웅답 모드를 사용할지는 시 스템 설정에 따라 가변적일 수 있다 . 좀더 구체적으로 설명하면 , 대표적으로 아래 와 같은 두 가지 경우가 있을 수 있다.
[164] 【표 3】
[165] S703: 상기 단말은 앞서 설명한 방식대로 어떠한 타임아웃을 응답 모드 판 별을 위한 시간 (즉, 판별 시간)으로 사용할지 결정할 수 있다. 위의 예에 따르면, 상기 단말은 경우에 따라 디폴트 타임아웃 또는 서버로부터 수신된 타임아웃을 상 기 판별에 사용할 수 있다.
[166] 또한, 패키지 내에 복수의 명령들이 포함되어 있다면, 각 명령들에 대하여 타임아웃이 개별적으로 설정될 수도 있다.
[167] S704: 상기 단말은 상기 판별 시간 까지 상기 패키지 내 명령 (들)을 수행 할 수 있다. 상기 단말은 상기 패키지 내 명령 (들)을 순차적으로 수행할 수 있다.
따라서, 상기 판별 시간 동안 하나의 명령을 수행한 후, 상기 명령의 수행이 완료 되면 그 다음 명령을 수행할 수 있다.
[168] S705: 상기 단말은, 비동기 웅답 모드가 허용되지 않는 경우에, 상기 패키 지 내 명령 (들)을 수행할 수 있다. 상기 서버가 무조건 동기 웅답을 통해 명령의 결과를 얻고 싶을 경우, 즉 비동기 웅답을 사용하지 않도록 설정 시 상기 단말은 패키지 내 명령 (들)의 수행을 모든 명령 (들)의 수행이 완료될 때까지 계속할 수 있다.
[169] S706: 상기 단말은 상기 판별 시간 내 해딩- 명령의 수행이 완료되었는지 여부를 판단할 수 있다.
[170] S707: 상기 단말은 상기 판별 시간 내 해당 명령의 수행이 완료되지 않았 다면, 즉 수행이 완료되지 않은 명령이 있는 경우, 그에 대한 코릴레이터를 생성 할 수 있다.
[171] 상기 코릴레이터는 추후 상기 수행이 완료되지 않은 명령에 대한 수행 결 과를 비동기 웅답으로 전송할 경우, 이를 수신하는 서버가 상기 명령의 수행 결과 가 자신이 전송한 어떤 명령에 대한 결과인지 알 수 있도록 한다. 동기 웅답의 경 우, 세션 안에서의 명령의 식별자 또는 시퀀셜 (sequent i'al) 웅답을 통해 어떤 명 령에 대한 결과인지를 알 수 있는데 반해, 비동기 웅답의 경우에는 명령을 받았던 세션이 종료되었을 수도 있으며, 이전 세션이 유지되었다고 하더라도 시퀀셜 웅답 의 경우에는 어느 명령에 대한 결과인지 알 수가 없다. 이에 동기 웅답에 코릴레 이터를 포함시키고 추후 비동기 웅답 시 동일한 코릴레이터를 포함시킴으로써 비 동기 응답이 어떤 명령에 대한 결과인지 상기 서버기- 알 수 있게 하는 역할을 한 다. 따라서, 상기 코텔레이터는 상기 동기 웅답과 상기 비동기 웅답이 전송되는 시점 사이 (또는 상기 서버에서 수신되는 시점 사이)에서 유효한, 각 단말 (클라이 언트)에 고유한 값일 수 있다. ,
[172] S708: 상기 판별 시간 내 해당 명령의 수행이 완료된 경우, 상기 단말은 동기 응답에 상기 명령의 수행 결과를 포함시킬 수 있다.
[173] S709: 상기 판별 시간 내 해당 명령의 수행이 완료되지 않은 경우, 상기 단말은 수행이 완료된 일부 명령들에 대한 결과를 포함한 상기 동기 웅답에 상기 코릴레이터를 포함시킬 수 있다.
[174] 비동기 웅답을 통해 명령 수행 결과를 전송하도록 결정되더라도, 상기 단 말은 상기 서버에게 상기 타임아웃 시간 내에 명령 수행이 완료되지 않았기 때문 에 비동기 응답을 하게 되었음을 동기 웅답을 통해 알리는 것이 필요하다. 해당 동기 웅답에는 코릴레이터가 포함되어야 하며, 명령이 아직 수행 중에 있음을 알 릴 수 있다.
[175] S710: 상기 단말은 S701 에서 수신된 패키지 내에 수행이 시작 (또는 개시) 되지 않은 명령 (들)이 존재하는지 여부를 판단할 수 있다.
[176] 앞서 설명한 것처럼, 상기 타임아웃 파라미터는 패키지 별 (즉, 패키지-레 벨)로 설정될 수 있으나, 상기 패키지 내 명령 별 (즉, 명령-레벨)로 설정될 수도 있다. 상기 타임아웃 파라미터가 상기 패키지 내 명령 별로 설정되는 경우, 위에 서 설명한 S702 내지 S709 은 상기 패키지 내 각 명령에 대하여 수행될 수 있다. 즉, 웅답 모드 결정을 위한 판별시간은 각 명령에 대하여 설정된 타임아웃 파라미 터에 의해 결정되며, 각 타임아웃 파라미터에 해당하는 시간 (이하, 간단히 "판별 시간" 이라 함) 내에 해당 명령의 수행이 완료되었는지를 판단할 수 있다. 특정 명령에 대한 판별 시간 내에 상기 특정 명령의 수행이 완료되면, 상기 특정 명령 에 대한 결과는 동기 웅답에 축적되며, 특정 명령에 '대한 판별 시간 내에 상기 특정 명령의 수행이 완료되지 않으면, 상기 동기 웅답에 상기 수행이 완료되지 않 은 명령에 대한 웅답 (예컨대, 코릴레이터)을 포함시킬 수 있다.
[177] 그리고 나서, 상기 패키지 내 수행이 시작되지 않은 명령이 없다면. S711 로 진행되어, 상기 단말은 복수의 명령에 대한 동기 응답과 그에 포함시킨 상기 코릴레이터를 하나의 웅답으로 서버로 전송한다.
[178] 상기 패키지 내 수행이 시작되지 않은 명령이 있다면, 상기 단말은 S702 로 돌아가 S702 내지 S709를 반복한다 .
[179] 상기 단말은 수행이 완료되지 않은 명령들에 대하여 수행을 계속하여 그에 대한 수행 결과를 비동기 웅답으로 서버로 전송할 수 있다.
[180] 도 8 은 본 발명의 실시예 (들)을 수행하도록 구성된 장치의 블록도를 도시 한다ᅳ 전송장치 (10) 및 수신장치 (20)는 정보 및 /또는 데이터 , 신호, 메시지 등을 나르는 무선 신호를 전송 또는 수신할 수 있는 RF(Radio Frequency) 유닛 (13, 23) 과, 무선통신 시스템 내 통신과 관련된 각종 정보를 저장하는 메모리 (12, 22), 상 기 RF 유닛 (13, 23) 및 메모리 (12, 22)둥의 구성요소와 동작적으로 연결되고, 상
기 구성요소를 제어하여 해당 장치가 전술한 본 발명의 실시예들 중 적어도 하나 를 수행하도록 메모리 (12, 22) 및 /또는 RF 유닛 (13, 23)을 제어하도록 구성된 프로 세서 (11, 21)를 각각 포함한다.
[181] 메모리 (12, 22)는 프로세서 (11, 21)의 처리 및 제어를 위한 프로그램을 저 장할 수 있고, 입 /출력되는 정보를 임시 저장할 수 있다. 메모리 (12, 22)가 버퍼 로서 활용될 수 있다.
[182] 프로세서 (11, 21)는 통상적으로 전송장치 또는 수신장치 내 각종 모들의 전반적인 동작을 제어한다. 특히, 프로세서 (11, 21)는 본 발명을 수행하기 위한 각종 제어 기능을 수행할 수 있다. 프로세서 (11, 21)는 컨트롤러 (controller), 마 이크로 컨트롤러 (microcontroller), 마이크로 프로세서 (microprocessor ), 마이크 로 컴퓨터 (microcomputer) 등으로도 불릴 수 있다-. 프로세서 (11, 21)는 하드웨어 (hardware) 또는 펌웨어 (fir隱 are), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명을 구현하는 경우에는, 본 발명을 수행하도 록 구성된 ASICs(appl icat ion specific integrated circuits) 또는 DSPs(digi tal signal processors) , DSPDs(digi tal signal processing devices) , PLDs( programmable logic devices) , FPGAs (field programmable gate arrays) 등이 프로세서 (11, 21)에 구비될 수 있다. 한편, 펌웨어나 소프트웨어를 이용하여 본 발명을 구현하는 경우에는 본 발명의 기능 또는 동작들을 수행하는 모들, 절차 또 는 함수 등을 포함하도록 펌웨어나 소프트웨어가 구성될 수 있으며, 본 발명을 수 행할 수 있도록 구성된 펌웨어 또는 소프트웨어는 프로세서 (11, 21) 내에 구비되 거나 메모리 (12, 22)에 저장되어 프로세서 (11, 21)에 의해 구동될 수 있다.
[183] 본 발명의 실시예들에 있어서, 단말 또는 장치 그리고 서버, 또는 DMC 및 DMS는 각각 전송장치 (10) 또는 수신장치 (20)로 동작할 수 있다.
[184] 이와 같은, 수신장치 또는 전송장치로 단말 또는 장치 그리고 서버, 또는 DMC 및 DMS 의 구체적인 구성은, 도면과 관련하여 전술한 본 발명의 다양한 실시 예에서 설명한 사항들이 독립적으로 적용되거나 또는 둘 이상의 실시예가 동시에 적용되도록 구현될 수 있다.
[185] 상술한 바와 같이 개시된 본 발명의 바람직한 실시예들에 대한 상세한 설 명은 당업자가 본 발명을 구현하고 실시할 수 있도록 제공되었다. 상기에서는 본 발명의 바람직한 실시예들을 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당
업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어 나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다. 따라서, 본 발명은 여기에 나타난 실시형태들에 제한되려는 것이 아니라, 여기서 개시된 원리들 및 신규한 특징들과 일치하는 최광의 범위를 부여 하려는 것이다.
【산업상 이용가능성】
[186] 본 발명은 무선 이동 통신 시스템의 단말기. 기지국, 서버 또는 기타 다 른 장비에 사용될 수 있다.
Claims
【청구의 범위】
【청구항 11
무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며.
상기 서버로부터 명령을 수신하는 단계; 및
타임아옷이 만료할 때까지 상기 명령을 수행하는 단계를 포함하고, 상기 타임아웃이 만료할 때까지 상기 명령의 수행이 완료되지 않으면, 상 기 방법은:
상기 명령에 대한 식별자를 포함하는 제 1웅답을 상기 서버로 전송하 는 단계; 및
상기 명령의 수행이 완료된 이후, 상기 명령에 대한 결과 및 상기 식 별자를 포함하는 제 2 웅답을 전송하는 단계를 포함하는 것을 특징으로 하 는. 웅답 전송 방법 .
【청구항 2】
제 1항에 있어서,
상기 타임아웃은 미리 설정된 값이거나, 상기 서버로부터 전송된 값인 것 을 특징으로 하는, 웅답 전송 방법 .
【청구항 3】
제 1항에 있어서,
상기 서버로부터 명시적으로 타임아웃이 수신되지 않는 경우 , 상기 타임 아웃은 미리 설정된 값으로 결정되는 것을 특징으로 하는, 웅답 전송 방법.
【청구항 4】
제 1 항에 있어서, 상기 서버로부터 명시적으로 특정 값을 갖는 타임아웃 이 수신되는 경우, 상기 타임아웃은 미리 설정된 값으로 결정되는 것을 특징으 로 하는, 웅답 전송 방법.
【청구항 5】
제 1 항에 있어서, 상기 명령에 대한 식별자를 생성하는 단계를 더 포함하 는 것을 특징으로 하는, 웅답 전송 방법.
【청구항 6】
제 1항에 있어서, 상기 명령에 대한 식별자는 상기 제 1웅답과 상기 제 2 웅답의 전송 시점 사이에서 유효한 값인 것을 특징으로 하는, 웅답 전송 방법.
【청구항 7】
무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며,
상기 서버로부터 복수의 명령들을 포함하는 명령 패키지를 수신하는 단 계; 및
타임아웃이 만료할 때까지 상기 명령 패키지 내 명령들을 수행하는 단계 를 포함하고,
상기 타임아옷이 만료할 때까지 상기 명령 패키지 내 모든 명령들의 수행 이 완료되지 않으면, 상기 방법은:
상기 명령 패키지 내 명령들 중 수행이 완료된 명령 (들)에 대한 결과 및 수행이 완료되지 않은 나머지 명령 (들)에 대한 식별자를 포함하는 제 1 웅답을 상기 서버로 전송하는 단계; 및
상기 나머지 명령 (들)의 수행이 완료된 이후, 상기 나머지 명령 (들) 에 대한 결과 및 상기 식별자를 포함하는 제 2 응답을 전송하는 단계를 포 함하는 것을 특징으로 하는, 웅답 전송 방법 .
【청구항 8]
제 7 항에―있어서, 상기 타임아웃은 미리 설정된 값이거나, 상기 서버로부 터 전송된 값인 것을 특징으로 하는, 웅답 전송 방법 .
【청구항 9】
제 7항에 있어서 ,
상기 서버로부터 명시적으로 타임아웃이 수신되지 않는 경우, 상기 타임 아웃은 미리 설정된 값으로 결정되는 것을 특징으로 하는, 웅답 전송 방법.
【청구항 10】
제 7 항에 있어서, 상기ᅵ서버로부터 명시적으로 특정 값을 갖는 타임아웃 이 수신되는 경우, 상기 타임아웃은 미리 설정된 값으로 결정되는 것을 특징으 로 하는. 응답 전송 방법 .
【청구항 111
제 7 항에 있어서, 상기 명령에 대한 식별자를 생성하는 단계를 더 포함하 는 것을 특징으로 하는, 웅답 전송 방법.
【청구항 12】
제 7항에 있어서, 상기 명령에 대한 식별자는 상기 제 1웅답과 상기 제 2 웅답의 전송 시점 사이에서 유효한 값인 것을 특징으로 하는. 응답 전송 방법.
【청구항 13】
무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하기 위한 방법에 있어서, 상기 방법은 단말에 의해 수행되며,
상기 서버로부터 복수의 명령들을 포함하는 명령 패키지를 수신하는 단 계; 및
상기 복수의 명령들 각각에 대하여 순차적으로,
타임아웃이 만료할 때까지 상기 명령 패키지 내 명령을 수행하고, 상 기 타임아웃의 만료 전에 명령이 수행 완료되면, 상기 명령에 대한 결과를 제 1웅답에 포함시키고; 상기 타임아웃의 만료 전에 명령이 수행 완료되지 않으면, 상기 명령에 대한 식별자를 상기 제 1 웅답에 포함시키는 단계를 포함하고,
상기 명령 패키지 내 더 이상 수행을 개시할 명령이 없으면, 상기 웅답을 서버로 전송하는 단계; 및
상기 수행 완료되지 않은 나머지 명령 (들)의 수행이 완료된 이후, 상기 나머지 명령 (들)에 대한 결과 및 상기 나머지 명령 (들)에 대한 식별자를 포함하 는 제 2웅답을 전송하는 단계를 포함하는 것을 특징으로 하는, 웅답 전송 방법 .
【청구항 14】
무선 통신 시스템에서 서버로부터의 명령에 대한 응답을 전송하도록 구성 된 단말에 있어서,
무선 주파수 (radio frequency, F) 유닛; 및
상기 F 유닛을 제어하도록 구성된 프로세서를 포함하되,
상기 프로세서는 상기 서버로부터 명령을 수신하고, 타임아웃이 만료할 때까지 상기 명령을 수행하도록 구성되며,
상기 타임아웃이 만료할 때까지 상기 명령의 수행이 완료되지 않으면, 상 기 프로세서는:
상기 명령에 대한 식별자를 포함하는 제 1웅답올 상기 서버로 전송하 고, 상기 명령의 수행이 완료된 이후, 상기 명령에 대한 결과 및 상기 식 별자를 포함하는 제 2 옹답을 전송하도록 구성되는 것을 특징으로 하는 단 말
【청구항 15】
무선 통신 시스템에서 서버로부터의 명령에 대한 옹답을 전송하도록 구성 된 단말에 있어서,
무선 주파수 (radio frequency, RF) 유닛; 및
상기 RF 유닛을 제어하도록 구성된 프로세서를 포함하되.
상기 프로세서는 상기 서버로부터 복수의 명령들을 포함하는 명령 패키지 를 수신하고. 타임아웃이 만료할 때까지 상기 명령 패키지 내 명령들을 수행하 도록 구성되고,
상기 타임아웃이 만료할 때까지 상기 명령 패키지 내 모든 명령들의 수행 이 완료되지 않으면, 상기 프로세서는:
상기 명령 패키지 내 명령들 중 수행이 완료된 명령 (들)에 대한 결과 및 수행이 완료되지 않은 나머지 명령 (들)에 대한 식별자를 포함하는 제 1 웅답을 상기 서버로 전송하고, 상기 나머지 명령 (들)의 수행이 완료된 이 후, 상기 나머지 명령 (들)에 대한 결과 및 상기 식별자를 포함하는 제 2 웅답을 전송하도록 구성되는 것을 특징으로 하는 단말.
【청구항 16】
무선 통신 시스템에서 서버로부터의 명령에 대한 웅답을 전송하도톡 구성 된 단말에 있어서,
무선 주파수 (radio frequency, RF) 유닛; 및
상기 RF 유닛을 제어하도록 구성된 프로세서를 포함하되,
상기 프로세서는 상기 서버로부터 복수의 명령들을 포함하는 명령 패키지 를 수신하고,
상기 복수의 명령들 각각에 대하여 순차적으로,
타임아웃이 만료할 때까지 상기 명령 패키지 내 명령을 수행하고, 상 기 타임아웃의 만료 전에 명령이 수행 완료되면, 상기 명령에 대한 결과를
응답에 포함시키고; 상기 타임아웃의 만료 전에 명령이 수행 완료되지 않 으면, 상기 명령에 대한 식별자를 상기 웅답에 포함시키고,
상기 명령 패키지 내 더 이상 수행을 개시할 명령이 없으면, 상기 웅답을 서버로 전송하도록 구성되는 것을 특징으로 하는 단말.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/416,517 US9762465B2 (en) | 2012-08-20 | 2013-08-20 | Method and apparatus for transmitting a response to a command in wireless communication system |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201261691239P | 2012-08-20 | 2012-08-20 | |
US61/691,239 | 2012-08-20 | ||
US201261693334P | 2012-08-27 | 2012-08-27 | |
US61/693,334 | 2012-08-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2014030905A1 true WO2014030905A1 (ko) | 2014-02-27 |
Family
ID=50150154
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2013/007455 WO2014030905A1 (ko) | 2012-08-20 | 2013-08-20 | 무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9762465B2 (ko) |
WO (1) | WO2014030905A1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112019492B (zh) * | 2019-05-31 | 2021-06-22 | 华为技术有限公司 | 访问控制方法、装置及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070083647A1 (en) * | 2005-10-07 | 2007-04-12 | Simon Frost | Systems and methods for response monitoring |
WO2009056148A2 (en) * | 2007-10-29 | 2009-05-07 | Fromdistance As | Mobile device management system |
KR20090086447A (ko) * | 2007-07-24 | 2009-08-12 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 메시지를 처리하는 방법, 시스템, 서버 및 단말기 |
US20100199333A1 (en) * | 2007-07-19 | 2010-08-05 | Ji-Eun Keum | System and method for providing device management service to electronic device having no broadband communication module |
KR20110039860A (ko) * | 2009-10-12 | 2011-04-20 | 주식회사 케이티 | 문자 메시지를 이용한 dms 서비스 방법 및 시스템 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6148323A (en) * | 1995-12-29 | 2000-11-14 | Hewlett-Packard Company | System and method for managing the execution of system management |
US6088740A (en) * | 1997-08-05 | 2000-07-11 | Adaptec, Inc. | Command queuing system for a hardware accelerated command interpreter engine |
US7058704B1 (en) * | 1998-12-01 | 2006-06-06 | Network Appliance, Inc.. | Method and apparatus for implementing a service-level agreement |
AU2001261084A1 (en) * | 2000-04-27 | 2001-11-07 | Brio Technology, Inc. | Method and apparatus for processing jobs on an enterprise-wide computer system |
US7797368B1 (en) * | 2000-11-17 | 2010-09-14 | Intel Corporation | Managing a network of consumer-use computing devices |
US7379990B2 (en) * | 2002-08-12 | 2008-05-27 | Tsao Sheng Ted Tai | Distributed virtual SAN |
US7493617B2 (en) * | 2004-03-05 | 2009-02-17 | International Business Machines Corporation | Method of maintaining task sequence within a task domain across error recovery |
US20060095582A1 (en) * | 2004-10-29 | 2006-05-04 | Narasimhan Nitya | Device and method for transferring apportioned data in a mobile ad hoc network |
US8171475B2 (en) * | 2007-08-29 | 2012-05-01 | International Business Machines Corporation | Intelligent retry method using remote shell |
US20090222813A1 (en) * | 2008-02-29 | 2009-09-03 | Dell Products L. P. | System and Method for Automated Configuration of an Information Handling System |
US20100131916A1 (en) * | 2008-11-21 | 2010-05-27 | Uta Prigge | Software for modeling business tasks |
US9336057B2 (en) * | 2012-12-21 | 2016-05-10 | Microsoft Technology Licensing, Llc | Assigning jobs to heterogeneous processing modules |
US9323546B2 (en) * | 2014-03-31 | 2016-04-26 | Ford Global Technologies, Llc | Targeted vehicle remote feature updates |
-
2013
- 2013-08-20 US US14/416,517 patent/US9762465B2/en active Active
- 2013-08-20 WO PCT/KR2013/007455 patent/WO2014030905A1/ko active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070083647A1 (en) * | 2005-10-07 | 2007-04-12 | Simon Frost | Systems and methods for response monitoring |
US20100199333A1 (en) * | 2007-07-19 | 2010-08-05 | Ji-Eun Keum | System and method for providing device management service to electronic device having no broadband communication module |
KR20090086447A (ko) * | 2007-07-24 | 2009-08-12 | 후아웨이 테크놀러지 컴퍼니 리미티드 | 메시지를 처리하는 방법, 시스템, 서버 및 단말기 |
WO2009056148A2 (en) * | 2007-10-29 | 2009-05-07 | Fromdistance As | Mobile device management system |
KR20110039860A (ko) * | 2009-10-12 | 2011-04-20 | 주식회사 케이티 | 문자 메시지를 이용한 dms 서비스 방법 및 시스템 |
Also Published As
Publication number | Publication date |
---|---|
US20150188790A1 (en) | 2015-07-02 |
US9762465B2 (en) | 2017-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9900727B2 (en) | Method and apparatus for controlling access in wireless communication system | |
EP2957085B1 (en) | Service layer resource propagation across domains | |
US10506432B2 (en) | Method and apparatus for authenticating access authority for specific resource in wireless communication system | |
JP5981662B2 (ja) | 無線通信システムにおいて接近権限認証のための方法及び装置 | |
KR102312994B1 (ko) | 홈 네트워크 서비스를 제공하기 위한 장치 및 그 방법 | |
US11381656B2 (en) | Service layer message templates in a communications network | |
WO2016130727A1 (en) | Configuration of wireless devices | |
US20230421663A1 (en) | Efficient resource representation exchange between service layers | |
WO2012113329A1 (zh) | 一种设备管理方法及装置 | |
US9438603B2 (en) | Method for managing access right of terminal to resource by server in wireless communication system, and device for same | |
WO2013191515A1 (ko) | 무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 | |
WO2014030905A1 (ko) | 무선 통신 시스템에서 서버를 활성화 또는 비활성화하기 위한 방법 및 장치 | |
CN114844961B (zh) | 一种分布式系统协议互通方法、装置、设备及存储介质 | |
WO2017000256A1 (zh) | 一种定位方法及对应装置 | |
JP6276380B2 (ja) | 無線通信システムにおけるサーバーの端末のリソース要請又は端末のリソース提供のための方法及びこのための装置 | |
KR101508073B1 (ko) | 지그비 네트워크에서 단말의 액세스 방법 및 장치 | |
CN111585861A (zh) | 一种基于Sub-G的星型网络和mesh网络架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 13830490 Country of ref document: EP Kind code of ref document: A1 |
|
WWE | Wipo information: entry into national phase |
Ref document number: 14416517 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 13830490 Country of ref document: EP Kind code of ref document: A1 |