WO2017195964A1 - 무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치 - Google Patents

무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치 Download PDF

Info

Publication number
WO2017195964A1
WO2017195964A1 PCT/KR2016/015406 KR2016015406W WO2017195964A1 WO 2017195964 A1 WO2017195964 A1 WO 2017195964A1 KR 2016015406 W KR2016015406 W KR 2016015406W WO 2017195964 A1 WO2017195964 A1 WO 2017195964A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource
collection
request
receiving device
received request
Prior art date
Application number
PCT/KR2016/015406
Other languages
English (en)
French (fr)
Inventor
정승명
김정환
김동주
Original Assignee
엘지전자 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 엘지전자 주식회사 filed Critical 엘지전자 주식회사
Publication of WO2017195964A1 publication Critical patent/WO2017195964A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor

Definitions

  • the present invention relates to an addressing method and apparatus for applying the collection pattern in a wireless communication system.
  • the platform When providing a RESTful based internet of things (IoT) service, the platform retrieves a request target resource from its database and processes it when a request is received from an application.
  • IoT internet of things
  • the database is managed by resource type and the collection pattern is supported by the target resource addressing system (collection pattern) is supported.
  • selection pattern the target resource addressing system
  • the present invention proposes an addressing method and apparatus for applying the collection pattern.
  • a method for processing a received request using a collection resource in a wireless communication system is performed by a receiving device, and receives a request for a resource in the receiving device from an originating device. Doing; If the receiving device supports a collection function, determining whether the received request indicates a collection resource stored in the receiving device; If the received request indicates a collection resource stored in the receiving device, checking whether the received request is a generation request or a request other than a generation request; and if the received request is a generation request, sibling resources of the collection resource. And generating a new resource using information included in the received request.
  • the method may further comprise storing an internal link between the generated new resource and the collection resource.
  • the method may further comprise performing an operation according to the received request in a batch on all resources connected to the collection resource. have.
  • the collection resource may be a virtual resource.
  • the received request includes a 'To' parameter
  • the 'To' parameter may include a name or identifier representing a previously defined or fixed collection resource.
  • the collection resource may be created as a child resource of a particular resource in the receiving device.
  • the specific resource in the receiving device may include an attribute indicating a collection resource type.
  • the method performs an operation according to the received request using an internal link between the sibling resource and the collection resource if the received request indicates a sibling resource of a collection resource stored in the receiving device. It may further comprise the step.
  • the method may further comprise searching for and loading the sibling resource in a database storing resources of a resource type corresponding to a collection resource stored in the receiving device.
  • a reception apparatus configured to process a received request using a collection resource in a wireless communication system according to another embodiment of the present invention, comprising: a transmitter; receiving set; And a processor configured to control the transmitter and the receiver, the processor receiving a request for a resource in the receiving device from an originating device, and if the receiving device supports a collection function, the received request is received by the receiving device.
  • the processor may be configured to store an internal link between the generated new resource and the collection resource.
  • the processor may be configured to perform an operation according to the received request in a batch on all resources connected to the collection resource if the received request is a request other than a creation request.
  • the collection resource may be a virtual resource.
  • the received request may include a 'To' parameter
  • the 'To' parameter may include a name or identifier representing a previously defined or fixed collection resource
  • the collection resource may be created as a child resource of a particular resource in the receiving device.
  • the specific resource in the receiving device may include an attribute indicating a collection resource type.
  • the processor when the received request indicates a sibling resource of a collection resource stored in the receiving device, the processor performs an operation according to the received request using an internal link between the sibling resource and the collection resource. It may consist of a channel.
  • the processor may be configured to retrieve and load the sibling resources from a database storing resources of a resource type corresponding to a collection resource stored in the receiving device.
  • the overhead for searching for a target resource when receiving a request using addressing may be reduced.
  • the structure (method) of storing the resources of the conventional resource tree is the same, compatibility between systems can be guaranteed.
  • Adding the virtual resource's information to the resource address adds only the message's address without changing the resource type information in the resource's name or ID, thus providing greater intersystem compatibility than adding resource type information in the name or ID. I can guarantee it.
  • FIG. 1 illustrates a functional structure in an M2M communication system.
  • FIG 2 illustrates a configuration supported by the M2M communication system based on the M2M function structure.
  • FIG. 3 illustrates a common service function provided in an M2M communication system.
  • FIG. 4 illustrates a resource structure present in an M2M application service node and an M2M infrastructure node.
  • M2M application service nodes eg, M2M devices
  • M2M infrastructure nodes e.g. M2M devices
  • FIG. 6 illustrates a procedure of exchanging request and response messages used in an M2M communication system.
  • FIG. 9 illustrates operations associated with a subscription service.
  • FIG. 10 illustrates operations associated with a subscription service.
  • 11 shows a resource tree structure with parent-child resources.
  • FIG. 13 illustrates an attribute and collection resource configuration indicating support for collection according to an embodiment of the present invention.
  • FIG. 14 shows an example of processing for a creation request for a collection resource according to an embodiment of the present invention.
  • FIG. 15 illustrates examples of a RETRIEVE request using a collection resource and a general search request according to an embodiment of the present invention.
  • 16 illustrates an address in structured format and an address in unstructured format supporting collections according to one embodiment of the invention.
  • FIG. 17 shows a block diagram of an apparatus configured to perform embodiment (s) of the present invention.
  • a device for device-to-device communication may be fixed or mobile, and various devices that communicate with a server for device-to-device communication, that is, an M2M server, transmit and receive user data and / or various control information. Belongs.
  • the M2M device may include a terminal equipment, a mobile station (MS), a mobile terminal (MT), a user terminal (UT), a subscriber station (SS), a wireless device, a personal digital assistant (PDA), a wireless modem. may be referred to as a wireless modem, a handheld device, or the like.
  • M2M server generally refers to a fixed station that communicates with M2M devices and / or other M2M servers, and communicates with M2M devices and / or other M2M servers to control various data and controls. Exchange information.
  • M2M applications can be installed or mounted on M2M devices, M2M gateways, or M2M servers.
  • oneM2M defines a common M2M service framework (or service platform, common service entity (CSE), etc.) for various M2M applications (or application entities (AEs)).
  • M2M applications are software that implements service logic such as e-Health, City Automation, Connected Consumer, Automotive, etc.
  • the oneM2M service framework includes the functions that are common to implement these various M2M applications. have.
  • M2M applications can be easily implemented without having to configure each framework required for various M2M applications. It can integrate the M2M market, which is currently divided into multiple M2M verticals such as Smart Building, Smart Grid, e-Health, Transportation, Security, etc. around a common oneM2M service framework, which will greatly facilitate the M2M market. It is expected to be.
  • FIG. 1 illustrates a functional structure in an M2M communication system. Describe each entity.
  • Application entity (AE, 101): The application entity provides the application logic for the end-to-end M2M solution.
  • AEs include cargo tracking, remote blood sugar monitoring, remote power measurement and control applications.
  • Application Entity provides Application logic for the end-to-end M2M solutions.
  • Examples of the Application Entities can be fleet tracking application, remote blood sugar monitoring application, or remote power metering and controlling application.
  • It may be referred to as an M2M application.
  • CSE Common Service Entity
  • the CSE consists of the service functions defined in oneM2M that are common to the M2M environment. These service functions can be used by registered AEs and other CSEs exposed through reference points Mca and Mcc.
  • the reference point Mcn is used to access the services of the underlying network.
  • a Common Services Entity comprises the set of "service functions" that are common to the M2M environments and specified by one M2M. Such service functions are exposed to other entities through Reference Points Mca and Mcc.Reference point Mcn is used for accessing Underlying Network Service Entities.
  • CSF Common Services Functions
  • Some CSFs in a CSE must be present and some may optionally be present.
  • some of the functions in the CSF must exist and some of the functions can optionally be present. (Eg, within the “device management” CSF, some of the application software installation, firmware updates, logging, and monitoring are mandatory and some are optional.)
  • Underlying Network Service Entity (NSE) 103 The NSE provides services to the CSE, such as device management, location services, device triggering, and the like. N Underlying Network Services Entity provides services to the CSEs.Examples of such services include device management, location services and device triggering.No particular organization of the NSEs is assumed.Note: Underlying Networks provide data transport services between entities in the one M2M system.Such data transport services are not included in the NSE.)
  • the Mca reference point is the reference point between the AE and the CSE.
  • the Mca reference point allows the AE to communicate with the CSE so that the AE can use the services provided by the CSE. (This is the reference point between an Application Entity and a CSE.
  • the Mca reference point shall allow an Application Entity to use the services provided by the CSE, and for the CSE to communicate with the Application Entity.)
  • the Mcc reference point is the reference point between two CSEs.
  • the Mcc reference point allows the CSE to use the services of other CSEs.
  • the services provided through the Mcc reference point depend on the functions provided by the CSE. (This is the reference point between two CSEs.
  • the Mcc reference point shall allow a CSE to use the services of another CSE in order to fulfill needed functionality.
  • the Mcc reference point between two CSEs shall be supported over different M2M physical entities. The services offered via the Mcc reference point are dependent on the functionality supported by the CSEs)
  • Mcn reference point is the reference point between the CSE and the NSE.
  • the Mcn reference point allows the CSE to use the services provided by the NSE. (This is the reference point between a CSE and the Underlying Network Services Entity.
  • the Mcn reference point shall allow a CSE to use the services (other than transport and connectivity services) provided by the Underlying Network Services Entity in order to fulfill the needed functionality
  • Services provided by the NSE mean more than simple services such as transport and connectivity services, and services such as device triggering, small data transmission, and positioning. Is an example.
  • the Mcc 'reference point is used for communication between CSEs belonging to different M2M service providers.
  • the Mcc 'reference point may be similar in that it links the Mcc reference point and the CSE, but if the existing Mcc reference point was confined to communication within a single M2M service provider, the Mcc' reference point would extend the Mcc to different M2M service providers. Can be seen as a concept.
  • the M2M communication system is not limited to the illustrated configuration and can support more diverse configurations.
  • the concept of a node which is important for understanding the illustrated configuration, will be described.
  • ADN Application Dedicated Node
  • An Application Dedicated Node is a Node that contains at least one Application Entity and does not contain a Common Services Entity.
  • the Mca reference point can be connected to one middle node or one infrastructure node.
  • ADN may exist in an M2M device.
  • An Application Service Node is a Node that contains one Common Services Entity and contains at least one Application Entity.
  • the Mcc reference point can be connected to one middle node or one infrastructure node.
  • the ASN can exist in the M2M device.
  • Middle Node A Middle Node is a Node that contains one Common Services Entity and may contain Application Entities.
  • a Middle Node communicates over a Mcc references point with at least two other Nodes among either (not exclusively):
  • ASNs One or more application service nodes (ASNs);
  • MNs Middle nodes
  • One infrastructure node (IN).
  • the MN may be connected through the ADN and the Mca reference point. MN may be present in the M2M gateway.
  • An Infrastructure Node is a Node that contains one Common Services Entity and may contain Application Entities. IN may be present in the M2M server.
  • the infrastructure node may communicate with the following nodes through the MN or ASN and the Mcc reference point.
  • An Infrastructure Node communicates over a Y reference point with either:
  • One or more middle node (s);
  • Infrastructure nodes can communicate via ADN and Mca reference points. (An Infrastructure Node may communicate with one or more Application Dedicated Nodes over one or more respective Mca reference points.)
  • FIG. 3 illustrates a common service function provided in an M2M communication system.
  • M2M service functions ie, common service functions
  • M2M communication system include 'Communication Management and Delivery Handling', 'Data Management and Repository', 'Device Management', 'Discovery' and 'Group as shown in FIG. Management "," Addressing and Identification ",” Location “,” Network Service Exposure, Service Execution and Triggering ",” Registration “,” Security “,” Service Charging and Accounting “,” Session Management ",” Subscription and Notification " have.
  • CMDH Communication Management and Delivery Handling
  • DMR Data Management and Repository
  • DMG Device Management: Plays a role for managing M2M devices / gateways. Detailed features include application installation and settings, configuration settings, firmware updates, logging, monitoring, diagnostics, and topology management.
  • DIS Discovery
  • GCG Group Management
  • a group can be created by grouping resources, M2M devices, or gateways. It manages requests related to groups.
  • AID Addressing and Identification
  • LOC Location
  • NSE Network Service Exposure, Service Execution and Triggering
  • Registration An M2M application or other CSE is responsible for handling registration with a particular CSE. Registration is performed to use the M2M service function of a specific CSE.
  • SEC Handles sensitive data such as security keys, establishes security associations, authenticates, authorizes, and protects identity.
  • SCA Service Charging and Accounting
  • Session Management Manages M2M sessions for end-to-end communication.
  • Subscription and Notification When a subscription is made to a specific resource, it plays a role in notifying that the resource is changed.
  • M2M common service functions are provided through the CSE, and the AE (or M2M applications) can use the common service functions through the Mca reference point or another CSE through the Mcc reference point.
  • the M2M common service function may operate in conjunction with an Underlying Network (or Underlying Network Service Entity (NSE), for example, 3GPP, 3GPP2, WiFi, Bluetooth).
  • NSE Underlying Network Service Entity
  • a resource is used for organizing and representing information in an M2M communication system and means anything that can be identified by a URI.
  • the resources may be classified into general resources, virtual resources, and announced resources.
  • the definition of each resource is as follows.
  • Virtual Resources are used to trigger specific processing and / or retrieve results, but are not permanently present in the CSE.
  • Announced Resource An announced resource is a resource in a remote CSE that is connected to the original (or notified) source resource. Announced resources retain some of the characteristics of the original resource. Resource announcements facilitate resource discovery or discovery. The announced resource in the remote CSE is used to create child resources in the remote CSE that do not exist as children of the original resource or are not known children of the original resource.
  • FIG. 4 illustrates a resource structure present in an M2M application service node and an M2M infrastructure node.
  • the M2M communication system defines various resources (or resources) that can be manipulated to perform M2M services, such as registering applications and reading sensor values.
  • the resource is configured in a tree structure, and logically connected to the CSE or stored in the CSE and stored in an M2M device, an M2M gateway, a network domain, and the like.
  • the CSE may be referred to as an entity that manages resources.
  • the resource has ⁇ cseBase> as a tree root, and a representative resource is as follows.
  • ⁇ cseBase> resource The root resource of the tree-organized M2M resource, including all other resources.
  • ⁇ remoteCSE> Resource: A resource existing under ⁇ cseBase> that contains information of other CSEs registered (connected) to the CSE.
  • ⁇ AE> Resource Resource that exists under ⁇ cseBase> or ⁇ remoteCSE> resource. If it exists under ⁇ cseBase>, information of applications registered (connected) to the relevant CSE is stored.If present under ⁇ remoteCSE> The information of applications registered in another CSE (with a CSE name) is stored.
  • ⁇ accessControlPolicy> resource A resource that stores information related to access rights for a specific resource. Authorization is performed using the access authority information included in this resource.
  • Resource Resource that stores data by CSE or AE.
  • ⁇ group> resource A resource that provides the ability to group multiple resources together and process them together.
  • ⁇ subscription> resource A resource that performs a function of notifying that the status of a resource, etc. is changed through notification.
  • M2M application service nodes eg, M2M devices
  • M2M infrastructure nodes e.g. M2M devices
  • an AE application2 registered in an M2M infrastructure node reads a sensor value of an M2M device
  • the sensor usually refers to a physical device
  • the AE (application1) existing on the M2M device reads the value from the sensor and stores the value read in the form of container resource in the registered CSE (CSE1).
  • CSE1 container resource in the registered CSE
  • the AE existing on the M2M device must be registered in the CSE existing in the M2M device first.
  • M2M application related information registered in the form of cseBaseCSE1 / application1 resource is stored as shown in FIG. 5.
  • the AE registered in the infrastructure node may access the value.
  • the AE registered in the infrastructure node In order to be accessible, the AE registered in the infrastructure node must also be registered in the CSE (CSE2) of the infrastructure node. By storing the information.
  • application1 communicates with CSE1 and CSE2 in the middle instead of directly with application2. To do this, CSE1 must be registered in CSE2.
  • CSE1 related information eg, Link
  • ⁇ remoteCSE> provides the CSE type, access address (IP address, etc.), CSE ID, and reachability information for the registered CSE.
  • resource discovery refers to a process of discovering a resource in a remote CSE.
  • Resource search is done through a RETRIEVE request.
  • a request for retrieval includes:
  • ⁇ startURI> Indicates a URI, which can be used to limit the range of resources for which resource searches will be performed. If ⁇ startURI> points to ⁇ cseBase>, which is the root of the resource, resource search is performed for all resources of the receiver who received this retrieve request. The receiver performs resource discovery only for the resource indicated by ⁇ startURI> and its subordinate resources.
  • filterCriteria This information describes information related to the resource to be searched.
  • the receiver searches only those resources that satisfy the filterCriteria among the resources within the resource search range defined by ⁇ startURI>, and sends them to the requestor of this request.
  • a resource may be represented as a tree structure, and the type of a root resource is represented as ⁇ CSEBase>. Therefore, the ⁇ CSEBase> resource type must be present if there is a common service entity (CSE).
  • CSE common service entity
  • M2M system shows a general communication flow on Mca and Mcc reference points.
  • the operation of the M2M system is performed based on the data exchange. For example, in order for the first device to transmit or perform a command for stopping a specific operation of the second device, the first device must transmit the command to the second device in data form.
  • data can be exchanged in request and response messages on the connection between the application (or CSE) and the CSE.
  • the request message includes the following information.
  • Type of operation to be executed (either Create / Retrieve / Update / Delete / Notify)
  • the ID of the entity to receive the request (ie the ID of the receiver)
  • Request Identifier The ID of the request message (ID used to identify the request message).
  • Group Request Identifier parameter identifier to prevent duplicate group fan-out request messages
  • Content The content of the resource being passed
  • the response message includes the following information. First, if the request message has been successfully processed, the response message
  • Request Identifier The ID of the request message (ID used to identify the request message).
  • Result status code the result of processing the request (for example, Okay, Okay and Done, Okay and in progress)
  • Content The content of the resource being delivered (only results can be delivered)
  • Request Identifier The ID of the request message (ID used to identify the request message).
  • Result status code The result of processing the request and the reason / code for failure (for example, Not Okay).
  • Table 1 Resource Type Short Description Child Resource Types Parent Resource Types AE Stores information about the AE. Registrar Created as a result of successful registration of CSEs and AEs) Stores information about the AE. It is created as a result of successful registration of an AE with the registrar CSE).
  • subscription, container, group, accessControlPolicy, mgmtObj, commCapabilities, pollingChannel remoteCSE, CSEBase cmdhNwAccessRule Defines a rule for the usage of underlying networks. schedulesubscription cmdhNetworkAccessRules CSEBase It is a structural root for all resources on the CSE. The structural root for all the resources that are residing on a CSE.It shall store information about the CSE itself.
  • remoteCSE node, application, container, group, accessControlPolicy, subscription, mgmtObj, mgmtCmd, locationPolicy, statsConfig None group Stores information about resources of the same type that need to be processed into groups. Operations information about resources of the same type that need to be addressed as a Group.Operations addressed to a Group resource shall be executed in a bulk mode for all members belonging to the Group).
  • fanOutPointsubscription Application, remoteCSE, CSEBase locationPolicy Includes information for obtaining and managing geographic locations. Includes information to obtain and manage geographical location.It is only referred from container, the contentInstances of the container provides location information.
  • subscription CSEBase remoteCSE Represents a remote CSE for which there has been a registration procedure with the registrar CSE identified by the CSEBase resource.
  • application, container, group, accessControlPolicy, subscription, mgmtObj, pollingChannel, node CSEBase subscription Represents subscription information related to a resource.
  • Subscription resource represents the subscription information related to a resource. Such a resource shall be a child resource for the subscribe-to resource.
  • Each resource type may be located under a parent resource type of the corresponding resource type and may have a child resource type.
  • Each resource type also has attributes, in which the actual values are stored.
  • Table 2 below defines the attributes of the ⁇ container> resource type.
  • the attribute where the actual values are stored must be set ('1') or optionally set ('0..1') through Multiplicity.
  • the attributes are set as RO (Read Only), RW (Read and Write), and WO (Write Only) according to characteristics at the time of creation.
  • the ⁇ container> resource may have ⁇ container>, ⁇ contentInstance>, and ⁇ subscription> as child resources.
  • resourceType One RO Resource type. It is written once (which cannot be changed after a certain time) and identifies the type of resource. (Resource Type.This Write Once (at creation time then cannot be changed) resourceType attribute identifies the type of resources.Each resource shall have a resourceType attribute.) resourceID One RO This attribute is an identifier for the resource used for the 'non-hierarchical URI method' or 'ID based method' case. This attribute is provided by the hosting CSE if the hosting CSE accepts the resource creation procedure.
  • the hosting CSE assigns a unique resource ID (This attribute is an identifier for resource that is used for 'non-hierarchical URI method' or 'IDs based method' cases.This attribute shall be provided by the Hosting CSE when it accepts a resource creation procedure.The Hosting CSE shall assign a resourceID which is unique in the CSE).
  • parentID One RO The system assigns a value to this attribute according to the parameters given in the CREATE request. The parent-child relationship is established by the parent's identifier of this child resource. This identifier uses a non-hierarchical URI representation.
  • the resource “...” //example.com/oneM2M/myCSE ” The parent ID of AE resource with identifier“ myAE1 ”created under“... ” // parentID ”(the system shall assign the value to this attribute according to the parameters given in the CREATE Request.It establishes the parent-child relationship by identification of the parent of this child resource.
  • Such identifier shall use the non -hierarchical URI representation.
  • an AE resource with the identifier "myAE1" which has been created under the resource "... // example.com / oneM2M / myCSE” the value of the parentID attribute will contain "... // parentID ".) expirationTime One RW Time / date the resource will be cleared by the hosting CSE.
  • This attribute may be provided by the originator, in which case it is considered a hint to the host CSE about the lifetime of the resource.
  • the hosting CSE may however determine the actual expiration time. If the hosting CSE decides to change the expiration time attribute value, it is known to the sender.
  • the lifetime of the resource can be extended by providing a new value for this attribute in an UPDATE operation. Or by deleting the attribute value, for example by not providing the attribute when the hosting CSE makes a full update to determine a new value, the life of the resource can be extended. This attribute is required.
  • the system assigns an appropriate value according to local policy and / or M2M service subscription agreement (Time / date after which the resource will be deleted by the hosting CSE.
  • This attribute can be provided by the Originator, and in such a case it will be regarded as a hint to the hosting CSE on the lifetime of the resource.
  • the hosting CSE can however decide on the real expirationTime. If the hosting CSE decides to change the expirationTime attribute value, this is communicated back to the Originator.
  • the lifetime of the resource can be extended by providing a new value for this attribute in an UPDATE operation.Or by deleting the attribute value, eg by not providing the attribute when doing a full UPDATE, in which case the hosting CSE can decide on a new value.
  • This attribute shall be mandatory. If the Originator does not provide a value in the CREATE operation the system shall assign an appropriate value depending on its local policies and / or M2M service subscription agreements.
  • accessControlPolicyIDs 0..1 (L) RW This attribute contains a list of identifiers (either IDs or URIs depending on whether a local resource exists) of the ⁇ accessControlPolicy> resource.
  • the permissions defined in the referenced ⁇ accessControlPolicy> resource determine who is allowed to access the resource containing this attribute for a specific purpose (eg, Retrieve, Update, Delete, etc.).
  • the privileges defined in the ⁇ accessControlPolicy> resource that are referenced determine who is allowed to access the resource containing this attribute for a specific purpose (eg Retrieve, Update, Delete, etc.)).
  • This attribute is an optional attribute and, if not present, means that the resource cannot be found through a discovery procedure that uses this attribute as a key parameter of the discovery (Tokens used as keys for discovering resources.This attribute is optional and if not present it means that the resource cannot be found by means of discovery procedure which uses labels as key parameter of the discovery).
  • CreationTime One RO Creation time / date of the resource This attribute is a mandatory attribute for all resources and the value is assigned by the system when the resource is created locally. (Time / date of creation of the resource.This attribute is mandatory for all resources and the value is assigned by the system at the time when the resource is locally created.
  • This attribute may be included in the create or update request if the create or update request includes a list of URIs / CSE-IDs to which the generated / updated resource is announced. This attribute is present only for the original resource if the original resource is successfully announced to other CSEs. This attribute maintains a list of URIs to successfully announced resources.
  • Updates to this attribute will trigger a new resource announcement or release of an announcement (which attribute may be included in a CREATE or UPDATE Request in which case it contains a list of URIs / CSE-IDs which the resource being created / updated shall be announced to.
  • This attribute shall only be present on the original resource if it has been successfully announced to other CSEs.
  • This attribute maintains the list of URIs to the successfully announced resources.Updates on this attribute will trigger new resource announcement or de-announcement).
  • announcedAttribute 0..1 RW This attribute is present only for the original resource if some optional announced type attributes are announced to other CSEs. This attribute maintains a list of optional attributes (OA type attributes) advertised in the original resource.
  • maxByteSize 0..1 RW Maximum number of bytes that are allocated for a ⁇ container> resource for all instances in the ⁇ container> resource.
  • maxInstanceAge 0..1 RW Maximum age of an instance of ⁇ containerInstance> resources in a ⁇ container>.
  • currentNrOfInstances One RO ⁇ container> Number of content instances currently in the resource. (Current number of instances in a ⁇ container> resource.It is limited by the maxNrOfInstances).
  • ontologyRef 0..1 RW A URI of the ontology used to represent the information that is managed and understood by the AE.
  • the ontology is the domain to be addressed. Refers to a specification that defines the terms used in the document and defines the relationships between them.
  • This property is only accessed by the AE and hosting CSE. If this information is not provided, the AE shall use ⁇ pollingchannel>. Then, the hosting CSE can forward the request to the AE without using PoA (The list of addresses for communicating with the registered Application Entity over Mca reference point via the transport services provided by Underlying Network (eg IP address, FQDN) This attribute shall be accessible only by the AE and the Hosting CSE. If this information is not provided, the AE should use ⁇ pollingChannel> resource.Then the Hosting CSE can forward a request to the AE without using the PoA.
  • PoA The list of addresses for communicating with the registered Application Entity over Mca reference point via the transport services provided by Underlying Network (eg IP address, FQDN) This attribute shall be accessible only by the AE and the Hosting CSE. If this information is not provided, the AE should use ⁇ pollingChannel> resource.Then the Hosting CSE can forward a request to the AE without using the PoA.
  • ontologyRef 0..1 RW See Table 2 nodeLink 0..1 RO A URI of a ⁇ node> resource that stores the node specific information. consecutiveRequestSupport 0..1 RW Property that indicates the physical state of the device. Set the value to FALSE even if the device can malfunction due to a specification or external continuous request (fire).
  • An access control policy is defined as a "white list” or privileges, and each privilege defines “allowed” entities for specific access modes.
  • Sets of privileges are handled such that the privileges for a privilege group are sums of individual privileges, ie the action is allowed if allowed by some / any of the privileges in the set.
  • the selfPrivilege attribute lists the entities that have the right to read / update / delete for the resource ⁇ accessControlPolicy> itself.
  • all privileges defined in the access control policy also relate to location, time window and IP address.
  • the permissions for accessing that resource are defined by the permissions defined in the ⁇ accessControlPolicy> resource.
  • FIG. 7 shows the structure of a ⁇ accessControlPolicy> resource.
  • the following table shows the attributes of the ⁇ accessControlPolicy> resource.
  • This attribute shall be present only on the announced resource.This attribute shall provide the link (URI) to the original resource.This is only for ⁇ accessControlPolicyAnnc>.) announceTo One RW See Table 2 announcedAttribute One RW This attribute is present on the original resource when some OA type attributes are announced to other CSEs. This attribute maintains a list of OA type attributes that are known from the original resource. An update to this attribute will trigger a new attribute announcement if a new attribute is added, de-announced or an existing attribute is removed.
  • Privileges may be generalized to actions (which may be to grant access, but more specifically, to grant access to a subset, ie, to filter a portion of data). Privileges may be generalized to conditions, which may include the identifier of the requestor (sender, requestor), all but the specified identifier, but may also include time-based conditions.
  • An access authorization mechanism based on an access control policy works by matching the sender's and sender's privileges stored in the ⁇ accessControlPolicy> resource. If a positive match is found, the requested action (eg, RETRIEVE) is checked using the set of allowed actions associated with the matching rights holder; If this check fails, the request is rejected. This set is referred to as a permission flag.
  • RETRIEVE RETRIEVE
  • Self-privileges and privileges are lists of sender privileges associated with permission flags that apply to the ⁇ accessControlPolicy> resource itself and all other resource types addressing the ⁇ accessControlPolicy> resource and the accessControlPolicyID common attribute, respectively.
  • All privileges defined in the access control policy are also associated with the location, time window and IP address before granting access.
  • Self-rights and each right in the rights may also consist of one role.
  • This role is identified by the role name and the URL addressing the M2M service subscription resource in which the role is defined. If the sender represents itself with a particular role, the access control policy operates by matching the requesting sender with lists belonging to the specific role specified in the M2M service subscription resource.
  • Each right in the rights and self rights lists consists of the following elements.
  • the originatorPrivileges includes information as shown in the following table.
  • Table 5 The contexts in Table 5 include the information in the following table.
  • Context Defines the context in which every privileges of the present access control policy resource applies, eg time windows, location, IP address.
  • OperationFlags of Table 5 include the information as shown in the following table.
  • access control policy resources are stored separately from resources to which the access control policy is applied.
  • the resource to which the access control policy is applied has only the AccessRightID (the URI of the access control policy resource) of the access control policy resource. Therefore, an M2M entity must reference an AccessRightID to check the access control policy of a particular resource.
  • M2M entities are ready to use the system / service by performing a registration process with entities around them, whether in the field domain or the infrastructure domain. Such registration is performed at the request of the Registree, and as a result, the information of the Registrant is generally stored in the Registrar.
  • the oneM2M entity may use the M2M service using the common functions provided by the CSE as shown in FIG. 3.
  • the oneM2M entity has an AE and a CSE. Accordingly, the registration process can be divided into an AE registration and a CSE registration.
  • both the AE and the CSE mean a registration target and the registrar is a CSE.
  • the information on the registrant CSE is also stored in the target CSE.
  • FIG. 8 shows an AE registration process and a CSE registration process.
  • FIG. 8A illustrates an AE registration process, in which AE1 to register requests ⁇ AE> generation to CSE1, who is in charge of registration (S81-1), whereby CSE1 uses ⁇ AE> by using the information of AE1.
  • a resource may be generated (S82-2). Then, the CSE1 may transmit a response including the result of the registration process to the AE1 (S83-2).
  • FIG. 8 (b) shows the CSE registration process.
  • FIG. 8 (b) shows that if the subject to be registered is CSE1 and the registrar is CSE2 and CSE2 transmits the result of the registration request of CSE1 (S83-2), CSE1 uses the information of CSE2 to ⁇ remoteCSE> resource. It is the same as (a) of FIG. 8 except for generating (S84-2).
  • the ⁇ subscription> resource contains subscription information about its subscribed-to resource.
  • a ⁇ subscription> resource is a child resource of the resource to which it is subscribed.
  • a ⁇ subscription> resource is represented as a child resource of a subscribed resource.
  • a ⁇ container> resource has a ⁇ subscription> resource as a child resource.
  • the ⁇ subscription> resource is deleted when the subscribed parent resource is deleted.
  • ⁇ subscription> resource represents a subscription to a subscribed resource.
  • the sender may create a resource of a ⁇ subscription> resource type when the sender has a RETRIEVE privilege on the subscribed resource.
  • the originator who created the ⁇ subscription> resource becomes a resource subscriber.
  • Each ⁇ subscription> resource may include a notification policy that specifies what notifications are sent, when and how. These notification policies may operate in conjunction with CMDH policies.
  • the ⁇ subscription> resource has a child resource, its name is notificationSchedule and is of type ⁇ schedule>.
  • the notificationSchedule resource specifies when a notification can be sent to the notificationURI (s) by the hosting CSE.
  • Attributes specific to ⁇ subscription> resources are: The attributes in the table below list only some of the attributes of the ⁇ subscription> resource.
  • notificationURI 1 L
  • the URI (s) in this list may not represent a resource subscriber entity.
  • notificationURI is a URI generated by the group hosting CSE to receive notifications. In this case, the resource subscriber notification URI must be included in the notificationForwardingURI.
  • the attribute is a forwarding attribute that shall be present only for group related subscriptions.It represents the resource subscriber notification URI.It shall be used by group Hosting CSE for forwarding aggregated notifications.) batchNotify 0..1 RW This attribute indicates that the subscriber wants to receive batches of notifications at one time instead of each. This attribute represents the subscriber's notification policy and may have two values: the number and duration of notifications to be deployed for delivery. If either value is set, notification events are temporarily stored until a specified number of notifications have been deployed, or until a duration that started after the first notification has been created has expired. Follow what batched notifications are sent.
  • This attribute represents the subscriber's notification policy and contains two values: the maximum number of events that can be sent during a particular duration, and the rateLimit window duration. If the number of notifications generated in the ratelimit window duration exceeds the maximum number, notification events are temporarily stored until the end of the window duration, and the transmission of the notification event is restarted in the next window duration. The sending of notification events continues as long as the maximum number of notification events for the window duration is not exceeded.
  • This notification policy indicates that the subscriber wants to limit the rate at which it receives notifications.
  • This attribute expresses the subscriber's notification policy and includes two values: a maximum number of events that may be sent within some duration, and the rateLimit window duration.When the number of generated notifications within the ratelimit window duration exceeds the maximum number, notification events are temporarily stored, until the end of the window duration, when the sending of notification events restarts in the next window duration. The sending of notification events continues as long as the maximum number of notification events is not exceeded during the window duration.
  • the ratelimit policy may be used simultaneously with other notification policies.
  • the preSubscriptionNotify policy can be used simultaneously with other notification policies.
  • This notification policy indicates that the subscriber wants to be sent notifications for events that were generated prior to the creation of this subscription.This attribute has a value of the number of prior notification events requested. If up-to-date caching of retained events is supported on the Hosting CSE and contains the subscribed events then prior notification events will be sent up to the number requested.
  • the preSubscriptionNotify policy may be used simultaneously with any other notification policy.
  • pendingNotification 0..1 RW This attribute indicates how to handle missed notifications (according to reachability and notification schedules) generated due to the connection period.
  • Possible values for pendingNotification include: "sendLatest” and "sendAllPending". This policy relies on the caching of held notifications on a hosted CSE. If this attribute is set, only the last notification should be sent and the last notification has ec set to "latest”. If this attribute is absent, the hosting CSE does not send missed notifications. This policy applies to all notifications regardless of the delivery policy selected (batch, latestNotification, etc.).
  • This notification policy if set, indicates how missed notifications due to a period of connectivity (according to the reachability and notification schedules) .
  • the possible values for pendingNotification are: “sendLatest” ⁇ “sendAllPending” This policy depends upon caching of retained notifications on the hosted CSE.When this attribute is set, only the last notification shall be sent and it shall have the ec set to “latest”.
  • notificationStoragePriority 0..1 RW This attribute indicates that the subscriber wants to set a priority for this subscription over other subscriptions belonging to the same subscriber. This attribute is set to a number within the priority range. If the storage of notifications exceeds the allocated size, this policy is used as an input with a storage congestion policy to determine which stored and generated notifications to drop and retain.
  • This attribute sets a number within the priority range.When storage of notifications exceeds the allocated size, this policy is used as an input with the storage congestion policy to determine which stored and generated notifications to drop and which ones to retain.) latestNotify 0..1 RW This notification policy indicates whether the subscriber wants only the last notification. If multiple notifications of this subscription are buffered, and the value of this attribute is set to true, only the last notification will be sent and have an ec value set to "latest".
  • notificationContentType One RW Indicates the type of notification content to be included in the notifications. Allows a notification content type that shall be contained in notifications.The allowed values are: .modified attributes only whole resource the reference to this subscription resource.
  • notificationEventCat 0..1 RW This notification policy indicates the subscriber's requested ec to be used for notification messages generated by this subscription. creator 0..1 WO AE-ID or CSE-ID which created the ⁇ subscription> resource. subscriberURI 0..1 WO URI that is sent a notification when this ⁇ subscription> is deleted.
  • the eventNotificationCriteria condition is as follows.
  • EventType 0..n Describes the type of event. Possible event types are:-Updates to attributes of a subscribed resource-Deletion of subscribed resources-Creation of immediate children of subscribed resources-Deletion of immediate children of subscribed resources. Other conditions in eventNotificationCriteria conditions Are applied to the selected event type.
  • eventType is “Creation of a direct child of the subscribed-to resource”
  • eventNotificationCriteria conditions apply to the immediate child resources of the subscribed resource. If this condition is not specified, the default value is "update for attributes of subscribed resource”.
  • the type of event.Possible event type values are:-Update to attributes of the subscribed-to resource- Deletion of the subscribed-to resource,-Creation of a direct child of the subscribed-to resource,-Deletion of a direct child of the subscribed-to resource
  • eventType is “Creation of a direct child of the subscribed-to resource”
  • other eventNotificationCriteria conditions is applied to the direct child resources of the subscribed -to resource. If this condition is not specified, the default value is “Update to attributes of the subscribed-to resource”) resourceStatus 0..n If the subscribed resource is changed by actions or expiration, the resource status is equal to the
  • Possible values are: child created, updated, child deleted, deleted. If child created or child deleted is set, other eventNotificationCriteria conditions should be applied to child resources created or deleted.
  • the notification includes contents for a child resource created or a deleted child resource based on the value of the notificationContentType attribute.
  • the resource status is the same as the specified value.
  • Possible values are: child created, updated, child If child created or child deleted is configured, other eventNotificationCriteria conditions shall be applied to the created or deleted child resource.Notification contains the contents for a created child resource or deleted child resource based on value of notificationContentType attribute.If this condition is not specified, the default value is updated.) operationMonitor 0..n Monitors whether actions accessing subscribed resources correspond to specific values. Allows you to monitor what actions are attempted for a subscribed resource, regardless of whether they were performed. This feature is useful for finding malicious AEs. Possible string arguments are create, retrieve, update, and delete.
  • This attribute is the attribute name of the resource types.
  • the M2M common service layer provides subscription / notification functionality to the application. This allows data to be exchanged between the CSE and the AE through different CSE repositories. Subscription / notification basically operates as shown in FIG.
  • Entity 2 wants to receive information about a specific event of entity 1 (eg, a change of a specific resource value of entity 1). To this end, entity 2 may create or set a subscription for the specific event in entity 1 (S910), and receive a response thereto (S920). If the specific event occurs and the notification according to the subscription is triggered, entity 1 may notify entity 2 (S930).
  • a specific event of entity 1 e.g. a change of a specific resource value of entity 1).
  • entity 2 may create or set a subscription for the specific event in entity 1 (S910), and receive a response thereto (S920). If the specific event occurs and the notification according to the subscription is triggered, entity 1 may notify entity 2 (S930).
  • Entity 2 does not necessarily have to receive notifications for subscriptions it establishes. For example, in an M2M environment, one entity creates a subscription for many different entities. Therefore, in the following environment, the entity that created the subscription may be different from the entity that actually receives the notification. That is, unlike FIG. 9, although entity 2 creates or sets a subscription (S1010), a notification according to the subscription may be delivered to entity 3 (S1030).
  • a subscription set or created is created or set in entity 1 in the form of a subscription resource ( ⁇ subscirption>) described above.
  • instances of different resource types are stored as children of the same parent.
  • 11 illustrates some of the parent-child relationships defined in the standard.
  • the resource name may be specified by an originator or a hosting CSE.
  • oneM2M defines an address system for indicating a request target resource when creating a request message, which consists of a structured resource address and an unstructured resource address.
  • oneM2M follows RESTful architecture, so all functions and services are defined as resources, and each resource has parent-child relationship.
  • resources are created and managed in platform (CSE) as tree structure. Therefore, the resource addressing system is basically a structured form, and a short definition of an address length for a low-end device is an unstructured form.
  • the structured form refers to a unique resource address by combining the names of each resource from the root to the corresponding resource on the resource tree, while the unstructured form assigns a unique resource ID (resourceID attribute) to the entire tree in the CSE. .
  • an address in a Service Provider-relative (SP-relative) structured format called "/ CSE1 / base / x12 / y34" could be named ⁇ base “of the CSE with” CSE1 "as its ID.
  • This resource can be represented shortly as "CSE1 / z32gd3" as an unstructured address.
  • This unstructured address is stored in a resource with an attribute called resourceID.
  • Collection patterns allow you to store resources of the same type (instances) as child resources of the same parent in the resource tree.
  • a CSE Resource Owner or Resource Owning Device
  • the CSE can confirm that the target resource ("x12") is an AE resource type only with the 'To' parameter when a request is received. After that, the "x12" resource can be quickly searched in the database corresponding to the AE resource type.
  • This collection pattern is defined in [ETSI M2M ARC], and collection resources are automatically generated by the platform (Service Capability Layer).
  • sclBase / applications / app1 represents a ⁇ application> resource, which cannot be created directly as a child of the sclBase resource, but only as a child of a collection resource with a fixed name of applications.
  • FIG. 12 illustrates a resource tree shown by applying a collection pattern to FIG. 11.
  • an overload occurs in searching for a target resource of a request message specified by the 'To' parameter. For example, for a "a / b / c" resource that is an address in a structured format, the platform checks if there is a root resource named "a” and then loads it from the database to see if the resource named "b" is a child resource. Then load the resource "b” from the database and see if there is a resource "c" as a child resource. Then, the "c" resource is loaded from the database to process the request message.
  • the non-structured form of address "a123” also has fewer repetitions than the address of an unstructured form, but incurs the overhead of searching for resource "a123" across all resources in the database. Indexing may be used to reduce such overhead, but there may be an overhead of continuously updating the resource during creation / deletion. In addition, the overhead is greater when the server handles many requests and has a lot of resources.
  • ETSI TC M2M collection resources for all resource types are created regardless of the resource types supported by the platform. Therefore, an unsolicited resource type may be exposed to an application as a collection resource, causing unnecessary request errors.
  • the collection resources of the ETSI TC M2M is a general ( ⁇ -> virtual) resource type and when applied to oneM2M (FIG. 12), collection resources are added between the existing parent-child relationships, thus having a conventional oneM2M resource tree. You cannot maintain compatibility with the system.
  • the requester of the existing system sent a creation request with ⁇ CSEBase> as the target ('To' parameter) when creating a ⁇ AE> resource named "x12" in ⁇ CSEBase>, but based on the collection pattern as described above Because the system does not create a ⁇ AE> resource as a child of the ⁇ CSEBase> resource, but as a child of the ⁇ aes> resource, which is a child of the ⁇ CSEBase> resource, for example, a requester of an existing system may not have a ⁇ AE> Sending a request to create a resource causes an error in the request.
  • resource type information in a resource name or resource ID.
  • the ⁇ container> resource is represented as "container12" or "cnt12".
  • the resource name and ID follow some sort of convention, but this is difficult to adopt as a standard technique. Names and IDs are implementation / operational issues and can be set differently for different service providers.
  • the present invention proposes a method that can apply a collection pattern to oneM2M while solving the problems described above. To do this, you can specify whether or not to support the collection pattern, how to configure the collection virtual resource as existing resources and sibling resources when the collection pattern is supported, how to indicate the target resource of the request message using that collection virtual resource, and how to handle it. Describe the method.
  • the information can be stored as an attribute of the ⁇ CSEBase> resource. For example, if the value of the collectionSupport attribute is True, it can indicate that the CSE supports collection. This information is also stored in the ⁇ remoteCSE> resource so that it can be exposed to other entities.
  • the collectionSupport attribute may have a value representing a collection.
  • the collection can have a collection resource for the resource type supported by the corresponding CSE in association with the supportedResourceType attribute of the ⁇ CSEBase> resource.
  • the CSE may create a virtual resource such as "groups" at a location on the tree where a conventional ⁇ group> resource can be created. This will create a "groups" virtual resource as a sub-resource of the ⁇ AE> resource, in addition to the initialization phase of creating the ⁇ CSEBase> resource for that CSE, for example when creating the ⁇ AE> resource in the ⁇ CSEBase> resource. Can be.
  • the "groups" virtual collection resource and "grp1" of the ⁇ group> resource type have a sibling relationship, and the "groups” virtual resource maintains a link of the actual resource (“grp1") of the type. Etc. internally.
  • the sender may request a collection resource of the same resource type as the target ('To' parameter) as the resource to be created when creating a new resource.
  • virtual resources do not have their own representations or child resources.
  • the platform may create a new resource as a sibling resource of the collection resource.
  • the address of the generated resource of the CSE-relative structured format is "base / a1".
  • the platform has a link to the resource associated with each collection resource.
  • the structure in which the actual resource is stored in the resource tree is not different from that of the prior art, thereby maintaining compatibility with the conventional system.
  • the conventional resource tree may support additional addressing for virtual collection resource addressing. Basically, to point to a resource on a platform that supports collections, you need to add the information that points to the collection resource before the resource name or ID (i.e., the ID indicated by the resourceID attribute value). That is, the present invention is applicable to resource addresses in conventional structured format and resource addresses in unstructured format.
  • the address in structured format includes the address of the virtual resource "aes", which is the ⁇ AE> collection resource for the "x12" resource, and the "containers" virtual resource, the ⁇ container> collection resource for the "y34" resource. Information is added before each.
  • virtual resource information may be added to a resource ID to indicate a resource type.
  • Information in the virtual collection resources can be used to ensure interoperability using their fixed names. This may be defined as the name of the original resource type by adding "s" to the name of the original resource type as in the above example. As another example, it may be defined as a short name of a resource type or a form in which "s" is attached thereto.
  • Information of the virtual collection resource may be added to the front or in another embodiment to indicate this, as in the above example of the name / ID of the resource.
  • the server platform supporting the collection on the right handles requests of both the application supporting the collection and the application not.
  • applications that do not support collections target "base / b2" because they have the same resource tree as the conventional (eg oneM2M Rel-2) technology.
  • applications that support collections use "base / aes / b2", the address to which the collections are applied to reduce server overhead.
  • the application supporting the collection may check that the collectionSupport attribute of the ⁇ CSEBase> resource is set to True, determine that the addressing technique to which the collection is applied is the preference of the corresponding platform, and send a request message using the same.
  • 16 illustrates an example of a process of processing by a platform supporting collection when a sender (or requestor) supporting a collection uses an address in a structured format and an unstructured format.
  • the target resource address ('To' parameter) below assumes an SP-relative including a CSE-ID.
  • next token retrieves and loads from a database (table) that stores resources of the ⁇ AE> resource type, not the entire database.
  • the next resource is of type ⁇ container> named "y34”
  • the resource "y34" is identified as a child resource through the resource "x12”. It then retrieves and loads the resource "y34" from the ⁇ container> resource type database and uses this "y34" resource to process the request.
  • the unstructured format of the address is similar to that of the structured format, but there is no repetition of the database search operation as it uses a unique resource ID in the CSE.
  • the platform retrieves and loads the resource with the resource ID "z32gd3" from the database of the ⁇ container> resource type and processes the request.
  • a RETRIEVE request that targets a "container" collection resource can perform a batch RETRIEVE operation on all ⁇ container> resources that the "container" resource links. This can also be applied to UPDATE and DELETE operations.
  • FIG. 17 is a block diagram illustrating components of a transmitter 10 and a receiver 20 that perform embodiments of the present invention.
  • the transmitter 10 and the receiver 20 are associated with transmitters / receivers 13 and 23 capable of transmitting or receiving radio signals carrying information and / or data, signals, messages, etc.
  • Memory 12, 22 for storing a variety of information, the transmitter / receiver 13, 23 and the memory 12, 22 and the like is operatively connected to control the components to control the components described above
  • the memories 12 and 22 may store a program for processing and controlling the processors 11 and 21, and may temporarily store input / output information.
  • the memories 12 and 22 may be utilized as buffers.
  • the processors 11 and 21 typically control the overall operation of the various modules in the transmitter or receiver. In particular, the processors 11 and 21 may perform various control functions for carrying out the present invention.
  • the processors 11 and 21 may also be called controllers, microcontrollers, microprocessors, microcomputers, or the like.
  • the processors 11 and 21 may be implemented by hardware or firmware, software, or a combination thereof.
  • firmware or software When implementing the present invention using hardware, application specific integrated circuits (ASICs) or digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), FPGAs ( field programmable gate arrays) may be provided in the processors 11 and 21.
  • ASICs application specific integrated circuits
  • DSPs digital signal processors
  • DSPDs digital signal processing devices
  • PLDs programmable logic devices
  • FPGAs field programmable gate arrays
  • firmware or software may be configured to include a module, a procedure, or a function for performing the functions or operations of the present invention, and configured to perform the present invention.
  • the 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 processor 11 of the transmission apparatus 10 is predetermined from the processor 11 or a scheduler connected to the processor 11 and has a predetermined encoding and modulation on a signal and / or data to be transmitted to the outside. After performing the transmission to the transmitter / receiver (13). For example, the processor 11 converts the data sequence to be transmitted into K layers through demultiplexing, channel encoding, scrambling, and modulation.
  • the coded data string is also called a codeword and is equivalent to a transport block, which is a data block provided by the MAC layer.
  • One transport block (TB) is encoded into one codeword, and each codeword is transmitted to a receiving device in the form of one or more layers.
  • the transmitter / receiver 13 may include an oscillator for frequency upconversion.
  • the transmitter / receiver 13 may include Nt transmit antennas, where Nt is a positive integer greater than or equal to one.
  • the signal processing of the receiver 20 is the reverse of the signal processing of the transmitter 10.
  • the transmitter / receiver 23 of the receiver 20 receives a radio signal transmitted by the transmitter 10.
  • the transmitter / receiver 23 may include Nr receive antennas, and the transmitter / receiver 23 frequency down-converts each of the signals received through the receive antennas to restore baseband signals. do.
  • Transmitter / receiver 23 may include an oscillator for frequency downconversion.
  • the processor 21 may decode and demodulate a radio signal received through a reception antenna to restore data originally transmitted by the transmission apparatus 10.
  • the transmitter / receiver 13, 23 is equipped with one or more antennas.
  • the antenna transmits a signal processed by the transmitter / receiver 13, 23 to the outside or receives a radio signal from the outside under the control of the processors 11 and 21, thereby transmitting / receiving the transmitter / receiver. It performs the function of forwarding to (13, 23).
  • Antennas are also called antenna ports.
  • Each antenna may correspond to one physical antenna or may be configured by a combination of more than one physical antenna elements.
  • the signal transmitted from each antenna can no longer be decomposed by the receiver 20.
  • a reference signal (RS) transmitted in correspondence with the corresponding antenna defines the antenna as viewed from the perspective of the receiver 20, and whether the channel is a single radio channel from one physical antenna or includes the antenna.
  • RS reference signal
  • the receiver 20 enables channel estimation for the antenna. That is, the antenna is defined such that a channel carrying a symbol on the antenna can be derived from the channel through which another symbol on the same antenna is delivered.
  • MIMO multi-input multi-output
  • the terminal or the UE operates as the transmitter 10 in the uplink and the receiver 20 in the downlink.
  • the base station or eNB operates as the receiving device 20 in the uplink, and operates as the transmitting device 10 in the downlink.
  • the transmitter and / or the receiver may perform at least one or a combination of two or more of the embodiments of the present invention described above.
  • the present invention can be used in a terminal, base station, server or other equipment of a wireless mobile communication system.

Abstract

본 발명의 일 실시예에 따른 무선 통신 시스템에서 콜렉션 자원을 이용하여 수신된 요청을 처리하기 위한 방법으로서, 상기 방법은 수신 장치에 의해 수행되며, 발신 장치로부터 상기 수신 장치 내 자원에 대한 요청을 수신하는 단계, 상기 자원이 콜렉션을 지원하면, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하는지 여부를 판단하는 단계, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하면, 상기 수신된 요청이 생성 요청인지 생성 요청 외 다른 요청인지를 확인하는 단계, 및 상기 수신된 요청이 생성 요청이면, 상기 콜렉션 자원의 형제 자원으로서 상기 수신된 요청에 포함된 정보를 이용해 새로운 자원을 생성하는 단계를 포함할 수 있다.

Description

무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치
본 발명은 무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치에 관한 것이다.
RESTful 기반의 IoT(internet of things) 서비스 제공 시 플랫폼은 어플리케이션으로부터 요청 수신 시, 요청 대상 자원(Resource)을 자신의 데이터베이스에서 검색하고 이를 처리한다. 서버와 같이 수많은 자원을 가지고 어플리케이션들로부터 수많은 요청을 처리하는 환경에서는 매번 데이터베이스에서 특정 자원을 검색하는 것에 최적화를 이루어야 하고 이를 위해 자원 타입 별로 데이터베이스를 분리 관리하며 이를 대상 자원 주소 체계에서 지원하는 콜렉션 패턴(collection pattern)을 지원하고 있다. 본 발명은 현재 oneM2M에서 지원하지 않는 콜렉션 패턴을 신규로 지원하면서도 종래 기술과 호환성을 유지할 수 있는 방법을 제안한다.
본 발명은 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치를 제안하고자 한다.
본 발명이 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 이하의 발명의 상세한 설명으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따라 무선 통신 시스템에서 콜렉션 자원을 이용하여 수신된 요청을 처리하기 위한 방법으로서, 상기 방법은 수신 장치에 의해 수행되며, 발신 장치로부터 상기 수신 장치 내 자원에 대한 요청을 수신하는 단계; 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하는지 여부를 판단하는 단계; 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하면, 상기 수신된 요청이 생성 요청인지 생성 요청 외 다른 요청인지를 확인하는 단계 및 상기 수신된 요청이 생성 요청이면, 상기 콜렉션 자원의 형제 자원으로서 상기 수신된 요청에 포함된 정보를 이용해 새로운 자원을 생성하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 방법은 상기 생성된 새로운 자원과 상기 콜렉션 자원 간의 내부 링크를 저장하는 단계를 더 포함할 수 있다.
추가로 또는 대안으로, 상기 방법은 상기 수신된 요청이 생성 요청 외 다른 요청이면, 상기 콜렉션 자원에 연결된 모든 자원들에 대해 일괄적으로 상기 수신된 요청에 따른 동작을 수행하는 단계를 더 포함할 수 있다.
추가로 또는 대안으로, 상기 콜렉션 자원은 가상의 자원일 수 있다.
추가로 또는 대안으로, 상기 수신된 요청은 'To' 파라미터를 포함하고,상기 'To' 파라미터는 사전에 정의 또는 고정된 콜렉션 자원을 나타내는 이름 또는 식별자를 포함할 수 있다.
추가로 또는 대안으로, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 콜렉션 자원은 상기 수신 장치 내 특정 자원의 자식 자원으로서 생성될 수 있다.
추가로 또는 대안으로, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신 장치 내 특정 자원은 콜렉션 자원 타입을 지시하는 속성을 포함할 수 있다.
추가로 또는 대안으로, 상기 방법은 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원의 형제 자원을 지시하면, 상기 형제 자원과 상기 콜렉션 자원 간의 내부 링크를 이용하여 상기 수신된 요청에 따른 동작을 수행하는 단계를 더 포함할 수 있다.
추가로 또는 대안으로, 상기 방법은 상기 수신 장치에 저장된 콜렉션 자원에 해당하는 자원 타입의 자원들을 저장해놓은 데이터 베이스에서 상기 형제 자원을 검색하고 로드하는 단계를 더 포함할 수 있다.
본 발명의 또다른 일 실시예에 따른 무선 통신 시스템에서 콜렉션 자원을 이용하여 수신된 요청을 처리하도록 구성된 수신 장치에 있어서, 송신기; 수신기; 및 상기 송신기 및 상기 수신기를 제어하도록 구성된 프로세서를 포함하되, 상기 프로세서는 발신 장치로부터 상기 수신 장치 내 자원에 대한 요청을 수신하고, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하는지 여부를 판단하고, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하면, 상기 수신된 요청이 생성 요청인지 생성 요청 외 다른 요청인지를 확인하고, 그리고 상기 수신된 요청이 생성 요청이면, 상기 콜렉션 자원의 형제 자원으로서 상기 수신된 요청에 포함된 정보를 이용해 새로운 자원을 생성하도록 구성될 수 있다.
추가로 또는 대안으로, 상기 프로세서는 상기 생성된 새로운 자원과 상기 콜렉션 자원 간의 내부 링크를 저장하도록 구성될 수 있다.
추가로 또는 대안으로, 상기 프로세서는 상기 수신된 요청이 생성 요청 외 다른 요청이면, 상기 콜렉션 자원에 연결된 모든 자원들에 대해 일괄적으로 상기 수신된 요청에 따른 동작을 수행하도록 구성될 수 있다.
추가로 또는 대안으로, 상기 콜렉션 자원은 가상의 자원일 수 있다.
추가로 또는 대안으로, 상기 수신된 요청은 'To' 파라미터를 포함하고, 상기 'To' 파라미터는 사전에 정의 또는 고정된 콜렉션 자원을 나타내는 이름 또는 식별자를 포함할 수 있다.
추가로 또는 대안으로, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 콜렉션 자원은 상기 수신 장치 내 특정 자원의 자식 자원으로서 생성될 수 있다.
추가로 또는 대안으로, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신 장치 내 특정 자원은 콜렉션 자원 타입을 지시하는 속성을 포함할 수 있다.
추가로 또는 대안으로, 상기 프로세서는 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원의 형제 자원을 지시하면, 상기 형제 자원과 상기 콜렉션 자원 간의 내부 링크를 이용하여 상기 수신된 요청에 따른 동작을 수행하도로 구성될 수 있다.
추가로 또는 대안으로, 상기 프로세서는 상기 수신 장치에 저장된 콜렉션 자원에 해당하는 자원 타입의 자원들을 저장해놓은 데이터 베이스에서 상기 형제 자원을 검색하고 로드하도록 구성될 수 있다.
상기 과제 해결방법들은 본 발명의 실시예들 중 일부에 불과하며, 본 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명의 일 실시예에 따르면, 어드레싱을 사용한 요청 수신 시 대상 자원 검색을 위한 오버헤드가 감소될 수 있다. 또한, 종래 자원 트리의 자원을 저장하는 구조(방법)이 동일하므로 시스템 간 호환성을 보장할 수 있다.
가상 자원의 정보를 자원 주소에 추가하는 방법은 자원의 이름이나 ID에 자원 타입 정보를 변경하지 않고 메시지의 주소에만 추가되므로 이름이나 ID에 자원 타입 정보를 추가하는 방법에 비해 더 넓은 시스템 간 호환성을 보장할 수 있다.
본 발명에 따른 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과는 이하의 발명의 상세한 설명으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 M2M 통신 시스템에서의 기능 구조를 도시한다.
도 2는 M2M 기능 구조에 기반하여 M2M 통신 시스템이 지원하는 구성을 도시한다.
도 3은 M2M 통신 시스템에서 제공되는 공통 서비스 기능을 도시한다.
도 4는 M2M 애플리케이션 서비스 노드와 M2M 인프라스트럭쳐 노드에 존재하는 자원 구조를 도시한다.
도 5는 M2M 애플리케이션 서비스 노드(예컨대, M2M 디바이스)와 M2M 인프라스트럭쳐 노드에 존재하는 자원 구조를 도시한다.
도 6은 M2M 통신 시스템에서 사용하는 요청 및 응답 메시지를 주고받는 절차를 도시한다.
도 7은 <accessControlPolicy> 자원의 구조를 도시한다.
도 8은 M2M 통신 시스템에서 등록 절차를 도시한다.
도 9는 구독 서비스와 관련된 동작을 도시한다.
도 10은 구독 서비스와 관련된 동작을 도시한다.
도 11은 부모-자식 자원을 갖는 자원 트리 구조를 도시한다.
도 12는 종래의 콜렉션 패턴의 예를 도시한다.
도 13은 본 발명의 일 실시예에 따른 콜렉션을 지원함을 나타내는 속성 및 콜렉션 자원 구성을 도시한다.
도 14는 본 발명의 일 실시예에 따른 콜렉션 자원에 대한 생성 요청에 대한 처리의 예를 도시한다.
도 15는 본 발명의 일 실시예에 따른 콜렉션 자원을 이용한 검색(RETRIEVE) 요청 및 일반적인 검색 요청의 예를 도시한다.
도 16은 본 발명의 일 실시예에 따른 콜렉션을 지원하는 구조화된 형식의 어드레스 및 구조화되지 않은 형식의 어드레스를 도시한다.
도 17은 본 발명의 실시예(들)을 수행하도록 구성된 장치의 블록도를 도시한다.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다.
몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다. 또한, 본 명세서 전체에서 동일한 구성요소에 대해서는 동일한 도면 부호를 사용하여 설명한다.
본 발명에 있어서, 기기간 통신을 위한 디바이스 즉, M2M 디바이스는 고정되거나 이동성을 가질 수 있으며, 기기간 통신을 위한 서버 즉, M2M 서버와 통신하여 사용자데이터 및/또는 각종 제어정보를 송수신하는 각종 기기들이 이에 속한다. 상기 M2M 디바이스는 단말(Terminal Equipment), MS(Mobile Station), MT(Mobile Terminal), UT(User Terminal), SS(Subscribe Station), 무선기기(wireless device), PDA(Personal Digital Assistant), 무선 모뎀(wireless modem), 휴대기기(handheld device) 등으로 불릴 수 있다. 또한, 본 발명에 있어서, M2M 서버는 일반적으로 M2M 디바이스들 및/또는 다른 M2M 서버와 통신하는 고정된 지점(fixed station)을 말하며, M2M 디바이스들 및/또는 다른 M2M 서버와 통신하여 각종 데이터 및 제어정보를 교환한다.
이하에서는 본 발명과 관련된 기술에 대해 설명한다.
M2M 애플리케이션
서비스 로직을 실행하고 개방 인터페이스를 통해 접근 가능한(accessible) 공통 서비스 엔티티(Common Service Entity; CSE)를 사용하는 애플리케이션. M2M 애플리케이션은 M2M 디바이스, M2M 게이트웨이 또는 M2M 서버에 설치 또는 탑재될 수 있다.
M2M 공통 서비스
표준화된 인터페이스들을 통해 M2M CSE가 이용가능하게 하는 기능들의 집합
oneM2M은 다양한 M2M 애플리케이션(또는 애플리케이션 엔티티(Application Entity; AE)) 들을 위한 공통 M2M 서비스 프레임워크(또는 서비스 플랫폼, 공통 서비스 엔티티(CSE) 등)를 정의한다. M2M 애플리케이션이라고 하면, e-Health, City Automation, Connected Consumer, Automotive 등의 서비스 로직을 구현한 소프트웨어라고 볼 수 있으며, 이러한 다양한 M2M 애플리케이션들을 구현하기 위해, 공통적으로 필요한 기능들을 oneM2M 서비스 프레임워크는 포함하고 있다. 따라서, oneM2M 서비스 프레임워크를 이용하면, 다양한 M2M 애플리케이션들 마다 필요한 각각의 프레임워크를 구성할 필요 없이, 이들 M2M 애플리케이션들을 쉽게 구현할 수 있다. 이는 현재 Smart Building, Smart Grid, e-Health, Transportation, Security 등 여러 M2M 버티컬(Vertical)들로 분열되어 있는 M2M 시장을 공통 oneM2M 서비스 프레임워크를 중심으로 통합할 수 있으며, 이는 M2M 시장을 크게 촉진할 것으로 기대된다.
도 1은 M2M 통신 시스템에서의 기능 구조를 도시한다. 각 엔티티를 설명하도록 한다.
애플리케이션 엔티티 (AE, 101): 애플리케이션 엔티티는 단대단 M2M 솔루션을 위한 애플리케이션 로직을 제공한다. AE의 예로는 화물 추적, 원격 혈당 모니터링, 원격 전력 측정 및 제어 애플리케이션이 있다. (Application Entity provides Application logic for the end-to-end M2M solutions. Examples of the Application Entities can be fleet tracking application, remote blood sugar monitoring application, or remote power metering and controlling application.) 보다 쉬운 이해를 위해, AE는 M2M 애플리케이션으로 지칭될 수 있다.
공통 서비스 엔티티 (CSE, 102): CSE는 M2M 환경에 공통적인 oneM2M에서 정의된 서비스 기능들로 이루어져 있다. 이러한 서비스 기능들은 레퍼런스 포인트 Mca, Mcc를 통해 노출되어 등록된(연결된) AE와 타 CSE에 의해 사용될 수 있다. 레퍼런스 포인트 Mcn는 언더라잉 네트워크의 서비스를 접근하는데 사용된다. (A Common Services Entity comprises the set of "service functions" that are common to the M2M environments and specified by oneM2M. Such service functions are exposed to other entities through Reference Points Mca and Mcc. Reference point Mcn is used for accessing Underlying Network Service Entities.)
CSE에서 제공하는 서비스 기능들의 예로는 데이터 관리, 디바이스 관리, M2M 구독(subscription) 관리, 위치 서비스 등이 있다. 이러한 기능들은 논리적으로 CSF(Common Services Functions)로 나뉘어 질 수 있다. CSE안의 몇몇 CSF는 필수적으로 존재하여야 하고, 몇몇은 선택적으로 존재 가능하다. 또한 CSF안의 몇몇 기능은 필수적으로 존재하여야 하고, 몇몇 기능은 선택적으로 존재 가능하다. (예, “디바이스 관리” CSF안에, 애플리케이션 소프트웨어 설치, 펌웨어 업데이트, 로깅, 모니터링 중 몇몇은 필수 기능이며, 몇몇은 선택 기능이다.)
언더라잉 네트워크 서비스 엔티티 (NSE, 103): NSE는 CSE에 서비스를 제공하는데, 이러한 서비스의 예로는 디바이스 관리, 위치 서비스, 디바이스 트리거링 등이 있다. NSE는 특정 기술로 한정하지 않으며, 네트워크가 기본적으로 제공해주는 트랜스포트(transport)의 경우 NSE의 서비스로 생각하지 않는다.(An Underlying Network Services Entity provides services to the CSEs. Examples of such services include device management, location services and device triggering. No particular organization of the NSEs is assumed. Note: Underlying Networks provide data transport services between entities in the oneM2M system. Such data transport services are not included in the NSE.)
아울러, 도 1에 도시된 각 레퍼런스 포인트에 대해 설명하도록 한다.
Mca 레퍼런스 포인트
Mca 레퍼런스 포인트는 AE와 CSE간의 레퍼런스 포인트이다. Mca 레퍼런스 포인트는 AE가 CSE가 제공하는 서비스를 사용할 수 있도록, AE가 CSE와 통신할 수 있도록 한다. (This is the reference point between an Application Entity and a CSE. The Mca reference point shall allow an Application Entity to use the services provided by the CSE, and for the CSE to communicate with the Application Entity.)
Mca 레퍼런스 포인트를 통해 제공되는 서비스들은 CSE에서 제공하는 기능들에 의존한다. AE와 CSE는 같은 물리적 장치에 있을 수도 있으며, 다른 물리적 장치에 있을 수도 있다. (The services offered via the Mca reference point are thus dependent on the functionality supported by the CSE. The Application Entity and the CSE it invokes may or may not be co-located within the same physical entity.)
Mcc 레퍼런스 포인트
Mcc 레퍼런스 포인트는 두 CSE간의 레퍼런스 포인트이다. Mcc 레퍼런스 포인트는 CSE가 다른 CSE의 필요한 기능의 서비스를 사용할 수 있도록 한다. Mcc 레퍼런스 포인트를 통해 제공되는 서비스들은 CSE에서 제공하는 기능들에 의존한다. (This is the reference point between two CSEs. The Mcc reference point shall allow a CSE to use the services of another CSE in order to fulfill needed functionality. Accordingly, the Mcc reference point between two CSEs shall be supported over different M2M physical entities. The services offered via the Mcc reference point are dependent on the functionality supported by the CSEs)
Mcn 레퍼런스 포인트
Mcn 레퍼런스 포인트는 CSE와 NSE간의 레퍼런스 포인트이다. Mcn 레퍼런스 포인트는 CSE가 NSE가 제공하는 서비스들을 사용할 수 있도록 한다. (This is the reference point between a CSE and the Underlying Network Services Entity. The Mcn reference point shall allow a CSE to use the services (other than transport and connectivity services) provided by the Underlying Network Services Entity in order to fulfill the needed functionality. ) NSE가 제공하는 서비스는 전송(transport)과 접속(connectivity) 서비스 같은 단순한 서비스 이외의 것을 뜻하며, 디바이스 트리거링(device triggering), 스몰 데이터 전송(small data transmission), 위치 결정(positioning)과 같은 서비스가 그 예이다.
Mcc’ 레퍼런스 포인트
Mcc' 레퍼런스 포인트는 서로 다른 M2M 서비스 제공자에게 속하는 CSE 간의 통신을 위해 사용된다. Mcc' 레퍼런스 포인트는 Mcc 레퍼런스 포인트와 CSE를 서로 연결한다는 점에서 비슷할 수 있으나, 기존 Mcc 레퍼런스 포인트가 단일 M2M 서비스 제공자 내의 통신으로 국한되어 있었다면 Mcc' 레퍼런스 포인트는 서로 다른 M2M 서비스 제공자로 Mcc를 확장한다는 개념으로 볼 수 있다.
도 2는 M2M 기능 구조에 기반하여 M2M 통신 시스템이 지원하는 구성을 도시한다. M2M 통신 시스템은 도시된 구성에 국한되지 않고 더 다양한 구성을 지원할 수 있다. 상기 도시된 구성을 이해하는데 중요한 노드(Node)라는 개념에 대해 먼저 설명하도록 한다.
애플리케이션 전용 노드(Application Dedicated Node; ADN): CSE가 존재하지 않고, 적어도 하나의 AE를 갖는 노드 (An Application Dedicated Node is a Node that contains at least one Application Entity and does not contain a Common Services Entity). Mca 레퍼런스 포인트를 통해 하나의 미들 노드 또는 하나의 인프라스트럭쳐 노드와 연결될 수 있다. ADN은 M2M 디바이스에 존재할 수 있다.
애플리케이션 서비스 노드(Application Service Node; ASN): 하나의 CSE가 존재해야 하고, 적어도 하나의 AE를 갖는 노드(An Application Service Node is a Node that contains one Common Services Entity and contains at least one Application Entity). Mcc 레퍼런스 포인트를 통해 하나의 미들 노드 또는 하나의 인프라스트럭쳐 노드에 연결될 수 있다. ASN은 M2M 디바이스에 존재할 수 있다.
미들 노드(Middle Node; MN): 하나의 CSE가 존재해야 하고, AE를 가질 수도 있는 노드(A Middle Node is a Node that contains one Common Services Entity and may contain Application Entities). Mcc 레퍼런스 포인트를 통해서 아래 다른 카테고리에 속하는 두 노드와 연결되어야 함 (A Middle Node communicates over a Mcc references point with at least two other Nodes among either (not exclusively)):
- 하나 이상의 애플리케이션 서비스 노드(ASN)들;
- 하나 이상의 미들 노드(MN)들;
- 하나 인프라스트럭쳐 노드(IN).
또한, MN은 ADN과 Mca 레퍼런스 포인트를 통해 연결될 수 있다. MN은 M2M 게이트웨이에 존재할 수 있다.
인프라스트럭쳐 노드(Infrastructure Node; IN): 하나의 CSE가 존재해야 하고, AE를 가질 수도 있는 노드 (An Infrastructure Node is a Node that contains one Common Services Entity and may contain Application Entities). IN은 M2M 서버에 존재할 수 있다.
인프라스트럭쳐 노드는 MN 또는 ASN과 Mcc 레퍼런스 포인트를 통해 다음 노드들과 통신할 수 있다. (An Infrastructure Node communicates over a Y reference point with either:
- 하나 이상의 미들 노드(들);
- 및/또는 하나 이상의 애플리케이션 서비스 노드(들)
인프라스트럭쳐 노드는 ADN과 Mca 레퍼런스 포인트를 통해 통신할 수 있다. (An Infrastructure Node may communicate with one or more Application Dedicated Nodes over one or more respective Mca reference points.)
도 3은 M2M 통신 시스템에서 제공되는 공통 서비스 기능을 도시한다.
M2M 통신 시스템이 제공하는 M2M 서비스 기능(즉, 공통 서비스 기능)으로는 도 3에 도시된 것처럼 ‘Communication Management and Delivery Handling’, ‘Data Management and Repository’, ‘Device Management’, ‘Discovery’, ‘Group Management’, ‘Addressing and Identification’, ‘Location’, ‘Network Service Exposure, Service Execution and Triggering’, ‘Registration’, ‘Security’, ‘Service Charging and Accounting’, ‘Session Management’, ‘Subscription and Notification’이 있다.
아래는 각 기능의 간략한 소개이다.
Communication Management and Delivery Handling (CMDH): 타 CSE들, AE들, NSE들과의 통신을 제공하고 어떻게 메시지를 전달할 지의 역할을 수행한다.
Data Management and Repository (DMR): M2M 애플리케이션이 데이터를 교환, 공유할 수 있도록 하는 역할을 수행한다.
Device Management (DMG): M2M 디바이스/게이트웨이를 관리하기 위한 역할을 수행한다. 세부 기능을 살펴보면, 애플리케이션 설치 및 세팅, 설정값 설정, 펌웨어(Firmware) 업데이트, 로깅(Logging), 모니터링(Monitoring), 진단(Diagnostics), 토폴로지(Topology) 관리 등이 있다.
Discovery (DIS): 조건에 기반한 자원 및 정보를 찾을 수 있도록 하는 역할을 수행한다.
Group Management (GMG): 자원, M2M 디바이스, 또는 게이트웨이를 묶어 그룹을 생성할 수 있는데, 그룹과 관련된 요청을 처리하는 역할을 수행한다.
Addressing and Identification (AID): 물리 또는 논리 자원을 식별 및 어드레싱(addressing)하는 역할을 수행한다.
Location (LOC): M2M 애플리케이션들이 M2M 디바이스 또는 게이트웨이의 위치 정보를 획득하도록 하는 역할을 수행한다.
Network Service Exposure, Service Execution and Triggering (NSE): 언더라잉 네트워크의 통신을 가능하게 하고, 언더라잉 네트워크가 제공하는 기능을 사용할 수 있도록 한다.
Registration (REG): M2M 애플리케이션 또는 다른 CSE가 특정 CSE에 등록을 처리하는 역할을 수행한다. 등록은 특정 CSE의 M2M 서비스 기능을 사용하기 위해 수행된다.
Security (SEC): 보안 키와 같은 민감한 데이터 핸들링, 보안 관계(Association) 설립, 인증(Authentication), 인가(Authorization), 식별(Identity) 보호 등의 역할을 수행한다.
Service Charging and Accounting (SCA): CSE에 요금 부가 기능을 제공하는 역할을 수행한다.
Session Management (SM): 단대단(end-to-end) 통신을 위한 M2M 세션을 관리하는 역할을 수행한다.
Subscription and Notification (SUB): 특정 자원에 대한 변경을 구독(Subscription)하면 해당 자원이 변경되면 이를 알리는 역할을 수행한다.
이러한 M2M 공통 서비스 기능은 CSE를 통해 제공되며, AE(혹은, M2M 애플리케이션들)이 Mca 레퍼런스 포인트를 통해, 또는 타 CSE가 Mcc 레퍼런스 포인트를 통해 해당 공통 서비스 기능들을 이용할 수 있다. 또 이러한 M2M 공통 서비스 기능은 언더라잉 네트워크(Underlying Network)(또는 언더라잉 네트워크 엔티티(Underlying Network Service Entity; NSE), 예: 3GPP, 3GPP2, WiFi, Bluetooth)와 연동하여 동작할 수 있다.
모든 디바이스/게이트웨이/인프라스트럭쳐가 상위 기능을 다 가지는 것은 아니다. 해당 기능들 중 필수 기능들과 선택 기능들 몇몇을 가질 수 있다.
M2M 통신 시스템에서 자원은 M2M 통신 시스템에서 정보를 구성 및 표현하기 위한 것으로 URI로 식별될 수 있는 모든 것을 의미한다. 상기 자원은 일반적인 자원, 가상 자원 및 어나운스된 자원(announced resource)로 분류할 수 있다. 각 자원에 대한 정의는 다음과 같다.
가상 자원: 가상 자원은 특정 프로세싱을 트리거하거나 그리고/또는 결과를 리트리브(retrieve)하는데 사용되나, CSE에 영구적으로 존재하지 않는다.
어나운스된 자원: 어나운스된 자원은 어나운스된(또는 통지된) 원본 자원에 연결된 원격 CSE에 있는 자원이다. 어나운스된 자원은 원본 자원의 특징 중 일부를 유지한다. 자원 어나운스먼트는 자원 탐색 또는 발견(discovery)를 원활하게 한다. 원격 CSE에 있는 어나운스된 자원은 상기 원격 CSE에서 원본 자원의 자녀로서 존재하지 않거나 원본 자원의 어나운스된 자녀가 아닌 자녀 자원들을 생성하기 위해 사용된다.
일반 자원: “가상” 또는 “어나운스된” 중 하나로 명시되지 않으면, 해당 자원은 일반 자원이다.
도 4는 M2M 애플리케이션 서비스 노드와 M2M 인프라스트럭쳐 노드에 존재하는 자원 구조를 도시한다.
M2M 통신 시스템은 다양한 자원(또는 자원)를 정의하는데, 이 자원을 조작해서, 애플리케이션을 등록하고, 센서 값을 읽어 오는 등의 M2M 서비스를 수행할 수 있다. 상기 자원은 하나의 트리 구조로 구성이 되며, CSE과 논리적으로 연결 또는 CSE에 저장되어 M2M 디바이스, M2M 게이트웨이, 네트워크 도메인 등에 저장될 수 있다. 이러한 측면에서, CSE는 자원을 관리하는 엔티티로 지칭될 수 있다. 상기 자원은 <cseBase>를 트리 루트로 가지며, 대표적인 자원은 아래와 같다.
<cseBase> 자원: 트리로 구성된 M2M 자원의 루트 자원이며, 다른 모든 자원을 포함한다.
<remoteCSE> 자원: <cseBase> 하위에 존재하는 자원으로써 해당 CSE에 등록(연결)된 타 CSE의 정보가 포함된다.
<AE> 자원: <cseBase> 나 <remoteCSE> 자원 하위에 존재하는 자원으로써, <cseBase> 의 하위에 존재할 경우 해당 CSE에 등록(연결)된 애플리케이션들의 정보가 저장되며, <remoteCSE> 하위에 존재할 경우 타 CSE(CSE 이름을 가진)에 등록된 애플리케이션들의 정보가 저장된다.
<accessControlPolicy> 자원: 특정 자원에 대한 접근 권한과 관련된 정보를 저장하는 자원이다. 본 자원에 포함된 접근 권한 정보를 이용하여, 인증(authorization)이 이루어지게 된다.
<container> 자원: CSE별, 또는 AE마다 데이터를 저장하는 자원이다.
<group> 자원: 여러 자원을 하나로 묶어 함께 처리할 수 있도록 하는 기능을 제공하는 자원이다.
<subscription> 자원: 자원의 값 등의 상태가 변경되는 것을 통지(notification)을 통해 알려주는 기능을 수행하는 자원이다.
도 5는 M2M 애플리케이션 서비스 노드(예컨대, M2M 디바이스)와 M2M 인프라스트럭쳐 노드에 존재하는 자원 구조를 도시한다.
예를 들어, M2M 인프라스트럭쳐 노드에 등록된 AE(application2)가 M2M 디바이스의 센서 값을 읽어오는 방법에 대해 설명한다. 상기 센서는 보통 물리적인 장치를 가리키며, M2M 디바이스 상에 존재하는 AE(application1)은 이 센서에서 값을 읽어 자신이 등록한 CSE(CSE1)에 container 자원 형태로 읽은 값을 저장한다. 해당 M2M 디바이스 상에 존재하는 AE는 이를 위해 M2M 디바이스에 존재하는 CSE에 먼저 등록되어야 하며, 등록이 완료되면, 도 5에서와 같이 cseBaseCSE1/application1 자원의 형태로 등록된 M2M 애플리케이션 관련 정보가 저장된다.
cseBaseCSE1/application1 자원 하위의 container 자원에 센서 값이 M2M 디바이스상에 존재하는 AE에 의해 저장되면, 인프라스트럭쳐 노드에 등록된 AE가 해당 값에 접근이 가능할 수 있다. 접근이 가능하게 하기 위해서는 상기 인프라스트럭쳐 노드에 등록된 AE도 역시 상기 인프라스트럭쳐 노드의 CSE(CSE2)에 등록이 되어있어야 하며, 이는 application1가 CSE1에 등록하는 방법과 같이 cseBaseCSE2/application2 자원에 application2에 대한 정보를 저장함으로써 이루어진다. 또, application1는 application2와 직접 통신하는 것이 아니라 중간의 CSE1과 CSE2을 통해 통신하게 되는데, 이를 위해 먼저 CSE1는 CSE2에 등록되어 있어야 한다. CSE1이 CSE2에 등록되게 되면, cseBaseCSE2 자원 하위에 CSE1 관련 정보(예컨대, Link)가 <remoteCSE> 자원 형태로 저장된다. 즉, <remoteCSE>는 등록된 CSE에 대한 CSE 타입, 접근 주소(IP 주소 등), CSE ID, reachability 정보 등을 제공해 준다.
한편, 자원 탐색(resource discovery)이란 원격의 CSE에 있는 리소소를 탐색하는 과정을 말한다. 자원 탐색은 리트리브(RETRIEVE) 요청을 통해 이루어 지며 자원 탐색을 위해 리트리브 요청은 아래의 내용을 포함한다.
<startURI>: URI을 지시하며, 이 URI는 자원 탐색을 행할 자원의 범위를 제한하는데 사용될 수 있다. 만약 <startURI>가 자원의 루트인 <cseBase>를 가리킨다면, 본 리트리브 요청을 받은 수신자의 전 자원을 대상으로 자원 탐색을 수행하게 된다. 수신자는 <startURI>가 지칭하는 자원과 그 하위 자원을 대상으로만 자원 탐색을 수행하게 된다.
filterCriteria: 이 정보에는 탐색할 자원과 관련된 정보가 기술된다. 수신자는 <startURI>가 정의한 자원 탐색 범위 안의 자원 중에서 filterCriteria를 만족시키는 자원만을 검색하여 본 요청의 요청자에게 전송하게 된다.
도 4 또는 도5에 도시된 것처럼 M2M 시스템에서는 자원이 트리 구조로서 표현될 수 있으며, 루트 자원의 타입은 <CSEBase>로 표현된다. 따라서, <CSEBase> 자원 타입은 공통 서비스 엔티티(CSE)가 있는 경우에는 반드시 존재해야 한다.
도 6은Mca 및 Mcc 레퍼런스 포인트들 상의 일반적인 통신 플로우를 도시한다. M2M 시스템의 동작은 데이터 교환을 기반으로 수행된다. 예를 들어, 제1장치가 제2장치의 특정 동작을 멈추기 위한 명령을 전송 또는 수행하기 위해서 상기 제1장치는 해당 명령을 데이터 형태로 상기 제2장치에 전달해야한다. M2M시스템에서는 어플리케이션(또는 CSE)와 CSE간의 연결에서 요청 및 응답 메시지들로 데이터를 교환할 수 있다.
요청(Request) 메시지에는 다음과 같은 정보가 포함된다.
·Operation: 실행될 동작의 형태 (Create/Retrieve/Update/Delete/Notify 중 택일)
·To: 요청을 수신할 엔티티의 ID(즉, 수신자의 ID)
·From: 요청을 생성한 발신자의 ID
·Request Identifier: 요청 메시지의 ID(요청 메시지를 구분하기 위해 사용되는 ID)
·Group Request Identifier 파라미터 (중복되는 그룹 팬-아웃 요청 메시지를 방지하기 위한 식별자)
·Content: 전달되는 자원의 내용
응답(Response) 메시지에는 다음과 같은 정보가 포함된다. 우선 해당 요청 메시지가 성공적으로 처리된 경우에는, 상기 응답 메시지는
·To: 요청을 생성한 발신자의 ID
·From: 요청을 수신한 수신자의 ID
·Request Identifier: 요청 메시지의 ID(요청 메시지를 구분하기 위해 사용되는 ID)
·Result status code: 요청의 처리 결과 (예를 들어, Okay, Okay and Done, Okay and in progress)
·Content: 전달되는 자원의 내용 (결과값만 전달될 수 있음)
를 포함하고, 요청 메시지의 처리가 실패한 경우 상기 응답 메시지는
·To: 요청을 생성한 발신자의 ID
·From: 요청을 수신한 수신자의 ID
·Request Identifier: 요청 메시지의 ID(요청 메시지를 구분하기 위해 사용되는 ID)
·result status code: 요청의 처리 결과 및 실패 원인/코드 (예를 들어, Not Okay)
를 포함할 수 있다.
한편, 다음의 표와 같은 다양한 자원 타입이 존재한다.
표 1
Resource Type Short Description Child Resource Types Parent Resource Types
AE AE에 관한 정보를 저장한다. 등록담당자 CSE와 AE의 성공적인 등록의 결과로서 생성된다)Stores information about the AE. It is created as a result of successful registration of an AE with the registrar CSE). subscription, container, group, accessControlPolicy, mgmtObj, commCapabilities, pollingChannel remoteCSE, CSEBase
cmdhNwAccessRule 네트워크의 사용을 위한 규칙을 정의한다(Defines a rule for the usage of underlying networks). schedulesubscription cmdhNetworkAccessRules
CSEBase 해당 CSE 상에 존재하는 모든 자원들을 위한 구조적인 뿌리(root)이다. 해당 CSE 자체에 관한 정보를 저장해야 한다(The structural root for all the resources that are residing on a CSE. It shall store information about the CSE itself). remoteCSE, node, application, container, group, accessControlPolicy, subscription, mgmtObj, mgmtCmd, locationPolicy, statsConfig None
group 그룹으로 처리될 필요가 있는 동일한 타입의 자원에 관한 정보를 저장한다. 그룹 자원에 대한 동작은 해당 그룹에 속한 모든 멤버들을 위한 벌크 모드로 수행되어야 한다(Stores information about resources of the same type that need to be addressed as a Group. Operations addressed to a Group resource shall be executed in a bulk mode for all members belonging to the Group). fanOutPointsubscription Application, remoteCSE, CSEBase
locationPolicy 지리적 위치를 획득하고 관리하기 위한 정보를 포함한다. 오직 컨테이너로부터 지칭되며 해당 컨테이너의 contentInstances가 위치 정보를 제공한다(Includes information to obtain and manage geographical location. It is only referred from container, the contentInstances of the container provides location information). subscription CSEBase
remoteCSE CSEBase 자원에 의해 식별되는 등록담당자 CSE와 등록 절차를 한 원격 CSE를 나타낸다(Represents a remote CSE for which there has been a registration procedure with the registrar CSE identified by the CSEBase resource). application, container, group, accessControlPolicy, subscription, mgmtObj, pollingChannel, node CSEBase
subscription 자원과 관련된 구독 정보를 나타낸다. 이러한 자원은 subscribe-to 자원을 위한 자녀 자원이다(Subscription resource represents the subscription information related to a resource. Such a resource shall be a child resource for the subscribe-to resource). schedule accessControlPolicy, application, cmdhBuffer, cmdhDefaults, cmdhEcDefParamValues, cmdhDefEcValue, cmdhLimits, cmdhNetworkAccessRules, cmdhNwAccessRule, cmdhPolicy, container, CSEBase, delivery, eventConfig, execInstance, group, contentInstance, locationPolicy, mgmtCmd, mgmtObj, m2mServiceSubscription, node, nodeInfo, parameters, remoteCSE, request, schedule, statsCollect, statsConfig
container 엔티티들 사이에서 데이터 인스턴스들을 공유함. AE들 또는 CSE들 사이에서 “데이터”를 교환하기 위한 데이터를 버퍼링에 책임이 있는 중재자로서 사용됨(Shares data instances among entities. Used as a mediator that takes care of buffering the data to exchange "data" between AEs and/or CSEs). container, contentInstance, subscription application, container, remoteCSE, CSEBase
contentInstance 상기 container 자원에 존재하는 데이터 인스턴스들을 나타낸다(Represents a data instance in the container resource). subscription container
각 자원 타입은 해당 자원 타입의 부모 자원 타입(Parent Resource Type) 아래 위치할 수 있으며, 자녀 자원 타입(Child Resource Type)을 가질 수도 있다. 또한 각각의 자원 타입은 속성(Attribute)들을 가지며, 속성에 실제 값들이 저장된다.
다음으로 아래 표 2은 <container> 자원 타입의 속성(Attribute)들을 정의한 것이다. 실제 값들이 저장되는 속성은 Multiplicity를 통하여 반드시 설정(‘1’)되거나, 선택적으로 설정(‘0..1’)될 수 있다. 또한 해당 속성들은 생성시 특성에 따라 RO(Read Only), RW(Read and Write), WO(Write Only)와 같이 설정된다. 한편, 표 1에 나타낸 것처럼, <container> 자원은 자녀 자원으로서 <container>, <contentInstance> 및 <subscription>를 가질 수 있다.
표 2
Attributes of <container> Multiplicity RW/RO/WO Description
resourceType 1 RO 자원 타입. 이는 한번 쓰여지며(특정 시간 이후 변경될 수 없음)자원들의 타입을 식별한다. 각각의 자원은 자원 타입 속성을 갖는다(Resource Type. This Write Once (at creation time then cannot be changed) resourceType attribute identifies the type of resources. Each resource shall have a resourceType attribute.)
resourceID 1 RO 이 속성은 ‘비-계층적 URI 방법’ 또는 ‘ID 기반 방법’ 경우를 위해 사용되는 자원을 위한 식별자이다. 이 속성은 호스팅 CSE가 자원 생성 절차를 수락하는 경우에 상기 호스팅 CSE에 의해 제공된다. 상기 호스팅 CSE는 고유한 자원 ID를 할당한다(This attribute is an identifier for resource that is used for ‘non-hierarchical URI method’ or ‘IDs based method’ cases. This attribute shall be provided by the Hosting CSE when it accepts a resource creation procedure. The Hosting CSE shall assign a resourceID which is unique in the CSE).
parentID 1 RO 시스템은 생성(CREATE) 요청에서 주어진 파라미터들에 따라 이 속성에 값을 할당한다. 이 자녀 자원의 부모의 식별자에 의해 부모-자녀 관계가 성립된다. 이러한 식별자는 비-계층적 URI 표현 방법을 사용한다. 예를 들어, 자원 “…//example.com/oneM2M/myCSE” 하위에 생성된 식별자 “myAE1”를 갖는 AE 자원의 부모ID의 값은 “…//parentID”를 포함한다(The system shall assign the value to this attribute according to the parameters given in the CREATE Request.It establishes the parent-child relationship by identification of the parent of this child resource. Such identifier shall use the non-hierarchical URI representation. For example, an AE resource with the identifier "myAE1" which has been created under the resource "…//example.com/oneM2M/myCSE", the value of the parentID attribute will contain "…//parentID".)
expirationTime 1 RW 호스팅 CSE에 의해 자원이 지워질 시간/날짜. 이 속성은 발신자(originator)에 의해 제공될 수 있고, 이러한 경우에 자원의 수명(lifetime)에 대한 호스트 CSE에 대한 힌트(hint)로 여겨진다. 상기 호스팅 CSE는 그러나 실제 만료 시간에 대해 결정할 수 있다. 만약 상기 호스팅 CSE가 만료 시간 속성 값을 변경하고자 결정하면, 이는 상기 발신자에게 알려진다. 상기 자원의 수명은 갱신(UPDATE) 동작에서 이 속성에 대한 새 값을 제공함으로써 연장될 수 있다. 또는 상기 속성 값을 삭제함으로써, 예컨대 상기 호스팅 CSE가 새 값을 결정할 수 있는 전체 갱신을 하는 경우에 상기 속성을 제공하지 않음으로써, 상기 자원의 수명은 연장될 수 있다. 이 속성은 필수 속성이다. 만약 상기 발신자가 생성(CREATE) 동작에서 값을 제공하지 않으면, 시스템이 로컬 정책 및/또는 M2M 서비스 구독 협의에 따라 적절한 값을 할당한다(Time/date after which the resource will be deleted by the hosting CSE. This attribute can be provided by the Originator, and in such a case it will be regarded as a hint to the hosting CSE on the lifetime of the resource. The hosting CSE can however decide on the real expirationTime. If the hosting CSE decides to change the expirationTime attribute value, this is communicated back to the Originator.The lifetime of the resource can be extended by providing a new value for this attribute in an UPDATE operation. Or by deleting the attribute value, e.g. by not providing the attribute when doing a full UPDATE, in which case the hosting CSE can decide on a new value.This attribute shall be mandatory. If the Originator does not provide a value in the CREATE operation the system shall assign an appropriate value depending on its local policies and/or M2M service subscription agreements).
accessControlPolicyIDs 0..1(L) RW 이 속성은 <accessControlPolicy> 자원의 식별자(로컬 자원이 존재하는지 여부에 따라 ID 또는 URI임)의 리스트를 포함한다. 참조된 <accessControlPolicy> 자원에서 정의된 권한들은 누가 특정 목적(예컨대, 검색(Retrieve), 갱신, 삭제(Delete) 등)을 위해 이 속성을 포함하는 자원에 접근하도록 허용되는지를 결정한다(The attribute contains a list of identifiers (either an ID or a URI depending if it is a local resource or not) of an <accessControlPolicy> resource. The privileges defined in the <accessControlPolicy> resource that are referenced determine who is allowed to access the resource containing this attribute for a specific purpose (e.g. Retrieve, Update, Delete, etc.)).
labels 0..1 WR 자원들을 발견하기 위한 키(key)들로서 사용되는 토큰들. 이 속성은 선택 속성이며 만약 존재하지 않으면 상기 자원이 상기 발견의 키 파라미터로서 이 속성을 사용하는 발견 절차를 통해 발견될 수 없음을 의미한다(Tokens used as keys for discovering resources.This attribute is optional and if not present it means that the resource cannot be found by means of discovery procedure which uses labels as key parameter of the discovery).
creationTime 1 RO 상기 자원의 생성 시간/날짜.이 속성은 모든 자원들에 대해 필수 속성이며 상기 값은 자원이 국부적으로 생성되는 경우에 시스템에 의해 할당된다. 이러한 속성은 변경될 수 없다(Time/date of creation of the resource.This attribute is mandatory for all resources and the value is assigned by the system at the time when the resource is locally created. Such an attribute cannot be changed.)
creator 0..1 RO 상기 <container> 자원을 생성한 AE-ID 또는 CSE-ID(The AE-ID or CSE-ID of the entity which created the resource).
lastModifiedTime 1 RO 상기 자원의 마지막으로 변경된 시간/날짜.이 속성은 필수 속성이며 해당 값은 타깃 자원이 갱신 동작을 통해 변경될 때마다 시스템에 의해 자동으로 할당된다(Last modification time/date of the resource.This attribute shall be mandatory and its value is assigned automatically by the system each time that the addressed target resource is modified by means of the UPDATE operation.)
stateTag 1 RO 자원에 대한 변경의 회수를 새는 카운터(counter). 자원이 생성되면, 이 카운터는 0으로 설정되고, 매 자원의 변경시에 따라 증가됨. 새로운 인스턴스가 부모 자원에 추가되면, 상기 부모 자원의 stateTag 속성이 먼저 증가되고 이 stateTag 속성에 복사되어야 한다 (An incremental counter of modification on the resource. When a resource is created, this counter is set to 0, and it will be incremented on every modification of the resource. The stateTag attribute of the parent resource should be incremented first and copied into this stateTag attribute when a new instance is added to the parent resource).
announceTo 0..1 RW 이 속성은 생성 또는 갱신 요청이 생성/갱신된 자원이 어나운스될 URI들/CSE-ID들의 리스트를 포함하는 경우에 상기 생성 또는 갱신 요청에 포함될 수 있다. 이 속성은 원 자원이 성공적으로 다른 CSE들에게 어나운스되면 상기 원 자원에 대해서만 존재한다. 이 속성은 성공적으로 어나운스된 자원들로의 URI들의 리스트를 유지한다. 이 속성에 대한 갱신들은 새로운 자원 어나운스 또는 어나운스 해제를 트리거할 것이다(This attribute may be included in a CREATE or UPDATE Request in which case it contains a list of URIs/CSE-IDs which the resource being created/updated shall be announced to.This attribute shall only be present on the original resource if it has been successfully announced to other CSEs. This attribute maintains the list of URIs to the successfully announced resources. Updates on this attribute will trigger new resource announcement or de-announcement).
announcedAttribute 0..1 RW 이 속성은 몇몇 선택적 어나운스(OA)된 타입 속성들이 다른 CSE들로 어나운스된 경우 원 자원에 대해서만 존재한다. 이 속성은 원 자원에서 어나운스된 선택적 속성들(OA 타입 속성들)의 리스트를 유지한다. 이 속성에 대한 갱신은 만약 새로운 속성이 추가되는 경우 새로운 속성 어나운스 또는 존재하는 속성이 제거되는 경우 어나운스 해제를 트리거할 것이다(This attributes shall only be present on the original resource if some Optional Announced (OA) type attributes have been announced to other CSEs. This attribute maintains the list of the announced Optional Attributes (OA type attributes) in the original resource. Updates to this attribute will trigger new attribute announcement if a new attribute is added or de-announcement if the existing attribute is removed.)
maxNrOfInstances 0..1 RW <contentInstance> 자녀 자원들의 최대 인스턴스의 수(Maximum number of instances of <contentInstance> child resources).
maxByteSize 0..1 RW <container> 자원에 있는 모든 인스턴스들을 위한 상기 <container> 자원을 위해 할당된 최대 바이트 수(Maximum number of bytes that are allocated for a <container> resource for all instances in the <container> resource).
maxInstanceAge 0..1 RW <container> 내의 <containerInstance> 자원들의 인스턴스의 최대 나이(age). 해당 값은 초로 표현됨(Maximum age of the instances of <contentInstance> resources within the <container>. The value is expressed in seconds).
currentNrOfInstances 1 RO <container> 자원에 현재 있는 컨텐트 인스턴스의 수. maxNrOfInstances에 의해 제한됨(Current number of instances in a <container> resource. It is limited by the maxNrOfInstances).
currentByteSize 1 RO <container> 자원에 저장된 데이터의 바이트로 표현되는 현재 크기. maxNrOfBytes에 의해 제한됨(Current size in bytes of data stored in a <container> resource. It is limited by the maxNrOfBytes).
latest 0..1 RO 존재하는 경우, 최근 <contentInstance> 자원에 대한 참조(Reference to latest <contentInstance> resource, when present).
locationID 0..1 RW 어떻게 위치 정보가 획득되고 관리되는지를 정의하는 속성들/정책들이 있는 자원의 URI. 이 속성은 <container> 자원이 위치 정보를 포함하기 위해 사용되는 경우에만 정의됨(URI of the resource where the attributes/policies that define how location information are obtained and managed. This attribute is defined only when the <container> resource is used for containing location information).
ontologyRef 0..1 RW 상기 AE에 의해 관리되고 이해되는 정보를 나타내기 위해 사용되는 온톨로지(ontology)의 URI(A URI of the ontology used to represent the information that is managed and understood by the AE).여기서, 온톨로지는 다루고자하는 도메인에서 사용되는 용어들을 정의하고 그들 사이의 관계를 정의하는 명세를 지칭한다.
다음 표는 <AE> 리소스의 속성을 정의한다.
표 3
Attributes of <AE> Multiplicity RW/RO/WO Description
resourceType 1 RO 표 2 참조
parentID 1 RO 표 2 참조
expirationTime 1 RW 표 2 참조
accessControlPolicyIDs 0..1(L) RW 표 2 참조
labels 0..1 RO 표 2 참조
creationTime 1 RW 표 2 참조
lastModifiedTime 1 RO 표 2 참조
announceTo 0..1 RW 표 2 참조
announcedAttribute 0..1 RW 표 2 참조
appName 0..1 RW 애플리케이션 개발자에 의해 선언된 상기 애플리케이션의 이름(The name of the application, as declared by the application developer(e.g. "HeatingMonitoring"))
App-ID 1 WO 상기 애플리케이션의 식별자(The identifier of the Application)
AE-ID 1 RO 상기 애플리케이션 엔티티의 식별자(The identifier of the Application Entity)
PointOfAccess 0..1(L) RW 기저 네트워크에 의해 제공되는 전달 서비스들을 통해 Mca 레퍼런스 포인트를 통해 등록된 애플리케이션 엔티티와 통신하기 위한 주소들의 리스트(예컨대, IP 주소, FQDN, URI). 이 속성은 상기 AE 및 호스팅 CSE에 의해서만 접근된다. 만약 이 정보가 제공되지 않으면, 상기 AE는 <pollingchannel>을 사용해야한다. 그리고나서, 상기 호스팅 CSE는 PoA를 사용하지 않고 상기 AE로 요청을 전달할 수 있다(The list of addresses for communicating with the registered Application Entity over Mca reference point via the transport services provided by Underlying Network (e.g. IP address, FQDN, URI). This attribute shall be accessible only by the AE and the Hosting CSE.If this information is not provided, the AE should use <pollingChannel> resource. Then the Hosting CSE can forward a request to the AE without using the PoA.)
ontologyRef 0..1 RW 표 2 참조
nodeLink 0..1 RO 상기 노드 특정 정보를 저장하는 <node>리소스의 URI(A URI of a <node> resource that stores the node specific information).
consecutiveRequestSupport 0..1 RW 장치의 물리적인 상태 특성을 나타내는 속성으로 장치가 연속적인 Request에도 정상적인 동작이 가능한지를 명세 또는 외부의 연속적인 Request로 인하여 오동작할 수 있는 경우(화재)에도 해당 값을 FALSE로 설정함
자원 접근 제어 정책
접근 제어 정책은 “화이트 리스트(white list)” 또는 권한(privileges)으로 정의되며, 각각의 권한은 특정 접근 모드들에 대한 “허용된” 엔티티들을 정의한다. 권한들의 집합들은 권한 그룹을 위한 권한들이 개별 권한들의 총합(sum)이 되도록 다루어지며, 즉, 상기 집합 내 몇몇/임의의 권한들에 의해 허용되면 그 동작(action)이 허용된다. selfPrivilege 속성은 자원 <accessControlPolicy> 그 자체를 위한 읽기/갱신/삭제(Read/Update/Delete)에 대한 권리를 갖는 엔티티들을 열거한다.
또한, 접근 제어 정책에서 정의된 모든 권한들은 위치, 타임 윈도우 및 IP 어드레스와 또한 관련된다.
자원 상의 accessControlPolicyID 속성을 설정함으로써, 해당 자원에 접근하기 위한 권한들이 <accessControlPolicy> 자원에서 정의되는 권한들에 의해 정의된다.
도 7은 <accessControlPolicy> 자원의 구조를 도시한다. 다음의 표는 <accessControlPolicy> 자원의 속성을 나타낸다.
표 4
Attribute Name of <accessControlPolicy> Multiplicity RW/RO/WO Description
resourceType (rT) 1 RO 표 2 참조
parentID (pID) 1 RO 표 2 참조
expirationTime (eT) 1 RW 표 2 참조
labels (lBs) 0..1 RW 표 2 참조
creationTime (cT) 1 RO 표 2 참조
lastModifiedTime (lMT) 1 RO 표 2 참조
link 1 WO 이 속성은 어나운스된 자원에만 존재한다. 이 속성은 원래의 자원에 대한 링크(URI)를 제공한다. 이 속성은 <accessControlPolicyAnnc> 자원만을 위한 것이다.(This attribute shall be present only on the announced resource. This attribute shall provide the link (URI) to the original resource. This is only for <accessControlPolicyAnnc>.)
announceTo 1 RW 표 2 참조
announcedAttribute 1 RW 이 속성은 몇몇 OA 타입 속성들이 다른 CSE들에게 어나운스된 경우에 원래의 자원 상에 존재한다. 이 속성은 원래의 자원에서 어나운스된 OA 타입 속성들의 리스트를 유지한다. 이 속성에 대한 업데이트는 만약 새로운 속성이 추가, 디-어나운스되거나 존재하는 속성이 제거되면 새로운 속성 어나운스를 트리거할 것이다. (This attributes shall only be present on the original resource if some Optional Announced (OA) type attributes have been announced to other CSEs. This attribute maintains the list of the announced Optional Attributes (OA type attributes) in the original resource. Updates to this attribute will trigger new attribute announcement if a new attribute is added or de-announcement if the existing attribute is removed.)
privileges (ps) 1 RW 이 <accessControlPolicy> 자원에 의해 정의된 권한들의 리스트. 이 권한들은 accessControlPolicy 속성을 사용하여 이 <accessControlPolicy> 자원을 참조하는 자원들에 적용된다.(The list of privileges defined by this <accessControlPolicy> resource. These privileges are applied to resources referencing this <accessControlPolicy> resource using the accessControlPolicyID attribute.)
selfPrivileges (sP) 1 RW <accessControlPolicy>자원 자체를 위한 권한들의 리스트를 정의.(Defines the list of privileges for the <accessControlPolicy> resource itself.)
권한들은 동작들(접근을 승인하는 것일 수 있으나, 좀더 상세하게는 서브셋에 대한 접근을 승인, 즉 데이터의 부분을 필터링하는 것과 같은 것일 수 있음)에 일반화(generalize)될 수 있다. 권한들은 요청자(발신자, requestor)의 식별자, 특정된 식별자를 제외한 모두와 같은 것을 포함할 수 있는, 조건들로 일반화될 수 있으나, 시간 기반 조건들을 또한 포함할 수 있을 것이다.
접근 제어 정책에 기반한 접근 승인 메커니즘은 <accessControlPolicy> 자원에 저장된 발신자와 발신자의 권한을 매칭함으로써 동작한다. 긍정적인 매치가 발견되면 요청된 동작(예컨대, RETRIEVE)이 매칭 권한 소유자와 연관된 허용된 동작들의 집합을 이용하여 체크되며; 만약 이 체크가 실패하면 상기 요청은 거절된다. 이러한 집합이 권한 플래그로 지칭된다.
셀프 권한들 및 권한들은 <accessControlPolicy> 자원 그 자체 그리고 <accessControlPolicy> 자원 및 accessControlPolicyID 공통 속성을 어드레싱(address)하는 모든 다른 자원 타입들에 각각 적용되는 권한 플래그들과 연관되는 발신자 권한의 리스트들이다.
접근 제어 정책에서 정의된 모든 권한들은 또한 접근 승인 전에 위치, 시간 윈도우 및 IP 어드레스와 관련된다.
셀프 권한들 및 권한들 내 각각의 권한은 또한 하나의 역할로 구성될 수 있다. 이러한 역할은 역할 이름 및 그 역할이 정의된 M2M 서비스 구독 자원을 어드레싱하는 URL에 의해 식별된다. 발신자가 특정 역할로 그 자신을 나타내는 경우, 접근 제어 정책은 M2M 서비스 구독 자원에서 명시된 특정 역할에 속하는 리스트들과 요청 발신자를 매칭함으로써 동작한다.
권한들 및 셀프 권한들 리스트에서 각각의 권한은 다음의 엘리먼트들로 구성된다.
표 5
Name Description
originatorPrivileges 표 5 참조
contexts 표 6 참조
operationFlags 표 7 참조
상기 originatorPrivileges는 아래의 표와 같은 정보를 포함한다.
표 6
Name Description
Domain FQDN 도메인(FQDN domain)
originator identifier 발신자 신원을 나타내는 CSE ID 또는 AE ID(CSE ID or AE ID which represent a originator identity)
Token 질의 파라미터로서 보통 제공되는 접근 토큰(Access token usually provided as query parameter)
All 모든 발신자들(All originators)
Role A role name associated with the URL the a Service Subscription resource where such role is defined
표 5의 contexts는다음의 표와 같은 정보를 포함한다.
표 7
Name Description
Context 현재 접근 제어 정책 자원의 모든 권한들이 적용되는 환경, 예컨대, 타임 윈도우, 위치, IP 주소를 정의함.(Defines the context in which every privileges of the present access control policy resource applies, e.g. time windows, location, IP address.)
표 5의 operationFlags는 다음의 표와 같은 정보를 포함한다.
표 8
Name Description
RETRIEVE 해당 리소스의 내용을 검색할 권한(Privilege to retrieve the content of an addressed resource)
CREATE 자녀 자원을 생성할 권한(Privilege to create a child resource)
UPDATE 해당 자원의 내용을 갱신할 권한(Privilege to update the content of an addressed resource)
DELETE 해당 자원을 삭제할 권한(Privilege to delete an addressed resource)
DISCOVER 해당 자원을 발견할 권한(Privilege to discover the resource)
NOTIFY 통지를 수신할 권한(Privilege to receive a notification)
M2M 통신 시스템에서는 접근 제어 정책 자원을 접근 제어 정책이 적용된 자원과 분리하여 저장하도록 한다. 접근 제어 정책이 적용된 자원은 접근 제어 정책 자원의 AccessRightID(접근 제어 정책 자원의 URI)만을 가지고 있다. 그러므로, M2M 엔티티가 특정 자원의 접근 제어 정책을 확인하려면 AccessRightID를 참조해야한다.
엔티티 등록(Entity Registration)
M2M 엔티티는 필드 도메인에 있든 인프라스트럭쳐 도메인에 있든 자기 주변의 엔티티와 등록(Registration) 과정을 수행하여 시스템/서비스를 이용할 준비를 마친다. 이러한 등록은 등록대상자(Registree)의 요청에 의해 동작이 수행되며 결과로써 일반적으로 등록대상자의 정보를 등록담당자(Registrar)에 저장한다.
이러한 등록 과정이 끝난 후 비로서 oneM2M 엔티티는 도 3과 같이 CSE가 제공하는 공통 기능들을 이용해서 M2M 서비스를 이용할 수 있다.
oneM2M 엔티티에는 AE와 CSE가 있고, 이에 따라 상기 등록 과정은 AE 등록과 CSE 등록으로 나눌 수 있으며, 이 때 AE와 CSE는 모두 등록대상자를 의미하고 등록담당자는 CSE이다. CSE 등록의 경우 추가적으로 등록담당자 CSE의 정보를 등록대상자 CSE에도 저장한다.
도 8은 AE 등록 과정과 CSE 등록 과정을 도시한다. 도 8의 (a)은 AE 등록 과정을 도시하며, 등록하고자 하는 AE1은 등록담당자인 CSE1에게 <AE> 생성 요청을 하며(S81-1), 이에 CSE1은 상기 AE1의 정보를 이용하여 <AE> 자원을 생성할 수 있다(S82-2). 그리고나서, CSE1은 상기 등록 과정에 대한 결과를 포함한 응답을 AE1에게 전송할 수 있다(S83-2).
도 8의 (b)는 CSE 등록 과정을 도시한다. 도 8의 (b)는 등록하고자 하는 주체가 CSE1이고 등록담당자가 CSE2인 것과 CSE2가 CSE1의 등록 요청에 대한 결과를 전송(S83-2)하면, CSE1은 CSE2의 정보를 이용하여 <remoteCSE> 자원을 생성(S84-2)하는 것만 제외하고는 도 8의 (a)와 동일하다.
구독(subscription) 자원 타입
<subscription> 자원은 그 자원이 구독된 자원(its subscribed-to resource)에 대한 구독 정보를 포함한다. <subscription> 자원은 그 자원이 구독된 자원의 자녀 자원이다. 따라서, <subscription> 자원은 구독된 자원의 자녀 자원으로서 표현된다. 예컨대, <container> 자원은 자녀 자원으로서 <subscription> 자원을 갖는다. <subscription> 자원은 구독된 부모 자원이 삭제될 때 삭제된다.
<subscription> 자원은 구독된 자원에 대한 구독을 나타낸다. 발신자는 상기 발신자가 상기 구독된 자원에 대해 RETRIEVE 권한(privilege)을 가질 때, <subscription> 자원 타입의 자원을 생성할 수 있다. <subscription> 자원을 생성한 발신자는 자원 구독자가 된다.
각각의 <subscription> 자원은 어떤 통지가, 언제 그리고 어떻게 전송되는지를 특정하는 통지 정책을 포함할 수 있다. 이 통지 정책들은 CMDH 정책 들과 결합하여 동작할 수 있다.
<subscription> 자원이 삭제되면, 통지 요청은 상기 발신자에 의해 제공된 subscriberURI로 전송되어야 한다.
<subscription> 자원은 자녀 자원을 가지며, 그 이름은 notificationSchedule이고 <schedule> 자원 타입이다. <subscription> 자원 문맥하에서, 상기 notificationSchedule 자원은 언제 통지가 호스팅 CSE에 의해 notificationURI(s)로 전송될 수 있는지를 특정한다.
<subscription> 자원에 특정한 속성은 다음과 같다. 아래 표의 속성은 <subscription> 자원의 일부 속성만을 열거한 것이다.
표 9
<subscription>의 속성들 Multiplicity RW/RO/WO Description
accessControlPolicyIDs 0..1(L) RW 표 2 참조.accessControlPolicyID들이 생성할 시점에 주어지지 않으면, 부모 자원의 accessControlPolicies는 이 속성에 연결된다.(If no accessControlPolicyIDs is given at the time of creation, the accesControlPolicies of the parent resource is linked to this attribute.)
eventNotificationCriteria 0..1(L) RW 이 속성은 통지가 생성될 이벤트 기준을 지시한다.(This notification policy indicates the event criteria for which a notification is to be generated.)
expirationCounter 0..1 RW 이 속성은 가입자가 이 구독의 지속기간을 최대 수의 통지들의 제한으로 설정하기를 원함을 지시한다. 전송된 통지들의 수가 이 카운터의 최대치에 도달하면, 다른 정책과 관계없이 <subscription> 자원은 삭제된다. (This notification policy indicates that the subscriber wants to set the life of this subscription to a limit of a maximum number of notifications. When the number of notifications sent reaches the count of this counter, the <subscription> resource shall be deleted, regardless of any other policy.)
notificationURI 1(L) RW 자원 구독자가 통지들을 수신할 URI(들)의 리스트. 이 리스트 내 URI(들)은 자원 구독자 엔티티를 나타내지 않을 수 있다. 그룹-관련 구독을 위해, notificationURI는 통지들을 수신할 그룹 호스팅 CSE에 의해 생성되는 URI이다. 이 경우, 자원 구독자 통지 URI는 notificationForwardingURI에 포함되어야 한다. (List of URI(s) where the resource subscriber will receive notifications. This list of URI(s) may not represent the resource subscriber entity. For a group-related subscription, the notificationURI shall be the URI that is generated by the group Hosting CSE to receive notifications. In this case, the resource subscriber notification URI shall be included in the notificationForwardingURI.)
gourpName 0..1 RW 구독이 그룹을 통해 만들어지는 경우, <group> 자원의 URI.(The URI of a <group> resource in case the subscription is made through a group.)
notificationForwardingURI 0..1 RW 이 속성은 오직 그룹 관련 구독을 위해서만 존재하는 전달 속성이다. 자원 구독자 통지 URI를 나타낸다. 집성된 통지들을 전달하기 위해 그룹 호스팅 CSE에 의해 사용된다. (The attribute is a forwarding attribute that shall be present only for group related subscriptions. It represents the resource subscriber notification URI. It shall be used by group Hosting CSE for forwarding aggregated notifications.)
batchNotify 0..1 RW 이 속성은 구독자가 통지들의 뱃치들을 각각 수신하는 것 대신 한번에 수신하기를 원함을 지시한다. 이 속성은 구독자의 통지 정책을 표현하고, 두 개의 값들을 가질 수 있다: 배달을 위해 뱃치될 통지들의 수와 지속 기간. 둘 중 하나의 값이 설정되면, 특정된 수의 통지들이 뱃치될 때까지 또는 첫번째 통지가 생성된 이후에 시작한 지속기간이 만료될 때까지 통지 이벤트들은 임시로 저장된다. 어떤 뱃치된 통지들이 전송되는지를 따라간다. 만약 batchNotify가 latestNotify와 동시에 사용되면, 오직 가장 늦은 통지가 전송되고 ec는 “latest”로 설정된다.(This notification policy indicates that the subscriber wants to receive batches of notifications rather than receiving them one at a time. This attribute expresses the subscriber’s notification policy and may include two values: the number of notifications to be batched for delivery and a duration. When either value is set, notification events are temporarily stored until either the specified number of notifications have been batched, or, until a duration which starts after the first notification was generated has expired. Following which the batched notifications are sent. If batchNotify is used simultaneously with latestNotify, only the latest notification shall be sent and have the ec set to “latest”.)
rateLimit 0..1 RW 이 속성은 구독자가 자신이 통지들을 수신할 레이트를 제한하고자 함을 지시한다. 이 속성은 구독자의 통지 정책을 표현하고 두 개의 값을 포함한다: 특정 지속 기간 동안 전송될 수 있는 이벤트들의 최대 수, 그리고 rateLimit 윈도우 지속 기간. ratelimit 윈도우 지속 기간 내 생성된 통지들의 수가 최대 수를 초과하면, 상기 윈도우 지속 기간의 종료까지 통지 이벤트들은 임시 저장되고, 통지 이벤트의 전송은 다음 윈도우 지속 기간에 재시작된다. 통지 이벤트들의 전송은 윈도우 지속 시간 동안 통지 이벤트들의 최대 수가 초과되지 않는 한 계속된다. rateLimit 정책은 다른 통지 정책들과 통시에 사용될 수 있다.(This notification policy indicates that the subscriber wants to limit the rate at which it receives notifications. This attribute expresses the subscriber’s notification policy and includes two values: a maximum number of events that may be sent within some duration, and the rateLimit window duration. When the number of generated notifications within the ratelimit window duration exceeds the maximum number, notification events are temporarily stored, until the end of the window duration, when the sending of notification events restarts in the next window duration. The sending of notification events continues as long as the maximum number of notification events is not exceeded during the window duration. The ratelimit policy may be used simultaneously with other notification policies.)
preSubscriptionNotify 0..1 WO 이 속성은 구독자가 이 구독의 생성 전에 생성된 이벤트들을 위한 통지들이 전송되기를 원함을 지시한다. 이 속성은 요청된 이전에 통지 이벤트들의 수의 값을 갖는다. 만약 유지된 이벤트들의 업-투-데이트(up-to-date) 캐슁이 호스팅 CSE에서 지원되고 구독된 이벤트들을 포함하면, 이전의 통지 이벤트들은 요청된 수까지 전송될 것이다. preSubscriptionNotify 정책은 다른 통지 정책과 동시에 사용될 수 있다. (This notification policy indicates that the subscriber wants to be sent notifications for events that were generated prior to the creation of this subscription. This attribute has a value of the number of prior notification events requested. If up-to-date caching of retained events is supported on the Hosting CSE and contains the subscribed events then prior notification events will be sent up to the number requested. The preSubscriptionNotify policy may be used simultaneously with any other notification policy.)
pendingNotification 0..1 RW 이 속성은 접속 기간으로 인해 발생된 미싱된 통지들을 (도달가능성 및 통지 스케줄들에 따라) 어떻게 처리할 것인지를 지시한다 . pendingNotification의 가능한 값들은:"sendLatest"와 "sendAllPending"을 포함한다. 이 정책은 호스팅된 CSE 상의 보유된 통지들의 캐싱에 의존한다. 이 속성이 설정되면, 오직 마지막 통지가 전송되어야 하고 그 마지막 통지는 "latest"로 설정된 ec를 갖는다. 만약 이 속성이 없으면, 호스팅 CSE는 미싱된 통지를 전송하지 않는다. 이 정책은 선택된 배달 정책(배칭, latestNotification 등)과 관계없이 모든 통지들에 적용된다. 스케줄링이 아닌 이유들로 인한 도달불가능함은 이 정책에 의해 커버되지 않는다.(This notification policy, if set, indicates how missed notifications due to a period of connectivity (according to the reachability and notification schedules). The possible values for pendingNotification are: ·“sendLatest” ·“sendAllPending” This policy depends upon caching of retained notifications on the hosted CSE. When this attribute is set, only the last notification shall be sent and it shall have the ec set to “latest”. If this attribute is not present, the Hosting CSE sends no missed notifications. This policy applies to all notifications regardless of the selected delivery policy (batching, latestNotification, etc..) Note that unreachability due to reasons other than scheduling is not covered by this policy. )
notificationStoragePriority 0..1 RW 이 속성은 구독자가 동일한 구독자에 속한 다른 구독들에 대한 이 구독을 위한 우선순위를 설정하고자 함을 지시한다. 이 속성은 우선순위 범위 내의 수로 설정된다. 통지들의 저장소가 할당된 크기를 초과하면, 이 정책은 어떤 저장된 그리고 생성된 통지들을 드롭할지 그리고 보유할지를 결정하기 위해 저장 정체 정책을 포함한 입력으로서 사용된다. (Indicates that the subscriber wants to set a priority for this subscription relative to other subscriptions belonging to this same subscriber. This attribute sets a number within the priority range. When storage of notifications exceeds the allocated size, this policy is used as an input with the storage congestion policy to determine which stored and generated notifications to drop and which ones to retain.)
latestNotify 0..1 RW 이 통지 정책은 구독자가 마지막 통지만을 원하는지 여부를 지시한다. 만약 이 구독의 복수개의 통지들이 버퍼링되고, 그리고 이 속성의 값이 트루(true)로 설정되면, 오직 마지막 통지가 전송되고 "latest"로 설정된 ec 값을 가질 것이다. (This notification policy indicates if the subscriber wants only the latest notification. If multiple notifications of this subscription are buffered, and if the value of this attribute is set to true, then only the last notification shall be sent and it shall have the ec value set to “latest”.)
notificationContentType 1 RW 통지들에 포함될 통지 내용 타입을 지시함. 허용된 값들은: 변형된 속성들, 전체 자원, 선택적으로 이 구독 자원에 대한 참조.(Indicates a notification content type that shall be contained in notifications. The allowed values are: . ·modified attributes only ·whole resource ·optionally the reference to this subscription resource.)
notificationEventCat 0..1 RW 이 통지 정책은 이 구독에 의해 생성된 통지 메시지들을 위해 사용될 구독자의 요청된 ec를 지시함(This notification policy indicates the subscriber’s requested ec to be used for notification messages generated by this subscription.)
creator 0..1 WO <subscription> 자원을 생성한 AE-ID 또는 CSE-ID(AE-ID or CSE-ID which created the <subscription> resource.)
subscriberURI 0..1 WO 이 <subscription>이 삭제되는 경우 통지가 전송될 URI (URI that is sent a notification when this <subscription> is deleted.)
상기 eventNotificationCriteria 조건은 다음과 같다.
표 10
Condition tag Multiplicity Matching condition
createBefore 0..1 특정 값 이 전에 순서대로된 해당 자원의 creationTime 속성.(The creationTime attribute of the resource is chronologically before the specified value.)
createdAfter 0..1 특정 값 이 후에 순서대로된 해당 자원의 creationTime 속성.(The creationTime attribute of the resource is chronologically after the specified value.)
modifiedSince 0..1 특정 값 이 후에 순서대로된 해당 자원의 lastModifiedTime 속성.(The lastModifiedTime attribute of the resource is chronologically after the specified value.)
unmodifiedSince 0..1 특정 값 이 전에 순서대로된 해당 자원의 lastModifiedTime 속성.(The lastModifiedTime attribute of the resource is chronologically before the specified value.)
stateTagSmaller 0..1 특정 값보다 작은 해당 자원의 stateTag 속성.(The stateTag attribute of the resource is smaller than the specified value.)
stateTagBigger 0..1 특정 값보다 큰 해당 자원의 stateTag 속성.(The stateTag attribute of the resource is bigger than the specified value.)
expireBefore 0..1 특정 값 이전에 순서대로된 해당 자원의 expirationTime 속성.(The expirationTime attribute of the resource is chronologically before the specified value.)
expireAfter 0..1 특정 값 이후에 순서대로된 해당 자원의 expirationTime 속성.(The expirationTime attribute of the resource is chronologically after the specified value.)
sizeAbove 0..1 특정 값 이상의 <contentInstance> 자원의 contentSize 속성.(The contentSize attribute of the <contentInstance> resource is equal to or greater than the specified value.)
sizeBelow 0..1 특정 값 보다 작은 <contentInstance> 자원의 contentSize 속성.(The contentSize attribute of the <contentInstance> resource is smaller than the specified value.)
eventType 0..n 이벤트의 타입을 기술. 가능한 이벤트 타입은 다음과 같다.- 구독된 자원의 속성들에 대한 업데이트- 구독된 자원의 삭제- 구독된 자원의 직계 자녀의 생성- 구독된 자원의 직계 자녀의 삭제.eventNotificationCriteria 조건들에 있는 다른 조건들이 선택된 이벤트 타입에 적용된다. 예를 들어, 이벤트 타입이 "구독된 자원의 직계 자녀의 생성"이면 다른 eventNotificationCriteria 조건들이 구독된 자원의 직계 자녀 자원들에 적용된다. 만약 이 조건이 특정되어 있지 않으면, 디폴트 값은 "구독된 자원의 속성들에 대한 업데이트"이다. (The type of event. Possible event type values are: - Update to attributes of the subscribed-to resource- Deletion of the subscribed-to resource ,- Creation of a direct child of the subscribed-to resource, - Deletion of a direct child of the subscribed-to resourceThe other conditions in eventNotificationCriteria conditions apply to the selected eventType. For example, if eventType is “Creation of a direct child of the subscribed-to resource” then other eventNotificationCriteria conditions is applied to the direct child resources of the subscribed-to resource.If this condition is not specified, the default value is “Update to attributes of the subscribed-to resource”)
resourceStatus 0..n 구독된 자원이 동작들 또는 만료에 의해 변경되면, 자원 상태는 특정된 값과 동일하다. 가능한 값들은: 자녀 생성됨, 갱신됨, 자녀 삭제됨, 삭제됨. 만약 자녀 생성됨 또는 자녀 삭제됨이 설정되면, 다른 eventNotificationCriteria 조건들이 생성되거나 삭제된 자녀 자원에 적용되어야 한다. 통지는 notificationContentType 속성의 값에 기반하여 생성된 자녀 자원 또는 삭제된 자녀 자원을 위한 내용들을 포함한다. 만약 이 조건이 특정되지 않으면, 디폴트 값이 갱신된다.(When the subscribed-to resource is changed by the operations or expiration, the resource status is the same as the specified value. Possible values are: child created, updated, child deleted, deleted.If child created or child deleted is configured, other eventNotificationCriteria conditions shall be applied to the created or deleted child resource. Notification contains the contents for a created child resource or deleted child resource based on value of notificationContentType attribute. If this condition is not specified, the default value is updated.)
operationMonitor 0..n 구독된 자원에 접근하는 동작들이 특정 값에 해당하는지를 모니터링 함. 어떤 동작이 수행되었는지 여부와 무관하게 구독된 자원에 대해 어떤 동작이 시도되는지를 모니터링하는 것을 허용한다. 이 기능은 악의의 AE들을 찾을 때 유용하다. 가능한 스트링 아규먼츠(string arguments)는 create, retrieve, update, delete이다. (The operations accessing the subscribed-to resource matches with the specified value. It allows monitoring which operation is attempted to the subscribed-to resource regardless of whether the operation is performed. This feature is useful when to find malicious AEs. Possible string arguments are: create, retrieve, update, delete.)
attribute 0..n 이 속성은 자원 타입들의 속성 이름이다. 예컨대, container 자원 타입의 creator가 "creator=Sam"으로서 사용될 수 있다. 복수의 속성들이 설정되면, 결과는 모든 속성들의 AND에 기반한다. (This is an attribute name of resource types. E.g. creator of container resource type can be used as “creator=Sam”. When multiple attributes are set then the result is based upon the AND of all attributes.)
M2M 공통 서비스 계층은 구독/통지 기능을 애플리케이션에 제공한다. 이는 서로 다른 CSE의 저장소를 통해 CSE 및 AE 간에 데이터를 주고받을 수 있게 한다. 구독/통지는 기본적으로 도 9에 도시된 것처럼 동작한다.
엔티티 2는 엔티티 1의 특정 이벤트(예컨대, 엔티티 1의 특정 자원 값 변경)에 대한 정보를 수신하고자 한다. 이를 위해, 엔티티 2는 엔티티 1에 상기 특정 이벤트에 대한 구독을 생성 또는 설정하고(S910), 그에 대한 응답을 수신할 수 있다(S920). 상기 특정 이벤트가 발생하여 상기 구독에 따른 통지가 트리거링되면, 엔티티 1은 엔티티 2에게 이를 알릴 수 있다(S930)
도 10은 3개의 엔티티가 구독/통지에 관여하는 경우를 도시한다. 엔티티 2는 자신이 설정한 구독에 대해 반드시 자신이 통지를 수신할 필요는 없다. M2M 환경에서 다수의 다른 엔티티를 위해 하나의 엔티티가 구독을 생성하는 경우를 예로 들 수 있다. 따라서, 아래와 같은 환경에서는 구독을 생성한 엔티티와 실제로 통지를 수신하는 엔티티가 다를 수 있다. 즉, 도 9와 다르게, 엔티티 2가 구독을 생성 또는 설정하였지만(S1010), 상기 구독에 따른 통지는 엔티티 3에게 전달될 수 있다(S1030).
도 9와 10에서 설정 또는 생성되는 구독은 위에서 설명한 구독 자원(<subscirption>)의 형태로 엔티티 1에 생성 또는 설정된다.
oneM2M은 자원 생성 시 서로 다른 자원 타입의 인스턴스가 동일 부모의 자식으로 저장된다. 도 11은 표준에 정의된 부모-자식 관계의 일부를 도시한다. 자원 이름은 생성 요청자(Originator) 또는 수신자(Hosting CSE)가 지정할 수도 있다.
oneM2M은 요청(Request) 메시지를 작성할 때 요청 대상 자원을 지시하기 위한 주소 체계를 정의하고 있으며 이는 구조화된 자원 어드레스(structured resource address)와 구조화되지 않은 자원 어드레스(unstructured resource address)로 구성된다.
oneM2M은 RESTful 아키텍처를 따르므로 모든 기능과 서비스가 자원으로 정의되어 있고, 각 자원들은 부모-자식 관계를 가지고 있어 실제 서비스에서는 자원들이 트리 구조로 플랫폼(CSE)에 생성되어 관리된다. 따라서, 기본적으로는 자원 주소 체계는 구조화된(structured) 형식이며 이를 저사양 장치를 위해 주소 길이를 짧게 정의한 것이 구조화되지 않은(unstructured) 형식이다. 구조화된 형식은 자원 트리 상에서 루트부터 해당 자원까지 각 자원의 이름을 조합하여 유일한(unique) 자원 주소를 지칭하는 반면, 구조화되지 않은 형식은 전체 트리 상에서 유일한 자원 ID(resourceID 속성)를 CSE가 할당한다.
예를 들어, "/CSE1/base/x12/y34"라는 서비스 제공자 상대적(Service Provider-relative; SP-relative) 구조화된 형식의 주소는 "CSE1"을 ID로 가지는 CSE의 "base"라는 이름의 <CSEBase> 자원 타입의 자원의 자식인 "x12" 자원의 자식 자원인 "y34"자원을 가리킨다. 이 자원은 동시에 구조화되지 않은 형식의 주소로 "CSE1/z32gd3"과 같이 짧게 나타낼 수 있다. 이 구조화되지 않은 형식의 주소는 resourceID라는 속성으로 자원에 저장된다.
콜렉션 패턴은 같은 타입의 자원(인스턴스)을 자원 트리 상의 같은 부모의 자식 자원으로 저장할 수 있게 한다. 예를 들어, CSE(자원 소유자 또는 자원 소유 장치)는 "base/aes/x12"에서 "x12" 자원은 AE 타입으로써 "aes"라는 콜렉션 자원의 자식 자원으로 저장할 수 있다. "aes" 콜렉션 자원 자원에는 AE 이외의 다른 자원 타입을 저장할 수 없다. 이러한 주소 체계에서 CSE는 요청 수신 시 대상 자원("x12")이 AE 자원 타입임을 'To' 파라미터만으로 확인 가능하다. 이후 해당 "x12" 자원을 AE 자원 타입에 해당하는 데이터베이스에서 빠르게 검색 가능하다.
[ETSI M2M ARC]에는 이러한 콜렉션 패턴이 정의되어 있으며, 콜렉션 자원들은 플랫폼(SCL, Service Capability Layer)에 의해 자동적으로 생성된다. 예를 들어, "sclBase/applications/app1"은 <application> 자원을 나타내며 이 자원은 sclBase 자원의 자식으로 바로 생성될 수 없고, applications라는 고정 이름을 가지는 콜렉션 자원의 자식으로만 생성될 수 있다.
도 12는 도 11에 콜렉션 패턴을 적용하여 나타낸 자원 트리를 도시한다.
종래의 oneM2M과 같이 콜렉션 패턴을 지원하지 않는 경우 'To' 파라미터로 명시된 요청 메시지의 대상 자원을 탐색하는 데 오버로드가 발생한다. 구조화된 형식의 주소인 "a/b/c" 자원의 예를 들면 플랫폼은 "a"라는 이름의 루트 자원이 있는지 확인 후 해당 자원을 데이터베이스에서 로드하여 "b"라는 자원이 자식 자원으로 있는지 확인하고 다시 데이터 베이스에서 "b"라는 자원을 로드하여 자식 자원으로 "c"라는 자원이 있는지 확인한다. 이후, "c" 자원을 데이터베이스에서 로드하여 요청 메시지를 처리한다. 비-구조화된 형식의 주소인 "a123"의 경우도 구조화되지 않은 형식의 주소보다 반복 횟수는 적지만 데이터베이스의 모든 자원에서 "a123" 자원을 탐색해야 하는 오버헤드가 발생한다. 이와 같은 오버헤드 감소를 위해 인덱싱(indexing)을 이용할 수 있지만 자원 생성/삭제 시 이를 지속적으로 갱신하는 오버헤드가 발생할 수 있다. 또한 서버와 같이 많은 요청을 처리하고 많은 자원을 가지는 경우 오버헤드가 더 크게 작용한다.
ETSI TC M2M에서는 플랫폼이 지원하는 자원 타입과 관계 없이 모든 자원 타입에 대한 콜렉션 자원이 생성된다. 따라서 지원하지 않는 자원 타입을 콜렉션 자원으로 어플리케이션에 노출하여 불필요한 요청 에러를 발생할 수 있다.
또한, ETSI TC M2M의 콜렉션 자원은 일반(<-> 가상) 자원 타입으로써 이를 oneM2M에 적용할 경우(도 12), 기존의 부모-자식 관계 사이에 콜렉션 자원이 추가 되므로 종래의 oneM2M 자원 트리를 가지는 시스템과 호환성을 유지할 수 없다. 예를 들어, 기존 시스템의 요청자는 <CSEBase>에 "x12"라는 <AE> 자원 생성 시 <CSEBase>를 대상('To' 파라미터)으로 하여 생성 요청을 전송하였지만, 상기와 같은 콜렉션 패턴 기반의 신규 시스템은 <CSEBase> 자원에 <AE> 자원을 자식으로 생성하지 않고, 예를 들어 <CSEBase> 자원의 자식 자원인 <aes> 자원의 자식으로 생성하기 때문에 기존 시스템의 요청자가 <CSEBase> 자원에 <AE> 자원을 생성하는 요청을 전송하는 경우 해당 요청에 에러를 발생시킨다.
콜렉션을 적용하는 또 다른 방법으로는 자원 이름이나 자원 ID에 자원 타입 정보를 포함하는 방법이 있을 수 있다. 예를 들어, <container> 자원을 "container12" 또는 "cnt12"와 같이 나타내는 것이다. 즉, 자원 이름과 ID를 결정할 때 일종의 규칙(convention)을 따르자는 것이나, 이는 표준 기술로 채택되기 어렵다. 이름과 ID는 구현/운영 측면의 이슈이고 서비스 제공자마다 다른 방식으로 설정할 수 있기 때문이다.
본 발명은 앞서 설명한 문제점을 해결하면서도 oneM2M에 콜렉션 패턴을 적용할 수 있는 방법을 제안한다. 이를 위해, 콜렉션 패턴 지원 여부를 지시하는 방법, 콜렉션 패턴 지원 시 콜렉션 가상 자원을 기존 자원들과 형제 자원으로 구성하는 방법, 해당 콜렉션 가상 자원을 이용해 요청 메시지의 대상 자원을 지시하는 방법 및 이를 처리하는 방법을 기술한다.
콜렉션 자원 구성
플랫폼(CSE)에서 콜렉션 기능 지원 시 해당 정보를 <CSEBase> 자원의 속성으로 저장할 수 있다. 예를 들어, collectionSupport 속성 값이 True인 경우 해당 CSE가 콜렉션을 지원한다고 나타낼 수 있다. 이 정보는 <remoteCSE> 자원에도 저장되어 다른 엔티티에 노출될 수 있다. collectionSupport 속성의 다른 실시 예로써 종래 supportedResourceType 속성에 콜렉션을 나타내는 값을 가질 수 있다.
이와 같이 콜렉션을 지원하는 경우 <CSEBase> 자원의 supportedResourceType 속성과 연계하여 해당 CSE에서 지원하는 자원 타입에 대한 콜렉션 자원을 가질 수 있다. 예를 들어, supportedResourceType 속성이 <group> 자원 타입을 가리키는 경우 CSE는 종래 <group> 자원을 생성할 수 있는 트리 상의 위치에 "groups"와 같은 가상 자원을 생성할 수 있다. 이는 해당 CSE의 <CSEBase> 자원을 생성하는 초기화 단계뿐만 아니라 이후에, 예를 들어, <CSEBase> 자원에 <AE> 자원을 생성 시 <AE> 자원의 하위 자원으로 "groups" 가상 자원을 생성할 수 있다.
도 13의 예시에서 "groups" 가상 콜렉션 자원과 <group> 자원 타입의 "grp1"은 형제(sibling) 관계를 가지며 "groups" 가상 자원은 해당 타입의 실제 자원("grp1")의 링크를 유지하는 등 내부적으로 동작을 수행한다.
도 14는 가상 콜렉션 자원을 이용해 신규 자원을 생성하는 예를 나타낸다. 발신자(요청자)는 신규 자원 생성 시 생성하려는 자원과 동일한 자원 타입의 콜렉션 자원을 대상('To' 파라미터)으로 하여 요청할 수 있다. 표준의 정의와 같이 가상 자원은 자신의 표현(representation)을 가지지 않고 자식 자원을 가지지도 않는다. 이러한 자원 생성 요청 수신을 수락하는 경우 플랫폼(호스팅 CSE)은 신규 자원을 콜렉션 자원의 형제 자원으로 생성할 수 있다. 이 때, 생성된 자원의 CSE-상대적 구조화된 형식의 주소는 "base/a1"이다. 플랫폼은 각 콜렉션 자원과 연계된 자원의 링크를 가지고 있다.
콜렉션 어드레싱
위와 같이 자원 트리에서 실제 자원이 저장되는 구조(hierarchy)는 종래 기술과 차이가 없어서 종래 시스템과 호환성을 유지할 수 있다. 다만 종래 리소스 트리에서 가상 콜렉션 자원 어드레싱을 위한 추가적인 어드레싱(addressing)을 지원할 수 있다. 기본적으로 콜렉션을 지원하는 플랫폼의 자원을 가리키기 위해서는 자원 이름 또는 ID(i.e., resourceID 속성 값이 지시하는 ID) 앞에 콜렉션 자원을 지시하는 정보를 추가하면 된다. 즉, 본 발명은 종래의 구조화된 형식의 자원 어드레스 및 구조화되지 않은 형식의 자원 어드레스에 적용할 수 있다.
다음과 같은 <container> 자원의 어드레싱(SP-relative)을 예로 든다.
표 11
구조화된 형식의 자원 어드레스 구조화되지 않은 형식의 자원 어드레스
종래 (콜렉션 미지원) CSE1/base/x12/y34 CSE1/z32gd3
본원 (콜렉션 지원) CSE1/base/aes/x12/containers/y34 CSE1/containers/z32gd3
콜렉션을 지원하는 경우 구조화된 형식의 어드레스에는 "x12" 자원에 해당하는 <AE> 콜렉션 자원인 "aes" 가상 자원의 주소 및 "y34" 자원에 해당하는 <container> 콜렉션 자원인 "containers" 가상 자원 정보가 각각의 앞에 추가되어 있다.
구조화되지 않은 형식의 어드레스의 경우 자원 ID에 가상 자원 정보를 추가하여 자원 타입을 지시할 수 있다.
가상 콜렉션 자원의 정보는 해당 고정된 이름을 사용하여 상호 호환성을 보장할 수 있다. 이는 상기 예와 같이 본래 자원 타입의 이름에 "s"를 붙이거나 본래 자원 타입의 이름으로 정의할 수 있다. 다른 예로 자원 타입의 짧은 이름(short name) 또는 이에 "s"를 붙인 형식으로 정의할 수 있다.
가상 콜렉션 자원의 정보는 해당 자원의 이름/ID의 상기 예와 같이 앞 또는 다른 실시예로 뒤에 추가되어 이를 지시할 수 있다.
도 15는 우측의 콜렉션을 지원하는 서버 플랫폼이 콜렉션을 지원하는 어플리케이션과 그렇지 않은 어플리케이션의 요청을 모두 처리하는 예시를 나타낸다. 콜렉션을 지원하더라도, 종래(예를 들어 oneM2M Rel-2)기술과 동일한 자원 트리를 가지므로 콜렉션을 지원하지 않는 어플리케이션은 "b2" 자원을 획득하고 싶으면 "base/b2"를 대상으로 한다. 동시에 콜렉션을 지원하는 어플리케이션(예를 들어 oneM2M Rel-3)은 서버의 오버헤드 감소를 위해 콜렉션이 적용된 주소인 "base/aes/b2"를 사용한다. 콜렉션을 지원하는 어플리케이션은 <CSEBase> 자원의 collectionSupport 속성이 True로 설정된 것을 확인하고 콜렉션이 적용된 어드레싱 기법이 해당 플랫폼의 선호라고 판단하여 이를 이용한 요청 메시지를 전송할 수 있다.
도 16은 콜렉션을 지원하는 발신자(또는 요청자)가 구조화된 형식 및 구조화되지 않은 형식의 어드레스를 사용하는 경우 이를 콜렉션을 지원하는 플랫폼이 처리하는 과정을 예로 나타낸다. 아래 대상 자원 주소('To' 파라미터)는 CSE-ID를 포함하는 SP-relative를 가정한다.
먼저 구조화된 형식의 어드레스를 사용하는 경우 'To' 파라미터의 값이 "/"로 시작하므로 이것이 SP-relative 주소임을 확인하고 "/" 기호로 구분된 첫번째 토큰이 CSE-ID(자신의 ID)임을 확인한다. 이후에 토큰이 2개보다 많으므로 구조화된 형식의 어드레스이고 따라서 각 토큰이 자원 이름을 나타냄을 확인한다. 다음 토큰인 "base"는 <CSEBase> 자원의 이름임을 확인한다. 그리고 다음 토큰이 콜렉션을 지시하는 사전 정의(고정)된 이름이므로 그 뒤에 있는 토큰인 "x12"라는 이름의 자원이 "base" 자원의 자식 자원에 존재하는지 확인한다. 그리고 "aes"는 <AE> 자원 타입을 나타내는 고정 이름의 가상 콜렉션 자원이므로 다음 토큰이 나타내는 자원은 <AE> 타입임을 인식한다. 다음 토큰인 "x12"는 전체 데이터베이스가 아닌 <AE> 자원 타입의 자원들을 저장하는 데이터베이스(테이블)에서 검색하여 로드한다. 이후 다음 자원은 "y34"라는 이름의 <container> 타입임을 확인하고 "x12" 자원을 통해 자식 자원으로 "y34" 자원이 있음을 확인한다. 이후, <container> 자원 타입 데이터베이스에서 "y34" 자원을 검색하여 로드하고 이 "y34" 자원을 이용해 요청을 처리한다.
구조화되지 않은 형식의 어드레스의 경우 구조화된 형식의 어드레스와 유사하나 CSE내에서 유일한 자원 ID를 사용하므로 상기와 같은 데이터베이스 검색 동작의 반복이 없다.
도 16의 경우 동일하게 "CSE1" 다음 토큰이 2개이며 이 중 첫번째 토큰이 <container> 타입 콜렉션 가상 자원임을 확인하면 두번째는 자원 ID임을 인식한다. 이후 플랫폼은 <container> 자원 타입의 데이터베이스에서 "z32gd3"이라는 자원 ID를 가지는 자원을 검색하여 로드하고 요청을 처리한다.
기존 자원 외에 콜렉션 가상 자원을 가리키는(addressing) 경우에는 뱃치(batch) 동작으로 활용할 수 있다. 예를 들어, "container" 콜렉션 자원을 대상('To' 파라미터)로 한 RETRIEVE 요청을 해당 "container" 자원이 링크하고 있는 모든 <container> 자원들에 대한 일괄 RETRIEVE 동작을 수행할 수 있다. 이는 UPDATE, DELETE 동작에도 적용할 수 있다.
도 17은 본 발명의 실시예들을 수행하는 전송장치(10) 및 수신장치(20)의 구성요소를 나타내는 블록도이다. 전송장치(10) 및 수신장치(20)는 정보 및/또는 데이터, 신호, 메시지 등을 나르는 무선 신호를 전송 또는 수신할 수 있는 송신기/수신기(13, 23)와, 무선통신 시스템 내 통신과 관련된 각종 정보를 저장하는 메모리(12, 22), 상기 송신기/수신기(13, 23) 및 메모리(12, 22)등의 구성요소와 동작적으로 연결되어, 상기 구성요소를 제어하여 해당 장치가 전술한 본 발명의 실시예들 중 적어도 하나를 수행하도록 메모리(12, 22) 및/또는 송신기/수신기(13,23)을 제어하도록 구성된 프로세서(11, 21)를 각각 포함한다.
메모리(12, 22)는 프로세서(11, 21)의 처리 및 제어를 위한 프로그램을 저장할 수 있고, 입/출력되는 정보를 임시 저장할 수 있다. 메모리(12, 22)가 버퍼로서 활용될 수 있다. 프로세서(11, 21)는 통상적으로 전송장치 또는 수신장치 내 각종 모듈의 전반적인 동작을 제어한다. 특히, 프로세서(11, 21)는 본 발명을 수행하기 위한 각종 제어 기능을 수행할 수 있다. 프로세서(11, 21)는 컨트롤러(controller), 마이크로 컨트롤러(microcontroller), 마이크로 프로세서(microprocessor), 마이크로 컴퓨터(microcomputer) 등으로도 불릴 수 있다. 프로세서(11, 21)는 하드웨어(hardware) 또는 펌웨어(firmware), 소프트웨어, 또는 이들의 결합에 의해 구현될 수 있다. 하드웨어를 이용하여 본 발명을 구현하는 경우에는, 본 발명을 수행하도록 구성된 ASICs(application specific integrated circuits) 또는 DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays) 등이 프로세서(11, 21)에 구비될 수 있다. 한편, 펌웨어나 소프트웨어를 이용하여 본 발명을 구현하는 경우에는 본 발명의 기능 또는 동작들을 수행하는 모듈, 절차 또는 함수 등을 포함하도록 펌웨어나 소프트웨어가 구성될 수 있으며, 본 발명을 수행할 수 있도록 구성된 펌웨어 또는 소프트웨어는 프로세서(11, 21) 내에 구비되거나 메모리(12, 22)에 저장되어 프로세서(11, 21)에 의해 구동될 수 있다.
전송장치(10)의 프로세서(11)는 상기 프로세서(11) 또는 상기 프로세서(11)와 연결된 스케줄러로부터 스케줄링되어 외부로 전송될 신호 및/또는 데이터에 대하여 소정의 부호화(coding) 및 변조(modulation)를 수행한 후 송신기/수신기(13)에 전송한다. 예를 들어, 프로세서(11)는 전송하고자 하는 데이터 열을 역다중화 및 채널 부호화, 스크램블링, 변조과정 등을 거쳐 K개의 레이어로 변환한다. 부호화된 데이터 열은 코드워드로 지칭되기도 하며, MAC 계층이 제공하는 데이터 블록인 전송 블록과 등가이다. 일 전송블록(transport block, TB)은 일 코드워드로 부호화되며, 각 코드워드는 하나 이상의 레이어의 형태로 수신장치에 전송되게 된다. 주파수 상향 변환을 위해 송신기/수신기(13)는 오실레이터(oscillator)를 포함할 수 있다. 송신기/수신기(13)는 Nt개(Nt는 1보다 이상의 양의 정수)의 전송 안테나를 포함할 수 있다.
수신장치(20)의 신호 처리 과정은 전송장치(10)의 신호 처리 과정의 역으로 구성된다. 프로세서(21)의 제어 하에, 수신장치(20)의 송신기/수신기(23)는 전송장치(10)에 의해 전송된 무선 신호를 수신한다. 상기 송신기/수신기(23)는 Nr개의 수신 안테나를 포함할 수 있으며, 상기 송신기/수신기(23)는 수신 안테나를 통해 수신된 신호 각각을 주파수 하향 변환하여(frequency down-convert) 기저대역 신호로 복원한다. 송신기/수신기(23)는 주파수 하향 변환을 위해 오실레이터를 포함할 수 있다. 상기 프로세서(21)는 수신 안테나를 통하여 수신된 무선 신호에 대한 복호(decoding) 및 복조(demodulation)를 수행하여, 전송장치(10)가 본래 전송하고자 했던 데이터를 복원할 수 있다.
송신기/수신기(13, 23)는 하나 이상의 안테나를 구비한다. 안테나는, 프로세서(11, 21)의 제어 하에 본 발명의 일 실시예에 따라, 송신기/수신기(13, 23)에 의해 처리된 신호를 외부로 전송하거나, 외부로부터 무선 신호를 수신하여 송신기/수신기(13, 23)로 전달하는 기능을 수행한다. 안테나는 안테나 포트로 불리기도 한다. 각 안테나는 하나의 물리 안테나에 해당하거나 하나보다 많은 물리 안테나 요소(element)의 조합에 의해 구성될 수 있다. 각 안테나로부터 전송된 신호는 수신장치(20)에 의해 더 이상 분해될 수 없다. 해당 안테나에 대응하여 전송된 참조신호(reference signal, RS)는 수신장치(20)의 관점에서 본 안테나를 정의하며, 채널이 일 물리 안테나로부터의 단일(single) 무선 채널인지 혹은 상기 안테나를 포함하는 복수의 물리 안테나 요소(element)들로부터의 합성(composite) 채널인지에 관계없이, 상기 수신장치(20)로 하여금 상기 안테나에 대한 채널 추정을 가능하게 한다. 즉, 안테나는 상기 안테나 상의 심볼을 전달하는 채널이 상기 동일 안테나 상의 다른 심볼이 전달되는 상기 채널로부터 도출될 수 있도록 정의된다. 복수의 안테나를 이용하여 데이터를 송수신하는 다중 입출력(Multi-Input Multi-Output, MIMO) 기능을 지원하는 송신기/수신기의 경우에는 2개 이상의 안테나와 연결될 수 있다.
본 발명의 실시예들에 있어서, 단말 또는 UE는 상향링크에서는 전송장치(10)로 동작하고, 하향링크에서는 수신장치(20)로 동작한다. 본 발명의 실시예들에 있어서, 기지국 또는 eNB는 상향링크에서는 수신장치(20)로 동작하고, 하향링크에서는 전송장치(10)로 동작한다.
상기 전송장치 및/또는 상기 수신장치는 앞서 설명한 본 발명의 실시예들 중 적어도 하나 또는 둘 이상의 실시예들의 조합을 수행할 수 있다.
본 발명은 무선 이동 통신 시스템의 단말기, 기지국, 서버 또는 기타 다른 장비에 사용될 수 있다.

Claims (18)

  1. 무선 통신 시스템에서 콜렉션 자원을 이용하여 수신된 요청을 처리하기 위한 방법으로서, 상기 방법은 수신 장치에 의해 수행되며,
    발신 장치로부터 상기 수신 장치 내 자원에 대한 요청을 수신하는 단계;
    상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하는지 여부를 판단하는 단계;
    상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하면, 상기 수신된 요청이 생성 요청인지 생성 요청 외 다른 요청인지를 확인하는 단계; 및
    상기 수신된 요청이 생성 요청이면, 상기 콜렉션 자원의 형제 자원으로서 상기 수신된 요청에 포함된 정보를 이용해 새로운 자원을 생성하는 단계를 포함하는 것을 특징으로 하는, 방법.
  2. 제1항에 있어서, 상기 생성된 새로운 자원과 상기 콜렉션 자원 간의 내부 링크를 저장하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  3. 제1항에 있어서, 상기 수신된 요청이 생성 요청 외 다른 요청이면, 상기 콜렉션 자원에 연결된 모든 자원들에 대해 일괄적으로 상기 수신된 요청에 따른 동작을 수행하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  4. 제1항에 있어서, 상기 콜렉션 자원은 가상의 자원인 것을 특징으로 하는, 방법.
  5. 제1항에 있어서, 상기 수신된 요청은 'To' 파라미터를 포함하고,
    상기 'To' 파라미터는 사전에 정의 또는 고정된 콜렉션 자원을 나타내는 이름 또는 식별자를 포함하는 것을 특징으로 하는, 방법.
  6. 제1항에 있어서, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 콜렉션 자원은 상기 수신 장치 내 특정 자원의 자식 자원으로서 생성된 것을 특징으로 하는, 방법.
  7. 제1항에 있어서, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신 장치 내 특정 자원은 콜렉션 자원 타입을 지시하는 속성을 포함하는 것을 특징으로 하는, 방법.
  8. 제1항에 있어서, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원의 형제 자원을 지시하면, 상기 형제 자원과 상기 콜렉션 자원 간의 내부 링크를 이용하여 상기 수신된 요청에 따른 동작을 수행하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  9. 제8항에 있어서, 상기 수신 장치에 저장된 콜렉션 자원에 해당하는 자원 타입의 자원들을 저장해놓은 데이터 베이스에서 상기 형제 자원을 검색하고 로드하는 단계를 더 포함하는 것을 특징으로 하는, 방법.
  10. 무선 통신 시스템에서 콜렉션 자원을 이용하여 수신된 요청을 처리하도록 구성된 수신 장치에 있어서,
    송신기;
    수신기; 및
    상기 송신기 및 상기 수신기를 제어하도록 구성된 프로세서를 포함하되,
    상기 프로세서는:
    발신 장치로부터 상기 수신 장치 내 자원에 대한 요청을 수신하고,
    상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하는지 여부를 판단하고,
    상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원을 지시하면, 상기 수신된 요청이 생성 요청인지 생성 요청 외 다른 요청인지를 확인하고, 그리고
    상기 수신된 요청이 생성 요청이면, 상기 콜렉션 자원의 형제 자원으로서 상기 수신된 요청에 포함된 정보를 이용해 새로운 자원을 생성하도록 구성된 것을 특징으로 하는, 수신 장치.
  11. 제10항에 있어서, 상기 프로세서는:
    상기 생성된 새로운 자원과 상기 콜렉션 자원 간의 내부 링크를 저장하도록 구성된 것을 특징으로 하는, 수신 장치.
  12. 제10항에 있어서, 상기 프로세서는:
    상기 수신된 요청이 생성 요청 외 다른 요청이면, 상기 콜렉션 자원에 연결된 모든 자원들에 대해 일괄적으로 상기 수신된 요청에 따른 동작을 수행하도록 구성된 것을 특징으로 하는, 수신 장치.
  13. 제10항에 있어서, 상기 콜렉션 자원은 가상의 자원인 것을 특징으로 하는, 수신 장치.
  14. 제10항에 있어서, 상기 수신된 요청은 'To' 파라미터를 포함하고,
    상기 'To' 파라미터는 사전에 정의 또는 고정된 콜렉션 자원을 나타내는 이름 또는 식별자를 포함하는 것을 특징으로 하는, 수신 장치.
  15. 제10항에 있어서, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 콜렉션 자원은 상기 수신 장치 내 특정 자원의 자식 자원으로서 생성된 것을 특징으로 하는, 수신 장치.
  16. 제10항에 있어서, 상기 수신 장치가 콜렉션 기능을 지원하면, 상기 수신 장치 내 특정 자원은 콜렉션 자원 타입을 지시하는 속성을 포함하는 것을 특징으로 하는, 수신 장치.
  17. 제10항에 있어서, 상기 프로세서는:
    상기 수신된 요청이 상기 수신 장치에 저장된 콜렉션 자원의 형제 자원을 지시하면, 상기 형제 자원과 상기 콜렉션 자원 간의 내부 링크를 이용하여 상기 수신된 요청에 따른 동작을 수행하도로 구성된 것을 특징으로 하는, 수신 장치.
  18. 제17항에 있어서, 상기 프로세서는:
    상기 수신 장치에 저장된 콜렉션 자원에 해당하는 자원 타입의 자원들을 저장해놓은 데이터 베이스에서 상기 형제 자원을 검색하고 로드하도록 구성된 것을 특징으로 하는, 수신 장치.
PCT/KR2016/015406 2016-05-11 2016-12-28 무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치 WO2017195964A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201662334457P 2016-05-11 2016-05-11
US62/334,457 2016-05-11

Publications (1)

Publication Number Publication Date
WO2017195964A1 true WO2017195964A1 (ko) 2017-11-16

Family

ID=60267275

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/015406 WO2017195964A1 (ko) 2016-05-11 2016-12-28 무선 통신 시스템에서 콜렉션 패턴을 적용한 어드레싱 방법 및 이를 위한 장치

Country Status (1)

Country Link
WO (1) WO2017195964A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130179557A1 (en) * 2011-02-18 2013-07-11 Huawei Technologies Co., Ltd. Method and management apparatus for performing operation on device resource
US20130336222A1 (en) * 2010-11-19 2013-12-19 Interdigital Patent Holdings, Inc. Machine-To-Machine (M2M) Interface Procedures For Announce and De-Announce of Resources
US20150055640A1 (en) * 2012-01-13 2015-02-26 Interdigital Patent Holdings, Inc. Method and apparatus for supporting machine-to-machine communications
US20160088420A1 (en) * 2013-05-16 2016-03-24 Lg Electronics Inc. Method for subscription and notification in m2m communication system and apparatus for same
US20160112981A1 (en) * 2013-06-12 2016-04-21 Lg Electronics Inc. Method for measuring position in m2m system and apparatus therefor

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130336222A1 (en) * 2010-11-19 2013-12-19 Interdigital Patent Holdings, Inc. Machine-To-Machine (M2M) Interface Procedures For Announce and De-Announce of Resources
US20130179557A1 (en) * 2011-02-18 2013-07-11 Huawei Technologies Co., Ltd. Method and management apparatus for performing operation on device resource
US20150055640A1 (en) * 2012-01-13 2015-02-26 Interdigital Patent Holdings, Inc. Method and apparatus for supporting machine-to-machine communications
US20160088420A1 (en) * 2013-05-16 2016-03-24 Lg Electronics Inc. Method for subscription and notification in m2m communication system and apparatus for same
US20160112981A1 (en) * 2013-06-12 2016-04-21 Lg Electronics Inc. Method for measuring position in m2m system and apparatus therefor

Similar Documents

Publication Publication Date Title
WO2016195199A1 (ko) 무선 통신 시스템에서 폴링 채널을 통해 요청을 처리하기 위한 방법 및 이를 위한 장치
WO2015069038A1 (ko) M2m 통신 시스템에서 구독 및 통지를 위한 방법 및 이를 위한 장치
WO2016126021A1 (ko) 무선 통신 시스템에서 통지 수신 중단 요청을 처리하기 위한 방법 및 이를 위한 장치
WO2016068548A1 (ko) 무선 통신 시스템에서 통지 메시지를 처리하기 위한 방법 및 이를 위한 장치
WO2014185754A1 (ko) M2m 통신 시스템에서 구독 및 통지를 위한 방법 및 이를 위한 장치
WO2014129802A1 (ko) M2m 서비스 설정 변경 방법 및 이를 위한 장치
WO2015046960A1 (ko) M2m 시스템에서 통지 메시지 전달 방법 및 이를 위한 장치
WO2017073876A1 (ko) 무선 통신 시스템에서 서비스 요청을 처리하기 위한 방법 및 이를 위한 장치
WO2016064235A2 (ko) 무선 통신 시스템에서 그룹 멤버의 자식 자원을 관리하기 위한 방법 및 이를 위한 장치
WO2020197288A1 (ko) Edge computing 서비스를 이용하기 위하여 단말에 연결성을 제공하는 방법 및 장치
WO2019199028A1 (en) Method and device using network slicing in mobile communication system
WO2014109597A1 (ko) M2m(machine-to-machine)시스템에서 게이트웨이 변경 방법 및 이를 위한 장치
US20160302085A1 (en) Method and apparatus for managing specific resource in wireless communication system
WO2014200292A1 (ko) M2m 시스템에서 위치 측정 방법 및 이를 위한 장치
WO2021225406A1 (en) Method and device for generating and removing dynamic eas using ue app and status
WO2022146014A1 (en) Method and system of enabling akma service in roaming scenario
WO2021091307A1 (ko) 무선 통신 시스템에서 mbs 서비스 제공에 대한 mbs 서비스 세션의 설정을 위한 장치 및 방법
US10129852B2 (en) Method for broadcasting to unspecified entity in wireless communication system and device for the same
WO2021225389A1 (ko) 네트워크 슬라이스를 이용하여 에지 컴퓨팅 서비스를 제공하는 장치 및 방법
WO2021167277A1 (ko) 에지 컴퓨팅 시스템에서 무선 통신 네트워크 타입에 따른 서비스 제공 장치 및 방법
WO2016013846A1 (ko) 무선 통신 시스템에서 요청 메시지를 처리하기 위한 방법 및 이를 위한 장치
WO2022060147A1 (en) Method and apparatus for multi-usim operations
WO2021137624A1 (en) Method and apparatus for registering with network slice in wireless communication system
WO2017082506A1 (ko) 무선 통신 시스템에서 통지 수신 중단 요청을 처리하기 위한 방법 및 이를 위한 장치
WO2021054781A1 (ko) 무선 통신 시스템에서 네트워크 슬라이스의 관리 및 접속 제어 방법 및 장치

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16901797

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16901797

Country of ref document: EP

Kind code of ref document: A1